# AGENTS.md

Read by Grok Build, Claude Code, GitHub Copilot, Cursor and Gemini CLI. One
file, every vendor's agent — which is why this is the piece of configuration
worth investing in: it is not lock-in.

Keep it short. It loads on every request, so a merely nice-to-have rule
dilutes the ones that matter.

Replace everything below with your project's facts.

## Commands

Things an agent cannot guess and will otherwise invent:

```
<install>      e.g. cargo fetch / pnpm install --frozen-lockfile
<build>        e.g. cargo build --workspace
<test one>     e.g. cargo test -p mycrate test_name
<test all>     e.g. cargo test --workspace
<lint>         e.g. cargo clippy --all-targets -- -D warnings
```

Prefer running a single test over the whole suite while iterating.

## Architecture boundaries

State the rules a reasonable person would break by accident, and say *why* —
a rule with a reason survives a situation you did not anticipate.

- `<layer A>` must not depend on `<layer B>`. (Reason: …)
- All outbound HTTP goes through `<module>`. (Reason: retries and tracing.)
- `<generated>` is generated from `<source>`. Never hand-edit.

## Conventions that differ from the default

Only what departs from the language or framework norm. The linter covers
the rest, and repeating it wastes the budget.

- …

## Known traps

- …

## Where the real documentation lives

- `<path or URL>` — the work wiki: hosts, decisions and why, runbooks,
  who owns what. Read it before asking me about infrastructure.
