doc

Utilise cette option lorsque la tâche implique de lire, créer ou modifier des documents `.docx`, en particulier lorsque la fidélité du formatage ou de la mise en page est importante ; privilégie `python-docx` plus le `scripts/render_docx.py` fourni pour les vérifications visuelles.

npx skills add https://github.com/openai/skills --skill doc

Compétence DOCX

Quand l'utiliser

  • Lire ou examiner le contenu DOCX où la mise en page est importante (tableaux, diagrammes, pagination).
  • Créer ou éditer des fichiers DOCX avec une mise en forme professionnelle.
  • Valider la mise en page visuelle avant la livraison.

Flux de travail

  1. Préférer l'examen visuel (mise en page, tableaux, diagrammes).
    • Si soffice et pdftoppm sont disponibles, convertir DOCX -> PDF -> PNGs.
    • Ou utiliser scripts/render_docx.py (nécessite pdf2image et Poppler).
    • Si ces outils manquent, les installer ou demander à l'utilisateur d'examiner les pages rendues localement.
  2. Utiliser python-docx pour les éditions et la création structurée (titres, styles, tableaux, listes).
  3. Après chaque modification significative, re-rendre et inspecter les pages.
  4. Si l'examen visuel n'est pas possible, extraire le texte avec python-docx en secours et signaler le risque de mise en page.
  5. Maintenir les sorties intermédiaires organisées et nettoyer après approbation finale.

Conventions temp et output

  • Utiliser tmp/docs/ pour les fichiers intermédiaires ; supprimer une fois terminé.
  • Écrire les artefacts finaux sous output/doc/ quand on travaille dans ce dépôt.
  • Conserver les noms de fichiers stables et descriptifs.

Dépendances (installer si manquantes)

Préférer uv pour la gestion des dépendances.

Paquets Python :

uv pip install python-docx pdf2image

Si uv n'est pas disponible :

python3 -m pip install python-docx pdf2image

Outils système (pour la génération) :

# macOS (Homebrew)
brew install libreoffice poppler

# Ubuntu/Debian
sudo apt-get install -y libreoffice poppler-utils

Si l'installation n'est pas possible dans cet environnement, indiquer à l'utilisateur quelle dépendance manque et comment l'installer localement.

Environnement

Aucune variable d'environnement requise.

Commandes de rendu

DOCX -> PDF :

soffice -env:UserInstallation=file:///tmp/lo_profile_$$ --headless --convert-to pdf --outdir $OUTDIR $INPUT_DOCX

PDF -> PNGs :

pdftoppm -png $OUTDIR/$BASENAME.pdf $OUTDIR/$BASENAME

Assistant helper groupé :

python3 scripts/render_docx.py /path/to/file.docx --output_dir /tmp/docx_pages

Attentes de qualité

  • Livrer un document prêt pour le client : typographie cohérente, espacement, marges et hiérarchie claire.
  • Éviter les défauts de mise en forme : texte coupé/superposé, tableaux cassés, caractères illisibles ou style de modèle par défaut.
  • Les graphiques, tableaux et visuels doivent être lisibles dans les pages rendues avec un alignement correct.
  • Utiliser uniquement des tirets ASCII. Éviter U+2011 (tiret insécable) et autres tirets Unicode.
  • Les citations et références doivent être lisibles par l'homme ; ne jamais laisser de jetons d'outils ou de chaînes d'espace réservé.

Vérifications finales

  • Re-rendre et inspecter chaque page à 100 % de zoom avant la livraison finale.
  • Corriger tout problème d'espacement, d'alignement ou de pagination et répéter la boucle de rendu.
  • Confirmer qu'il n'y a pas de restes (fichiers temp, rendus en double) sauf si l'utilisateur demande à les conserver.