Project guidance template
Use this when creating AGENTS.md. Keep it project-specific and short. Copy only sections that apply.
# AGENTS.md
<project> is <one sentence describing the app/library/service>.
## Commands
```bash
mise run check # Runs fix, tidy, vet, vuln, build, and test:quiet
mise run fix # Runs golangci-lint fmt, modernize, and golangci-lint run --fix
mise run build # Builds <binary or packages>
```
## Workflow
- Use `mise` for project tooling and tasks. Run `mise run check` before ending
the turn. While iterating, use narrower tasks such as `mise run fix`,
`mise run test`, or parallelised mise tasks when appropriate. Do not bypass
mise with direct formatter or linter commands.
- Follow red/green TDD for behaviour changes. Write or update the failing test
first, then implement the smallest slice that makes it green.
- Do not smoke test unless asked. If smoke testing reveals a gap, add or improve
automated tests so the same issue is caught in the future.
- Work in tiny slices that are independently verifiable. Keep unrelated
documentation, AGENTS.md, or tooling edits separate from feature changes.
- If the project uses jujutsu, start by reading `jj status`. Use `jj diff --git`
for git-style diffs. Create a new change before unrelated work.
- If the project uses a spec tool such as acai, update or confirm the relevant
spec before implementation and reference the exact spec IDs covered by the
slice.
- If the project explicitly adopts gocuke, keep feature files and step
definitions aligned with the formulated behaviour. Otherwise, use ordinary Go
tests.