Rules & Governance

Headbox is not only a CLI. It is a set of rules that apply to a workspace: instruction packs a project installs Γ  la carte, artifacts with access rules that decide who may write to them, and one block emitted into every agent file so six tools cannot drift apart. The CLI is how you operate it; this is what it operates on.

Since v0.8.0, the rules stopped asking nicely

The original model relied on an agent choosing to read its instructions. headbox install-hooks changes that: a deterministic adherence layer with hooks, mechanical counters and an @import stub, so the harness enforces the rules rather than the agent remembering them. headbox refresh re-emits the managed blocks from headbox-main.md, which is the propagation path: change a rule once, refresh, and every vendor file is rewritten.

24
Plugins
10
Artifacts
7
Vendor targets
4
Access rules
41
Total

Plugins

Modular instruction packs. A project installs only the ones it needs. All 24 are parsed from plugins/REGISTRY.md and their own file headers: the same registry the CLI validates against.

Why 24 is a verified number, not a claim

Three independent sources agree: 24 rows in plugins/REGISTRY.md, 24 files present on disk, and the CLI's own headbox validate printing OK: 24 plugins checked. No plugin is registered-but-missing or present-but-unregistered.

24
Plugins
5
Team
4
Packaged
11
With deps

The Full Set

Each card carries the plugin's real registry row. Version, type, dependencies and starter artifacts, plus the vendor compatibility line from its own file header. Team marks the five plugins the CLI counts as team plugins.

