Built for the agent era
Agents do the work. You approve what matters.
Nine open-source, local-first CLIs for contract operations — extract, draft, review, lint, compare, convert, sign, and track contracts from the command line. Each works standalone; together they cover the whole workflow. Built so an AI agent can run the operational work over MCP, while a human approves the gates that matter — starting with signing.
Each box is a separate CLI; the arrows are the handoffs between them — files and JSON in standard formats. No proprietary glue, no shared database, no daemon — just standalone tools that compose.
Nine tools at a glance
| Tool | Stage | Reads → writes |
|---|---|---|
| extract · Python | Ingest | any contract → structured JSON |
| template-vault · Python | Store | vault → versioned template |
| draft · Node | Draft | template + params → filled draft |
| nda-review · Python | Review / negotiate | draft → verdict + redlines |
| contract-lint · Python | Lint gate | one contract → defect findings |
| compare · Node | Drift gate | two versions → pass / block verdict |
| docx2pdf · Node | Convert | .docx → .pdf |
| sign · Node | Sign | .pdf → signed .pdf + receipt |
| contract-vault · Python | Manage | signed contract → renewals + deadlines |
Every tool answers --catalog json for uniform agent discovery. Exit-code meanings differ per tool — see built for agents.
The tools
Open-loop front door: ingest any contract (.md/.txt/.html/.docx/.pdf) into structured JSON — parties, clauses, dates, governing law — with a confidence and source on every field.
pipx install extract-cli
Read more
Git-backed, clause-aware vault for legal-document templates. Fork, swap clauses with recorded provenance, pull upstream upgrades.
pipx install template-vault-cli
Read more
Fill placeholders in markdown or .docx templates. Typed/computed/positional params, parties registry, multi-doc bundles.
npm i -g @drbaher/draft-cli
Read more
Draft, review, and negotiate NDAs against your own house playbook. Deterministic by default; opt-in LLM augmentation.
pipx install nda-review-cli
Read more
Pre-signature quality gate: lint one contract for internal-consistency defects — leftover placeholders, broken cross-references, defined-term and numbering issues — with CI-gateable exit codes.
pipx install contract-lint
Read more
Clause-aware drift detection between two contract versions. Pre-signature gate with exit codes CI can branch on. No LLM tier.
npm i -g compare-cli
Read more
Honest DOCX → PDF conversion with batch processing, parallel runs, font validation, and pluggable backends.
npm i -g docx2pdf-cli
Read more
Fully-offline PAdES e-signature with hash-chained audit events, RFC 3161 timestamps, named profiles, and a 19-tool MCP server for agents.
npx @drbaher/sign-cli@latest
Read more
Post-signature layer: register signed contracts in a git-backed vault, then surface renewals, notice deadlines, and obligations as a queryable portfolio + an .ics calendar.
pipx install contract-vault
Read more
Try the NDA review live
Score an NDA against a house policy book and watch it flag every non-compliant clause, in a sandbox. No install. No sign-in.
Open the live demo →Built for an agent-first workflow
Most legal-tech assumes a human at a desk: dashboards, threaded comments, in-app redlining. These CLIs assume the opposite — an LLM agent doing the operational work and a human approving the things that legitimately need a human. Drafting, scoring, suggesting amendments, sending, tracking: agent. Signing, escalating non-negotiable conflicts, accepting a final position: human, with a deliberate gesture.
- Drafts NDAs from your house templates
- Reviews counterparty docs against your policy
- Proposes amendments using your stance + priorities
- Sends documents for signature, tracks status
- Verifies signed PDFs and audit chains
- Signing — every signature requires a per-signer token
- Escalations on non-negotiable redlines
- Accepting the final agreed position before finalize
- Anything outside the deterministic policy guardrails
The MCP server in sign-cli exposes every command to any MCP-aware client (Claude Code, Cursor, Codex). Same per-signer guardrails — the agent never sees the approval token, the human does. Read the MCP guide for the wire-up, or grab the hosted listing on Smithery for one-click install into Claude Desktop, Cursor, and friends.
Why nine small tools instead of one big platform
Most contract operations products are SaaS suites. They want every step in one dashboard, every document in their database, every signature behind their identity provider. That's a fine business model for them, but it makes contract operations expensive, opaque, and — critically for an agent-first workflow — hard for an agent to drive without scraping or RPA glue.
The nine CLIs here take the opposite stance. Each does one thing well. None of them require an account, a subscription, or a network call you didn't ask for. An agent can drive them over stdio or MCP; a human can drive them from a terminal. You can swap any one of them, fork them, or audit the source end to end. Together they cover the same workflow a SaaS suite would, with the documents and audit trail on your machine — and an interface an agent can use natively.
Where to go from here
- 5-minute tour — run all nine zero-config demos, then chain them end to end. The fastest way in.
- The workflow — how the nine tools chain together, with copy-paste commands.
- Install — every install path on one page.
- MCP guide — drive the whole suite from an agent (Claude Code, Cursor, Codex).
- Comparison — how the suite stacks up against SaaS contract platforms.
- Principles — what these tools have in common and what they refuse to do.
- Changelog — what's new and what's coming next.
Or jump straight to any tool from the cards above.