claude-code-memory 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -116,13 +116,51 @@ That's it. Start a Claude Code session and memories will begin accumulating auto
116
116
  memory-mcp setup Interactive first-time setup
117
117
  memory-mcp init [dir] Initialize memory for a project
118
118
  memory-mcp status [dir] Show memory status and health
119
+ memory-mcp context [dir] Show context metrics and token usage
120
+ memory-mcp context --html Generate visual HTML dashboard
119
121
  memory-mcp search <query> Search memories by keyword
120
122
  memory-mcp ask <question> Ask a question, get answer from memory
121
123
  memory-mcp consolidate [dir] Merge duplicates, prune stale memories
122
124
  memory-mcp key [api-key] Set or check Anthropic API key
125
+ memory-mcp snapshots [dir] List git snapshot history
126
+ memory-mcp snapshot-enable Enable automatic git snapshots
127
+ memory-mcp snapshot-disable Disable git snapshots
123
128
  memory-mcp help Show help
124
129
  ```
125
130
 
131
+ ## Context Dashboard
132
+
133
+ Visualize your memory usage with `memory-mcp context`:
134
+
135
+ ```
136
+ Context Dashboard
137
+
138
+ Project: my-app
139
+
140
+ Total Context
141
+ 2.8K estimated tokens
142
+
143
+ Tier 1 CLAUDE.md (auto-loaded)
144
+ █████████████████░░░░░░░░░░░░░ 1.0K
145
+ 45 lines, 44 in memory block
146
+
147
+ Tier 2 .memory/state.json (searchable)
148
+ ██████████████████████████████ 1.8K
149
+ 29 active, 5 archived, 24 superseded
150
+
151
+ Memories by Type
152
+ architecture ███░░░░░░░░░░░░░░░░░ 8 memories (291 tokens)
153
+ decision ██████░░░░░░░░░░░░░░ 18 memories (540 tokens)
154
+ gotcha ████░░░░░░░░░░░░░░░░ 10 memories (332 tokens)
155
+ progress ██████░░░░░░░░░░░░░░ 19 memories (538 tokens)
156
+
157
+ Git Snapshots
158
+ ● Enabled on __memory-snapshots
159
+ 42 commits → origin
160
+ ```
161
+
162
+ Use `memory-mcp context --html` to generate an interactive browser dashboard.
163
+
126
164
  ## MCP Tools (used by Claude mid-conversation)
127
165
 
128
166
  When configured as an MCP server, Claude can access these tools during a session:
package/dist/cli.js CHANGED
@@ -40,6 +40,7 @@ const readline = __importStar(require("readline"));
40
40
  const store_1 = require("./store");
41
41
  const llm_1 = require("./llm");
42
42
  const git_snapshot_1 = require("./git-snapshot");
43
+ const context_1 = require("./context");
43
44
  // --- Colors (no dependencies) ---
44
45
  const c = {
45
46
  reset: "\x1b[0m",
@@ -123,8 +124,9 @@ function installHooks(settingsPath) {
123
124
  }
124
125
  if (!settings.hooks)
125
126
  settings.hooks = {};
127
+ // Quote path to handle spaces (e.g., "Application Support" on macOS)
126
128
  const hookEntry = {
127
- hooks: [{ type: "command", command: `node ${EXTRACTOR_PATH}`, timeout: 30 }],
129
+ hooks: [{ type: "command", command: `node "${EXTRACTOR_PATH}"`, timeout: 30 }],
128
130
  };
129
131
  let added = 0;
130
132
  for (const event of ["Stop", "PreCompact", "SessionEnd"]) {
@@ -609,6 +611,75 @@ async function cmdSnapshotDisable(projectDir) {
609
611
  ok("Git snapshots disabled");
610
612
  console.log(` ${c.dim}Existing snapshots on branch '${config.branch}' are preserved.${c.reset}\n`);
611
613
  }
614
+ // --- Context Command ---
615
+ async function cmdContext(projectDir, options) {
616
+ const absDir = path.resolve(projectDir || ".");
617
+ const metrics = (0, context_1.getContextMetrics)(absDir);
618
+ if (options?.html) {
619
+ // Generate HTML dashboard
620
+ const html = (0, context_1.generateHtmlDashboard)(absDir, metrics);
621
+ const outputPath = path.join(absDir, ".memory", "dashboard.html");
622
+ if (!fs.existsSync(path.join(absDir, ".memory"))) {
623
+ fs.mkdirSync(path.join(absDir, ".memory"), { recursive: true });
624
+ }
625
+ fs.writeFileSync(outputPath, html);
626
+ ok(`Dashboard saved to ${outputPath}`);
627
+ if (options?.open) {
628
+ const { exec } = require("child_process");
629
+ exec(`open "${outputPath}"`);
630
+ }
631
+ return;
632
+ }
633
+ // CLI output
634
+ heading("Context Dashboard");
635
+ console.log(` ${c.bold}Project:${c.reset} ${path.basename(absDir)}\n`);
636
+ // Token summary
637
+ console.log(` ${c.bold}${c.cyan}Total Context${c.reset}`);
638
+ console.log(` ${c.bold}${(0, context_1.formatTokens)(metrics.summary.totalTokens)}${c.reset} estimated tokens\n`);
639
+ const maxTokens = Math.max(metrics.summary.tier1Tokens, metrics.summary.tier2Tokens, 1);
640
+ console.log(` ${c.blue}Tier 1${c.reset} CLAUDE.md (auto-loaded)`);
641
+ console.log(` ${(0, context_1.asciiBar)(metrics.summary.tier1Tokens, maxTokens, 30)} ${(0, context_1.formatTokens)(metrics.summary.tier1Tokens)}`);
642
+ console.log(` ${c.dim}${metrics.claudeMd.lines} lines, ${metrics.claudeMd.memoryBlockLines} in memory block${c.reset}\n`);
643
+ console.log(` ${c.green}Tier 2${c.reset} .memory/state.json (searchable)`);
644
+ console.log(` ${(0, context_1.asciiBar)(metrics.summary.tier2Tokens, maxTokens, 30)} ${(0, context_1.formatTokens)(metrics.summary.tier2Tokens)}`);
645
+ console.log(` ${c.dim}${metrics.memoryStore.activeMemories} active, ${metrics.memoryStore.archivedMemories} archived, ${metrics.memoryStore.supersededMemories} superseded${c.reset}\n`);
646
+ // Memory by type
647
+ if (Object.keys(metrics.memoryStore.byType).length > 0) {
648
+ console.log(` ${c.bold}Memories by Type${c.reset}`);
649
+ const typeOrder = ["architecture", "decision", "pattern", "gotcha", "progress", "context"];
650
+ const typeColors = {
651
+ architecture: c.blue,
652
+ decision: c.red,
653
+ pattern: c.green,
654
+ gotcha: c.yellow,
655
+ progress: c.magenta,
656
+ context: c.cyan,
657
+ };
658
+ for (const type of typeOrder) {
659
+ const data = metrics.memoryStore.byType[type];
660
+ if (data) {
661
+ const color = typeColors[type] || c.gray;
662
+ const bar = (0, context_1.asciiBar)(data.tokens, metrics.summary.tier2Tokens || 1, 20);
663
+ console.log(` ${color}${type.padEnd(12)}${c.reset} ${bar} ${data.count.toString().padStart(3)} memories (${(0, context_1.formatTokens)(data.tokens)})`);
664
+ }
665
+ }
666
+ console.log("");
667
+ }
668
+ // Snapshots
669
+ console.log(` ${c.bold}Git Snapshots${c.reset}`);
670
+ if (metrics.snapshots.enabled) {
671
+ console.log(` ${c.green}●${c.reset} Enabled on ${c.cyan}${metrics.snapshots.branch}${c.reset}`);
672
+ console.log(` ${c.bold}${metrics.snapshots.totalCommits}${c.reset} commits${metrics.snapshots.remote ? ` → ${metrics.snapshots.remote}` : " (local)"}`);
673
+ if (metrics.snapshots.latestCommit) {
674
+ console.log(` ${c.dim}Latest: ${metrics.snapshots.latestCommit} (${metrics.snapshots.latestDate})${c.reset}`);
675
+ }
676
+ }
677
+ else {
678
+ console.log(` ${c.yellow}○${c.reset} Disabled`);
679
+ console.log(` ${c.dim}Run 'memory-mcp snapshot-enable' to enable${c.reset}`);
680
+ }
681
+ console.log(`\n ${c.dim}Use 'memory-mcp context --html' to generate a visual dashboard${c.reset}\n`);
682
+ }
612
683
  // --- Help ---
613
684
  function printHelp() {
614
685
  console.log(`
