deja-vu is a local memory system that indexes coding-agent session histories and makes relevant past work available to other agents. It helps users share fixes and context across Claude Code, Codex, Cursor, Copilot CLI, and other coding agents without using a language model or embeddings. The catalogue contains hooks, commands, MCP components, skills, plugins, and instructions for connecting agents to that memory.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/vshulcz/deja-vuWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/plugins/vshulcz/deja-vu/claude-plugin)<a href="https://agentmods.dev/plugins/vshulcz/deja-vu/claude-plugin"><img src="https://agentmods.dev/badge/plugins/vshulcz/deja-vu/claude-plugin/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/plugins/vshulcz/deja-vu/claude-plugin"><img src="https://agentmods.dev/badge/plugins/vshulcz/deja-vu/claude-plugin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
deja-vu scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 106 lines — stays where its author put it; the contents beside it link to each section on GitHub.
{
"name": "deja-vu",
"version": "0.22.1",
"description": "deja-vu memory for Claude Code: your own past sessions, from every coding agent on the machine, recalled before you ask.",
"author": {
"name": "vshulcz",
"url": "https://github.com/vshulcz"
},
"homepage": "https://vshulcz.github.io/deja-vu/guide/memory-for-claude-code.html",
"repository": "https://github.com/vshulcz/deja-vu",
"license": "MIT",
"keywords": [
"memory",
"session-history",
"recall",
"context",
"claude-code",
"codex",
"cursor",
"copilot-cli"
],
"skills": "./skills/",
"hooks": {
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/deja.sh hook-context",
"timeout": 10,
"statusMessage": "Recalling past sessions…"
}
]
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/deja.sh hook-prompt",
"timeout": 10,
"statusMessage": "Searching past sessions…"
}
]
}
],
"PreCompact": [
{
"matcher": "manual|auto",
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/deja.sh hook-precompact",
"timeout": 10,
"statusMessage": "Saving this session to memory…"
}
]
}
],
"PreToolUse": [
{
"matcher": "Bash|PowerShell|Edit|Write|MultiEdit|NotebookEdit|Task|Agent",
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/deja.sh hook-tool",
"timeout": 10,
"statusMessage": "Checking what this touches…"
}
]
}
],
"PostToolUse": [
{
"matcher": "Bash|PowerShell",
"hooks": [
{
What it installs
The manifest is a name and a version. 1 skill, 1 command, 1 hook travel with it, and installing the plugin installs all of them — 146 tokens a session between them. Each is measured on its own page, and each can be installed alone.
What ships with it
1 file beside plugin.json in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago Changed 23530bd130dc
- 7d ago Changed 47262484ac71
- 10d ago Changed 93c82e77ad9a
- 12d ago Changed b26a0363b8db
- 14d ago Changed d2fa0ad008f8
- 15d ago Changed · +11 lines 001ff45c9b95
- 17d ago Changed b1d50a3c9c75
- 19d ago Changed 13949eb5268f
- 22d ago Changed 625a454a3544
- 23d ago First seen · 95 lines scan A 4305b4569131
deja-vu is a plugin published in the GitHub repository vshulcz/deja-vu (1,220 stars, last pushed yesterday), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other plugins, from other repositories
infinity-context-agent-plugin-gemini-hooks
Infinity Context Gemini extension with lifecycle hooks for durable project memory.
palimem marketplace
Plugin marketplace listing 1 plugin: memory-service.
memory-service
Local-first governed memory for Claude Code via MCP and lifecycle hooks.
krimto
Open-source memory for AI coding agents you own in git — governed by a real user→team→org hierarchy, not a vendor database. Solo to team. Apache-2.0.
github-stars-radar
Local-first GitHub stars memory MCP server and skill bundle for Claude Code.
repo-brain
Persistent repository memory for Claude Code.