Open source · 2026 - trellis
Durable intent for AI-assisted codebases — every unit of code gets a sidecar that states its contract, for humans and agents alike.
- Go
- Developer tooling
- AI-assisted development
AI assistance makes the first weeks of a codebase fast and the later months expensive. An agent adds the module that already existed, rewrites the unit that only needed a tweak, and lets intent drift away from code — each change locally reasonable, the sum globally bad. The cause isn’t model capability; it’s that nothing tells the agent what a unit is for before it edits it.
Trellis pairs every unit of code with a .trellis sidecar that states its intent: what it provides, what it consumes, what must always be true, and what is explicitly not its job. The format is identical in structure from language to language — Ruby, Go, TypeScript, SQL — so the contract reads the same wherever you are in the stack.
Tests verify behavior. Trellis preserves intent.
Code embodies behavior and tests verify it, but neither captures why a unit exists or where its boundaries are. A sidecar is a reviewable, version-controlled artifact that both humans and agents can reason over before a change is made — invariants, out-of-scope notes, and scenarios in a compact, structured grammar.
The tooling around it
Trellis ships as a CLI (trellis lint, trellis graph), an editor grammar with real syntax highlighting, and an agent skill that enforces the workflow gates: read the sidecar before modifying source, check invariants before changes, and verify that consumed contracts actually exist.