Releases: Pinperepette/agd
Releases · Pinperepette/agd
Release list
v0.1.0 — initial public release
First public release of AGD — Agent Document Format, a line-oriented text format
for LLM agents that sits between Markdown and HTML: more deterministic than Markdown,
more compact than HTML, and addressable per block via stable [#id] anchors so
multiple agents can edit the same document without fighting over byte ranges.
Highlights
- Single-sigil block syntax (
@<tag>at column 0) — no closing tags - Optional stable per-block IDs
[#name]for safe multi-agent editing - LL(1) parser, single-pass, no backtracking (~1000 lines of Rust)
- Idempotent canonical serializer (verified by 512+ proptest cases)
- Operation-based edit API:
replace,insert_after,insert_before,delete,set_attr,remove_attr - CLI with 9 subcommands:
parse,validate,format,convert from-md|to-md|to-html,bench,id,edit,ref - Markdown ↔ AGD ↔ HTML converters
- Token benchmark vs Markdown / HTML / JSON via tiktoken
cl100k_base - Frozen v0.1 grammar in EBNF, specification dogfooded in
.agditself
Token economy (cl100k_base, four real-world examples)
| Format | vs AGD |
|---|---|
| HTML | +10% to +33% more |
| JSON | +115% to +200% more |
| Markdown | -15% to -25% — Markdown wins on raw count |
The Markdown deficit is the deliberate cost of explicit @<tag> prefixes and
[#id] anchors. AGD pays back when an agent has to edit the document.
Test coverage
67 tests across six suites:
- unit tests in
src/* - property-based roundtrip (proptest, 256 cases × 2 properties)
- conformance corpus (paired
.agd/.jsonfixtures) - CLI integration via
assert_cmd - doc-tests
Install
cargo install --git https://github.com/pinperepette/agdThe binary is called agd.
Deferred to v0.2
- VS Code / editor extension and LSP server
- PyO3 / wasm bindings
- Tree-sitter grammar
- Content-hash ID validation enforcement
- Native table syntax
- Fence-depth escapes for code-in-code
Status
Grammar is frozen for v0.1. Format and parser API are stable from this point;
breaking changes require a major version bump.