cortex-mcp 1.5.0 → 1.7.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
@@ -50,6 +50,34 @@ Add to your MCP config (no install needed, auto-updates on every launch):
50
50
  }
51
51
  ```
52
52
 
53
+ ### 🧠 Supercharge with Free LLM (Optional)
54
+
55
+ Add a **free** OpenRouter API key to make Cortex 3x smarter at extracting knowledge:
56
+
57
+ ```json
58
+ {
59
+ "mcpServers": {
60
+ "cortex": {
61
+ "command": "npx",
62
+ "args": ["-y", "cortex-mcp@latest"],
63
+ "transportType": "stdio",
64
+ "env": {
65
+ "OPENROUTER_API_KEY": "sk-or-v1-your-key-here"
66
+ }
67
+ }
68
+ }
69
+ }
70
+ ```
71
+
72
+ **How to get a free key:**
73
+
74
+ 1. Go to [openrouter.ai/keys](https://openrouter.ai/keys)
75
+ 2. Create a free account
76
+ 3. Generate an API key
77
+ 4. Paste it in the config above
78
+
79
+ **What it enables:** When regex can't extract patterns from your conversation, Cortex uses a free LLM (Llama 4 Scout) to catch implicit decisions, preferences, and architecture knowledge that keywords miss. Without it, ~70% of conversations produce no memories. With it, that drops to ~20%.
80
+
53
81
  ### Option 2: Global install
54
82
 
55
83
  ```bash
@@ -337,7 +365,7 @@ graph TB
337
365
  - **Windows**: Install [Visual Studio Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/)
338
366
  - **macOS**: Run `xcode-select --install`
339
367
  - **Linux**: Run `sudo apt-get install build-essential python3`
340
- </details>
368
+ </details>
341
369
 
342
370
  <details>
343
371
  <summary><strong>License key not working</strong></summary>
@@ -11,6 +11,8 @@ export interface LLMConfig {
11
11
  model: string;
12
12
  baseUrl: string;
13
13
  maxTokens: number;
14
+ provider: 'openrouter' | 'openai' | 'anthropic' | 'custom';
15
+ extraHeaders?: Record<string, string>;
14
16
  }
15
17
  /**
16
18
  * Check if LLM enhancement is available (API key configured).
@@ -1 +1 @@
1
- {"version":3,"file":"llm-enhancer.d.ts","sourceRoot":"","sources":["../../src/memory/llm-enhancer.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAoGD;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAMxC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAIvC;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,iBAAiB,CAAC,CA2D5B;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACnC,QAAQ,EAAE,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GACrE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmBxB"}
1
+ {"version":3,"file":"llm-enhancer.d.ts","sourceRoot":"","sources":["../../src/memory/llm-enhancer.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,YAAY,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAiID;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAMxC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAKvC;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,iBAAiB,CAAC,CA2D5B;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACnC,QAAQ,EAAE,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GACrE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmBxB"}
@@ -40,44 +40,73 @@ exports.summarizeMemories = summarizeMemories;
40
40
  /**
41
41
  * LLM Enhancer — Optional LLM-powered memory enrichment.
42
42
  *
43
- * When the user provides an API key (OPENAI_API_KEY or CORTEX_LLM_KEY),
44
- * this module uses an LLM to:
43
+ * Supports multiple LLM providers:
44
+ * 1. OpenRouter (FREE models available!) OPENROUTER_API_KEY
45
+ * 2. OpenAI — OPENAI_API_KEY
46
+ * 3. Anthropic — ANTHROPIC_API_KEY
47
+ * 4. Any OpenAI-compatible API — CORTEX_LLM_KEY + CORTEX_LLM_BASE_URL
48
+ *
49
+ * When the user provides an API key, this module uses an LLM to:
45
50
  * 1. Better classify memories (vs. keyword matching)
46
- * 2. Extract richer insights from commit messages
51
+ * 2. Extract richer insights from conversations
47
52
  * 3. Generate smart tags and connections
48
53
  * 4. Summarize and merge related memories
49
54
  *
50
55
  * When no API key is available, falls back to keyword-based classification.
51
56
  * This ensures Cortex works for EVERYONE — free without an API key,
52
57
  * but smarter WITH one.
58
+ *
59
+ * === HOW TO GET A FREE OPENROUTER KEY ===
60
+ * 1. Go to https://openrouter.ai/keys
61
+ * 2. Create a free account
62
+ * 3. Generate an API key (free tier included)
63
+ * 4. Set: OPENROUTER_API_KEY=sk-or-v1-... in your environment
64
+ * 5. Cortex will automatically use free models for smarter memory extraction!
53
65
  */
