1# Project guidance template
2
3Use this when creating AGENTS.md. Keep it project-specific and short. Copy only
4sections that apply.
5
6````markdown
7# AGENTS.md
8
9<project> is <one sentence describing the app/library/service>.
10
11## Commands
12
13```bash
14mise run check # Runs fix, tidy, vet, vuln, build, and test:quiet
15mise run fix # Runs golangci-lint fmt, modernize, and golangci-lint run --fix
16mise run build # Builds <binary or packages>
17```
18
19## Workflow
20
21- Use `mise` for project tooling and tasks. Run `mise run check` before ending
22 the turn. While iterating, use narrower tasks such as `mise run fix`,
23 `mise run test`, or parallelised mise tasks when appropriate. Do not bypass
24 mise with direct formatter or linter commands.
25
26- Follow red/green TDD for behaviour changes. Write or update the failing test
27 first, then implement the smallest slice that makes it green.
28
29- Do not smoke test unless asked. If smoke testing reveals a gap, add or improve
30 automated tests so the same issue is caught in the future.
31
32- Work in tiny slices that are independently verifiable. Keep unrelated
33 documentation, AGENTS.md, or tooling edits separate from feature changes.
34
35- If the project uses jujutsu, start by reading `jj status`. Use `jj diff --git`
36 for git-style diffs. Create a new change before unrelated work.
37
38- If the project uses a spec tool such as acai, update or confirm the relevant
39 spec before implementation and reference the exact spec IDs covered by the
40 slice.
41
42- If the project explicitly adopts gocuke, keep feature files and step
43 definitions aligned with the formulated behaviour. Otherwise, use ordinary Go
44 tests.
45````