Agent-native source.
Semantic program control.
Draxl is an AST-native source format designed for AI agents and large-scale concurrent code edits. Stable node IDs. Semantic patching. Deterministic merges.
Why Draxl
AI agents generate code faster than line-based tools can integrate it. Draxl makes program structure first-class in the source itself.
Stable Node IDs
Syntax nodes get stable identities. Tools target @ids directly instead of guessing by line and column.
Ranked Slots
Ordered inserts use explicit ranks inside params, statements, and match arms. No positional guesswork.
Deterministic Anchors
Docs and comments attach via explicit anchors. No proximity heuristics. Always deterministic.
Canonical Output
Human-readable source and machine output stay stable. Re-parse preserves semantics.
See it in action
Concurrent edits from multiple agents compose cleanly when they target different semantic nodes.
@m1 mod demo {@d1 /// Add one to x.@f1[a] fn add_one(@p1[a] x: @t1 i64) -> @t2 i64 {@c1 // Cache value.@s1[a] let @p2 y = @e1 (@e2 x + @l1 1);@s2[b] @e3 y}}mod demo {/// Add one to x.fn add_one(x: i64) -> i64 {// Cache value.let y = (x + 1);y}}replace @e2: (@e9 x * @l2 2)insert @f1.body[ah]: @s3 let @p3 z = @e4 (@e5 y + @l3 1);Text diffs vs Draxl
Traditional code modification is text-oriented. Draxl uses semantic patch operators over stable IDs.