Aura · Learn

Hands-on guides for the
git-native intelligence layer.

Reference articles for engineers shipping AI-driven code on top of Git. Running several agents on one repository, reading changes as structure instead of text, and keeping a record of what an agent did and why: answered properly, with code.

Semantic

Semantic · 8 min

Semantic diff vs git diff: what changes when you compare structure

A git diff compares lines. A semantic diff compares parsed structure, so a rename is a rename and a move is a move. What that changes, and what it costs.

Read→
Semantic · 7 min

Semantic diff for Rust: traits, impls and what a text diff misses

Rust makes text diffs misleading: impl blocks move, trait bounds change meaning without changing shape, macros hide the edit. What structure sees.

Read→
Semantic · 7 min

Tree-sitter and the AST: how tools read your code

Tree-sitter parses source into a concrete syntax tree fast enough for every keystroke, and keeps working on code that does not compile. What it holds.

Read→
Semantic · 6 min

AST merge and text merge: why some conflicts should not exist

Git merges lines, so two agents editing different functions in one region conflict for no reason. What a structural merge resolves, and what it cannot.

Read→
Semantic · 6 min

Shadow branches: keeping tool metadata out of your history

A shadow branch keeps a tool’s own data in the repository without putting it on the branches you push. How it works with Git refs, and what breaks.

Read→
Semantic · 6 min

A Merkle graph of your code, and what it makes cheap

Hash every node of the syntax tree from its children up and comparison, caching and change detection get cheap. Git’s trick on files, applied inside.

Read→
Semantic · 6 min

Structural code search: finding patterns instead of strings

Grep finds text. Structural search finds shapes: every call with a literal timeout, every catch that swallows the error. How AST queries beat a regex.

Read→