Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Find a past agent session by topic and load its context into the current conversation. Searches the session-brain topic graph, ranking by relevance, topic membership, and time decay, then loads the winning transcript. Use when the user says "/wiki-sessions <topic>", "which session did I do X in", "find the session where I fixed X", "when did I last work on Y", "what was that session about Z", "load the session where I set up X", "have I done this before". Read-only — never writes to the vault. R
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | 22% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -14% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 117% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 7% | 0% |
Answers "which of my past sessions was about X" and then pulls that session's context in.
bashobsidian-wiki sessions-query "<topic>" --json
If this exits 1 with "run sessions-build first", tell the user and offer /session-brain. If graph.json is more than ~7 days old, mention it and offer a rebuild — but do not silently rebuild, since that is a multi-second operation the user did not ask for.
The scoring already combines four signals, so take the ordering as given rather than re-ranking:
never matched. This is why a session that never said "telemetry" can still surface for it.
fresh weak one
Useful filters: --project NAME, --cluster N, --since DATE, --top N.
Show the top ~5 as a compact table — title, project, date, topic, and the why string, which already explains the match. Do not dump the raw JSON at the user.
Two things must be stated honestly rather than glossed over:
loadable: false are history-only: the transcript has been pruned from diskand only the prompts survive. They are listed in unloadable with a reason. Say the transcript is gone; do not imply it can be retrieved.
is all that remains.
should_load holds at most 3 session ids worth opening, already filtered to ones with transcripts.
Prefer an existing loader skill if the user has one installed:
claude-session-load — loads a Claude session by idbookmark-load — use when the hit is bookmarked⚠️ Those skills live in the user's personal skills directory (~/.claude/skills/), not in this repo. They may not exist. Do not assume them and do not error if they are absent — fall back to reading the transcript directly:
bash# the path is in the query result as `transcript` obsidian-wiki sessions-show <session-id> --pretty
The transcript is JSONL and can be tens of MB. Never read one whole. Filter to the human turns first:
bashgrep -c '' <transcript> # size check before anything else python3 -c " import json,sys for line in open(sys.argv[1], errors='replace'): try: r = json.loads(line) except ValueError: continue if r.get('type')=='user' and not r.get('isSidechain') and not r.get('isMeta'): c = (r.get('message') or {}).get('content') if isinstance(c,str) and not c.lstrip().startswith('<'): print('>', c[:400]) " <transcript>
Synthesise from what you loaded and cite the session ids you used. If the answer came from a history-only session's prompts rather than a real transcript, say so — the user needs to know how much of the context you actually have.
/session-brain — build or refresh the graph, survey and name topicswiki-query — search compiled vault knowledge; this skill searches raw session history insteadwiki-agent — pull a topic out of another agent's history and distil it into the vaultOther measured skills in the registry, with their headline benchmark lift.