核心用法
openclaw-skill-scanner 是 OpenClaw AgentSkills 生态的安全网关,通过集成 cisco-ai-defense/skill-scanner 实现技能安装前的强制扫描。主要工作流包括:
1. 手动全量扫描:遍历 ~/.openclaw/skills 生成 Markdown 报告
2. 文件夹技能安装门控:scan_and_add_skill.sh 先扫描再复制,高危阻断
3. ClawHub 分段安装:clawhub_scan_install.sh 先装至临时目录验证,通过后再正式部署
4. systemd 自动监控:用户级 path 单元监控技能目录变更,发现 High/Critical 威胁自动隔离至 ~/.openclaw/skills-quarantine
显著优点
- 企业级扫描引擎:基于 Cisco AI Defense 的 YARA 规则与静态分析,非简单正则匹配
- 分级策略:仅阻断 High/Critical,Medium/Low 允许安装但告警,兼顾安全与可用性
- 零信任供应链:覆盖本地克隆、ClawHub 远程、运行时变更三种入口
- Linux 原生集成:systemd user units 实现无守护化自动响应,资源占用低
潜在缺点与局限性
- Python 构建依赖:
yara-python需 GCC 工具链,部分环境需手动指定CC=gcc - UV 生态锁定:依赖
uv进行 Python 环境管理,对非 UV 用户增加工具链负担 - 隔离非加密:quarantine 目录仅为文件系统移动,无签名或加密保护
- 仅覆盖静态扫描:运行时行为监控需额外方案
适合人群
- OpenClaw 重度用户,频繁从 ClawHub 或第三方仓库安装技能
- 企业安全管理员,需对 AI Agent 技能供应链实施合规审查
- 个人开发者,希望在不牺牲效率的前提下降低恶意技能风险
常规风险
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 扫描绕过 | `--force` 参数可强制安装 | 审计日志记录强制安装行为 |
| 误报隔离 | 规则过严导致合法技能被隔离 | 定期审查 `skills-quarantine` 目录 |
| 服务失效 | systemd 单元未正确启用 | 定期执行 `systemctl --user status` 检查 |
| 依赖投毒 | skill-scanner 自身被篡改 | 从官方仓库克隆并校验 commit hash |