Skip to content

Memory System

One-Liner

The Memory System provides a unified interface for managing persistent knowledge across sessions, including core memory, workflow context, CLI history, vector search, and V2 pipeline operations.


Pain Points Solved

Pain PointCurrent StateMemory System Solution
Cross-session amnesiaNew session requires re-explaining projectPersistent memory across sessions
Lost decisionsArchitecture decisions forgottenDecision log persists
Repeated explanationsSame context explained multiple timesMemory auto-injection
Knowledge silosEach developer maintains own contextShared team memory
Scattered data sourcesCore/workflow/CLI history separateUnified search across all categories

Page Overview

Location: ccw/frontend/src/pages/MemoryPage.tsx

Purpose: View and manage core memory with CRUD operations and unified vector search.

Access: Navigation → Memory

Layout

+--------------------------------------------------------------------------+
|  Memory Title                                              [Refresh] [Fullscreen]|
+--------------------------------------------------------------------------+
|  [Core] [Workflow] [CLI History] [Search] [V2 Pipeline]                      |
+--------------------------------------------------------------------------+
|  Tab Content (varies by active tab)                                        |
|  +--------------------------------------------------------------------+    |
|  |                                                                    |    |
|  |  - Memory list with CRUD operations                                 |    |
|  |  - Search interface with filters                                    |    |
|  |  - Source type badges and tags                                      |    |
|  |  - V2 pipeline job monitoring (V2 tab)                              |    |
|  |                                                                    |    |
|  +--------------------------------------------------------------------+    |
+--------------------------------------------------------------------------+

Core Features

FeatureDescription
Tabbed InterfaceFive tabs: Core, Workflow, CLI History, Search, V2 Pipeline
CRUD OperationsCreate, edit, delete memories with confirmation dialogs
Unified SearchVector search across all memory categories
Source Type FilteringFilter by core_memory, workflow, cli_history
Tag FilteringFilter memories by custom tags
Batch OperationsSelect all, delete selected
RecommendationsView memory recommendations from AI
Re-indexRebuild memory index
ExportExport search results to file
V2 PipelineMonitor extraction and consolidation jobs
Immersive ModeFullscreen toggle for focused work

Memory Categories

TabSource TypeDescription
Corecore_memoryPersistent project knowledge stored in ~/.claude/memory/
WorkflowworkflowSession context from .workflow/.memory/
CLI Historycli_historyCommand execution history
SearchAllUnified vector search across all categories
V2 Pipeline-Extraction and consolidation job monitoring

Usage Guide

Basic Workflow

  1. Browse Memories: Switch between Core/Workflow/CLI History tabs
  2. Create Memory: Click "New Memory" button, fill in the form
  3. Edit Memory: Click edit button on memory card, modify content
  4. Delete Memory: Click delete button, confirm in dialog
  5. Search: Switch to Search tab, enter query to find memories
  6. Filter Results: Use source type and tag filters to narrow results

Key Interactions

InteractionHow to Use
Create memoryClick "New Memory" button, fill form, submit
Edit memoryClick edit (pencil) button on memory card
Delete memoryClick delete (trash) button, confirm
Search memoriesSwitch to Search tab, type query, filter results
Export resultsSelect memories, click "Export Selected"
Re-index memoryClick "Re-index" to rebuild search index
Select allClick "Select All" checkbox to select all visible memories
Delete selectedClick "Delete Selected" to batch delete

Source Type Badges

Source TypeColorDescription
core_memoryBluePersistent project knowledge
workflowGreenWorkflow session context
cli_historyAmberCLI command history

Memory Metadata

Each memory entry contains:

  • ID: Unique identifier (format: CMEM-YYYYMMDD-HHMMSS)
  • Content: Markdown-formatted text
  • Tags: Array of tag strings for categorization
  • Created/Updated: Timestamps
  • Source Type: Category identifier

V2 Pipeline

The V2 Pipeline tab monitors background jobs for:

Job TypeDescription
ExtractionExtract knowledge from sessions
ConsolidationConsolidate and summarize memories
EmbeddingGenerate vector embeddings for search

Job Status

StatusDescription
PendingJob queued, not started
RunningJob in progress
DoneJob completed successfully
ErrorJob failed with error message

Components Reference

Main Components

ComponentLocationPurpose
MemoryPage@/pages/MemoryPage.tsxMain memory management page
V2PipelineTab@/components/memory/V2PipelineTab.tsxV2 pipeline job monitoring
MemoryCard(internal to MemoryPage)Individual memory display

State Management

  • Local state:

    • activeTab: TabValue
    • searchQuery: string
    • selectedMemories: Set<string>
    • filters:
    • dialogStates: create, edit, delete
  • Custom hooks:

    • useMemory - Core memory CRUD operations
    • useMemoryMutations - Memory mutations (create, update, delete)
    • useUnifiedSearch - Vector search across categories
    • useUnifiedStats - Memory statistics
    • useRecommendations - AI-generated recommendations
    • useReindex - Rebuild search index

Configuration

No configuration required. The memory system automatically fetches data from the backend.

Memory API Endpoints

OperationEndpoint
List memoriesGET /api/memory
Create memoryPOST /api/memory
Update memoryPUT /api/memory/:id
Delete memoryDELETE /api/memory/:id
SearchPOST /api/memory/search
Re-indexPOST /api/memory/reindex
V2 JobsGET /api/memory/v2/jobs

Released under the MIT License.