diff --git a/graph/configurations/hourly-embedding-refresh-timer-with-if-changed-flag-7a3913.md b/graph/configurations/hourly-embedding-refresh-timer-with-if-changed-flag-7a3913.md index cf55f13a2c5..78d87fa7ad0 100644 --- a/graph/configurations/hourly-embedding-refresh-timer-with-if-changed-flag-7a3913.md +++ b/graph/configurations/hourly-embedding-refresh-timer-with-if-changed-flag-7a3913.md @@ -6,7 +6,13 @@ tags: [cognitive-memory, systemd, automation, embedding, configuration] importance: 0.7 confidence: 0.8 created: "2026-02-19T20:53:09.280113+00:00" -updated: "2026-02-19T20:53:09.280113+00:00" +updated: "2026-03-03T05:07:33.051890+00:00" +relations: + - target: 96a6c125-bb69-45af-b1b6-a9b48654fb7e + type: RELATED_TO + direction: incoming + strength: 0.75 + edge_id: d0342cf0-b6f5-43c4-be5c-b1ec25216265 --- Created systemd user timer `cognitive-memory-embed.timer` that runs hourly. Uses `claude-memory embed --if-changed` which compares memory IDs in _index.json vs _embeddings.json — skips in ~0.1s when nothing changed, full re-embed (~27s) only when memories were added or deleted. Removed embed from daily timer (cognitive-memory-daily.service) since hourly covers it. Daily timer now only runs decay, core, and symlinks. Both services need `export PATH="/home/cal/.local/bin:$PATH"` because systemd doesn't load user shell profile and `uv` lives in ~/.local/bin. Files: ~/.config/systemd/user/cognitive-memory-embed.{service,timer}. diff --git a/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--cognitive-memory-v30-rich-edge-255bd8.md b/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--cognitive-memory-v30-rich-edge-255bd8.md new file mode 100644 index 00000000000..18783598d39 --- /dev/null +++ b/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--cognitive-memory-v30-rich-edge-255bd8.md @@ -0,0 +1,13 @@ +--- +id: 255bd837-327a-4889-a60b-ea5afaa32a11 +type: BUILDS_ON +from_id: 96a6c125-bb69-45af-b1b6-a9b48654fb7e +from_title: "Fix: decay filter bypass in semantic_recall() — cognitive-memory" +to_id: 9ea72015-0b85-4a42-9ae1-144866f8d86f +to_title: "Cognitive Memory v3.0: Rich Edges + Hybrid Embeddings + MCP Server" +strength: 0.82 +created: "2026-03-03T05:07:33.025752+00:00" +updated: "2026-03-03T05:07:33.025752+00:00" +--- + +Auto-edge: Fix: decay filter bypass in semantic_recall() — cognitive-memory → Cognitive Memory v3.0: Rich Edges + Hybrid Embeddings + MCP Server diff --git a/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--converted-memorygraph-mcp-to-c-711859.md b/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--converted-memorygraph-mcp-to-c-711859.md new file mode 100644 index 00000000000..cc4ea003f3d --- /dev/null +++ b/graph/edges/fix-decay-filter-bypass-in-sem--BUILDS_ON--converted-memorygraph-mcp-to-c-711859.md @@ -0,0 +1,13 @@ +--- +id: 711859b9-fdf3-4b7d-80ec-9dc7668aea4f +type: BUILDS_ON +from_id: 96a6c125-bb69-45af-b1b6-a9b48654fb7e +from_title: "Fix: decay filter bypass in semantic_recall() — cognitive-memory" +to_id: 8e2d1904-24e0-41df-95f2-2edc4407b9f3 +to_title: "Converted MemoryGraph MCP to Claude Code Skill" +strength: 0.74 +created: "2026-03-03T05:07:33.073381+00:00" +updated: "2026-03-03T05:07:33.073381+00:00" +--- + +Auto-edge: Fix: decay filter bypass in semantic_recall() — cognitive-memory → Converted MemoryGraph MCP to Claude Code Skill diff --git a/graph/edges/fix-decay-filter-bypass-in-sem--RELATED_TO--hourly-embedding-refresh-timer-d0342c.md b/graph/edges/fix-decay-filter-bypass-in-sem--RELATED_TO--hourly-embedding-refresh-timer-d0342c.md new file mode 100644 index 00000000000..c58e678bf00 --- /dev/null +++ b/graph/edges/fix-decay-filter-bypass-in-sem--RELATED_TO--hourly-embedding-refresh-timer-d0342c.md @@ -0,0 +1,13 @@ +--- +id: d0342cf0-b6f5-43c4-be5c-b1ec25216265 +type: RELATED_TO +from_id: 96a6c125-bb69-45af-b1b6-a9b48654fb7e +from_title: "Fix: decay filter bypass in semantic_recall() — cognitive-memory" +to_id: 7a391397-2276-42bf-bca6-e1bb468029cd +to_title: "Hourly embedding refresh timer with --if-changed flag" +strength: 0.75 +created: "2026-03-03T05:07:33.051890+00:00" +updated: "2026-03-03T05:07:33.051890+00:00" +--- + +Auto-edge: Fix: decay filter bypass in semantic_recall() — cognitive-memory → Hourly embedding refresh timer with --if-changed flag diff --git a/graph/fixes/fix-decay-filter-bypass-in-semantic-recall-cognitive-memory-96a6c1.md b/graph/fixes/fix-decay-filter-bypass-in-semantic-recall-cognitive-memory-96a6c1.md index df00e74f731..c914ae3178e 100644 --- a/graph/fixes/fix-decay-filter-bypass-in-semantic-recall-cognitive-memory-96a6c1.md +++ b/graph/fixes/fix-decay-filter-bypass-in-semantic-recall-cognitive-memory-96a6c1.md @@ -6,7 +6,23 @@ tags: [cognitive-memory, python, fix, decay, embeddings, semantic-recall] importance: 0.6 confidence: 0.8 created: "2026-03-03T05:07:32.495008+00:00" -updated: "2026-03-03T05:07:32.495008+00:00" +updated: "2026-03-03T05:07:33.073381+00:00" +relations: + - target: 9ea72015-0b85-4a42-9ae1-144866f8d86f + type: BUILDS_ON + direction: outgoing + strength: 0.82 + edge_id: 255bd837-327a-4889-a60b-ea5afaa32a11 + - target: 7a391397-2276-42bf-bca6-e1bb468029cd + type: RELATED_TO + direction: outgoing + strength: 0.75 + edge_id: d0342cf0-b6f5-43c4-be5c-b1ec25216265 + - target: 8e2d1904-24e0-41df-95f2-2edc4407b9f3 + type: BUILDS_ON + direction: outgoing + strength: 0.74 + edge_id: 711859b9-fdf3-4b7d-80ec-9dc7668aea4f --- ## Problem diff --git a/graph/solutions/cognitive-memory-v30-rich-edges-hybrid-embeddings-mcp-server-9ea720.md b/graph/solutions/cognitive-memory-v30-rich-edges-hybrid-embeddings-mcp-server-9ea720.md index 2d60896e928..7ad5a5b8320 100644 --- a/graph/solutions/cognitive-memory-v30-rich-edges-hybrid-embeddings-mcp-server-9ea720.md +++ b/graph/solutions/cognitive-memory-v30-rich-edges-hybrid-embeddings-mcp-server-9ea720.md @@ -6,7 +6,7 @@ tags: [cognitive-memory, mcp, architecture, upgrade] importance: 0.9 confidence: 0.8 created: "2026-02-19T20:10:42.128691+00:00" -updated: "2026-03-01T22:16:57.253418+00:00" +updated: "2026-03-03T05:07:33.025752+00:00" relations: - target: dc6b6c6f-1319-47cf-a691-dd40751ff121 type: BUILDS_ON @@ -68,6 +68,11 @@ relations: direction: incoming strength: 0.73 edge_id: 2eee0082-215a-41b9-90bc-ea2d757138ff + - target: 96a6c125-bb69-45af-b1b6-a9b48654fb7e + type: BUILDS_ON + direction: incoming + strength: 0.82 + edge_id: 255bd837-327a-4889-a60b-ea5afaa32a11 --- Major upgrade to cognitive-memory skill. Phase 1: Rich edges as first-class markdown files in graph/edges/ with bidirectional frontmatter refs (edge_id field). relate() returns edge_id string instead of bool. Cascade deletion on memory delete. CLI: edge-get, edge-search, edge-update, edge-delete. Phase 2: Hybrid embedding providers (Ollama local + OpenAI optional) with automatic fallback chain. _config.json stores provider settings (gitignored). Dimension mismatch safety triggers re-embedding on provider switch. Phase 3: MCP server (mcp_server.py) with 18 tools via JSON-RPC 2.0 stdio protocol. Registered in ~/.claude.json. Phase 4: Updated SKILL.md, SCHEMA.md, feature.json to v3.0.0. Index version bumped from 1 to 2 (adds edges section). All stdlib-only, no external dependencies. diff --git a/graph/solutions/converted-memorygraph-mcp-to-claude-code-skill-8e2d19.md b/graph/solutions/converted-memorygraph-mcp-to-claude-code-skill-8e2d19.md index d6572e2b102..3d852f9228c 100644 --- a/graph/solutions/converted-memorygraph-mcp-to-claude-code-skill-8e2d19.md +++ b/graph/solutions/converted-memorygraph-mcp-to-claude-code-skill-8e2d19.md @@ -6,7 +6,7 @@ tags: [pai, claude-code, memorygraph, skills, architecture, migration] importance: 0.9 confidence: 0.8 created: "2025-12-07T06:50:12.011310+00:00" -updated: "2026-03-02T00:38:22.045331+00:00" +updated: "2026-03-03T05:07:33.073381+00:00" relations: - target: ebc3e5af-b3d1-486b-9751-8ece841aa93f type: RELATED_TO @@ -43,6 +43,11 @@ relations: direction: incoming strength: 0.76 edge_id: e90568a0-c9d3-47a8-9a67-7c26fe7644fa + - target: 96a6c125-bb69-45af-b1b6-a9b48654fb7e + type: BUILDS_ON + direction: incoming + strength: 0.74 + edge_id: 711859b9-fdf3-4b7d-80ec-9dc7668aea4f --- Converted MemoryGraph from MCP server to Claude Code skill to reduce token cost. MCP tools were always in context (~45 tools eating tokens every turn). Skill loads on-demand only when triggered.