@@ -625,6 +696,7 @@ ${c.bold}COMMANDS${c.reset}
625
696
  ${c.cyan}ask${c.reset} <question> [dir] Ask a question, get answer from memory
626
697
  ${c.cyan}consolidate${c.reset} [dir] Merge duplicates, prune stale memories
627
698
  ${c.cyan}key${c.reset} [api-key] Set or check Anthropic API key
699
+ ${c.cyan}context${c.reset} [dir] [--html] Show context metrics and token usage
628
700
  ${c.cyan}snapshots${c.reset} [dir] List git snapshot history
629
701
  ${c.cyan}snapshot-enable${c.reset} [dir] Enable git snapshots (after git init)
630
702
  ${c.cyan}snapshot-disable${c.reset} [dir] Disable git snapshots
@@ -683,6 +755,11 @@ async function main() {
683
755
  return cmdConsolidate(args[1]);
684
756
  case "key":
685
757
  return cmdKey(args[1]);
758
+ case "context":
759
+ const htmlFlag = args.includes("--html");
760
+ const openFlag = args.includes("--open");
761
+ const contextDir = args.find(a => !a.startsWith("--") && a !== "context");
762
+ return cmdContext(contextDir, { html: htmlFlag, open: openFlag });
686
763
  case "snapshots":
687
764
  return cmdSnapshots(args[1]);
688
765
  case "snapshot-enable":
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * context.ts - Context visualization and token counting
3
+ *
4
+ * Provides metrics about memory usage, token counts, and context distribution.
5
+ */
6
+ export interface ContextMetrics {
7
+ claudeMd: {
8
+ exists: boolean;
9
+ lines: number;
10
+ chars: number;
11
+ tokens: number;
12
+ memoryBlockLines: number;
13
+ memoryBlockTokens: number;
14
+ };
15
+ memoryStore: {
16
+ exists: boolean;
17
+ totalMemories: number;
18
+ activeMemories: number;
19
+ archivedMemories: number;
20
+ supersededMemories: number;
21
+ totalChars: number;
22
+ totalTokens: number;
23
+ byType: Record<string, {
24
+ count: number;
25
+ tokens: number;
26
+ }>;
27
+ };
28
+ snapshots: {
29
+ enabled: boolean;
30
+ branch: string;
31
+ remote: string | null;
32
+ totalCommits: number;
33
+ latestCommit: string | null;
34
+ latestDate: string | null;
35
+ };
36
+ summary: {
37
+ tier1Tokens: number;
38
+ tier2Tokens: number;
39
+ totalTokens: number;
40
+ tier1Percentage: number;
41
+ snapshotCount: number;
42
+ };
43
+ }
44
+ export declare function estimateTokens(text: string): number;
45
+ export declare function getContextMetrics(projectDir: string): ContextMetrics;
46
+ /**
47
+ * Generate ASCII bar chart
48
+ */
49
+ export declare function asciiBar(value: number, max: number, width?: number): string;
50
+ /**
51
+ * Format token count with K suffix
52
+ */
53
+ export declare function formatTokens(tokens: number): string;
54
+ /**
55
+ * Generate HTML dashboard
56
+ */
57
+ export declare function generateHtmlDashboard(projectDir: string, metrics: ContextMetrics): string;
58
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,MAAM,WAAW,cAAc;IAE7B,QAAQ,EAAE;QACR,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IAGF,WAAW,EAAE;QACX,MAAM,EAAE,OAAO,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC3D,CAAC;IAGF,SAAS,EAAE;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;IAGF,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,CAqHpE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAI/E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CA6RzF"}
@@ -0,0 +1,463 @@
1
+ "use strict";
2
+ /**
3
+ * context.ts - Context visualization and token counting
4
+ *
5
+ * Provides metrics about memory usage, token counts, and context distribution.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.estimateTokens = estimateTokens;
42
+ exports.getContextMetrics = getContextMetrics;
43
+ exports.asciiBar = asciiBar;
44
+ exports.formatTokens = formatTokens;
45
+ exports.generateHtmlDashboard = generateHtmlDashboard;
46
+ const fs = __importStar(require("fs"));
47
+ const path = __importStar(require("path"));
48
+ const store_1 = require("./store");
49
+ const git_snapshot_1 = require("./git-snapshot");
50
+ // Rough token estimation: ~4 chars per token for English text
51
+ const CHARS_PER_TOKEN = 4;
52
+ function estimateTokens(text) {
53
+ return Math.ceil(text.length / CHARS_PER_TOKEN);
54
+ }
55
+ function getContextMetrics(projectDir) {
56
+ const claudeMdPath = path.join(projectDir, "CLAUDE.md");
57
+ const memDir = path.join(projectDir, ".memory");
58
+ const statePath = path.join(memDir, "state.json");
59
+ // CLAUDE.md metrics
60
+ let claudeMd = {
61
+ exists: false,
62
+ lines: 0,
63
+ chars: 0,
64
+ tokens: 0,
65
+ memoryBlockLines: 0,
66
+ memoryBlockTokens: 0,
67
+ };
68
+ if (fs.existsSync(claudeMdPath)) {
69
+ const content = fs.readFileSync(claudeMdPath, "utf-8");
70
+ claudeMd.exists = true;
71
+ claudeMd.lines = content.split("\n").length;
72
+ claudeMd.chars = content.length;
73
+ claudeMd.tokens = estimateTokens(content);
74
+ // Extract memory block
75
+ const startMarker = "<!-- MEMORY:START -->";
76
+ const endMarker = "<!-- MEMORY:END -->";
77
+ const startIdx = content.indexOf(startMarker);
78
+ const endIdx = content.indexOf(endMarker);
79
+ if (startIdx !== -1 && endIdx !== -1) {
80
+ const memoryBlock = content.slice(startIdx, endIdx + endMarker.length);
81
+ claudeMd.memoryBlockLines = memoryBlock.split("\n").length;
82
+ claudeMd.memoryBlockTokens = estimateTokens(memoryBlock);
83
+ }
84
+ }
85
+ // Memory store metrics
86
+ let memoryStore = {
87
+ exists: false,
88
+ totalMemories: 0,
89
+ activeMemories: 0,
90
+ archivedMemories: 0,
91
+ supersededMemories: 0,
92
+ totalChars: 0,
93
+ totalTokens: 0,
94
+ byType: {},
95
+ };
96
+ if (fs.existsSync(statePath)) {
97
+ const store = new store_1.MemoryStore(projectDir);
98
+ const state = store.getState();
99
+ const counts = store.getAllMemoryCount();
100
+ memoryStore.exists = true;
101
+ memoryStore.totalMemories = counts.total;
102
+ memoryStore.activeMemories = counts.active;
103
+ memoryStore.archivedMemories = counts.archived;
104
+ memoryStore.supersededMemories = counts.superseded;
105
+ // Calculate tokens by type
106
+ for (const memory of state.memories) {
107
+ const tokens = estimateTokens(memory.content);
108
+ memoryStore.totalChars += memory.content.length;
109
+ memoryStore.totalTokens += tokens;
110
+ if (!memoryStore.byType[memory.type]) {
111
+ memoryStore.byType[memory.type] = { count: 0, tokens: 0 };
112
+ }
113
+ memoryStore.byType[memory.type].count++;
114
+ memoryStore.byType[memory.type].tokens += tokens;
115
+ }
116
+ }
117
+ // Snapshot metrics
118
+ let snapshots = {
119
+ enabled: false,
120
+ branch: "__memory-snapshots",
121
+ remote: null,
122
+ totalCommits: 0,
123
+ latestCommit: null,
124
+ latestDate: null,
125
+ };
126
+ if (fs.existsSync(statePath)) {
127
+ const store = new store_1.MemoryStore(projectDir);
128
+ const config = store.getSnapshotConfig();
129
+ if (config) {
130
+ snapshots.enabled = config.enabled;
131
+ snapshots.branch = config.branch;
132
+ snapshots.remote = config.remote || null;
133
+ if (config.enabled) {
134
+ const snapshotList = (0, git_snapshot_1.listSnapshots)(projectDir, config.branch, 100);
135
+ snapshots.totalCommits = snapshotList.length;
136
+ if (snapshotList.length > 0) {
137
+ snapshots.latestCommit = snapshotList[0].hash.slice(0, 7);
138
+ snapshots.latestDate = snapshotList[0].date.split(" ")[0];
139
+ }
140
+ }
141
+ }
142
+ }
143
+ // Summary
144
+ const tier1Tokens = claudeMd.tokens;
145
+ const tier2Tokens = memoryStore.totalTokens;
146
+ const totalTokens = tier1Tokens + tier2Tokens;
147
+ return {
148
+ claudeMd,
149
+ memoryStore,
150
+ snapshots,
151
+ summary: {
152
+ tier1Tokens,
153
+ tier2Tokens,
154
+ totalTokens,
155
+ tier1Percentage: totalTokens > 0 ? Math.round((tier1Tokens / totalTokens) * 100) : 0,
156
+ snapshotCount: snapshots.totalCommits,
157
+ },
158
+ };
159
+ }
160
+ /**
161
+ * Generate ASCII bar chart
162
+ */
163
+ function asciiBar(value, max, width = 20) {
164
+ const filled = Math.round((value / max) * width);
165
+ const empty = width - filled;
166
+ return "█".repeat(filled) + "░".repeat(empty);
167
+ }
168
+ /**
169
+ * Format token count with K suffix
170
+ */
171
+ function formatTokens(tokens) {
172
+ if (tokens >= 1000) {
173
+ return `${(tokens / 1000).toFixed(1)}K`;
174
+ }
175
+ return String(tokens);
176
+ }
177
+ /**
178
+ * Generate HTML dashboard
179
+ */
180
+ function generateHtmlDashboard(projectDir, metrics) {
181
+ const projectName = path.basename(projectDir);
182
+ const typeColors = {
183
+ architecture: "#4a9eff",
184
+ decision: "#ff6b6b",
185
+ pattern: "#6bcb77",
186
+ gotcha: "#ffd93d",
187
+ progress: "#9b59b6",
188
+ context: "#1abc9c",
189
+ };
190
+ const typeData = Object.entries(metrics.memoryStore.byType)
191
+ .map(([type, data]) => ({
192
+ type,
193
+ count: data.count,
194
+ tokens: data.tokens,
195
+ color: typeColors[type] || "#888",
196
+ }))
197
+ .sort((a, b) => b.tokens - a.tokens);
198
+ return `<!DOCTYPE html>
199
+ <html lang="en">
200
+ <head>
201
+ <meta charset="UTF-8">
202
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
203
+ <title>memory-mcp Context Dashboard - ${projectName}</title>
204
+ <style>
205
+ * { margin: 0; padding: 0; box-sizing: border-box; }
206
+ body {
207
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
208
+ background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
209
+ color: #fff;
210
+ min-height: 100vh;
211
+ padding: 2rem;
212
+ }
213
+ .dashboard {
214
+ max-width: 1200px;
215
+ margin: 0 auto;
216
+ }
217
+ h1 {
218
+ font-size: 2rem;
219
+ margin-bottom: 0.5rem;
220
+ background: linear-gradient(90deg, #4a9eff, #6bcb77);
221
+ -webkit-background-clip: text;
222
+ -webkit-text-fill-color: transparent;
223
+ }
224
+ .subtitle {
225
+ color: #888;
226
+ margin-bottom: 2rem;
227
+ }
228
+ .grid {
229
+ display: grid;
230
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
231
+ gap: 1.5rem;
232
+ margin-bottom: 2rem;
233
+ }
234
+ .card {
235
+ background: rgba(255,255,255,0.05);
236
+ border-radius: 12px;
237
+ padding: 1.5rem;
238
+ border: 1px solid rgba(255,255,255,0.1);
239
+ }
240
+ .card h2 {
241
+ font-size: 0.875rem;
242
+ text-transform: uppercase;
243
+ letter-spacing: 0.1em;
244
+ color: #888;
245
+ margin-bottom: 1rem;
246
+ }
247
+ .big-number {
248
+ font-size: 3rem;
249
+ font-weight: bold;
250
+ line-height: 1;
251
+ }
252
+ .big-number.blue { color: #4a9eff; }
253
+ .big-number.green { color: #6bcb77; }
254
+ .big-number.yellow { color: #ffd93d; }
255
+ .big-number.purple { color: #9b59b6; }
256
+ .label {
257
+ color: #888;
258
+ font-size: 0.875rem;
259
+ margin-top: 0.5rem;
260
+ }
261
+ .progress-bar {
262
+ height: 8px;
263
+ background: rgba(255,255,255,0.1);
264
+ border-radius: 4px;
265
+ overflow: hidden;
266
+ margin: 1rem 0;
267
+ }
268
+ .progress-fill {
269
+ height: 100%;
270
+ border-radius: 4px;
271
+ transition: width 0.3s ease;
272
+ }
273
+ .tier-breakdown {
274
+ display: flex;
275
+ gap: 1rem;
276
+ margin-top: 1rem;
277
+ }
278
+ .tier {
279
+ flex: 1;
280
+ padding: 1rem;
281
+ background: rgba(255,255,255,0.05);
282
+ border-radius: 8px;
283
+ }
284
+ .tier-name {
285
+ font-size: 0.75rem;
286
+ text-transform: uppercase;
287
+ color: #888;
288
+ }
289
+ .tier-value {
290
+ font-size: 1.5rem;
291
+ font-weight: bold;
292
+ margin-top: 0.25rem;
293
+ }
294
+ .type-list {
295
+ margin-top: 1rem;
296
+ }
297
+ .type-item {
298
+ display: flex;
299
+ align-items: center;
300
+ gap: 0.75rem;
301
+ padding: 0.5rem 0;
302
+ border-bottom: 1px solid rgba(255,255,255,0.05);
303
+ }
304
+ .type-color {
305
+ width: 12px;
306
+ height: 12px;
307
+ border-radius: 3px;
308
+ }
309
+ .type-name {
310
+ flex: 1;
311
+ }
312
+ .type-count {
313
+ color: #888;
314
+ font-size: 0.875rem;
315
+ }
316
+ .type-tokens {
317
+ font-weight: bold;
318
+ min-width: 60px;
319
+ text-align: right;
320
+ }
321
+ .snapshot-info {
322
+ display: flex;
323
+ flex-direction: column;
324
+ gap: 0.5rem;
325
+ }
326
+ .snapshot-row {
327
+ display: flex;
328
+ justify-content: space-between;
329
+ padding: 0.5rem 0;
330
+ border-bottom: 1px solid rgba(255,255,255,0.05);
331
+ }
332
+ .snapshot-label { color: #888; }
333
+ .snapshot-value { font-weight: 500; }
334
+ .status-badge {
335
+ display: inline-block;
336
+ padding: 0.25rem 0.75rem;
337
+ border-radius: 12px;
338
+ font-size: 0.75rem;
339
+ font-weight: 500;
340
+ }
341
+ .status-badge.enabled {
342
+ background: rgba(107, 203, 119, 0.2);
343
+ color: #6bcb77;
344
+ }
345
+ .status-badge.disabled {
346
+ background: rgba(255, 107, 107, 0.2);
347
+ color: #ff6b6b;
348
+ }
349
+ .footer {
350
+ text-align: center;
351
+ color: #555;
352
+ font-size: 0.875rem;
353
+ margin-top: 2rem;
354
+ }
355
+ .footer a {
356
+ color: #4a9eff;
357
+ text-decoration: none;
358
+ }
359
+ </style>
360
+ </head>
361
+ <body>
362
+ <div class="dashboard">
363
+ <h1>🧠 memory-mcp</h1>
364
+ <p class="subtitle">${projectName} - Context Dashboard</p>
365
+
366
+ <div class="grid">
367
+ <!-- Total Tokens -->
368
+ <div class="card">
369
+ <h2>Total Context</h2>
370
+ <div class="big-number blue">${formatTokens(metrics.summary.totalTokens)}</div>
371
+ <div class="label">estimated tokens</div>
372
+ <div class="progress-bar">
373
+ <div class="progress-fill" style="width: ${metrics.summary.tier1Percentage}%; background: linear-gradient(90deg, #4a9eff, #6bcb77);"></div>
374
+ </div>
375
+ <div class="tier-breakdown">
376
+ <div class="tier">
377
+ <div class="tier-name">Tier 1 (CLAUDE.md)</div>
378
+ <div class="tier-value" style="color: #4a9eff;">${formatTokens(metrics.summary.tier1Tokens)}</div>
379
+ </div>
380
+ <div class="tier">
381
+ <div class="tier-name">Tier 2 (state.json)</div>
382
+ <div class="tier-value" style="color: #6bcb77;">${formatTokens(metrics.summary.tier2Tokens)}</div>
383
+ </div>
384
+ </div>
385
+ </div>
386
+
387
+ <!-- Memories -->
388
+ <div class="card">
389
+ <h2>Memories</h2>
390
+ <div class="big-number green">${metrics.memoryStore.activeMemories}</div>
391
+ <div class="label">active memories</div>
392
+ <div class="type-list">
393
+ ${typeData.map(t => `
394
+ <div class="type-item">
395
+ <div class="type-color" style="background: ${t.color};"></div>
396
+ <div class="type-name">${t.type}</div>
397
+ <div class="type-count">${t.count}</div>
398
+ <div class="type-tokens">${formatTokens(t.tokens)}</div>
399
+ </div>
400
+ `).join("")}
401
+ </div>
402
+ </div>
403
+
404
+ <!-- CLAUDE.md -->
405
+ <div class="card">
406
+ <h2>CLAUDE.md (Tier 1)</h2>
407
+ <div class="big-number purple">${metrics.claudeMd.lines}</div>
408
+ <div class="label">lines</div>
409
+ <div class="snapshot-info" style="margin-top: 1rem;">
410
+ <div class="snapshot-row">
411
+ <span class="snapshot-label">Memory block</span>
412
+ <span class="snapshot-value">${metrics.claudeMd.memoryBlockLines} lines</span>
413
+ </div>
414
+ <div class="snapshot-row">
415
+ <span class="snapshot-label">Tokens</span>
416
+ <span class="snapshot-value">${formatTokens(metrics.claudeMd.tokens)}</span>
417
+ </div>
418
+ <div class="snapshot-row">
419
+ <span class="snapshot-label">Characters</span>
420
+ <span class="snapshot-value">${metrics.claudeMd.chars.toLocaleString()}</span>
421
+ </div>
422
+ </div>
423
+ </div>
424
+
425
+ <!-- Snapshots -->
426
+ <div class="card">
427
+ <h2>Git Snapshots</h2>
428
+ <div class="big-number yellow">${metrics.snapshots.totalCommits}</div>
429
+ <div class="label">commits</div>
430
+ <div class="snapshot-info" style="margin-top: 1rem;">
431
+ <div class="snapshot-row">
432
+ <span class="snapshot-label">Status</span>
433
+ <span class="status-badge ${metrics.snapshots.enabled ? 'enabled' : 'disabled'}">
434
+ ${metrics.snapshots.enabled ? 'Enabled' : 'Disabled'}
435
+ </span>
436
+ </div>
437
+ <div class="snapshot-row">
438
+ <span class="snapshot-label">Branch</span>
439
+ <span class="snapshot-value">${metrics.snapshots.branch}</span>
440
+ </div>
441
+ <div class="snapshot-row">
442
+ <span class="snapshot-label">Remote</span>
443
+ <span class="snapshot-value">${metrics.snapshots.remote || 'local only'}</span>
444
+ </div>
445
+ ${metrics.snapshots.latestCommit ? `
446
+ <div class="snapshot-row">
447
+ <span class="snapshot-label">Latest</span>
448
+ <span class="snapshot-value">${metrics.snapshots.latestCommit} (${metrics.snapshots.latestDate})</span>
449
+ </div>
450
+ ` : ''}
451
+ </div>
452
+ </div>
453
+ </div>
454
+
455
+ <div class="footer">
456
+ Generated by <a href="https://github.com/yuvalsuede/memory-mcp">memory-mcp</a> |
457
+ <code>npm install -g claude-code-memory</code>
458
+ </div>
459
+ </div>
460
+ </body>
461
+ </html>`;
462
+ }
463
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDH,wCAEC;AAED,8CAqHC;AAKD,4BAIC;AAKD,oCAKC;AAKD,sDA6RC;AAjeD,uCAAyB;AACzB,2CAA6B;AAC7B,mCAAsC;AACtC,iDAA+C;AAE/C,8DAA8D;AAC9D,MAAM,eAAe,GAAG,CAAC,CAAC;AA6C1B,SAAgB,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,iBAAiB,CAAC,UAAkB;IAClD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAElD,oBAAoB;IACpB,IAAI,QAAQ,GAAG;QACb,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;KACrB,CAAC;IAEF,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvD,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QACvB,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAC5C,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAChC,QAAQ,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QAE1C,uBAAuB;QACvB,MAAM,WAAW,GAAG,uBAAuB,CAAC;QAC5C,MAAM,SAAS,GAAG,qBAAqB,CAAC;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YACvE,QAAQ,CAAC,gBAAgB,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;YAC3D,QAAQ,CAAC,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,IAAI,WAAW,GAAG;QAChB,MAAM,EAAE,KAAK;QACb,aAAa,EAAE,CAAC;QAChB,cAAc,EAAE,CAAC;QACjB,gBAAgB,EAAE,CAAC;QACnB,kBAAkB,EAAE,CAAC;QACrB,UAAU,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,MAAM,EAAE,EAAuD;KAChE,CAAC;IAEF,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,mBAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAEzC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1B,WAAW,CAAC,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC;QACzC,WAAW,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3C,WAAW,CAAC,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC/C,WAAW,CAAC,kBAAkB,GAAG,MAAM,CAAC,UAAU,CAAC;QAEnD,2BAA2B;QAC3B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9C,WAAW,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;YAChD,WAAW,CAAC,WAAW,IAAI,MAAM,CAAC;YAElC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YAC5D,CAAC;YACD,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YACxC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC;QACnD,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,IAAI,SAAS,GAAG;QACd,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,oBAAoB;QAC5B,MAAM,EAAE,IAAqB;QAC7B,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,IAAqB;QACnC,UAAU,EAAE,IAAqB;KAClC,CAAC;IAEF,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,mBAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACzC,IAAI,MAAM,EAAE,CAAC;YACX,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YACnC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YACjC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;YAEzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,YAAY,GAAG,IAAA,4BAAa,EAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACnE,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;gBAC7C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC1D,SAAS,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU;IACV,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC;IACpC,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,MAAM,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;IAE9C,OAAO;QACL,QAAQ;QACR,WAAW;QACX,SAAS;QACT,OAAO,EAAE;YACP,WAAW;YACX,WAAW;YACX,WAAW;YACX,eAAe,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACpF,aAAa,EAAE,SAAS,CAAC,YAAY;SACtC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAE,QAAgB,EAAE;IACrE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAC7B,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,MAAc;IACzC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,UAAkB,EAAE,OAAuB;IAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,UAAU,GAA2B;QACzC,YAAY,EAAE,SAAS;QACvB,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,SAAS;KACnB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;SACxD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtB,IAAI;QACJ,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM;KAClC,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO;;;;;0CAKiC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAiK3B,WAAW;;;;;;uCAME,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;;;qDAG3B,OAAO,CAAC,OAAO,CAAC,eAAe;;;;;8DAKtB,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;;;;8DAIzC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;;;;wCAQ/D,OAAO,CAAC,WAAW,CAAC,cAAc;;;YAG9D,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;;2DAE6B,CAAC,CAAC,KAAK;uCAC3B,CAAC,CAAC,IAAI;wCACL,CAAC,CAAC,KAAK;yCACN,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;;WAEpD,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;;;;;;;yCAOoB,OAAO,CAAC,QAAQ,CAAC,KAAK;;;;;2CAKpB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;;;;2CAIjC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;;;;2CAIrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE;;;;;;;;yCAQzC,OAAO,CAAC,SAAS,CAAC,YAAY;;;;;wCAK/B,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;gBAC1E,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;;;;;2CAKvB,OAAO,CAAC,SAAS,CAAC,MAAM;;;;2CAIxB,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,YAAY;;YAEvE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;;;2CAGF,OAAO,CAAC,SAAS,CAAC,YAAY,KAAK,OAAO,CAAC,SAAS,CAAC,UAAU;;WAE/F,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;QAWR,CAAC;AACT,CAAC"}
package/dist/install.js CHANGED
@@ -78,7 +78,8 @@ if (apiKey) {
78
78
  console.log(` ✓ API key stored in ~/.memory-mcp/config.json`);
79
79
  }
80
80
  // --- Hook Config ---
81
- const hookCommand = `node ${extractorPath}`;
81
+ // Quote path to handle spaces (e.g., "Application Support" on macOS)
82
+ const hookCommand = `node "${extractorPath}"`;
82
83
  const hookEntry = {
83
84
  hooks: [{ type: "command", command: hookCommand, timeout: 30 }],
84
85
  };
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-memory",
3
- "version": "1.1.2",
3
+ "version": "1.2.0",
4
4
  "mcpName": "io.github.yuvalsuede/memory-mcp",
5
5
  "description": "Persistent memory for Claude Code — never lose context between sessions",
6
6
  "main": "dist/index.js",