Habilidades libreoffice-calc
📊

libreoffice-calc

Baixo Risco ⚙️ Comandos externos📁 Acesso ao sistema de arquivos🔑 Variáveis de ambiente

Automatizar planilhas do LibreOffice Calc com UNO

A edição manual de planilhas é tediosa e propensa a erros. Esta skill automatiza operações do Calc programaticamente através da API UNO para processamento confiável em lote.

Suporta: Claude Codex Code(CC)
🥉 73 Bronze
1

Baixar o ZIP da skill

2

Upload no Claude

Vá em Configurações → Capacidades → Skills → Upload skill

3

Ative e comece a usar

Testar

A utilizar "libreoffice-calc". Criar planilha, adicionar dados ao intervalo A0:B2, exportar para PDF

Resultado esperado:

  • Spreadsheet created at /reports/output.ods
  • Data written to range Sheet1.A0:B2 (3 cells)
  • Exported to PDF: /reports/output.pdf (127 KB)

A utilizar "libreoffice-calc". Ler célula B5 de /data/sales.ods

Resultado esperado:

  • Cell Sheet1.B5:
  • Value: 4250.00
  • Type: number
  • Formula: None

A utilizar "libreoffice-calc". Criar gráfico de barras de A0:C10, ancorar na linha 12

Resultado esperado:

  • Chart 'Sales Overview' created on Sheet1
  • Data range: A0:C10 (11 rows, 3 columns)
  • Position: Row 12, Column 0
  • Dimensions: 8000 x 6000 units

Auditoria de Segurança

Baixo Risco
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
Arquivos analisados
2,642
Linhas analisadas
5
achados
2
Total de auditorias
Problemas de Baixo Risco (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.

Fatores de risco

⚙️ Comandos externos (1)
📁 Acesso ao sistema de arquivos (2)
🔑 Variáveis de ambiente (1)
Auditado por: claude Ver Histórico de Auditoria →

Pontuação de qualidade

64
Arquitetura
100
Manutenibilidade
87
Conteúdo
24
Comunidade
86
Segurança
83
Conformidade com especificações

O Que Você Pode Construir

Relatórios Financeiros Automatizados

Gerar relatórios mensais de receita populando modelos com dados, aplicando formatação de moeda e criando gráficos de tendências para apresentações a stakeholders.

Exportação e Transformação de Dados em Massa

Extrair dados de bancos de dados ou APIs para planilhas estruturadas, aplicar regras de validação e exportar para múltiplos formatos para distribuição.

Geração de Documentos Baseada em Modelos

Preencher modelos de planilhas pré-projetados com dados dinâmicos para faturas, planilhas de horas ou relatórios de inventário com formatação consistente.

Tente Estes Prompts

Criar uma Planilha Básica
Create a new Calc spreadsheet at /reports/monthly-data.ods with a sheet named 'Data'. Add headers 'Name', 'Value', 'Date' in row 0, then populate with 5 sample rows. Apply bold formatting to the header row and currency format to the Value column.
Exportar Planilha para Múltiplos Formatos
Open /reports/monthly-data.ods and export it to three formats: PDF at /exports/monthly-data.pdf, Excel at /exports/monthly-data.xlsx, and CSV at /exports/monthly-data.csv. Verify all exports complete successfully.
Criar Gráfico com Validação de Dados
In /reports/sales.ods, create a line chart titled 'Monthly Sales' using data from Sheet1 range A0:B12. Anchor the chart at row 15, column 0 with width 8000 and height 6000. Then add data validation to column B requiring values between 0 and 10000 with error message 'Enter sales between 0 and 10000'.
Aplicar Patch para Atualizar Relatório Existente
Apply this patch to /reports/quarterly.ods in atomic mode: Update cells in range A0:D4 with new quarterly data, format the header row with bold and background color, create a pie chart showing category distribution, and recalculate all formulas. If any operation fails, roll back all changes.

Melhores Práticas

  • Sempre use caminhos de arquivo absolutos ao trabalhar com APIs do Calc para evitar erros de resolução
  • Feche as sessões corretamente usando gerenciadores de contexto ou chamadas close() explícitas para liberar recursos do LibreOffice
  • Use o modo de patch atômico para operações relacionadas que devem ter sucesso ou falha juntas
  • Valide tipos de dados antes de escrever em células para prevenir problemas de conversão de tipo

Evitar

  • Usar coordenadas baseadas em um como na UI do Calc - a API usa indexação baseada em zero
  • Misturar alvos de célula e intervalo - são tipos distintos mesmo para células únicas
  • Chamar métodos de sessão após close() - sempre verifique o estado da sessão antes de operações
  • Assumir que nomes de gráficos são gerados automaticamente - sempre especifique títulos explícitos para direcionamento confiável

Perguntas Frequentes

Preciso ter o LibreOffice instalado para usar esta skill?
Sim, o LibreOffice deve estar instalado no sistema com os bindings Python UNO. A skill detecta automaticamente caminhos de instalação comuns ou você pode definir a variável de ambiente LIBREOFFICE_PROGRAM_PATH.
Esta skill pode modificar arquivos Excel (.xlsx)?
O LibreOffice Calc pode abrir e salvar arquivos .xlsx, mas o formato principal é .ods. A exportação para .xlsx é suportada. Para melhor compatibilidade, trabalhe em formato .ods e exporte quando necessário.
Como lidar com fórmulas em células?
Defina value_type='formula' ao escrever células e forneça a string da fórmula (ex: '=SUM(A1:A10)'). Resultados de fórmulas são retornados ao ler células, junto com o texto da fórmula e qualquer estado de erro.
O que acontece se o LibreOffice travar durante operações?
A skill usa diretórios de perfil isolados para cada sessão. Se uma falha ocorrer, limpe os diretórios temp manualmente de /tmp/libreoffice-skills-* e reinicie. O modo de patch atômico ajuda a prevenir atualizações parciais.
Posso executar múltiplas sessões do Calc simultaneamente?
Sim, cada sessão usa um nome de pipe único e diretório de perfil isolado. No entanto, executar muitas sessões concorrentes pode impactar os recursos do sistema.
Por que minhas coordenadas estão com diferença de um?
A API usa indexação baseada em zero enquanto a UI do Calc mostra números de linha/coluna baseados em um. Linha 0 na API é igual a Linha 1 no Calc. Ajuste suas coordenadas de acordo.

Detalhes do Desenvolvedor

Estrutura de arquivos