9a77ef59e8
Se añaden las reglas y commands para el flujo trunk-based completo: - fix_issue.md: guía para implementar issues (rama → tests → merge) - git-branch.md: command para crear ramas issue/<NNNN>-<slug> - git-push.md: actualizado con flujo de ramas, tests obligatorios y feature flags - create_issue.md: ajustado formato de numeración a 4 dígitos - index.md: añadida sección de flujo de desarrollo y regla fix_issue - CLAUDE.md: referencia a la nueva regla fix_issue - feature_flags.json: archivo base para flags de despliegue por fases Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Reglas del proyecto
Guias operativas para LLMs que trabajan en este codebase. Cada regla describe como ejecutar una tarea especifica respetando la arquitectura y convenciones del proyecto.
Reglas disponibles
| Regla | Archivo | Cuando aplicarla |
|---|---|---|
| Crear agente | create_agent.md | Al crear un nuevo bot/agente Matrix completo |
| Crear herramienta | create_tool.md | Al añadir una nueva tool para LLM function calling |
| Crear comando | create_command.md | Al añadir un comando directo (!xxx) a un agente |
| Crear issue | create_issue.md | Al crear un nuevo issue/feature request en dev/issues/ |
| Arreglar issue | fix_issue.md | Al implementar/arreglar un issue existente de dev/issues/ |
Cuando consultar las reglas
- Crear agente: cuando el usuario pida crear un nuevo bot, agente, o asistente. Incluye la estructura de archivos, reglas puras, config YAML, system prompt y registro en el launcher.
- Crear herramienta: cuando el usuario pida añadir una nueva herramienta/tool al sistema. Incluye el patron Def (puro) + Exec (impuro), registro en runtime.go y habilitacion en config.
- Crear comando: cuando el usuario pida añadir un comando directo (!xxx) a un agente. Los comandos se resuelven sin pasar por reglas ni LLM.
- Crear issue: cuando el usuario pida crear un nuevo issue, feature request o task. Usa el template en
.claude/templates/issue.md. - Arreglar issue: cuando el usuario pida implementar, arreglar o trabajar en un issue existente. Incluye crear rama (
/git-branch), implementar las tareas con tests, cerrar el issue, e integrar a master (/git-push).
Flujo de desarrollo (TBD)
El proyecto usa trunk-based development. Nunca trabajar directamente en master.
/git-branch— crea ramaissue/<NNNN>-<slug>desde master- Implementar cambios + tests en la rama
/git-push— merge --no-ff a master, push, cleanup rama
Comandos disponibles en .claude/commands/:
git-branch.md— crear rama de trabajogit-push.md— integrar rama a master y publicar
Feature flags opcionales en dev/feature_flags.json (solo para features que se despliegan en fases).
Principio general
Todas las reglas respetan el patron pure core / impure shell:
pkg/es puro — nunca añadir side effectsshell/es impuro — todo I/O va aquiagents/compone ambos — reglas puras + ensamblado con shelltools/sigue el mismo patron:Def(datos puros) +Exec(funcion impura)