#agente

1 messages · Page 1 of 1 (latest)

warped burrow
#

Como creo un nuevo agente desde la web, o como lo creo si tengo linux

indigo breachBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> âś… Mark Solution

warped burrow
#

como creo un nuevo agente y le configuro un modelo default (cloud) + 3 modelos locales, todo esto usando ollama

formal glacierBOT
#

Para crear un nuevo agente (aislado: workspace + sesiones + credenciales propias) y dejarlo con modelo default cloud + 3 modelos locales (Ollama), lo más directo hoy es vía CLI. Desde la web (Control UI) puedes editar config, pero no hay un “botón mágico” equivalente al wizard de openclaw agents add.

Docs Ăştiles:

1) Levanta Ollama y prepara 3 modelos locales

En tu host Linux:

ollama serve   # o asegúrate que el servicio esté corriendo
ollama pull <modelo_local_1>
ollama pull <modelo_local_2>
ollama pull <modelo_local_3>
ollama list
#

Para que OpenClaw los auto-descubra, la vía “simple” es NO definir models.providers.ollama y solo “activar” Ollama con:

export OLLAMA_API_KEY="ollama-local"

(En Ollama el “api key” puede ser cualquier string; es solo un opt‑in. Si corres OpenClaw como daemon/systemd, asegúrate de que esa env var también exista en el servicio.)

2) Crea el nuevo agente (Linux)

openclaw agents add <id-del-agente>

Esto abre un wizard que te crea:

  • agents.list[] (con workspace y agentDir)
  • opcionalmente bindings (si quieres que cierto canal/chat vaya a ese agente)

Verifica:

#
openclaw agents list --bindings

3) Configura: cloud como primary + 3 Ollama como fallbacks

En ~/.openclaw/openclaw.json (o desde Control UI → Config), para ese agente pon:

{
  agents: {
    defaults: {
      // “catálogo/allowlist” para que /model los muestre y permita
      models: {
        "<cloud_provider>/<cloud_model>": { alias: "cloud" },
        "ollama/<modelo_local_1>": { alias: "local1" },
        "ollama/<modelo_local_2>": { alias: "local2" },
#
        "ollama/<modelo_local_3>": { alias: "local3" }
      }
    },
    list: [
      {
        id: "<id-del-agente>",
        workspace: "~/.openclaw/workspace-<id-del-agente>",
        model: {
          primary: "<cloud_provider>/<cloud_model>",
          fallbacks: [
            "ollama/<modelo_local_1>",
            "ollama/<modelo_local_2>",
            "ollama/<modelo_local_3>"
          ]
        }
#
      }
    ]
  }
}

Reinicia Gateway para aplicar:

openclaw gateway restart

4) Ojo: credenciales cloud son por agente

Cada agente tiene su propio auth-profiles.json. Si tu “main” ya tenía el cloud andando, el nuevo agente no hereda eso automáticamente.

  • O vuelves a autenticar el provider en ese agente (con wizard / openclaw models auth ...)
  • O copias credenciales entre agentes (segĂşn tu caso):
#
  • ~/.openclaw/agents/<main>/agent/auth-profiles.json
    • → ~/.openclaw/agents/<id-del-agente>/agent/auth-profiles.json

5) Comprobar que quedĂł bien

openclaw models status --agent <id-del-agente>
openclaw models list --agent <id-del-agente>

Si me dices qué “cloud” provider estás usando (Anthropic/OpenAI/OpenRouter/etc) y dónde quieres “enganchar” el agente (solo usarlo desde Control UI/TUI, o rutear un canal/Discord específico con bindings), te paso el bloque exacto de bindings para tu caso.

warped burrow
#

ya cree un agente nuevo, ahora la sesion sera una diferente?, como selecciono el agente para hablar con el?, crear un agente nuevo actua en 2do plano o como selecciono para interactuar directamente con ese nuevo, me gustaria crear un agente diferente para cada proyecto que tengo planeado hacer

formal glacierBOT
#

SĂ­: cada agente tiene sesiones separadas.

  • Un “agent” = workspace + auth + sesiones propias (aislado de main).
  • Entonces, cuando hablas con el agente nuevo, vas a tener otro historial (otro session store) distinto al de main.
    (Internamente las keys suelen verse como agent:<agentId>:<sessionKey>.)

Cómo “seleccionar” el agente para hablar con él

Depende desde dónde estás chateando:

A) Si hablas desde la Web (Control UI / Dashboard)

En la UI hay un selector de Agent (picker) en la parte superior/ajustes. Cambias a tu agentId nuevo y listo: esa conversaciĂłn ya corre en ese agente.

Docs: https://docs.openclaw.ai/web/control-ui

B) Si hablas desde la TUI (terminal)

En la TUI puedes cambiar de agente con:

#
  • /agents (ver lista)
  • /agent <id> (cambiar)

Docs: https://docs.openclaw.ai/web/tui

C) Si hablas desde Discord (un canal/thread)

