自动检测并解决多个技能 requirements.txt 文件中冲突的 Python 包版本,生成合并后无冲突的需求文件。
Skill Dependency Resolver是一项面向实际任务的技能,主要用于自动检测并解决技能间的 Python 依赖冲突;当安装多个 OpenClaw 技能时,不同技能可能依赖不同版本的 Python 包(如 pandas、numpy),导致冲突和安装失败;
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
自动检测并解决技能间的 Python 依赖冲突
当安装多个 OpenClaw 技能时,不同技能可能依赖不同版本的 Python 包(如 pandas、numpy),导致冲突和安装失败。本技能自动扫描所有技能的 requirements.txt,检测版本冲突,并提供自动解决策略,生成统一的 requirements-merged.txt 供一键安装。
pip install 版本冲突错误requirements.txtrequirements.txt| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
skills_dir |
string | 否 | ~/.openclaw/workspace/skills |
技能目录路径,递归搜索所有子目录的 requirements.txt |
output_file |
string | 否 | ./requirements-merged.txt |
输出的合并后 requirements 文件路径 |
strategy |
string | 否 | auto |
冲突解决策略:auto(自动选最高版本),manual(列出冲突等待用户选择) |
report (object): 依赖分析报告total_skills (int): 扫描的技能数量conflicts_count (int): 检测到的冲突数量solutions (array): 每个冲突的解决方案(包名、冲突版本、选定版本、策略)output_path (string): 生成的 merged requirements 文件路径summary (string): 简要总结skill-dependency-resolver skills_dir="./skills" output_file="requirements.txt"
skill-dependency-resolver strategy="manual"
skill-dependency-resolver output_file="/tmp/merged.txt" | jq '.conflicts_count'
os.walk 递归查找 requirements.txt,跳过 tests/ 和 node_modules/pkg>=1.0,<=2.0 格式auto:取所有版本上限中的最小值(保守)或下限中的最大值(激进,当前使用:选最高版本)manual:输出冲突详情供用户决策requirements.txt 格式,不支持 Pipfile 或 pyproject.toml; python_version < "3.8")pip install,仅生成合并后的文件pyproject.toml 和 Pipfileclawhub install 流程,自动预处理依赖skill-composer:工作流编排,可调用本技能预处理依赖skill-secure-checker:安全扫描,确保合并后的 requirements 无恶意包workspace-heartbeat-integration:定期扫描依赖,保持系统健康作者:小叮当
标签:devops, dependency, installation, quality
许可证:MIT
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习