Source of truth: toolkit/scaffold/agent-config/README.md. Edit it there; this page is regenerated on build.
Agent configuration as code
The canonical agent configuration every squad inherits — the agent guardrail standard implemented, not aspired to. Guardrails are never set by hand per session: an agent session is a function of a versioned config, so "which config was live when that agent acted" is always answerable — the question every provenance trail and incident review starts with.
What the canonical config holds
CLAUDE.md/ system-prompt templates — the base agent context every repo starts from (see../CLAUDE.md), including the session-start checklist and the standing rules (no new dependency without approval, never act irreversibly, readmemory/first).- Hook definitions — lint, test and scan on write, so an agent gets feedback the moment it produces code, not at PR time. The pre-commit secrets hook lives here too; it pairs with the CI gate in
../ci/so nothing depends on the agent remembering. - MCP-server allowlist — the only tool servers an agent can connect to. One source of truth shared with the radar and security allowlist: anything an agent can reach was vetted through the same intake.
- Model pinning — models pinned per task class (per the model-selection standard), so behaviour changes are deliberate upgrades with an evaluation run, never a silent drift because a default moved.
- Per-repo overlays — a repo inherits the base and overlays its specifics (extra hooks, tighter path allowlists, domain-sensitive review triggers). Overlays may tighten guardrails, never loosen them — loosening is a change to the base, made by PR, in the open.
The rules
- Changed by PR only — config changes are reviewed like code, because they are code: a loosened allowlist is a security change and gets that scrutiny.
- Reproducible — any past agent session can be re-run under the exact config version it had. No snowflake sessions.
- Auditable across UK and India — both centres run identical config from this tree; the audit trail is the git history. "It behaves differently in Pune" should be impossible by construction.
- Config version travels with provenance — the AI-provenance declaration on each PR records agent, model and config version, so blast-radius queries after a defect can find every change built under a given config.
Pending
Concrete config formats — file names, hook syntax, MCP configuration schema, pinning mechanism — land with agent tool selection (tooling evaluation). This README fixes the structure and rules now so the tool decision slots into an agreed shape; do not invent per-squad formats in the meantime.
Standards referenced: NIST AI RMF, least-privilege.