This file provides guidance to AI coding agents when working with code in this repository. Only add instructions to this file if you've seen an AI agent mess up that particular bit of logic in practice.
Always consult these files as needed:
docs/ARCHITECTURE.md— code organization and component relationshipsdocs/HACKING.md— development workflow with mkosidocs/CODING_STYLE.md— full style guide (must-read before writing code)docs/CONTRIBUTING.md— contribution guidelines and PR workflow
- Always run arbitrary commands with the
mkosi box --wrapper command. This runs in an environment where more tools are available.
- Never compile individual files or targets. Always run
mkosi -f box -- meson compile -C buildto build the entire project. Meson handles incremental compilation automatically. - Never run
meson compilefollowed bymeson testas separate steps. Always runmkosi -f box -- meson test -C build -v <TEST-NAME>directly. Meson will automatically rebuild any required targets before running tests. - Never invent your own build commands or try to optimize the build process.
- Never use
head,tail, or pipe (|) the output of build or test commands. Always let the full output display. This is critical for diagnosing build and test failures.
- Never use
grep -qin pipelines; usegrep >/dev/nullinstead (avoidsSIGPIPE)
- Always check out the PR in a git worktree in
worktrees/, review it locally and remove the worktree when finished.
Per project policy: if you use AI code generation tools, you must disclose this in commit messages by adding e.g. Co-developed-by: Claude <claude@anthropic.com>. All AI-generated output requires thorough human review before submission.