Início/Trilha 1 · Fundamentos/Módulo 1.4
MÓDULO 1.4

🧰 Skills (SKILL.md) — a unidade atômica

A unidade reutilizável que define como o agente trabalha um tipo de artefato. Compatível com Claude Code; estendida pelo OD.

7
Tópicos
~55 min
Duração
Básico
Nível
31
Skills box

🏁 Resultado: Você lê uma SKILL.md e prevê o comportamento do agente; sabe a diferença entre skill base (Claude Code-compatível) e skill com extensão od:.

1

📜 Convenção SKILL.md do Claude Code

O frontmatter mínimo: name, description, triggers.

O que é

SKILL.md é um arquivo Markdown com frontmatter YAML mais corpo. O frontmatter mínimo (compatível com Claude Code) tem:

---
name: web-prototype
description: Gera um protótipo web rodável (single-file HTML)
triggers:
  - "fazer um site"
  - "landing"
  - "prototype"
---

# Workflow

1. Leia template.html primeiro
2. ...

Por que aprender

Esse formato é a fronteira de portabilidade: uma skill bem escrita roda no Claude Code e no OD sem mudança. Esse contrato evita lock-in. Saber escrever um SKILL.md mínimo = poder distribuir suas próprias skills.

Conceitos-chave

  • name: kebab-case, único por escopo
  • description: 1 linha — usada no picker
  • triggers: array de palavras/frases que ativam matching
  • Body: Markdown puro com workflow e diretrizes
  • Sem código executável: SKILL.md é declarativo, não script
2

📁 Anatomia: assets/ + references/

O que vai em cada pasta auxiliar.

O que é

Uma skill séria não é só SKILL.md — é uma pasta:

skills/saas-landing/
├── SKILL.md                  # frontmatter + workflow
├── assets/
│   └── template.html         # HTML seed que o agente abre primeiro
└── references/
    ├── layouts.md            # 8 layouts paste-ready
    ├── components.md         # botão, card, hero variants
    └── checklist.md          # P0/P1/P2 gate

Por que aprender

Assets = seed. O agente sempre abre o template antes de escrever — economiza ~30% de tokens e evita "improviso de estrutura". References = vocabulário. Quando o agente precisa de um padrão, ele consulta em vez de inventar. Quem ignora essa separação acaba com SKILL.md de 800 linhas que o modelo não consegue manter coerente.

Conceitos-chave

  • assets/: arquivos "seed" — template HTML, frames, imagens placeholder
  • references/: Markdown auxiliar — layouts, componentes, checklist
  • Pre-flight reading: daemon injeta assets no contexto antes do prompt do usuário
  • Tamanho razoável: SKILL.md ~150 linhas, references ~100 cada
3

🔌 Extensão od: no frontmatter

Mode, platform, scenario, preview, design_system, default_for, featured.

O que é

O OD adiciona um bloco opcional od: ao frontmatter — invisível para o Claude Code (ignorado por desconhecimento), rico para o picker do OD:

---
name: saas-landing
description: Landing page para SaaS B2B
triggers: ["landing", "site institucional"]
od:
  mode: prototype
  platform: web
  scenario: marketing
  preview: { aspect: "16:9" }
  design_system: linear-app
  default_for: ["b2b-saas", "fintech"]
  featured: true
---

Por que aprender

A extensão od: é o que diferencia "uma skill" de "uma skill descobrível e configurada". O picker filtra por scenario, sugere design_system default, exibe featured primeiro. Sem essa metadata, o usuário tem que escolher tudo manualmente toda vez.

Conceitos-chave

  • mode: prototype | deck | scenario
  • platform: web | mobile | desktop
  • scenario: marketing | dashboard | onboarding | etc.
  • design_system: default emparelhado para esse tipo
  • default_for: categorias onde essa skill é a primeira sugerida
  • featured: aparece em destaque no picker
  • Compatibilidade: Claude Code ignora od:, segue funcionando
4

📦 As 31 skills da box

Taxonomia: prototype × deck × scenario.

O que é

O OD vem com 31 skills curadas, agrupadas em três famílias:

Prototype

web-prototype, saas-landing, mobile-app, dashboard, social-carousel...

Deck

guizang-ppt, pitch-deck, keynote, sales-deck...

Scenario

critique, tweaks, brand-extract, onboarding-flow, dating-web...

Por que aprender

Saber o que existe = não reinventar. Antes de criar uma skill nova, cheque o catálogo: provavelmente já existe uma "70% pronta" que você estende com seu DESIGN.md em vez de fazer SKILL.md do zero.

Conceitos-chave

  • Prototype: output rodável (single-file HTML, multi-tela, gallery)
  • Deck: output paginado, magazine-style, exportável a PDF
  • Scenario: cumpre função (audita, refina, extrai) — não gera artefato novo
  • Top 5 mais usadas: web-prototype, saas-landing, guizang-ppt, mobile-app, critique
5

📑 Pre-flight reading enforcement

