Contrato de Activación
Usa esta habilidad cuando crees o actualices una habilidad reutilizable para Pi u otro runtime de agente.
Crea una habilidad cuando:
- un flujo de trabajo o convención se reutiliza entre sesiones;
- el comportamiento genérico del agente necesita restricciones específicas de un proyecto;
- un árbol de decisión ayuda al agente a elegir de forma segura;
- ejemplos, plantillas o referencias harían más fiable la ejecución futura.
No crees una habilidad para una tarea puntual, documentación genérica o reglas que pertenezcan al código/pruebas.
Reglas Estrictas
- Sigue
docs/skill-style-guide.mdcomo fuente normativa para la estructura y estilo de la habilidad. - Una habilidad es un contrato de runtime LLM, no documentación dirigida a humanos.
- Mantén
SKILL.mdconciso: apunta a 180–450 tokens, máximo 1000. - Usa instrucciones imperativas y puertas concretas; evita tutoriales y prosa de antecedentes.
- La
descriptiondel frontmatter debe ser una línea física segura para YAML e incluir las palabras desencadenantes primero. - No añadas una sección
Keywords; pon las palabras desencadenantes esenciales endescription. - Pon plantillas, esquemas y ejemplos generados en
assets/. - Pon razonamientos más largos o enlaces a documentación local en
references/. - Después de cambiar las habilidades del proyecto, actualiza el registro con
/skill-registry:refreshcuando esté disponible.
Puertas de Decisión
| Necesidad | Acción |
|---|---|
| Comportamiento pequeño reutilizable | Crea solo skills/{skill-name}/SKILL.md |
| Plantillas, esquemas, accesorios | Añade skills/{skill-name}/assets/ |
| Explicación más larga o casos límite | Añade skills/{skill-name}/references/ |
| Una habilidad existente ya lo cubre | Actualiza la habilidad existente en su lugar |
| La habilidad afecta el descubrimiento de delegación | Asegúrate de que las palabras desencadenantes aparezcan en description |
Pasos de Ejecución
- Lee
docs/skill-style-guide.mdantes de crear o actualizar habilidades. - Inspecciona las habilidades existentes y confirma que la nueva habilidad no duplica ninguna.
- Elige un nombre de habilidad en kebab-case que coincida con el desencadenante visible para el usuario.
- Crea o actualiza esta estructura:
skills/{skill-name}/
├── SKILL.md
├── assets/ # opcional
└── references/ # opcional
- Usa esta forma de frontmatter:
---
name: {skill-name}
description: "Trigger: {frases que los usuarios o agentes dirán}. {Qué hace esta habilidad}."
license: Apache-2.0
metadata:
author: gentleman-programming
version: "1.0"
---
- Escribe las secciones en este orden: Contrato de Activación, Reglas Estrictas, Puertas de Decisión, Pasos de Ejecución, Contrato de Salida, Referencias.
- Si esta es una habilidad empaquetada de
gentle-pi, añádela ascripts/verify-package-files.mjs. - Actualiza o documenta la ruta de actualización del registro de habilidades.
Contrato de Salida
Devuelve:
- Archivos creados o modificados.
- Si esto creó una habilidad nueva o actualizó una existente.
- Cualquier archivo de soporte
assets/oreferences/añadido. - Si se necesita verificación del paquete o actualización del registro de habilidades.
Referencias
docs/skill-style-guide.md— guía de estilo normativa para habilidades orientadas a LLM.skills/skill-registry/SKILL.md— contrato de actualización e indexación del registro.