pastoralist · git:20260830.3a7f15a · 2026-08-30 · sha256 46d53d0c774cab3a
pastoralist git:20260830.3a7f15aA
Immutable. This exact content is served forever at /api/v1/blob/46d53d0c774cab3a.
---
name: pastoralist
description: >
Use when setting up, running, or maintaining Pastoralist override tracking,
security checks, install hooks, GitHub Actions, or dependency override docs.
---
# Pastoralist
Start with `npx pastoralist onboard` when setting up a repo.
Use `npx pastoralist doctor` for read-only project health.
Run `pnpm run setup:local-dev -- --dry-run` before setup writes.
Use `npx pastoralist init` to create config.
Config can live under `package.json#pastoralist` or as top-level settings in `.pastoralistrc`, `.pastoralistrc.json`, `pastoralist.json`, or `pastoralist.config.*`.
Use `npx pastoralist` to update the override appendix.
Use `npx pastoralist --setup-hook` to keep the appendix current after installs.
Use `npx pastoralist --checkSecurity` for advisory checks.
Use `npx pastoralist --remove-unused` only after reviewing dry-run output.
## User-Owned Best-Case Overrides
When best-case selection conflicts with an override the user controls, show the
active version and the appendix ledger `addedDate`, then ask whether the package
should be user-owned. Do not infer ownership from the date. Persist approved
package names in `pastoralist.bestCase.userOwnedOverrides`; the active override
supplies the required version.
```json
{
"overrides": {
"alpha": "2.5.0"
},
"pastoralist": {
"bestCase": {
"enabled": true,
"userOwnedOverrides": ["alpha"]
},
"appendix": {
"alpha@2.5.0": {
"ledger": {
"addedDate": "2026-08-09T00:00:00.000Z"
}
}
}
}
}
```
User-owned versions win. Re-run the security check so the complete portfolio is
evaluated with those versions as hard constraints.
## Agent Setup
Prefer the packaged setup script for agent config and skills:
```bash
pnpm run setup:local-dev -- --agent codex --skills all --hooks git,postinstall
```
If only the skill is needed:
```bash
npx pastoralist --init agent-skill
```
## Agent Loop
1. Run `npx pastoralist doctor`.
2. Run `pnpm run setup:local-dev -- --dry-run`.
3. Apply the smallest needed setup command.
4. Run `npx pastoralist --dry-run`.
5. Report changed files and remaining manual steps.
For CI, add `yowainwright/pastoralist@v1` to a pull request workflow.
Keep secrets in environment variables, not config files.