Por que o agente lê template.html antes de escrever CSS.

O que é

Toda SKILL.md séria tem como primeira instrução: "Antes de qualquer pixel, leia assets/template.html e references/checklist.md". O daemon faz enforcement: injeta o conteúdo desses arquivos no system prompt antes do agente começar. Não é confiança no modelo — é checklist mecânico.

Por que aprender

Modelos LLM falham em "abrir arquivo X" cerca de 30% do tempo. Pre-flight elimina essa fonte de erros: o conteúdo já está no contexto, o modelo não precisa lembrar. Saber isso = saber por que o OD entrega artefatos consistentes onde "AI freestyle" não.

Conceitos-chave

  • Daemon-side injection: daemon lê e injeta antes do agente
  • Token budget: ~8k tokens por skill (cuidado com side-files gigantes)
  • Cache invalidation: editou template? cache invalida na próxima sessão
  • Skill mal-escrita: sem instrução de pre-flight reading, agente improvisa
6

🤝 Promessa de compatibilidade

Skill OD roda em Claude Code puro, e vice-versa.

O que é

Uma skill OD respeita a convenção Claude Code: frontmatter base + body Markdown. Tudo o que é OD-específico vive em od: (ignorado por outros runtimes). Isso significa que: você baixa uma skill da galeria do Claude Code, joga em ~/.claude/skills/, e o OD reconhece e usa. E vice-versa: você cria uma skill no OD com od: rica, ela continua funcionando no Claude Code (sem o picker rico).

Por que aprender

É a aposta-base do OD. Sem essa compatibilidade, o ecossistema fragmenta. Time que adota OD pode usar skills da comunidade Claude Code; time que adota Claude Code pode usar skills da comunidade OD. Convergência = ecossistema vivo.

Conceitos-chave

  • Frontmatter base: name + description + triggers — funcionam em ambos
  • od: bloco: rico no OD, ignorado em outros runtimes
  • Sem dependências runtime: SKILL.md é texto estático
  • Versionamento: Git-friendly, fácil de reviewar em PR
  • awesome-claude-skills: ecossistema convergente
7

🗂️ Onde skills moram

Os 3 escopos escaneados no boot.

O que é

No boot, o daemon escaneia 3 diretórios em ordem:

  1. ~/.claude/skills/ — skills globais do usuário (compartilhadas com Claude Code)
  2. ./skills/ — skills do projeto atual
  3. ./.claude/skills/ — skills do projeto, escopo Claude Code padrão

Conflito de nome? Mais específico ganha (projeto > usuário).

Por que aprender

Saber onde colocar suas skills muda comportamento. Skill genérica (deck padrão) → ~/.claude/skills/. Skill específica do cliente (landing-cliente-X com brand específico) → ./skills/ do repo do cliente. Sem essa disciplina, vira "tenho 50 skills no global e nunca sei qual é qual".

Conceitos-chave

  • ~/.claude/skills/: globais, persistem entre projetos
  • ./skills/: projeto-específico, commitadas no repo
  • ./.claude/skills/: escopo Claude Code (sinônimo do anterior)
  • Boot scan: daemon faz fs.readdir nos 3 paths
  • Hot-reload: editou skill? próxima sessão lê novo conteúdo

🛠️ Hands-on

Crie sua primeira skill mínima — vale como exercício mesmo sem o OD instalado:

  1. Estrutura: mkdir -p ~/.claude/skills/post-linkedin/{assets,references}
  2. SKILL.md: escreva frontmatter (name, description, triggers, od:) + workflow em 5 passos
  3. template.html: em assets/, escreva o HTML de um card 1080×1080 com tokens em :root
  4. checklist.md: em references/, liste 5 P0 (ex: "fonte display ≠ body", "1 cor de marca")
  5. Teste: reinicie o Claude Code/OD daemon e verifique se aparece no picker

Listagem das skills atuais

ls ~/.claude/skills/
ls ./skills/ 2>/dev/null
find . -name "SKILL.md" -not -path "*/node_modules/*"

📚 Fontes

No repositório

  • docs/skills-protocol.md (322L)
  • skills/web-prototype/SKILL.md — referência canônica
  • skills/guizang-ppt/SKILL.md — deck framework
  • apps/daemon/src/skills.ts — scanner

Externas

📌 Resumo do Módulo

1. SKILL.md = frontmatter (name, description, triggers) + body Markdown — convenção Claude Code.

2. Pasta com assets/ (seed) e references/ (vocabulário) é o que faz a skill confiável.

3. Bloco od: adiciona mode, platform, scenario, design_system, default_for, featured.

4. 31 skills box organizadas em prototype × deck × scenario.

5. Pre-flight reading: daemon injeta side-files antes do agente — checklist mecânico.

6. Compatibilidade: skill OD roda em Claude Code, e vice-versa — sem fragmentação.

7. Skills moram em ~/.claude/skills, ./skills, ./.claude/skills — projeto > usuário em conflito.

← Módulo 1.3 Módulo 1.5 →