Files
crank/AGENTS.md
T
2026-03-25 18:19:44 +03:00

70 lines
1.9 KiB
Markdown

# AGENTS
## Purpose
This repository is developed through agent-assisted workflow. Follow the repository documents first, then implement code.
## Source of truth
Use the documents in this order when there is ambiguity:
1. `docs/architecture.md`
2. `docs/module-decomposition.md`
3. `docs/data-model.md`
4. `docs/database-schema.md`
5. `docs/admin-api.md`
6. `docs/mcp-interface.md`
7. `docs/rust-design.md`
8. `docs/development-rules.md`
9. `docs/rust-code-rules.md`
10. `docs/implementation-plan.md`
If code and docs diverge, update docs first or together with code.
## Workflow
- Follow `Red -> Green -> Refactor -> Commit`.
- Every feature uses its own branch: `feat/<feature-name>`.
- Commits must be atomic.
- Push periodically after one or more logically complete `RGR + commit` cycles.
- Do not wait for the whole feature to be finished before pushing.
- Delete merged feature branches both locally and in `origin`.
## Language rules
- Commit messages must be in English.
- Code identifiers must be in English.
- Code comments are avoided by default.
- If a code comment is truly unavoidable, it must be in English.
## Code rules
- Prefer self-documenting code.
- Keep domain logic separate from storage, transport, and orchestration.
- Do not create god-structs or giant services.
- Keep `pub` surface minimal.
- Avoid `unwrap`, `expect`, `todo`, `dbg`, and `panic` in production code.
- `unsafe` is forbidden by default.
## Commands
Use the canonical commands from `justfile`:
- `just fmt`
- `just fmt-check`
- `just check`
- `just clippy`
- `just test`
- `just verify`
## Current execution mode
- Build the Rust workspace first.
- Keep the UI as a separate app outside the Cargo workspace.
- Implement one vertical slice at a time.
## Task tracking
- Check `TASKS.md` before starting a new piece of work.
- Update `TASKS.md` when a task starts, finishes, or gets blocked.