v0.8.0
v0.8.0 — proactive recall, selectable embedding model, full MCP control
The release that makes the brain proactive and gives the agent (and user)
full control over it from inside Claude Code / Codex.
ADDED
- Proactive recall (mid-work). New
PreToolUse/PostToolUseBash hooks
surface a relevant memory while the agent works, not just on prompt:- after a failed Bash command, surface a matching
failure_pattern/
commandfix; - before a risky Bash command, warn from a matching
failure_pattern; - on a repeated failing command (loop), lower the score floor and bypass
the throttle so help arrives sooner.
Retrieval is lexical-FTS-only (no embedding-model load), gated by a high
score floor (0.45; loop 0.35), capped at one capsule, with per-session
dedupe + a refractory throttle. Token cost stays ~0 (silent when nothing
qualifies). Wired into both Claude Code (.claude/settings.json) and Codex
(.codex/hooks.json) with amatcher: "Bash"; opt out with
kimetsu plugin install --no-proactive(orproactive:falseover MCP).
Per-session state lives in<repo>/.kimetsu/proactive/<session_id>.json
and is garbage-collected after 7 days.
- after a failed Bash command, surface a matching
- Selectable embedding model. New
[embedder]table inproject.toml
(precedence:KIMETSU_BRAIN_EMBEDDERenv > config > default). Inspect and
change it withkimetsu brain model list/kimetsu brain model set <id>
(the latter writes the config and re-embeds the corpus with the new model).
Curated built-ins:bge-small-en-v1.5(384d, default),bge-m3(1024d),
jina-v2-base-code(768d). - Full MCP control surface. New tools so an agent can manage the brain
without leaving Claude Code / Codex:kimetsu_brain_model_list/
kimetsu_brain_model_set(re-embeds in-process with the new model),
kimetsu_brain_reindex,kimetsu_brain_memory_search(FTS over memory
text),kimetsu_brain_conflict_resolve,kimetsu_brain_prune, and
kimetsu_brain_config_show.kimetsu_brain_memory_listand
..._memory_proposalsgainedlimit/offsetpagination.
CHANGED
reindexcan now run against an explicit embedder
(reindex_all_with_embedder), so a model switch re-embeds with the chosen
model regardless of the process's cached default embedder.
FIXED
- Test isolation. Tests created project roots under the system temp dir;
on a machine whose$HOMEis itself a git repo,ProjectPaths::discover
climbed to$HOMEand made parallel tests share onebrain.db+
project.lock. Each test root now gets its own git boundary, so plain
cargo testis hermetic.