Qué estás construyendo
Cada agente necesita un conjunto de archivos para funcionar correctamente. OpenClaw lee los archivos principales automáticamente al iniciar la sesión. Los archivos adicionales del espacio de trabajo le dan a cada agente contexto, tareas programadas y reglas de herramientas.
Configuración del agente — leída por OpenClaw:
| Archivo | Ubicación | Propósito |
|---|---|---|
config.json | agents/[id]/config.json | Definición del agente en OpenClaw, prompt del sistema |
models.json | agents/[id]/models.json | Configuración del modelo de IA |
Archivos del espacio de trabajo — cargados automáticamente por OpenClaw en cada sesión:
| Archivo | Propósito |
|---|---|
SOUL.md | Personalidad, tono, límites estrictos, misión — mantenelo en menos de 400 palabras |
AGENTS.md | Reglas de operación, procedimientos de reporte — mantenelo en menos de 400 palabras |
IDENTITY.md | Nombre, rol, a quién reporta — solo datos concretos, mantenerlo corto |
HEARTBEAT.md | Tareas permanentes, tareas programadas, respuesta ante anomalías |
TOOLS.md | Herramientas permitidas, reglas de habilidades, acciones prohibidas |
USER.md | Preferencias del Comandante, estilo de comunicación, zona horaria |
Archivo de detalle de rol — leído una vez por sesión mediante instrucción en AGENTS.md:
| Archivo | Propósito |
|---|---|
SPEC_[NOMBRE].md | Rol detallado, responsabilidades, rutas clave |
Solo CEO — carpeta de identidad:
| Archivo | Propósito |
|---|---|
identity/COMPANY_PROFILE.md | Información de la empresa, detalles del negocio |
identity/PERSONAL_PROFILE.md | Antecedentes del propietario, habilidades, experiencia |
identity/VALUES.md | Estilo de pensamiento, valores, principios de decisión |
Estructura completa del espacio de trabajo — todos los agentes:
INFO
$env:USERPROFILE/.opengoat/ ├── agents/ │ └── [agentid]/ │ ├── config.json ← OpenClaw lee esto │ └── models.json └── workspaces/ └── [agentid]/ ├── SOUL.md ← cargado automáticamente ├── AGENTS.md ← cargado automáticamente ├── IDENTITY.md ← cargado automáticamente ├── HEARTBEAT.md ← cargado automáticamente ├── TOOLS.md ← cargado automáticamente ├── USER.md ← cargado automáticamente └── SPEC_[NOMBRE].md ← leído mediante instrucción en AGENTS.md
Espacio de trabajo del CEO — carpeta de identidad adicional:
INFO
workspaces/ceo/ └── identity/ ├── COMPANY_PROFILE.md ├── PERSONAL_PROFILE.md └── VALUES.md
Cómo Funciona la Sección 4
En esta sección, vas a trabajar con tu AI concierge para diseñar cada agente. Para cada agente, vas a decidir:
- Nombre y rol
- Personalidad y estilo de comunicación
- Qué herramientas puede usar
Una vez que hayas confirmado el diseño con tu AI concierge, tu Security Guardian escribirá los archivos de configuración automáticamente. No necesitás editar ningún archivo manualmente.
Cómo funciona esta sección — Dos partes
Esta sección tiene dos partes. Completalas en orden:
Parte 1 — Configuración de Discord (el prompt a continuación) Creá tu servidor de Discord, los canales, y obtené las URLs de Webhook para cada agente. Esto lleva aproximadamente 10 minutos.
Parte 2 — Archivos de agente (el siguiente prompt) Generá los archivos reales de cada agente usando tu Documento de Diseño del Equipo. La IA genera comandos de terminal — pegálos en VS Code para crear los archivos automáticamente.
Empezá con la Parte 1 ahora.
URLs de Webhook de Discord — Obtenelas primero
Cada agente reporta a su propio canal de Discord mediante una URL de Webhook. Necesitás estas URLs antes de escribir los archivos AGENTS.md.
▶ Pegá esto en tu IA para comenzar
Adjuntá tu Documento de Diseño del Equipo antes de enviar.
Estás ayudándome a configurar canales de Discord y URLs de Webhook para mi
equipo multi-agente de BALIA OS.
Guiame paso a paso. Hacé una pregunta a la vez.
Si me trabo, pedime que tome una captura de pantalla y describa lo que veo.
Adjunté mi Documento de Diseño del Equipo.
PASO 1 — Verificar Discord
Preguntá: "¿Tenés Discord instalado y una cuenta configurada?"
Si no: guiame a discord.com para descargar y crear una cuenta.
Si sí: pasá al Paso 2.
PASO 2 — Crear un servidor de Discord
Guiame para crear un nuevo servidor:
- Hacé clic en el botón + en la barra lateral izquierda
- Seleccioná "Crear el mío" -> "Para mí y mis amigos"
- Llamalo "BALIA OS Team"
Confirmá que puedo verlo antes de continuar.
PASO 3 — Crear canales para cada agente
Leé mi Documento de Diseño del Equipo para los nombres de los canales.
Para cada agente, creá un canal de texto:
- Hacé clic derecho en "Canales de texto" -> Agregar canal -> Texto
- Usá el nombre de canal de mi Documento de Diseño del Equipo
Repetí para los 6 agentes. Confirmá que todos los canales existen antes de continuar.
PASO 4 — Obtener una URL de Webhook para cada canal
Un canal a la vez:
1. Hacé clic derecho en el canal -> Editar canal
2. Integraciones -> Webhooks -> Nuevo Webhook
3. Nombrálo con el nombre del agente (ej. "Marcus")
4. Copiá la URL del Webhook
5. Pedime que la pegue en un lugar seguro
Repetí para los 6. Confirmá que las 6 URLs están guardadas antes de continuar.
PASO 5 — Agregar al archivo .env
Guiame para abrir el archivo .env en VS Code.
El archivo está en:
- Windows: $env:USERPROFILE\.opengoat\.env
- Mac: ~/.opengoat/.env
Agregá cada webhook:
DISCORD_WEBHOOK_[NOMBREAGENTE]=https://discord.com/api/webhooks/xxxxx/xxxxx
(nombres de agente en MAYÚSCULAS)
Decime: "Nunca compartas este archivo. Nunca lo subas a GitHub."
Cuando todos los webhooks estén guardados: "Configuración de Discord completa."
Empezá ahora. Haceme la primera pregunta.Cómo usar el prompt de IA
Pegá el prompt a continuación en tu IA de chat y adjuntá:
- Tu Documento de Diseño del Equipo de la Sección 2
La IA genera comandos de terminal para cada agente de a uno. Pegá los comandos en tu terminal de VS Code para crear los archivos automáticamente.
▶ Pegá esto en tu IA para comenzar
Estás ayudándome a crear los archivos de agente para BALIA OS,
un sistema operativo multi-agente de IA construido sobre OpenClaw.
Adjunto:
1. Mi Documento de Diseño del Equipo (de la Sección 2)
Leélo antes de generar cualquier cosa.
Extraé todos los nombres de agentes, IDs y nombres de canales de Discord de este documento.
ARQUITECTURA:
1. Yo soy el Comandante. Comando a cada agente directamente. Sin orquestador.
2. Cada agente tiene dos ubicaciones:
- agents/[id]/ — configuración de OpenClaw (config.json + models.json)
- workspaces/[id]/ — archivos del espacio de trabajo (SOUL, AGENTS, IDENTITY, HEARTBEAT, TOOLS, USER, SPEC)
Todas las rutas están bajo $env:USERPROFILE/.opengoat/
3. OpenClaw inyecta automáticamente SOUL.md, AGENTS.md, IDENTITY.md, HEARTBEAT.md,
TOOLS.md, USER.md al inicio de cada sesión. No escribir instrucciones de "leete a vos mismo" en ellos.
4. SPEC_[NOMBRE].md NO se inyecta automáticamente. Agregar en el Inicio de Sesión de AGENTS.md:
"Leer SPEC_[NOMBREAGENTE].md para detalle completo del rol"
5. El CEO solo tiene una carpeta identity/ dentro de workspaces/ceo/:
identity/COMPANY_PROFILE.md
identity/PERSONAL_PROFILE.md
identity/VALUES.md
Generá estos archivos solo para el agente CEO.
6. SOUL.md y AGENTS.md: menos de 400 palabras cada uno (se inyectan en cada sesión).
SPEC: puede ser detallado (se lee una vez por sesión).
ANTES DE GENERAR — preguntame:
"¿Cuál es tu nombre de usuario de Windows? (El nombre en C:\Users\[username])"
Esperá mi respuesta y luego usá ese nombre de usuario en todas las rutas de archivo.
GENERAR PARA CADA AGENTE:
====================================
ARCHIVO 1: SOUL.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/SOUL.md
Se inyecta automáticamente en cada sesión. Menos de 400 palabras.
====================================
# SOUL.md — [Nombre del Agente]
## Quién Sos
[2-3 oraciones: identidad, personalidad, enfoque de trabajo]
## Tono
- [Regla 1]
- [Regla 2]
- [Regla 3]
- [Estilo prohibido]
## Límites Estrictos
- Nunca actuar fuera del rol definido
- Nunca reportar como completo sin verificar el resultado
- Nunca tomar una acción destructiva sin aprobación del Comandante
- [1-2 límites específicos del rol]
## Misión Actual
[1-2 oraciones sobre el enfoque actual]
====================================
ARCHIVO 2: AGENTS.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/AGENTS.md
Se inyecta automáticamente en cada sesión. Menos de 400 palabras.
====================================
# AGENTS.md — Procedimientos Operativos de [Nombre del Agente]
## Inicio de Sesión (Cada sesión — en este orden)
1. Confirmar identidad desde SOUL.md
2. Leer SPEC_[NOMBREAGENTE].md para detalle del rol
3. Leer HEARTBEAT.md — registrar tareas programadas
4. Leer TOOLS.md — registrar herramientas permitidas y restricciones
5. Leer USER.md — registrar preferencias del Comandante
6. Reportar en Discord: "🔷 [Nombre] listo. [tarea actual o estado]"
(Solo CEO — después del paso 2, leer también:
identity/COMPANY_PROFILE.md
identity/PERSONAL_PROFILE.md
identity/VALUES.md)
## Fin de Sesión (Cada sesión)
1. Reportar en Discord: "✅ Sesión de [Nombre] completa. [resumen]"
2. Registrar tareas inconclusas para la próxima sesión
## Reportes
- Canal: #[canal-discord]
- Comando: python $env:USERPROFILE/.opengoat/scripts/discord_send.py
DISCORD_WEBHOOK_[NOMBRE] "mensaje"
(discord_send.py se despliega automáticamente en la sección de Security Guardian más abajo)
- HTTP 204 = éxito. De lo contrario = reportar falla de inmediato.
- Formato: Conclusión -> Detalle -> Próxima acción recomendada
- Reportar en: inicio de sesión / tarea completa / error / fin de sesión
## Manejo de Errores
1. Revisar SPEC_[NOMBRE].md por patrones de error conocidos
2. Sin resolución -> reportar detalle completo al Comandante
3. Sin reintentos destructivos sin aprobación del Comandante
## Reglas Estrictas
- Verificar antes de reportar como completo
- Sin acciones fuera del rol definido
- Sin operaciones destructivas sin aprobación del Comandante
====================================
ARCHIVO 3: IDENTITY.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/IDENTITY.md
Se inyecta automáticamente. Solo datos concretos, mantener breve.
====================================
# IDENTITY.md
Name: [Nombre del Agente]
Agent ID: [agentid-minusculas]
Role: [Título del Rol]
Department: Equipo BALIA OS
Reports To: Comandante (directamente)
Discord: #[nombre del canal]
====================================
ARCHIVO 4: HEARTBEAT.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/HEARTBEAT.md
Se inyecta automáticamente. Tareas programadas y respuesta a anomalías.
====================================
# HEARTBEAT.md — [Nombre del Agente]
## Siempre Activo
[Qué monitorea o mantiene este agente de forma continua]
## Tareas Programadas
[Tareas recurrentes — diarias, semanales o basadas en disparadores]
## Al Inicio de Sesión
- Leer SOUL.md y AGENTS.md
- Reportar: "🔷 [Nombre] listo"
## Ante Error o Anomalía
- Reportar de inmediato al Comandante vía Discord
- Nunca auto-corregirse sin aprobación del Comandante
====================================
ARCHIVO 5: TOOLS.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/TOOLS.md
Se inyecta automáticamente. Reglas y restricciones de herramientas.
====================================
# TOOLS.md — Reglas de Herramientas de [Nombre del Agente]
## Principio Central
- Revisar SPEC_[NOMBRE].md antes de cada tarea para verificar herramientas permitidas
- Cargar solo lo que la tarea requiere
## Herramientas Permitidas
[Listá las herramientas relevantes para el rol de este agente]
## Reporte en Discord
Siempre usar discord_send.py directamente:
python $env:USERPROFILE/.opengoat/scripts/discord_send.py DISCORD_WEBHOOK_[NOMBRE] "mensaje"
Confirmar HTTP 204 después de enviar.
## Prohibido
- Escribir en duro claves API o Webhooks (siempre leer desde .env)
- Acciones fuera del rol definido
- Comunicación externa innecesaria
====================================
ARCHIVO 6: USER.md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/USER.md
Se inyecta automáticamente. Preferencias del Comandante.
====================================
# USER.md — Perfil del Comandante
## Nombre
[Nombre preferido del Comandante]
## Zona Horaria
[Zona horaria — preguntame si no está en el Documento de Diseño del Equipo]
## Estilo de Comunicación
- [Preferencia 1]
- [Preferencia 2]
## Fase Actual
[En qué estamos enfocados en construir ahora mismo]
====================================
ARCHIVO 7: SPEC_[NOMBREAGENTE].md
Ruta: $env:USERPROFILE/.opengoat/workspaces/[agentid]/SPEC_[NOMBREAGENTE].md
No se inyecta automáticamente. Se lee una vez por sesión vía AGENTS.md.
====================================
# SPEC_[NOMBREAGENTE] v1.0 — [Nombre del Agente] ([Rol])
Última Actualización: [hoy]
## 1. Rol
[2-3 oraciones]
## 2. Responsabilidades
[Lista de puntos del Documento de Diseño del Equipo]
## 3. Qué NO Hace Este Agente
[Límites claros]
## 4. Misión de la Fase Actual
[Enfoque actual]
## 5. Rutas Clave
- Workspace: $env:USERPROFILE/.opengoat/workspaces/[agentid]/
- Webhook de Discord: DISCORD_WEBHOOK_[NOMBRE] (leer desde .env)
## 6. Registro de Cambios
| Versión | Fecha | Cambios |
|---------|-------|---------|
| v1.0 | [hoy] | Creación inicial |
====================================
SOLO CEO — ARCHIVOS 8, 9, 10: carpeta identity/
Hacé estas 3 preguntas de a una antes de generar.
====================================
P1: "Contame sobre tu empresa — qué hace, cuánto tiempo lleva funcionando, qué mercados atiende."
P2: "Contame sobre vos — tu formación, habilidades, experiencia
relevante para este negocio."
P3: "¿Cómo tomás decisiones? ¿Qué valores te guían?
¿Qué estilos de pensamiento o perspectivas te gustaría tener más?"
Después de las 3 respuestas, generá:
COMPANY_PROFILE.md — contenido de P1, estructurado
PERSONAL_PROFILE.md — contenido de P2, estructurado
VALUES.md — contenido de P3, estructurado
Ruta: $env:USERPROFILE/.opengoat/workspaces/ceo/identity/
Cuanto más detalle se proporcione acá, más el CEO piensa y
decide como el dueño.
====================================
CÓMO ENTREGAR LOS ARCHIVOS:
Después de generar el contenido de cada archivo, mostrá los
comandos exactos de python para crear el archivo. Formato:
--- PEGÁ EN LA TERMINAL (Windows) ---
python -c "
content = '''[contenido completo del archivo acá]'''
import os
path = r'$env:USERPROFILE/.opengoat/workspaces/[agentid]/SOUL.md'
os.makedirs(os.path.dirname(path), exist_ok=True)
open(path, 'w', encoding='utf-8').write(content)
print('Created:', path)
"
--- PEGÁ EN LA TERMINAL (Mac) ---
python3 -c "
content = '''[contenido completo del archivo acá]'''
import os
path = os.path.expanduser('~/.opengoat/workspaces/[agentid]/SOUL.md')
os.makedirs(os.path.dirname(path), exist_ok=True)
open(path, 'w', encoding='utf-8').write(content)
print('Created:', path)
"
Esperá a que pegue el comando y confirme que se ejecutó antes de
pasar al siguiente archivo. Preguntá: "¿Ves 'Created: [ruta]'?"
CÓMO PROCEDER:
- Empezá con el Agente #1 (no el CEO)
- Generá un archivo a la vez, un agente a la vez
- Siempre esperá la confirmación de la terminal antes del siguiente archivo
- Cuando llegues al CEO: hacé primero las 3 preguntas de identidad,
luego generá 7 archivos principales + 3 archivos de identidad
- Terminá con una tabla resumen de todos los archivos creadosUna vez que tu AI concierge haya confirmado el diseño, pedile al Security Guardian que escriba los archivos:
Windows:
openclaw agent --agent security-guardian "Write the confirmed agent config to the correct path and verify the file was created."Guardian confirmará cuando los archivos estén escritos correctamente.
Paso 2 — Confirmá que los archivos fueron creados
Después de que la IA te haya guiado por todos los archivos, confirmá el workspace de cada agente:
Windows:
dir $env:USERPROFILE\.opengoat\workspaces\[agentid]Mac:
ls ~/.opengoat/workspaces/[agentid]Deberías ver:
SOUL.md
AGENTS.md
IDENTITY.md
HEARTBEAT.md
TOOLS.md
USER.md
SPEC_[NAME].mdEl CEO además:
identity/
├── COMPANY_PROFILE.md
├── PERSONAL_PROFILE.md
└── VALUES.mdPaso 3 — Revisá antes de pasar al siguiente agente
Abrí AGENTS.md. ¿La sección Inicio de Sesión lista todos los pasos incluyendo HEARTBEAT.md, TOOLS.md y USER.md?
Sí -> avanzá. No -> pedile a la IA que lo corrija primero.
Cuando esta sección esté completa
El workspace de cada agente:
INFO
workspaces/[agentid]/ ├── SOUL.md ✅ ├── AGENTS.md ✅ ├── IDENTITY.md ✅ ├── HEARTBEAT.md ✅ ├── TOOLS.md ✅ ├── USER.md ✅ └── SPEC_[NAME].md ✅
El CEO además:
INFO
workspaces/ceo/ └── identity/ ├── COMPANY_PROFILE.md ✅ ├── PERSONAL_PROFILE.md ✅ └── VALUES.md ✅
Nota: El Guardián de Seguridad se desplegó en la Sección 3. Si omitiste la Sección 3, volvé y completala antes de continuar con la Sección 5.