Codex utiliza .agents/skills como ubicación compartida estándar. Las guías antiguas que trataban ~/.codex/skills y project/.codex/skills como rutas predeterminadas pueden colocar un Skill en el lugar equivocado y confundir la configuración personal con los Skills compartidos.
La regla breve: usa $HOME/.agents/skills para Skills personales reutilizables y .agents/skills dentro del repositorio para sus reglas. Cada Skill necesita un directorio propio y un SKILL.md.
Cuatro scopes de carga
| Scope | Ubicación habitual | Uso |
|---|---|---|
| Repositorio | project/.agents/skills/<name>/SKILL.md |
Flujos de equipo ligados a scripts y estructura |
| Usuario | $HOME/.agents/skills/<name>/SKILL.md |
Flujos personales reutilizables |
| Administrador | /etc/codex/skills/<name>/SKILL.md |
Reglas proporcionadas por organización o máquina |
| Sistema | Integrado en Codex | Skills incluidos con el producto |
Codex explora desde el directorio de trabajo hacia arriba hasta la raíz del repositorio, por lo que un monorepo puede tener .agents/skills más específicos en subdirectorios. Los Skills del repositorio pueden revisarse con Git. Los de usuario no deberían asumir rutas que solo existen en un proyecto.
Versiones antiguas o plugins todavía pueden mostrar .codex/skills, pero no debe ser la ruta predeterminada para nuevos Skills compartidos. Sigue la documentación actual y la lista que expone la sesión.
Skill mínimo cargable
|
|
SKILL.md debe comenzar con YAML front matter válido:
|
|
Mantén name estable y distintivo. description explica cuándo se aplica; el cuerpo define pasos, límites y validación.
El archivo existe pero no carga
1. Comprueba la ruta real
Evita una carpeta adicional y confirma que no se llame SKILL.md.txt:
|
|
2. Comprueba los primeros bytes
Un UTF-8 BOM (EF BB BF) antes de --- puede hacer que un parser estricto muestre missing YAML frontmatter delimited by ---.
|
|
El prefijo correcto es 2D-2D-2D. Si aparece EF-BB-BF-2D-2D-2D, haz una copia y guarda UTF-8 sin BOM:
|
|
3. Revisa YAML y nombres duplicados
El front matter debe cerrarse correctamente y los valores complejos con dos puntos pueden necesitar comillas. No supongas que Skills con el mismo nombre en scopes distintos se combinan: renómbralos o conserva solo la copia deseada.
4. Abre una sesión nueva
El descubrimiento suele ocurrir al iniciar la sesión. Después de un cambio abre una sesión nueva y comprueba la lista. No elimines toda la configuración antes de verificar ruta, codificación y YAML.
Lista de aceptación
- La ruta es
.agents/skills/<name>/SKILL.md. - El primer byte inicia
---, sin UTF-8 BOM. - YAML es válido y contiene nombre estable y descripción clara.
- No existe otro Skill no deseado con el mismo nombre.
- Una sesión nueva lo muestra y lo activa según su descripción.
Referencias
- Codex Skills: https://developers.openai.com/codex/skills
- Especificación Agent Skills: https://agentskills.io/