Skip to content
/

Claude-Supermemory

claude-supermemory · supermemoryai/claude-supermemory · ★ 2.6k · last commit 2026-05-25

Primitive shape 9 total
Commands 3 Skills 4 Hooks 2
00

Summary

Claude-Supermemory — Summary

Claude-Supermemory is a Claude Code plugin that delegates all memory storage and retrieval to the Supermemory cloud API (supermemory.ai). It ships 2 hooks (SessionStart for context injection, Stop for session save), 2 skills (super-search, super-save), and 3 slash commands (index, project-config, logout). The entire memory backend is remote: there is no local database, no local embeddings, and no local binary — just Node.js scripts that call the Supermemory API.

The cloud platform provides two memory containers per installation: personal container (per user, cross-session) and team container (per repo, shared across team members). Signal-keyword extraction controls what gets saved (remember, architecture, decision, bug, fix are the defaults). A maxProfileItems: 5 default limits how many memories are injected per session to avoid context bloat.

Compared to seeds, this is closest to ccmemory in concept (hook-driven session memory for Claude Code) but entirely cloud-dependent where ccmemory is self-hosted. The signal-keyword extraction approach (save only conversation turns containing specific keywords) differs from CSR (saves everything) and ccmemory (LLM detection of specific node types). Requires Supermemory Pro subscription ($) — the only paid-only framework in this batch alongside lean-ctx's cloud tier.

01

Overview

Claude-Supermemory — Overview

Origin

Supermemory.ai — the company behind the supermemory.ai platform. MIT license (though no license file found in repository; metadata says null). Version 0.0.4. JavaScript codebase.

Philosophy

From README:

"Enable Claude Code to learn in real-time, update it's knowledge, and grow with you, using supermemory." "Your agent remembers what you worked on - across sessions, across projects."

Core tenets:

  • Team Memory — Project knowledge shared across team members, separate from personal memories
  • Auto Capture — Conversations saved when session ends
  • Signal Extraction — Only capture important turns (configurable via signalKeywords)

Design Choice: Cloud-Only

Unlike ccmemory (self-hosted Neo4j) or CSR (local binary), Claude-Supermemory explicitly delegates all storage to the Supermemory cloud API. This means:

  • Zero local infrastructure
  • Cross-device sync built-in
  • Requires SUPERMEMORY_CC_API_KEY environment variable
  • Requires Supermemory Pro subscription ($)

Key Configuration (settings.json)

{
  "maxProfileItems": 5,
  "signalExtraction": true,
  "signalKeywords": ["remember", "architecture", "decision", "bug", "fix"],
  "signalTurnsBefore": 3,
  "includeTools": ["Edit", "Write"]
}

The signalExtraction + signalKeywords pattern is the core filtering philosophy: instead of saving everything (like CSR) or using LLM detection (like ccmemory), Supermemory uses keyword matching to decide what gets saved. signalTurnsBefore: 3 captures the 3 turns of context before each signal keyword.

02

Architecture

Claude-Supermemory — Architecture

Distribution

Claude Code plugin: /plugin marketplace add supermemoryai/claude-supermemory

Install Methods

/plugin marketplace add supermemoryai/claude-supermemory
/plugin install claude-supermemory
export SUPERMEMORY_CC_API_KEY="sm_..."

Directory Structure

plugin/
├── .claude-plugin/
│   └── plugin.json           # Plugin manifest
├── commands/                 # Slash commands
├── hooks/
│   └── hooks.json            # SessionStart + Stop hooks
├── scripts/
│   ├── context-hook.cjs      # SessionStart script (fetch memories)
│   ├── summary-hook.cjs      # Stop script (save session)
│   └── search-memory.cjs     # Search script (used by super-search skill)
└── skills/
    ├── super-search/SKILL.md
    ├── super-save/SKILL.md
    ├── supermemory-search/   # alias
    └── supermemory-save/     # alias

Config Files

  • ~/.supermemory-claude/settings.json — global settings (maxProfileItems, signalKeywords, etc.)
  • .claude/.supermemory-claude/config.json — per-repo overrides (apiKey, repoContainerTag)

