Imported from windsornguyen/cowtree (
AGENTS.md). Install upstream withnpx skills add windsornguyen/cowtree. Copyright stays with the author.
Codebase Rules
- Do not use
Any. - Optimize for space efficiency first.
- Avoid redundant checked-out Git file payloads.
- Treat wall-time, CPU, and I/O speedups as secondary wins.
- Type every value that crosses a function boundary, including strings.
- Use enums for named cases.
- Use dataclasses or Pydantic models for structured values.
- Return structured values as classes, not loose dictionaries.
- Save return values to a named variable before returning them.
- Keep subprocess commands as
list[str]; never build shell command strings. - Use
uvfor package management, commands, lockfiles, and builds. - Do not use
pip,poetry, orrequirements.txt. - Fail closed with typed errors.
Contributions
- Follow
CONTRIBUTING.rstbefore opening a PR. - New external contributors must open a Contribution interest issue and wait for
a maintainer's vouch to appear in
VOUCHED.tdon the default branch. - The repository owner, collaborators with write access, and contributors already vouched do not need a repeated contribution-interest issue.
- Do not edit
VOUCHED.tdin a contribution PR to grant yourself access. - Link the approved issue in a new contributor's PR and report validation results.
- A vouch grants contribution access; it does not replace review or required checks.
GitHub Actions
- Generate every workflow and local action through Hollywood Actions 0.0.5 or newer.
- Edit
ci/*.ts; never hand-edit generated YAML or action bundles. - Run
npm run ci generateandnpm run ci checkbefore publishing CI changes. - Use structured commands or typed actions, never
unsafeShell.