folio / BEST-PRACTICES.md
dystomachina's picture
chore: update BEST-PRACTICES
c119a7b
---
description: Rules to get the AI to behave
alwaysApply: true
---
# General rules for AI
- Prior to generating any code, carefully read the project conventions
- Read [project-design.md](docs/project-design.md) to understand the codebase
- Read [project-conventions.md](docs/project-conventions.md) to understand _how_ to write code for the codebase
- Run `make lint` and `make test` after every change. `lint` in particular can be run very frequently.
- When user starts a prompt with `QQ:` or `Question:`, just answer the question or prompt without producing code.
- Prefer small testable steps, after each step give a summary to the user and summarize the next step
- Maintain strict separation of concerns: Business logic MUST reside in the core library (`src/folio/`), not in interface layers (`src/focli/`). Interface layers should only handle user interaction, command parsing, and result presentation.
- Use `.docs/` for temporary documentation such as project plans or logs
## Prohibited actions
- Do not run `make folio`. This is for the user to run only.
- Do not use `git` commands unless explicitly asked.