midas-mcp 5.45.3 → 5.45.5
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/.claude/PLUGIN.md +2 -3
- package/.claude/agents/midas-coach.md +3 -4
- package/.claude/settings.json +0 -1
- package/.claude/skills/plan-idea/SKILL.md +3 -6
- package/.claude/skills/plan-research/SKILL.md +1 -1
- package/README.md +3 -3
- package/dist/.claude/PLUGIN.md +2 -3
- package/dist/.claude/agents/midas-coach.md +3 -4
- package/dist/.claude/settings.json +0 -1
- package/dist/.claude/skills/plan-idea/SKILL.md +3 -6
- package/dist/.claude/skills/plan-research/SKILL.md +1 -1
- package/dist/docs/CHEATSHEET.md +1 -1
- package/dist/docs/CURSORRULES_TEMPLATE.md +0 -1
- package/dist/docs/METHODOLOGY.md +2 -25
- package/dist/docs/SPEC.md +2 -6
- package/dist/docs/USER_RULES.md +1 -1
- package/dist/docs/WHY.md +1 -7
- package/dist/docs/index.html +2 -2
- package/dist/pilot.d.ts.map +1 -1
- package/dist/pilot.js +150 -28
- package/dist/pilot.js.map +1 -1
- package/docs/CHEATSHEET.md +1 -1
- package/docs/CURSORRULES_TEMPLATE.md +0 -1
- package/docs/METHODOLOGY.md +2 -25
- package/docs/SPEC.md +2 -6
- package/docs/USER_RULES.md +1 -1
- package/docs/WHY.md +1 -7
- package/docs/index.html +2 -2
- package/package.json +1 -1
- package/.claude/skills/plan-brainlift/SKILL.md +0 -65
- package/docs/brainlift.md +0 -17
- package/docs/examples/brainlift-example.md +0 -87
package/.claude/PLUGIN.md
CHANGED
|
@@ -20,7 +20,6 @@ Phase-specific prompts that auto-trigger based on context:
|
|
|
20
20
|
|-------|-------------|---------|
|
|
21
21
|
| `plan-idea` | "new project", "start project" | Define problem and audience |
|
|
22
22
|
| `plan-research` | "research alternatives" | Scan existing solutions |
|
|
23
|
-
| `plan-brainlift` | "create brainlift" | Document unique insights |
|
|
24
23
|
| `plan-prd` | "define requirements" | Specify requirements |
|
|
25
24
|
| `plan-gameplan` | "break down tasks" | Sequence the work |
|
|
26
25
|
| `build-rules` | "start building" | Set up conventions |
|
|
@@ -85,8 +84,8 @@ PLAN → BUILD → SHIP → GROW
|
|
|
85
84
|
▼ ▼ ▼ ▼
|
|
86
85
|
Idea Rules Review Feedback
|
|
87
86
|
Research Index Deploy Analyze
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
PRD Read Monitor Iterate
|
|
88
|
+
Gameplan Research
|
|
90
89
|
Gameplan Implement
|
|
91
90
|
Test
|
|
92
91
|
Debug
|
|
@@ -29,10 +29,9 @@ PLAN → BUILD → SHIP → GROW
|
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
### PLAN Phase
|
|
32
|
-
Steps: IDEA → RESEARCH →
|
|
32
|
+
Steps: IDEA → RESEARCH → PRD → GAMEPLAN
|
|
33
33
|
|
|
34
34
|
**Artifacts that indicate completion:**
|
|
35
|
-
- BRAINLIFT done: `docs/brainlift.md` exists with Problem, Audience, Why Now sections
|
|
36
35
|
- PRD done: `docs/prd.md` exists with Goals, Non-Goals, Requirements
|
|
37
36
|
- GAMEPLAN done: `docs/gameplan.md` exists with ordered tasks
|
|
38
37
|
|
|
@@ -69,7 +68,7 @@ Step: DONE
|
|
|
69
68
|
```
|
|
70
69
|
|
|
71
70
|
2. **Check Relevant Artifacts**
|
|
72
|
-
- PLAN: Check docs/ folder for
|
|
71
|
+
- PLAN: Check docs/ folder for prd, gameplan
|
|
73
72
|
- BUILD: Check for .cursorrules, run npm test
|
|
74
73
|
- SHIP: Check git status, version, CI status
|
|
75
74
|
|
|
@@ -89,7 +88,7 @@ Step: DONE
|
|
|
89
88
|
- **Gates must pass** - broken builds block everything
|
|
90
89
|
- **One task at a time** - focus over multitasking
|
|
91
90
|
- **Commit often** - checkpoints enable rollback
|
|
92
|
-
- **Ask for context** -
|
|
91
|
+
- **Ask for context** - PRD captures domain knowledge
|
|
93
92
|
|
|
94
93
|
## When User is Stuck
|
|
95
94
|
|
package/.claude/settings.json
CHANGED
|
@@ -24,10 +24,10 @@ Most projects fail from solving the wrong problem. 10 minutes clarifying saves d
|
|
|
24
24
|
|
|
25
25
|
## Output
|
|
26
26
|
|
|
27
|
-
Create or update `docs/
|
|
27
|
+
Create or update `docs/prd.md` with an initial section capturing the idea:
|
|
28
28
|
|
|
29
29
|
```markdown
|
|
30
|
-
#
|
|
30
|
+
# PRD
|
|
31
31
|
|
|
32
32
|
## Problem
|
|
33
33
|
[One paragraph describing the pain point]
|
|
@@ -37,14 +37,11 @@ Create or update `docs/brainlift.md` with:
|
|
|
37
37
|
|
|
38
38
|
## Why Now
|
|
39
39
|
[What changed that makes this timely]
|
|
40
|
-
|
|
41
|
-
## Unique Context
|
|
42
|
-
[What you know that others don't - your edge]
|
|
43
40
|
```
|
|
44
41
|
|
|
45
42
|
## Next Step
|
|
46
43
|
|
|
47
|
-
Once
|
|
44
|
+
Once the idea is captured, advance to PLAN:RESEARCH.
|
|
48
45
|
|
|
49
46
|
---
|
|
50
47
|
|
package/README.md
CHANGED
|
@@ -101,7 +101,7 @@ Midas tracks your current phase and guides you through:
|
|
|
101
101
|
|
|
102
102
|
**Phase 1: Plan (Pre-Build)**
|
|
103
103
|
```
|
|
104
|
-
💡 Idea → 🔍 Research →
|
|
104
|
+
💡 Idea → 🔍 Research → 📋 PRD → 🗺️ Gameplan
|
|
105
105
|
```
|
|
106
106
|
|
|
107
107
|
**Phase 2: Build (7-Step Process)**
|
|
@@ -118,7 +118,7 @@ Midas tracks your current phase and guides you through:
|
|
|
118
118
|
| `midas_get_phase` | Get current phase and recommended next steps |
|
|
119
119
|
| `midas_set_phase` | Move to a specific phase |
|
|
120
120
|
| `midas_audit` | Score project against 12 ingredients |
|
|
121
|
-
| `midas_check_docs` | Verify
|
|
121
|
+
| `midas_check_docs` | Verify prd/gameplan completeness |
|
|
122
122
|
| `midas_oneshot` | Apply the Oneshot Paradigm for error recovery |
|
|
123
123
|
| `midas_tornado` | Trigger Research + Logs + Tests cycle |
|
|
124
124
|
| `midas_horizon` | Expand horizontal context for better output |
|
|
@@ -179,7 +179,7 @@ Wrong output? Widen your horizontal context.
|
|
|
179
179
|
User: "I want to build a task management app"
|
|
180
180
|
|
|
181
181
|
Midas: Initiates Plan phase, creates docs folder,
|
|
182
|
-
guides through
|
|
182
|
+
guides through PRD → Gameplan
|
|
183
183
|
```
|
|
184
184
|
|
|
185
185
|
### When Stuck on a Bug
|
package/dist/.claude/PLUGIN.md
CHANGED
|
@@ -20,7 +20,6 @@ Phase-specific prompts that auto-trigger based on context:
|
|
|
20
20
|
|-------|-------------|---------|
|
|
21
21
|
| `plan-idea` | "new project", "start project" | Define problem and audience |
|
|
22
22
|
| `plan-research` | "research alternatives" | Scan existing solutions |
|
|
23
|
-
| `plan-brainlift` | "create brainlift" | Document unique insights |
|
|
24
23
|
| `plan-prd` | "define requirements" | Specify requirements |
|
|
25
24
|
| `plan-gameplan` | "break down tasks" | Sequence the work |
|
|
26
25
|
| `build-rules` | "start building" | Set up conventions |
|
|
@@ -85,8 +84,8 @@ PLAN → BUILD → SHIP → GROW
|
|
|
85
84
|
▼ ▼ ▼ ▼
|
|
86
85
|
Idea Rules Review Feedback
|
|
87
86
|
Research Index Deploy Analyze
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
PRD Read Monitor Iterate
|
|
88
|
+
Gameplan Research
|
|
90
89
|
Gameplan Implement
|
|
91
90
|
Test
|
|
92
91
|
Debug
|
|
@@ -29,10 +29,9 @@ PLAN → BUILD → SHIP → GROW
|
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
### PLAN Phase
|
|
32
|
-
Steps: IDEA → RESEARCH →
|
|
32
|
+
Steps: IDEA → RESEARCH → PRD → GAMEPLAN
|
|
33
33
|
|
|
34
34
|
**Artifacts that indicate completion:**
|
|
35
|
-
- BRAINLIFT done: `docs/brainlift.md` exists with Problem, Audience, Why Now sections
|
|
36
35
|
- PRD done: `docs/prd.md` exists with Goals, Non-Goals, Requirements
|
|
37
36
|
- GAMEPLAN done: `docs/gameplan.md` exists with ordered tasks
|
|
38
37
|
|
|
@@ -69,7 +68,7 @@ Step: DONE
|
|
|
69
68
|
```
|
|
70
69
|
|
|
71
70
|
2. **Check Relevant Artifacts**
|
|
72
|
-
- PLAN: Check docs/ folder for
|
|
71
|
+
- PLAN: Check docs/ folder for prd, gameplan
|
|
73
72
|
- BUILD: Check for .cursorrules, run npm test
|
|
74
73
|
- SHIP: Check git status, version, CI status
|
|
75
74
|
|
|
@@ -89,7 +88,7 @@ Step: DONE
|
|
|
89
88
|
- **Gates must pass** - broken builds block everything
|
|
90
89
|
- **One task at a time** - focus over multitasking
|
|
91
90
|
- **Commit often** - checkpoints enable rollback
|
|
92
|
-
- **Ask for context** -
|
|
91
|
+
- **Ask for context** - PRD captures domain knowledge
|
|
93
92
|
|
|
94
93
|
## When User is Stuck
|
|
95
94
|
|
|
@@ -24,10 +24,10 @@ Most projects fail from solving the wrong problem. 10 minutes clarifying saves d
|
|
|
24
24
|
|
|
25
25
|
## Output
|
|
26
26
|
|
|
27
|
-
Create or update `docs/
|
|
27
|
+
Create or update `docs/prd.md` with an initial section capturing the idea:
|
|
28
28
|
|
|
29
29
|
```markdown
|
|
30
|
-
#
|
|
30
|
+
# PRD
|
|
31
31
|
|
|
32
32
|
## Problem
|
|
33
33
|
[One paragraph describing the pain point]
|
|
@@ -37,14 +37,11 @@ Create or update `docs/brainlift.md` with:
|
|
|
37
37
|
|
|
38
38
|
## Why Now
|
|
39
39
|
[What changed that makes this timely]
|
|
40
|
-
|
|
41
|
-
## Unique Context
|
|
42
|
-
[What you know that others don't - your edge]
|
|
43
40
|
```
|
|
44
41
|
|
|
45
42
|
## Next Step
|
|
46
43
|
|
|
47
|
-
Once
|
|
44
|
+
Once the idea is captured, advance to PLAN:RESEARCH.
|
|
48
45
|
|
|
49
46
|
---
|
|
50
47
|
|
package/dist/docs/CHEATSHEET.md
CHANGED
|
@@ -34,7 +34,6 @@ Always complete earlier steps before jumping to implementation.
|
|
|
34
34
|
### PLAN (Planning)
|
|
35
35
|
- IDEA: Define core idea, problem, audience
|
|
36
36
|
- RESEARCH: Landscape scan, competitors
|
|
37
|
-
- BRAINLIFT: Document unique insights
|
|
38
37
|
- PRD: Write requirements
|
|
39
38
|
- GAMEPLAN: Plan the build
|
|
40
39
|
|
package/dist/docs/METHODOLOGY.md
CHANGED
|
@@ -17,40 +17,17 @@ The complete methodology that Midas teaches and enforces.
|
|
|
17
17
|
### Phase 1: Plan (Pre-Build)
|
|
18
18
|
|
|
19
19
|
```
|
|
20
|
-
💡 IDEA → 🔍 RESEARCH →
|
|
20
|
+
💡 IDEA → 🔍 RESEARCH → 📋 PRD → 🗺️ GAMEPLAN → ⚡ BUILD
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
| Step | What It Is | Time |
|
|
24
24
|
|------|------------|------|
|
|
25
25
|
| 💡 Idea | The spark — what and why | 5 min |
|
|
26
26
|
| 🔍 Research | Landscape scan — what exists | 30-60 min |
|
|
27
|
-
| 🧠 Brainlift | Your edge — what AI doesn't know | 15-30 min |
|
|
28
27
|
| 📋 PRD | Requirements — what exactly to build | 30-60 min |
|
|
29
28
|
| 🗺️ Gameplan | Strategy — how to build it | 15-30 min |
|
|
30
29
|
|
|
31
|
-
**Total: 2
|
|
32
|
-
|
|
33
|
-
#### Brainlift Template
|
|
34
|
-
|
|
35
|
-
```markdown
|
|
36
|
-
# Brainlift
|
|
37
|
-
|
|
38
|
-
## Contrarian Insights
|
|
39
|
-
- [What do YOU know that contradicts conventional wisdom?]
|
|
40
|
-
- [What have you learned from experience that AI can't know?]
|
|
41
|
-
|
|
42
|
-
## Domain Knowledge
|
|
43
|
-
- [Industry-specific context]
|
|
44
|
-
- [User behavior patterns you've observed]
|
|
45
|
-
|
|
46
|
-
## Hard-Won Lessons
|
|
47
|
-
- [What NOT to do based on past experience]
|
|
48
|
-
- [Hidden gotchas in this space]
|
|
49
|
-
|
|
50
|
-
## Current Context
|
|
51
|
-
- [Recent market changes]
|
|
52
|
-
- [Technology updates post-training-cutoff]
|
|
53
|
-
```
|
|
30
|
+
**Total: 1.5-2.5 hours** → Saves 20-40 hours of confused building
|
|
54
31
|
|
|
55
32
|
#### PRD Template
|
|
56
33
|
|
package/dist/docs/SPEC.md
CHANGED
|
@@ -51,7 +51,6 @@ midas-mcp/
|
|
|
51
51
|
type PlanStep =
|
|
52
52
|
| 'IDEA'
|
|
53
53
|
| 'RESEARCH'
|
|
54
|
-
| 'BRAINLIFT'
|
|
55
54
|
| 'PRD'
|
|
56
55
|
| 'GAMEPLAN';
|
|
57
56
|
|
|
@@ -75,7 +74,6 @@ interface PhaseState {
|
|
|
75
74
|
history: Phase[];
|
|
76
75
|
startedAt: string;
|
|
77
76
|
docs: {
|
|
78
|
-
brainlift: boolean;
|
|
79
77
|
prd: boolean;
|
|
80
78
|
gameplan: boolean;
|
|
81
79
|
};
|
|
@@ -100,9 +98,8 @@ Initializes a new project with Plan.
|
|
|
100
98
|
|
|
101
99
|
**Behavior:**
|
|
102
100
|
1. Creates `docs/` folder
|
|
103
|
-
2. Creates `docs/
|
|
104
|
-
3. Creates `docs/
|
|
105
|
-
4. Creates `docs/gameplan.md` with template
|
|
101
|
+
2. Creates `docs/prd.md` with template
|
|
102
|
+
3. Creates `docs/gameplan.md` with template
|
|
106
103
|
5. Sets phase to `PLAN.IDEA`
|
|
107
104
|
6. Returns guidance for next step
|
|
108
105
|
|
|
@@ -182,7 +179,6 @@ Verify Plan docs exist and are complete.
|
|
|
182
179
|
**Output:**
|
|
183
180
|
```typescript
|
|
184
181
|
{
|
|
185
|
-
brainlift: { exists: boolean; complete: boolean; issues: string[] };
|
|
186
182
|
prd: { exists: boolean; complete: boolean; issues: string[] };
|
|
187
183
|
gameplan: { exists: boolean; complete: boolean; issues: string[] };
|
|
188
184
|
ready: boolean;
|
package/dist/docs/USER_RULES.md
CHANGED
|
@@ -38,7 +38,7 @@ RULES → INDEX → READ → RESEARCH → IMPLEMENT → TEST → DEBUG
|
|
|
38
38
|
Always complete earlier steps before jumping to implementation.
|
|
39
39
|
|
|
40
40
|
## The 4 Phases:
|
|
41
|
-
1. PLAN: Plan before coding (
|
|
41
|
+
1. PLAN: Plan before coding (PRD, gameplan)
|
|
42
42
|
2. BUILD: The 7-step cycle above
|
|
43
43
|
3. SHIP: Review, deploy, monitor
|
|
44
44
|
4. GROW: Feedback, analyze, iterate back to PLAN
|
package/dist/docs/WHY.md
CHANGED
|
@@ -20,12 +20,6 @@ Whatever you're building, someone has probably solved 80% of it already. Librari
|
|
|
20
20
|
|
|
21
21
|
*Skip this and you'll build from scratch what exists in a npm package.*
|
|
22
22
|
|
|
23
|
-
### BRAINLIFT
|
|
24
|
-
**Why document your edge?**
|
|
25
|
-
AI has read the entire internet. You have something it doesn't: your specific context, your domain expertise, your edge cases. The brainlift captures what makes YOUR project different from the generic solution.
|
|
26
|
-
|
|
27
|
-
*Skip this and the AI will give you generic Stack Overflow answers.*
|
|
28
|
-
|
|
29
23
|
### PRD
|
|
30
24
|
**Why define requirements formally?**
|
|
31
25
|
"I'll know it when I see it" is the enemy of shipping. A PRD creates a contract with yourself: these features, these constraints, this scope. It's the difference between "done" and "endless tweaking."
|
|
@@ -148,7 +142,7 @@ Unbounded work never ships. Defining the next iteration's scope—hypothesis, su
|
|
|
148
142
|
|
|
149
143
|
### LOOP
|
|
150
144
|
**Why return to PLAN with context?**
|
|
151
|
-
Each cycle teaches you something. Carrying that context forward means version 2 builds on version 1's lessons. The
|
|
145
|
+
Each cycle teaches you something. Carrying that context forward means version 2 builds on version 1's lessons. The PRD evolves. The gameplan improves.
|
|
152
146
|
|
|
153
147
|
*Skip this and every version starts from zero knowledge.*
|
|
154
148
|
|
package/dist/docs/index.html
CHANGED
|
@@ -875,7 +875,7 @@
|
|
|
875
875
|
<div class="feature">
|
|
876
876
|
<p class="feature-number">01</p>
|
|
877
877
|
<h4>Plan First</h4>
|
|
878
|
-
<p>
|
|
878
|
+
<p>PRD / Gameplan</p>
|
|
879
879
|
</div>
|
|
880
880
|
<div class="feature">
|
|
881
881
|
<p class="feature-number">02</p>
|
|
@@ -918,7 +918,7 @@
|
|
|
918
918
|
<div class="lifecycle-phases">
|
|
919
919
|
<div class="phase">
|
|
920
920
|
<span class="phase-name">Plan</span>
|
|
921
|
-
<span class="phase-steps">IDEA / RESEARCH /
|
|
921
|
+
<span class="phase-steps">IDEA / RESEARCH / PRD / GAMEPLAN</span>
|
|
922
922
|
</div>
|
|
923
923
|
<div class="phase-arrow"></div>
|
|
924
924
|
<div class="phase">
|
package/dist/pilot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pilot.d.ts","sourceRoot":"","sources":["../src/pilot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAyCH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;IAC9C,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BtB,CAAC;AAEX,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiBD;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,EACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,GACrD,OAAO,CAAC,eAAe,CAAC,CA4E1B;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAChC,OAAO,CAAC,eAAe,CAAC,CAU1B;AAMD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,YAAY,CAAC;IAC9B,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAChC,OAAO,CAAC,eAAe,CAAC,CA6C1B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,CAAC,CAW1B;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AA2JD;;GAEG;AACH,wBAAsB,aAAa,CAAC,YAAY,SAAO,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"pilot.d.ts","sourceRoot":"","sources":["../src/pilot.ts"],"names":[],"mappings":"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"}
|
package/dist/pilot.js
CHANGED
|
@@ -15,7 +15,7 @@ import { isAuthenticated, getAuthenticatedUser, loadAuth } from './auth.js';
|
|
|
15
15
|
import { sanitizePath } from './security.js';
|
|
16
16
|
import { fetchPendingCommands, markCommandRunning, markCommandCompleted, getProjectById, syncProject } from './cloud.js';
|
|
17
17
|
import { getSmartPromptSuggestion, getGatesStatus } from './tracker.js';
|
|
18
|
-
import { loadState, PHASE_INFO } from './state/phase.js';
|
|
18
|
+
import { loadState, setPhase, PHASE_INFO } from './state/phase.js';
|
|
19
19
|
import { getGameplanProgress } from './gameplan-tracker.js';
|
|
20
20
|
import { analyzeProjectStreaming } from './analyzer.js';
|
|
21
21
|
// QR code removed - dashboard handles remote control now
|
|
@@ -487,6 +487,33 @@ export async function runRemoteMode(pollInterval = 3000) {
|
|
|
487
487
|
catch (err) {
|
|
488
488
|
clearInterval(progressInterval);
|
|
489
489
|
}
|
|
490
|
+
// Auto-advance: if AI detected a different phase, update the state file
|
|
491
|
+
// This ensures the state file matches reality instead of staying stale
|
|
492
|
+
if (analysis?.currentPhase) {
|
|
493
|
+
const currentState = loadState(projectPath);
|
|
494
|
+
const aiPhase = analysis.currentPhase;
|
|
495
|
+
const statePhase = currentState.current;
|
|
496
|
+
// Only advance forward, never go backward
|
|
497
|
+
const phaseOrder = ['IDLE', 'PLAN', 'BUILD', 'SHIP', 'GROW'];
|
|
498
|
+
const aiIdx = phaseOrder.indexOf(aiPhase.phase);
|
|
499
|
+
const stateIdx = phaseOrder.indexOf(statePhase.phase);
|
|
500
|
+
if (aiIdx > stateIdx) {
|
|
501
|
+
// AI detected we're further along - update state
|
|
502
|
+
setPhase(projectPath, aiPhase);
|
|
503
|
+
}
|
|
504
|
+
else if (aiIdx === stateIdx && aiPhase.phase !== 'IDLE' && 'step' in aiPhase && 'step' in statePhase) {
|
|
505
|
+
// Same phase but different step - check if AI step is further
|
|
506
|
+
const phaseInfo = PHASE_INFO[aiPhase.phase];
|
|
507
|
+
if (phaseInfo) {
|
|
508
|
+
const steps = Object.keys(phaseInfo.steps);
|
|
509
|
+
const aiStepIdx = steps.indexOf(aiPhase.step);
|
|
510
|
+
const stateStepIdx = steps.indexOf(statePhase.step);
|
|
511
|
+
if (aiStepIdx > stateStepIdx) {
|
|
512
|
+
setPhase(projectPath, aiPhase);
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
}
|
|
490
517
|
// Load supplementary state
|
|
491
518
|
const gatesStatus = getGatesStatus(projectPath);
|
|
492
519
|
const gameplan = getGameplanProgress(projectPath);
|
|
@@ -579,11 +606,10 @@ export async function runRemoteMode(pollInterval = 3000) {
|
|
|
579
606
|
}
|
|
580
607
|
out.push(tuiRow(` ${gold}└${'─'.repeat(I - 6)}┘${reset}`));
|
|
581
608
|
out.push(tuiEmpty());
|
|
582
|
-
//
|
|
609
|
+
// Menu bar with keyboard shortcuts
|
|
583
610
|
out.push(` ${cyan}╠${TUI_HLINE}╣${reset}`);
|
|
584
|
-
out.push(tuiRow(`${
|
|
611
|
+
out.push(tuiRow(`${bold}[a]${reset} Accept ${bold}[s]${reset} Skip ${bold}[c]${reset} Copy ${bold}[m]${reset} Auto ${bold}[q]${reset} Quit`));
|
|
585
612
|
out.push(tuiRow(`${dim}Dashboard: ${cyan}dashboard.midasmcp.com${reset}`));
|
|
586
|
-
out.push(tuiRow(`${dim}Ctrl+C to stop${reset}`));
|
|
587
613
|
out.push(` ${cyan}╚${TUI_HLINE}╝${reset}`);
|
|
588
614
|
process.stdout.write(out.join('\n') + '\n');
|
|
589
615
|
};
|
|
@@ -615,7 +641,100 @@ export async function runRemoteMode(pollInterval = 3000) {
|
|
|
615
641
|
});
|
|
616
642
|
// Update status to connected
|
|
617
643
|
await updateRemoteSession(session.sessionId, { status: 'connected' });
|
|
618
|
-
//
|
|
644
|
+
// =========================================================================
|
|
645
|
+
// KEYBOARD INPUT - raw mode for single-key presses
|
|
646
|
+
// =========================================================================
|
|
647
|
+
let autoMode = false;
|
|
648
|
+
let isExecuting = false;
|
|
649
|
+
// Copy to clipboard helper
|
|
650
|
+
const copyToClipboard = (text) => {
|
|
651
|
+
return new Promise((resolve, reject) => {
|
|
652
|
+
const { exec: execCb } = require('child_process');
|
|
653
|
+
const proc = execCb('pbcopy', (err) => {
|
|
654
|
+
if (err)
|
|
655
|
+
reject(err);
|
|
656
|
+
else
|
|
657
|
+
resolve();
|
|
658
|
+
});
|
|
659
|
+
proc.stdin?.write(text);
|
|
660
|
+
proc.stdin?.end();
|
|
661
|
+
});
|
|
662
|
+
};
|
|
663
|
+
// Accept the current suggestion - execute directly via Claude Code
|
|
664
|
+
const acceptSuggestion = async () => {
|
|
665
|
+
if (isExecuting || !suggestedPrompt)
|
|
666
|
+
return;
|
|
667
|
+
isExecuting = true;
|
|
668
|
+
const prompt = suggestedPrompt;
|
|
669
|
+
await updateRemoteSession(session.sessionId, {
|
|
670
|
+
status: 'running',
|
|
671
|
+
current_task: prompt.slice(0, 100),
|
|
672
|
+
});
|
|
673
|
+
renderExecutionBox(prompt, 'starting', '');
|
|
674
|
+
const result = await executeClaudeCode(prompt, {
|
|
675
|
+
projectPath,
|
|
676
|
+
}, (_chunk, fullOutput) => {
|
|
677
|
+
renderExecutionBox(prompt, 'running', fullOutput);
|
|
678
|
+
updateRemoteSession(session.sessionId, {
|
|
679
|
+
last_output: fullOutput.slice(-5000),
|
|
680
|
+
output_lines: fullOutput.split('\n').length,
|
|
681
|
+
}).catch(() => { });
|
|
682
|
+
});
|
|
683
|
+
renderExecutionBox(prompt, result.success ? 'done' : 'failed', result.output);
|
|
684
|
+
await new Promise(resolve => setTimeout(resolve, 3000));
|
|
685
|
+
await updateRemoteSession(session.sessionId, {
|
|
686
|
+
status: 'idle',
|
|
687
|
+
current_task: undefined,
|
|
688
|
+
});
|
|
689
|
+
isExecuting = false;
|
|
690
|
+
renderReadyScreen();
|
|
691
|
+
};
|
|
692
|
+
if (process.stdin.isTTY) {
|
|
693
|
+
process.stdin.setRawMode(true);
|
|
694
|
+
}
|
|
695
|
+
process.stdin.resume();
|
|
696
|
+
process.stdin.setEncoding('utf8');
|
|
697
|
+
process.stdin.on('data', async (key) => {
|
|
698
|
+
if (isExecuting)
|
|
699
|
+
return; // Ignore keys during execution
|
|
700
|
+
if (key === 'q' || key === '\u0003') { // q or Ctrl+C
|
|
701
|
+
await cleanup('quit');
|
|
702
|
+
return;
|
|
703
|
+
}
|
|
704
|
+
if (key === 'a' || key === '\r' || key === '\n') { // a or Enter = accept
|
|
705
|
+
await acceptSuggestion();
|
|
706
|
+
return;
|
|
707
|
+
}
|
|
708
|
+
if (key === 'c') { // copy prompt to clipboard
|
|
709
|
+
if (suggestedPrompt) {
|
|
710
|
+
try {
|
|
711
|
+
await copyToClipboard(suggestedPrompt);
|
|
712
|
+
// Quick flash message
|
|
713
|
+
process.stdout.write(`\x1b[2J\x1b[H`);
|
|
714
|
+
renderReadyScreen();
|
|
715
|
+
}
|
|
716
|
+
catch { /* ignore */ }
|
|
717
|
+
}
|
|
718
|
+
return;
|
|
719
|
+
}
|
|
720
|
+
if (key === 's' || key === 'x') { // skip/reject
|
|
721
|
+
// Re-analyze to get a new suggestion
|
|
722
|
+
renderReadyScreen();
|
|
723
|
+
return;
|
|
724
|
+
}
|
|
725
|
+
if (key === 'm') { // toggle auto mode
|
|
726
|
+
autoMode = !autoMode;
|
|
727
|
+
renderReadyScreen();
|
|
728
|
+
return;
|
|
729
|
+
}
|
|
730
|
+
if (key === 'r') { // re-analyze
|
|
731
|
+
renderReadyScreen();
|
|
732
|
+
return;
|
|
733
|
+
}
|
|
734
|
+
});
|
|
735
|
+
// =========================================================================
|
|
736
|
+
// MAIN LOOP - poll for commands + heartbeat
|
|
737
|
+
// =========================================================================
|
|
619
738
|
let lastHeartbeat = Date.now();
|
|
620
739
|
while (running) {
|
|
621
740
|
try {
|
|
@@ -629,31 +748,34 @@ export async function runRemoteMode(pollInterval = 3000) {
|
|
|
629
748
|
await updateRemoteSession(session.sessionId, { status: 'idle' });
|
|
630
749
|
lastHeartbeat = Date.now();
|
|
631
750
|
}
|
|
632
|
-
//
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
751
|
+
// Auto mode: accept suggestion automatically
|
|
752
|
+
if (autoMode && suggestedPrompt && !isExecuting) {
|
|
753
|
+
await acceptSuggestion();
|
|
754
|
+
}
|
|
755
|
+
// Poll for commands from dashboard
|
|
756
|
+
if (!isExecuting) {
|
|
757
|
+
const commands = await fetchPendingCommands();
|
|
758
|
+
if (commands.length > 0) {
|
|
759
|
+
const command = commands[0];
|
|
760
|
+
isExecuting = true;
|
|
761
|
+
await updateRemoteSession(session.sessionId, {
|
|
762
|
+
status: 'running',
|
|
763
|
+
current_task: command.prompt.slice(0, 100),
|
|
764
|
+
});
|
|
765
|
+
renderExecutionBox(command.prompt, 'starting', '');
|
|
766
|
+
await executeCommandWithUpdates(command, session.sessionId, (output) => {
|
|
767
|
+
renderExecutionBox(command.prompt, 'running', output);
|
|
768
|
+
});
|
|
769
|
+
isExecuting = false;
|
|
770
|
+
renderReadyScreen();
|
|
771
|
+
await updateRemoteSession(session.sessionId, {
|
|
772
|
+
status: 'idle',
|
|
773
|
+
current_task: undefined,
|
|
774
|
+
});
|
|
775
|
+
}
|
|
654
776
|
}
|
|
655
777
|
}
|
|
656
|
-
catch
|
|
778
|
+
catch {
|
|
657
779
|
// Network error, continue
|
|
658
780
|
}
|
|
659
781
|
await new Promise(resolve => setTimeout(resolve, pollInterval));
|
package/dist/pilot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pilot.js","sourceRoot":"","sources":["../src/pilot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pilot.js","sourceRoot":"","sources":["../src/pilot.ts"],"names":[],"mappings":"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"}
|
package/docs/CHEATSHEET.md
CHANGED
|
@@ -34,7 +34,6 @@ Always complete earlier steps before jumping to implementation.
|
|
|
34
34
|
### PLAN (Planning)
|
|
35
35
|
- IDEA: Define core idea, problem, audience
|
|
36
36
|
- RESEARCH: Landscape scan, competitors
|
|
37
|
-
- BRAINLIFT: Document unique insights
|
|
38
37
|
- PRD: Write requirements
|
|
39
38
|
- GAMEPLAN: Plan the build
|
|
40
39
|
|
package/docs/METHODOLOGY.md
CHANGED
|
@@ -17,40 +17,17 @@ The complete methodology that Midas teaches and enforces.
|
|
|
17
17
|
### Phase 1: Plan (Pre-Build)
|
|
18
18
|
|
|
19
19
|
```
|
|
20
|
-
💡 IDEA → 🔍 RESEARCH →
|
|
20
|
+
💡 IDEA → 🔍 RESEARCH → 📋 PRD → 🗺️ GAMEPLAN → ⚡ BUILD
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
| Step | What It Is | Time |
|
|
24
24
|
|------|------------|------|
|
|
25
25
|
| 💡 Idea | The spark — what and why | 5 min |
|
|
26
26
|
| 🔍 Research | Landscape scan — what exists | 30-60 min |
|
|
27
|
-
| 🧠 Brainlift | Your edge — what AI doesn't know | 15-30 min |
|
|
28
27
|
| 📋 PRD | Requirements — what exactly to build | 30-60 min |
|
|
29
28
|
| 🗺️ Gameplan | Strategy — how to build it | 15-30 min |
|
|
30
29
|
|
|
31
|
-
**Total: 2
|
|
32
|
-
|
|
33
|
-
#### Brainlift Template
|
|
34
|
-
|
|
35
|
-
```markdown
|
|
36
|
-
# Brainlift
|
|
37
|
-
|
|
38
|
-
## Contrarian Insights
|
|
39
|
-
- [What do YOU know that contradicts conventional wisdom?]
|
|
40
|
-
- [What have you learned from experience that AI can't know?]
|
|
41
|
-
|
|
42
|
-
## Domain Knowledge
|
|
43
|
-
- [Industry-specific context]
|
|
44
|
-
- [User behavior patterns you've observed]
|
|
45
|
-
|
|
46
|
-
## Hard-Won Lessons
|
|
47
|
-
- [What NOT to do based on past experience]
|
|
48
|
-
- [Hidden gotchas in this space]
|
|
49
|
-
|
|
50
|
-
## Current Context
|
|
51
|
-
- [Recent market changes]
|
|
52
|
-
- [Technology updates post-training-cutoff]
|
|
53
|
-
```
|
|
30
|
+
**Total: 1.5-2.5 hours** → Saves 20-40 hours of confused building
|
|
54
31
|
|
|
55
32
|
#### PRD Template
|
|
56
33
|
|
package/docs/SPEC.md
CHANGED
|
@@ -51,7 +51,6 @@ midas-mcp/
|
|
|
51
51
|
type PlanStep =
|
|
52
52
|
| 'IDEA'
|
|
53
53
|
| 'RESEARCH'
|
|
54
|
-
| 'BRAINLIFT'
|
|
55
54
|
| 'PRD'
|
|
56
55
|
| 'GAMEPLAN';
|
|
57
56
|
|
|
@@ -75,7 +74,6 @@ interface PhaseState {
|
|
|
75
74
|
history: Phase[];
|
|
76
75
|
startedAt: string;
|
|
77
76
|
docs: {
|
|
78
|
-
brainlift: boolean;
|
|
79
77
|
prd: boolean;
|
|
80
78
|
gameplan: boolean;
|
|
81
79
|
};
|
|
@@ -100,9 +98,8 @@ Initializes a new project with Plan.
|
|
|
100
98
|
|
|
101
99
|
**Behavior:**
|
|
102
100
|
1. Creates `docs/` folder
|
|
103
|
-
2. Creates `docs/
|
|
104
|
-
3. Creates `docs/
|
|
105
|
-
4. Creates `docs/gameplan.md` with template
|
|
101
|
+
2. Creates `docs/prd.md` with template
|
|
102
|
+
3. Creates `docs/gameplan.md` with template
|
|
106
103
|
5. Sets phase to `PLAN.IDEA`
|
|
107
104
|
6. Returns guidance for next step
|
|
108
105
|
|
|
@@ -182,7 +179,6 @@ Verify Plan docs exist and are complete.
|
|
|
182
179
|
**Output:**
|
|
183
180
|
```typescript
|
|
184
181
|
{
|
|
185
|
-
brainlift: { exists: boolean; complete: boolean; issues: string[] };
|
|
186
182
|
prd: { exists: boolean; complete: boolean; issues: string[] };
|
|
187
183
|
gameplan: { exists: boolean; complete: boolean; issues: string[] };
|
|
188
184
|
ready: boolean;
|
package/docs/USER_RULES.md
CHANGED
|
@@ -38,7 +38,7 @@ RULES → INDEX → READ → RESEARCH → IMPLEMENT → TEST → DEBUG
|
|
|
38
38
|
Always complete earlier steps before jumping to implementation.
|
|
39
39
|
|
|
40
40
|
## The 4 Phases:
|
|
41
|
-
1. PLAN: Plan before coding (
|
|
41
|
+
1. PLAN: Plan before coding (PRD, gameplan)
|
|
42
42
|
2. BUILD: The 7-step cycle above
|
|
43
43
|
3. SHIP: Review, deploy, monitor
|
|
44
44
|
4. GROW: Feedback, analyze, iterate back to PLAN
|
package/docs/WHY.md
CHANGED
|
@@ -20,12 +20,6 @@ Whatever you're building, someone has probably solved 80% of it already. Librari
|
|
|
20
20
|
|
|
21
21
|
*Skip this and you'll build from scratch what exists in a npm package.*
|
|
22
22
|
|
|
23
|
-
### BRAINLIFT
|
|
24
|
-
**Why document your edge?**
|
|
25
|
-
AI has read the entire internet. You have something it doesn't: your specific context, your domain expertise, your edge cases. The brainlift captures what makes YOUR project different from the generic solution.
|
|
26
|
-
|
|
27
|
-
*Skip this and the AI will give you generic Stack Overflow answers.*
|
|
28
|
-
|
|
29
23
|
### PRD
|
|
30
24
|
**Why define requirements formally?**
|
|
31
25
|
"I'll know it when I see it" is the enemy of shipping. A PRD creates a contract with yourself: these features, these constraints, this scope. It's the difference between "done" and "endless tweaking."
|
|
@@ -148,7 +142,7 @@ Unbounded work never ships. Defining the next iteration's scope—hypothesis, su
|
|
|
148
142
|
|
|
149
143
|
### LOOP
|
|
150
144
|
**Why return to PLAN with context?**
|
|
151
|
-
Each cycle teaches you something. Carrying that context forward means version 2 builds on version 1's lessons. The
|
|
145
|
+
Each cycle teaches you something. Carrying that context forward means version 2 builds on version 1's lessons. The PRD evolves. The gameplan improves.
|
|
152
146
|
|
|
153
147
|
*Skip this and every version starts from zero knowledge.*
|
|
154
148
|
|
package/docs/index.html
CHANGED
|
@@ -875,7 +875,7 @@
|
|
|
875
875
|
<div class="feature">
|
|
876
876
|
<p class="feature-number">01</p>
|
|
877
877
|
<h4>Plan First</h4>
|
|
878
|
-
<p>
|
|
878
|
+
<p>PRD / Gameplan</p>
|
|
879
879
|
</div>
|
|
880
880
|
<div class="feature">
|
|
881
881
|
<p class="feature-number">02</p>
|
|
@@ -918,7 +918,7 @@
|
|
|
918
918
|
<div class="lifecycle-phases">
|
|
919
919
|
<div class="phase">
|
|
920
920
|
<span class="phase-name">Plan</span>
|
|
921
|
-
<span class="phase-steps">IDEA / RESEARCH /
|
|
921
|
+
<span class="phase-steps">IDEA / RESEARCH / PRD / GAMEPLAN</span>
|
|
922
922
|
</div>
|
|
923
923
|
<div class="phase-arrow"></div>
|
|
924
924
|
<div class="phase">
|
package/package.json
CHANGED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: plan-brainlift
|
|
3
|
-
description: Document your unique insights and mental models
|
|
4
|
-
auto_trigger:
|
|
5
|
-
- "create brainlift"
|
|
6
|
-
- "document context"
|
|
7
|
-
- "what do I know"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# PLAN: BRAINLIFT Step
|
|
11
|
-
|
|
12
|
-
Extract what YOU know that the AI doesn't. This is your competitive advantage.
|
|
13
|
-
|
|
14
|
-
## What to Do
|
|
15
|
-
|
|
16
|
-
1. **Domain Knowledge**: What do you know about this problem space?
|
|
17
|
-
2. **User Insights**: What have you learned from real users?
|
|
18
|
-
3. **Technical Constraints**: What limitations affect the solution?
|
|
19
|
-
4. **Past Failures**: What approaches have you tried that didn't work?
|
|
20
|
-
5. **Mental Models**: How do you think about this problem?
|
|
21
|
-
|
|
22
|
-
## Why This Matters
|
|
23
|
-
|
|
24
|
-
AI read the internet. You have specific context it doesn't. The brainlift document becomes context for every future AI session, making suggestions more relevant.
|
|
25
|
-
|
|
26
|
-
## Template
|
|
27
|
-
|
|
28
|
-
Create `docs/brainlift.md`:
|
|
29
|
-
|
|
30
|
-
```markdown
|
|
31
|
-
# Brainlift: [Project Name]
|
|
32
|
-
|
|
33
|
-
## Problem Statement
|
|
34
|
-
[Clear, specific description of the problem]
|
|
35
|
-
|
|
36
|
-
## Target User
|
|
37
|
-
[Specific persona - not "developers" but "solo developers building MVPs"]
|
|
38
|
-
|
|
39
|
-
## Why Now
|
|
40
|
-
[What changed - new API, market shift, personal itch]
|
|
41
|
-
|
|
42
|
-
## Domain Knowledge
|
|
43
|
-
[Industry-specific insights, jargon, constraints]
|
|
44
|
-
|
|
45
|
-
## Technical Context
|
|
46
|
-
- Language: [e.g., TypeScript]
|
|
47
|
-
- Environment: [e.g., Node.js, browser, both]
|
|
48
|
-
- Key Dependencies: [e.g., React, Express]
|
|
49
|
-
- Constraints: [e.g., must work offline, <100ms response]
|
|
50
|
-
|
|
51
|
-
## What I Know That Others Don't
|
|
52
|
-
[Your unique insights - THIS IS THE KEY SECTION]
|
|
53
|
-
- [Insight 1]
|
|
54
|
-
- [Insight 2]
|
|
55
|
-
|
|
56
|
-
## Anti-Patterns to Avoid
|
|
57
|
-
[What NOT to do based on your experience]
|
|
58
|
-
|
|
59
|
-
## Success Criteria
|
|
60
|
-
[How will you know this is working?]
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
## Next Step
|
|
64
|
-
|
|
65
|
-
Once brainlift.md is complete, advance to PLAN:PRD to define requirements.
|
package/docs/brainlift.md
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
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]
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
# Brainlift Example: Task Management CLI
|
|
2
|
-
|
|
3
|
-
This is an example brainlift document for a command-line task management tool.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## What I'm Building
|
|
8
|
-
|
|
9
|
-
A CLI tool for developers who manage tasks in the terminal. Think todoist but keyboard-driven, git-like commands, and local-first with optional sync.
|
|
10
|
-
|
|
11
|
-
## The Problem
|
|
12
|
-
|
|
13
|
-
Existing task managers are either:
|
|
14
|
-
- **Too heavy**: Notion, Asana, Jira - overkill for personal todos
|
|
15
|
-
- **Too simple**: iOS reminders, Apple Notes - no filtering, no priority, no due dates
|
|
16
|
-
- **Wrong interface**: Web-based or mobile-first when I live in the terminal
|
|
17
|
-
|
|
18
|
-
I want to type `task add "Fix auth bug" -p high -d tomorrow` without leaving my workflow.
|
|
19
|
-
|
|
20
|
-
## Who It's For
|
|
21
|
-
|
|
22
|
-
Developers who:
|
|
23
|
-
- Already live in the terminal
|
|
24
|
-
- Have tried and abandoned heavyweight project management tools
|
|
25
|
-
- Want keyboard-driven, fast, local-first task management
|
|
26
|
-
- Need basic features (priorities, due dates, tags) without complexity
|
|
27
|
-
|
|
28
|
-
**Not for**: Teams, non-technical users, people who want GUI, or enterprise.
|
|
29
|
-
|
|
30
|
-
## What I Know That AI Doesn't
|
|
31
|
-
|
|
32
|
-
### My workflow context
|
|
33
|
-
I switch between 5-10 projects daily. I need project-scoped task views but also a "today across all projects" view. This isn't obvious from the problem statement.
|
|
34
|
-
|
|
35
|
-
### Implementation constraints
|
|
36
|
-
Must work offline-first. Sync is nice-to-have but not blocking. I travel often without reliable internet.
|
|
37
|
-
|
|
38
|
-
### Prior art that failed for me
|
|
39
|
-
- Taskwarrior: Too complex, syntax is confusing
|
|
40
|
-
- Todo.txt: Too simple, no due date handling
|
|
41
|
-
- GitHub Issues: Wrong tool for personal tasks
|
|
42
|
-
|
|
43
|
-
### Non-obvious requirements
|
|
44
|
-
1. Import from existing task managers (at minimum: CSV)
|
|
45
|
-
2. Must handle recurring tasks (daily standup notes, weekly reviews)
|
|
46
|
-
3. Shell completion is mandatory - I won't use it without tab-complete
|
|
47
|
-
4. Sub-second response time for all operations
|
|
48
|
-
|
|
49
|
-
## Key Decisions Already Made
|
|
50
|
-
|
|
51
|
-
- **Language**: Rust. Fast startup, single binary, easy distribution
|
|
52
|
-
- **Storage**: SQLite. Familiar, portable, handles my scale (thousands of tasks)
|
|
53
|
-
- **Config**: TOML in ~/.config/task/. Standard XDG paths
|
|
54
|
-
- **Output**: Colorized terminal tables, with --json for scripting
|
|
55
|
-
|
|
56
|
-
## Unknowns to Research
|
|
57
|
-
|
|
58
|
-
- Best approach for optional cloud sync without server maintenance
|
|
59
|
-
- How to handle recurring task recurrence rules (RRULE vs simpler?)
|
|
60
|
-
- Whether to support time-based reminders (requires daemon?)
|
|
61
|
-
|
|
62
|
-
## Success Looks Like
|
|
63
|
-
|
|
64
|
-
In 2 weeks:
|
|
65
|
-
- `task add/list/done/edit` working with priorities and due dates
|
|
66
|
-
- Tab completion for zsh/bash/fish
|
|
67
|
-
- Feels faster than opening any web app
|
|
68
|
-
|
|
69
|
-
In 1 month:
|
|
70
|
-
- Recurring tasks
|
|
71
|
-
- Basic filtering (`task list --due today --priority high`)
|
|
72
|
-
- Import from common formats
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Why This Document Matters
|
|
77
|
-
|
|
78
|
-
Without this brainlift:
|
|
79
|
-
- AI would suggest building a React web app (wrong interface)
|
|
80
|
-
- AI wouldn't know about my offline-first constraint
|
|
81
|
-
- AI might over-engineer sync before basics work
|
|
82
|
-
- AI wouldn't understand the "5-10 projects daily" context
|
|
83
|
-
|
|
84
|
-
With this brainlift, AI prompts can be specific:
|
|
85
|
-
- "Create the SQLite schema for tasks with project scoping"
|
|
86
|
-
- "Add --json flag to all output for scripting"
|
|
87
|
-
- "Implement recurring tasks using a simplified RRULE subset"
|