# claude-mem

> A Claude Code plugin that automatically captures everything Claude does during your coding sessions, compresses it with AI (using Claude's agent-sdk), and injects relevant context back into future ses

- **URL**: https://www.freshcrate.ai/projects/claude-mem
- **Author**: thedotmack
- **Category**: AI Agents
- **Latest version**: `v13.4.0` (2026-05-29)
- **License**: NOASSERTION
- **Source**: https://github.com/thedotmack/claude-mem
- **Homepage**: https://claude-mem.ai
- **Language**: TypeScript
- **GitHub**: 65,103 stars, 5,488 forks
- **Registry**: github
- **Tags**: `ai`, `ai-agents`, `ai-memory`, `anthropic`, `artificial-intelligence`, `chromadb`, `claude`, `claude-agent-sdk`, `rag`, `typescript`

## Description

A Claude Code plugin that automatically captures everything Claude does during your coding sessions, compresses it with AI (using Claude's agent-sdk), and injects relevant context back into future sessions.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v13.4.0` | 2026-05-29 | High | ## v13.4.0 — Defect backlog clearance + provider extensibility  Clears a large defect backlog (plans 01–11 plus standalone fixes) and adds provider configurability. Test suite moved 46 → 0 failing and typecheck 24 → 0 errors over the branch.  ### Features - **Configurable OpenAI-compatible base URL** for the OpenRouter provider (`CLAUDE_MEM_OPENROUTER_BASE_URL`) — point claude-mem at DeepSeek, LM Studio, or any custom OpenAI-compatible endpoint.  ### Fixes (highlights) - **Spawn contract (plan-0 |
| `v13.3.0` | 2026-05-21 | High | ## What's New  ### New skills  - **design-is** (#2483) — audits a design against Dieter Rams' ten "Good design is..." principles. Produces per-principle 0–3 scores with file:line evidence and a NEW / REFINE / REDESIGN verdict, then hands off a ready-to-run `/make-plan` prompt. - **weekly-digests** (#2399) — produces a chapter-per-ISO-week serial digest of a project's full claude-mem timeline. Sequential subagent pipeline keeps the narrative coherent across 30+ chapters. - **oh-my-issues** (#2409 |
| `v13.2.0` | 2026-05-12 | High | ## What's new  ### `wowerpoint` skill — kawaii NotebookLM slide-deck generator  Turn one source document into a kawaii NotebookLM slide-deck PDF. Wraps the `notebooklm` CLI with the kawaii-prompt + `--format detailed` defaults and a spawn-subagent pattern so generation (~10 min) never blocks the main conversation.  - **Single-source-per-deck** is enforced by the workflow shape: confirm or write the source doc *before* adding it to NotebookLM. Don't paper over a weak source by stacking more sourc |
| `v13.0.0` | 2026-05-08 | High | ## Highlights  This is the **claude-mem 13** major release, landing the Server Beta runtime and the project's relicense.  ### Server Beta runtime (opt-in) - Independent server-beta service with its own lifecycle (`claude-mem server start/status/stop`) - Postgres-backed observation storage - BullMQ + Redis observation queue engine (gated behind `CLAUDE_MEM_QUEUE_ENGINE=bullmq`, fail-fast) - New `/v1` REST API surface (events, sessions, memories, search, context, audit, jobs) - API-key auth + Bett |
| `v12.5.0` | 2026-05-02 | High | ## Highlights  **Observation pipeline cleanup — kill the per-message retry counter.** The AI's parseable response is the only success signal; any other response (unparseable, empty, transport error) is a no-op. No more silent data loss after 3 retries.  ## What changed  - **Parser:** collapsed to binary `{ valid: true, observations, summary } \| { valid: false }`. No more `kind`/`skipped` enum dispatch in callers. - **ResponseProcessor:** two branches only — parseable → store + clear pending → br |
| `v12.4.8` | 2026-04-28 | High | ## Bug Fixes  - **timeline tool:** Coerce stringified numeric anchors (e.g. `"123"`) into the observation-ID dispatch path so they no longer fall through to ISO-timestamp parsing and return wrong-epoch windows. The HTTP layer always sends anchor as a string, so this fixes anchor lookups via MCP and HTTP across the board. (#2176)  ## Tests  - Added a 7-case regression suite covering JS-number anchors, stringified-number anchors (incl. whitespace-padded), session-ID anchors (`S<n>`), ISO-timestamp |
| `v12.3.9` | 2026-04-22 | High | ## Highlights  ### 🔐 Security observation types + Telegram notifier - New observation types: `security_alert` 🚨 (high-priority, triggers notifications) and `security_note` 🔐 (low-priority). - Fire-and-forget Telegram notifier — MarkdownV2 formatting, per-observation error isolation, no token logging. - Five env vars control behavior. `CLAUDE_MEM_TELEGRAM_ENABLED` master toggle defaults on (no-op without bot token + chat ID).  ### ⚡ Stop hook: fire-and-forget summarize - Eliminated the ~110s t |
| `v12.3.8` | 2026-04-21 | High | ## 🔧 Fix  **Detect PID reuse in the worker start-guard so containers can restart cleanly.** (#2082)  The `kill(pid, 0)` liveness check false-positived when the worker's PID file outlived its PID namespace — most commonly after `docker stop` / `docker start` with a bind-mounted `~/.claude-mem`. The new worker would boot as the same low PID (often 11) as the old one, `kill(0)` would report "alive," and the worker would refuse to start *against its own prior incarnation*. Symptom: container appear |
| `v12.3.7` | 2026-04-20 | High | ## What's Changed  **Refactor: remove bearer auth and platform_source context filter** (#2081)  - Drop bearer-token auth from the worker API. Worker binds localhost-only and CORS restricts origins to localhost — the token added friction for every internal client (hooks, CLI, viewer, sync script) with no real security benefit for single-user local deployments. - Drop the unused `platform_source` query-time filter from the `/api/context/inject` pipeline (ContextBuilder, ObservationCompiler, Search |
| `v12.3.6` | 2026-04-20 | High | ## Viewer fix: drop the rate limiter  v12.3.5 kept the 300 req/min rate limiter from v12.3.3's "security hardening" bundle. That tripped the live viewer within seconds (it polls logs and stats) and served it "Rate limit exceeded" errors.  **Fix**: remove the rate limiter entirely. The worker is localhost-only (enforced via CORS), so there's no abuse surface to protect. Rate-limiting a single-user local process is security theater.  ### Still kept from v12.3.3 hardening - 5 MB JSON body limit - P |

## Dependency audit

- **Score**: 94/100
- **Total deps**: 67
- **Resolved**: 67
- **Unresolved**: 0
- **License conflicts**: 0
- **Warnings**: 3
- **Scanned**: 2026-06-01

## Citation

- HTML: https://www.freshcrate.ai/projects/claude-mem
- Markdown: https://www.freshcrate.ai/projects/claude-mem.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/claude-mem/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
