Files

30 lines
982 B
Markdown

# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Build Commands
```bash
# Run all tests (must run from packages/ directory to avoid cache conflicts)
cd packages && very_good test -r
# Run tests for a single package (can use -r failures-only to reduce output)
dart test packages/shorebird_cli
```
## Architecture
Dart monorepo. Main package is `shorebird_cli`.
**Platform-specific operations** use the Releaser/Patcher pattern:
- `commands/release/` - `Releaser` base class with platform implementations
- `commands/patch/` - `Patcher` base class with platform implementations
**Dependency injection** uses `scoped_deps` with zone-based refs (see any `*Ref` variable).
## Code Style
- PR titles must follow semantic commit format (enforced in CI)
- CSpell: use inline `// cspell:words` for 1-2 files; add to global config for more
- Prefer new commits over amending in PRs - history gets squashed anyway