01 / Pointing at the source of truth
Name the tracked source behind each tool-facing mirror
Skills live under skills-contrib and rules under .agents/rules. Tool-specific directories are generated or symlinked presentations; editing canonical paths keeps Git diffs aligned with the tracked files.
Source excerpt starting at line 33.33The repo keeps a single canonical home for each kind of agent surface, with presentation symlinks that satisfy the paths each harness expects.
02 / Ratchets
Enforce a direction of travel for unsafe casts
Production casts use named utilities with a reason rather than bare as. The file identifies a plugin and CI ratchet that prevent per-PR increases while preserving explicit exceptions for tests and as const.
Source excerpt starting at line 67.67- No bare `as` in production code. Use `blindCast<T, "Reason">` or `castAs<T>` from `@internal/utils/casts`; see the `no-bare-casts` skill for the decision tree. `as const` and test files are exempt. The `no-bare-cast` plugin + CI ratchet enforce no per-PR cast increases.
03 / Architecture as narrative
Describe the contract flow from authoring to execution
The guide follows schema authoring through emitted JSON and declaration files, validation, and typed DSL use. It separates structured artifacts from executable runtime generation.
Source excerpt starting at line 86.861. **Authoring**: Write `schema.psl` or use TypeScript builders → canonicalized Contract IR872. **Emission**: Emitter validates and generates `contract.json` + `contract.d.ts`883. **Hydration**: the client factory (or a family `ContractSerializer`) validates `contract.json` into the typed contract894. **Usage**: DSL functions (`sql()`, `schema()`) accept the contract and propagate types
04 / Router files
Route routine work through modular onboarding
Setup, repository layering, conventions, testing, and common tasks each have a separate document. Day-to-day changes are directed to a playbook instead of duplicating every procedure in the root.
Source excerpt starting at line 113.113- Day-to-day playbook (add SQL operation, split monolith, fix import violation, etc.): [Common Tasks Playbook](docs/onboarding/Common-Tasks-Playbook.md)