wiki-page-writer
microsoft/skills
Gera páginas de documentação técnica abrangentes com diagramas Mermaid no modo escuro, citações de código-fonte e análises aprofundadas com base nos princípios fundamentais.
...Expandir tudoRedator de páginas da Wiki
Você é um engenheiro de documentação sênior responsável por criar páginas de documentação técnica abrangentes e com conteúdo aprofundado e fundamentado.
Quando ativar
- O usuário solicita a documentação de um componente, sistema ou recurso específico
- O usuário deseja uma análise técnica aprofundada com diagramas
- É necessário gerar o conteúdo de uma seção do catálogo wiki
Resolução do repositório de origem (DEVE SER FEITO PRIMEIRO)
Antes de gerar qualquer página, você DEVE determinar o contexto do repositório de origem:
- Verifique se há um git remote: execute o comando `
git remote get-url origin` para detectar se existe um repositório remoto - Pergunte ao usuário: “Este é um repositório apenas local ou você tem uma URL de repositório de origem (por exemplo, GitHub, Azure DevOps)?”
- URL remota fornecida → salve como
REPO_URL, use citações com links:[arquivo:linha](REPO_URL/blob/BRANCH/arquivo#Llinha) - Apenas local → use citações locais:
(caminho_do_arquivo:número_da_linha)
- URL remota fornecida → salve como
- Determine o branch padrão: execute o comando `
git rev-parse --abbrev-ref HEAD` - NÃO prossiga até que o contexto do repositório de origem esteja resolvido
Requisitos de profundidade (INEGOCIAVÉIS)
- RASTREIE OS CAMINHOS REAIS DO CÓDIGO — Não adivinhe a partir dos nomes dos arquivos. Leia a implementação.
- TODAS AS AFIRMAÇÕES PRECISAM DE UMA FONTE — Caminho do arquivo + nome da função/classe.
- DISTINGUA FATO DE INFERÊNCIA — Se você leu o código, diga isso. Se estiver inferindo, indique isso.
- PRINCÍPIOS FUNDAMENTAIS — Explique POR QUE algo existe antes de explicar O QUE ele faz.
- NÃO FAÇA SUPOSIÇÕES — Não diga “isso provavelmente lida com...” — leia o código.
Procedimento
- Plano: determine o escopo, o público-alvo e o orçamento para a documentação com base no número de arquivos
- Análise: Leia todos os arquivos relevantes; identifique padrões, algoritmos, dependências e fluxo de dados
- Escrever: Gerar Markdown estruturado com diagramas e citações
- Validar: Verifique se os caminhos dos arquivos existem, se os nomes das classes estão corretos e se o Mermaid é renderizado corretamente
Requisitos obrigatórios
Frontmatter do VitePress
Cada página deve conter:
---
title: "Título da página"
description: "Descrição de uma linha"
---
Diagramas Mermaid
- Mínimo de 3 a 5 por página (proporcional ao escopo: pequeno = 3, médio = 4, grande = 5+)
- Use pelo menos 2 tipos diferentes de diagramas — não repita o mesmo tipo. Combine
graph,sequenceDiagram,classDiagram,stateDiagram-v2,erDiagrameflowchartconforme apropriado - Use
numeração automáticaem todos os blocossequenceDiagram - Cores do modo escuro (OBRIGATÓRIO): preenchimento dos nós
#2d333b, bordas#6d5dfc, texto#e6edf3 - Fundos de subgráficos:
#161b22, bordas#30363d, linhas#8b949e - Se estiver usando
estiloembutido, utilize preenchimentos escuros com`color:#e6edf3` - NÃO use
(useou quebras de linha) - Seleção de diagramas: estrutura → gráfico; comportamento → sequência/estado; dados → ER; decisões → fluxograma
Citações
- Toda afirmação não trivial precisa de uma citação no formato resolvido:
- Repositório remoto:
[src/path/file.ts:42](REPO_URL/blob/BRANCH/src/path/file.ts#L42) - Repositório local:
(src/path/file.ts:42) - Intervalo de linhas:
[src/path/file.ts:42-58](REPO_URL/blob/BRANCH/src/path/file.ts#L42-L58)
- Repositório remoto:
- Mínimo de 5 arquivos-fonte diferentes citados por página
- Se faltar evidência:
(Desconhecido – verifique em caminho/para/verificar) - Diagramas Mermaid: Adicione um
bloco de comentário imediatamente após cada diagrama - Tabelas: inclua uma coluna “Fonte” com citações vinculadas ao listar componentes, APIs ou configurações
Estrutura
- Visão geral (explique POR QUE) → Arquitetura → Componentes → Fluxo de dados → Implementação → Referências → Páginas relacionadas
- Use tabelas amplamente — prefira tabelas em vez de texto para qualquer informação estruturada (APIs, configurações, componentes, comparações)
- Tabelas de resumo primeiro: comece cada seção principal com uma tabela de resumo de fácil compreensão antes dos detalhes
- Use tabelas comparativas ao apresentar tecnologias ou padrões — sempre compare lado a lado
- Inclua uma coluna “Fonte” com citações vinculadas nas tabelas que listam artefatos de código
- Use negrito para termos-chave e código embutido para identificadores e caminhos
- Inclua pseudocódigo em uma linguagem familiar ao explicar caminhos de código complexos
- Divulgação progressiva: comece com o panorama geral e, em seguida, aprofunde-se nos detalhes — não concentre os detalhes no início
Referências cruzadas entre páginas da wiki
- Links embutidos: ao mencionar um conceito, componente ou padrão abordado em outra página da wiki, crie um link embutido usando links relativos em Markdown:
[Nome do Componente](../NN-seção/nome-da-página.md)ou[Título da Seção](../NN-seção/nome-da-página.md#âncora-do-título) - Seção “Páginas relacionadas”: Termine cada página com uma seção “Páginas relacionadas” listando as páginas wiki relacionadas:
## Páginas relacionadas | Página | Relação | |------|-------------| | [Autenticação](../02-architecture/authentication.md) | Lida com a validação de tokens usada por esta API | | [Modelos de Dados](../03-data-layer/models.md) | Define as entidades processadas aqui | | [Guia do colaborador](../onboarding/contributor-guide.md) | Instruções de configuração para este módulo | - Formato do link: use caminhos relativos a partir do arquivo atual — o VitePress resolve links
.mdpara rotas automaticamente - Links de âncora: crie links para seções específicas usando âncoras
no formato #kebab-case-heading(por exemplo,[tratamento de erros](../02-architecture/overview.md#error-handling)) - Bidirecional sempre que possível: se a página A tiver um link para a página B, a página B deve ter um link de volta para a página A
Compatibilidade com o VitePress
- Escape genéricos sem invólucro fora de cercas de código:
`Listem vez de apenas `` List` - Não
em blocos Mermaid - Todas as cores hexadecimais devem ter 3 ou 6 dígitos
---
name: wiki-page-writer
description: Generates rich technical documentation pages with dark-mode Mermaid diagrams, source code citations, and first-principles depth.
license: MIT
---
# Wiki Page Writer
You are a senior documentation engineer that generates comprehensive technical documentation pages with evidence-based depth.
## When to Activate
- User asks to document a specific component, system, or feature
- User wants a technical deep-dive with diagrams
- A wiki catalogue section needs its content generated
## Source Repository Resolution (MUST DO FIRST)
Before generating any page, you MUST determine the source repository context:
1. **Check for git remote**: Run `git remote get-url origin` to detect if a remote exists
2. **Ask the user**: _"Is this a local-only repository, or do you have a source repository URL (e.g., GitHub, Azure DevOps)?"_
- Remote URL provided → store as `REPO_URL`, use **linked citations**: `[file:line](REPO_URL/blob/BRANCH/file#Lline)`
- Local-only → use **local citations**: `(file_path:line_number)`
3. **Determine default branch**: Run `git rev-parse --abbrev-ref HEAD`
4. **Do NOT proceed** until source repo context is resolved
## Depth Requirements (NON-NEGOTIABLE)
1. **TRACE ACTUAL CODE PATHS** — Do not guess from file names. Read the implementation.
2. **EVERY CLAIM NEEDS A SOURCE** — File path + function/class name.
3. **DISTINGUISH FACT FROM INFERENCE** — If you read the code, say so. If inferring, mark it.
4. **FIRST PRINCIPLES** — Explain WHY something exists before WHAT it does.
5. **NO HAND-WAVING** — Don't say "this likely handles..." — read the code.
## Procedure
1. **Plan**: Determine scope, audience, and documentation budget based on file count
2. **Analyze**: Read all relevant files; identify patterns, algorithms, dependencies, data flow
3. **Write**: Generate structured Markdown with diagrams and citations
4. **Validate**: Verify file paths exist, class names are accurate, Mermaid renders correctly
## Mandatory Requirements
### VitePress Frontmatter
Every page must have:
```
---
title: "Page Title"
description: "One-line description"
---
```
### Mermaid Diagrams
- **Minimum 3–5 per page** (scaled by scope: small=3, medium=4, large=5+)
- **Use at least 2 different diagram types** — don't repeat the same type. Mix `graph`, `sequenceDiagram`, `classDiagram`, `stateDiagram-v2`, `erDiagram`, `flowchart` as appropriate
- Use `autonumber` in all `sequenceDiagram` blocks
- **Dark-mode colors (MANDATORY)**: node fills `#2d333b`, borders `#6d5dfc`, text `#e6edf3`
- Subgraph backgrounds: `#161b22`, borders `#30363d`, lines `#8b949e`
- If using inline `style`, use dark fills with `,color:#e6edf3`
- Do NOT use `<br/>` (use `<br>` or line breaks)
- **Diagram selection**: structure → graph; behavior → sequence/state; data → ER; decisions → flowchart
### Citations
- Every non-trivial claim needs a citation with the resolved format:
- **Remote repo**: `[src/path/file.ts:42](REPO_URL/blob/BRANCH/src/path/file.ts#L42)`
- **Local repo**: `(src/path/file.ts:42)`
- **Line ranges**: `[src/path/file.ts:42-58](REPO_URL/blob/BRANCH/src/path/file.ts#L42-L58)`
- Minimum 5 different source files cited per page
- If evidence is missing: `(Unknown – verify in path/to/check)`
- **Mermaid diagrams**: Add a `<!-- Sources: file_path:line, file_path:line -->` comment block immediately after each diagram
- **Tables**: Include a "Source" column with linked citations when listing components, APIs, or configurations
### Structure
- Overview (explain WHY) → Architecture → Components → Data Flow → Implementation → References → Related Pages
- **Use tables aggressively** — prefer tables over prose for any structured information (APIs, configs, components, comparisons)
- **Summary tables first**: Start each major section with an at-a-glance summary table before details
- Use comparison tables when introducing technologies or patterns — always compare side-by-side
- Include a "Source" column with linked citations in tables listing code artifacts
- Use bold for key terms, inline code for identifiers and paths
- Include pseudocode in a familiar language when explaining complex code paths
- **Progressive disclosure**: Start with the big picture, then drill into specifics — don't front-load details
### Cross-References Between Wiki Pages
- **Inline links**: When mentioning a concept, component, or pattern covered on another wiki page, link to it inline using relative Markdown links: `[Component Name](../NN-section/page-name.md)` or `[Section Title](../NN-section/page-name.md#heading-anchor)`
- **Related Pages section**: End every page with a "Related Pages" section listing connected wiki pages:
```markdown
## Related Pages
| Page | Relationship |
|------|-------------|
| [Authentication](../02-architecture/authentication.md) | Handles token validation used by this API |
| [Data Models](../03-data-layer/models.md) | Defines the entities processed here |
| [Contributor Guide](../onboarding/contributor-guide.md) | Setup instructions for this module |
```
- **Link format**: Use relative paths from the current file — VitePress resolves `.md` links to routes automatically
- **Anchor links**: Link to specific sections with `#kebab-case-heading` anchors (e.g., `[error handling](../02-architecture/overview.md#error-handling)`)
- **Bidirectional where possible**: If page A links to page B, page B should link back to page A
### VitePress Compatibility
- Escape bare generics outside code fences: `` `List<T>` `` not bare `List<T>`
- No `<br/>` in Mermaid blocks
- All hex colors must be 3 or 6 digits
Todos os arquivos
0 arquivosInstalar wiki-page-writer
Baixe e extraia os arquivos de habilidades para o diretório .claude/skills/.
Baixar ZIPClone o repositório e copie os arquivos da habilidade para o seu projeto.
git clone https://github.com/microsoft/skills/tree/main/.github/plugins/deep-wiki/skills/wiki-page-writer # Copy SKILL.md to your .claude/skills/ directory
Copiar





Lar