Ahí no “seleccionas” el agente con un comando en el chat normalmente: el Gateway decide qué agente responde por bindings (ruteo).

Lo típico para “un agente por proyecto” en Discord es:

  • crear un canal o thread por proyecto, y
  • poner un binding para que ese canal/thread vaya al agent del proyecto.

Docs: https://docs.openclaw.ai/concepts/multi-agent

¿El agente nuevo “actúa en 2do plano”?

No por sĂ­ solo. Crear el agente solo lo define (config/dirs). El agente solo corre cuando:

  • lo seleccionas en Control UI/TUI, o
#
  • un mensaje entrante es ruteado a Ă©l por bindings, o
  • tiene algo programado (heartbeat/cron) configurado para ese agente.

Recomendación para “un agente por proyecto”

  • Si quieres aislamiento real (archivos del proyecto, reglas, modelos, credenciales, sesiones): un agente por proyecto está perfecto.
  • Si solo quieres “separar conversaciones” pero compartir mismos archivos/credenciales: con sessions puede bastar, pero no te aĂ­sla workspace.

Dime cómo estás interactuando ahora mismo (¿Control UI web, TUI, o Discord?) y si tus “proyectos” van a vivir en threads/canales distintos en Discord, y te digo exactamente qué binding usar para rutear cada uno al agente correcto.

warped burrow
#

aunque intente cambiar de agente en la web no me deja

formal glacierBOT
#

Te cortaste (“aunque intet…”) — pero si lo que quieres decir es “aunque intenté hablarle, no me responde / sigo hablando con el main”, eso es normal en Discord.

En Discord no puedes “cambiar de agente” con un comando de chat (tipo /agent) como en la TUI. En Discord el agente se elige por routing (bindings): si no hay binding, todo cae en el agente default.

Lo que pasa ahora

  • SĂ­, tu agente nuevo tiene sesiones separadas.
  • Pero Discord sigue ruteando este canal/thread al agente default (normalmente main) hasta que lo amarres con un binding.

SoluciĂłn: crea un binding para este canal (ideal: 1 canal/thread por proyecto)

En tu openclaw.json agrega algo asĂ­:

{
  bindings: [
    {
      agentId: "proyecto1",
#
      match: {
        channel: "discord",
        peer: { kind: "channel", id: "<DISCORD_CHANNEL_ID>" }
      }
    }
  ]
}

Luego:

openclaw gateway restart

¿Cuál es el <DISCORD_CHANNEL_ID>?

Activa “Developer Mode” en Discord y haz Copy Channel ID en el canal/thread del proyecto.

#

Alternativas rápidas

  • Si quieres que TODO Discord vaya al agente nuevo (no recomendado si vas a tener muchos proyectos):
{ bindings: [{ agentId: "proyecto1", match: { channel: "discord" } }] }
  • Si quieres interactuar “directo” sin bindings: usa Control UI y ahĂ­ sĂ­ eliges el agente en el selector.

Para que te lo deje exacto (sin adivinar)

Pásame:

  1. openclaw --version
  2. openclaw agents list --bindings
    y dime: Âżquieres que este channel #agente vaya al agente nuevo, o vas a crear un canal/thread por proyecto?
#

Si en la Control UI no te deja cambiar de agente, casi siempre es porque ese Gateway no “ve” tu agente nuevo (o estás conectado a otro Gateway/config distinta).

Checklist rápido (en la máquina donde corre el Gateway, no en tu laptop si es remoto):

  1. Verifica que el agente exista en el config que está usando el Gateway
openclaw agents list --bindings

AhĂ­ tiene que aparecer tu agentId nuevo.

  1. Reinicia el Gateway (muchos cambios no se reflejan hasta restart)
openclaw gateway restart
  1. Ojo con el clásico “config (cli) vs config (service)”
    Si el Gateway corre como servicio, puede estar leyendo otro config distinto al que editaste.
#

Pega esto:

openclaw gateway status

En la salida suele mostrar algo como Config (cli) y Config (service). Si son diferentes, ahí está el problema.

  1. Confirma que la Control UI está conectada al Gateway correcto
    En la Control UI, revisa el URL/host/puerto (a veces uno tiene dos Gateways: local + VPS).

  2. Para descartar que sea solo la UI, prueba por TUI (si te funciona, el agente está bien y es tema UI/ruta):

openclaw tui
/agents
/agent <tuAgentId>

Dime exactamente qué significa “no me deja”:

#
  • ÂżNo aparece el agente en la lista (solo ves main)?
  • ÂżAparece pero al seleccionarlo vuelve a main?
  • ÂżTe da algĂşn error?

Y pega la salida de:

  • openclaw agents list --bindings
  • openclaw gateway status
warped burrow
#

quiero cambiar de agente desde el chat de la web, pero en el recuadro solo me sigue apareciendo el agente main, aunque ya reinicie el gateway y refresque la pagina

#