πŸ”’
versioning-policy v0.2.0
Semver bumps counted from what actually shipped, on every release.
plugins/versioning-policy.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🌿
git-workflow v0.2.0
Branch prefixes, no direct pushes to main, Conventional Commits, PR and worktree rules.
plugins/git-workflow.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ”—
task-binding v0.3.1
Bind work to a task system: ask for the task URL early, checkpoint as you go.
plugins/task-binding.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
⌨️
slash-commands v0.1.0
A table of reusable agent workflows, with per-vendor compatibility noted.
plugins/slash-commands.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity ⚠️, claude βœ…, gemini βœ…, codex ⚠️
πŸ›οΈ
architecture-log v0.1.0
Track technical decisions as ADRs. Never delete one: supersede it.
plugins/architecture-log.md
Registry entry
type simple
deps none
artifacts optional ADR directory
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🌳
repo-and-branches v0.2.0
Repo, branch and worktree routing, plus where agent credentials live.
plugins/repo-and-branches.md
Registry entry
type simple
deps `git-workflow` recommended
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ…ΏοΈ
parking-lot v0.1.0
The shared append-only "noticed this, cannot chase it now" protocol.
plugins/parking-lot.md
Registry entry
type simple
deps none
artifacts `.headbox/parking_lot.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸŒ‰
overlock-bridge v0.1.0
Bridges Headbox to an external thought-management layer. Auto-detects whether that system is deployed.
plugins/overlock-bridge.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity ⚠️, claude βœ…, gemini βœ…, codex ⚠️
πŸ—οΈ
workspace-architect v0.1.0
Opt-in. Scans file organisation and proposes changes; never moves anything without approval.
plugins/workspace-architect.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🧱
boundary-discipline v0.1.0
Explicit layering, one-way dependency direction, and a 350-line cohesion trigger.
plugins/boundary-discipline.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🀝
handoff-and-continuity v0.1.0
Preserve execution continuity when work spans sessions, agents, branches or workspaces.
plugins/handoff-and-continuity.md
Registry entry
type simple
deps none
artifacts optional handoff folder
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ“š
feature-backlog-governance v0.1.0
The abstract parent: a durable, reviewable backlog that never loses user intent.
plugins/feature-backlog-governance.md
Registry entry
type simple
deps none
artifacts optional feature ledger
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ“ˆ
feature-tracking v0.2.0
The concrete implementation of the above: templates, concept files, feature matrix, service map.
plugins/feature-tracking/plugin.md
Registry entry
type packaged
deps `feature-backlog-governance`
artifacts `docs/features.md`, `docs/features/`, `docs/architecture/service-map.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
✨
ai-as-enhancement v0.1.0
Keep AI an augmentation layer, never the only way a core feature functions.
plugins/ai-as-enhancement.md
Registry entry
type simple
deps none
artifacts none
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ—ΊοΈ
implementation-plan-governance v0.3.0
Uniquely numbered, version-aware, handoff-friendly implementation plans.
plugins/implementation-plan-governance.md
Registry entry
type simple
deps `versioning-policy` recommended
artifacts optional plan registry
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🧩
pmtbce v0.1.0
Opt-in only; install to make governed multi-task or unattended execution available, never to activate it implicitly.
plugins/pmtbce/plugin.md
Registry entry
type packaged
deps `task-binding`, `implementation-plan-governance`; `vet-plan` skill
artifacts session brief, task packet, evidence/debrief templates
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ”„
team-headbox-sync v0.1.0 Team
Shared governance across people and machines while keeping local setup private.
plugins/team-headbox-sync.md
Registry entry
type simple
deps `handoff-and-continuity` recommended
artifacts sidecar `team-headbox.md`, local `private-overlay.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ‘‘
role-and-authority v0.1.0 Team
Who can approve and who can only propose.
plugins/role-and-authority.md
Registry entry
type simple
deps `team-headbox-sync` recommended
artifacts sidecar `team-roster.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ“œ
proposal-governance v0.1.0 Team
Turns member changes into reviewable proposals rather than direct edits.
plugins/proposal-governance.md
Registry entry
type simple
deps `role-and-authority` recommended
artifacts sidecar `proposal-inbox.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ“‹
execution-tracking v0.1.0 Team
Did the work follow the plan? Tracks planned, revised, challenged, bypassed, drifted and unplanned.
plugins/execution-tracking.md
Registry entry
type simple
deps `implementation-plan-governance` recommended
artifacts sidecar `execution-ledger.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ“‘
team-health-monitor v0.1.0 Team
Installed / active / out-of-sync / stale signals for owner dashboards.
plugins/team-health-monitor.md
Registry entry
type simple
deps `team-headbox-sync` recommended
artifacts sidecar `sync-health.json` or `sync-health.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
πŸ€–
agent-roster v0.1.0
A living inventory of available agents and capabilities, for capability-aware routing.
plugins/agent-roster.md
Registry entry
type simple
deps none
artifacts optional `.headbox/agent-roster-local.md`
Compatibility
antigravity, claude, gemini, codex
🧩
ci-deploy-logging v0.1.0
Install on deployable repos (Next.js/Vercel/Supabase). Fill Configuration tokens from package.json; confirm Vercel secrets exist.
plugins/ci-deploy-logging/plugin.md
Registry entry
type packaged
deps `git-workflow` recommended, `merge-gates` recommended
artifacts `.github/workflows/{ci,vercel-preview,vercel-production,auto-version-bump,stale-branch-check}.yml`, `app/api/health/route.ts`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…
🧩
merge-gates v0.1.0
Install where agent changes must be gated before merge. Bind protected-paths/invariants/verify to the repo after install.
plugins/merge-gates/plugin.md
Registry entry
type packaged
deps `git-workflow` recommended, `ci-deploy-logging` recommended
artifacts `.gates/` tree + `AGENTS.merge-gates-snippet.md`
Compatibility
antigravity βœ…, claude βœ…, gemini βœ…, codex βœ…

Artifacts

The files Headbox governs. Each one has an access rule that decides whether you may edit it directly, only append through a command, or must file a proposal. This list is captured from live headbox artifacts output.

10
Artifacts
4
Access rules
7
State classes

Governed Files

The access rule is the interesting part: proposal-required artifacts cannot be edited directly at all: the CLI routes you to headbox propose. Append-through-command artifacts are append-only so history cannot be quietly rewritten.

βš™οΈ
config direct-edit
Project configuration. Edited directly; split between shared and local.
headbox artifacts: live output
Access rule
access direct-edit
state split
πŸ”’
private-overlay direct-edit
Local-only settings. Never synced to the sidecar.
headbox artifacts: live output
Access rule
access direct-edit
state private-local
πŸ—ΊοΈ
workspace-map read-only
Generated view of file organisation. Read-only: regenerate rather than edit.
headbox artifacts: live output
Access rule
access read-only
state local-generated
πŸ“—
team-headbox proposal-required
The shared team instruction set. Governed: changes go through a proposal.
headbox artifacts: live output
Access rule
access proposal-required
state team-shared
πŸ‘₯
team-roster proposal-required
Who holds which approval scope. Governed.
headbox artifacts: live output
Access rule
access proposal-required
state team-shared
πŸ“₯
proposal-inbox append-through-command
Pending proposals. Append-only through the command, so history cannot be rewritten.
headbox artifacts: live output
Access rule
access append-through-command
state team-shared
πŸ“‹
execution-ledger append-through-command
What was executed and whether it followed plan. Append-only.
headbox artifacts: live output
Access rule
access append-through-command
state team-shared
πŸ“°
team-digests append-through-command
Rolling shared summaries. Append-only.
headbox artifacts: live output
Access rule
access append-through-command
state team-shared-digest
πŸ””
owner-notifications append-through-command
Aggregated queue for the owner. Append-only.
headbox artifacts: live output
Access rule
access append-through-command
state team-aggregated
πŸ“‘
sync-health read-only
Generated health signal consumed by dashboards. Read-only.
headbox artifacts: live output
Access rule
access read-only
state generated-health

Vendor Targets

Headbox writes the same instruction block into every agent file it finds, so each tool gets identical rules. These 6 candidates are parsed directly from vendorFiles().

The code and the README disagree: the code wins

The README's vendor table lists seven agents including Antigravity. vendorFiles() ships six candidates, and the string antigravity does not appear anywhere in cli/headbox.js. We render what the code does and flag the seventh rather than quietly showing either number.

6
Implemented
1
Doc-only

Implemented

Detected by vendorFiles(), which filters the candidate list to files that actually exist in the target. AGENTS.md is the vendor-neutral baseline every install carries; CLAUDE.md is added explicitly because Claude Code will not read anything else.

🧭
Vendor-neutral baseline Shipped
OpenAI Codex and the default when nothing else is detected. Every install carries it unless --no-agents.
cli/headbox.js:416: vendorFiles()
Target file
AGENTS.md
🟠
Claude Code Shipped
Claude Code only auto-loads CLAUDE.md, so the CLI adds it explicitly unless --no-claude. Without it the agent never passively sees the rules.
cli/headbox.js:416: vendorFiles()
Target file
CLAUDE.md
♦️
Gemini CLI Shipped
Written when a GEMINI.md is detected in the target.
cli/headbox.js:416: vendorFiles()
Target file
GEMINI.md
πŸ–±οΈ
Cursor Shipped
Written when a .cursorrules file is detected.
cli/headbox.js:416: vendorFiles()
Target file
.cursorrules
πŸ™
GitHub Copilot Shipped
Written when the Copilot instructions file is detected.
cli/headbox.js:416: vendorFiles()
Target file
.github/copilot-instructions.md
πŸ„
Windsurf Shipped
Written when a .windsurfrules file is detected.
cli/headbox.js:416: vendorFiles()
Target file
.windsurfrules

Documented, Not Implemented

Present in the docs, absent from the binary. Shown because a reader comparing this page to the README deserves to know which one is true.

πŸ›°οΈ
Antigravity Documented, not implemented
Listed in the README vendor table as a supported agent writing to .agents/rules/*.md. The installer has no code for it.
README.md: documented only; absent from cli/headbox.js
Evidence
README.md lists Antigravity β†’ .agents/rules/*.md
cli/headbox.js contains the string "antigravity" 0 times
vendorFiles() ships 6 candidates, not 7