名称: clawguard
描述: 安装并配置 ClawGuard 安全插件——一个基于 LLM 作为裁判的安全护栏,用于检测并拦截有风险的工具调用
元数据: {"openclaw":{"emoji":"🛡️","homepage":"https://github.com/capsulesecurity/clawguard"}}
ClawGuard 是一个安全插件,它利用 LLM 作为裁判,在执行前评估工具调用,以检测并可选地拦截高风险操作。
安装 ClawGuard 前,请确保网关的聊天补全端点已启用:
openclaw config set gateway.http.endpoints.chatCompletions.enabled true
从 npm 安装插件:
openclaw plugins install @capsulesecurity/clawguard
安装完成后,重启网关以加载插件。
如果在 Docker 中运行 OpenClaw:
# 安装插件
docker compose run --rm openclaw-cli plugins install @capsulesecurity/clawguard
# 重启网关并使用 --force-recreate 重新加载环境变量
docker compose up -d --force-recreate openclaw-gateway
重要提示: 重启时务必使用 --force-recreate。普通的 docker compose restart 不会重新加载环境变量。
检查网关日志中的初始化消息:
[clawguard] Initialized (logging: true, security: true, block: true, metrics: enabled)
通过 openclaw config set plugins.clawguard.<选项> <值> 配置 ClawGuard:
| 选项 | 默认值 | 描述 |
|---|---|---|
| enabled | true | 启用/禁用插件 |
| logToolCalls | true | 将工具调用 JSON 记录到网关日志 |
| securityCheckEnabled | true | 运行 LLM 安全评估 |
| blockOnRisk | true | 拦截高/严重风险的工具调用 |
| maxContextWords | 2000 | 用于评估的会话上下文字数限制 |
| timeoutMs | 15000 | 安全检查超时时间(毫秒) |
| gatewayHost | 127.0.0.1 | 用于 LLM 调用的网关主机 |
| gatewayPort | 18789 | 用于 LLM 调用的网关端口 |
| metricsEnabled | true | 启用匿名使用指标收集 |
# 禁用拦截(仅日志模式)
openclaw config set plugins.clawguard.blockOnRisk false
# 为较慢的模型增加超时时间
openclaw config set plugins.clawguard.timeoutMs 30000
# 禁用指标收集
openclaw config set plugins.clawguard.metricsEnabled false
ClawGuard 内部调用网关的 /v1/chat/completions 端点。如果遇到 401 未授权错误:
# 检查配置中的令牌
cat ~/.openclaw/openclaw.json | grep -A2 '"token"'
```
对于 Docker,请确保 .env 文件中包含正确的 OPENCLAW_GATEWAY_TOKEN,并在重启时使用 --force-recreate。
聊天补全端点未启用。请运行:
openclaw config set gateway.http.endpoints.chatCompletions.enabled true
环境变量与配置中的令牌不匹配。请参阅上方的“网关认证”部分。
openclaw plugins list 是否显示 clawguardClawGuard 注册了一个 before_tool_call 钩子,该钩子会:
logToolCalls 已启用)blockOnRisk 已启用)安全评估使用您在 OpenClaw 中配置的 LLM 提供商,因此可与您设置的任何模型配合使用。