Xiaonangua-openclaw-skills kb-normalize
Normalize any fetched content into the KB canonical YAML fields (source, one-line summary, claim, why-it-matters, evidence, actions, risks, tags).
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-normalize" ~/.claude/skills/jiyangnan-xiaonangua-openclaw-skills-kb-normalize && 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-normalize" ~/.openclaw/skills/jiyangnan-xiaonangua-openclaw-skills-kb-normalize && rm -rf "$T"
manifest:
KB/kb-skills/kb-normalize/SKILL.mdsource content
KB Normalize(结构化字段)
统一输出格式,给下游 QA/Router 使用。
输入
source.url
(tweet/article/chat/doc/web)source.type
(可空)source.author
(可空)source.published_at
(抓取到的正文)text
(可选:用户发链接时的备注/意图)user_note
输出(YAML,必须包含这些字段)
source: url: "" type: tweet|article|chat|doc|web author: "" published_at: "" summary_one_line: "" claim: "" why_it_matters: "" evidence: - quote: "" url: "" note: "" actions: - "" risks_unknowns: - "" reuse_tags: - ""
字段规则(严格化)
| 字段 | 规则 |
|---|---|
| summary_one_line | ≤50字,一句话说清楚这篇文章/推文讲什么 |
| claim | 一句话事实性主张,不能是观点/感受 |
| why_it_matters | 为什么值得存(与我有啥关系/能用在哪) |
| evidence | 至少 1 条;quote 必须来自原文原句(用引号);标注来源 URL |
| actions | 用动词开头,且可执行;不要超过 3 条 |
| risks_unknowns | 可能的风险/不确定因素;不要编造 |
| reuse_tags | 场景标签,便于后续检索 |
user_note 处理
- 如果
存在:写入user_note
或why_it_matters
的上下文中(标注"用户意图: ...")reuse_tags
依赖
- 本 skill 不负责抓取正文:抓取统一走
。kb-fetch