#Desde que he actualizado mis agentes de OpenClaw no pueden adjuntar archivos en Discord

1 messages · Page 1 of 1 (latest)

gleaming canyon
#

He actualizado OpenClaw a la versión 2026.3.8 y ahora mis agentes de openclaw en discord me dicen que no pueden adjuntar archivos y creo que tampoco ejecutar comandos en la terminal.

te adjunto un trozo de mi openclaw.json:

    "id": "mrbeast",
    "workspace": "/Users/xxxxxxxx/.openclaw/workspace/teams/mrbeast",
    "tools": {
      "alsoAllow": [
        "camofox_create_tab",
        "camofox_snapshot",
        "camofox_click",
        "camofox_type",
        "camofox_navigate",
        "camofox_scroll",
        "camofox_screenshot",
        "camofox_close_tab",
        "camofox_list_tabs",
        "camofox_import_cookies"
      ],
      "deny": [
        "browser"
      ]
    }

{
  "agentId": "mrbeast",
  "match": {
    "channel": "discord",
    "accountId": "mrbeast",
    "peer": {
      "kind": "channel",
      "id": "11111111111111"
    }
  }
},

dime como lo arreglo o si necesitas algo mas

keen cloakBOT
#

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

onyx shoreBOT
#

Suena a tool policy (allow/deny) más que a un “bug” de Discord: el bot puede contestar texto normal, pero para adjuntar archivos y para ejecutar terminal el agente necesita poder llamar herramientas (message y exec). Si esas herramientas no están permitidas para ese agente/sesión, el modelo te dirá justo eso (“no puedo adjuntar / no puedo ejecutar comandos”).

1) Confirma el diagnóstico (lo más rápido)

En la máquina del gateway, pega:

openclaw --version
openclaw sandbox explain --agent mrbeast

Ese comando te dice qué herramientas están efectivamente permitidas y cuál regla las está bloqueando (global/agent/sandbox).

Docs: https://docs.openclaw.ai/gateway/sandbox-vs-tool-policy-vs-elevated

2) Arreglo típico en tu openclaw.json

En tu bloque del agente mrbeast, además de tus camofox_*, añade los grupos/herramientas que te faltan:

#
{
  id: "mrbeast",
  workspace: "/Users/xxxxxxxx/.openclaw/workspace/teams/mrbeast",
  tools: {
    alsoAllow: [
      "group:messaging", // -> message (necesario para adjuntar)
      "group:runtime",   // -> exec/process (terminal)
      "group:fs",        // -> read/write/edit (para crear/leer archivos a adjuntar)

      // tus camofox_*
      "camofox_create_tab",
      "camofox_snapshot",
      "camofox_click",
      "camofox_type",
      "camofox_navigate",
#
      "camofox_scroll",
      "camofox_screenshot",
      "camofox_close_tab",
      "camofox_list_tabs",
      "camofox_import_cookies"
    ],
    deny: ["browser"]
  }
}

Luego reinicia gateway:

openclaw gateway restart
#

Nota: deny siempre gana, y si en algún sitio tienes tools.allow no vacío (global o por sandbox), entonces todo lo no listado queda bloqueado. sandbox explain te lo chiva.

3) Si aún no adjunta: permiso de Discord

Si la tool policy está bien, el siguiente sospechoso es el permiso del bot en ese canal: en Discord el rol del bot necesita Attach Files (Adjuntar archivos) en ese canal/categoría.


Si me pegas la salida de openclaw sandbox explain --agent mrbeast (y si puedes, el error exacto que dice cuando intenta adjuntar), te digo exactamente qué clave está bloqueando y en qué nivel (global/agent/sandbox).

gleaming canyon
#

al ejecutar el comando que me has dicho, me sale esto:

agentId: mrbeast
sessionKey: agent:mrbeast:main
mainSessionKey: agent:mrbeast:main
runtime: direct
mode: off scope: agent perSession: false
workspaceAccess: none workspaceRoot: /Users/aitorortega/.openclaw/sandboxes

Sandbox tool policy:
allow (default): exec, process, read, write, edit, apply_patch, image, sessions_list, sessions_history, sessions_send, sessions_spawn, subagents, session_status
deny (default): browser, canvas, nodes, cron, gateway, telegram, whatsapp, discord, irc, googlechat, slack, signal, imessage, line

Elevated:
enabled: true
channel: (unknown)
allowedByConfig: false

Fix-it:

  • tools.sandbox.tools.allow
  • tools.sandbox.tools.deny
  • agents.list[].tools.sandbox.tools.allow
  • agents.list[].tools.sandbox.tools.deny
  • tools.elevated.enabled

yo quiero que mis agentes tengan acceso full a todo

onyx shoreBOT
#

Ese output es clave: ahí se ve que si una sesión cae en sandbox, el sandbox tool policy por defecto está denegando discord (y otros canales). Por eso en Discord te falla lo de adjuntar (y a veces también “no puedo ejecutar X”, según qué tool esté intentando usar en esa sesión).

Pero ojo: el comando que pegaste está inspeccionando la sesión main (agent:mrbeast:main). Tu problema real ocurre en la sesión del canal de Discord (agent:mrbeast:discord:channel:...).

1) Confirma si el canal de Discord está sandboxed

Ejecuta esto (con tu channelId real):

openclaw sandbox explain --session agent:mrbeast:discord:channel:11111111111111

Si ahí te sale runtime: sandbox o te vuelve a listar el “Sandbox tool policy deny … discord”, ya está explicado.


Si quieres “FULL a todo” (sin restricciones)

La forma más directa es: desactivar sandbox y usar tool profile full.

#

En openclaw.json:

{
  tools: { profile: "full" }, // global (opcional si lo quieres para todos)
  agents: {
    list: [
      {
        id: "mrbeast",
        sandbox: { mode: "off" },   // <- importante: nunca sandbox
        tools: { profile: "full" }  // <- sin allowlists base
      }
    ]
  }
}
#

Luego:

openclaw gateway restart

Con esto tu agente debería recuperar exec + envíos con adjuntos sin pelearte con la policy del sandbox.


Alternativa: mantener sandbox, pero con “FULL dentro del sandbox” (no recomendado)

Si sí o sí quieres sandbox pero sin bloqueos, tendrías que abrir la policy del sandbox (porque ahora mismo está denegando discord, etc.). Por ejemplo:

{
  tools: {
#
    sandbox: {
      tools: {
        allow: ["group:openclaw"],
        deny: []
      }
    }
  }
}

(Esto es bastante más peligroso en canales/grupos, por eso normalmente no se recomienda.)


Pásame la salida de: