Your code moves. Your docs keep up.

specfold is a command-line tool, spec, that keeps design, plan and maintenance docs next to the code they govern, links them as a graph and checks them on every change.

Get started

A document graphinteractive view
How specfold links docs to code A design doc and a plan doc are owned by a team and govern source files. The spec check command verifies every link and reports drift. design.mdkind: design plan.mdkind: plan owner@core src/cli src/core tests/ governsowned by ✓ spec check: 0 errors
Documents are nodes; relations such as governs and supersedes are edges between them and the code they describe.

Install it your way

Every method gives you two commands, specfold and its short alias spec.

npm

npm install --save-dev @modootoday/specfold
npx spec --version

cargo

cargo install specfold

Binary

sha256sum -c specfold-<target>.tar.gz.sha256
tar -xzf specfold-<target>.tar.gz

Prebuilt archives for Linux, macOS and Windows are on the latest release. See Install for every target.

Three steps, then it runs by itself

  1. Write. spec new sot stores a document with the owner of the code it governs.
  2. Link. rel.governs ties it to code paths; other relations tie it to documents.
  3. Check. spec check fails CI when a document drifts from the code or the rules.

See it run

$ spec context services/shop/src/cart/total.rs
sot:shop/cart-totals  Cart totals  [active]
$ spec check --summary
ok: 3 documents, 0 errors, 0 warnings

At a glance

  • 11 document types
  • 36 rules, each explained by spec explain
  • 5 prebuilt platforms
  • 0 servers or network calls

Where next

  • Concepts — types, lifecycle, owners, the graph and checks, one page each.
  • Guides — AI agents, CI, importing, editing and attachments.
  • Reference — every command, rule and configuration key.

Questions

What is specfold? A command-line tool, spec, that keeps design, plan and maintenance documents in your repository and checks their links and metadata.

Does it need a server or network access? No. spec is a single offline binary. Stores and plugins are external commands you configure.

How do AI agents use it? They run spec with --json to find the documents that govern a file, edit sections, and run spec check before committing. More in the FAQ.