fix(debug): resolve kb-pipeline import issue in skill directory
PR Test / lint (pull_request) Successful in 2s
PR Test / lint (pull_request) Successful in 2s
Root cause: ~/.openclaw/skills/kb-workflow/kb_workflow.py used old import paths (kb_pipeline.*) after v1.1 refactor renamed package to kb_workflow.pipeline Fix applied to external skill directory: - Updated imports from kb_pipeline.* to kb_workflow.pipeline.* - Fixed project_root path calculation - Updated SKILL.md documentation Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
---
|
||||
status: awaiting_human_verify
|
||||
trigger: "kb-pipeline-import-failure-20260317"
|
||||
created: 2026-03-17T00:00:00Z
|
||||
updated: 2026-03-17T00:00:00Z
|
||||
---
|
||||
|
||||
## Current Focus
|
||||
|
||||
hypothesis: 已修复 - 技能文件中的导入路径已更新为正确的包名
|
||||
test: 验证技能文件能否正常导入和执行
|
||||
expecting: 技能 CLI 正常工作,导入成功
|
||||
next_action: 等待用户确认实际使用场景是否正常
|
||||
|
||||
## Symptoms
|
||||
|
||||
expected: 视频被添加到知识库(一键完成元数据获取、字幕下载、深度分析)
|
||||
actual: kb_pipeline 包不存在,无法使用一键处理命令
|
||||
errors: 技能文件存在:~/.openclaw/skills/kb-workflow/kb_workflow.py,依赖包缺失:kb_pipeline 包未找到
|
||||
reproduction: 通过技能 Skill.md 中的一键命令执行
|
||||
started: v1.1 版本重构之后开始出现问题
|
||||
|
||||
## Eliminated
|
||||
|
||||
## Evidence
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: ~/.openclaw/skills/kb-workflow/kb_workflow.py 第 45-47 行
|
||||
found: 技能文件使用的导入路径是 `from kb_pipeline.pipeline import Pipeline` 和 `from kb_pipeline.processors import ...` 和 `from kb_pipeline.schemas import PipelineConfig`
|
||||
implication: 技能文件使用的是旧包名 kb_pipeline
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: kb-skills 项目中的包结构 (Glob 搜索)
|
||||
found: 项目中不存在 kb_pipeline 包,实际存在的是 kb_workflow 包
|
||||
implication: kb_pipeline 包已被重命名为 kb_workflow
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: kb_workflow/pipeline/__init__.py
|
||||
found: Pipeline 类从 `kb_workflow.pipeline` 导出
|
||||
implication: 正确的导入路径应该是 `from kb_workflow.pipeline import Pipeline`
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: kb_workflow/pipeline/processors/__init__.py
|
||||
found: 所有 Processor 类从 `kb_workflow.pipeline.processors` 导出
|
||||
implication: 正确的导入路径应该是 `from kb_workflow.pipeline.processors import ...`
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: kb_workflow/pipeline/schemas.py 第 396-411 行
|
||||
found: PipelineConfig 类定义在 schemas.py 中
|
||||
implication: 正确的导入路径应该是 `from kb_workflow.pipeline.schemas import PipelineConfig` 或通过 `kb_workflow.pipeline` 的 __init__.py
|
||||
|
||||
- timestamp: 2026-03-17T00:00:00Z
|
||||
checked: kb_workflow/pipeline/__init__.py
|
||||
found: PipelineConfig 没有被导出到 `kb_workflow.pipeline` 的 __all__ 中
|
||||
implication: 需要直接从 schemas 导入 `from kb_workflow.pipeline.schemas import PipelineConfig`
|
||||
|
||||
## Resolution
|
||||
|
||||
root_cause: 技能文件 `~/.openclaw/skills/kb-workflow/kb_workflow.py` 在 v1.1 架构重构后未更新导入路径。它仍然使用旧的 `kb_pipeline` 包名,而实际包名已变更为 `kb_workflow.pipeline`。具体问题在第 45-47 行:
|
||||
- `from kb_pipeline.pipeline import Pipeline` 应改为 `from kb_workflow.pipeline import Pipeline`
|
||||
- `from kb_pipeline.processors import ...` 应改为 `from kb_workflow.pipeline.processors import ...`
|
||||
- `from kb_pipeline.schemas import PipelineConfig` 应改为 `from kb_workflow.pipeline.schemas import PipelineConfig`
|
||||
|
||||
另外发现 project_root 路径计算错误,原代码假设 kb_workflow 包在技能目录下,实际在 ~/work/kb-skills 项目中。
|
||||
fix: 更新了以下文件:
|
||||
1. ~/.openclaw/skills/kb-workflow/kb_workflow.py
|
||||
- 第 45-47 行:导入路径从 kb_pipeline.* 改为 kb_workflow.pipeline.*
|
||||
- 第 39-42 行:project_root 路径从相对路径改为使用 Path.home() / "work" / "kb-skills"
|
||||
- 第 8-9 行:注释更新为 kb_workflow.pipeline
|
||||
2. ~/.openclaw/skills/kb-workflow/SKILL.md
|
||||
- 技术架构图从 kb_pipeline 更新为 kb_workflow.pipeline
|
||||
verification: CLI --help 命令正常工作,导入测试通过
|
||||
files_changed: ["~/.openclaw/skills/kb-workflow/kb_workflow.py", "~/.openclaw/skills/kb-workflow/SKILL.md"]
|
||||
Reference in New Issue
Block a user