recall-knowledge
Recall knowledge base entries by meaning, not just keywords — hybrid search (lexical ripgrep + local vector embeddings + see-link graph) over `.claude/knowledge/entries/`. Use when looking for prior k
SKILL.mdskills/recall-knowledge/SKILL.md
GitHubRecall Knowledge
Goal
Surface the most relevant knowledge entries for a query by meaning — bridging synonyms and cross-language wording (e.g. Japanese ↔ English identifiers) that literal keyword search misses.
When to Use
- Searching the knowledge base for prior art, decisions, pitfalls, or related context
- The query may be worded differently than the entries (synonyms, JA query vs EN identifiers)
- Before starting work on a topic, to pull related accumulated knowledge
- NOT for per-prompt automatic injection — that stays ripgrep via the existing
userpromptsubmit_knowledge_search.shhook (instant, no model load)
Summary First, Then One Entry
Run the search with --summary: each hit shows its title, its description
(the trigger condition — when to open it) and its typed links with the labels
their authors wrote. Choose the single entry to Read from that; do not open
several candidates to compare them. Details in the procedure file.
Structure First for Multi-Hop Questions
When the recall looks like it needs several hops — tracing how a decision evolved,
asking how two topics connect, or mapping everything around an entry — do NOT chain
search → read → follow links → read again. Query the link graph first
(kb_graph.py neighborhood / path), pick the endpoints from the structure
(IDs + titles only), and Read just those entries. Details in the procedure file.
Execution (run directly — do NOT delegate to a subagent)
IMPORTANT: hybrid search executes code (uv run a Python script). Subagents run in a sandbox
that blocks code execution, networking, and out-of-cwd writes, so this skill runs from the
MAIN agent's Bash — do NOT spawn an Agent for the search itself.
- Read the procedure file at: {plugin_root}/skills/recall-knowledge/procedure.md
- Follow it: resolve paths, decide hybrid vs ripgrep-fallback, run the search, present the ranked results, and Read the top entries when their content is needed for the answer.
Paths:
- Knowledge base: {project_root}/.claude/knowledge/
- Search script: {plugin_root}/scripts/kb_search.py
- Index builder: {plugin_root}/scripts/kb_index.py (only to advise building the index)
- Graph CLI: {plugin_root}/scripts/kb_graph.py (pure stdlib — needs neither uv nor the index)
IMPORTANT: The procedure / script paths use the plugin's base directory, NOT the project
directory. Read the "Base directory for this skill" line from the skill loading message to
determine {plugin_root}.