midas-mcp 1.1.0 → 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/dist/cli.d.ts +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +14 -7
- package/dist/cli.js.map +1 -1
- package/dist/docs/brainlift.md +17 -0
- package/dist/docs/gameplan.md +18 -0
- package/dist/docs/prd.md +20 -0
- package/dist/index.js +17 -15
- package/dist/index.js.map +1 -1
- package/dist/tui.d.ts +2 -0
- package/dist/tui.d.ts.map +1 -0
- package/dist/tui.js +404 -0
- package/dist/tui.js.map +1 -0
- package/docs/brainlift.md +17 -0
- package/docs/gameplan.md +18 -0
- package/docs/prd.md +20 -0
- package/package.json +1 -1
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[]):
|
|
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,
|
|
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
|
|
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
|
|
212
|
+
return 'handled';
|
|
212
213
|
case 'status':
|
|
213
214
|
showStatus();
|
|
214
|
-
return
|
|
215
|
+
return 'handled';
|
|
215
216
|
case 'init':
|
|
216
217
|
runInit(args[1]);
|
|
217
|
-
return
|
|
218
|
+
return 'handled';
|
|
218
219
|
case 'audit':
|
|
219
220
|
runAudit();
|
|
220
|
-
return
|
|
221
|
+
return 'handled';
|
|
221
222
|
case 'docs':
|
|
222
223
|
runDocsCheck();
|
|
223
|
-
return
|
|
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
|
-
|
|
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":"AAAA,OAAO,EAAE,SAAS,EAAc,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,cAAc;AACd,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,MAAM,IAAI,GAAG,SAAS,CAAC;AACvB,MAAM,GAAG,GAAG,SAAS,CAAC;AACtB,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,IAAI,GAAG,UAAU,CAAC;AACxB,MAAM,IAAI,GAAG,UAAU,CAAC;AACxB,MAAM,KAAK,GAAG,UAAU,CAAC;AAEzB,SAAS,GAAG,CAAC,OAAe,EAAE,KAAK,GAAG,EAAE;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC3B,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC5C,OAAO,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,WAAW,CAAC,OAAe,EAAE,KAAa,EAAE,KAAK,GAAG,EAAE;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAC7B,OAAO,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,CAAC,GAAG,CAAC;EACZ,IAAI,GAAG,IAAI,QAAQ,KAAK;;EAExB,IAAI,SAAS,KAAK
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.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]
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Gameplan: my-project
|
|
2
|
+
|
|
3
|
+
## Tech Stack
|
|
4
|
+
[Stack choice with justification]
|
|
5
|
+
|
|
6
|
+
## Architecture Overview
|
|
7
|
+
[High-level system design]
|
|
8
|
+
|
|
9
|
+
## Phase 1: Foundation
|
|
10
|
+
- [ ] Task 1
|
|
11
|
+
- [ ] Task 2
|
|
12
|
+
|
|
13
|
+
## Phase 2: Core Features
|
|
14
|
+
- [ ] Task 1
|
|
15
|
+
- [ ] Task 2
|
|
16
|
+
|
|
17
|
+
## Risk Mitigation
|
|
18
|
+
- Risk: [issue] → Mitigation: [solution]
|
package/dist/docs/prd.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# PRD: my-project
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
[One-paragraph description]
|
|
5
|
+
|
|
6
|
+
## Goals
|
|
7
|
+
1. [Primary goal]
|
|
8
|
+
2. [Secondary goal]
|
|
9
|
+
|
|
10
|
+
## Non-Goals
|
|
11
|
+
- [What you're explicitly NOT building]
|
|
12
|
+
|
|
13
|
+
## User Stories
|
|
14
|
+
- As a [user type], I want to [action] so that [benefit]
|
|
15
|
+
|
|
16
|
+
## Technical Requirements
|
|
17
|
+
- [Performance, security, integration requirements]
|
|
18
|
+
|
|
19
|
+
## Success Metrics
|
|
20
|
+
- [How you'll measure success]
|
package/dist/index.js
CHANGED
|
@@ -2,26 +2,28 @@
|
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
3
|
import { createServer } from './server.js';
|
|
4
4
|
import { runCLI } from './cli.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
// If CLI args provided, run CLI mode
|
|
8
|
-
if (args.length > 0) {
|
|
9
|
-
const handled = runCLI(args);
|
|
10
|
-
if (handled) {
|
|
11
|
-
process.exit(0);
|
|
12
|
-
}
|
|
13
|
-
// Unknown command - show help
|
|
14
|
-
console.log(`Unknown command: ${args[0]}`);
|
|
15
|
-
console.log('Run: npx midas-mcp help');
|
|
16
|
-
process.exit(1);
|
|
17
|
-
}
|
|
18
|
-
// No args - start MCP server
|
|
5
|
+
import { runInteractive } from './tui.js';
|
|
6
|
+
async function startMCPServer() {
|
|
19
7
|
const server = createServer();
|
|
20
8
|
const transport = new StdioServerTransport();
|
|
21
9
|
await server.connect(transport);
|
|
22
|
-
// Log to stderr (stdout is for MCP protocol)
|
|
23
10
|
console.error('Midas MCP server running');
|
|
24
11
|
}
|
|
12
|
+
async function main() {
|
|
13
|
+
const args = process.argv.slice(2);
|
|
14
|
+
const result = runCLI(args);
|
|
15
|
+
switch (result) {
|
|
16
|
+
case 'handled':
|
|
17
|
+
process.exit(0);
|
|
18
|
+
break;
|
|
19
|
+
case 'server':
|
|
20
|
+
await startMCPServer();
|
|
21
|
+
break;
|
|
22
|
+
case 'interactive':
|
|
23
|
+
await runInteractive();
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
25
27
|
main().catch((error) => {
|
|
26
28
|
console.error('Fatal error:', error);
|
|
27
29
|
process.exit(1);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,KAAK,UAAU,cAAc;IAC3B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,cAAc,EAAE,CAAC;YACvB,MAAM;QACR,KAAK,aAAa;YAChB,MAAM,cAAc,EAAE,CAAC;YACvB,MAAM;IACV,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/tui.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"AAwVA,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA8EpD"}
|
package/dist/tui.js
ADDED
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
import { watch, existsSync } from 'fs';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
import { loadState, saveState } from './state/phase.js';
|
|
4
|
+
import { checkDocs } from './tools/docs.js';
|
|
5
|
+
import { exec } from 'child_process';
|
|
6
|
+
// ANSI codes
|
|
7
|
+
const ESC = '\x1b';
|
|
8
|
+
const reset = `${ESC}[0m`;
|
|
9
|
+
const bold = `${ESC}[1m`;
|
|
10
|
+
const dim = `${ESC}[2m`;
|
|
11
|
+
const green = `${ESC}[32m`;
|
|
12
|
+
const yellow = `${ESC}[33m`;
|
|
13
|
+
const blue = `${ESC}[34m`;
|
|
14
|
+
const cyan = `${ESC}[36m`;
|
|
15
|
+
const white = `${ESC}[37m`;
|
|
16
|
+
const bgBlue = `${ESC}[44m`;
|
|
17
|
+
const clearScreen = `${ESC}[2J${ESC}[H`;
|
|
18
|
+
// Prompts for each step
|
|
19
|
+
const STEP_PROMPTS = {
|
|
20
|
+
// Eagle Sight
|
|
21
|
+
'EAGLE_SIGHT:IDEA': {
|
|
22
|
+
action: 'Define your core idea',
|
|
23
|
+
prompt: `I'm starting a new project. Help me clarify:
|
|
24
|
+
1. What problem am I solving?
|
|
25
|
+
2. Who is it for?
|
|
26
|
+
3. Why now?
|
|
27
|
+
|
|
28
|
+
Ask me clarifying questions before we proceed.`,
|
|
29
|
+
},
|
|
30
|
+
'EAGLE_SIGHT:RESEARCH': {
|
|
31
|
+
action: 'Research the landscape',
|
|
32
|
+
prompt: `Research the landscape for my project idea.
|
|
33
|
+
Find:
|
|
34
|
+
1. Existing solutions
|
|
35
|
+
2. What they do well
|
|
36
|
+
3. What they miss
|
|
37
|
+
4. Technical approaches used
|
|
38
|
+
|
|
39
|
+
Summarize findings.`,
|
|
40
|
+
},
|
|
41
|
+
'EAGLE_SIGHT:BRAINLIFT': {
|
|
42
|
+
action: 'Fill out docs/brainlift.md',
|
|
43
|
+
prompt: `Review my brainlift.md and help me strengthen it.
|
|
44
|
+
Ask me questions to extract:
|
|
45
|
+
1. Contrarian insights I have
|
|
46
|
+
2. Domain knowledge AI lacks
|
|
47
|
+
3. Hard-won lessons from experience
|
|
48
|
+
4. Current context you might miss`,
|
|
49
|
+
},
|
|
50
|
+
'EAGLE_SIGHT:PRD': {
|
|
51
|
+
action: 'Fill out docs/prd.md',
|
|
52
|
+
prompt: `Review my PRD and help me improve it.
|
|
53
|
+
Check for:
|
|
54
|
+
1. Clear goals
|
|
55
|
+
2. Explicit non-goals
|
|
56
|
+
3. Complete user stories
|
|
57
|
+
4. Technical requirements
|
|
58
|
+
5. Success metrics
|
|
59
|
+
|
|
60
|
+
Ask clarifying questions.`,
|
|
61
|
+
},
|
|
62
|
+
'EAGLE_SIGHT:GAMEPLAN': {
|
|
63
|
+
action: 'Fill out docs/gameplan.md',
|
|
64
|
+
prompt: `Review my gameplan and help me refine it.
|
|
65
|
+
Verify:
|
|
66
|
+
1. Tech stack justified
|
|
67
|
+
2. Phases are logical
|
|
68
|
+
3. Tasks are specific
|
|
69
|
+
4. Risks identified
|
|
70
|
+
|
|
71
|
+
Suggest improvements.`,
|
|
72
|
+
},
|
|
73
|
+
// Build
|
|
74
|
+
'BUILD:RULES_LOADED': {
|
|
75
|
+
action: 'Load user rules',
|
|
76
|
+
prompt: `Read and understand user rules.
|
|
77
|
+
Research each for complete understanding.
|
|
78
|
+
Ask me any clarifying questions.
|
|
79
|
+
Make todos of all tasks.
|
|
80
|
+
Don't start yet.`,
|
|
81
|
+
},
|
|
82
|
+
'BUILD:CODEBASE_INDEXED': {
|
|
83
|
+
action: 'Index the codebase',
|
|
84
|
+
prompt: `Index this codebase structure.
|
|
85
|
+
Understand the architecture.
|
|
86
|
+
Note key files and patterns.
|
|
87
|
+
Summarize what you find.`,
|
|
88
|
+
},
|
|
89
|
+
'BUILD:FILES_READ': {
|
|
90
|
+
action: 'Read relevant files',
|
|
91
|
+
prompt: `Read the files relevant to my current task.
|
|
92
|
+
Understand the implementation details.
|
|
93
|
+
Note patterns to follow.
|
|
94
|
+
Identify integration points.`,
|
|
95
|
+
},
|
|
96
|
+
'BUILD:RESEARCHING': {
|
|
97
|
+
action: 'Research docs and APIs',
|
|
98
|
+
prompt: `Research the documentation for the libraries/APIs I'm using.
|
|
99
|
+
Find:
|
|
100
|
+
1. Best practices
|
|
101
|
+
2. Common pitfalls
|
|
102
|
+
3. Code examples
|
|
103
|
+
4. Security considerations`,
|
|
104
|
+
},
|
|
105
|
+
'BUILD:IMPLEMENTING': {
|
|
106
|
+
action: 'Write code with tests',
|
|
107
|
+
prompt: `Continue todos, do each comprehensively.
|
|
108
|
+
Write the test file FIRST.
|
|
109
|
+
Then implement to make tests pass.
|
|
110
|
+
Each function should do ONE thing.
|
|
111
|
+
Run tests after each file.`,
|
|
112
|
+
},
|
|
113
|
+
'BUILD:TESTING': {
|
|
114
|
+
action: 'Run and fix tests',
|
|
115
|
+
prompt: `Run all tests.
|
|
116
|
+
Fix any failures.
|
|
117
|
+
Add edge case tests.
|
|
118
|
+
Verify no regressions.
|
|
119
|
+
Commit when green.`,
|
|
120
|
+
},
|
|
121
|
+
'BUILD:DEBUGGING': {
|
|
122
|
+
action: 'Debug with Tornado cycle',
|
|
123
|
+
prompt: `I'm stuck on a bug. Help me with the Tornado cycle:
|
|
124
|
+
1. RESEARCH: Look up relevant docs
|
|
125
|
+
2. LOGS: Add strategic console.logs
|
|
126
|
+
3. TESTS: Write test to reproduce
|
|
127
|
+
|
|
128
|
+
Let's start with research.`,
|
|
129
|
+
},
|
|
130
|
+
// Idle/Shipped
|
|
131
|
+
'IDLE': {
|
|
132
|
+
action: 'Start a new project',
|
|
133
|
+
prompt: `I want to start a new project.
|
|
134
|
+
Help me through Eagle Sight:
|
|
135
|
+
1. Clarify my idea
|
|
136
|
+
2. Research landscape
|
|
137
|
+
3. Document my brainlift
|
|
138
|
+
4. Write the PRD
|
|
139
|
+
5. Create the gameplan`,
|
|
140
|
+
},
|
|
141
|
+
'SHIPPED': {
|
|
142
|
+
action: 'Run production audit',
|
|
143
|
+
prompt: `My project is shipped. Run a production readiness audit.
|
|
144
|
+
Check all 12 ingredients:
|
|
145
|
+
1-4: Core (Frontend, Backend, Database, Auth)
|
|
146
|
+
5-7: Power (APIs, State, Design)
|
|
147
|
+
8-10: Protection (Testing, Security, Errors)
|
|
148
|
+
11-12: Mastery (Git, Deployment)`,
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
function getPhaseKey(phase) {
|
|
152
|
+
if (phase.phase === 'IDLE' || phase.phase === 'SHIPPED') {
|
|
153
|
+
return phase.phase;
|
|
154
|
+
}
|
|
155
|
+
return `${phase.phase}:${phase.step}`;
|
|
156
|
+
}
|
|
157
|
+
function progressBar(current, total, width = 20) {
|
|
158
|
+
const filled = Math.round((current / total) * width);
|
|
159
|
+
const empty = width - filled;
|
|
160
|
+
return `${green}${'█'.repeat(filled)}${dim}${'░'.repeat(empty)}${reset}`;
|
|
161
|
+
}
|
|
162
|
+
function copyToClipboard(text) {
|
|
163
|
+
return new Promise((resolve, reject) => {
|
|
164
|
+
const proc = exec('pbcopy', (err) => {
|
|
165
|
+
if (err)
|
|
166
|
+
reject(err);
|
|
167
|
+
else
|
|
168
|
+
resolve();
|
|
169
|
+
});
|
|
170
|
+
proc.stdin?.write(text);
|
|
171
|
+
proc.stdin?.end();
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
function drawUI(phase, projectPath) {
|
|
175
|
+
const lines = [];
|
|
176
|
+
const width = 54;
|
|
177
|
+
const hLine = '═'.repeat(width - 2);
|
|
178
|
+
const hLineLight = '─'.repeat(width - 4);
|
|
179
|
+
lines.push(`${cyan}╔${hLine}╗${reset}`);
|
|
180
|
+
lines.push(`${cyan}║${reset} ${bold}${white}MIDAS${reset} ${dim}- Elite Vibecoding Coach${reset}${' '.repeat(width - 36)}${cyan}║${reset}`);
|
|
181
|
+
lines.push(`${cyan}╠${hLine}╣${reset}`);
|
|
182
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
183
|
+
if (phase.phase === 'IDLE') {
|
|
184
|
+
lines.push(`${cyan}║${reset} ${dim}No project initialized${reset}${' '.repeat(width - 27)}${cyan}║${reset}`);
|
|
185
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
186
|
+
lines.push(`${cyan}║${reset} Run: ${yellow}npx midas-mcp init <name>${reset}${' '.repeat(width - 35)}${cyan}║${reset}`);
|
|
187
|
+
}
|
|
188
|
+
else if (phase.phase === 'EAGLE_SIGHT') {
|
|
189
|
+
const steps = ['IDEA', 'RESEARCH', 'BRAINLIFT', 'PRD', 'GAMEPLAN'];
|
|
190
|
+
const currentIdx = steps.indexOf(phase.step);
|
|
191
|
+
const progress = currentIdx + 1;
|
|
192
|
+
lines.push(`${cyan}║${reset} ${yellow}${bold}EAGLE SIGHT${reset} ${progressBar(progress, 5)} ${progress}/5${' '.repeat(width - 44)}${cyan}║${reset}`);
|
|
193
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
194
|
+
for (let i = 0; i < steps.length; i++) {
|
|
195
|
+
const step = steps[i];
|
|
196
|
+
let icon, label;
|
|
197
|
+
if (i < currentIdx) {
|
|
198
|
+
icon = `${green}✓${reset}`;
|
|
199
|
+
label = `${dim}${step}${reset}`;
|
|
200
|
+
}
|
|
201
|
+
else if (i === currentIdx) {
|
|
202
|
+
icon = `${yellow}→${reset}`;
|
|
203
|
+
label = `${bold}${step}${reset} ${dim}(current)${reset}`;
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
icon = `${dim}○${reset}`;
|
|
207
|
+
label = `${dim}${step}${reset}`;
|
|
208
|
+
}
|
|
209
|
+
const padding = width - 8 - step.length - (i === currentIdx ? 10 : 0);
|
|
210
|
+
lines.push(`${cyan}║${reset} ${icon} ${label}${' '.repeat(Math.max(0, padding))}${cyan}║${reset}`);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
else if (phase.phase === 'BUILD') {
|
|
214
|
+
const steps = ['RULES_LOADED', 'CODEBASE_INDEXED', 'FILES_READ', 'RESEARCHING', 'IMPLEMENTING', 'TESTING', 'DEBUGGING'];
|
|
215
|
+
const labels = {
|
|
216
|
+
RULES_LOADED: 'Load Rules',
|
|
217
|
+
CODEBASE_INDEXED: 'Index Codebase',
|
|
218
|
+
FILES_READ: 'Read Files',
|
|
219
|
+
RESEARCHING: 'Research',
|
|
220
|
+
IMPLEMENTING: 'Implement',
|
|
221
|
+
TESTING: 'Test',
|
|
222
|
+
DEBUGGING: 'Debug',
|
|
223
|
+
};
|
|
224
|
+
const currentIdx = steps.indexOf(phase.step);
|
|
225
|
+
const progress = currentIdx + 1;
|
|
226
|
+
lines.push(`${cyan}║${reset} ${blue}${bold}BUILD${reset} ${progressBar(progress, 7)} ${progress}/7${' '.repeat(width - 38)}${cyan}║${reset}`);
|
|
227
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
228
|
+
for (let i = 0; i < steps.length; i++) {
|
|
229
|
+
const step = steps[i];
|
|
230
|
+
const label = labels[step];
|
|
231
|
+
let icon, text;
|
|
232
|
+
if (i < currentIdx) {
|
|
233
|
+
icon = `${green}✓${reset}`;
|
|
234
|
+
text = `${dim}${label}${reset}`;
|
|
235
|
+
}
|
|
236
|
+
else if (i === currentIdx) {
|
|
237
|
+
icon = `${blue}→${reset}`;
|
|
238
|
+
text = `${bold}${label}${reset} ${dim}(current)${reset}`;
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
icon = `${dim}○${reset}`;
|
|
242
|
+
text = `${dim}${label}${reset}`;
|
|
243
|
+
}
|
|
244
|
+
const padding = width - 8 - label.length - (i === currentIdx ? 10 : 0);
|
|
245
|
+
lines.push(`${cyan}║${reset} ${icon} ${text}${' '.repeat(Math.max(0, padding))}${cyan}║${reset}`);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
else if (phase.phase === 'SHIPPED') {
|
|
249
|
+
lines.push(`${cyan}║${reset} ${green}${bold}SHIPPED${reset} ${progressBar(1, 1)}${' '.repeat(width - 40)}${cyan}║${reset}`);
|
|
250
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
251
|
+
lines.push(`${cyan}║${reset} ${green}✓${reset} Project complete!${' '.repeat(width - 23)}${cyan}║${reset}`);
|
|
252
|
+
}
|
|
253
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
254
|
+
lines.push(`${cyan}╠${hLine}╣${reset}`);
|
|
255
|
+
// Get current prompt
|
|
256
|
+
const key = getPhaseKey(phase);
|
|
257
|
+
const stepData = STEP_PROMPTS[key] || { action: 'Continue', prompt: 'What would you like to do?' };
|
|
258
|
+
lines.push(`${cyan}║${reset} ${bold}NEXT:${reset} ${stepData.action}${' '.repeat(Math.max(0, width - 10 - stepData.action.length))}${cyan}║${reset}`);
|
|
259
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
260
|
+
lines.push(`${cyan}║${reset} ${dim}Paste this in Cursor:${reset}${' '.repeat(width - 26)}${cyan}║${reset}`);
|
|
261
|
+
lines.push(`${cyan}║${reset} ${dim}┌${hLineLight}┐${reset} ${cyan}║${reset}`);
|
|
262
|
+
// Wrap prompt text
|
|
263
|
+
const promptLines = stepData.prompt.split('\n');
|
|
264
|
+
for (const pLine of promptLines.slice(0, 4)) {
|
|
265
|
+
const truncated = pLine.slice(0, width - 10);
|
|
266
|
+
const padding = width - 8 - truncated.length;
|
|
267
|
+
lines.push(`${cyan}║${reset} ${dim}│${reset} ${truncated}${' '.repeat(Math.max(0, padding))}${dim}│${reset} ${cyan}║${reset}`);
|
|
268
|
+
}
|
|
269
|
+
if (promptLines.length > 4) {
|
|
270
|
+
lines.push(`${cyan}║${reset} ${dim}│ ...${' '.repeat(width - 13)}│${reset} ${cyan}║${reset}`);
|
|
271
|
+
}
|
|
272
|
+
lines.push(`${cyan}║${reset} ${dim}└${hLineLight}┘${reset} ${cyan}║${reset}`);
|
|
273
|
+
lines.push(`${cyan}║${reset}${' '.repeat(width - 2)}${cyan}║${reset}`);
|
|
274
|
+
lines.push(`${cyan}╠${hLine}╣${reset}`);
|
|
275
|
+
lines.push(`${cyan}║${reset} ${dim}[c]${reset} Copy prompt ${dim}[n]${reset} Next step ${dim}[b]${reset} Back ${dim}[q]${reset} Quit ${cyan}║${reset}`);
|
|
276
|
+
lines.push(`${cyan}╚${hLine}╝${reset}`);
|
|
277
|
+
return lines.join('\n');
|
|
278
|
+
}
|
|
279
|
+
function advancePhase(projectPath) {
|
|
280
|
+
const state = loadState(projectPath);
|
|
281
|
+
const phase = state.current;
|
|
282
|
+
if (phase.phase === 'IDLE') {
|
|
283
|
+
state.current = { phase: 'EAGLE_SIGHT', step: 'IDEA' };
|
|
284
|
+
}
|
|
285
|
+
else if (phase.phase === 'EAGLE_SIGHT') {
|
|
286
|
+
const steps = ['IDEA', 'RESEARCH', 'BRAINLIFT', 'PRD', 'GAMEPLAN'];
|
|
287
|
+
const idx = steps.indexOf(phase.step);
|
|
288
|
+
if (idx < steps.length - 1) {
|
|
289
|
+
state.current = { phase: 'EAGLE_SIGHT', step: steps[idx + 1] };
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
state.current = { phase: 'BUILD', step: 'RULES_LOADED' };
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
else if (phase.phase === 'BUILD') {
|
|
296
|
+
const steps = ['RULES_LOADED', 'CODEBASE_INDEXED', 'FILES_READ', 'RESEARCHING', 'IMPLEMENTING', 'TESTING', 'DEBUGGING'];
|
|
297
|
+
const idx = steps.indexOf(phase.step);
|
|
298
|
+
if (idx < steps.length - 1) {
|
|
299
|
+
state.current = { phase: 'BUILD', step: steps[idx + 1] };
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
state.current = { phase: 'SHIPPED' };
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
saveState(projectPath, state);
|
|
306
|
+
return state.current;
|
|
307
|
+
}
|
|
308
|
+
function goBackPhase(projectPath) {
|
|
309
|
+
const state = loadState(projectPath);
|
|
310
|
+
const phase = state.current;
|
|
311
|
+
if (phase.phase === 'EAGLE_SIGHT') {
|
|
312
|
+
const steps = ['IDEA', 'RESEARCH', 'BRAINLIFT', 'PRD', 'GAMEPLAN'];
|
|
313
|
+
const idx = steps.indexOf(phase.step);
|
|
314
|
+
if (idx > 0) {
|
|
315
|
+
state.current = { phase: 'EAGLE_SIGHT', step: steps[idx - 1] };
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
else if (phase.phase === 'BUILD') {
|
|
319
|
+
const steps = ['RULES_LOADED', 'CODEBASE_INDEXED', 'FILES_READ', 'RESEARCHING', 'IMPLEMENTING', 'TESTING', 'DEBUGGING'];
|
|
320
|
+
const idx = steps.indexOf(phase.step);
|
|
321
|
+
if (idx > 0) {
|
|
322
|
+
state.current = { phase: 'BUILD', step: steps[idx - 1] };
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
state.current = { phase: 'EAGLE_SIGHT', step: 'GAMEPLAN' };
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
else if (phase.phase === 'SHIPPED') {
|
|
329
|
+
state.current = { phase: 'BUILD', step: 'DEBUGGING' };
|
|
330
|
+
}
|
|
331
|
+
saveState(projectPath, state);
|
|
332
|
+
return state.current;
|
|
333
|
+
}
|
|
334
|
+
export async function runInteractive() {
|
|
335
|
+
const projectPath = process.cwd();
|
|
336
|
+
// Set up raw mode for single keypress
|
|
337
|
+
if (process.stdin.isTTY) {
|
|
338
|
+
process.stdin.setRawMode(true);
|
|
339
|
+
}
|
|
340
|
+
process.stdin.resume();
|
|
341
|
+
process.stdin.setEncoding('utf8');
|
|
342
|
+
let state = loadState(projectPath);
|
|
343
|
+
let phase = state.current;
|
|
344
|
+
let message = '';
|
|
345
|
+
const render = () => {
|
|
346
|
+
console.log(clearScreen);
|
|
347
|
+
console.log(drawUI(phase, projectPath));
|
|
348
|
+
if (message) {
|
|
349
|
+
console.log(`\n ${message}`);
|
|
350
|
+
message = '';
|
|
351
|
+
}
|
|
352
|
+
};
|
|
353
|
+
render();
|
|
354
|
+
// Watch for docs changes
|
|
355
|
+
const docsPath = join(projectPath, 'docs');
|
|
356
|
+
let watcher = null;
|
|
357
|
+
if (existsSync(docsPath)) {
|
|
358
|
+
watcher = watch(docsPath, { recursive: true }, () => {
|
|
359
|
+
// Re-check docs completeness
|
|
360
|
+
const docs = checkDocs({ projectPath });
|
|
361
|
+
if (docs.ready && phase.phase === 'EAGLE_SIGHT') {
|
|
362
|
+
message = `${green}✓${reset} Docs complete! Press [n] to start BUILD.`;
|
|
363
|
+
render();
|
|
364
|
+
}
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
process.stdin.on('data', async (key) => {
|
|
368
|
+
if (key === 'q' || key === '\u0003') { // q or Ctrl+C
|
|
369
|
+
console.log(clearScreen);
|
|
370
|
+
console.log(`\n ${cyan}Midas${reset} signing off. Happy vibecoding!\n`);
|
|
371
|
+
watcher?.close();
|
|
372
|
+
process.exit(0);
|
|
373
|
+
}
|
|
374
|
+
if (key === 'c') {
|
|
375
|
+
const stepKey = getPhaseKey(phase);
|
|
376
|
+
const prompt = STEP_PROMPTS[stepKey]?.prompt || '';
|
|
377
|
+
try {
|
|
378
|
+
await copyToClipboard(prompt);
|
|
379
|
+
message = `${green}✓${reset} Prompt copied to clipboard!`;
|
|
380
|
+
}
|
|
381
|
+
catch {
|
|
382
|
+
message = `${yellow}!${reset} Could not copy. Manually copy the prompt above.`;
|
|
383
|
+
}
|
|
384
|
+
render();
|
|
385
|
+
}
|
|
386
|
+
if (key === 'n') {
|
|
387
|
+
phase = advancePhase(projectPath);
|
|
388
|
+
message = `${green}→${reset} Advanced to next step`;
|
|
389
|
+
render();
|
|
390
|
+
}
|
|
391
|
+
if (key === 'b') {
|
|
392
|
+
phase = goBackPhase(projectPath);
|
|
393
|
+
message = `${yellow}←${reset} Went back one step`;
|
|
394
|
+
render();
|
|
395
|
+
}
|
|
396
|
+
if (key === 'r') {
|
|
397
|
+
state = loadState(projectPath);
|
|
398
|
+
phase = state.current;
|
|
399
|
+
message = `${blue}↻${reset} Refreshed`;
|
|
400
|
+
render();
|
|
401
|
+
}
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
//# sourceMappingURL=tui.js.map
|
package/dist/tui.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.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]
|
package/docs/gameplan.md
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Gameplan: my-project
|
|
2
|
+
|
|
3
|
+
## Tech Stack
|
|
4
|
+
[Stack choice with justification]
|
|
5
|
+
|
|
6
|
+
## Architecture Overview
|
|
7
|
+
[High-level system design]
|
|
8
|
+
|
|
9
|
+
## Phase 1: Foundation
|
|
10
|
+
- [ ] Task 1
|
|
11
|
+
- [ ] Task 2
|
|
12
|
+
|
|
13
|
+
## Phase 2: Core Features
|
|
14
|
+
- [ ] Task 1
|
|
15
|
+
- [ ] Task 2
|
|
16
|
+
|
|
17
|
+
## Risk Mitigation
|
|
18
|
+
- Risk: [issue] → Mitigation: [solution]
|
package/docs/prd.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# PRD: my-project
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
[One-paragraph description]
|
|
5
|
+
|
|
6
|
+
## Goals
|
|
7
|
+
1. [Primary goal]
|
|
8
|
+
2. [Secondary goal]
|
|
9
|
+
|
|
10
|
+
## Non-Goals
|
|
11
|
+
- [What you're explicitly NOT building]
|
|
12
|
+
|
|
13
|
+
## User Stories
|
|
14
|
+
- As a [user type], I want to [action] so that [benefit]
|
|
15
|
+
|
|
16
|
+
## Technical Requirements
|
|
17
|
+
- [Performance, security, integration requirements]
|
|
18
|
+
|
|
19
|
+
## Success Metrics
|
|
20
|
+
- [How you'll measure success]
|