54
66
  const extract_tags_1 = require("../utils/extract-tags");
55
67
  const https = __importStar(require("https"));
56
68
  const http = __importStar(require("http"));
57
69
  // ─── Config Detection ─────────────────────────────────────────────────────────
58
70
  function detectLLMConfig() {
59
- // Check multiple API key sources
71
+ // 1. OpenRouter (RECOMMENDED has free models!)
72
+ const openrouterKey = process.env.OPENROUTER_API_KEY;
73
+ if (openrouterKey) {
74
+ return {
75
+ apiKey: openrouterKey,
76
+ model: process.env.CORTEX_LLM_MODEL || 'meta-llama/llama-4-scout:free',
77
+ baseUrl: 'https://openrouter.ai/api',
78
+ maxTokens: 200,
79
+ provider: 'openrouter',
80
+ extraHeaders: {
81
+ 'HTTP-Referer': 'https://github.com/jaswanthkumarj1234-beep/cortex-mcp',
82
+ 'X-Title': 'Cortex MCP',
83
+ },
84
+ };
85
+ }
86
+ // 2. Check other API key sources
60
87
  const apiKey = process.env.OPENAI_API_KEY
61
88
  || process.env.CORTEX_LLM_KEY
62
89
  || process.env.ANTHROPIC_API_KEY
63
90
  || null;
64
91
  if (!apiKey)
65
92
  return null;
66
- // Detect which provider based on key prefix
93
+ // 3. Anthropic
67
94
  if (apiKey.startsWith('sk-ant-')) {
68
95
  return {
69
96
  apiKey,
70
97
  model: process.env.CORTEX_LLM_MODEL || 'claude-3-haiku-20240307',
71
98
  baseUrl: 'https://api.anthropic.com',
72
99
  maxTokens: 200,
100
+ provider: 'anthropic',
73
101
  };
74
102
  }
75
- // Default to OpenAI-compatible (works with OpenAI, OpenRouter, local)
103
+ // 4. Default to OpenAI-compatible (works with OpenAI, local, etc.)
76
104
  return {
77
105
  apiKey,
78
106
  model: process.env.CORTEX_LLM_MODEL || 'gpt-4o-mini',
79
107
  baseUrl: process.env.CORTEX_LLM_BASE_URL || 'https://api.openai.com',
80
108
  maxTokens: 200,
109
+ provider: 'openai',
81
110
  };
82
111
  }
83
112
  // ─── LLM Call ─────────────────────────────────────────────────────────────────
@@ -90,16 +119,21 @@ function callOpenAI(config, prompt) {
90
119
  max_tokens: config.maxTokens,
91
120
  temperature: 0.1,
92
121
  });
122
+ const headers = {
123
+ 'Content-Type': 'application/json',
124
+ 'Authorization': `Bearer ${config.apiKey}`,
125
+ 'Content-Length': Buffer.byteLength(body),
126
+ };
127
+ // Add provider-specific headers (OpenRouter requires HTTP-Referer and X-Title)
128
+ if (config.extraHeaders) {
129
+ Object.assign(headers, config.extraHeaders);
130
+ }
93
131
  const options = {
94
132
  hostname: url.hostname,
95
133
  port: url.port || 443,
96
134
  path: url.pathname,
97
135
  method: 'POST',
98
- headers: {
99
- 'Content-Type': 'application/json',
100
- 'Authorization': `Bearer ${config.apiKey}`,
101
- 'Content-Length': Buffer.byteLength(body),
102
- },
136
+ headers,
103
137
  };
104
138
  const transport = url.protocol === 'https:' ? https : http;
