Integrations
A2ML has working integrations across editors, build tools, and language ecosystems. This is not a roadmap — these tools exist today.
---
Pandoc Live
Full Pandoc integration via [pandoc-a2ml](https://github.com/hyperpolymath/pandoc-a2ml): custom reader, writer, Lua filter, and HTML template.
Convert A2ML to any of Pandoc's 40+ output formats (HTML, PDF, DOCX, LaTeX, Markdown, reStructuredText, EPUB, and more), or convert from any Pandoc input format into A2ML.
# Read A2ML, output HTML
pandoc -f a2ml-reader.lua manifest.a2ml -o manifest.html
# Read A2ML, output PDF
pandoc -f a2ml-reader.lua manifest.a2ml -o manifest.pdf
# Convert Markdown to A2ML
pandoc README.md -t a2ml-writer.lua -o README.a2ml
# Apply the A2ML filter for attestation validation
pandoc -f a2ml-reader.lua --lua-filter a2ml-filter.lua manifest.a2ml -o report.html
Install: Clone the repo and add the Lua scripts to your Pandoc data directory, or reference them by path.
Repository: [github.com/hyperpolymath/pandoc-a2ml](https://github.com/hyperpolymath/pandoc-a2ml)
VS Code Live
Syntax highlighting, bracket matching, and snippet support for .a2ml files in Visual Studio Code.
Features:
- Full TextMate grammar for A2ML syntax
- Highlighting for directives (
@attestation:...@end), headings, inline formatting, and comments - Snippets for common patterns (attestation block, policy block, provenance block)
- File icon for
.a2mlfiles - Language configuration for bracket/comment auto-pairing
Install: Search "A2ML" in the VS Code marketplace, or install from VSIX.
Repository: [github.com/hyperpolymath/vscode-a2ml](https://github.com/hyperpolymath/vscode-a2ml)
Tree-sitter Live
A [tree-sitter](https://tree-sitter.github.io) grammar for A2ML, enabling syntax highlighting and structural queries in any editor that supports tree-sitter.
Works with:
- Neovim (via nvim-treesitter)
- Helix (built-in tree-sitter support)
- Zed (built-in tree-sitter support)
- GitHub (syntax highlighting in code views, via tree-sitter)
- Emacs (via tree-sitter-langs)
The grammar parses the full A2ML syntax including nested directive blocks, attestation fields, and inline formatting.
Repository: [github.com/hyperpolymath/tree-sitter-a2ml](https://github.com/hyperpolymath/tree-sitter-a2ml)
GitHub Linguist Pending
A pull request to add A2ML to [GitHub Linguist](https://github.com/github-linguist/linguist) is in preparation. Once merged, GitHub will:
- Detect
.a2mlfiles automatically - Show A2ML in repository language statistics
- Apply syntax highlighting using the tree-sitter grammar
- Recognise
application/vnd.a2mlas a registered media type
K9 Validators Live
[pandoc-k9](https://github.com/hyperpolymath/pandoc-k9) provides contractile validation for A2ML files. K9 validators enforce structural and policy constraints:
- must — required fields and sections
- trust — attestation chain validity
- dust — deprecated pattern detection
- intend — intent declaration verification
K9 runs in CI/CD pipelines and can block merges when A2ML manifests fail validation.
Repository: [github.com/hyperpolymath/pandoc-k9](https://github.com/hyperpolymath/pandoc-k9)
LuaRocks Live
The A2ML Pandoc components are available as a Lua library via [LuaRocks](https://luarocks.org), making it straightforward to integrate A2ML parsing into any Lua-based toolchain.
luarocks install pandoc-a2ml
Hypatia CI/CD Scanner Live
[Hypatia](https://github.com/hyperpolymath/hypatia) consumes A2ML manifests as part of its neurosymbolic security scanning. It:
- Reads
0-AI-MANIFEST.a2mlto understand repository structure - Validates attestation chains in
.machine_readable/*.a2mlfiles - Enforces that all agents operating on a repository have valid manifests
- Reports trust-level gaps in CI pipeline output
Hackage (Haskell) Coming Soon
A native Haskell library for parsing and generating A2ML is in development. It will provide:
- Pure Haskell parser (no Pandoc dependency)
- Type-safe AST for A2ML documents
- Attestation chain validation
- Integration with the Pandoc Haskell library