|
| 1 | +# Claude Helpers for Cursorless |
| 2 | + |
| 3 | +This file contains helpful hints for Claude when working with the Cursorless codebase. |
| 4 | + |
| 5 | +## Documentation Structure |
| 6 | + |
| 7 | +- Main documentation is in `/packages/cursorless-org-docs/src/docs/user/README.md` |
| 8 | +- Spoken forms are defined in `/cursorless-talon/src/spoken_forms.json` |
| 9 | +- Contributing documentation is in `/packages/cursorless-org-docs/src/docs/contributing/` |
| 10 | + |
| 11 | +## Project Organization |
| 12 | + |
| 13 | +- Main extension code is in `/packages/cursorless-vscode/` |
| 14 | +- Engine code is in `/packages/cursorless-engine/` |
| 15 | +- Tests are in `data/fixtures/recorded/` |
| 16 | +- Language-specific parsing is defined in the `queries/*.scm` files |
| 17 | + |
| 18 | +## Build and Test |
| 19 | + |
| 20 | +- Always run lint and typecheck when making changes: |
| 21 | + - `pnpm run lint` |
| 22 | + - `pnpm run typecheck` |
| 23 | +- Tests can be run with: |
| 24 | + - `pnpm test` |
| 25 | + |
| 26 | +## Documentation Conventions |
| 27 | + |
| 28 | +When documenting actions or modifiers: |
| 29 | + |
| 30 | +- Include a brief description of what the item does |
| 31 | +- Include the format/syntax |
| 32 | +- Include at least one example |
| 33 | +- For versatile actions like `drink`, `pour`, `drop`, `float`, and `puff`, explain their behavior with different scope types |
| 34 | +- Always document special behaviors with different scope types |
| 35 | + |
| 36 | +## Implementation Notes |
| 37 | + |
| 38 | +- Many actions (`drop`, `float`, `puff`) work with both line and non-line targets |
| 39 | +- Always check test fixtures in `/data/fixtures/recorded/` to understand behavior |
| 40 | +- Implementation for many actions is in `/packages/cursorless-engine/src/actions/` |
| 41 | + |
| 42 | +## Pull Request Guidelines |
| 43 | + |
| 44 | +- Any feedback should be addressed in code or replied to |
| 45 | +- Tests should be included for new functionality |
| 46 | +- Documentation should be updated to reflect changes |
| 47 | +- Make sure changes are consistent with the project architecture |
0 commit comments