Skip to content
github-wiki logo

github-wiki

Sincroniza documentacao com GitHub Wiki via Git. Publica ADRs, docs de arquitetura e API automaticamente. Use quando: publicar ADR, sincronizar docs apos release.

SKILL.md

Full skill instructions

GitHub Wiki Skill

Skill para sincronizacao de documentacao com GitHub Wiki.

Objetivo

Automatizar publicacao de documentacao do projeto na GitHub Wiki, incluindo ADRs, documentos de arquitetura e API.

Realidade Tecnica

GitHub Wiki nao tem API REST/​GraphQL. Funciona como repositorio Git separado:

  • URL: https://github.com/{owner}/{repo}.wiki.git
  • Arquivos Markdown sao convertidos em paginas
  • Estrutura de diretorios cria hierarquia

Pre-requisitos

  • GitHub CLI (gh) instalado e autenticado
  • Permissao de escrita no repositorio
  • Wiki habilitada no repositorio (Settings > Features > Wikis)
  • IMPORTANTE: Wiki deve ter pelo menos uma pagina criada manualmente (Home)

Scripts Disponiveis

wiki_sync.sh

Sincroniza documentacao completa com a Wiki.

# Sincronizacao completa
.claude/​skills/​github-wiki/​scripts/​wiki_sync.sh

# Sincronizacao com verbose
.claude/​skills/​github-wiki/​scripts/​wiki_sync.sh --verbose

# Dry run (mostra o que seria feito)
.claude/​skills/​github-wiki/​scripts/​wiki_sync.sh --dry-run

publish_adr.sh

Publica um ADR especifico na Wiki.

# Publicar ADR especifico
.claude/​skills/​github-wiki/​scripts/​publish_adr.sh .agentic_sdlc/​corpus/​nodes/​decisions/​adr-001.yml

# Publicar todos os ADRs
.claude/​skills/​github-wiki/​scripts/​publish_adr.sh --all

Documentos Publicados

DocumentoFonteDestino WikiTrigger
HomeAuto-geradoHome.mdCada sync
ADRs.agentic_sdlc/​corpus/​nodes/​decisions/​*.ymlADRs/​ADR-NNN.md/​adr-create, Phase 7
Arquitetura.agentic_sdlc/​projects/​*/​docs/​ARCHITECTURE.mdArchitecture.mdPhase 3, Phase 7
API Docs.agentic_sdlc/​projects/​*/​docs/​API.mdAPI-Reference.mdPhase 7
README.agentic_sdlc/​projects/​*/​docs/​README.mdGetting-Started.mdPhase 7

Estrutura da Wiki

wiki/
├── Home.md                    # Pagina inicial com indice
├── Getting-Started.md         # README do projeto
├── Architecture.md            # Visao geral da arquitetura
├── API-Reference.md           # Documentacao da API
├── ADRs/
│   ├── _Sidebar.md           # Sidebar com lista de ADRs
│   ├── ADR-001.md            # ADR individual
│   ├── ADR-002.md
│   └── ...
└── _Sidebar.md               # Sidebar global

Template Home.md

# {Project Name}

Documentacao do projeto gerada automaticamente pelo SDLC Agentico.

## Navegacao

- [Getting Started](Getting-Started)
- [Architecture](Architecture)
- [API Reference](API-Reference)
- [ADRs](ADRs)

## Projeto

- **Status**: {status}
- **Fase Atual**: {phase}
- **Ultima Atualizacao**: {timestamp}

---
*Sincronizado automaticamente pelo SDLC Agentico*

Workflow de Sincronizacao

1. Clone wiki repo para /​tmp/​wiki-$$
2. Limpa arquivos gerenciados pelo SDLC
3. Copia documentos de .agentic_sdlc/
4. Converte ADRs YAML para Markdown
5. Gera Home.md com indice
6. Gera _Sidebar.md
7. Commit e push
8. Cleanup diretorio temporario

Integracao SDLC

Ao criar ADR (qualquer fase)

# Hook PostToolUse para adr-create
.claude/​skills/​github-wiki/​scripts/​publish_adr.sh $ADR_PATH

Ao aprovar gate de release (Phase 7)

# Sincronizacao completa
.claude/​skills/​github-wiki/​scripts/​wiki_sync.sh

Inicializacao Manual

Antes de usar a Wiki, ela precisa ser inicializada:

  1. Acesse: https://github.com/{owner}/{repo}/wiki
  2. Clique em "Create the first page"
  3. Crie uma pagina Home simples
  4. Salve

Apos isso, os scripts podem gerenciar automaticamente.

Verificar se Wiki esta habilitada

# Tentar clonar wiki
git clone https://github.com/owner/repo.wiki.git /​tmp/​test-wiki

# Se falhar com "repository not found":
# - Wiki nao esta habilitada, ou
# - Wiki nao foi inicializada (sem paginas)

Comandos Relacionados

  • /​wiki-sync - Comando para sincronizar manualmente
  • /​adr-create - Cria ADR e opcionalmente publica

Limitacoes

  • Wiki deve ser inicializada manualmente (pelo menos Home)
  • Sem API, apenas operacoes Git
  • Conflitos podem ocorrer se wiki for editada manualmente
  • Historico de versoes via Git, nao via UI