Habilidades libreoffice-calc
📊

libreoffice-calc

Riesgo bajo ⚙️ Comandos externos📁 Acceso al sistema de archivos🔑 Variables de entorno

Automatiza hojas de cálculo de LibreOffice Calc con UNO

La edición manual de hojas de cálculo es tediosa y propensa a errores. Esta habilidad automatiza operaciones de Calc de forma programática mediante la API UNO para procesamiento por lotes confiable.

Soporta: Claude Codex Code(CC)
🥉 73 Bronce
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "libreoffice-calc". Crear hoja de cálculo, agregar datos al rango A0:B2, exportar a PDF

Resultado esperado:

  • Hoja de cálculo creada en /reports/output.ods
  • Datos escritos en el rango Sheet1.A0:B2 (3 celdas)
  • Exportado a PDF: /reports/output.pdf (127 KB)

Usando "libreoffice-calc". Leer celda B5 desde /data/sales.ods

Resultado esperado:

  • Celda Sheet1.B5:
  • Valor: 4250.00
  • Tipo: número
  • Fórmula: None

Usando "libreoffice-calc". Crear gráfico de barras desde A0:C10, anclar en fila 12

Resultado esperado:

  • Gráfico 'Sales Overview' creado en Sheet1
  • Rango de datos: A0:C10 (11 filas, 3 columnas)
  • Posición: Fila 12, Columna 0
  • Dimensiones: 8000 x 6000 unidades

Auditoría de seguridad

Riesgo bajo
v2 • 3/19/2026

Static analysis flagged 197 patterns across 13 files. After evaluation, all high-severity findings are false positives: cryptographic warnings misidentified UNO connection code, 'system reconnaissance' flagged exception class definitions, and 'dynamic imports' were standard Python import statements. Shell command patterns exist only in markdown documentation. The single confirmed external command (subprocess.Popen launching LibreOffice) uses hardcoded arguments with no user input injection risk. Temp file usage follows Python best practices with proper cleanup. Skill is safe for publication with minor documentation recommended.

13
Archivos escaneados
2,642
Líneas analizadas
5
hallazgos
2
Auditorías totales
Problemas de riesgo bajo (2)
Subprocess Launch of External Application
LibreOffice soffice binary launched via subprocess.Popen. Arguments are hardcoded with no user input injection vectors. Process is properly terminated and temp directories cleaned up in finally block.
Temporary Directory Creation
Creates temporary directories for LibreOffice profile isolation using tempfile.mkdtemp. Directories are cleaned up in finally block with shutil.rmtree.

Factores de riesgo

⚙️ Comandos externos (1)
📁 Acceso al sistema de archivos (2)
🔑 Variables de entorno (1)

Puntuación de calidad

64
Arquitectura
100
Mantenibilidad
87
Contenido
23
Comunidad
86
Seguridad
83
Cumplimiento de la especificación

Lo que puedes crear

Informes Financieros Automatizados

Genere informes de ingresos mensuales completando plantillas con datos, aplicando formato de moneda y creando gráficos de tendencias para presentaciones a las partes interesadas.

Exportación y Transformación Masiva de Datos

Extraiga datos de bases de datos o APIs hacia hojas de cálculo estructuradas, aplique reglas de validación y exporte a múltiples formatos para distribución.

Generación de Documentos Basada en Plantillas

Complete plantillas de hojas de cálculo pre-diseñadas con datos dinámicos para facturas, hojas de tiempo o informes de inventario con formato consistente.

Prueba estos prompts

Crear una Hoja de Cálculo Básica
Cree una nueva hoja de cálculo Calc en /reports/monthly-data.ods con una hoja llamada 'Data'. Agregue encabezados 'Name', 'Value', 'Date' en la fila 0, luego complete con 5 filas de ejemplo. Aplique formato de negrita a la fila de encabezado y formato de moneda a la columna Value.
Exportar Hoja de Cálculo a Múltiples Formatos
Abra /reports/monthly-data.ods y expórtelo a tres formatos: PDF en /exports/monthly-data.pdf, Excel en /exports/monthly-data.xlsx, y CSV en /exports/monthly-data.csv. Verifique que todas las exportaciones se completen exitosamente.
Crear Gráfico con Validación de Datos
En /reports/sales.ods, cree un gráfico de líneas titulado 'Monthly Sales' usando datos del rango A0:B12 de Sheet1. Ankle el gráfico en la fila 15, columna 0 con ancho 8000 y alto 6000. Luego agregue validación de datos a la columna B requiriendo valores entre 0 y 10000 con mensaje de error 'Enter sales between 0 and 10000'.
Aplicar Parche para Actualizar Informe Existente
Aplique este parche a /reports/quarterly.ods en modo atómico: Actualice celdas en el rango A0:D4 con nuevos datos trimestrales, formatee la fila de encabezado con negrita y color de fondo, cree un gráfico circular mostrando la distribución de categorías, y recalcule todas las fórmulas. Si alguna operación falla, revierta todos los cambios.

Mejores prácticas

  • Use siempre rutas de archivo absolutas cuando trabaje con APIs de Calc para evitar errores de resolución
  • Cierre sesiones correctamente usando gestores de contexto o llamadas close() explícitas para liberar recursos de LibreOffice
  • Use modo de parche atómico para operaciones relacionadas que deben tener éxito o fallar juntas
  • Valide tipos de datos antes de escribir en celdas para prevenir problemas de conversión de tipos

Evitar

  • Usar coordenadas de base uno como en la UI de Calc - la API usa indexación de base cero
  • Mezclar objetivos de celda y rango - son tipos distintos incluso para celdas individuales
  • Llamar métodos de sesión después de close() - siempre verifique el estado de la sesión antes de operaciones
  • Asumir que los nombres de gráficos se generan automáticamente - siempre especifique títulos explícitos para apuntado confiable

Preguntas frecuentes

¿Necesito LibreOffice instalado para usar esta habilidad?
Sí, LibreOffice debe estar instalado en el sistema con enlaces Python UNO. La habilidad auto-detecta rutas de instalación comunes o puede establecer la variable de entorno LIBREOFFICE_PROGRAM_PATH.
¿Puede esta habilidad modificar archivos Excel (.xlsx)?
LibreOffice Calc puede abrir y guardar archivos .xlsx, pero el formato primario es .ods. La exportación a .xlsx está soportada. Para mejor compatibilidad, trabaje en formato .ods y exporte cuando sea necesario.
¿Cómo manejo fórmulas en celdas?
Establezca value_type='formula' cuando escriba celdas y proporcione la cadena de fórmula (ej. '=SUM(A1:A10)'). Los resultados de fórmulas se devuelven al leer celdas, junto con el texto de la fórmula y cualquier estado de error.
¿Qué sucede si LibreOffice falla durante las operaciones?
La habilidad usa directorios de perfil aislados para cada sesión. Si ocurre un fallo, limpie directorios temporales manualmente desde /tmp/libreoffice-skills-* y reinicie. El modo de parche atómico ayuda a prevenir actualizaciones parciales.
¿Puedo ejecutar múltiples sesiones de Calc simultáneamente?
Sí, cada sesión usa un nombre de tubería único y directorio de perfil aislado. Sin embargo, ejecutar muchas sesiones concurrentes puede impactar los recursos del sistema.
¿Por qué mis coordenadas están desviadas en uno?
La API usa indexación de base cero mientras que la UI de Calc muestra números de fila/columna de base uno. La Fila 0 en la API equivale a la Fila 1 en Calc. Ajuste sus coordenadas en consecuencia.

Detalles del desarrollador

Estructura de archivos