skill-deps

📦 智能依赖管理与版本控制

类似 npm 的 OpenClaw 技能依赖管理器,支持语义化版本约束、循环依赖检测与冲突解决,确保技能安装安全可靠。

收藏
16k
安装
3.4k
版本
1.0.0
CLS 安全性认证2026-05-12
点击查看完整报告 >

使用说明

Skill Dependencies(skill-deps) 是 OpenClaw 生态系统的依赖管理基础设施,定位为"技能的 npm"。该工具集通过声明式依赖管理、自动化版本解析和可视化依赖树,解决了多技能协作场景下的兼容性管理难题,为用户提供类 npm 的包管理体验。

核心用法围绕依赖生命周期展开。开发者可在 SKILL.md 的 YAML frontmatter 中通过 dependsoptionalconflicts 字段声明技能关系,支持 SemVer 语义化版本约束(如 ^2.0.0>=1.0.0)。运行时,scan-skills.sh 扫描本地技能目录(包括系统内置、用户目录和项目本地路径),skill-tree.sh 生成 ASCII 树状依赖图,check-deps.sh 验证依赖完整性,而 skill-install.sh 则从 ClawHub Registry 自动解析并安装依赖链,实现一键式依赖自动解析与安装。

显著优点体现在工程化能力的完整性。首先,SemVer 支持允许精确的版本控制,有效避免"依赖地狱"。其次,内置的冲突检测机制能在安装前识别不兼容的技能组合,防止运行时错误。第三,循环依赖检测算法(通过 VISITED 数组实现)有效避免了依赖解析的死循环。第四,可视化输出使复杂的依赖关系一目了然,便于架构审查。最后,与 ClawHub Registry 的集成提供了中央化的元数据管理,支持自动解析最新兼容版本并展示安装进度。

潜在缺点与局限性需要用户正视。来源等级为 T3(个人/社区项目),虽通过 A 级安全认证,但长期维护稳定性不如企业级项目。功能上依赖外部工具链(curl、jq、openclaw CLI),若环境缺失会导致功能异常。网络层面,安装和搜索操作强制依赖 clawhub.com 的可用性,离线环境无法使用 registry 功能。此外,当前实现主要面向 Bash 环境,跨平台兼容性(如 Windows)可能存在挑战。

适合的目标群体主要包括:OpenClaw 技能开发者(需要管理复杂依赖关系)、DevOps 工程师(维护技能集群的兼容性)、以及技术架构师(审查技能依赖拓扑)。对于仅需使用单个独立技能的终端用户,该工具的价值相对有限。

使用风险主要集中在供应链和可用性层面。网络风险方面,clawhub.com 的不可达将导致安装和更新功能失效。工具链风险方面,jq 或 CLI 工具的版本差异可能引发解析错误。供应链安全方面,虽脚本本身无代码执行漏洞,但从 registry 下载的技能包需自行验证安全性(当前缺少签名验证机制)。建议在生产环境使用前,先在隔离环境中验证依赖解析逻辑,并确保网络环境可信。

安全解读

核心用法

skill-deps 是 OpenClaw 生态系统的「npm 式」依赖管理工具,用于追踪和管理技能间的依赖关系。核心功能包括:

依赖声明:在 SKILL.md 的 YAML frontmatter 中通过 depends(必需)、optional(增强功能)、conflicts(互斥声明)三类字段定义关系,支持 semver 语义化版本约束(如 ^2.0.0>=1.0.0)。

扫描与诊断scan-skills.sh 遍历内置、用户、项目本地三层目录发现技能;skill-tree.sh 可视化依赖树;check-deps.sh 识别缺失依赖;check-conflicts.sh 检测版本冲突。

注册中心集成:通过 ClawHub(clawhub.com)官方 API 搜索、安装技能,skill-install.sh 自动解析依赖链并执行冲突预检,安装过程带进度可视化输出。

元数据支持:同时支持 SKILL.md 前置声明和独立的 skill.json 文件描述技能元数据。

显著优点

1. 零依赖轻量实现:纯 Bash 脚本编写,无 package.json/requirements.txt 等外部依赖,彻底规避供应链攻击面,依赖审计维度获满分(100/100)。
2. 安全认证优异:静态分析(95分)、隐私合规(95分)均达高分,六维检测无高危发现,获 S 级(90分)安全评级。

3. 网络行为可控:仅连接 ClawHub 官方 API,TLS 1.2+ 加密传输,无敏感数据收集,符合 GDPR/CCPA 等合规要求。

4. 版本管理精细:完整支持 npm 风格的 semver 约束语法,含自动冲突检测和依赖树可视化,降低生态碎片化风险。

5. 多源目录扫描:三层目录架构(系统/用户/项目)兼顾全局共享与项目隔离,适配不同协作场景。

潜在缺点与局限性

1. 功能范围较窄:专注依赖解析与安装,不提供技能运行时加载、热更新或沙箱隔离等高级能力。
2. 错误处理待完善:安全报告指出 API 调用失败时重试机制和用户提示可进一步增强。

3. 输入验证保守:虽无路径遍历漏洞,但技能名称的格式校验可更严格。

4. 无许可证声明:当前未配置 LICENSE 文件,开源条款不明确。

5. 生态锁定:依赖 ClawHub 中心化注册中心,去中心化分发场景支持有限。

适合人群

  • OpenClaw 平台管理员:治理大规模技能生态,预防「依赖地狱」
  • 技能开发者:声明式管理技能间协作关系,自动化版本兼容检查
  • DevOps 工程师:CI/CD 流水线中批量扫描、安装技能集合
  • 安全审计人员:依赖纯 Bash 实现,供应链风险极低,审计成本低

常规风险

  • 网络可用性依赖:安装阶段需连通 clawhub.com,离线环境需预缓存技能包
  • 版本约束误配:宽松的 *>= 可能引入破坏性更新,建议锁定主版本号
  • conflicts 声明遗漏:开发者未显式声明互斥技能时,运行时可能出现行为冲突
  • 权限配置:脚本需读取 /usr/lib/node_modules/openclaw/skills/ 等系统路径,需确保执行用户权限适当

安全认证报告明确结论:该 skill 代码结构清晰、意图明确,适合生产环境部署。

skill-deps 内容

scripts文件夹
手动下载zip · 8.8 kB
check-conflicts.shtext/x-shellscript
请选择文件