midas-mcp 1.1.0 → 1.3.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/dist/ai.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ export interface CodebaseContext {
2
+ files: string[];
3
+ summary: string;
4
+ techStack: string[];
5
+ suggestedNextStep: string;
6
+ }
7
+ export declare function analyzeCodebase(projectPath: string): Promise<CodebaseContext>;
8
+ export declare function generateSmartPrompt(projectPath: string, phase: string, step: string, context?: CodebaseContext): Promise<string>;
9
+ export declare function detectStepCompletion(projectPath: string, currentStep: string): Promise<{
10
+ completed: boolean;
11
+ confidence: number;
12
+ reason: string;
13
+ }>;
14
+ //# sourceMappingURL=ai.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AAkFA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAsEnF;AAED,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAED,wBAAsB,oBAAoB,CACxC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAiCrE"}
package/dist/ai.js ADDED
@@ -0,0 +1,199 @@
1
+ import { getApiKey } from './config.js';
2
+ import { readdirSync, readFileSync } from 'fs';
3
+ import { join, extname } from 'path';
4
+ // Simple HTTP client for Anthropic API (no external dependency)
5
+ async function callClaude(prompt, systemPrompt) {
6
+ const apiKey = getApiKey();
7
+ if (!apiKey) {
8
+ throw new Error('No API key configured');
9
+ }
10
+ const response = await fetch('https://api.anthropic.com/v1/messages', {
11
+ method: 'POST',
12
+ headers: {
13
+ 'Content-Type': 'application/json',
14
+ 'x-api-key': apiKey,
15
+ 'anthropic-version': '2023-06-01',
16
+ },
17
+ body: JSON.stringify({
18
+ model: 'claude-sonnet-4-20250514',
19
+ max_tokens: 1024,
20
+ system: systemPrompt || 'You are Midas, an elite vibecoding coach. Be concise and actionable.',
21
+ messages: [{ role: 'user', content: prompt }],
22
+ }),
23
+ });
24
+ if (!response.ok) {
25
+ const error = await response.text();
26
+ throw new Error(`API error: ${response.status} - ${error}`);
27
+ }
28
+ const data = await response.json();
29
+ return data.content[0]?.text || '';
30
+ }
31
+ // Scan codebase for context
32
+ function scanCodebase(projectPath, maxFiles = 20) {
33
+ const files = [];
34
+ const importantExtensions = ['.ts', '.tsx', '.js', '.jsx', '.py', '.go', '.rs', '.swift'];
35
+ const ignoreDirs = ['node_modules', '.git', 'dist', 'build', '.next', '__pycache__'];
36
+ function scan(dir, depth = 0) {
37
+ if (depth > 3 || files.length >= maxFiles)
38
+ return;
39
+ try {
40
+ const entries = readdirSync(dir, { withFileTypes: true });
41
+ for (const entry of entries) {
42
+ if (files.length >= maxFiles)
43
+ break;
44
+ if (entry.name.startsWith('.'))
45
+ continue;
46
+ if (ignoreDirs.includes(entry.name))
47
+ continue;
48
+ const fullPath = join(dir, entry.name);
49
+ if (entry.isDirectory()) {
50
+ scan(fullPath, depth + 1);
51
+ }
52
+ else if (entry.isFile()) {
53
+ const ext = extname(entry.name);
54
+ if (importantExtensions.includes(ext)) {
55
+ files.push(fullPath);
56
+ }
57
+ }
58
+ }
59
+ }
60
+ catch {
61
+ // Permission denied or other error
62
+ }
63
+ }
64
+ scan(projectPath);
65
+ return files;
66
+ }
67
+ function getFileContent(filePath, maxLines = 50) {
68
+ try {
69
+ const content = readFileSync(filePath, 'utf-8');
70
+ const lines = content.split('\n').slice(0, maxLines);
71
+ return lines.join('\n');
72
+ }
73
+ catch {
74
+ return '';
75
+ }
76
+ }
77
+ export async function analyzeCodebase(projectPath) {
78
+ const apiKey = getApiKey();
79
+ // Get file list
80
+ const files = scanCodebase(projectPath);
81
+ if (!apiKey) {
82
+ // Return basic analysis without AI
83
+ const techStack = [];
84
+ // Detect tech stack from files
85
+ const hasPackageJson = files.some(f => f.endsWith('package.json'));
86
+ const hasTsConfig = files.some(f => f.endsWith('tsconfig.json'));
87
+ const hasRequirements = files.some(f => f.endsWith('requirements.txt'));
88
+ const hasCargoToml = files.some(f => f.endsWith('Cargo.toml'));
89
+ if (hasPackageJson)
90
+ techStack.push('Node.js');
91
+ if (hasTsConfig)
92
+ techStack.push('TypeScript');
93
+ if (hasRequirements)
94
+ techStack.push('Python');
95
+ if (hasCargoToml)
96
+ techStack.push('Rust');
97
+ if (files.some(f => f.includes('react') || f.endsWith('.tsx') || f.endsWith('.jsx')))
98
+ techStack.push('React');
99
+ return {
100
+ files,
101
+ summary: `Found ${files.length} source files`,
102
+ techStack,
103
+ suggestedNextStep: 'Continue with current phase',
104
+ };
105
+ }
106
+ // Build context for AI
107
+ const fileList = files.map(f => f.replace(projectPath, '')).join('\n');
108
+ const sampleContent = files.slice(0, 5).map(f => {
109
+ const content = getFileContent(f);
110
+ return `--- ${f.replace(projectPath, '')} ---\n${content}`;
111
+ }).join('\n\n');
112
+ try {
113
+ const response = await callClaude(`Analyze this codebase and provide:
114
+ 1. A one-line summary of what it does
115
+ 2. The tech stack (list)
116
+ 3. The most important next step for production readiness
117
+
118
+ Files:
119
+ ${fileList}
120
+
121
+ Sample content:
122
+ ${sampleContent}
123
+
124
+ Respond in JSON format:
125
+ {"summary": "...", "techStack": ["..."], "suggestedNextStep": "..."}`, 'You are a senior engineer analyzing a codebase. Be concise. Respond only with valid JSON.');
126
+ const parsed = JSON.parse(response);
127
+ return {
128
+ files,
129
+ summary: parsed.summary || `Found ${files.length} source files`,
130
+ techStack: parsed.techStack || [],
131
+ suggestedNextStep: parsed.suggestedNextStep || 'Continue with current phase',
132
+ };
133
+ }
134
+ catch (error) {
135
+ return {
136
+ files,
137
+ summary: `Found ${files.length} source files`,
138
+ techStack: [],
139
+ suggestedNextStep: 'Continue with current phase',
140
+ };
141
+ }
142
+ }
143
+ export async function generateSmartPrompt(projectPath, phase, step, context) {
144
+ const apiKey = getApiKey();
145
+ if (!apiKey) {
146
+ return ''; // Fall back to default prompts
147
+ }
148
+ const codebaseContext = context || await analyzeCodebase(projectPath);
149
+ try {
150
+ const response = await callClaude(`Generate a specific, actionable prompt for a developer to paste into Cursor AI.
151
+
152
+ Project: ${codebaseContext.summary}
153
+ Tech stack: ${codebaseContext.techStack.join(', ')}
154
+ Current phase: ${phase}
155
+ Current step: ${step}
156
+
157
+ The prompt should:
158
+ 1. Be specific to THIS codebase
159
+ 2. Reference actual files/patterns if known
160
+ 3. Be immediately actionable
161
+ 4. Follow the Elite Vibecoding methodology
162
+
163
+ Respond with just the prompt text, no explanation.`, 'You are Midas, an elite vibecoding coach. Generate prompts that are specific, actionable, and context-aware.');
164
+ return response.trim();
165
+ }
166
+ catch {
167
+ return '';
168
+ }
169
+ }
170
+ export async function detectStepCompletion(projectPath, currentStep) {
171
+ const apiKey = getApiKey();
172
+ if (!apiKey) {
173
+ return { completed: false, confidence: 0, reason: 'No API key' };
174
+ }
175
+ const context = await analyzeCodebase(projectPath);
176
+ try {
177
+ const response = await callClaude(`Based on this codebase analysis, determine if the following step is complete:
178
+
179
+ Step: ${currentStep}
180
+ Files: ${context.files.length} source files
181
+ Tech stack: ${context.techStack.join(', ')}
182
+
183
+ Consider:
184
+ - IDEA: Is there a clear project purpose?
185
+ - RESEARCH: Are there docs about alternatives?
186
+ - BRAINLIFT: Is there a brainlift.md with insights?
187
+ - PRD: Is there a prd.md with requirements?
188
+ - GAMEPLAN: Is there a gameplan.md with plan?
189
+ - BUILD steps: Is there working code with tests?
190
+
191
+ Respond in JSON:
192
+ {"completed": true/false, "confidence": 0-100, "reason": "..."}`, 'You are analyzing project completeness. Be conservative - only mark complete if clearly done.');
193
+ return JSON.parse(response);
194
+ }
195
+ catch {
196
+ return { completed: false, confidence: 0, reason: 'Analysis failed' };
197
+ }
198
+ }
199
+ //# sourceMappingURL=ai.js.map
package/dist/ai.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -3,5 +3,5 @@ export declare function showStatus(): void;
3
3
  export declare function runInit(projectName: string): void;
