Claude-skill-registry github-wiki
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/github-wiki" ~/.claude/skills/majiayu000-claude-skill-registry-github-wiki && rm -rf "$T"
manifest:
skills/data/github-wiki/SKILL.mdsource content
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 (
) instalado e autenticadogh - 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
| Documento | Fonte | Destino Wiki | Trigger |
|---|---|---|---|
| Home | Auto-gerado | Home.md | Cada sync |
| ADRs | | ADRs/ADR-NNN.md | , Phase 7 |
| Arquitetura | | Architecture.md | Phase 3, Phase 7 |
| API Docs | | API-Reference.md | Phase 7 |
| README | | Getting-Started.md | Phase 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:
- Acesse:
https://github.com/{owner}/{repo}/wiki - Clique em "Create the first page"
- Crie uma pagina Home simples
- 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
- Comando para sincronizar manualmente/wiki-sync
- Cria ADR e opcionalmente publica/adr-create
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