stemma

Safe tracked changes for Word automation.

Give stemma a .docx and the changes you want. It returns a native redline your reviewers accept or reject in Microsoft Word. The original is preserved, and ambiguous changes are refused instead of guessed.

Read the docs or try the CLI: cargo install stemma-cli


What you do with it

  • Turn a returned draft into one clean, attributed redline for contracts, policies, or any negotiated document.
  • Let an AI assistant propose edits your reviewers accept or reject in Word, not in a chat window.
  • Fill an existing .docx template in place: text, tables, and content controls, either tracked or silent.
  • Apply the same approved wording change across many documents, with a per-file receipt.

Quick start

With an AI assistant

The MCP server ships prebuilt binaries; npx fetches the right one. Add it to Claude Code:

claude mcp add stemma --scope user -- npx -y @stemma-sh/mcp

Then ask in plain language: “Open nda.docx and extend the confidentiality term from 2 to 3 years as a tracked change, then save it as nda-redline.docx.” The result opens in Word as an ordinary redline, attributed to the author you chose.

On the command line

Turn an original and a revised document into native tracked changes:

cargo install stemma-cli

stemma compare as-sent.docx as-returned.docx \
  -o changed.docx --author "Approved Reviewer"

Rejecting every change reconstructs as-sent.docx. Accepting every change reconstructs as-returned.docx.


What holds it up

In published agent benchmarks, an agent driving stemma reaches 95% task success, against 82% for the same model editing the raw document XML by hand. The gap widens exactly where documents stop being flat text: stacked redlines, table interiors, and footnotes.

Everything runs on your machine, as a command-line tool or a local MCP server. Documents are read and written locally and never sent to a service.