Recall
AI tools, hooks, skills, and prompts I actually use day to day — each with a what/why/how write-up
npx -y skills add kev-hu/ai-toolkit --skill recallAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Unified retrieval across your durable-knowledge surfaces (learnings ledger, session notes, lessons/taste files, agent memory). Use before substantial work, when a topic smells previously-solved, or when the user asks "have we seen this before?" / "what do we know about X?".
SKILL.md
2.9 KB, as published. Nobody here has run it
recall — one front door for durable-knowledge retrieval
Searches every knowledge surface declared in a config file with one query and ranks results by match quality (distinct query terms hit), not confidence or recency. One command, grouped plain-text output, built for agents to read.
Setup (once per machine)
- Copy
config.example.json(in this skill folder) to~/.config/recall/config.json. - Edit the
pathof each surface to point at your real files; delete surfaces you don't have. Every surface is optional — unreadable paths are skipped silently. - Optional: set
logto a JSONL path to record queries (off by default).
Usage
<this-skill-dir>/scripts/recall <query terms...> [--config <path>]
Config resolution: --config → $RECALL_CONFIG → ./recall.config.json → ~/.config/recall/config.json.
For a human-friendly PATH install: ln -s <this-skill-dir>/scripts/recall ~/.local/bin/recall.
How to use it well (agent protocol)
- Query with 2–4 concrete keywords, not sentences. If the user's phrasing
is vague, reshape it before querying (e.g. "that thing where uploads broke"
→
upload timeout s3). - Read the top 1–2 hits deeper if needed. Session/note hits are file paths — open them. Ledger hits may have longer notes elsewhere in your setup.
- Synthesize; don't dump. Answer what the user is actually trying to
recall. Cite ledger entries that materially shape the answer (e.g.
Prior learning applied: <key>— or whatever the config'sfootersays). - On a miss, say so plainly and suggest 1–2 alternate query terms; a surface-empty result is information too.
Reading the output
## ledger (3)
- [gws-exit-codes] gws CLI exit 2 = auth, exit 3 = path validation [match 3/3]
[match n/m] = n of your m query terms hit this row. A 3/3 on one surface
beats a high-confidence 1/3 anywhere — that is the point. Per-surface caps
(config cap, default 4) keep any one surface from flooding the output.
Surface types
| type | one row is | good for |
|---|---|---|
jsonl | a JSON line (matchFields, label template, tiebreakField) | structured learning ledgers |
md-bullets | a - bullet in one file | LESSONS.md / TASTE.md-style curated lists |
md-dir | a .md file in a directory (filePattern, exclude, matchFilename, labelFrom: "description") | session notes, agent memory dirs |
Design invariant
Ranking is match-quality-first, tiebreak second. Do not "improve" this to
confidence-first or recency-first ranking — that ordering was a diagnosed
precision failure in this tool's ancestor. See the comment in scripts/recall.