一键导入
kb-ingest
Extract atomic notes from files in references/ or from URLs (fetched content saved to references/)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Extract atomic notes from files in references/ or from URLs (fetched content saved to references/)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Find near-duplicate notes and merge them safely. Use when the user asks to "dedupe the KB", "find duplicate notes", "merge these notes", or after large research sessions that may have re-covered existing ground.
Re-verify time-sensitive claims in KB notes against live sources and apply visible corrections. Use when the user asks to "refresh the KB", "re-verify notes", "check what's gone stale", or on a schedule. Distinct from /kb-review (structural quality) — this checks whether the facts are still true.
Synthesize a coherent narrative explanation of a topic from multiple KB notes. Use when the user asks to "explain X from the KB", wants a structured overview/briefing woven from existing notes, or asks "what's the full picture on X".
Answer a single question and save the answer as an atomic note in the knowledge base. Use when the user poses a discrete factual/conceptual question they want captured for later, says "look this up and save it", "add this to the KB", or "note down the answer to X".
Agentic research loop that deeply investigates a topic via web search and saves findings as atomic notes
Audit the knowledge base for quality issues (orphans, broken links, missing citations, stale notes, tag drift) and suggest improvements. Use when the user asks to "review the KB", "check note quality", "find orphans/broken links/duplicates", or "what needs cleanup".
| name | kb-ingest |
| description | Extract atomic notes from files in references/ or from URLs (fetched content saved to references/) |
| user_invocable | true |
| arguments | Filename in references/, glob pattern, or URL to fetch. Optional: --kb name |
Ingest source material and extract atomic knowledge base notes.
KB selection: Parse $ARGUMENTS for --kb <name> flag. If not specified, infer the best KB:
kbs.yaml description fits the source's topic, propose that KB.general.Locate the source — Based on $ARGUMENTS:
URL (starts with http:// or https://):
references/ with a slugified name derived from the page title or URL (e.g. references/how-tcp-works.md)Filename (e.g. tcp-guide.pdf):
references/<filename>Glob pattern (e.g. *.md):
references/ and let the user pickNo argument:
references/ and let the user pickIf the file doesn't exist or the URL can't be fetched, tell the user and stop.
Read the source — Use Read to read the file (supports markdown, text, PDF, etc.)
Analyze content — Read through the full content and identify:
Present candidates — Show the user a numbered list:
Source: "How TCP Works" (references/tcp-guide.pdf)
Reference note (hub):
0. [reference] How TCP Works — summary of the source with links to all extracted notes
Concept notes:
1. [concept] TCP Three-Way Handshake — SYN/SYN-ACK/ACK connection setup
2. [concept] TCP Congestion Control — slow start, congestion avoidance, fast recovery
3. [insight] Why TCP backoff is exponential — design tradeoff explained in the article
The reference hub note (item 0) is always included.
Type balance: When classifying candidates, actively consider whether each is better as a question (if the source answers a specific "how/why" question), insight (if it reveals a non-obvious connection or tradeoff), or concept (if it's a pure explanation). Don't default everything to concept.
Save all by default — Read save_all_by_default from .kb/config.yaml (default true). When true, create all candidate notes (the reference hub is always included regardless); the list above is shown for transparency, not as a gate. The user may still prune by replying (e.g. "skip 3" / "only 1,2"). When false, ask which to save (e.g. "all", "1,3", "none") via AskUserQuestion and wait.
Create the reference hub note — Always created. This is a reference-type note that:
sources frontmatter (e.g. references/tcp-guide.pdf)[[wikilinks]]Create selected concept notes — For each selected candidate:
a. Search existing notes for overlap (Glob + Grep in kbs/<kb_name>/ and other KBs)
b. If a closely related note exists, show the user and ask: update existing or create new?
c. Create/update the note in kbs/<kb_name>/ following CLAUDE.md format
d. Cite the source inline — every claim must have a citation: [text](../../references/filename.md) (two levels up from kbs/<kb_name>/) or (Source: Title, p.123)
e. Include the source file path in sources frontmatter
f. Add [[wikilinks]] to the hub note and any other related notes, in both directions
Update taxonomy — Read .kb/taxonomy.yaml, add any new tags, write back.
Summary — Show:
references/ — only read, or write new files (from URL fetch)$ARGUMENTS