doc-control
Status: spec and plan approved — implementation starting. See
status/specification.mdandstatus/plan.md.
A deterministic tool that lets AI agents work on Word documents quickly, precisely and safely, ideally live in the Word window the writer has open. Every content change is a tracked change the writer can accept or reject.
For anyone — writers and editors first — who wants an AI agent's help inside a Word document without a single silent change. Nothing to install yet; watch the repo for the first release.
Planned shape
- One core, two engines, one API
- File engine: edits a closed
.docxwith the Python standard library only, rewriting only the parts it touches. - Live engine: controls the open Word (Windows/COM first, Mac later).
- File engine: edits a closed
- Two front doors: a CLI with JSON in/out, and an MCP server
(
doc-control mcp, stdio) for Claude Desktop / Cowork and other MCP clients. - Safety first: lock-file and on-disk change detection, backup before every
write, verification, automatic restore, operation log with undo, and
unintended_changes == 0as a gate. - No AI inside. Judgment belongs to the agent; approval belongs to the writer.
It will replace docx-fixer, whose rules become packs built on this tool, and
serve literary-critic as its first downstream consumer.
MCP server
doc-control mcp serves every operation as an MCP tool over stdio, one tool per
operation (para.move becomes para_move), with the same JSON Schemas and the
same response envelope as the CLI. It needs nothing beyond the package itself:
{
"mcpServers": {
"doc-control": { "command": "uvx", "args": ["doc-control", "mcp"] }
}
}
Documents
Development
This repo uses claude-arsenal
(spec-driven workflow, gated tasks in arsenal/tasks/). See CLAUDE.md.
Related projects
Same author:
- claude-arsenal — a Claude Code skill and plugin marketplace: specs before code, failing tests first, gates with numbers.
- literary-critic — lets an LLM index, analyse and advise on a full novel manuscript the way a professional editor would; doc-control's first planned consumer.
- drawspec — declarative diagram spec → clean, themeable SVG; JSON with no coordinates, so an LLM can write it.
- integral-job-search — a candidate-centred job search run as a conversation in Claude Code.
License
Metadata
Release files for doc-control 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| doc_control-0.0.1.tar.gz | 387.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| doc_control-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 633.4 kB
Release files / doc_control-0.0.1.tar.gz
| Download URL | doc_control-0.0.1.tar.gz |
|---|---|
| Size | 387.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e2218c9e000c4f124041a77ff5329b38ba1a7f707097e73a9ccb323db4fc7474
|
|
BLAKE2b-256 checksum How to use checksums |
5b3a2e984b923150b62b24e577deba12b8ef6a8696e321fc8122151417d79fa2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.
Transparency logRelease files / doc_control-0.0.1-py3-none-any.whl
| Download URL | doc_control-0.0.1-py3-none-any.whl |
|---|---|
| Size | 246.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7bb2009644d23e5e0976c3e0641e511e0fc0c8c3abea889d3461f07c5f036fa6
|
|
BLAKE2b-256 checksum How to use checksums |
00dc5385a333d69eab4a257b72c32b0bba2d445d2798a6a548b5a73bc0a90574
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.
Transparency log