# thedotmack/claude-mem

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

- **Type:** Collection
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 13.6.0
- **Author:** thedotmack
- **License:** Apache-2.0
- **npm:** claude-mem
- **Source:** https://github.com/thedotmack/claude-mem

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 34 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-08-28T18:37:30.538Z
- **Version scanned:** 13.16.1
- **CVEs:** none found by OSV at scan time

## Tools

24 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `important_workflow` — 3-LAYER WORKFLOW (ALWAYS FOLLOW): 1. search(query) → Get index with IDs (~50-100 tokens/result) 2. timeline(anchor=ID) → Get context around interesting results 
- `search` — Step 1: Search memory. Returns index with IDs. Params: query, limit, project, platformSource, type, obs_type, dateStart, dateEnd, offset, orderBy
- `timeline` — Step 2: Get context around results. Params: anchor (observation ID) OR query (finds anchor automatically), depth_before, depth_after, project
- `get_observations` — Step 3: Fetch full details for filtered IDs. Params: ids (array of observation IDs, required), orderBy, limit, project
- `session_start_context` — Render the exact worker-mode SessionStart context for a project. Calls /api/context/inject and returns the same text hooks inject at startup. Params: project OR
- `observation_add` — Insert a manual observation directly into server storage. Calls /v1/memories — does NOT enqueue generation. Server runtime only. Params: content (required), pro
- `observation_record_event` — Record an agent event into the server. Calls /v1/events — server inserts the event row, the outbox row, and enqueues a generation job atomically. Server runtime
- `observation_search` — Full-text search across generated observations using the server's GIN tsvector index (Phase 1). Calls /v1/search. Server runtime only. Params: query (required),
- `observation_context` — Get top-N relevant observations for context injection. Returns matched observations AND a pre-joined context string suitable for prompt injection. Calls /v1/con
- `observation_generation_status` — Look up the status of an observation generation job by id. Calls /v1/jobs/:id. Server runtime only. Returns the same payload as REST.
- `smart_search` — Search codebase for symbols, functions, classes using tree-sitter AST parsing. Returns folded structural views with token counts. Use path parameter to scope th
- `smart_unfold` — Expand a specific symbol (function, class, method) from a file. Returns the full source code of just that symbol. Use after smart_search or smart_outline to rea
- `smart_outline` — Get structural outline of a file — shows all symbols (functions, classes, methods, types) with signatures but bodies folded. Much cheaper than reading the full 
- `build_corpus` — Build a knowledge corpus from filtered observations. Creates a queryable knowledge agent. Params: name (required), description, project, types (comma-separated)
- `list_corpora` — List all knowledge corpora with their stats and priming status
- `prime_corpus` — Prime a knowledge corpus — creates an AI session loaded with the corpus knowledge. Must be called before query_corpus.
- `query_corpus` — Ask a question to a primed knowledge corpus. The corpus must be primed first with prime_corpus.
- `rebuild_corpus` — Rebuild a knowledge corpus from its stored filter — re-runs the search to refresh with new observations. Does not re-prime the session.
- `reprime_corpus` — Create a fresh knowledge agent session for a corpus, clearing prior Q&A context. Use when conversation has drifted or after rebuilding.
- `claude_mem_feed` — Show or toggle Claude-Mem observation feed status
- `claude-mem-search` — Search Claude-Mem observations by query
- `claude-mem-recent` — Show recent Claude-Mem context for a project
- `claude-mem-timeline` — Find best memory match and show nearby timeline events
- `claude_mem_status` — Check Claude-Mem worker health and session status

## Install

This is a collection — a bundle whose contents each install separately and are not individually verified. Resolve the unit you want and plan that install instead.

## Blast radius

Moderate to extensive — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: installs 21 bundled units; runs on your machine.
- Floor 26, ceiling 44 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/thedotmack%2Fclaude-mem
- Install plan: https://forgeregistry.com/api/v1/packages/thedotmack%2Fclaude-mem/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/thedotmack%2Fclaude-mem
- HTML page: https://forgeregistry.com/registry/thedotmack%2Fclaude-mem
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