4
4
  export declare function runAudit(): void;
5
5
  export declare function runDocsCheck(): void;
6
- export declare function runCLI(args: string[]): boolean;
6
+ export declare function runCLI(args: string[]): 'interactive' | 'server' | 'handled';
7
7
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAiCA,wBAAgB,QAAQ,IAAI,IAAI,CAmB/B;AAED,wBAAgB,UAAU,IAAI,IAAI,CAmFjC;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAmBjD;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAmC/B;AAED,wBAAgB,YAAY,IAAI,IAAI,CAgCnC;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CA6B9C"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAiCA,wBAAgB,QAAQ,IAAI,IAAI,CAoB/B;AAED,wBAAgB,UAAU,IAAI,IAAI,CAmFjC;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAmBjD;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAmC/B;AAED,wBAAgB,YAAY,IAAI,IAAI,CAgCnC;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,aAAa,GAAG,QAAQ,GAAG,SAAS,CAqC3E"}
package/dist/cli.js CHANGED
@@ -32,11 +32,12 @@ export function showHelp() {
32
32
  ${bold}${cyan}MIDAS${reset} - Everything you vibecode turns to gold
33
33
 
34
34
  ${bold}Usage:${reset}
35
- npx midas-mcp Start MCP server (for Cursor)
35
+ npx midas-mcp Interactive coach (recommended)
36
36
  npx midas-mcp status Show current phase and progress
37
37
  npx midas-mcp init <name> Initialize new project with Eagle Sight
38
38
  npx midas-mcp audit Audit project against 12 ingredients
39
39
  npx midas-mcp docs Check Eagle Sight docs completeness
40
+ npx midas-mcp server Start MCP server (for Cursor integration)
40
41
  npx midas-mcp help Show this help
41
42
 
42
43
  ${bold}The Two Phases:${reset}
@@ -208,21 +209,27 @@ export function runCLI(args) {
208
209
  case '--help':
209
210
  case '-h':
210
211
  showHelp();
211
- return true;
212
+ return 'handled';
212
213
  case 'status':
213
214
  showStatus();
214
- return true;
215
+ return 'handled';
215
216
  case 'init':
216
217
  runInit(args[1]);
217
- return true;
218
+ return 'handled';
218
219
  case 'audit':
219
220
  runAudit();
220
- return true;
221
+ return 'handled';
221
222
  case 'docs':
222
223
  runDocsCheck();
223
- return true;
224
+ return 'handled';
225
+ case 'server':
226
+ return 'server'; // Start MCP server
227
+ case undefined:
228
+ return 'interactive'; // No args = interactive mode
224
229
  default:
225
- return false; // Not a CLI command, start MCP server
230
+ console.log(`Unknown command: ${command}`);
231
+ console.log('Run: npx midas-mcp help');
232
+ return 'handled';
226
233
  }
227
234
  }
