修复 OpenClaw 配置数组错误指南 | AI生成和翻译

Home 2026.03

问题: 如何修复 OpenClaw 配置错误,其中 tools.elevated.allowFrom.webchat 期望一个数组但收到了布尔值?

回答:

该错误表示您的当前 OpenClaw 配置文件中 tools.elevated.allowFrom.webchat 设置的值无效。

当前(损坏)情况 — 您的配置中最可能看起来像这样:

"tools": {
  "elevated": {
    "enabled": true,
    "allowFrom": {
      "webchat": true,
      ...
    }
  }
}

正确格式allowFrom 期望一个 对象,其中每个键(通道名称)映射到允许的来源/角色/用户的 数组而不是简单的布尔值。

快速修复

编辑您的 OpenClaw 配置文件(通常为 config.jsonopenclaw.json.openclaw/config.json 或类似文件 — 请检查您的安装目录或文档)。

将此部分更改为:

"tools": {
  "elevated": {
    "enabled": true,
    "allowFrom": {
      "webchat": true                   错误
    }
  }
}

以下这些有效格式之一:

选项 1:允许 webchat 通道的所有人(最常见的修复)

"tools": {
  "elevated": {
    "enabled": true,
    "allowFrom": {
      "webchat": ["*"]               // 通配符 = 允许 webchat 的所有用户
    }
  }
}

选项 2:仅允许特定用户/角色(更安全)

"tools": {
  "elevated": {
    "enabled": true,
    "allowFrom": {
      "webchat": [
        "user:admin",
        "user:your-username",
        "role:admin",
        "role:developer"
      ]
    }
  }
}

选项 3:允许来自多个通道

"tools": {
  "elevated": {
    "enabled": true,
    "allowFrom": {
      "webchat": ["*"],
      "discord": ["*"],
      "telegram": ["user:botadmin"]
    }
  }
}

应用修复的步骤

  1. 定位配置文件
    • 通常位于 ~/.openclaw//etc/openclaw/ 或运行 openclaw 的目录中
    • 如果命令存在,运行 openclaw config path,或检查启动日志
  2. 在编辑器中打开文件
    nano ~/.openclaw/config.json    # 或使用 vim、code 等
    
  3. 进行上述所示的更改

  4. 保存并退出

  5. 验证并重启
    openclaw doctor                # 现在应该通过或显示其他问题
    openclaw restart               # 或如果作为服务运行,使用 systemctl restart openclaw
    
  6. 测试
    再次尝试该命令:
    openclaw doctor --fix
    

如果 openclaw doctor 具有自动修复模式,可以修复 schema 问题,您也可以尝试:

openclaw doctor --repair-config

或仅

openclaw doctor

并遵循它可能提供的任何交互式提示。

注意事项

修复后,gateway 应该正确启动,您可以重试向代理授予 elevated/shell 访问权限,如果那是您的目标。

参考资料:


Back Donate