Agents now look up past decisions before they change code, config, a
dependency or a schedule, not only when asked about history. On Claude Code
that took a test set from 0/10 to 10/10. Recall got more reliable where it was
quietly failing: it no longer answers empty when the only full match is the
agent's own session (23 of 255 real calls did), and a file path finds the rule
written for its directory. A first build on a store of long sessions answers
at 19 s instead of 44 s. New harnesses: TRAE CLI and TRAE IDE, CodeBuddy Code,
WorkBuddy and Muse Code. The index version is now 67, so the store rebuilds
once on the first run after upgrading.
Added
- TRAE CLI 2.0 sessions are read from
~/.trae/cli(TRAE_HOME,DEJA_TRAE_ROOT) as harnesstrae, with their own doctor row andtraex resume. Prompts come only from TRAE's user events, so the runtime context it writes under the user role is not indexed as something you said (#4680). - CodeBuddy Code sessions are read from
~/.codebuddy/projects, WorkBuddy's from~/.workbuddy/projects, and Muse Code's from~/.local/share/muse/sessions;deja install codebuddyandcodebuddy-autowire recall into CodeBuddy (#4681, #4679). deja install workbuddyandworkbuddy-autowire recall into WorkBuddy, whose agent reads its config from the WorkBuddy home rather than~/.codebuddy; a new MCP file there is the app's ownmcp.json(#4720).deja install traeadds the MCP server to TRAE CLI'straecli.toml, andtrae-autoadds the session-start, per-prompt, tool and compaction hooks to itshooks.json; TRAE runs them once you trust them at start-up (#4702).deja install trae-idewires TRAE IDE: the MCP server inUser/mcp.jsonand the skill in~/.trae/skills(Trae CNand~/.trae-cnfor the CN build; with both builds installed, each gets its own).trae-ide-autoadds hooks to~/.trae/hooks.json, which TRAE IDE runs only after you turn hooks on in Settings > Hooks; install and doctor both say so. Its chats are encrypted and not indexed (#4731).
Changed
- A first build on a store of long sessions answers sooner: the early slice of newest sessions stops at 20,000 messages as well as 200 sessions. On 3,871 sessions and 370k messages, recall comes online at 19 s instead of 44 s and the build ends at 45 s instead of 64 s (#4768).
- Agents call deja before they change code, config, a dependency or a schedule, not only when asked about past work. The line is in the MCP server instructions, every skill and guidance file, and the npm plugins'
deja_recall. On Claude Code the instructions also say how to load the deferred tool. On 10 synthetic change tasks with a recorded decision, Opus on Claude Code went from 0/10 to 10/10 (#4760).
Fixed
- Recall no longer comes back empty when the only sessions holding every word of the question are filtered out, most often the agent's own live session. It falls through to the ranking. Replayed on 255 real recall calls, 23 had come back empty this way (#4766).
- Recall by file path finds what was settled for the file's directory:
cmd/reconcile/match.goused to miss a session that set the rule forcmd/reconcile, or rank it under one sharing a single word. Those sessions now come first, and recall says they are about the directory rather than "No session is about this" (#4762). They stay below a session that already answers two of the query's other words (#4764). - The session-start note about a limit hit in another agent fires on Claude Code's real wording ("You've hit your session limit", "You've hit your limit", "API Error: 529 Overloaded"), and reads the newest session of this project from another harness; a parallel session anywhere on the machine used to hide it (#4758).
- The per-prompt hook searches on the question even when an instruction comes before it on the same line ("without reading any files: what jitter constant…"); the instruction used to take all six search terms and the hook stayed silent (#4751).
- Kilo CLI: a store where a few sessions went through Kilo's
/api/sessionroute indexes every session again; deja read only those few and dropped the rest, and a session continued fromkilo runkeeps both halves (#4694). - WorkBuddy AI desktop chats index with your prompts: the app wraps each one in a
<user_query>envelope, and deja read the whole record as harness context (#4734). - A new WorkBuddy AI desktop chat recalls the earlier ones: each chat runs in its own
~/WorkBuddy AI/<timestamp>folder, and those folders now count as one project. Index version 67 refiles chats already indexed (#4735). deja install workbuddyanddeja doctorsay when WorkBuddy AI is holding deja's MCP server until you click Trust in its MCP settings; doctor reports it asuntrusted(#4740).deja install workbuddywires WorkBuddy AI's home rather than the~/.workbuddydirectory it leaves behind (#4724).- CodeBuddy: a command whose long output CodeBuddy saved to a side file keeps its exit code, and reading an image no longer indexes the client's blob reference as text (#4726, #4727).
- TRAE CLI 0.208 sessions keep their prompts, and the pre-edit hook runs on TRAE's
Edit/Writetools (#4729, #4730). - WorkBuddy AI sessions, kept in
~/.workbuddy-aiby the workbuddy.ai build, are indexed (#4719). - TRAE CLI sessions under
TRAECLI_HOMEare indexed; deja only followedTRAE_HOME(#4701). deja install museandmuse-autowire recall into Muse Code: the MCP server and Claude-shaped hooks in~/.config/muse/settings.json, and the skill in~/.agents/skills.deja resumeprintsmuse resume <id>in the session's workspace (#4709, #4710).deja install museandmuse-autoon a machine with no Muse settings file write one Muse starts with: it refused a file withoutschema_version(#4736).- A Muse Code session that compacts gets its recovery packet with the next prompt or edit;
muse-autonow wires PreCompact, and the log is found by session id (#4737). - Hooks see the index, policy and stores the CLI uses when the host starts them without your environment, as Muse Code does: the
deja-hooklauncher now carries theXDG_*andDEJA_*locations and indexing settings in effect at install, and your own environment still wins (#4738). - Turning
DEJA_INCLUDE_SUBAGENTSoff drops the child transcripts on the next index pass, as a rebuild does, instead of keeping them and calling them "no longer on disk". A pass that cannot see a store at all keeps its sessions and says so (#4739). - Under
DEJA_INCLUDE_SUBAGENTS=1, Muse Code's reminder and verification observers are no longer indexed as sessions, and a workflow subagent gets its project (#4711, #4712). - CodeBuddy:
deja resumeprintscodebuddy -c -r <id>in the directory the session ran in, so the session-start recall reaches the reopened session (#4718), andinstall codebuddy-autowrites thedeja-historyskill and the/dejacommand where CodeBuddy reads them (#4707, #4708). - CodeBuddy: a failed command keeps its exit code, the
/compactinstruction prompt is no longer indexed as your words, and the recovery packet after a compaction arrives with the next prompt (#4703, #4704, #4705). - A fix learned from a CodeBuddy or Qwen Code shell call answers the same error anywhere: the
Stdout:/Output:label in front of the first line is no longer part of the error (#4717). - The Claude Code and CodeBuddy plugins stand down when
deja install <h>-autoalready wired the same hooks, instead of running every hook twice (#4706). - CodeBuddy on Windows: when the deja path has a space,
install codebuddy-autowrites hooks that run throughpowershell -NoProfile -Command "& '…'", so they work without Git Bash; the quoted line written before is replaced, not left beside it (#4728).
Changelog
Features
- feat(mcp): agents look up past decisions before they change code, not only when asked about history (#4761)
- feat: TRAE IDE install, Windows CodeBuddy hooks, Kilo store and one-line prompt fixes (#4757)
- feat: WorkBuddy gets recall, and CodeBuddy resumes with its digest (#4723)
- feat: read CodeBuddy Code, TRAE CLI and Muse Code sessions, and wire CodeBuddy (#4699)
- feat: recall, resume and install for CodeBuddy Code, TRAE CLI and Muse Code (#4716)
Fixes
- fix(hook): the limit handoff note fires on Claude Code's real limit text and reads this project's session from another harness (#4759)
- fix(recall): a file path finds the rule written for its directory (#4763)
- fix(recall): a session that only mentions the asked file's directory stays below one that answers the rest of the query (#4765)
- fix(recall): answer from the ranking when the only full match is the agent's own live session (#4767)
- fix: WorkBuddy AI desktop chats recall each other, and CodeBuddy, TRAE 0.208 and Muse fixes from the live round (#4745)
Performance
- perf(index): a first build on long sessions answers at 19 s instead of 44 s (#4769)
Documentation
- docs: changelog for 0.21.7 (#4770)
Other
- chore: pin the manifests to 0.21.6 (#4692)
Install
curl -fsSL https://raw.githubusercontent.com/vshulcz/deja-vu/main/install.sh | sh
go install github.com/vshulcz/deja-vu/cmd/deja@v0.21.7
brew install deja-vu