Fase 1: Sistema de personalidades enriquecido - Ampliar PersonalityCfg con role, backstory, expertise, limitations - Añadir CommunicationCfg (formality, humor, personality, response_style, quirks, catchphrases) - Crear tipos puros en pkg/personality/traits.go - Implementar BuildPersonalityPrompt() para generar bloque de system prompt - Integrar personalidad en agents/runtime.go (FromConfig + concatenacion al system prompt) Fase 2: Agente plantilla - Añadir campo Template bool a AgentMeta - Filtrar agentes template en launcher (skip si template: true) - Crear agents/_template/ con config.yaml completo y documentado - Incluir TODAS las secciones (skills, shared_knowledge, schedules, security) - agent.go minimo + prompts/system.md plantilla - Actualizar dev-scripts/agent/new-agent.sh para copiar desde _template/ Fase 3: Ejemplos de personalidades - Crear agents/_template/PERSONALITIES.md con 4 perfiles: * DevOps pragmatico * Analista meticuloso * Asistente amigable * Guardian de seguridad 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
dev-scripts/agent
Scripts para crear, registrar, verificar y gestionar agentes individuales en el sistema Matrix.
Scripts
new-agent.sh
Genera el scaffold completo para un nuevo agente: config.yaml, agent.go (reglas puras), directorio de prompts y data. También registra automáticamente el import y la entrada en rulesRegistry de cmd/launcher/main.go.
./dev-scripts/agent/new-agent.sh <agent-id> "Display Name"
./dev-scripts/agent/new-agent.sh monitor-bot "Monitor Agent"
register.sh
Registra un nuevo bot en el servidor Matrix via Synapse admin API. Genera y guarda en .env: access token (MATRIX_TOKEN_*), password (MATRIX_PASSWORD_*) y pickle key (PICKLE_KEY_*).
Requiere MATRIX_ADMIN_TOKEN y MATRIX_HOMESERVER en .env.
./dev-scripts/agent/register.sh <agent-id> "Display Name"
./dev-scripts/agent/register.sh assistant-bot "Assistant"
verify.sh
Verifica o regenera los dispositivos E2EE de los agentes. Genera cross-signing keys, firma el device y guarda el recovery key en .env. Sin este paso, los mensajes del bot aparecen como "not verified by its owner".
./dev-scripts/agent/verify.sh # verifica todos los habilitados con E2EE
./dev-scripts/agent/verify.sh assistant-bot # verifica uno específico
avatar.sh
Sube una imagen como avatar del bot en Matrix y sincroniza el displayname desde el config.yaml.
./dev-scripts/agent/avatar.sh <agent-id> <image-path>
./dev-scripts/agent/avatar.sh assistant-bot static/assistant.jpg
reset-password.sh
Resetea la contraseña de un bot existente via Synapse admin API sin crear nueva sesión ni cambiar el device ID. El access token actual sigue siendo válido.
./dev-scripts/agent/reset-password.sh <agent-id>
./dev-scripts/agent/reset-password.sh assistant-bot
remove.sh
Deshabilita un agente marcándolo como enabled: false en su config.yaml. No borra datos — los preserva en agents/<id>/data/.
./dev-scripts/agent/remove.sh <agent-id>
list.sh
Muestra todos los agentes registrados con su estado (running/stopped/disabled), versión y descripción en una tabla formateada.
./dev-scripts/agent/list.sh
Flujo típico para un nuevo agente
# 1. Crear scaffold
./dev-scripts/agent/new-agent.sh mi-bot "Mi Bot"
# 2. Editar config, reglas y prompt
# agents/mi-bot/config.yaml
# agents/mi-bot/agent.go
# agents/mi-bot/prompts/system.md
# 3. Registrar en Matrix
./dev-scripts/agent/register.sh mi-bot "Mi Bot"
# 4. Verificar E2EE
./dev-scripts/agent/verify.sh mi-bot
# 5. Arrancar
./dev-scripts/server/start.sh