228
235
  //# sourceMappingURL=cli.js.map
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,12 @@
1
+ export interface MidasConfig {
2
+ anthropicApiKey?: string;
3
+ createdAt: string;
4
+ lastUsed: string;
5
+ }
6
+ export declare function loadConfig(): MidasConfig;
7
+ export declare function saveConfig(config: MidasConfig): void;
8
+ export declare function getApiKey(): string | undefined;
9
+ export declare function hasApiKey(): boolean;
10
+ export declare function promptForApiKey(): Promise<string | undefined>;
11
+ export declare function ensureApiKey(): Promise<string | undefined>;
12
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAQD,wBAAgB,UAAU,IAAI,WAAW,CAmBxC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAIpD;AAED,wBAAgB,SAAS,IAAI,MAAM,GAAG,SAAS,CAS9C;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2CnE;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAWhE"}
package/dist/config.js ADDED
@@ -0,0 +1,101 @@
1
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'fs';
2
+ import { join } from 'path';
3
+ import { homedir } from 'os';
4
+ import { createInterface } from 'readline';
5
+ const CONFIG_DIR = join(homedir(), '.midas');
6
+ const CONFIG_FILE = join(CONFIG_DIR, 'config.json');
7
+ function ensureConfigDir() {
8
+ if (!existsSync(CONFIG_DIR)) {
9
+ mkdirSync(CONFIG_DIR, { recursive: true });
10
+ }
11
+ }
12
+ export function loadConfig() {
13
+ ensureConfigDir();
14
+ if (!existsSync(CONFIG_FILE)) {
15
+ return {
16
+ createdAt: new Date().toISOString(),
17
+ lastUsed: new Date().toISOString(),
18
+ };
19
+ }
20
+ try {
21
+ const raw = readFileSync(CONFIG_FILE, 'utf-8');
22
+ return JSON.parse(raw);
23
+ }
24
+ catch {
25
+ return {
26
+ createdAt: new Date().toISOString(),
27
+ lastUsed: new Date().toISOString(),
28
+ };
29
+ }
30
+ }
31
+ export function saveConfig(config) {
32
+ ensureConfigDir();
33
+ config.lastUsed = new Date().toISOString();
34
+ writeFileSync(CONFIG_FILE, JSON.stringify(config, null, 2));
35
+ }
36
+ export function getApiKey() {
37
+ // Check env var first
38
+ if (process.env.ANTHROPIC_API_KEY) {
39
+ return process.env.ANTHROPIC_API_KEY;
40
+ }
41
+ // Then check config
42
+ const config = loadConfig();
43
+ return config.anthropicApiKey;
44
+ }
45
+ export function hasApiKey() {
46
+ return !!getApiKey();
47
+ }
48
+ export async function promptForApiKey() {
49
+ const rl = createInterface({
50
+ input: process.stdin,
51
+ output: process.stdout,
52
+ });
53
+ return new Promise((resolve) => {
54
+ console.log('\n');
55
+ console.log(' ┌─────────────────────────────────────────────────┐');
56
+ console.log(' │ MIDAS - First Time Setup │');
57
+ console.log(' ├─────────────────────────────────────────────────┤');
58
+ console.log(' │ │');
59
+ console.log(' │ For AI-powered features (smart prompts, │');
60
+ console.log(' │ codebase analysis, auto-detection), Midas │');
61
+ console.log(' │ needs an Anthropic API key. │');
62
+ console.log(' │ │');
63
+ console.log(' │ Get one at: console.anthropic.com │');
64
+ console.log(' │ │');
65
+ console.log(' │ This is optional. Press Enter to skip. │');
66
+ console.log(' │ │');
67
+ console.log(' └─────────────────────────────────────────────────┘');
68
+ console.log('');
69
+ rl.question(' Anthropic API Key: ', (answer) => {
70
+ rl.close();
71
+ const key = answer.trim();
72
+ if (key && key.startsWith('sk-ant-')) {
73
+ const config = loadConfig();
74
+ config.anthropicApiKey = key;
75
+ saveConfig(config);
76
+ console.log('\n ✓ API key saved to ~/.midas/config.json\n');
77
+ resolve(key);
78
+ }
79
+ else if (key) {
80
+ console.log('\n ⚠ Invalid key format. Skipping.\n');
81
+ resolve(undefined);
82
+ }
83
+ else {
84
+ console.log('\n Skipped. You can add it later in ~/.midas/config.json\n');
85
+ resolve(undefined);
86
+ }
87
+ });
88
+ });
89
+ }
90
+ export async function ensureApiKey() {
91
+ const existing = getApiKey();
92
+ if (existing)
93
+ return existing;
94
+ // Check if this is first run
95
+ const config = loadConfig();
96
+ if (!config.anthropicApiKey && !process.env.ANTHROPIC_API_KEY) {
97
+ return promptForApiKey();
98
+ }
99
+ return undefined;
100
+ }
101
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export interface ChatMessage {
2
+ type: 'user' | 'assistant';
3
+ text: string;
4
+ bubbleId?: string;
5
+ timestamp?: number;
6
+ }
7
+ export interface CursorConversation {
8
+ composerId: string;
9
+ messages: ChatMessage[];
10
+ createdAt?: number;
11
+ isAgentic?: boolean;
12
+ model?: string;
13
+ }
14
+ export declare function isCursorAvailable(): boolean;
15
+ export declare function getRecentConversationIds(limit?: number): string[];
16
+ export declare function getConversation(composerId: string): CursorConversation | null;
17
+ export declare function getLatestConversation(): CursorConversation | null;
18
+ export declare function getRecentMessages(limit?: number): ChatMessage[];
19
+ export declare function watchConversations(callback: (conv: CursorConversation) => void, pollInterval?: number): () => void;
20
+ export declare function extractMidasToolCalls(messages: ChatMessage[]): string[];
21
+ export declare function getConversationSummary(conv: CursorConversation): string;
22
+ //# sourceMappingURL=cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAgB,wBAAwB,CAAC,KAAK,SAAK,GAAG,MAAM,EAAE,CAS7D;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAiC7E;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAIjE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,SAAK,GAAG,WAAW,EAAE,CAa3D;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,EAC5C,YAAY,SAAO,GAClB,MAAM,IAAI,CAyBZ;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,CAcvE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,CASvE"}
package/dist/cursor.js ADDED
@@ -0,0 +1,123 @@
1
+ import { existsSync } from 'fs';
2
+ import { join } from 'path';
3
+ import { homedir } from 'os';
4
+ import { execSync } from 'child_process';
5
+ // Cursor's state database location
6
+ const CURSOR_DB_PATH = join(homedir(), 'Library', 'Application Support', 'Cursor', 'User', 'globalStorage', 'state.vscdb');
7
+ function runSqlite(query) {
8
+ if (!existsSync(CURSOR_DB_PATH)) {
9
+ throw new Error('Cursor database not found');
10
+ }
11
+ try {
12
+ const result = execSync(`sqlite3 "${CURSOR_DB_PATH}" "${query}"`, { encoding: 'utf-8', maxBuffer: 50 * 1024 * 1024 } // 50MB buffer
13
+ );
14
+ return result;
15
+ }
16
+ catch (error) {
17
+ return '';
18
+ }
19
+ }
20
+ export function isCursorAvailable() {
21
+ return existsSync(CURSOR_DB_PATH);
22
+ }
23
+ export function getRecentConversationIds(limit = 10) {
24
+ const result = runSqlite(`SELECT key FROM cursorDiskKV WHERE key LIKE 'composerData:%' ORDER BY rowid DESC LIMIT ${limit}`);
25
+ return result
26
+ .split('\n')
27
+ .filter(Boolean)
28
+ .map(key => key.replace('composerData:', ''));
29
+ }
30
+ export function getConversation(composerId) {
31
+ const result = runSqlite(`SELECT value FROM cursorDiskKV WHERE key = 'composerData:${composerId}'`);
32
+ if (!result)
33
+ return null;
34
+ try {
35
+ const data = JSON.parse(result);
36
+ const messages = [];
37
+ const conversation = data.conversation || [];
38
+ for (const msg of conversation) {
39
+ if (msg.text && typeof msg.text === 'string' && msg.text.trim()) {
40
+ messages.push({
41
+ type: msg.type === 1 ? 'user' : 'assistant',
42
+ text: msg.text,
43
+ bubbleId: msg.bubbleId,
44
+ });
45
+ }
46
+ }
47
+ return {
48
+ composerId: data.composerId,
49
+ messages,
50
+ createdAt: data.createdAt,
51
+ isAgentic: data.isAgentic,
52
+ model: data.modelConfig?.modelName,
53
+ };
54
+ }
55
+ catch {
56
+ return null;
57
+ }
58
+ }
59
+ export function getLatestConversation() {
60
+ const ids = getRecentConversationIds(1);
61
+ if (ids.length === 0)
62
+ return null;
63
+ return getConversation(ids[0]);
64
+ }
65
+ export function getRecentMessages(limit = 20) {
66
+ const ids = getRecentConversationIds(5);
67
+ const messages = [];
68
+ for (const id of ids) {
69
+ const conv = getConversation(id);
70
+ if (conv) {
71
+ messages.push(...conv.messages.slice(-10));
72
+ }
73
+ if (messages.length >= limit)
74
+ break;
75
+ }
76
+ return messages.slice(-limit);
77
+ }
78
+ export function watchConversations(callback, pollInterval = 2000) {
79
+ let lastSeenId = null;
80
+ let lastMessageCount = 0;
81
+ const check = () => {
82
+ const ids = getRecentConversationIds(1);
83
+ if (ids.length === 0)
84
+ return;
85
+ const currentId = ids[0];
86
+ const conv = getConversation(currentId);
87
+ if (!conv)
88
+ return;
89
+ // New conversation or new messages
90
+ if (currentId !== lastSeenId || conv.messages.length > lastMessageCount) {
91
+ lastSeenId = currentId;
92
+ lastMessageCount = conv.messages.length;
93
+ callback(conv);
94
+ }
95
+ };
96
+ const interval = setInterval(check, pollInterval);
97
+ check(); // Initial check
98
+ return () => clearInterval(interval);
99
+ }
100
+ export function extractMidasToolCalls(messages) {
101
+ const toolCalls = [];
102
+ for (const msg of messages) {
103
+ if (msg.type === 'assistant') {
104
+ // Look for midas tool calls in assistant messages
105
+ const midasMatches = msg.text.match(/midas_\w+/g);
106
+ if (midasMatches) {
107
+ toolCalls.push(...midasMatches);
108
+ }
109
+ }
110
+ }
111
+ return [...new Set(toolCalls)]; // Unique
112
+ }
113
+ export function getConversationSummary(conv) {
114
+ if (conv.messages.length === 0)
115
+ return 'Empty conversation';
116
+ const userMessages = conv.messages.filter(m => m.type === 'user');
117
+ if (userMessages.length === 0)
118
+ return 'No user messages';
119
+ // Get first user message as summary
120
+ const first = userMessages[0].text.slice(0, 100);
121
+ return first + (first.length >= 100 ? '...' : '');
122
+ }
123
+ //# sourceMappingURL=cursor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ # Brainlift: my-project
2
+
3
+ ## Contrarian Insights
4
+ - [What do YOU know that contradicts conventional wisdom?]
5
+ - [What have you learned from experience that AI can't know?]
6
+
7
+ ## Domain Knowledge
8
+ - [Industry-specific context]
9
+ - [User behavior patterns you've observed]
10
+
11
+ ## Hard-Won Lessons
12
+ - [What NOT to do based on past experience]
13
+ - [Hidden gotchas in this space]
14
+
15
+ ## Current Context
16
+ - [Recent market changes]
17
+ - [Technology updates post-training-cutoff]