AGENTS.md
Precedence: the closest AGENTS.md to the files you're changing wins. Root holds global defaults only.
Commands (unverified)
<!-- AGENTS-GENERATED:START commands -->Source: package.json — CI-sourced commands are most reliable
| Task | Command | ~Time |
|---|---|---|
| Typecheck | pnpm dlx tsc --noEmit | ~15s |
| Lint | pnpm dlx eslint . | ~10s |
| Format | pnpm dlx prettier --write . | ~5s |
If commands fail, verify against Makefile/package.json/composer.json or ask user to update.
Workflow
- Before coding: Read nearest
AGENTS.md+ check Golden Samples for the area you're touching - After each change: Run the smallest relevant check (lint → typecheck → single test)
- Before committing: Run full test suite if changes affect >2 files or touch shared code
File Map
<!-- AGENTS-GENERATED:START filemap -->packages/ → project files
<!-- AGENTS-GENERATED:END filemap -->
Heuristics (quick decisions)
<!-- AGENTS-GENERATED:START heuristics -->| When | Do |
|---|---|
| Committing | Use Conventional Commits (feat:, fix:, docs:, etc.) |
| Merging PRs | Squash and merge |
| Adding dependency | Ask first - we minimize deps |
| Unsure about pattern | Check Golden Samples above |
Repository Settings
<!-- AGENTS-GENERATED:START repo-settings -->- Default branch:
main - Merge strategy: squash, merge, rebase
Boundaries
Always Do
- Run pre-commit checks before committing
- Add tests for new code paths
- Use conventional commit format:
type(scope): subject - Use TypeScript strict mode with proper type annotations
Ask First
- Adding new dependencies
- Modifying CI/CD configuration
- Changing public API signatures
- Running full e2e test suites
- Repo-wide refactoring or rewrites
Never Do
- Commit secrets, credentials, or sensitive data
- Modify vendor/, node_modules/, or generated files
- Push directly to main/master branch
- Delete migration files or schema changes
- Commit package-lock.json without package.json changes
- Use any type without justification
When instructions conflict
The nearest AGENTS.md wins. Explicit user prompts override files.
- For TypeScript/JavaScript patterns, follow project eslint/prettier config