Skip to content
Cockpit0.29.0
A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live

policy

One policy, projected into every tool's instruction file

What it is

URI
majordomus://feature/policy
Kind
feature
Identity
policy
Path
.ai/repo/features/policy.md
Provenance
declared
Media type
text/markdown
As a capability
feature.policy

Front matter

{
  "schema": "feature/v1",
  "id": "policy",
  "kind": "feature",
  "title": "One policy, projected into every tool's instruction file",
  "short_title": "Policy",
  "headline": "Every provider the tool declares — an agent, an orchestrator that runs agents, any tool that reads AGENTS.md — gets the same rules from the same place, because their instruction files are generated from one policy and never written by hand; the providers are the table in docs/generated/providers.md.",
  "summary": "A provider-neutral policy and four execution profiles are the one source; majordomus update renders each provider bootstrap from its template, stamps it with the policy hash and the hash of its own content, and doctor fails a bootstrap that was hand-edited, that carries a rule corpus of its own, or that exceeds the always-loaded budget.",
  "status": "stable",
  "weight": 90,
  "domain": "governance",
  "featured": false,
  "areas": [
    "governance",
    "context"
  ],
  "commands": [
    "init",
    "update",
    "doctor"
  ],
  "kinds": [
    "policy",
    "profile"
  ],
  "rules": [
    "majordomus.policy-integrity",
    "majordomus.policy-completeness",
    "majordomus.projection-integrity",
    "majordomus.bootstrap-integrity",
    "majordomus.profile-requirements",
    "majordomus.context-budget",
    "project.unknown-keys-are-errors"
  ],
  "docs": [
    "docs/SCHEMAS.md",
    "docs/ADOPTION.md"
  ],
  "adrs": [
    "adr-0005"
  ],
  "claims": [
    "policy-parse",
    "profile-validate",
    "projection-generation",
    "projection-fingerprint",
    "region-projection",
    "bootstrap-chain",
    "shared-policy",
    "context-budget",
    "profile-axes",
    "capability-class",
    "effort-escalation",
    "provider-projections-one-renderer",
    "init-refuses",
    "no-silent-overwrite"
  ],
  "use_cases": [
    "adopt-an-existing-repository",
    "keep-the-bootstrap-thin-and-within-budget",
    "trust-the-policy-before-reading-it"
  ],
  "related": [
    "doctrine",
    "declare-once"
  ],
  "tags": [
    "policy",
    "providers",
    "projections"
  ]
}

Content

---
schema: feature/v1
id: policy
kind: feature
title: One policy, projected into every tool's instruction file
short_title: Policy
headline: Every provider the tool declares — an agent, an orchestrator that runs agents, any tool that reads AGENTS.md — gets the same rules from the same place, because their instruction files are generated from one policy and never written by hand; the providers are the table in docs/generated/providers.md.
summary: A provider-neutral policy and four execution profiles are the one source; majordomus update renders each provider bootstrap from its template, stamps it with the policy hash and the hash of its own content, and doctor fails a bootstrap that was hand-edited, that carries a rule corpus of its own, or that exceeds the always-loaded budget.
status: stable
weight: 90
domain: governance
featured: false
areas: [governance, context]
commands: [init, update, doctor]
kinds: [policy, profile]
rules: [majordomus.policy-integrity, majordomus.policy-completeness, majordomus.projection-integrity, majordomus.bootstrap-integrity, majordomus.profile-requirements, majordomus.context-budget, project.unknown-keys-are-errors]
docs: [docs/SCHEMAS.md, docs/ADOPTION.md]
adrs: [adr-0005]
claims: [policy-parse, profile-validate, projection-generation, projection-fingerprint, region-projection, bootstrap-chain, shared-policy, context-budget, profile-axes, capability-class, effort-escalation, provider-projections-one-renderer, init-refuses, no-silent-overwrite]
use_cases: [adopt-an-existing-repository, keep-the-bootstrap-thin-and-within-budget, trust-the-policy-before-reading-it]
related: [doctrine, declare-once]
tags: [policy, providers, projections]
---

## What it does

`.ai/repo/policy.yaml` names the projections: a provider and a target file for each. The
templates ship with the tool and a repository may override one under its own layer; the
Rust executable and the shell tool render the same bytes, stamp included, so both agree on
every stamp. A bootstrap says how to find the policy and never what the policy is: it points
at the layer and the rules, stays inside the line budget the policy sets, and carries no
rule of its own, so a rule that exists for one provider and not another cannot happen.

Profiles set capability class, effort, verbosity, presentation, context toggles and
verification as independent fields, and a task carries the profile it started with.
Unknown keys anywhere are errors, so a typo fails loudly.

## What it does not do

It never names a vendor model: capability classes are what the projection asks a worker to
map onto the closest its environment offers. It does not edit a provider's own settings,
and a hand edit of a generated file is detected and refused rather than merged.