Skip to content

v0.1.0 — first public release

Choose a tag to compare

@tamimbinhakim tamimbinhakim released this 11 Jun 17:54
· 10 commits to main since this release

First public release of DocxEngine — surgical, fidelity-preserving DOCX editing for AI agents.

One deterministic OOXML core (unzip → patch XML → rezip, no LLM inside), exposed through three thin faces: an MCP server, a Python package (docxengine), and a JS/TS package (@docxengine/core). Agents see a token-efficient, Markdown-like projection with content-hash-anchored paragraph IDs — never raw XML.

Highlights

  • All 24 tools live in both engines: read/search/edit/redlines, tables, styles, lists, sections, threaded comments, media, fields/TOC, mustache templates, Markdown↔docx conversion, and a pluggable render adapter.
  • File-first MCP server — every tool takes a file path; each call opens, runs, validates, and atomically saves back. No doc_id to track, no separate save step. DOCXENGINE_ROOT sandboxes paths. stdio + Streamable HTTP transports.
  • Full-coverage native Document API in both languages — one typed method per tool, create/fill_template/attach constructors, to_bytes(), anchor-scoped Paragraph primitives, and a storage-agnostic export_bytes/exportBytes helper for browser/serverless hosts.
  • Real redlines — first-class tracked-change writing plus accept/reject filtered by author or date.
  • Always-on validation gate — ID uniqueness, orphaned relationships, dangling footnotes, and content-type errors caught before save, with auto-repair where safe.
  • One conformance-tested contract — 455 Python tests, 342 TS tests, 31/31 cross-implementation parity cases, and a 10-task agent benchmark passing end-to-end over MCP with zero tool errors and zero Word-repair events.

Install

Not yet on PyPI/npm — install from source:

```bash
git clone https://github.com/ruwadgroup/docxengine.git && cd docxengine
pip install -e python # Python + the docxengine-mcp entry point
pnpm install && pnpm --dir js build # JS/TS
```

See the Quickstart and full CHANGELOG.