Required Runtime

  • Node.js (for .cjs scripts)
  • SUPERMEMORY_CC_API_KEY environment variable
  • Supermemory Pro subscription (https://app.supermemory.ai)

Memory Architecture

All memory lives in the Supermemory cloud:

  • Personal container — per-user memories across all sessions
  • Team container — per-repo memories shared across team (identified by repoContainerTag)

No local storage of memories. The plugin only stores config files locally.

Target AI Tools

Claude Code only (hooks and skills are Claude Code-specific).

03

Components

Claude-Supermemory — Components

Hooks (2, from hooks.json)

Event Script Purpose
SessionStart scripts/context-hook.cjs Fetch relevant memories from Supermemory API and inject into session
Stop scripts/summary-hook.cjs Save session summary to Supermemory API

Skills (4, with 2 aliases)

Skill Alias Purpose
super-search supermemory-search Search Supermemory for past sessions, decisions, saved information
super-save supermemory-save Save current context or important information to team memory

Skills call search-memory.cjs and similar scripts with a scope flag (--user, --repo, --both).

Slash Commands (3)

Command Purpose
/claude-supermemory:index Index codebase architecture and patterns into Supermemory
/claude-supermemory:project-config Configure per-project settings (apiKey, containerTag)
/claude-supermemory:logout Clear saved credentials

Scripts (3 in plugin/scripts/)

  • context-hook.cjs — SessionStart: fetch top-K memories, format for injection
  • summary-hook.cjs — Stop: extract and save session summary
  • search-memory.cjs — Used by super-search skill; supports --user, --repo, --both scope flags

MCP Servers

None — all API calls go directly to Supermemory REST API from the Node.js scripts.

Subagents, Templates

None.

05

Prompts

Claude-Supermemory — Prompts

Prompt File 1: super-search SKILL.md

Technique: Tool-reference skill with scope-flag examples demonstrating natural-language triggers.

---
name: super-search
description: Search your coding memory. Use when user asks about past work, previous sessions, how something was implemented, what they worked on before, or wants to recall information from earlier sessions.
allowed-tools: Bash(node:*)
---

# Super Search

Search Supermemory for past coding sessions, decisions, and saved information.

## How to Search

Run the search script with the user's query and optional scope flag:

```bash
node "${CLAUDE_PLUGIN_ROOT}/scripts/search-memory.cjs" [--user|--repo|--both] "USER_QUERY_HERE"

Scope Flags

  • --both (default): Search both personal session and project memories across team members in parallel
  • --user: Search personal/user memories across sessions
  • --repo: Search project/repo memories across team members

Examples

  • User asks "what did I work on yesterday":

    node "${CLAUDE_PLUGIN_ROOT}/scripts/search-memory.cjs" "work yesterday recent activity"
    
  • User asks "how did we implement auth" (project-specific):

    node "${CLAUDE_PLUGIN_ROOT}/scripts/search-memory.cjs" --repo "authentication implementation"
    

Present Results

The script outputs formatted memory results with timestamps and relevance scores. Present them clearly to the user and offer to search again with different terms if needed.


**Technique used**: Intent-triggered skill with activation examples; defers all search intelligence to cloud API (skill just calls a Node.js script); scope flag routing for personal vs team memory.

## Prompt File 2: Plugin Description

**Technique**: Feature-list capability declaration.

From plugin.json:
```json
{
  "description": "Persistent memory across Claude Code sessions using Supermemory"
}

Hooks as Implicit Prompts

SessionStart hook injects a cloud-fetched memory block at session start — this is the most impactful "prompt" in the system, though its exact format is controlled by the context-hook.cjs script and Supermemory API output format (not a static text file that can be quoted verbatim).

09

Uniqueness

Claude-Supermemory — Uniqueness

Differs From Seeds

Closest seeds: ccmemory and claude-self-reflect — all three are hook-driven session memory layers for Claude Code. The critical delta: Supermemory externalizes the entire memory backend to a cloud API (supermemory.ai), while ccmemory uses self-hosted Neo4j + Docker and CSR uses a local Rust binary. This means Supermemory requires no local infrastructure and provides zero-config cross-device sync, but introduces a paid cloud dependency. Signal-keyword filtering (save only turns containing specific words) is a unique capture strategy vs ccmemory's LLM-based detection or CSR's capture-everything approach. The team memory container (shared per-repo across team members) is also distinct: ccmemory has a "team mode" for curated decisions but is single-server; Supermemory's team memory is built into the cloud platform.

Positioning

"The memory plugin for teams using Claude Code together — shared project knowledge that persists across developers, sessions, and devices, without running any infrastructure."

Observable Failure Modes

  1. Cloud dependency — any Supermemory API outage or account termination destroys all memories with no local backup.
  2. Keyword filter misses — signal-keyword extraction relies on users or AI explicitly using words like "remember" or "decision"; architectural context discussed without these keywords won't be captured.
  3. 5-item injection limitmaxProfileItems: 5 may miss important context for large or long-running projects; but increasing it risks context bloat.
  4. No API without subscription — requires Supermemory Pro; free users cannot use this plugin at all.
  5. Privacy — all project context and conversations go to a third-party cloud API; not suitable for confidential/regulated codebases.
04

Workflow

Claude-Supermemory — Workflow

Phases

Phase What Happens Artifact
Install /plugin install, set API key ~/.supermemory-claude/settings.json
Configure /claude-supermemory:project-config .claude/.supermemory-claude/config.json
SessionStart Hook fetches top-K memories (max 5 by default) from Supermemory API Context injected into session start
Active Work Agent uses super-search to recall past work; super-save to explicitly save important items Memories stored in cloud
Stop Hook extracts signal keywords from session; saves qualifying turns to Supermemory Session summary in cloud
Index (optional) /claude-supermemory:index scans codebase and saves architecture to team memory Team container populated

Approval Gates

None — automatic capture/injection.

Signal Extraction Flow

  1. Session ends (Stop hook fires)
  2. summary-hook.cjs scans the session transcript
  3. Turns containing signalKeywords are identified
  4. signalTurnsBefore context turns are included
  5. Qualifying turns are saved to Supermemory API

If signalExtraction: false, all turns are saved.

Spec Format

None — stores conversation snippets, not structured specs.

Team vs Personal Memory

Container Scope Key
Personal User, cross-session personalContainerTag
Team Repo, cross-team-member repoContainerTag (defaults to repo basename)

Both are searched simultaneously with --both scope (default).

06

Memory Context

Claude-Supermemory — Memory & Context

Memory Model

mcp-bridged (cloud API) — no local database. All memory storage and retrieval goes through the Supermemory cloud REST API. The plugin is a thin client.

Persistence Scope

global — memories persist indefinitely across sessions and devices. Personal memories are tied to the user's API key; team memories are tied to the repoContainerTag.

Two-Container Architecture

Container Scope Isolation
Personal User-level, cross-project personalContainerTag (defaults to user ID)
Team Per-repo repoContainerTag (defaults to git repo basename)

Both containers can be queried simultaneously (--both flag, the default).

Context Injection on SessionStart

  • Fetches top-K memories (controlled by maxProfileItems: 5) from both personal + team containers
  • Injects them at session start as formatted text context
  • Low injection volume by default (5 items) to minimize context bloat

Signal-Based Capture

Unlike systems that capture everything (CSR) or use LLM detection (ccmemory), Supermemory uses keyword matching:

{
  "signalKeywords": ["remember", "architecture", "decision", "bug", "fix"],
  "signalTurnsBefore": 3
}

Only conversation turns containing these keywords are eligible for saving, plus 3 turns of context before each signal. This is a deterministic filter, not LLM-based.

Context Compaction Handling

No explicit PreCompact hook. Memory is saved at session end (Stop hook), so compaction during a session does not affect memory persistence.

Cross-Session Handoffs

yes — core purpose: SessionStart hook retrieves past memories from cloud API.

State Files (local)

  • ~/.supermemory-claude/settings.json — global config
  • .claude/.supermemory-claude/config.json — per-repo config

No local memory storage.

Search Mechanism

Delegated entirely to Supermemory cloud API (vector search + semantic retrieval; exact mechanism is opaque — it's a third-party API).

Token Reduction Claim

No explicit token reduction percentages claimed. The maxProfileItems: 5 default limits injected context to 5 memory items, which is a form of pruning by recency/relevance.

07

Orchestration

Claude-Supermemory — Orchestration

Multi-Agent

No native multi-agent orchestration. The team memory container passively enables multi-developer knowledge sharing (multiple agents/developers write to the same repoContainerTag), but there's no coordination protocol.

Orchestration Pattern

none — single agent + cloud memory store.

Isolation Mechanism

none — no process isolation. Projects isolated by repoContainerTag in cloud API.

Execution Mode

event-driven — hooks fire on SessionStart and Stop; between those, skills are agent-triggered.

Multi-Model

No — Claude Code-specific plugin.

Context Compaction Handling

no — no PreCompact hook.

Crash Recovery

no — if session ends abnormally, Stop hook may not fire and session summary may be lost.

Auto Validators

None.

Prompt Chaining

No.

08

Ui Cli Surface

Claude-Supermemory — UI & CLI Surface

CLI Binary

None — no dedicated CLI.

Local UI

None — all management done through slash commands or the Supermemory web app.

Cloud UI

https://app.supermemory.ai — the Supermemory platform provides a web interface for viewing and managing memories, configuring integrations, and managing API keys. This is a third-party service, not part of the Claude plugin.

Claude Code Interface

Slash commands:

  • /claude-supermemory:index — index codebase
  • /claude-supermemory:project-config — configure per-project settings
  • /claude-supermemory:logout — clear credentials

Skills:

  • super-search — triggered by natural language ("what did I work on", "how did we implement X")
  • super-save — triggered by explicit save requests ("save this for the team")

Observability

None beyond what the Supermemory web app provides.

Transport

HTTPS to Supermemory cloud API (no MCP server; scripts call REST API directly).

Related frameworks

same archetype · same primary tool · same memory type

MemPalace ★ 53k

Verbatim local-first AI memory with 96.6% R@5 retrieval on LongMemEval using zero API calls — structured into a palace hierarchy…

Beads (Yegge) ★ 24k

Dolt-powered distributed graph issue tracker where AI agents track tasks with hierarchical IDs and dependency edges, claim work…

deepagents (LangChain) ★ 23k

Opinionated Python agent harness on top of LangGraph with sub-agents, filesystem, memory, and context compaction bundled in

agentmemory ★ 18k

Persistent, searchable memory for AI coding agents that captures every tool interaction, compresses it via LLM, and injects…

Open Multi-Agent ★ 6.3k

Give a natural-language goal to a coordinator agent and get a dynamically decomposed, parallelized task DAG executed by…

Basic Memory ★ 3.1k

Gives AI agents a persistent, human-readable knowledge graph of project decisions, observations, and relations stored as plain…