safe-docx
Safe DOCX Suite
English | Español | 简体中文 | Português (Brasil) | Deutsch
safe-docx por UseJunior — utiliza agentes de programación también para el papeleo.
Parte de las herramientas para desarrolladores de UseJunior.
Safe Docx es una pila de TypeScript de código abierto para la edición quirúrgica de archivos .docx de Microsoft Word existentes. Está diseñada para flujos de trabajo donde un agente propone cambios y un humano aún necesita ediciones de documentos fiables que preserven el formato.
Si revisas contratos con IA, el paso más lento suele ser aplicar las recomendaciones aceptadas en Word. Safe Docx convierte eso en llamadas a herramientas deterministas.
Por qué existe esto
Las CLI de programación con IA son excelentes con archivos de código y texto, pero débiles en la edición de archivos .docx existentes. Los flujos de trabajo empresariales y legales todavía se ejecutan en documentos de Word, por lo que creamos una ruta nativa de TypeScript para:
leer y buscar en documentos existentes en formatos eficientes en tokens
realizar ediciones quirúrgicas sin destruir el formato
producir resultados limpios/con seguimiento y artefactos de extracción de revisiones
Misión: permitir que los agentes de programación también hagan papeleo. Safe Docx se centra en ediciones deterministas a archivos de Word existentes donde la semántica de formato y revisión debe sobrevivir a la automatización.
Posicionamiento
Safe Docx está optimizado para flujos de trabajo de agentes que necesitan ediciones deterministas y locales en archivos .docx existentes:
herramientas MCP tipadas para edición, comparación, extracción de revisiones, comentarios, notas al pie y diseño
comportamiento auditable con evidencia de pruebas y artefactos de trazabilidad
distribución en tiempo de ejecución de TypeScript sin requerir Python o LibreOffice para el uso admitido
Safe Docx no pretende reemplazar las bibliotecas de generación de .docx desde cero.
Con la confianza de
Firma top-10 de Am Law — canalización de traducción de contratos de varios pasos
Firma regional de 150 abogados — más de 22 millones de tokens de marcado de contratos procesados
Gemini CLI — extensión MCP de edición de Word compatible
Empieza aquí
npx -y @usejunior/safe-docxPara obtener una configuración detallada y una referencia de herramientas, consulta packages/docx-mcp/README.md.
Ejemplo: Agente editando un contrato
Cuando le pides a un agente de programación (Claude Code, Cursor, Gemini CLI) con Safe Docx instalado, el agente realiza llamadas a herramientas MCP como estas:
User: Edit the NDA at ~/docs/NDA.docx — change the governing law
from "State of New York" to "State of Delaware" and save both
a clean copy and a tracked-changes copy.
Agent calls:
1. read_file(file_path="~/docs/NDA.docx", format="toon")
→ Returns paragraphs with stable IDs: _bk_1, _bk_2, ...
2. grep(file_path="~/docs/NDA.docx", pattern="State of New York")
→ Match in paragraph _bk_47
3. replace_text(
file_path="~/docs/NDA.docx",
target_paragraph_id="_bk_47",
old_string="State of New York",
new_string="State of Delaware",
instruction="Change governing law to Delaware"
)
4. save(
file_path="~/docs/NDA.docx",
save_to_local_path="~/docs/NDA-clean.docx",
tracked_save_to_local_path="~/docs/NDA-tracked.docx",
save_format="both"
)El agente maneja las llamadas a las herramientas automáticamente. Obtienes un archivo limpio y un archivo con cambios rastreados para revisión humana.
Inicio rápido de MCP
Claude Code
claude mcp add safe-docx -- npx -y @usejunior/safe-docxClaude Desktop
Añádelo a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"safe-docx": {
"command": "npx",
"args": ["-y", "@usejunior/safe-docx"]
}
}
}Gemini CLI
{
"mcpServers": {
"safe-docx": {
"command": "npx",
"args": ["-y", "@usejunior/safe-docx"]
}
}
}Cualquier cliente MCP
Comando:
npxArgumentos:
["-y", "@usejunior/safe-docx"]Transporte: stdio
Para qué está optimizado Safe Docx
Edición de archivos
.docxexistentesReemplazo de texto y inserción de párrafos preservando el formato
Flujos de trabajo de comentarios y notas al pie
Resultados con cambios rastreados para revisión (
download,compare_documents)Extracción de revisiones como JSON estructurado (
extract_revisions)
Para qué NO está optimizado Safe Docx
Safe Docx no es un kit de herramientas de generación de documentos desde cero.
Si tu necesidad principal es generar nuevos archivos .docx a partir de plantillas o diseño programático, utiliza paquetes como docx.
Familias de documentos
Cobertura de accesorios automatizados en este repositorio
Accesorios de NDA mutuo estilo Common Paper
Accesorio de NDA mutuo Bonterms
Accesorio de carta de intención
Accesorios de redline de acuerdo de sociedad limitada ILPA
Diseñado para clases de .docx legales y comerciales complejas
Formularios de financiación NVCA
YC SAFEs
Memorandos de oferta
Formularios de pedido y acuerdos de servicios
Acuerdos de sociedad limitada
Paquetes
@usejunior/docx-core: primitivas + motor de comparación para documentos.docxexistentes@usejunior/docx-mcp: implementación del servidor MCP y superficie de herramientas@usejunior/safe-docx: nombre de instalación canónico para el usuario final (npx -y @usejunior/safe-docx)@usejunior/safedocx-mcpb: contenedor de paquete MCP privado
Superficie de fiabilidad y confianza
Los esquemas de herramientas se generan a partir de
packages/docx-mcp/src/tool_catalog.ts.Matriz de trazabilidad OpenSpec:
packages/docx-mcp/src/testing/SAFE_DOCX_OPENSPEC_TRACEABILITY.mdMatriz de supuestos:
packages/docx-mcp/assumptions.mdGuía de conformidad:
docs/safe-docx/sprint-3-conformance.md
Preguntas frecuentes
¿Qué es Safe Docx?
Una pila de edición DOCX centrada en TypeScript para flujos de trabajo de agentes de programación que necesitan ediciones deterministas y que preserven el formato en documentos de Word existentes.
¿Esto preserva el formato durante las ediciones?
Ese es un objetivo de diseño fundamental. La superficie de la herramienta se basa en operaciones quirúrgicas (replace_text, insert_paragraph, controles de diseño) que preservan la estructura del documento y la semántica de formato tanto como sea posible.
¿Esto requiere .NET, Python o LibreOffice en el uso normal en tiempo de ejecución?
No. El uso admitido en tiempo de ejecución es JavaScript/TypeScript con jszip + @xmldom/xmldom.
¿Puede esto generar contratos desde cero?
No es el enfoque principal. Para la generación desde cero, utiliza paquetes como docx.
¿En qué tipos de documentos se ha probado esto en los accesorios del repositorio?
NDAs mutuos (incluidos los accesorios estilo Common Paper/Bonterms), carta de intención y accesorios de redline de acuerdo de sociedad limitada ILPA.
¿Es esto solo para abogados?
No. Los mismos problemas de edición de archivos .docx existentes aparecen en RR. HH., adquisiciones, finanzas, operaciones de ventas y otros flujos de trabajo con mucho papeleo.
¿Por dónde debería empezar como usuario de MCP?
Usa @usejunior/safe-docx a través de npx, luego sigue los ejemplos de configuración en packages/docx-mcp/README.md.
¿Dónde puedo inspeccionar los esquemas de herramientas?
Consulta la referencia generada en packages/docx-mcp/docs/tool-reference.generated.md.
Desarrollo
npm ci
npm run build
npm run lint --workspaces --if-present
npm run test:run
npm run check:spec-coverage
npm run test:coverage:packages
npm run coverage:packages:check
npm run coverage:matrixVer también
Open Agreements — completa plantillas legales estándar con agentes de programación (NDAs, SAFEs, NVCA)
Herramientas para desarrolladores de UseJunior — página del producto con opciones de instalación y catálogo de herramientas
Privacidad
Safe Docx se ejecuta completamente en tu máquina local. No se envía contenido de documentos a servidores externos. Consulta nuestra Política de privacidad para obtener más detalles.
Gobernanza
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/UseJunior/safe-docx'
If you have feedback or need assistance with the MCP directory API, please join our Discord server