30 lines
982 B
Markdown
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
|