This file provides guidance to coding agents when working with code in this repository.
- Never commit unless asked to
- Never add co-authored by Claude Code to commits!
- Never push main or pull requests to origin unless asked to
- Prioritize using LSP capabilities if possible
- When resolving a TODO, follow its instructions literally
- Run type checking as part of your tasks
- Run specs as part of your tasks
- Run linting as part of your tasks
- Start plan from a summary a new/updated API summary (models/signatures) and most challenging points, continue plan using your default settings
- Run
pnpm installto install all dependencies - Run
pnpm lintto lint the code using Biome - Run
pnpm formatto auto-fix formatting issues with Biome - Run
pnpm typeto check TypeScript types - Run
pnpm unitto run only the Vitest tests - Run
pnpm exec vitest run path/to/test.tsto run a single test
- Use 2-space indentation, UTF-8 encoding, and LF line endings
- Use PascalCase for classes and interfaces, and camelCase for methods and variables
- Place high-level public items first in a file and low-level private items last
- Use ES modules with full import paths including the ".ts(x)" file extension
- Use strict TypeScript with null checks but don't add explicit return types to functions
- Never use TypeScript
any, type castingas, or!without permission
- Place unit tests in
<module>.unit.tsfiles and don't add useless comments like "Arrange", "Act", "Assert"
- Add Typedoc comments only for public APIs and don't add them for files or use @params directives
- Add brief docstrings for exporter functions and models (explain what it does)
- Don't write
//comments in the code