All notable changes to this project will be documented in this file.
- Ontological Knowledge Graph — entities and subject-predicate-object triples automatically extracted from memories
- Pattern-based entity extraction for files, tools, languages, concepts, people, services, and patterns
- Entity resolution with case-insensitive matching, alias lookup, and Levenshtein fuzzy matching
graph_queryMCP tool — traverse the knowledge graph from any entitygraph_entitiesMCP tool — list known entities filtered by typegraph_explainMCP tool — find paths between two entities with source memories- REST API endpoints for graph data (
/api/graph/entities,/api/graph/triples,/api/graph/search,/api/graph/paths) - Dashboard Ontology view with force-graph visualization, entity type filtering, and detail sidebar
npx claude-cortex graph backfillcommand to extract entities from existing memories- Brain worker graph maintenance — automatic orphan entity pruning every 30 minutes
- GitHub Actions CI — Automated build + test on push/PR (Node 20 + 22 matrix)
- Auto-publish to npm — GitHub release triggers
npm publishwith pre-built dashboard (.next/ships in package, zero install-time cost)
- CORS restricted to localhost — API server now only accepts requests from
localhost:3030,localhost:3000, and127.0.0.1equivalents. Configurable viaCORTEX_CORS_ORIGINSenvironment variable (comma-separated origins).
- Dashboard redesign: Multi-view layout with slim nav rail replacing the left sidebar
- 2D Knowledge Graph: Interactive force-directed graph as default view (
react-force-graph-2d) — nodes colored by category, sized by salience, linked by relationships - Memories card grid: Browseable card view with sort (salience/date/decay), grid/list toggle, and bulk select + delete
- Insights view: Activity heatmap (GitHub-style), knowledge coverage bar charts, memory quality analysis (never-accessed, stale, duplicates, contradictions)
- API endpoints:
GET /api/memories/activityandGET /api/memories/qualityfor insights data - View transitions: Smooth fade animations between views (Framer Motion)
- 3D Brain visualization preserved as optional "Brain" tab
setupauto-configures hooks —npx claude-cortex setupnow installs PreCompact, SessionStart, and SessionEnd hooks into~/.claude/settings.jsonusing portablenpx claude-cortex hook <name>commands.- Stop hook (opt-in) —
npx claude-cortex setup --with-stop-hookinstalls a Stop hook that checks the last assistant message for notable content (decisions, fixes, learnings) and prompts Claude to useremember. Loop prevention is programmatic (stop_hook_activeboolean check), not LLM-dependent. npx claude-cortex hook stopCLI command for manual invocation.
doctorcommand —npx claude-cortex doctorchecks installation health: Node version, database, CLAUDE.md setup, hooks, MCP config.--version/-vflag —npx claude-cortex --versionprints the current version.
- SessionEnd hook — Auto-extracts important context when a Claude Code session exits. Reads the session transcript and saves high-salience memories (decisions, fixes, learnings) to the database.
- Hook coverage matrix in README documenting when each hook fires and its reliability.
npx claude-cortex hook session-endCLI command for manual invocation.
- SessionEnd hook skips extraction on
/clear(intentional session wipe). - Auto-extracted memories from SessionEnd are tagged with
session-endfor filtering.
- CRITICAL: Removed
shell: truefrom Clawdbot hook —execFilewithshell: trueallowed command injection via memory content. Now uses safe direct execution. - Parameterized SQL in session-start hook — Replaced string interpolation in
NOT INclause with proper?placeholders. - Word-boundary regex for SQL endpoint — DROP/TRUNCATE blocking now uses
\bDROP\bto avoid false positives on column names.
- Quote escaping in Clawdbot hook — Single quotes in memory content are now escaped (
'') instead of stripped, preserving data integrity.
prepublishOnlyscript — Automatically runsnpm run buildbeforenpm publishto prevent stale dist.
- Strengthen post-compaction
get_contextdirective to ensure context is recalled after compaction. - Pre-compact hook now reads session JSONL files directly for reliable conversation extraction.
- Unified setup command —
npx claude-cortex setupnow configures both Claude Code (CLAUDE.md) and Clawdbot/Moltbot hook in one step.
- Clawdbot/Moltbot hook installer —
npx claude-cortex clawdbot install|uninstall|status - Bundled
cortex-memoryhook that integrates via mcporter for persistent memory in Clawdbot sessions. - Auto-saves session context on
/new, injects past memories on bootstrap, keyword triggers ("remember this").
- Moltbot/ClawdBot integration section in README with mcporter usage examples.
- Added
hooksubcommand routing, fixed hook documentation.
setupcommand —npx claude-cortex setupinjects proactive memory instructions into~/.claude/CLAUDE.md.
- ARM64 embedding support — Migrated from
@xenova/transformersto@huggingface/transformersfor native Apple Silicon compatibility.
- Memory intelligence overhaul — 7 improvements to connect isolated subsystems:
- Semantic linking in
detectRelationships(embeddings + FTS5 content similarity) - Search results reinforce salience and create co-search links
- Dynamic salience evolution via link count, contradictions, and mention count
- Contradictions surfaced in search results with warnings
- Memory enrichment wired into search flow
- Real consolidation merges related STM into coherent LTM entries
- Increased activation weight in search, cache pruning
- Semantic linking in
- Cross-platform auto-start service —
npx claude-cortex service install|uninstall|status - Supports macOS (launchd), Linux (systemd), Windows (Startup folder VBS script).
- Logs to
~/.claude-cortex/logs/.
- Dashboard auto-starts API server - No more manual
npm run dev:apirequired when running dashboard directly - Running
cd dashboard && npm run devnow automatically detects and starts the API if not running
- Cross-process event IPC - MCP tool events (remember, recall, forget) now appear in dashboard Activity log
- Events persisted to SQLite
eventstable for cross-process communication - API server polls for new events every 500ms and broadcasts via WebSocket
- Automatic cleanup of processed events after 24 hours
- Removed duplicate Pause/Sync buttons from dashboard header (now only in sidebar)
- Consolidation events now properly emit to Activity log
- Added tooltips to all dashboard buttons for better UX
- React duplicate key error in MemoryDetail when memory has bidirectional relationships
- Version management in dashboard - Display current version, check for updates, update, and restart server
- New API endpoints:
/api/version,/api/version/check,/api/version/update,/api/version/restart - VersionPanel component in dashboard sidebar
- WebSocket events for update progress:
update_started,update_complete,update_failed,server_restarting - Dashboard documentation section in README with features list and color legend
- MCP server now reports actual version from package.json instead of hardcoded "1.0.0"
- FTS5 query escaping: periods in search terms now properly quoted (fixes "syntax error near ." when remembering content with version numbers like v1.3.1)
- README branding: changed "Claude Memory" references to "Claude Cortex"
- Jest test infrastructure with 31 passing tests
- Test coverage for salience, decay, similarity, and memory types
- npm scripts:
test,test:watch,test:coverage,audit:security - React error boundary for dashboard crash handling
.npmignorefor cleaner npm package
- npm security vulnerability (hono package)
- Type safety in embeddings (replaced
anywith proper interface) - Three.js memory leaks in BrainMesh (use refs for cleanup)
- WebSocket dependency array causing reconnection loops
- Type-safe material casting in SynapseNodes
- Ko-fi support link in README
- GitHub sponsor button via FUNDING.yml
- Dashboard control panel (pause/resume memory creation, trigger consolidation)
- Debug tools panel with query tester, activity log, relationship graph, SQL console
- Control API endpoints for pause/resume/consolidate
- Chip visualization components (alternative view)
- Category labels for brain regions
- Proactive memory instructions in SessionStart hook
- Reminds Claude to use
rememberimmediately for decisions, bug fixes, learnings
- React duplicate key error in brain visualization
- Added defensive deduplication for memory nodes
- Clean neural network design for dashboard visualization
- Ghost wireframe brain outline (faint gray, no animation)
- Gray neural connections with bright white signal pulses
- Larger solid-colored memory nodes (no transparency/glow)
- Simplified UI overlay (just memory count)
- Stars background, colored brain regions
- Synapse endpoint bulbs, connection count badge
- Neural activity indicator, holographic color mode
- Brain-like memory system with short-term, long-term, and episodic memory types
- Salience detection for automatic importance scoring
- Temporal decay with reinforcement on access
- Automatic consolidation (STM → LTM promotion)
- Full-text search via SQLite FTS5
- Semantic search via vector embeddings (@xenova/transformers)
- Cross-project global memories with scope parameter
- Memory relationships and automatic linking
- Spreading activation for related memory priming
- Contradiction detection between memories
- Background worker for continuous brain-like processing
- Dashboard visualization (optional, runs separately)
- Session hooks for auto-recall and pre-compact memory extraction
remember- Store memories with auto-categorizationrecall- Search and retrieve memoriesforget- Delete memories with safety confirmationsget_context- Get relevant project contextstart_session/end_session- Session managementconsolidate- Manual consolidation triggermemory_stats- View statisticsexport_memories/import_memories- Backup and restoreget_related/link_memories- Memory relationshipsdetect_contradictions- Find conflicting memoriesset_project/get_project- Project scope management