midas-mcp 3.0.0 → 3.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/LICENSE +21 -0
- package/dist/ai.d.ts +2 -0
- package/dist/ai.d.ts.map +1 -1
- package/dist/ai.js +28 -45
- package/dist/ai.js.map +1 -1
- package/dist/analyzer.d.ts.map +1 -1
- package/dist/analyzer.js +129 -135
- package/dist/analyzer.js.map +1 -1
- package/dist/config.d.ts +16 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +109 -15
- package/dist/config.js.map +1 -1
- package/dist/context.d.ts +8 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +76 -7
- package/dist/context.js.map +1 -1
- package/dist/docs/DEPLOYMENT.md +190 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/monitoring.d.ts +97 -0
- package/dist/monitoring.d.ts.map +1 -0
- package/dist/monitoring.js +258 -0
- package/dist/monitoring.js.map +1 -0
- package/dist/prompts/grow.d.ts.map +1 -1
- package/dist/prompts/grow.js +155 -47
- package/dist/prompts/grow.js.map +1 -1
- package/dist/providers.d.ts +46 -0
- package/dist/providers.d.ts.map +1 -0
- package/dist/providers.js +349 -0
- package/dist/providers.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +28 -3
- package/dist/server.js.map +1 -1
- package/dist/state/phase.d.ts +19 -4
- package/dist/state/phase.d.ts.map +1 -1
- package/dist/state/phase.js +19 -10
- package/dist/state/phase.js.map +1 -1
- package/dist/tools/analyze.d.ts.map +1 -1
- package/dist/tools/analyze.js +21 -9
- package/dist/tools/analyze.js.map +1 -1
- package/dist/tools/completeness.d.ts +36 -0
- package/dist/tools/completeness.d.ts.map +1 -0
- package/dist/tools/completeness.js +838 -0
- package/dist/tools/completeness.js.map +1 -0
- package/dist/tools/config.d.ts +73 -0
- package/dist/tools/config.d.ts.map +1 -0
- package/dist/tools/config.js +94 -0
- package/dist/tools/config.js.map +1 -0
- package/dist/tools/grow.d.ts +157 -0
- package/dist/tools/grow.d.ts.map +1 -0
- package/dist/tools/grow.js +532 -0
- package/dist/tools/grow.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +8 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/validate.d.ts +60 -0
- package/dist/tools/validate.d.ts.map +1 -0
- package/dist/tools/validate.js +234 -0
- package/dist/tools/validate.js.map +1 -0
- package/dist/tools/verify.d.ts +4 -4
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +302 -180
- package/dist/tui.js.map +1 -1
- package/docs/DEPLOYMENT.md +190 -0
- package/package.json +17 -5
- package/dist/tests/analyze.test.d.ts +0 -2
- package/dist/tests/analyze.test.d.ts.map +0 -1
- package/dist/tests/analyze.test.js +0 -120
- package/dist/tests/analyze.test.js.map +0 -1
- package/dist/tests/context.test.d.ts +0 -2
- package/dist/tests/context.test.d.ts.map +0 -1
- package/dist/tests/context.test.js +0 -213
- package/dist/tests/context.test.js.map +0 -1
- package/dist/tests/edge-cases.test.d.ts +0 -2
- package/dist/tests/edge-cases.test.d.ts.map +0 -1
- package/dist/tests/edge-cases.test.js +0 -234
- package/dist/tests/edge-cases.test.js.map +0 -1
- package/dist/tests/journal.test.d.ts +0 -2
- package/dist/tests/journal.test.d.ts.map +0 -1
- package/dist/tests/journal.test.js +0 -184
- package/dist/tests/journal.test.js.map +0 -1
- package/dist/tests/metrics.test.d.ts +0 -2
- package/dist/tests/metrics.test.d.ts.map +0 -1
- package/dist/tests/metrics.test.js +0 -178
- package/dist/tests/metrics.test.js.map +0 -1
- package/dist/tests/phase.test.d.ts +0 -2
- package/dist/tests/phase.test.d.ts.map +0 -1
- package/dist/tests/phase.test.js +0 -110
- package/dist/tests/phase.test.js.map +0 -1
- package/dist/tests/prompts.test.d.ts +0 -2
- package/dist/tests/prompts.test.d.ts.map +0 -1
- package/dist/tests/prompts.test.js +0 -157
- package/dist/tests/prompts.test.js.map +0 -1
- package/dist/tests/search.test.d.ts +0 -2
- package/dist/tests/search.test.d.ts.map +0 -1
- package/dist/tests/search.test.js +0 -228
- package/dist/tests/search.test.js.map +0 -1
- package/dist/tests/security.test.d.ts +0 -2
- package/dist/tests/security.test.d.ts.map +0 -1
- package/dist/tests/security.test.js +0 -105
- package/dist/tests/security.test.js.map +0 -1
- package/dist/tests/server.test.d.ts +0 -2
- package/dist/tests/server.test.d.ts.map +0 -1
- package/dist/tests/server.test.js +0 -93
- package/dist/tests/server.test.js.map +0 -1
- package/dist/tests/techstack.test.d.ts +0 -2
- package/dist/tests/techstack.test.d.ts.map +0 -1
- package/dist/tests/techstack.test.js +0 -187
- package/dist/tests/techstack.test.js.map +0 -1
- package/dist/tests/tools.test.d.ts +0 -2
- package/dist/tests/tools.test.d.ts.map +0 -1
- package/dist/tests/tools.test.js +0 -137
- package/dist/tests/tools.test.js.map +0 -1
- package/dist/tests/tracker.test.d.ts +0 -2
- package/dist/tests/tracker.test.d.ts.map +0 -1
- package/dist/tests/tracker.test.js +0 -197
- package/dist/tests/tracker.test.js.map +0 -1
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Christian Cattaneo
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/ai.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getCurrentModel } from './providers.js';
|
|
1
2
|
export interface CodebaseContext {
|
|
2
3
|
files: string[];
|
|
3
4
|
summary: string;
|
|
@@ -11,4 +12,5 @@ export declare function detectStepCompletion(projectPath: string, currentStep: s
|
|
|
11
12
|
confidence: number;
|
|
12
13
|
reason: string;
|
|
13
14
|
}>;
|
|
15
|
+
export { getCurrentModel };
|
|
14
16
|
//# sourceMappingURL=ai.d.ts.map
|
package/dist/ai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,eAAe,EAA2B,MAAM,gBAAgB,CAAC;AAoDhF,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,CA4EnF;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,CAoCjB;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,CAsCrE;AAGD,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
package/dist/ai.js
CHANGED
|
@@ -1,42 +1,8 @@
|
|
|
1
1
|
import { getApiKey } from './config.js';
|
|
2
|
+
import { chat, getCurrentModel, getProviderCapabilities } from './providers.js';
|
|
3
|
+
import { getActiveProvider } from './config.js';
|
|
2
4
|
import { readdirSync, readFileSync } from 'fs';
|
|
3
5
|
import { join, extname } from 'path';
|
|
4
|
-
// Claude 4.5 Opus with extended thinking for deep analysis
|
|
5
|
-
async function callClaude(prompt, systemPrompt) {
|
|
6
|
-
const apiKey = getApiKey();
|
|
7
|
-
if (!apiKey) {
|
|
8
|
-
throw new Error('No API key configured');
|
|
9
|
-
}
|
|
10
|
-
const maxTokens = 16000;
|
|
11
|
-
const thinkingBudget = 10000;
|
|
12
|
-
const response = await fetch('https://api.anthropic.com/v1/messages', {
|
|
13
|
-
method: 'POST',
|
|
14
|
-
headers: {
|
|
15
|
-
'Content-Type': 'application/json',
|
|
16
|
-
'x-api-key': apiKey,
|
|
17
|
-
'anthropic-version': '2023-06-01',
|
|
18
|
-
},
|
|
19
|
-
body: JSON.stringify({
|
|
20
|
-
model: 'claude-opus-4-20250514',
|
|
21
|
-
max_tokens: maxTokens,
|
|
22
|
-
thinking: {
|
|
23
|
-
type: 'enabled',
|
|
24
|
-
budget_tokens: thinkingBudget,
|
|
25
|
-
},
|
|
26
|
-
system: systemPrompt || 'You are Midas, a Golden Code coach. Be concise and actionable.',
|
|
27
|
-
messages: [{ role: 'user', content: prompt }],
|
|
28
|
-
}),
|
|
29
|
-
});
|
|
30
|
-
if (!response.ok) {
|
|
31
|
-
const error = await response.text();
|
|
32
|
-
throw new Error(`API error: ${response.status} - ${error}`);
|
|
33
|
-
}
|
|
34
|
-
// Extended thinking response has thinking blocks + text blocks
|
|
35
|
-
const data = await response.json();
|
|
36
|
-
// Extract text content (skip thinking blocks)
|
|
37
|
-
const textBlocks = data.content.filter(block => block.type === 'text');
|
|
38
|
-
return textBlocks[0]?.text || '';
|
|
39
|
-
}
|
|
40
6
|
// Scan codebase for context
|
|
41
7
|
function scanCodebase(projectPath, maxFiles = 20) {
|
|
42
8
|
const files = [];
|
|
@@ -119,7 +85,9 @@ export async function analyzeCodebase(projectPath) {
|
|
|
119
85
|
return `--- ${f.replace(projectPath, '')} ---\n${content}`;
|
|
120
86
|
}).join('\n\n');
|
|
121
87
|
try {
|
|
122
|
-
const
|
|
88
|
+
const provider = getActiveProvider();
|
|
89
|
+
const capabilities = getProviderCapabilities(provider);
|
|
90
|
+
const response = await chat(`Analyze this codebase and provide:
|
|
123
91
|
1. A one-line summary of what it does
|
|
124
92
|
2. The tech stack (list)
|
|
125
93
|
3. The most important next step for production readiness
|
|
@@ -131,8 +99,11 @@ Sample content:
|
|
|
131
99
|
${sampleContent}
|
|
132
100
|
|
|
133
101
|
Respond in JSON format:
|
|
134
|
-
{"summary": "...", "techStack": ["..."], "suggestedNextStep": "..."}`,
|
|
135
|
-
|
|
102
|
+
{"summary": "...", "techStack": ["..."], "suggestedNextStep": "..."}`, {
|
|
103
|
+
systemPrompt: 'You are a senior engineer analyzing a codebase. Be concise. Respond only with valid JSON.',
|
|
104
|
+
useThinking: capabilities.thinking,
|
|
105
|
+
});
|
|
106
|
+
const parsed = JSON.parse(response.content);
|
|
136
107
|
return {
|
|
137
108
|
files,
|
|
138
109
|
summary: parsed.summary || `Found ${files.length} source files`,
|
|
@@ -155,8 +126,10 @@ export async function generateSmartPrompt(projectPath, phase, step, context) {
|
|
|
155
126
|
return ''; // Fall back to default prompts
|
|
156
127
|
}
|
|
157
128
|
const codebaseContext = context || await analyzeCodebase(projectPath);
|
|
129
|
+
const provider = getActiveProvider();
|
|
130
|
+
const capabilities = getProviderCapabilities(provider);
|
|
158
131
|
try {
|
|
159
|
-
const response = await
|
|
132
|
+
const response = await chat(`Generate a specific, actionable prompt for a developer to paste into Cursor AI.
|
|
160
133
|
|
|
161
134
|
Project: ${codebaseContext.summary}
|
|
162
135
|
Tech stack: ${codebaseContext.techStack.join(', ')}
|
|
@@ -169,8 +142,11 @@ The prompt should:
|
|
|
169
142
|
3. Be immediately actionable
|
|
170
143
|
4. Follow the Golden Code methodology
|
|
171
144
|
|
|
172
|
-
Respond with just the prompt text, no explanation.`,
|
|
173
|
-
|
|
145
|
+
Respond with just the prompt text, no explanation.`, {
|
|
146
|
+
systemPrompt: 'You are Midas, a Golden Code coach. Generate prompts that are specific, actionable, and context-aware.',
|
|
147
|
+
useThinking: capabilities.thinking,
|
|
148
|
+
});
|
|
149
|
+
return response.content.trim();
|
|
174
150
|
}
|
|
175
151
|
catch {
|
|
176
152
|
return '';
|
|
@@ -182,8 +158,10 @@ export async function detectStepCompletion(projectPath, currentStep) {
|
|
|
182
158
|
return { completed: false, confidence: 0, reason: 'No API key' };
|
|
183
159
|
}
|
|
184
160
|
const context = await analyzeCodebase(projectPath);
|
|
161
|
+
const provider = getActiveProvider();
|
|
162
|
+
const capabilities = getProviderCapabilities(provider);
|
|
185
163
|
try {
|
|
186
|
-
const response = await
|
|
164
|
+
const response = await chat(`Based on this codebase analysis, determine if the following step is complete:
|
|
187
165
|
|
|
188
166
|
Step: ${currentStep}
|
|
189
167
|
Files: ${context.files.length} source files
|
|
@@ -198,11 +176,16 @@ Consider:
|
|
|
198
176
|
- BUILD steps: Is there working code with tests?
|
|
199
177
|
|
|
200
178
|
Respond in JSON:
|
|
201
|
-
{"completed": true/false, "confidence": 0-100, "reason": "..."}`,
|
|
202
|
-
|
|
179
|
+
{"completed": true/false, "confidence": 0-100, "reason": "..."}`, {
|
|
180
|
+
systemPrompt: 'You are analyzing project completeness. Be conservative - only mark complete if clearly done.',
|
|
181
|
+
useThinking: capabilities.thinking,
|
|
182
|
+
});
|
|
183
|
+
return JSON.parse(response.content);
|
|
203
184
|
}
|
|
204
185
|
catch {
|
|
205
186
|
return { completed: false, confidence: 0, reason: 'Analysis failed' };
|
|
206
187
|
}
|
|
207
188
|
}
|
|
189
|
+
// Re-export for backward compatibility
|
|
190
|
+
export { getCurrentModel };
|
|
208
191
|
//# sourceMappingURL=ai.js.map
|
package/dist/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
|
package/dist/analyzer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAiD,MAAM,kBAAkB,CAAC;AAkG7F;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,MAAY,GACzB,OAAO,CAAC,MAAM,CAAC,CAejB;AAiED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,KAAK,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAyOlF;AAMD;;;GAGG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAmBD;AAMD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAyF3B"}
|
package/dist/analyzer.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { getApiKey } from './config.js';
|
|
1
|
+
import { getApiKey, getActiveProvider } from './config.js';
|
|
2
|
+
import { chat, getProviderCapabilities, getCurrentModel } from './providers.js';
|
|
2
3
|
import { readdirSync, readFileSync, existsSync } from 'fs';
|
|
3
4
|
import { join, extname } from 'path';
|
|
4
5
|
import { loadState } from './state/phase.js';
|
|
@@ -8,98 +9,48 @@ import { sanitizePath, limitLength } from './security.js';
|
|
|
8
9
|
import { logger } from './logger.js';
|
|
9
10
|
import { buildCompressedContext, estimateTokens } from './context.js';
|
|
10
11
|
// ============================================================================
|
|
11
|
-
//
|
|
12
|
+
// AI PROVIDER ABSTRACTION
|
|
12
13
|
// ============================================================================
|
|
13
14
|
/**
|
|
14
|
-
* Call
|
|
15
|
+
* Call the configured AI provider
|
|
15
16
|
*
|
|
16
|
-
*
|
|
17
|
-
* - First call: Normal price for cache write
|
|
18
|
-
* - Subsequent calls: 90% cheaper for cached portion
|
|
17
|
+
* Supports: Anthropic Claude, OpenAI GPT-4o, Google Gemini, xAI Grok
|
|
19
18
|
*
|
|
20
|
-
*
|
|
21
|
-
* -
|
|
22
|
-
* -
|
|
23
|
-
* -
|
|
19
|
+
* Provider-specific features:
|
|
20
|
+
* - Anthropic: Extended thinking, prompt caching (90% savings)
|
|
21
|
+
* - OpenAI: Standard chat completions
|
|
22
|
+
* - Google: 1M token context
|
|
23
|
+
* - xAI: OpenAI-compatible format
|
|
24
24
|
*/
|
|
25
|
-
async function
|
|
25
|
+
async function callAI(prompt, systemPrompt, options = {}) {
|
|
26
26
|
const apiKey = getApiKey();
|
|
27
27
|
if (!apiKey)
|
|
28
|
-
throw new Error('No API key');
|
|
29
|
-
const
|
|
28
|
+
throw new Error('No API key configured');
|
|
29
|
+
const provider = getActiveProvider();
|
|
30
|
+
const capabilities = getProviderCapabilities(provider);
|
|
30
31
|
const maxTokens = options.maxTokens ?? 16000;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
};
|
|
44
|
-
// Note: Extended thinking doesn't support system prompt caching
|
|
45
|
-
body.system = systemPrompt;
|
|
46
|
-
}
|
|
47
|
-
else if (useCache && estimateTokens(systemPrompt) >= 256) {
|
|
48
|
-
// Use prompt caching if enabled and system prompt is large enough
|
|
49
|
-
body.system = [{
|
|
50
|
-
type: 'text',
|
|
51
|
-
text: systemPrompt,
|
|
52
|
-
cache_control: { type: 'ephemeral' },
|
|
53
|
-
}];
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
body.system = systemPrompt;
|
|
57
|
-
}
|
|
58
|
-
const response = await fetch('https://api.anthropic.com/v1/messages', {
|
|
59
|
-
method: 'POST',
|
|
60
|
-
headers: {
|
|
61
|
-
'Content-Type': 'application/json',
|
|
62
|
-
'x-api-key': apiKey,
|
|
63
|
-
'anthropic-version': '2023-06-01',
|
|
64
|
-
},
|
|
65
|
-
body: JSON.stringify(body),
|
|
32
|
+
// Use extended thinking only if provider supports it
|
|
33
|
+
const useThinking = (options.useThinking ?? true) && capabilities.thinking;
|
|
34
|
+
logger.debug('AI call', {
|
|
35
|
+
provider,
|
|
36
|
+
model: getCurrentModel(),
|
|
37
|
+
thinking: useThinking,
|
|
38
|
+
});
|
|
39
|
+
const response = await chat(prompt, {
|
|
40
|
+
systemPrompt,
|
|
41
|
+
maxTokens,
|
|
42
|
+
useThinking,
|
|
43
|
+
timeout: 60000,
|
|
66
44
|
});
|
|
67
|
-
if (!response.ok) {
|
|
68
|
-
const errorText = await response.text().catch(() => 'Unknown error');
|
|
69
|
-
throw new Error(`API error: ${response.status} - ${errorText}`);
|
|
70
|
-
}
|
|
71
|
-
const data = await response.json();
|
|
72
45
|
// Log usage for monitoring
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
total_input: usage.input_tokens,
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
else if (usage.cache_creation_input_tokens && usage.cache_creation_input_tokens > 0) {
|
|
85
|
-
// Cache write - will save on subsequent calls
|
|
86
|
-
logger.info('Prompt cache WRITE', {
|
|
87
|
-
cached_tokens: usage.cache_creation_input_tokens,
|
|
88
|
-
total_input: usage.input_tokens,
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
logger.debug('Claude usage', {
|
|
93
|
-
input_tokens: usage.input_tokens,
|
|
94
|
-
output_tokens: usage.output_tokens,
|
|
95
|
-
model: 'claude-opus-4',
|
|
96
|
-
thinking: useThinking,
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
// Extract text content (skip thinking blocks when extended thinking is enabled)
|
|
101
|
-
const textBlocks = data.content.filter(block => block.type === 'text');
|
|
102
|
-
return textBlocks[0]?.text || '';
|
|
46
|
+
logger.debug('AI response', {
|
|
47
|
+
provider: response.provider,
|
|
48
|
+
model: response.model,
|
|
49
|
+
inputTokens: response.inputTokens,
|
|
50
|
+
outputTokens: response.outputTokens,
|
|
51
|
+
cached: response.cached,
|
|
52
|
+
});
|
|
53
|
+
return response.content;
|
|
103
54
|
}
|
|
104
55
|
function scanFiles(dir, maxFiles = 30) {
|
|
105
56
|
const files = [];
|
|
@@ -148,7 +99,7 @@ export async function summarizeContent(content, purpose, targetTokens = 200) {
|
|
|
148
99
|
if (estimateTokens(content) <= targetTokens)
|
|
149
100
|
return content;
|
|
150
101
|
try {
|
|
151
|
-
const result = await
|
|
102
|
+
const result = await callAI(`Summarize this in ~${targetTokens} tokens. Preserve: key decisions, technical choices, errors, solutions.\n\n${content.slice(0, 4000)}`, 'You are a concise technical summarizer. Output only the summary, no preamble.', { maxTokens: targetTokens + 50, useThinking: false } // Fast summarization
|
|
152
103
|
);
|
|
153
104
|
return result.trim();
|
|
154
105
|
}
|
|
@@ -262,81 +213,125 @@ export async function analyzeProject(projectPath) {
|
|
|
262
213
|
const errorContext = unresolvedErrors.length > 0
|
|
263
214
|
? unresolvedErrors.slice(0, 3).map(e => `- ${e.error.slice(0, 100)}${e.fixAttempts.length > 0 ? ` (tried ${e.fixAttempts.length}x)` : ''}`).join('\n')
|
|
264
215
|
: 'No unresolved errors';
|
|
265
|
-
//
|
|
266
|
-
//
|
|
267
|
-
//
|
|
268
|
-
|
|
216
|
+
// =========================================================================
|
|
217
|
+
// OPTIMIZED CONTEXT STACKING FOR MAXIMUM CACHE HITS
|
|
218
|
+
// =========================================================================
|
|
219
|
+
// System prompt (CACHED - 90% savings on repeated calls):
|
|
220
|
+
// - Full methodology (stable across ALL calls)
|
|
221
|
+
// - Response format instructions (stable)
|
|
222
|
+
// - Project conventions (stable per project)
|
|
223
|
+
//
|
|
224
|
+
// User prompt (NOT cached - keep minimal):
|
|
225
|
+
// - Current state (dynamic)
|
|
226
|
+
// - Recent errors (dynamic)
|
|
227
|
+
// - Recent activity (dynamic)
|
|
228
|
+
// =========================================================================
|
|
229
|
+
// SYSTEM PROMPT - Large, stable content (will be cached)
|
|
230
|
+
const systemPrompt = `You are Midas, a Golden Code coach. You analyze projects and determine their exact phase in the development lifecycle.
|
|
231
|
+
|
|
232
|
+
# GOLDEN CODE METHODOLOGY (Stable Reference)
|
|
233
|
+
|
|
234
|
+
## The 4 Development Phases:
|
|
235
|
+
|
|
236
|
+
### PLAN (Planning Phase)
|
|
237
|
+
Steps: IDEA → RESEARCH → BRAINLIFT → PRD → GAMEPLAN
|
|
238
|
+
Purpose: Understand the problem before writing code.
|
|
239
|
+
- IDEA: Capture the core concept and motivation
|
|
240
|
+
- RESEARCH: Study existing solutions, dependencies, constraints
|
|
241
|
+
- BRAINLIFT: Extract key decisions and mental models
|
|
242
|
+
- PRD: Define requirements, scope, success criteria
|
|
243
|
+
- GAMEPLAN: Break into ordered implementation tasks
|
|
244
|
+
|
|
245
|
+
### BUILD (Implementation Phase)
|
|
246
|
+
Steps: RULES → INDEX → READ → RESEARCH → IMPLEMENT → TEST → DEBUG
|
|
247
|
+
Purpose: Code methodically with verification at each step.
|
|
248
|
+
- RULES: Set up .cursorrules with project conventions
|
|
249
|
+
- INDEX: Understand codebase structure
|
|
250
|
+
- READ: Study relevant existing code
|
|
251
|
+
- RESEARCH: Look up APIs, patterns, best practices
|
|
252
|
+
- IMPLEMENT: Write the code
|
|
253
|
+
- TEST: Verify with automated tests
|
|
254
|
+
- DEBUG: Fix any issues (use Tornado if stuck)
|
|
255
|
+
|
|
256
|
+
### SHIP (Deployment Phase)
|
|
257
|
+
Steps: REVIEW → DEPLOY → MONITOR
|
|
258
|
+
Purpose: Get code into production safely.
|
|
259
|
+
- REVIEW: Code review, security audit, performance check
|
|
260
|
+
- DEPLOY: Push to production with proper CI/CD
|
|
261
|
+
- MONITOR: Watch for errors, performance issues
|
|
269
262
|
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
263
|
+
### GROW (Iteration Phase)
|
|
264
|
+
Steps: MONITOR → COLLECT → TRIAGE → RETROSPECT → PLAN_NEXT → LOOP
|
|
265
|
+
Purpose: Learn from production and improve.
|
|
266
|
+
- MONITOR: Track error rates, performance, engagement
|
|
267
|
+
- COLLECT: Gather user feedback, bug reports
|
|
268
|
+
- TRIAGE: Prioritize by impact/effort
|
|
269
|
+
- RETROSPECT: What worked, what didn't
|
|
270
|
+
- PLAN_NEXT: Define next iteration scope
|
|
271
|
+
- LOOP: Return to PLAN with new context
|
|
275
272
|
|
|
276
|
-
##
|
|
273
|
+
## Key Rules:
|
|
274
|
+
1. GATES MUST PASS: Build, tests, and lint must pass before advancing
|
|
275
|
+
2. TORNADO DEBUGGING: If stuck on same error 3+ times, use Research + Logs + Tests
|
|
276
|
+
3. ONE TASK PER PROMPT: Each suggested prompt should be specific and actionable
|
|
277
|
+
4. ERRORS FIRST: If gates are failing, the next action MUST fix them
|
|
278
|
+
|
|
279
|
+
## Response Format:
|
|
280
|
+
Respond ONLY with valid JSON matching this schema:
|
|
281
|
+
{
|
|
282
|
+
"phase": "EAGLE_SIGHT" | "BUILD" | "SHIP" | "GROW" | "IDLE",
|
|
283
|
+
"step": "step name within phase",
|
|
284
|
+
"summary": "one-line project summary",
|
|
285
|
+
"techStack": ["detected", "technologies"],
|
|
286
|
+
"whatsDone": ["completed item 1", "completed item 2"],
|
|
287
|
+
"whatsNext": "specific next action description",
|
|
288
|
+
"suggestedPrompt": "exact actionable prompt for Cursor",
|
|
289
|
+
"confidence": 0-100
|
|
290
|
+
}`;
|
|
291
|
+
// USER PROMPT - Minimal, dynamic content only (NOT cached)
|
|
292
|
+
const userPrompt = `# CURRENT PROJECT STATE
|
|
293
|
+
|
|
294
|
+
## Midas Tracking:
|
|
277
295
|
- Phase: ${currentState.current.phase}${('step' in currentState.current) ? ` → ${currentState.current.step}` : ''}
|
|
278
296
|
- Confidence: ${tracker.confidence}%
|
|
279
297
|
- Gates: ${gatesStatus.allPass ? 'ALL PASS' : gatesStatus.failing.length > 0 ? `FAILING: ${gatesStatus.failing.join(', ')}` : 'Not yet run'}
|
|
280
298
|
|
|
299
|
+
## Unresolved Errors:
|
|
300
|
+
${errorContext}
|
|
301
|
+
|
|
302
|
+
## Recent Activity:
|
|
303
|
+
${activityContext}
|
|
304
|
+
|
|
281
305
|
---
|
|
282
306
|
|
|
283
|
-
# PROJECT
|
|
307
|
+
# PROJECT STRUCTURE
|
|
284
308
|
|
|
285
|
-
##
|
|
309
|
+
## Files (${files.length} total):
|
|
286
310
|
${fileList}
|
|
287
311
|
|
|
288
312
|
## Planning Docs:
|
|
289
313
|
- brainlift.md: ${hasbrainlift ? 'exists' : 'missing'}
|
|
290
|
-
- prd.md: ${hasPrd ? 'exists' : 'missing'}
|
|
314
|
+
- prd.md: ${hasPrd ? 'exists' : 'missing'}
|
|
291
315
|
- gameplan.md: ${hasGameplan ? 'exists' : 'missing'}
|
|
292
316
|
|
|
293
|
-
${brainliftContent ? `brainlift.md preview:\n${brainliftContent.slice(0,
|
|
317
|
+
${brainliftContent ? `brainlift.md preview:\n${brainliftContent.slice(0, 200)}` : ''}
|
|
294
318
|
|
|
295
319
|
## Infrastructure:
|
|
296
320
|
- Tests: ${hasTests ? 'yes' : 'no'}
|
|
297
321
|
- Dockerfile/compose: ${hasDockerfile ? 'yes' : 'no'}
|
|
298
322
|
- CI/CD: ${hasCI ? 'yes' : 'no'}
|
|
299
323
|
|
|
300
|
-
## Code
|
|
301
|
-
${codeSamples || 'No code files yet'}
|
|
302
|
-
|
|
303
|
-
---
|
|
304
|
-
|
|
305
|
-
# RECENT CONTEXT (End - High Attention)
|
|
324
|
+
## Recent Code (samples):
|
|
325
|
+
${(codeSamples || 'No code files yet').slice(0, 500)}
|
|
306
326
|
|
|
307
|
-
##
|
|
308
|
-
${
|
|
309
|
-
|
|
310
|
-
## Recent Activity:
|
|
311
|
-
${activityContext}
|
|
312
|
-
|
|
313
|
-
## Journal (Most Recent Conversations):
|
|
314
|
-
${journalContext}
|
|
327
|
+
## Recent Conversations:
|
|
328
|
+
${journalContext.slice(0, 400)}
|
|
315
329
|
|
|
316
330
|
---
|
|
317
331
|
|
|
318
|
-
|
|
319
|
-
1. Verify/adjust the current phase and step
|
|
320
|
-
2. What's completed
|
|
321
|
-
3. What's the single most important next action
|
|
322
|
-
4. Specific prompt for Cursor (actionable, one task)
|
|
323
|
-
|
|
324
|
-
CRITICAL: If gates are failing (build/tests/lint), the next action MUST be to fix them.
|
|
325
|
-
If there are unresolved errors with multiple fix attempts, suggest Tornado debugging.
|
|
326
|
-
|
|
327
|
-
Respond ONLY with valid JSON:
|
|
328
|
-
{
|
|
329
|
-
"phase": "EAGLE_SIGHT" | "BUILD" | "SHIP" | "GROW" | "IDLE",
|
|
330
|
-
"step": "step name",
|
|
331
|
-
"summary": "one-line project summary",
|
|
332
|
-
"techStack": ["tech1", "tech2"],
|
|
333
|
-
"whatsDone": ["done1", "done2"],
|
|
334
|
-
"whatsNext": "specific next action",
|
|
335
|
-
"suggestedPrompt": "exact prompt to paste in Cursor",
|
|
336
|
-
"confidence": 0-100
|
|
337
|
-
}`;
|
|
332
|
+
Analyze this project and provide the JSON response.`;
|
|
338
333
|
try {
|
|
339
|
-
const response = await
|
|
334
|
+
const response = await callAI(userPrompt, systemPrompt);
|
|
340
335
|
// Parse JSON from response
|
|
341
336
|
let jsonStr = response;
|
|
342
337
|
if (response.includes('```')) {
|
|
@@ -466,10 +461,9 @@ Analyze this exchange and respond with JSON:
|
|
|
466
461
|
"confidence": 0-100
|
|
467
462
|
}`;
|
|
468
463
|
try {
|
|
469
|
-
const response = await
|
|
464
|
+
const response = await callAI(prompt, systemPrompt, {
|
|
470
465
|
maxTokens: 1000,
|
|
471
466
|
useThinking: false, // Fast response for this
|
|
472
|
-
useCache: true
|
|
473
467
|
});
|
|
474
468
|
// Parse JSON from response
|
|
475
469
|
const jsonMatch = response.match(/\{[\s\S]*\}/);
|
package/dist/analyzer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
|
+
export type AIProvider = 'anthropic' | 'openai' | 'google' | 'xai';
|
|
1
2
|
export interface MidasConfig {
|
|
3
|
+
provider: AIProvider;
|
|
2
4
|
anthropicApiKey?: string;
|
|
5
|
+
openaiApiKey?: string;
|
|
6
|
+
googleApiKey?: string;
|
|
7
|
+
xaiApiKey?: string;
|
|
3
8
|
createdAt: string;
|
|
4
9
|
lastUsed: string;
|
|
5
10
|
}
|
|
6
11
|
export declare function loadConfig(): MidasConfig;
|
|
7
12
|
export declare function saveConfig(config: MidasConfig): void;
|
|
13
|
+
export declare function getActiveProvider(): AIProvider;
|
|
14
|
+
export declare function setActiveProvider(provider: AIProvider): void;
|
|
15
|
+
export declare function getProviderApiKey(provider: AIProvider): string | undefined;
|
|
8
16
|
export declare function getApiKey(): string | undefined;
|
|
9
17
|
export declare function hasApiKey(): boolean;
|
|
18
|
+
export declare function setProviderApiKey(provider: AIProvider, apiKey: string): void;
|
|
19
|
+
export declare function validateApiKey(provider: AIProvider, key: string): boolean;
|
|
20
|
+
export declare function getProviderInfo(provider: AIProvider): {
|
|
21
|
+
name: string;
|
|
22
|
+
model: string;
|
|
23
|
+
url: string;
|
|
24
|
+
};
|
|
10
25
|
export declare function promptForApiKey(): Promise<string | undefined>;
|
|
11
26
|
export declare function ensureApiKey(): Promise<string | undefined>;
|
|
27
|
+
export declare function listConfiguredProviders(): AIProvider[];
|
|
12
28
|
//# sourceMappingURL=config.d.ts.map
|