Guía / artifact / RULE
Artifact RULE: publica instrucciones
Las props de la rule
content declara cómo aplicar el entrypoint markdown. Los providers traducen la misma forma neutral a frontmatter nativo o a un archivo de instrucciones administrado.
| apply | Usa always para instrucciones globales, specific_files para apuntar a patrones o el modo smart-trigger del provider cuando declares smart_trigger. |
| entrypoint | Path markdown relativo como RULE.md. Debe estar en files y se lee como texto UTF-8. |
| file_patterns | Patrones usados con specific_files, por ejemplo **/*.go o frontend/**. Se escriben en metadata nativa de targeting. |
| smart_trigger | Descripción legible de activación para providers con discovery de rules por descripción. |
Ejemplos de los tres modos
Usa solo las props del modo elegido. Hacer explícito el modo vuelve predecible el mismo release entre providers.
// Aplicar siempre
{ "apply": "always", "entrypoint": "RULE.md" }
// Aplicar a archivos coincidentes
{
"apply": "specific_files",
"entrypoint": "RULE.md",
"file_patterns": ["**/*.go", "internal/**"]
}
// Descubrir por descripción
{
"apply": "smart_trigger",
"entrypoint": "RULE.md",
"smart_trigger": "Aplicar al revisar migraciones de base de datos"
} Escribe el markdown
Haz la rule accionable: explica la restricción, muestra el patrón preferido, identifica excepciones y alinea el scope con apply. No pongas frontmatter generado específico del provider salvo que el provider lo requiera; el applicator agrega su metadata.
- Incluye RULE.md y todas las referencias enlazadas en files.
- Usa specific_files solo cuando file_patterns exprese un scope útil; una lista vacía no lo hace.
- Sube version cuando cambie el comportamiento aunque el filename sea el mismo.
- Prueba el resultado instalado en cada provider porque el discovery nativo cambia.
Qué materializa install
Los providers escriben un archivo de rules administrado por HubBound o un bloque markdown con ownership. Cursor y Copilot usan metadata nativa para specific_files; Claude Code y otros traducen la misma intención a su formato. Un provider puede saltar modos opcionales no soportados.