How I design software.
Software-change guidance for humans and coding agents: scope, code structure, Rust APIs, documentation, tests, review, and source control.
Work areas
Guidance types
Guides
Change scope, code shape, Rust review, documentation, agent work, and jj.
Rules
Short instructions for documentation, Rust, testing, review, source control, and agents.
Patterns
Repeatable situations and moves that can be cited in review.
Principles
Rationale behind related rules and patterns.
Mechanisms
Commands, checks, generators, and workflows used by the rules and guides.
Agents
Copyable instruction packs and rule packs for coding agents.
Tags
Documentation, Rust, testing, review, jj, and other topic indexes.
References
Official documentation, engineering guidelines, design sources, and planning records.
Review comments and repository setup
Review comments
Link a named rule or pattern instead of re-explaining the same preference in every PR.
Project setup
Copy the downstream `AGENTS.md` template and rule pack, then adapt local checks and constraints.
Agent instructions
Agent snippets give coding tools compact instructions with enough context for tradeoffs.