feat: import agents_and_robots platform as unibots (Matrix-out, unibus transport)
Reemplaza el scaffold del echobot por la plataforma completa de bots traida desde ~/DataProyects/Github/agents_and_robots tras la operacion Matrix-out: los bots ya no hablan por Matrix sino por el bus unibus (modelo todo-rooms + E2E via shell/transportunibus sobre github.com/enmanuel/unibus/pkg/client). - go.mod: replace de unibus -> ../unibus y de fn-registry -> ../../../.. (paths relativos reajustados a la nueva ubicacion dentro de fn_registry). - app.md: bump a 0.2.0, descripcion + arquitectura + comandos + gotchas reales. - modulo Go conservado como github.com/enmanuel/agents (sin reescribir imports). agents_and_robots queda archivado como museo de la era Matrix.
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
# 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`.
|
||||
|
||||
```bash
|
||||
./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`.
|
||||
|
||||
```bash
|
||||
./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".
|
||||
|
||||
```bash
|
||||
./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`.
|
||||
|
||||
```bash
|
||||
./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.
|
||||
|
||||
```bash
|
||||
./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/`.
|
||||
|
||||
```bash
|
||||
./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.
|
||||
|
||||
```bash
|
||||
./dev-scripts/agent/list.sh
|
||||
```
|
||||
|
||||
## Flujo típico para un nuevo agente
|
||||
|
||||
```bash
|
||||
# 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
|
||||
```
|
||||
Reference in New Issue
Block a user