-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy path.cursorrules
More file actions
16 lines (15 loc) · 1.11 KB
/
.cursorrules
File metadata and controls
16 lines (15 loc) · 1.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Development Rules
## Core Rules
- Always start by exploring the context of this package: list the existing files and read the full `README.md`.
- Always use `uv sync --all-extras` to install packages then activate the virtual environment with `source .venv/bin/activate`
- Commit frequently but always make sure tests pass first, using `pytest`
- When working on a feature, check out `git diff origin/main | cat`. Make sure to use --no-pager, or pipe the output to `cat`.
- Prefer functional style Python instead of classes with inheritance
- Keep it DRY - reuse code as much as possible
- Always run pre-commit hooks before committing
- Implement the simplest solution possible and don't generalize when not yet needed
- Only implement the feature that is asked for, not anything extra
- NEVER run `git add .` - only use `git add filename` to avoid committing unrelated files
- NEVER claim that you are done with a task without running pytest.
- The linter might flag issues in pyproject.toml but ignore these because it is incorrect!
- DO NOT MANUALLY update the CLI help messages in the `README.md`. These are automatically generated.