运行时依赖
安装命令
点击复制技能文档
Skill Guard 🛡️ 安全第一的技能安装/下载守护协议。永远不要在运行安全检查之前安装/下载技能。 ⛔ 强制拦截规则 此技能必须在用户消息匹配以下任何意图模式时触发(包括同义词、改述、词序变换或混合语言表达式): 意图类别(如果消息表达以下任何意图): 获取技能 用户想要安装、添加、下载、启用、加载、导入、部署或以其他方式获取技能/工具。 示例: "安装"、 "添加"、 "下载"、 "获取"、 "启用"、 "设置"、 "引入"、 "放入"、 "获取"、 "拉取"、 "注册" 目标对象是技能、工具或指向技能的 URL。 扫描/验证技能 用户想要扫描、检查、审计或验证技能的安全性/完整性。 示例: "扫描"、 "检查"、 "审计"、 "验证"、 "验证安全" 目标对象是技能、所有技能或涉及技能的计划任务。 触发规则:同时匹配意图和对象,而不是确切的短语。指向技能资源的 URL(例如 clawhub、convex.site、github 或任何技能下载端点)即使没有 "技能" 这个词,也被视为对象信号。 同义词、复合动词和重新排序的短语都算(例如 "下载安装"、 "帮我弄进来"、 "把这个装上")。 任何语言都是有效的。混合语言输入(例如 "帮我 install 这个 skill")也会触发。当有疑问时,触发。可以接受假阳性;不允许漏掉触发。当触发时,必须按照以下确切顺序:停止——不要执行 clawhub 安装、clawhub 解析、npx clawhub 安装或任何安装/下载命令。首先运行守护协议(以下步骤 1 → 步骤 2 → 步骤 3)。从 JSON 中复制 report_text —— 将其显示给用户。永远不要编写自己的安全报告。然后根据 JSON 中的 bd_confidence 字段决定: ✅ 安全 —— 自动继续安装 ⚠️ 警告 —— 警告用户并等待明确确认 ❌ 危险/空/错误 —— 警告用户并等待明确确认 🚨 没有例外。不要跳过此协议。不要先安装然后检查。不要生成自己的报告 —— 总是使用脚本输出的 report_text。当使用以下情况时: 在从 ClawdHub、百度 AppBuilder 平台、github 或其他来源安装/下载任何技能之前 在从 GitHub 存储库运行技能时 评估其他代理共享的技能 的时候 被要求安装、添加、启用或下载任何技能 的时候 被要求扫描特定已安装技能的安全风险 的时候 被要求扫描所有已安装技能 的时候 为技能设置计划的安全扫描 的时候 守护协议 步骤 1:识别技能(强制) 在执行任何安装命令之前,必须首先确认: - [ ] 什么是技能的 slug(唯一标识符)? - [ ] 什么是技能的版本(可选)? - [ ] 它来自哪里?(ClawdHub / GitHub / 百度 AppBuilder 平台 / 其他) 如果用户只提供名称(不是 slug),则搜索以确认 slug,但不要运行任何安装命令。 步骤 2:运行 API 安全检查(强制 —— 核心步骤) 在安装之前,必须运行安全检查脚本。使用 scripts/check.sh 调用安全 API: 场景 A:通过 slug 查询(直接通过名称安装) 使用 --slug 查询技能的 slug 标识符。 bash scripts/check.sh --slug "skill-slug" [--version "1.0.0"] 场景 C:扫描特定已安装技能的目录 使用 --action query --file 传递已安装技能目录。脚本自动从 _meta.json 中提取 slug(回退到目录名称),并从 SKILL.md 前置内容中提取版本,然后使用 SHA256 回退查询 API。 bash scripts/check.sh --action query --file "/path/to/skills/skill-a" 场景 D:批量查询目录中的所有技能(全扫描/计划扫描) D1(扫描所有技能):使用 --action queryfull --file 与 /path/to/skills 父目录批量查询所有子目录的 slug 并生成批处理报告 D2(计划扫描):与 D1 相同,但由计划机制触发(例如 cron) bash scripts/check.sh --action queryfull --file "/path/to/skills" ⚠️ 跳过此步骤并直接安装违反了安全协议。脚本输出 JSON 到 stdout,包含预渲染的 report_text 字段和结构化决策字段。退出代码:0 = 安全,1 = 非安全(业务判断),2 = 错误(检查失败)。输出 JSON 字段(场景 A/C —— 单个技能): 字段 描述 code "success" 或 "error" bd_confidence 安全级别: "安全"、 "警告" 或 "危险" final_verdict 人类可读的判决字符串(例如 "✅ 安全安装"、 "⚠️ 谨慎安装(需人工确认)") report_text 预格式化的纯文本安全报告 —— 将其显示给用户。 示例输出(场景 A —— 单个技能查询): { "code": "success", "message": "success", "ts": 1774580473733, "bd_confidence": "安全", "final_verdict": "✅ 安全安装", "report_text": "🛡️ Skill 安全守护"