NanoClaw 安全哨兵
在安装和运行 NanoClaw 技能前后检查已知安全风险。
证据显示采用主机侧 IPC、Ed25519 签名校验、固定公钥、受限路径、符号链接拒绝、缓存原子写入、隔离容器访问基线及漂移隔离/恢复,数据流和远程 feed 也有说明。扣分原因是默认自动恢复会修改关键文件,安装流程没有强制用户确认,缓存允许使用过期数据,且发布者身份未验证、密钥信任建立路径不完整。
文档覆盖安装、集成、故障排查和异常日志;代码包含超时、签名失败拒绝、原子写入及并发刷新控制。扣分原因是静态审查未执行,不能超过 10 分;代码仍标注版本范围匹配为 TODO,与变更日志声称已支持范围匹配不一致,且部分导入、路径和运行环境依赖未由选定文件充分复现。
目标用户、NanoClaw 场景、触发条件和非适用范围基本明确,并提供多种 MCP 工具。扣分原因是未提供中文支持或本地化输出,核心 advisory feed 依赖单一海外 HTTPS 服务;虽然有缓存和过期回退说明,但大陆网络可达性和离线行为边界不足。
目录内文档层次较完整,包含安装、配置、示例、FAQ、故障排查、限制、卸载、AGPL-3.0-or-later、版本号和变更日志,并列出支持邮箱与问题入口。扣分原因是维护责任主体较笼统,更新路径主要依赖外部站点,文档中的若干版本、路径和实现描述存在不一致。
预期可完成 advisory 检查、签名验证和文件完整性监控,并给出可直接调用的 MCP 示例。扣分原因是静态证据不能证明端到端可用;版本匹配 TODO、依赖宿主集成和外部 feed,且某些输出/自动恢复流程仍需人工审查,因此仅部分达到可直接使用。
存在提交代码、类型定义、固定公钥、策略文件、变更日志和具体接口示例,支持有限审计。扣分原因是静态审查未执行,选定材料未提供可核验 CI、完整测试套件或独立第三方运行证据,营销性声明如“zero false positives”和“production-ready”无法验证。
- 安装前应确认 NanoClaw 版本、Node.js 版本、宿主路径和所有 MCP/IPC 集成点;文档中的 .js 导入与提供的 .ts 源文件可能需要构建步骤。
- 不要把签名有效或无 advisory 误解为绝对安全;签名密钥受损、零日漏洞、恶意已签名包和检查后修改仍未被解决。
- 在生产环境谨慎启用默认自动恢复,并保留 quarantine、patch 和审计日志;确认过期缓存不会被当作最新安全结论。
- 版本范围匹配代码存在 TODO,需在部署前核对具体 skill 版本匹配逻辑。
- 核心 feed 依赖海外域名;应验证大陆网络连通性并准备受信任的镜像或明确的离线策略。
这个 Skill 能做什么,适合哪些场景?
ClawSec for NanoClaw 是面向 NanoClaw WhatsApp 机器人的安全公告监控技能。它通过 MCP 工具检查已安装或待安装技能是否匹配安全公告,并提供可利用性信息辅助风险分级。技能还包含软件包签名验证、文件完整性检查、基线状态查看和审计日志验证。它适合需要持续监控技能供应链风险的 NanoClaw 部署,但不用于代码审查、性能排障或一般调试。
调用 clawsec_check_skill_safety 检查待安装技能;调用 clawsec_check_advisories 扫描安装目录中的技能;调用 clawsec_list_advisories 按严重性、类型或可利用性筛选公告;调用 clawsec_verify_skill_package 验证软件包;调用 clawsec_refresh_cache 刷新公告缓存;调用 clawsec_check_integrity、clawsec_approve_change 和 clawsec_integrity_status 检查或批准文件变更;调用 clawsec_verify_audit 验证审计日志。它从 https://clawsec.prompt.security/advisories/feed.json 获取签名公告源,默认缓存位于 /workspace/project/data/clawsec-advisory-cache.json。
- NanoClaw 管理者准备安装新技能时,先检查技能名称和可选版本是否存在安全公告。
- 机器人维护者被问及“我的技能安全吗?”时,扫描默认或指定安装目录。
- 安全人员调查技能的可疑行为时,查看相关公告及其可利用性背景。
- 运维人员进行定期审计时,按计划检查高严重性或高可利用性问题。
- 独立安装技能压缩包时,验证发布清单、签名、公钥指纹和文件校验和。
这个 Skill 有哪些优点和局限?
- 覆盖安装前检查、已安装技能审计和公告浏览。
- 同时使用严重性与可利用性背景辅助优先级判断。
- 支持签名公告源、软件包验证和文件完整性相关操作。
- 明确面向 NanoClaw,并提供每日定时审计示例。
- 依赖网络可访问性和 MCP 工具运行环境。
- 资料未提供完整 INSTALL.md 或 docs 内容,因此具体部署配置仍需查阅仓库文件。
- 不承担代码审查、性能问题分析或一般调试。
- 默认审计目录和缓存路径可能需要根据实际环境调整。
如何安装这个 Skill?
使用 Vercel Skills CLI 安装:npx skills add prompt-security/clawsec --skill clawsec-nanoclaw -a openclaw -y。提供的资料没有说明 NanoClaw 的完整手动部署步骤;独立安装时,应先按照 SKILL.md 中的发布清单验证流程验证后再解压或安装。
如何使用这个 Skill?
安装新技能前调用 clawsec_check_skill_safety({skillName: "new-skill", skillVersion: "1.0.0"})。审计已安装技能时调用 clawsec_check_advisories({installRoot: "/home/node/.claude/skills"}),并重点关注 severity 为 critical 或 exploitability_score 为 high 的匹配项。用户也可以直接提出“我的技能安全吗?”或“检查 NanoClaw 技能安全性”。