git push → a live Google Doc your exec can comment on.
Every other review tool is a destination your reviewers have to adopt. TandemDoc mirrors your Markdown into the real Doc they already open — and their comments survive every agent rewrite and ride back to your repo. You never leave Git. They never leave Docs.
One line to your agent over MCP. Reviewers just get a Doc.
Two ways in: git push the Markdown you already write, or import a Google Doc once and ship it from Markdown after that.
Watch one comment go from the margin of a Doc to a merged commit — and close itself.
This is the scrollable narrative version of the one-take demo — each act is a scroll station.
- Share (0:00): One line to your agent over MCP. Send the link and you're done — no dashboard, no wizard.
- Review (0:20): Maya leaves two comments in the real Doc — same file, same margins, same sidebar she uses every day. Each is captured to your repo the moment it lands, anchored to its exact line.
- The loop (0:40): Your agent reads Maya's pricing comment over MCP, revises the canonical Markdown, and opens a PR. You review and merge — in the PR, where you already live. The agent never writes your main branch.
- Closed (1:10): The Doc updates with a minimal diff. Maya's pricing comment gets a reply naming what changed — and resolves itself. Her other comment didn't move — still anchored to its line, waiting for a human. Nobody re-typed anything.
Every other tool asks your reviewers to move. We ask nothing.
The tools that promise to fix this come in three flavors. Destinations ask your execs to review in a brand-new editor — the same ask that kills every rollout the moment it reaches someone senior. Free scripts do write to a real Doc — right up until the second push, when they destroy the review. And sync-only tools mirror your Markdown into a Doc but stop there: no review loop, no receipts, no way for a comment to become a merged change. (We tested the free stack. Keep scrolling.)
TandemDoc is the only review layer where reviewers stay in the real Google Doc, Git stays the source of truth, and the loop closes itself — comment → PR → merged → resolved.
The free stack loses your exec's entire review. Silently. On the second push.
You could wire this up yourself — a free Google-Docs MCP server, a coding agent, an afternoon. We benchmarked exactly that stack, pre-registered predictions and all. The first push looked great. That's the trap.
Each failure is a feature we built
| What happened on the free stack | The feature that answers it |
|---|---|
| The second push wiped the review — three reviewer comments and their replies gone, with zero warnings. | Minimal-diff updates — unchanged lines are never touched, so comment anchors survive. |
| After the wipe the API still reported every thread alive — the agent was told the sync succeeded. | Durable pair state — every mirror is receipted against a version, so the bookkeeping can't quietly lie. |
| Thread resolution "may not persist," its own fine print admits — and it never did. The loop can't close. | Working resolution — the loop closes threads with a reply naming what changed. |
| The pending suggested edit was invisible in the API, then destroyed — no script can capture what it can't see. | Capture-before-overwrite — every comment rides to your repo before any line under it changes. |
| Zero warnings while the entire review was annihilated. | Fail-loud refusal — TandemDoc declines or freezes and tells you; it never silently corrupts. |
The DIY stack doesn't lose a comment here and there — it loses the entire review, silently, and then tells your agent everything went fine.
Benchmark run 2026-07-13 against the strongest free stack we could assemble: a popular open-source Google-Docs MCP server driven by a leading coding agent. Full results available on request.
The comment closes itself
Faithful sync keeps the Doc honest. The loop is what you upgrade for: every reviewer comment becomes work your agent can act on, and every merge flows back to the Doc — receipted.
You steer, the agent pedals.
A comment goes in one end of the chain — and a merged, mirrored, resolved change comes out the other.
The yes lands on the doc, its PR, and the record.
Some documents need a decision, not just comments. Put the pair on an approval lane and the yes happens where the work already is: one tap from a link in their inbox. No account, no seat, nothing to install — the same nothing your reviewers need today. One sign-off, three places: the reviewed doc, the pull request carrying the change, and an append-only, hash-chained record naming who signed which exact bytes.
A named approver's sign-off freezes the approved version.
Every approval leaves a receipt anyone can check.
Watermarks answer did an AI touch this? Receipts answer did a human stand behind it?
A receipt is the record TandemDoc issues when a version is approved — it names who signed off on which exact bytes, and anyone can check it offline, with no account.
Reviewers install nothing, sign up for nothing, and never see a paywall — only authors ever pay.
Free $0 — 1 live shared doc, forever · Author $25/mo — unlimited docs, the full loop · Team ⭐ $99/mo flat — ~5 authors, unlimited free reviewers
Need oversight records or compliance exports? Talk to us.