Ir para o conteúdo

kind: claude-asset

Skill, agent, command ou plugin-pack do Claude Code. O kind mais polimórfico — vide subkind.

Detection heuristics

  • Strong: dir contém skill.md (Claude skill) → subkind: skill
  • Strong: dir contém agent.md (Claude agent) → subkind: agent
  • Strong: dir contém command.mdsubkind: command
  • Strong: dir contém .claude-plugin/plugin.jsonsubkind: plugin-pack
  • Medium: nome bate com pack conhecido (anthropic-pack, adobe-pack, wondelai-*)

Negative signals: - É lib genérica pra agentes (agno, crewai, langchain) → library - É CLI do Claude Code próprio → não é asset, é o tooling base

claude{} sub-block (obrigatório)

Field Tipo Notas
subkind enum skill | agent | command | plugin-pack
trigger string Quando o asset auto-aciona (descrição da skill/agent)
parent string|null Se for child de pack, slug do parent

Required fields

  • claude.subkind
  • delivery: package-npm (mais comum) ou oss-source
  • vendor
  • urls.repo

Vocabulary defaults

Field Valor típico
delivery package-npm (publicado no marketplace) ou oss-source
license mit, apache-2
vendor nxt-internal (próprios) ou anthropic (oficiais) ou community-oss
domains varia — [dev-tooling] é comum

Cada subkind tem destino diferente em ~/.claude/:

subkind Symlink path Aponta pra
skill ~/.claude/skills/<slug> recursos/<slug>/ (dir inteiro)
agent ~/.claude/agents/<slug>.md recursos/<slug>/agent.md
command ~/.claude/commands/<slug>.md recursos/<slug>/command.md
plugin-pack (gerenciado pelo Claude Code marketplace) bundle em recursos/<slug>/.claude-plugin/

Plus: skills publicadas via marketplace ficam em ~/.claude/plugins/cache/ — esses NÃO são links pro nosso recursos/, são instalações via Claude Code próprio. Coexistem; nosso recursos// é a "fonte source".

Pack/bundle pattern (subkind=plugin-pack)

Packs como anthropic-pack contêm múltiplas skills/agents children:

recursos/anthropic-pack/
├── index.v2.json (kind=claude-asset, subkind=plugin-pack)
├── .claude-plugin/                 ← bundle pro marketplace
└── skills/                          ← children dirs
    ├── anth-common-errors/
    │   ├── index.v2.json (subkind=skill, parent=anthropic-pack)
    │   └── skill.md
    └── anth-observability/
        ├── index.v2.json
        └── skill.md

Cada child: - Tem index.v2.json próprio (vai aparecer no Datasette individualmente) - claude.parent: anthropic-pack - Nome com prefixo curto da pack pra evitar colisão (anth-*, adobe-*)

Examples

recursos/dev-plan/index.v2.json (subkind=skill)

slug: dev-plan
name: "dev-plan"
description: "Skill pra decompor trabalho complexo em specs antes de implementar."
kind: claude-asset
capabilities: [code-gen]
delivery: package-npm
domains: [dev-tooling]
license: mit
vendor: nxt-internal
maturity: production
claude:
  subkind: skill
  trigger: "When user asks to plan or decompose complex implementation work"
  parent: null
urls:
  repo: https://github.com/nxt/dev-plan-skill
tags: [planning, spec-driven]

recursos/code-reviewer/index.v2.json (subkind=agent)

slug: code-reviewer
name: "code-reviewer"
description: "Agent que revisa código pra bugs, segurança, e adesão a convenções."
kind: claude-asset
capabilities: [code-gen]
delivery: oss-source
domains: [dev-tooling]
license: internal-nxt
vendor: nxt-internal
maturity: production
claude:
  subkind: agent
  trigger: "Before merging any change. Reviews PR diffs."
  parent: null
tags: [review, ci]

recursos/anthropic-pack/index.v2.json (subkind=plugin-pack)

slug: anthropic-pack
name: "Anthropic Pack"
description: "Pack oficial de skills Anthropic  30 skills cobrindo SDK patterns, common errors, observability."
kind: claude-asset
capabilities: [code-gen]
delivery: oss-source
domains: [dev-tooling, ai-platform]
license: mit
vendor: anthropic
maturity: production
claude:
  subkind: plugin-pack
  trigger: "Auto-loaded for Anthropic SDK projects"
  parent: null
relations:
  children: [anth-common-errors, anth-observability, anth-rate-limits, anth-prod-checklist, ...]
urls:
  repo: https://github.com/anthropics/skills-pack
tags: [official, anthropic-sdk]

recursos/anthropic-pack/skills/anth-common-errors/index.v2.json (child)

slug: anth-common-errors
name: "anth-common-errors"
description: "Diagnose Anthropic SDK errors by HTTP status code."
kind: claude-asset
capabilities: [code-gen]
delivery: oss-source
domains: [dev-tooling, ai-platform]
license: mit
vendor: anthropic
maturity: production
claude:
  subkind: skill
  trigger: "When error from Anthropic SDK"
  parent: anthropic-pack
relations:
  parent: anthropic-pack
tags: [debugging, errors]

Migration from legacy

Antigo Novo
tipo: "Skill" kind: claude-asset, claude.subkind: skill
tipo: "Agente" kind: claude-asset, claude.subkind: agent
tipo: "Command" kind: claude-asset, claude.subkind: command
tipo: "Plugin" kind: claude-asset, claude.subkind: plugin-pack
subtipo: "Pack Anthropic oficial" claude.subkind: plugin-pack, vendor: anthropic
subtipo: "Pack comunidade (Wondelai design)" claude.subkind: plugin-pack, vendor: independent

Common mistakes

  • ❌ Esquecer claude.subkind — não dá pra renderizar/symlinkar sem isso
  • ❌ Children sem claude.parent — viram órfãos, sumindo do contexto da pack
  • ❌ Confundir framework de agente (langchain, agno, crewai) com agent Claude Code — esses são library
  • ❌ Misturar MCPs bundled em plugin-pack como mcp-server separado — bundled MCPs ficam DENTRO do pack, não criam slug próprio