fix(debug): resolve kb-pipeline import issue in skill directory
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:
2026-03-17 11:01:33 +08:00
parent 8d67f3c953
commit 2dce679cca
2 changed files with 73 additions and 0 deletions
@@ -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"]