Skill docx: el agente redacta y corrige documentos de Word
Por dentro, un .docx es un ZIP lleno de XML, y tocarlo sin cuidado rompe el formato. La skill docx separa los casos: los documentos nuevos salen de un script con el paquete docx de npm, los existentes se descomprimen y se editan en word/document.xml, y cada resultado se convierte en imágenes de página para revisarlo a simple vista.
Genera documentos nuevos con docx-js evitando sus trampas: A4 por defecto, doble ancho en las tablas y sombreado solo con ShadingType.CLEAR.
Edita el archivo original sin rehacerlo: lo descomprime, fusiona fragmentos de texto con merge_runs.py y lo vuelve a empaquetar.
Marca revisiones con w:ins y w:del; validate.py con --author detecta cualquier cambio hecho fuera del control de cambios.
Inserta comentarios y respuestas con comment.py, que escribe por sí solo los seis archivos internos enlazados que hacen falta.
Comprueba el resultado pasándolo a PDF con LibreOffice y a JPEG con pdftoppm, y después mira cada página.
Cuándo usarla
El abogado de la otra parte devolvió un contrato y cada corrección tuya debe verse en el control de cambios.
Necesitas un informe o un memorando en Word con índice, números de página y tablas que se vean bien también en Google Docs.
Hay que pasar un antiguo .doc a .docx antes de cambiar el membrete o sustituir imágenes.
Pídale al agente
Aplica a contrato.docx los cambios de este correo con control de cambios a nombre de «Legal»
Prepara un informe Word en A4 con índice, numeración de páginas y una tabla de presupuesto
Añade en oferta.docx un comentario a la cláusula de penalizaciones: «el tope es bajo»
Preguntas
¿Cómo se añade la skill docx al agente?
Con npx skills add anthropics/skills@docx. En Claude Code viene además en el plugin document-skills del marketplace anthropics/skills.
¿La skill docx abre archivos .doc antiguos?
Sí, tras convertirlos: ejecuta scripts/office/soffice.py con --convert-to docx a través de LibreOffice y luego edita.
¿Cómo obtiene la skill docx una copia limpia tras las revisiones?
scripts/accept_changes.py acepta todos los cambios y guarda una copia limpia. Si aparece una viñeta vacía, es un efecto de esa vista; la skill pide revisar en el XML los párrafos borrados.