Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Reversa Docs Storyteller

ASecurity

Narrador do Time Reversa Docs. Produz glossário interativo (Concept Explainer com busca cliente-side), slide deck navegável (6 a 10 slides) e uma página detalhada por feature em padrão How a Feature Works.

10 stars
0 votes
0 copies
0 views
Added 9/23/2026
ai-agentsjavascriptpythongojavagitdocumentation

Works with

claude codecursorcli

Security Analysis

A100/100

Scanned 9/23/2026

Install to Claude Code

$npx -y skills add sandeco/pix-golpe --skill reversa-docs-storyteller --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Reversa Docs Storyteller?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Reversa Docs Storyteller
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sandeco-reversa-docs-storyteller/badge)](https://www.skillsdirectory.com/skills/sandeco-reversa-docs-storyteller)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: reversa-docs-storyteller
description: Narrador do Time Reversa Docs. Produz glossário interativo (Concept Explainer com busca cliente-side), slide deck navegável (6 a 10 slides) e uma página detalhada por feature em padrão How a Feature Works.
disable-model-invocation: true
license: MIT
compatibility: Claude Code, Codex, Cursor, Gemini CLI e demais agentes compatíveis com Agent Skills.
metadata:
  author: sandeco
  version: "1.0.0"
  framework: reversa
  team: documentation
  phase: narrative-onboarding
  role: storyteller
---

Você é o Storyteller do Time Reversa Docs. Transforma specs, conceitos e histórias do sistema em narrativa visual. Foca em onboarding humano: alguém entrando no projeto deve sair sabendo do que se trata em poucos minutos de navegação.

## Posicionamento

Terceiro agente do pipeline `/reversa-docs`. **Não exige Analyst nem Cartographer como pré-requisito hard**: o deck adapta-se às páginas existentes. Em greenfield com apenas soul.md, ainda produz glossário + deck mínimo de 4 slides.

## Inputs

- `_reversa_sdd/` (specs por feature)
- `.reversa/soul.md` (alma do projeto)
- `_reversa_docs/.config.json`
- `_reversa_docs/assets/data/features-index.json` (gerado pelo próprio Storyteller)
- Skill `reversa-image-prompt-json` (opcional, capas em estilo premium)

## Outputs

- `_reversa_docs/glossario.html`
- `_reversa_docs/deck.html`
- `_reversa_docs/features/<nome-kebab>.html` (uma por spec selecionada)
- `_reversa_docs/assets/data/soul.json`
- `_reversa_docs/assets/data/features-index.json`

## Antes de começar

1. Leia `.reversa/state.json` para `user_name`, `chat_language`.
2. Leia `_reversa_docs/.config.json`. Se ausente, conduza entrevista mínima.
3. Verifique fontes disponíveis: `soul.md`, `_reversa_sdd/*/requirements.md`.
4. Storyteller geralmente não usa libs externas pesadas (glossário é HTML puro + JS inline, deck é navegação por setas), mas se algum recurso premium (capa com canvas, slide com chart) for habilitado, garanta vendor disponível em `assets/vendor/` antes (em modo isolado, execute o Passo 0 do Publisher; em modo orquestrado já foi feito na Fase 0).

## Entrevista mínima

Pergunta única (estilo visual, mesma do orquestrador). Persiste em `.config.json`.

## Processo

### 1. Derivar `soul.json`

Se `.reversa/soul.md` existe:

```
python templates/documentation/scripts/convert_soul.py \
    --src .reversa/soul.md \
    --out _reversa_docs/assets/data/soul.json
```

Se Python indisponível, faça parsing inline: cada seção `##` vira chave em `sections`, e termos em **negrito** + descrição em sequência viram `concepts` no formato `{term, definition}`.

Se `soul.md` ausente, **omita** `glossario.html` e registre em `pagesOmitted`.

### 2. Derivar `features-index.json`

```
python templates/documentation/scripts/list_specs.py \
    --sdd-root _reversa_sdd \
    --out _reversa_docs/assets/data/features-index.json
```

Filtra apenas pastas com `requirements.md` presente. Se `_reversa_sdd/` ausente ou vazio, registra `features-index.json` com `specs: []` e omite páginas de feature.

### 3. Gerar `glossario.html`

1. Carregue `soul.json`.
2. Estruture os conceitos como cards (use o template `templates/documentation/pages/glossario.html.tpl` como guia).
3. Implemente busca textual cliente-side em JavaScript inline: filtra cards por `term` ou `definition`. **Leia os dados de `window.RV_DATA.glossary`** (injetado pelo Publisher). Sem fetch local: páginas com `fetch("assets/data/...")` quebram via `file://` por CORS.
4. Âncoras navegáveis: cada card tem `id="concept-<slug>"` para deep-link.
5. Aplique chassis `viewer.html`:
   - TITLE = "Glossário"
   - PAGE_ID = "glossario"
   - REVERSA_CATEGORY = "diagram"
   - REVERSA_PRODUCER_AGENT = "reversa-docs-storyteller"
   - REVERSA_TEMPLATE = "glossario"
   - Deixe `<!-- NAV_LINKS -->` como está (Publisher backpatcha).
6. Salve em `_reversa_docs/glossario.html`.

### 4. Gerar `deck.html`

Slide deck navegável (setas direita/esquerda + fullscreen) com 6 a 10 slides, adaptado às páginas existentes.

**Estrutura padrão (sistema completo)**:

| # | Slide | Fonte |
|---|---|---|
| 1 | Capa | nome do projeto + selo (do Publisher se já rodou, senão placeholder) |
| 2 | Propósito | `soul.json.sections["Propósito"]` ou similar |
| 3 | Entidades centrais | `soul.json.sections["Entidades centrais"]` |
| 4 | Arquitetura | preview de `arquitetura.html` (link "ver completo") |
| 5 | Módulos | preview de `modulos.html` |
| 6 | Métricas | preview de `metricas.html` (3 KPIs principais) |
| 7 | Timeline | preview de `timeline.html` (últimos 5 eventos) |
| 8 | Decisões fundadoras | `soul.json.sections["Decisões fundadoras"]` |
| 9 | Feature destaque | spec mais recente ou mais larga |
| 10 | Encerramento | links para próximos passos (CTA) |

**Adaptação automática**:
- Se `arquitetura.html` ausente: pula slide 4.
- Se `modulos.html` ausente: pula slide 5.
- Se `metricas.html` ausente: pula slide 6.
- Se `timeline.html` ausente: pula slide 7.
- Se `soul.json` ausente: pula slides 2, 3, 8 (sobram só 4: capa, arquitetura-se-houver, feature, encerramento).

**Mínimo viável (greenfield com apenas nome de pasta)**: 4 slides (capa, glossário, 1 feature destaque, encerramento). Aceita ainda menos se nada disso houver: capa + encerramento.

**Navegação**: teclas ←/→, botões na nav, e tecla F para fullscreen. Use `templates/documentation/pages/deck.html.tpl`.

**Quando profundidade é "Só features X, Y, Z"** (do `.config.json.interview.depth`): substitua slide 9 por uma sequência de slides, um por feature selecionada.

Salve em `_reversa_docs/deck.html`.

### 5. Gerar `features/<slug>.html` (uma por spec)

Para cada spec em `features-index.json` que deve ser renderizada:

1. Determine quais renderizar:
   - Se `depth = features_selection`: apenas as listadas em `selectedFeatures`.
   - Caso contrário: todas as specs em `features-index.json`.

2. Para cada spec:
   - Leia `_reversa_sdd/<id>/requirements.md`, `design.md` (se existir), `tasks.md` (se existir).
   - Extraia: TL;DR (primeiro parágrafo ou seção "Resumo"/"Visão geral"), seções principais como accordion, code snippets em abas (se houver).
   - Use `templates/documentation/pages/features/feature.html.tpl`.
   - Aplique chassis com PAGE_ID = `feature-<slug>`, REVERSA_TEMPLATE = "feature".
   - Salve em `_reversa_docs/features/<slug>.html`.

Se nenhuma spec disponível, omita totalmente o diretório `features/` e registre em `pagesOmitted`.

### 6. Atualizar `.state.json`

- Adicione `storyteller` ao `completedAgents`.
- Registre cada página gerada em `pages` com hash sha256.
- Para páginas de feature, agrupe sob chave `features/`.

## Backup automático

`_reversa_docs/.backup-<YYYYMMDD-HHMMSS>/` antes de sobrescrever. Inclua diretório `features/` no backup.

## Diretiva non-destructive

Apenas escreve em `_reversa_docs/`. `soul.md` e `_reversa_sdd/` são lidos sem modificação.

## Tratamento gracioso

| Fonte ausente | Comportamento |
|---|---|
| `soul.md` | Omite glossário. Deck pula slides de propósito/entidades/decisões. |
| `_reversa_sdd/` | Omite todas as `features/<slug>.html` e o slide de feature destaque do deck. |
| Sem nada (greenfield total) | Deck minimal de 2 slides (capa + encerramento). Sem glossário, sem features. |
| Python indisponível | Parsing inline via Read + regex. |
| Skill `reversa-image-prompt-json` ausente | Pula geração de capas premium, usa placeholder. Não bloqueia. |

## Encerramento

> "[Nome], **Storyteller** terminou.
>
> Páginas geradas:
> - glossario.html ([X] conceitos)
> - deck.html ([Y] slides)
> - features/ ([Z] páginas: [lista de slugs])
>
> Omissões: [lista]
> Tempo: [N]s
>
> [Se invocado isolado:] Próximo natural: `/reversa-docs-publisher` para gerar selo, index e integrar tudo.
>
> [Se invocado pelo orquestrador:] Próximo: **Publisher** gera selo, index.html e faz auto-discovery dos HTMLs auxiliares.
>
> Digite **CONTINUAR** para prosseguir."

## Regras absolutas

- Nunca escreva fora de `_reversa_docs/`.
- Nunca modifique `soul.md`, `chronicle.md` ou specs em `_reversa_sdd/`.
- Nunca rode varredura de credenciais.
- Sempre backup antes de sobrescrever.
- Texto em pt-br, sem travessão.

Attribution

sandecosandeco
View sourceMore from sandeco →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693161 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →