catalog / devtools

Version Control System

Track history, branch, merge — and never lose committed work.

18 capabilities 1 sections reference specification

Build against it

# give your agent the catalog — no account, no install
claude mcp add provespec -- npx -y provespec-mcp

# then, from any agent session
spec_get(slug: "version-control")                → the capability tree
spec_checklist(slug: "version-control")          → the questions to answer
spec_grade(slug: "version-control", grades: [...])  → parity % + the gap list

# or just fetch it
curl https://provespec.com/catalog/version-control/spec.json

Grade every capability below as yes · partial · no · na, with a file reference as evidence. Whatever you leave ungraded counts as missing — the gap list is the work queue.

Or just paste this to your agent

Use the ProveSpec MCP server. Fetch the "version-control" spec with
spec_get, then walk spec_checklist and grade this repository against it —
one verdict per capability, each with a file reference as the note.
Call spec_grade with the results and give me the gap list as the plan.

If the server is not registered, add it first:
  claude mcp add provespec -- npx -y provespec-mcp

The specification

AI 18

Objects
  • Content-addressed immutable objects commits, trees, blobs
  • A commit records parents, author, message and tree
  • History is a DAG, not a line merges have two parents
Working
  • Stage a subset of changes before committing
  • Diff working tree, index and any commit
  • Discard, stash and restore changes
Branching
  • Create, switch, delete branches cheaply a branch is a pointer
  • Merge with conflict markers and a resolution step
  • Rebase, with the history-rewriting consequences documented
Remotes
  • Fetch, push, pull with tracking branches
  • Reject non-fast-forward pushes by default force is explicit
Safety
  • Committed work is recoverable after any local mistake reflog or equivalent
  • Integrity check over the object store
History
  • Log with filters by path, author, range
  • Blame — attribute each line to a commit
  • Bisect to find the commit that introduced a change
Ignore
  • Ignore rules, per directory and global
Hooks
  • Lifecycle hooks with a documented contract
Download spec.json All 100 specs