libreoffice-writer
Automatiser les documents LibreOffice Writer
L'édition manuelle de documents prend du temps et est sujette aux erreurs. Cette skill automatise les opérations LibreOffice Writer via l'intégration UNO, permettant la création programmatique de documents, l'édition, la mise en forme et l'exportation.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "libreoffice-writer". Créer un nouveau document avec un titre et exporter en PDF
Résultat attendu:
- Document créé avec succès : /path/to/report.odt
- Exporté en PDF : /path/to/report.pdf
Utilisation de "libreoffice-writer". Trouver et mettre en forme du texte dans un document existant
Résultat attendu:
- Document ouvert : /path/to/draft.odt
- Plage de texte formatée : gras, centré
- Modifications enregistrées et document fermé
Utilisation de "libreoffice-writer". Appliquer un patch avec plusieurs opérations
Résultat attendu:
- Patch analysé : 3 opérations
- Opération 1 (replace_text) : succès
- Opération 2 (format_text) : succès
- Opération 3 (insert_table) : succès
- Statut global : ok
- Document persistant : true
Audit de sécurité
Risque faibleStatic analysis flagged 175 patterns but evaluation confirms these are false positives. The skill legitimately uses subprocess to launch LibreOffice with hardcoded arguments, tempfile for secure temp directories, and importlib for module detection. All external command usage has no user input injection vectors. Risk is low due to filesystem and external command dependencies requiring LibreOffice installation.
Problèmes à risque faible (3)
Facteurs de risque
⚙️ Commandes externes (1)
📁 Accès au système de fichiers (2)
🔑 Variables d’environnement (1)
⚡ Contient des scripts (2)
Score de qualité
Ce que vous pouvez construire
Génération automatisée de rapports
Générer des rapports standardisés en créant des documents, insérant du texte formaté et des tableaux, puis exportant vers PDF pour distribution.
Traitement de modèles de documents
Charger des modèles de documents, remplacer le texte des espaces réservés par du contenu dynamique, mettre à jour les tableaux avec de nouvelles données et exporter des versions personnalisées.
Opérations de documents par lots
Appliquer des modifications de formatage cohérentes sur plusieurs documents en utilisant des workflows de patch avec retour arrière atomique en cas d'échecs.
Essayez ces prompts
Create a new LibreOffice Writer document at /path/to/report.odt. Insert a title "Monthly Report", add a section heading "Summary", then insert a paragraph describing this month's achievements. Export the final document to PDF.
Open /path/to/draft.odt and find the sentence "Quarterly revenue grew significantly" that appears after "Financial Overview" and before "Next Steps". Make it bold and centered. Then insert a bulleted list after "Action Items" with three tasks: Review budget, Schedule meeting, Send updates.
Open the document at /path/to/data-report.odt. Insert a table with 4 rows and 3 columns named "Sales Data". Populate it with headers [Region, Q1, Q2] and data rows for North, South, East regions. Later update the Q2 values when new numbers arrive.
Apply this patch to /path/to/manuscript.odt in atomic mode: First, replace all instances of "Draft" with "Final". Second, format the chapter titles bold with 14pt font. Third, insert a table of contents. If any operation fails, rollback all changes and report the error.
Bonnes pratiques
- Toujours utiliser des chemins de fichiers absolus lors du travail avec les API Writer basées sur UNO
- Ancrer les cibles de texte avec des phrases complètes ou des expressions au niveau du paragraphe, pas des mots isolés
- Utiliser les limites before et after pour contraindre les recherches lorsque le texte peut apparaître plusieurs fois
- Envelopper les opérations de session dans try/finally ou des gestionnaires de contexte pour garantir un nettoyage approprié
- Tester les workflows de patch en mode best_effort avant de passer à atomique pour la production
Éviter
- Utiliser des chemins relatifs - UNO nécessite des chemins de fichiers absolus pour toutes les opérations de document
- Omettre le paramètre d'occurrence lorsque le même texte apparaît plusieurs fois dans un document
- Appeler des méthodes de session après l'invocation de session.close()
- Fournir du JSON malformé dans les éléments de patch ou les champs de données
- S'attendre à ce que l'alignement de paragraphe s'applique uniquement au texte correspondancier plutôt qu'au paragraphe entier