105
139
  const req = transport.request(options, (res) => {
@@ -108,6 +142,10 @@ function callOpenAI(config, prompt) {
108
142
  res.on('end', () => {
109
143
  try {
110
144
  const json = JSON.parse(data);
145
+ if (json.error) {
146
+ reject(new Error(`LLM API error: ${json.error.message || JSON.stringify(json.error)}`));
147
+ return;
148
+ }
111
149
  const content = json.choices?.[0]?.message?.content || '';
112
150
  resolve(content.trim());
113
151
  }
@@ -117,7 +155,7 @@ function callOpenAI(config, prompt) {
117
155
  });
118
156
  });
119
157
  req.on('error', reject);
120
- req.setTimeout(10000, () => {
158
+ req.setTimeout(15000, () => {
121
159
  req.destroy();
122
160
  reject(new Error('LLM request timeout'));
123
161
  });
@@ -161,7 +199,9 @@ function isLLMAvailable() {
161
199
  function getLLMProvider() {
162
200
  if (!isLLMAvailable() || !_config)
163
201
  return 'none';
164
- if (_config.baseUrl.includes('anthropic'))
202
+ if (_config.provider === 'openrouter')
203
+ return `openrouter/${_config.model}`;
204
+ if (_config.provider === 'anthropic')
165
205
  return `anthropic/${_config.model}`;
166
206
  return `openai/${_config.model}`;
167
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"llm-enhancer.js","sourceRoot":"","sources":["../../src/memory/llm-enhancer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-enhancer.js","sourceRoot":"","sources":["../../src/memory/llm-enhancer.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,51 @@
1
1
  /**
2
2
  * Usage Stats — Tracks Cortex usage metrics for impact visibility.
3
3
  *
4
- * Solves the #1 retention problem: users don't SEE the value Cortex provides.
5
- * Tracks recalls, stores, catches, and estimates time saved.
4
+ * THE KEY TO ADDICTION: Users must SEE the value Cortex provides.
5
+ * Every force_recall response now ends with a stats footer showing:
6
+ * - "Cortex Saved You X times"
7
+ * - "Brain Health: 87/100"
8
+ * - Time saved estimate
9
+ * - Memory milestones
10
+ *
11
+ * Stats are PERSISTED in the database so they survive restarts.
6
12
  */
13
+ import { MemoryStore } from '../db/memory-store';
7
14
  declare const lifetimeStats: {
8
15
  totalRecalls: number;
9
16
  totalMemoriesServed: number;
10
17
  totalHallucationsCaught: number;
11
18
  totalMemoriesStored: number;
12
19
  totalSessions: number;
20
+ savedYouCount: number;
21
+ totalAutoLearns: number;
22
+ totalMilestonesHit: number;
23
+ firstUsed: number;
13
24
  };
14
25
  /** Record a recall event */
15
26
  export declare function trackRecall(memoriesReturned: number): void;
16
- /** Record a memory store event */
17
- export declare function trackStore(): void;
18
- /** Record a hallucination catch */
27
+ /** Record a memory store event — checks for milestones */
28
+ export declare function trackStore(): string;
29
+ /** Record a hallucination catch — this is a "saved you" moment */
19
30
  export declare function trackCatch(): void;
31
+ /** Record a "saved you" moment (correction recalled → mistake prevented) */
32
+ export declare function trackSaved(): void;
20
33
  /** Record a scan */
21
34
  export declare function trackScan(): void;
22
35
  /** Record a code review */
23
36
  export declare function trackReview(): void;
24
- /** Estimate time saved (each recalled memory ≈ 15s of re-explanation) */
37
+ /** Record an auto_learn */
38
+ export declare function trackAutoLearn(): void;
39
+ export declare function calculateBrainHealth(memoryStore: MemoryStore): {
40
+ score: number;
41
+ grade: string;
42
+ tips: string[];
43
+ };
25
44
  export declare function estimateTimeSaved(): {
26
45
  seconds: number;
27
46
  formatted: string;
28
47
  };
29
- /** Format stats footer for injection into force_recall response */
30
- export declare function formatStatsFooter(): string;
31
- /** Get full stats object */
48
+ export declare function formatStatsFooter(memoryStore?: MemoryStore): string;
32
49
  export declare function getUsageStats(): {
33
50
  session: {
34
51
  recallCount: number;
@@ -45,15 +62,20 @@ export declare function getUsageStats(): {
45
62
  totalHallucationsCaught: number;
46
63
  totalMemoriesStored: number;
47
64
  totalSessions: number;
65
+ savedYouCount: number;
66
+ totalAutoLearns: number;
67
+ totalMilestonesHit: number;
68
+ firstUsed: number;
48
69
  };
49
70
  timeSaved: {
50
71
  seconds: number;
51
72
  formatted: string;
52
73
  };
53
74
  };
54
- /** Reset session stats (called on new session) */
55
75
  export declare function resetSessionStats(): void;
56
76
  /** Initialize lifetime stats from stored data */
57
77
  export declare function initLifetimeStats(stored: Partial<typeof lifetimeStats>): void;
78
+ /** Get raw lifetime stats for persistence */
79
+ export declare function getLifetimeStats(): typeof lifetimeStats;
58
80
  export {};
59
81
  //# sourceMappingURL=usage-stats.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"usage-stats.d.ts","sourceRoot":"","sources":["../../src/memory/usage-stats.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,QAAA,MAAM,aAAa;;;;;;CAMlB,CAAC;AAEF,4BAA4B;AAC5B,wBAAgB,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAK1D;AAED,kCAAkC;AAClC,wBAAgB,UAAU,IAAI,IAAI,CAGjC;AAED,mCAAmC;AACnC,wBAAgB,UAAU,IAAI,IAAI,CAGjC;AAED,oBAAoB;AACpB,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAED,2BAA2B;AAC3B,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,yEAAyE;AACzE,wBAAgB,iBAAiB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAK1E;AAED,mEAAmE;AACnE,wBAAgB,iBAAiB,IAAI,MAAM,CAgB1C;AAED,4BAA4B;AAC5B,wBAAgB,aAAa;;;;;;;;;;;;;;;;;;iBA3BmB,MAAM;mBAAa,MAAM;;EAiCxE;AAED,kDAAkD;AAClD,wBAAgB,iBAAiB,IAAI,IAAI,CAWxC;AAED,iDAAiD;AACjD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,aAAa,CAAC,GAAG,IAAI,CAM7E"}
1
+ {"version":3,"file":"usage-stats.d.ts","sourceRoot":"","sources":["../../src/memory/usage-stats.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgBjD,QAAA,MAAM,aAAa;;;;;;;;;;CAUlB,CAAC;AAIF,4BAA4B;AAC5B,wBAAgB,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAK1D;AAED,0DAA0D;AAC1D,wBAAgB,UAAU,IAAI,MAAM,CAInC;AAED,kEAAkE;AAClE,wBAAgB,UAAU,IAAI,IAAI,CAIjC;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,IAAI,IAAI,CAEjC;AAED,oBAAoB;AACpB,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAED,2BAA2B;AAC3B,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,2BAA2B;AAC3B,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAMD,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB,CAkDA;AA2BD,wBAAgB,iBAAiB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAU1E;AAID,wBAAgB,iBAAiB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,CAiCnE;AAID,wBAAgB,aAAa;;;;;;;;;;;;;;;;;;;;;;iBAnDmB,MAAM;mBAAa,MAAM;;EAyDxE;AAID,wBAAgB,iBAAiB,IAAI,IAAI,CAWxC;AAED,iDAAiD;AACjD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,aAAa,CAAC,GAAG,IAAI,CAU7E;AAED,6CAA6C;AAC7C,wBAAgB,gBAAgB,IAAI,OAAO,aAAa,CAEvD"}
@@ -2,21 +2,31 @@
2
2
  /**
3
3
  * Usage Stats — Tracks Cortex usage metrics for impact visibility.
4
4
  *
5
- * Solves the #1 retention problem: users don't SEE the value Cortex provides.
6
- * Tracks recalls, stores, catches, and estimates time saved.
5
+ * THE KEY TO ADDICTION: Users must SEE the value Cortex provides.
6
+ * Every force_recall response now ends with a stats footer showing:
7
+ * - "Cortex Saved You X times"
8
+ * - "Brain Health: 87/100"
9
+ * - Time saved estimate
10
+ * - Memory milestones
11
+ *
12
+ * Stats are PERSISTED in the database so they survive restarts.
7
13
  */
8
14
  Object.defineProperty(exports, "__esModule", { value: true });
9
15
  exports.trackRecall = trackRecall;
10
16
  exports.trackStore = trackStore;
11
17
  exports.trackCatch = trackCatch;
18
+ exports.trackSaved = trackSaved;
12
19
  exports.trackScan = trackScan;
13
20
  exports.trackReview = trackReview;
21
+ exports.trackAutoLearn = trackAutoLearn;
22
+ exports.calculateBrainHealth = calculateBrainHealth;
14
23
  exports.estimateTimeSaved = estimateTimeSaved;
15
24
  exports.formatStatsFooter = formatStatsFooter;
16
25
  exports.getUsageStats = getUsageStats;
17
26
  exports.resetSessionStats = resetSessionStats;
18
27
  exports.initLifetimeStats = initLifetimeStats;
19
- // Session-scoped stats (lightweight, in-memory)
28
+ exports.getLifetimeStats = getLifetimeStats;
29
+ // ─── Session Stats (in-memory, per session) ──────────────────────────────────
20
30
  let sessionStats = {
21
31
  recallCount: 0,
22
32
  memoriesServed: 0,
@@ -26,14 +36,19 @@ let sessionStats = {
26
36
  codeReviews: 0,
27
37
  sessionStart: Date.now(),
28
38
  };
29
- // Lifetime stats (persisted via memory store events)
39
+ // ─── Lifetime Stats (persisted via special DB memory) ────────────────────────
30
40
  const lifetimeStats = {
31
41
  totalRecalls: 0,
32
42
  totalMemoriesServed: 0,
33
43
  totalHallucationsCaught: 0,
34
44
  totalMemoriesStored: 0,
35
45
  totalSessions: 0,
46
+ savedYouCount: 0, // NEW: Times Cortex prevented a repeated mistake
47
+ totalAutoLearns: 0, // NEW: Total auto_learn calls
48
+ totalMilestonesHit: 0, // NEW: Milestone celebrations shown
49
+ firstUsed: Date.now(), // NEW: When Cortex was first installed
36
50
  };
51
+ // ─── Track Events ────────────────────────────────────────────────────────────
37
52
  /** Record a recall event */
38
53
  function trackRecall(memoriesReturned) {
39
54
  sessionStats.recallCount++;
@@ -41,15 +56,21 @@ function trackRecall(memoriesReturned) {
41
56
  lifetimeStats.totalRecalls++;
42
57
  lifetimeStats.totalMemoriesServed += memoriesReturned;
43
58
  }
44
- /** Record a memory store event */
59
+ /** Record a memory store event — checks for milestones */
45
60
  function trackStore() {
46
61
  sessionStats.memoriesStored++;
47
62
  lifetimeStats.totalMemoriesStored++;
63
+ return checkMilestone(lifetimeStats.totalMemoriesStored, 'memories stored');
48
64
  }
49
- /** Record a hallucination catch */
65
+ /** Record a hallucination catch — this is a "saved you" moment */
50
66
  function trackCatch() {
51
67
  sessionStats.hallucationsCaught++;
52
68
  lifetimeStats.totalHallucationsCaught++;
69
+ lifetimeStats.savedYouCount++;
70
+ }
71
+ /** Record a "saved you" moment (correction recalled → mistake prevented) */
72
+ function trackSaved() {
73
+ lifetimeStats.savedYouCount++;
53
74
  }
54
75
  /** Record a scan */
55
76
  function trackScan() {
@@ -59,33 +80,138 @@ function trackScan() {
59
80
  function trackReview() {
60
81
  sessionStats.codeReviews++;
61
82
  }
62
- /** Estimate time saved (each recalled memory ≈ 15s of re-explanation) */
83
+ /** Record an auto_learn */
84
+ function trackAutoLearn() {
85
+ lifetimeStats.totalAutoLearns++;
86
+ }
87
+ // ─── Brain Health Score ──────────────────────────────────────────────────────
88
+ // Composite score 0-100 based on how well Cortex is being used.
89
+ // Higher score = more addictive (users want to keep it high)
90
+ function calculateBrainHealth(memoryStore) {
91
+ const tips = [];
92
+ let score = 0;
93
+ const activeCount = memoryStore.activeCount();
94
+ // 1. Memory count (0-25 pts) — more memories = healthier brain
95
+ if (activeCount >= 100)
96
+ score += 25;
97
+ else if (activeCount >= 50)
98
+ score += 20;
99
+ else if (activeCount >= 20)
100
+ score += 15;
101
+ else if (activeCount >= 5)
102
+ score += 10;
103
+ else {
104
+ score += Math.min(activeCount * 2, 5);
105
+ tips.push('Store more memories to improve brain health');
106
+ }
107
+ // 2. Memory diversity (0-25 pts) — multiple types = better coverage
108
+ const typeCount = getMemoryTypeDiversity(memoryStore);
109
+ score += Math.min(typeCount * 5, 25);
110
+ if (typeCount < 3)
111
+ tips.push('Add different memory types (decisions, corrections, conventions)');
112
+ // 3. Usage frequency (0-25 pts) — regular use = healthier
113
+ if (lifetimeStats.totalSessions >= 20)
114
+ score += 25;
115
+ else if (lifetimeStats.totalSessions >= 10)
116
+ score += 20;
117
+ else if (lifetimeStats.totalSessions >= 5)
118
+ score += 15;
119
+ else if (lifetimeStats.totalSessions >= 2)
120
+ score += 10;
121
+ else {
122
+ score += lifetimeStats.totalSessions * 5;
123
+ tips.push('Use Cortex regularly — memory quality improves with each session');
124
+ }
125
+ // 4. Auto-learn engagement (0-25 pts) — AI is learning from conversations
126
+ if (lifetimeStats.totalAutoLearns >= 50)
127
+ score += 25;
128
+ else if (lifetimeStats.totalAutoLearns >= 20)
129
+ score += 20;
130
+ else if (lifetimeStats.totalAutoLearns >= 10)
131
+ score += 15;
132
+ else if (lifetimeStats.totalAutoLearns >= 3)
133
+ score += 10;
134
+ else {
135
+ score += lifetimeStats.totalAutoLearns * 3;
136
+ tips.push('Make sure auto_learn is called after every response');
137
+ }
138
+ // Grade
139
+ let grade;
140
+ if (score >= 90)
141
+ grade = '🧠 Genius';
142
+ else if (score >= 75)
143
+ grade = '🔥 Sharp';
144
+ else if (score >= 50)
145
+ grade = '💡 Growing';
146
+ else if (score >= 25)
147
+ grade = '🌱 Seedling';
148
+ else
149
+ grade = '🥚 Newborn';
150
+ return { score: Math.min(score, 100), grade, tips };
151
+ }
152
+ function getMemoryTypeDiversity(memoryStore) {
153
+ try {
154
+ const memories = memoryStore.getActive(200);
155
+ const types = new Set(memories.map(m => m.type));
156
+ return types.size;
157
+ }
158
+ catch {
159
+ return 1;
160
+ }
161
+ }
162
+ // ─── Memory Milestones ───────────────────────────────────────────────────────
163
+ // Celebrate: 10, 25, 50, 100, 250, 500, 1000, 2500, 5000
164
+ const MILESTONES = [10, 25, 50, 100, 250, 500, 1000, 2500, 5000];
165
+ function checkMilestone(count, label) {
166
+ if (MILESTONES.includes(count)) {
167
+ lifetimeStats.totalMilestonesHit++;
168
+ return `\n🎉 **Milestone!** ${count} ${label}! Your AI brain is getting stronger.`;
169
+ }
170
+ return '';
171
+ }
172
+ // ─── Time Saved ──────────────────────────────────────────────────────────────
63
173
  function estimateTimeSaved() {
64
- const seconds = lifetimeStats.totalMemoriesServed * 15;
65
- if (seconds < 60)
66
- return { seconds, formatted: `${seconds}s` };
67
- if (seconds < 3600)
68
- return { seconds, formatted: `${Math.round(seconds / 60)} min` };
69
- return { seconds, formatted: `${(seconds / 3600).toFixed(1)} hours` };
70
- }
71
- /** Format stats footer for injection into force_recall response */
72
- function formatStatsFooter() {
73
- const timeSaved = estimateTimeSaved();
174
+ // Each recalled memory 15s of re-explanation
175
+ // Each hallucination caught ≈ 5min of debugging
176
+ const recallSeconds = lifetimeStats.totalMemoriesServed * 15;
177
+ const catchSeconds = lifetimeStats.totalHallucationsCaught * 300;
178
+ const totalSeconds = recallSeconds + catchSeconds;
179
+ if (totalSeconds < 60)
180
+ return { seconds: totalSeconds, formatted: `${totalSeconds}s` };
181
+ if (totalSeconds < 3600)
182
+ return { seconds: totalSeconds, formatted: `${Math.round(totalSeconds / 60)} min` };
183
+ return { seconds: totalSeconds, formatted: `${(totalSeconds / 3600).toFixed(1)} hours` };
184
+ }
185
+ // ─── Stats Footer (shown in every force_recall) ─────────────────────────────
186
+ function formatStatsFooter(memoryStore) {
74
187
  const parts = [];
75
- if (lifetimeStats.totalRecalls > 0) {
76
- parts.push(`${lifetimeStats.totalMemoriesServed} memories recalled`);
188
+ const timeSaved = estimateTimeSaved();
189
+ // "Saved You" counter (the most addictive metric)
190
+ if (lifetimeStats.savedYouCount > 0) {
191
+ parts.push(`🛡️ Saved you ${lifetimeStats.savedYouCount} time${lifetimeStats.savedYouCount > 1 ? 's' : ''}`);
192
+ }
193
+ // Brain Health Score
194
+ if (memoryStore) {
195
+ const health = calculateBrainHealth(memoryStore);
196
+ parts.push(`${health.grade} Brain: ${health.score}/100`);
197
+ }
198
+ // Memories + Time saved
199
+ if (lifetimeStats.totalMemoriesServed > 0) {
200
+ parts.push(`${lifetimeStats.totalMemoriesServed} memories served`);
77
201
  }
78
202
  if (timeSaved.seconds > 0) {
79
- parts.push(`saved you ~${timeSaved.formatted} of re-explanation`);
203
+ parts.push(`~${timeSaved.formatted} saved`);
80
204
  }
205
+ // Hallucinations caught
81
206
  if (lifetimeStats.totalHallucationsCaught > 0) {
82
207
  parts.push(`${lifetimeStats.totalHallucationsCaught} hallucination${lifetimeStats.totalHallucationsCaught > 1 ? 's' : ''} caught`);
83
208
  }
84
- if (parts.length === 0)
85
- return '';
209
+ if (parts.length === 0) {
210
+ return '\n> 🧠 Cortex is active — memories will build up as you work.';
211
+ }
86
212
  return `\n> 🧠 Cortex: ${parts.join(' | ')}`;
87
213
  }
88
- /** Get full stats object */
214
+ // ─── Full Stats ──────────────────────────────────────────────────────────────
89
215
  function getUsageStats() {
90
216
  return {
91
217
  session: { ...sessionStats },
@@ -93,7 +219,7 @@ function getUsageStats() {
93
219
  timeSaved: estimateTimeSaved(),
94
220
  };
95
221
  }
96
- /** Reset session stats (called on new session) */
222
+ // ─── Session Management ──────────────────────────────────────────────────────
97
223
  function resetSessionStats() {
98
224
  lifetimeStats.totalSessions++;
99
225
  sessionStats = {
@@ -118,5 +244,17 @@ function initLifetimeStats(stored) {
118
244
  lifetimeStats.totalMemoriesStored = stored.totalMemoriesStored;
119
245
  if (stored.totalSessions)
120
246
  lifetimeStats.totalSessions = stored.totalSessions;
247
+ if (stored.savedYouCount)
248
+ lifetimeStats.savedYouCount = stored.savedYouCount;
249
+ if (stored.totalAutoLearns)
250
+ lifetimeStats.totalAutoLearns = stored.totalAutoLearns;
251
+ if (stored.totalMilestonesHit)
252
+ lifetimeStats.totalMilestonesHit = stored.totalMilestonesHit;
253
+ if (stored.firstUsed)
254
+ lifetimeStats.firstUsed = stored.firstUsed;
255
+ }
256
+ /** Get raw lifetime stats for persistence */
257
+ function getLifetimeStats() {
258
+ return { ...lifetimeStats };
121
259
  }
122
260
  //# sourceMappingURL=usage-stats.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usage-stats.js","sourceRoot":"","sources":["../../src/memory/usage-stats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usage-stats.js","sourceRoot":"","sources":["../../src/memory/usage-stats.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-handler.d.ts","sourceRoot":"","sources":["../../src/server/mcp-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAwT3C,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM;4BAC5D,GAAG,KAAG,OAAO,CAAC,GAAG,CAAC;EA2vD1D"}
1
+ {"version":3,"file":"mcp-handler.d.ts","sourceRoot":"","sources":["../../src/server/mcp-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAwT3C,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM;4BAC5D,GAAG,KAAG,OAAO,CAAC,GAAG,CAAC;EAswD1D"}
@@ -790,6 +790,8 @@ function createMCPHandler(memoryStore, eventLog, workspaceRoot) {
790
790
  }
791
791
  }
792
792
  function handleGetStats(id) {
793
+ const health = (0, usage_stats_1.calculateBrainHealth)(memoryStore);
794
+ const lifetime = (0, usage_stats_1.getLifetimeStats)();
793
795
  return {
794
796
  jsonrpc: '2.0', id,
795
797
  result: {
@@ -801,6 +803,10 @@ function createMCPHandler(memoryStore, eventLog, workspaceRoot) {
801
803
  totalEvents: eventLog.count(),
802
804
  vectorSearchReady: (0, embedding_manager_1.isWorkerReady)(),
803
805
  cacheSize: (0, memory_cache_1.cacheSize)(),
806
+ brainHealth: { score: health.score, grade: health.grade, tips: health.tips },
807
+ savedYouCount: lifetime.savedYouCount,
808
+ totalSessions: lifetime.totalSessions,
809
+ timeSaved: lifetime.totalMemoriesServed * 15 + lifetime.totalHallucationsCaught * 300,
804
810
  }, null, 2),
805
811
  }],
806
812
  },
@@ -1380,10 +1386,14 @@ function createMCPHandler(memoryStore, eventLog, workspaceRoot) {
1380
1386
  output += '\n\n' + prefText;
1381
1387
  }
1382
1388
  catch { /* non-fatal */ }
1383
- // Append stats footer (makes value visible)
1384
- const statsFooter = (0, usage_stats_1.formatStatsFooter)();
1389
+ // Append stats footer (makes value visible — THE KEY TO ADDICTION)
1390
+ const statsFooter = (0, usage_stats_1.formatStatsFooter)(memoryStore);
1385
1391
  if (statsFooter)
1386
1392
  output += statsFooter;
1393
+ // Count corrections recalled as "saved you" moments
1394
+ const correctionsRecalled = (output.match(/\[CORRECTION\]/g) || []).length;
1395
+ for (let i = 0; i < correctionsRecalled; i++)
1396
+ (0, usage_stats_1.trackSaved)();
1387
1397
  // Cache the result for short-lived reuse
1388
1398
  (0, memory_cache_1.setCache)(cacheKey, output);
1389
1399
  return {
@@ -1658,6 +1668,7 @@ function createMCPHandler(memoryStore, eventLog, workspaceRoot) {
1658
1668
  }
1659
1669
  // Extract memory-worthy patterns (regex-based)
1660
1670
  const extracted = (0, auto_learner_1.extractMemories)(text);
1671
+ (0, usage_stats_1.trackAutoLearn)(); // Track for Brain Health Score
1661
1672
  // LLM enhancement: when API key is available and regex found nothing,
1662
1673
  // use LLM to catch implicit patterns that keywords miss
1663
1674
  if (extracted.length === 0 && (0, llm_enhancer_1.isLLMAvailable)() && text.length > 50) {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-handler.js","sourceRoot":"","sources":["../../src/server/mcp-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-handler.js","sourceRoot":"","sources":["../../src/server/mcp-handler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "cortex-mcp",
3
3
  "displayName": "Cortex MCP Server",
4
4
  "description": "Persistent memory for AI coding assistants. Injects context from past sessions into every LLM request.",
5
- "version": "1.5.0",
5
+ "version": "1.7.0",
6
6
  "publisher": "cortex",
7
7
  "license": "MIT",
8
8
  "engines": {