quiero cambiar de agente desde el chat de la web, pero en el recuadro solo me sigue apareciendo el agente main, aunque ya reinicie el gateway y refresque la pagina

formal glacierBOT
#

Si en el selector de la Control UI solo aparece main, significa que el Gateway al que estás conectado SOLO tiene 1 agente configurado (o está leyendo otro config/perfil donde tu agente nuevo no existe).

La UI no “descubre” agentes por carpetas: solo muestra lo que el Gateway expone desde agents.list.

1) Confirma en el host del Gateway qué agentes ve de verdad

En la misma máquina donde corre el Gateway (importante), ejecuta:

openclaw agents list --bindings
openclaw gateway status
openclaw config get agents.list
  • Si openclaw agents list te muestra solo main, entonces el agente nuevo no quedĂł escrito en el config que usa ese Gateway (o lo creaste en otro perfil/otra máquina).
  • En openclaw gateway status fĂ­jate especialmente en Config (service) vs Config (cli):
    • Si son distintos → estás editando un config, pero el servicio está corriendo con otro.
#

2) Caso típico: “Config (cli) != Config (service)” (perfil equivocado)

La FAQ da este fix (cuando el servicio usa otro state/profile):

openclaw gateway install --force
openclaw gateway restart

Ojo: ejecuta eso desde el mismo profile que quieres que use el servicio (si usas openclaw --profile X ..., repĂ­telo con ese profile).

(Referencia: en la FAQ, “Config (cli) y Config (service) different”.)

3) Caso tĂ­pico #2: el Gateway es remoto

Si tu Control UI apunta a un VPS/servidor remoto, pero tú corriste openclaw agents add ... en tu PC local, entonces el agente se creó localmente y el Gateway remoto jamás lo va a ver.

En ese caso, crea el agente en el servidor (o conecta por SSH y corre ahĂ­ el comando).

#

Si me pegas aquĂ­ la salida de:

  • openclaw agents list --bindings
  • openclaw gateway status

te digo exactamente cuál de los casos es y qué comando correr para que el agente nuevo aparezca en la web.

warped burrow
#

Agents:

  • main (default)
    Identity: Luna (IDENTITY.md)
    Workspace: ~/.openclaw/workspace
    Agent dir: ~/.openclaw/agents/main/agent
    Model: ollama/minimax-m2.5:cloud
    Routing rules: 0
    Routing: default (no explicit rules)
  • agenteone (AgenteOne)
    Workspace: ~/.openclaw/workspace-agenteone
    Agent dir: ~/.openclaw/agents/agenteone/agent
    Model: ollama/minimax-m2.5:cloud
    Routing rules: 0
    Routing rules map channel/account/peer to an agent. Use --bindings for full rules.
    Channel status reflects local config/creds. For live health: openclaw channels status --probe.
    ervice: systemd (enabled)
    File logs: /tmp/openclaw/openclaw-2026-02-18.log
    Command: /usr/local/bin/node /usr/lib/node_modules/openclaw/dist/index.js gateway --port 18789
    Service file: ~/.config/systemd/user/openclaw-gateway.service
    Service env: OPENCLAW_GATEWAY_PORT=18789

Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json

Gateway: bind=loopback (127.0.0.1), port=18789 (service args)
Probe target: ws://127.0.0.1:18789
Dashboard: http://127.0.0.1:18789/
Probe note: Loopback-only gateway; only local clients can connect.

Runtime: running (pid 17442, state active, sub running, last exit 0, reason 0)
RPC probe: ok

Listening: 127.0.0.1:18789
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting

formal glacierBOT
#

Perfecto: tu salida confirma que el Gateway sí tiene 2 agentes (main y agenteone) y que estás editando el mismo config que usa el servicio (Config cli/service = ~/.openclaw/openclaw.json). Así que el problema no es que el agente no exista.

Lo que te está pasando es esto:

La Control UI (chat en la web) hoy se queda en el agente “default”

En la práctica, el chat web normalmente usa el agente default (en tu caso main) y por eso en ese recuadro solo te aparece main, aunque haya más agentes en agents.list.

CĂłmo interactuar con agenteone ahora mismo (funciona seguro)

OpciĂłn 1 (recomendada): TUI

openclaw tui
/agents
/agent agenteone

Y ya chateas con ese agente (con sesiones separadas).

#

Opción 2: CLI “un turno” contra un agente
Para probar rápido que responde:

openclaw agent --agent agenteone --message "hola, estás ahí?"

Workaround si sĂ­ o sĂ­ quieres usar la web para ese agente

Cambia cuál es el default:

En tu openclaw.json, en agents.list marca agenteone como default: true y asegĂşrate que main no lo tenga:

{
  agents: {
    list: [
      { id: "agenteone", default: true, /* ... */ },
#
      { id: "main", /* ... */ }
    ]
  }
}

Luego:

openclaw gateway restart

Con eso, el chat web te debería quedar “pegado” a agenteone (porque ahora es el default).


Sobre “un agente por proyecto”