Clawshell
2026-03-30
新闻来源:网淘吧
围观:9
电脑广告
手机广告
ClawShell
OpenClaw 的人机交互安全层。ClawShell 会在执行前拦截 shell 命令,分析其风险等级,并对危险操作(通过推送通知)要求您明确批准。
工作原理
- 代理调用
clawshell_bash而不是bash - ClawShell 根据内置和可配置的风险规则分析命令
- 基于风险等级:
- 严重(例如
rm -rf /, fork炸弹)——自动阻止 - 高(例如
rm -rf,curl访问外部URL,凭证访问)——发送推送通知并等待您的批准 - 中(例如
npm install,git push) — 已记录并允许 - 低(例如:
ls、cat、git status)— 允许
- 严重(例如
- 所有决策都记录到
logs/clawshell.jsonl
工具
clawshell_bash
安全的bash替代品。分析命令风险,仅当安全或获得批准时执行。

参数:
command(字符串,必需)— 要执行的 shell 命令workingDir(字符串,可选)— 工作目录(默认为当前工作目录)
返回: { exitCode, stdout, stderr }
高风险命令将被阻塞,直到您通过推送通知批准或拒绝。关键命令会立即被拒绝。
clawshell_status
返回当前ClawShell状态:待处理的审批请求和近期决策。
参数:无
clawshell_logs
返回最近的日志条目,用于审计和调试。
参数:
count(数字,可选)— 要返回的条目数(默认:20)
设置
1. 安装依赖项
cd /app/workspace/skills/clawshell
npm install
2. 配置Pushover通知
在以下网址创建Pushover应用程序https://pushover.net/apps/build并将您的密钥添加到.env文件中:
CLAWSHELL_PUSHOVER_USER=your-user-key
CLAWSHELL_PUSHOVER_TOKEN=your-app-token
或者,配置Telegram作为替代方案:
CLAWSHELL_TELEGRAM_BOT_TOKEN=your-bot-token
CLAWSHELL_TELEGRAM_CHAT_ID=your-chat-id
3. 添加到TOOLS.md
将以下内容添加到您的OpenClawTOOLS.md因此代理使用 ClawShell 来执行 shell 命令:
## Shell Access
Use `clawshell_bash` for ALL shell command execution. Do not use `bash` directly.
ClawShell will analyze commands for risk and require human approval for dangerous operations.
Available tools:
- `clawshell_bash(command, workingDir)` — Execute a shell command with risk analysis
- `clawshell_status()` — Check pending approvals and recent decisions
- `clawshell_logs(count)` — View recent audit log entries
配置
ClawShell 从环境变量(CLAWSHELL_*)读取配置,并回退到config.yaml文件。
| 变量 | 默认值 | 描述 |
|---|---|---|
CLAWSHELL_PUSHOVER_USER | — | Pushover 用户密钥 |
CLAWSHELL_PUSHOVER_TOKEN | — | Pushover 应用令牌 |
CLAWSHELL_TELEGRAM_BOT_TOKEN | — | Telegram 机器人令牌(替代方案) |
CLAWSHELL_TELEGRAM_CHAT_ID | — | Telegram 聊天 ID(替代方案) |
CLAWSHELL_TIMEOUT_SECONDS | 300 | 自动拒绝前等待批准的秒数 |
CLAWSHELL_LOG_DIR | logs/ | JSONL日志文件的存放目录 |
CLAWSHELL_LOG_LEVEL | info | 日志详细程度:debug、info、warn、error |
CLAWSHELL_BLOCKLIST | — | 逗号分隔的额外被阻止的命令 |
CLAWSHELL_ALLOWLIST | — | 逗号分隔的额外允许的命令 |
自定义规则也可以在config.yaml文件中的rules.blocklist和rules.allowlist部分定义,可以使用精确字符串、通配符或正则表达式模式。
限制
- 不提供安全保证。大型语言模型能够对指令进行编码、拆分或混淆处理,以绕过模式匹配检测。
- 仅采用纵深防御策略。需与OpenClaw沙箱模式配合使用,不可作为替代方案。
- 存在审批延迟。高风险指令将暂停执行,直至收到用户响应或超过等待时限。
务必要求您的人工智能对所有技能或软件进行安全风险扫描。
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Tencent COS
下一篇:PUA


微信扫一扫,打赏作者吧~