- Repo:
- Purpose:
- Stack: <e.g., Python 3.12, FastAPI, PostgreSQL>
- Status: <e.g., v0.1, MVP, production>
- All code, comments, docstrings, and variable names in English
- All documentation and markdown in English
snake_casefor variables, functions, and modulesPascalCasefor classeskebab-casefor file and directory names- Prefer explicit over implicit — no magic abbreviations
- See
.claude/rules/code-style.mdfor full details
- Feature branches only — never commit directly to main
- Conventional Commits format:
feat:,fix:,docs:,refactor:,test: - Small, focused commits with descriptive messages
- See
.claude/rules/git-workflow.mdfor full details
- Read this CLAUDE.md
- Read STATUS.md if it exists (picks up where last session left off)
- Confirm scope before making changes
- Stay within agreed scope — do not refactor unrelated code
- Prefer editing existing files over creating new ones
- Run tests before committing
- Ask before installing new dependencies
- Summarize what was done and what remains
- Update STATUS.md with handover notes
- See
.claude/rules/session-discipline.mdfor format
- Never commit secrets, API keys, tokens, or passwords
- Never run destructive commands (force push, reset --hard) without approval
- Flag any file that looks like it contains PII or credentials
- New code should have tests
- Linter must pass before committing
- No TODO comments without a linked issue
- Documentation updated alongside code changes