| name | convert-md-to-odt |
| description | Converte relatórios Markdown para ODT com diagramas Mermaid renderizados |
Skill: /convert-md-to-odt
Converte relatórios técnicos Markdown (.md) para ODT (.odt) com renderização de diagramas Mermaid em imagens PNG.
Instruções de Execução
Quando este skill for invocado:
-
Se receber --all: Execute python scripts/convert_md_to_odt.py --all para converter todos os relatórios
-
Se receber nome de arquivo: Execute python scripts/convert_md_to_odt.py docs/docs/relatorios/{arquivo.md}
-
Se NÃO receber argumentos:
- Use Glob para listar arquivos .md em
docs/relatorios/*.md
- Mostre a lista formatada ao usuário com índices numerados
- Use AskUserQuestion para perguntar qual arquivo converter (incluir opção "Todos")
- Execute o script com o arquivo escolhido ou com --all
Comportamento
- Com arquivo:
/convert-md-to-odt Relatório-26-03-24.md → converte o arquivo especificado
- Com --all:
/convert-md-to-odt --all → converte todos os .md em docs/docs/relatorios/
- Sem argumentos:
/convert-md-to-odt → lista arquivos disponíveis e pergunta ao usuário qual converter
Uso
/convert-md-to-odt Relatório-Técnico-DestaquesGovbr-Requisitos-Ingestão-26-03-24.md
/convert-md-to-odt --all
/convert-md-to-odt
Dependências
Sistema (obrigatório)
-
pandoc - Conversor universal de documentos
brew install pandoc
apt install pandoc
choco install pandoc
-
mermaid-cli - Renderizador de diagramas Mermaid
npm install -g @mermaid-js/mermaid-cli
Python (obrigatório)
Outputs
Os arquivos gerados ficam em:
docs/docs/relatorios/output/*.odt - Arquivos ODT prontos para LibreOffice
docs/docs/relatorios/output/imgs/*.png - Diagramas Mermaid renderizados (cache)
Como Funciona
- Extrai diagramas Mermaid dos blocos
```mermaid...```
- Renderiza para PNG usando mermaid-cli (mmdc)
- Substitui no Markdown os blocos por

- Converte MD → ODT usando Pandoc via pypandoc
- Embarca imagens no ODT final
Troubleshooting
Erro: "mmdc not found"
npm install -g @mermaid-js/mermaid-cli
mmdc --version
Erro: "pandoc not found"
brew install pandoc
apt install pandoc
choco install pandoc
pandoc --version
Erro: "pypandoc não está instalado"
pip install pypandoc
poetry add pypandoc
Erro de renderização Mermaid
- Verifique sintaxe do diagrama no Mermaid Live Editor
- Diagramas muito complexos podem ter timeout (30s)
- Se persistir, o script cria um placeholder e continua
Limpar cache de diagramas
rm -rf docs/docs/relatorios/output/imgs/
Limitações Conhecidas
- Diagramas complexos: Gantt ou flowcharts muito grandes podem ter timeout (30s)
- Tabelas largas: Podem ficar apertadas em páginas A4 (Pandoc faz wrap automático)
- Links relativos: Links para outros .md podem quebrar no ODT (Pandoc converte para referências quando possível)
Links