The enforcement layer

Prove the system.
Do not trust memory.

The pdd CLI reads current repository evidence. It checks each rule, index entry, citation, comment, and accepted-risk marker.

Install the CLI ↓
A version change becomes work

Old assumptions cannot hide.

The CLI turns every old pin into a review item. Update the token only after the code is valid under the new rule.

pdd check
$ pdd check

src/jobs/reconcile.ts:48 [PDD106]
PDD-02@v1 is stale; review this site against PDD-02@v2

src/models/restore.ts:91 [PDD202]
ACCEPTED-RISK marker needs PDD-06@v1 within four lines

pdd check: FAILED (2 problems)
Install

One command checks the shared decision system.

npm install --save-dev @principle-driven/cli
npx pdd check

Install the package in a repository so its lock file pins the CLI version.

Try the CLI without adding a dependency.

npx --yes @principle-driven/cli check
pdd check

Check the system

Find invalid definitions, missing index entries, and citation problems.

pdd list

List current rules

Show each current token, title, and authority file.

pdd refs PDD-02

Find dependencies

List every repository site that relies on one principle.

What it proves

The rule and its use stay connected.

  1. 01
    Definitions

    Filenames, headings, tokens, versions, and history entries agree.

  2. 02
    Agent indexes

    Each configured AGENTS.md contains every current principle.

  3. 03
    Pinned citations

    Bare, unknown, malformed, lowercase, and old tokens fail.

  4. 04
    Named rules

    A principle title in prose needs its pinned token nearby.

  5. 05
    Accepted risks

    Each marker cites the current rule within four lines.

  6. 06
    Version sweeps

    A meaning change reports every code site that needs review.

Configure

Use the vocabulary of your repository.

Place pdd.config.json at the repository root. The defaults use PDD, one root agent index, and docs/principles.

Download the config →
{
  "prefix": "PDD",
  "principlesDir": "docs/principles",
  "agentFiles": ["AGENTS.md"],
  "acceptedRiskPrinciple": "PDD-06",
  "ignore": []
}
Run on every pull request

Documentation changes can change code assumptions.

- name: Check decision system
  run: npx pdd check

Do not add a path filter. A principle-only change must still run the version sweep.