Xiaonangua-openclaw-skills kb-router
Route KB items to Obsidian Vault notes/queue based on QA verdict, write files using canonical templates.
install
source · Clone the upstream repo
git clone https://github.com/jiyangnan/xiaonangua-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jiyangnan/xiaonangua-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/KB/kb-skills/kb-router" ~/.claude/skills/jiyangnan-xiaonangua-openclaw-skills-kb-router && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jiyangnan/xiaonangua-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/KB/kb-skills/kb-router" ~/.openclaw/skills/jiyangnan-xiaonangua-openclaw-skills-kb-router && rm -rf "$T"
manifest:
KB/kb-skills/kb-router/SKILL.mdsource content
KB Router(落盘/状态更新)
把 Normalize+QA 的结果写入 Obsidian Vault,并更新防重复状态。
输入
(kb-normalize 输出 YAML)normalize
(kb-qa-score 输出 YAML)qa
(可由抓取/正文推断;需要用于文件命名)title
(可选:写入 notes 的正文摘录/关键段落)text
固定路径
- Notes:
/Users/ferdinandji/Library/Mobile Documents/iCloud~md~obsidian/Documents/Obsidian Vault/KB/notes/ - Queue:
/Users/ferdinandji/Library/Mobile Documents/iCloud~md~obsidian/Documents/Obsidian Vault/KB/queue/ - Processed list:
/Users/ferdinandji/Library/Mobile Documents/iCloud~md~obsidian/Documents/Obsidian Vault/KB/inputs/processed-links.md - State:
/Users/ferdinandji/.openclaw/workspace/KB/state/digest.json
路由规则(硬规则)
- verdict=keep → 写入 notes
- verdict=queue/needs_context → 写入 queue
- verdict=discard → 不入库(只在摘要里说明原因即可)
人在回路(每个关键节点暂停确认)
Step 1: 入库前确认
→ 展示:文件名、目标路径、verdict → 询问用户:"确认写入?Y/N" IF 用户确认: → 继续写入 ELSE: → 跳过本次,询问修改后重新处理
Step 2: 写入后确认
→ 写入成功后,展示: - 文件路径 - 字数/行数 - 摘要 → 询问:"需要查看内容/修改/重新写?"
Step 3: 异常处理
IF 写入失败(权限/磁盘满/路径不存在): → 记录错误详情 → 询问用户:"手动创建/换路径/跳过?" → 根据用户选择处理
文件命名
- notes:
YYYY-MM-DD-<简短主题>-note.md - queue:
YYYY-MM-DD-<简短主题>-queue.md
写入内容要求
- notes 必须包含:来源 URL、summary_one_line、claim、why_it_matters、evidence、actions。
- queue 必须包含:卡点(issues)+ 需要 boss 做什么(questions_for_boss)。
状态更新
- processed-links.md:追加一行(日期|标题|verdict|url)
- digest.json:追加 processed 记录(url, processed_at, verdict, title, reason 可选)
依赖
- 抓取统一走
;结构化与打分分别走kb-fetch
与kb-normalize
。kb-qa-score