Ir al contenido
angel.library

Skills — el mismo estándar que Claude Code

OpenCode implementa el mismo Agent Skills estándar abierto que Claude Code — y de hecho lee directo las carpetas de Claude Code, sin necesitar copiar ni convertir nada.

Dónde busca (en orden, sube hasta la raíz del repo)

Sección titulada «Dónde busca (en orden, sube hasta la raíz del repo)»
.opencode/skills/nombre/SKILL.md
.claude/skills/nombre/SKILL.md → interoperable, sin cambios
.agents/skills/nombre/SKILL.md → estándar genérico, sin atarse a ninguna herramienta

Y sus equivalentes globales: ~/.config/opencode/skills/, ~/.claude/skills/, ~/.agents/skills/.

.opencode/skills/revisar-pr/SKILL.md
---
name: revisar-pr
description: Revisa el PR actual y deja comentarios sobre bugs y seguridad
---
Revisa el PR actual con `gh pr diff` y señala bugs, riesgos de seguridad y problemas de legibilidad.

Frontmatter: más chico que el de Claude Code

Sección titulada «Frontmatter: más chico que el de Claude Code»
CampoRequerido
nameSí — en minúsculas con guiones, debe matchear el nombre de la carpeta
descriptionSí — entre 1 y 1024 caracteres
license / compatibility / metadataNo

No existen aquí campos propios de Claude Code como disable-model-invocation, context: fork o paths — el control de acceso se maneja aparte, a nivel de opencode.json (ver Resumen).

A diferencia de Claude Code (/nombre-del-skill tipeado por el usuario), en OpenCode el agente descubre los skills disponibles a través directamente tool nativa llamada skill — el propio agente decide cuándo llamarla según la descripción de cada skill.

opencode.json
{
"permission": {
"skill": {
"revisar-pr": "allow",
"*": "ask"
}
}
}
  • Si ya tienes skills escritos para Claude Code, no hace falta duplicarlos — pon el proyecto en OpenCode y va a encontrar .claude/skills/ solo.
  • Sin el equivalente a disable-model-invocation, no hay forma nativa de forzar que un skill sea “solo invocable a mano” — el agente siempre puede decidir llamarlo si la descripción matchea.