mindforge-cc 2.1.0 → 2.1.2
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/.agent/bin/lib/commands.cjs +959 -0
- package/.agent/bin/lib/config.cjs +421 -0
- package/.agent/bin/lib/core.cjs +1166 -0
- package/.agent/bin/lib/frontmatter.cjs +307 -0
- package/.agent/bin/lib/init.cjs +1336 -0
- package/.agent/bin/lib/milestone.cjs +252 -0
- package/.agent/bin/lib/model-profiles.cjs +68 -0
- package/.agent/bin/lib/phase.cjs +888 -0
- package/.agent/bin/lib/profile-output.cjs +952 -0
- package/.agent/bin/lib/profile-pipeline.cjs +539 -0
- package/.agent/bin/lib/roadmap.cjs +329 -0
- package/.agent/bin/lib/security.cjs +356 -0
- package/.agent/bin/lib/state.cjs +969 -0
- package/.agent/bin/lib/template.cjs +222 -0
- package/.agent/bin/lib/uat.cjs +189 -0
- package/.agent/bin/lib/verify.cjs +851 -0
- package/.agent/bin/lib/workstream.cjs +491 -0
- package/.agent/bin/mindforge-tools.cjs +897 -0
- package/.agent/file-manifest.json +219 -0
- package/.agent/hooks/mindforge-check-update.js +114 -0
- package/.agent/hooks/mindforge-context-monitor.js +156 -0
- package/.agent/hooks/mindforge-prompt-guard.js +96 -0
- package/.agent/hooks/mindforge-statusline.js +119 -0
- package/.agent/hooks/mindforge-workflow-guard.js +94 -0
- package/.agent/mindforge/discuss-phase.md +1 -1
- package/.agent/mindforge/help.md +1 -1
- package/.agent/mindforge/learn.md +3 -2
- package/.agent/mindforge/research.md +3 -2
- package/.agent/mindforge/steer.md +1 -1
- package/.agent/settings.json +38 -0
- package/.agent/skills/mindforge-add-backlog/SKILL.md +72 -0
- package/.agent/skills/mindforge-add-phase/SKILL.md +39 -0
- package/.agent/skills/mindforge-add-tests/SKILL.md +28 -0
- package/.agent/skills/mindforge-add-todo/SKILL.md +42 -0
- package/.agent/skills/mindforge-audit-milestone/SKILL.md +29 -0
- package/.agent/skills/mindforge-audit-uat/SKILL.md +20 -0
- package/.agent/skills/mindforge-autonomous/SKILL.md +33 -0
- package/.agent/skills/mindforge-check-todos/SKILL.md +40 -0
- package/.agent/skills/mindforge-cleanup/SKILL.md +19 -0
- package/.agent/skills/mindforge-complete-milestone/SKILL.md +131 -0
- package/.agent/skills/mindforge-debug/SKILL.md +163 -0
- package/.agent/skills/mindforge-discuss-phase/SKILL.md +54 -0
- package/.agent/skills/mindforge-do/SKILL.md +26 -0
- package/.agent/skills/mindforge-execute-phase/SKILL.md +49 -0
- package/.agent/skills/mindforge-fast/SKILL.md +23 -0
- package/.agent/skills/mindforge-forensics/SKILL.md +49 -0
- package/.agent/skills/mindforge-health/SKILL.md +17 -0
- package/.agent/skills/mindforge-help/SKILL.md +23 -0
- package/.agent/skills/mindforge-insert-phase/SKILL.md +28 -0
- package/.agent/skills/mindforge-join-discord/SKILL.md +19 -0
- package/.agent/skills/mindforge-list-phase-assumptions/SKILL.md +41 -0
- package/.agent/skills/mindforge-list-workspaces/SKILL.md +17 -0
- package/.agent/skills/mindforge-manager/SKILL.md +32 -0
- package/.agent/skills/mindforge-map-codebase/SKILL.md +64 -0
- package/.agent/skills/mindforge-milestone-summary/SKILL.md +44 -0
- package/.agent/skills/mindforge-new-milestone/SKILL.md +38 -0
- package/.agent/skills/mindforge-new-project/SKILL.md +36 -0
- package/.agent/skills/mindforge-new-workspace/SKILL.md +39 -0
- package/.agent/skills/mindforge-next/SKILL.md +19 -0
- package/.agent/skills/mindforge-note/SKILL.md +29 -0
- package/.agent/skills/mindforge-pause-work/SKILL.md +35 -0
- package/.agent/skills/mindforge-plan-milestone-gaps/SKILL.md +28 -0
- package/.agent/skills/mindforge-plan-phase/SKILL.md +37 -0
- package/.agent/skills/mindforge-plant-seed/SKILL.md +22 -0
- package/.agent/skills/mindforge-pr-branch/SKILL.md +21 -0
- package/.agent/skills/mindforge-profile-user/SKILL.md +38 -0
- package/.agent/skills/mindforge-progress/SKILL.md +19 -0
- package/.agent/skills/mindforge-quick/SKILL.md +38 -0
- package/.agent/skills/mindforge-reapply-patches/SKILL.md +124 -0
- package/.agent/skills/mindforge-remove-phase/SKILL.md +26 -0
- package/.agent/skills/mindforge-remove-workspace/SKILL.md +22 -0
- package/.agent/skills/mindforge-research-phase/SKILL.md +186 -0
- package/.agent/skills/mindforge-resume-work/SKILL.md +35 -0
- package/.agent/skills/mindforge-review/SKILL.md +31 -0
- package/.agent/skills/mindforge-review-backlog/SKILL.md +58 -0
- package/.agent/skills/mindforge-session-report/SKILL.md +16 -0
- package/.agent/skills/mindforge-set-profile/SKILL.md +9 -0
- package/.agent/skills/mindforge-settings/SKILL.md +32 -0
- package/.agent/skills/mindforge-ship/SKILL.md +16 -0
- package/.agent/skills/mindforge-stats/SKILL.md +16 -0
- package/.agent/skills/mindforge-thread/SKILL.md +123 -0
- package/.agent/skills/mindforge-ui-phase/SKILL.md +24 -0
- package/.agent/skills/mindforge-ui-review/SKILL.md +24 -0
- package/.agent/skills/mindforge-update/SKILL.md +35 -0
- package/.agent/skills/mindforge-validate-phase/SKILL.md +26 -0
- package/.agent/skills/mindforge-verify-work/SKILL.md +30 -0
- package/.agent/skills/mindforge-workstreams/SKILL.md +65 -0
- package/.agent/workflows/mindforge-add-phase.md +112 -0
- package/.agent/workflows/mindforge-add-tests.md +351 -0
- package/.agent/workflows/mindforge-add-todo.md +158 -0
- package/.agent/workflows/mindforge-audit-milestone.md +332 -0
- package/.agent/workflows/mindforge-audit-uat.md +109 -0
- package/.agent/workflows/mindforge-autonomous.md +815 -0
- package/.agent/workflows/mindforge-check-todos.md +177 -0
- package/.agent/workflows/mindforge-cleanup.md +152 -0
- package/.agent/workflows/mindforge-complete-milestone.md +766 -0
- package/.agent/workflows/mindforge-diagnose-issues.md +220 -0
- package/.agent/workflows/mindforge-discovery-phase.md +289 -0
- package/.agent/workflows/mindforge-discuss-phase-assumptions.md +645 -0
- package/.agent/workflows/mindforge-discuss-phase.md +1047 -0
- package/.agent/workflows/mindforge-do.md +104 -0
- package/.agent/workflows/mindforge-execute-phase.md +838 -0
- package/.agent/workflows/mindforge-execute-plan.md +509 -0
- package/.agent/workflows/mindforge-fast.md +105 -0
- package/.agent/workflows/mindforge-forensics.md +265 -0
- package/.agent/workflows/mindforge-health.md +181 -0
- package/.agent/workflows/mindforge-help.md +606 -0
- package/.agent/workflows/mindforge-insert-phase.md +130 -0
- package/.agent/workflows/mindforge-list-phase-assumptions.md +178 -0
- package/.agent/workflows/mindforge-list-workspaces.md +56 -0
- package/.agent/workflows/mindforge-manager.md +360 -0
- package/.agent/workflows/mindforge-map-codebase.md +370 -0
- package/.agent/workflows/mindforge-milestone-summary.md +223 -0
- package/.agent/workflows/mindforge-new-milestone.md +469 -0
- package/.agent/workflows/mindforge-new-project.md +1226 -0
- package/.agent/workflows/mindforge-new-workspace.md +237 -0
- package/.agent/workflows/mindforge-next.md +97 -0
- package/.agent/workflows/mindforge-node-repair.md +92 -0
- package/.agent/workflows/mindforge-note.md +156 -0
- package/.agent/workflows/mindforge-pause-work.md +176 -0
- package/.agent/workflows/mindforge-plan-milestone-gaps.md +273 -0
- package/.agent/workflows/mindforge-plan-phase.md +848 -0
- package/.agent/workflows/mindforge-plant-seed.md +169 -0
- package/.agent/workflows/mindforge-pr-branch.md +129 -0
- package/.agent/workflows/mindforge-profile-user.md +450 -0
- package/.agent/workflows/mindforge-progress.md +507 -0
- package/.agent/workflows/mindforge-quick.md +732 -0
- package/.agent/workflows/mindforge-remove-phase.md +155 -0
- package/.agent/workflows/mindforge-remove-workspace.md +90 -0
- package/.agent/workflows/mindforge-research-phase.md +74 -0
- package/.agent/workflows/mindforge-resume-project.md +325 -0
- package/.agent/workflows/mindforge-review.md +228 -0
- package/.agent/workflows/mindforge-session-report.md +146 -0
- package/.agent/workflows/mindforge-settings.md +283 -0
- package/.agent/workflows/mindforge-ship.md +228 -0
- package/.agent/workflows/mindforge-stats.md +60 -0
- package/.agent/workflows/mindforge-transition.md +671 -0
- package/.agent/workflows/mindforge-ui-phase.md +290 -0
- package/.agent/workflows/mindforge-ui-review.md +157 -0
- package/.agent/workflows/mindforge-update.md +323 -0
- package/.agent/workflows/mindforge-validate-phase.md +167 -0
- package/.agent/workflows/mindforge-verify-phase.md +254 -0
- package/.agent/workflows/mindforge-verify-work.md +623 -0
- package/.mindforge/personas/advisor-researcher.md +3 -3
- package/.mindforge/personas/debug-specialist.md +1 -1
- package/.mindforge/personas/debugger.md +1 -1
- package/.mindforge/personas/developer.md +1 -1
- package/.mindforge/personas/phase-researcher.md +4 -4
- package/.mindforge/personas/project-researcher.md +3 -3
- package/.mindforge/personas/research-agent.md +4 -3
- package/.mindforge/personas/tech-writer.md +1 -1
- package/.mindforge/personas/ui-researcher.md +1 -1
- package/.planning/ROADMAP.md +10 -0
- package/CHANGELOG.md +34 -0
- package/README.md +70 -45
- package/RELEASENOTES.md +26 -26
- package/bin/install.js +41 -41
- package/bin/installer-core.js +67 -26
- package/bin/wizard/setup-wizard.js +11 -24
- package/bin/wizard/theme.js +141 -0
- package/docs/PERSONAS.md +119 -87
- package/docs/References/checkpoints.md +778 -0
- package/docs/References/config-reference.md +81 -0
- package/docs/References/continuation-format.md +249 -0
- package/docs/References/decimal-phase-calculation.md +64 -0
- package/docs/References/git-integration.md +295 -0
- package/docs/References/git-planning-commit.md +38 -0
- package/docs/References/model-profile-resolution.md +36 -0
- package/docs/References/model-profiles.md +139 -0
- package/docs/References/phase-argument-parsing.md +61 -0
- package/docs/References/planning-config.md +202 -0
- package/docs/References/questioning.md +162 -0
- package/docs/References/tdd.md +263 -0
- package/docs/References/ui-brand.md +160 -0
- package/docs/References/user-profiling.md +681 -0
- package/docs/References/verification-patterns.md +612 -0
- package/docs/References/workstream-flag.md +58 -0
- package/docs/Templates/Agents/CLAUDE-MD.md +122 -0
- package/docs/Templates/Agents/COPILOT-INSTRUCTIONS.md +7 -0
- package/docs/Templates/Agents/DEBUGGER-PROMPT.md +91 -0
- package/docs/Templates/Agents/PLANNER-PROMPT.md +117 -0
- package/docs/Templates/Codebase/architecture.md +255 -0
- package/docs/Templates/Codebase/concerns.md +310 -0
- package/docs/Templates/Codebase/conventions.md +307 -0
- package/docs/Templates/Codebase/integrations.md +280 -0
- package/docs/Templates/Codebase/stack.md +186 -0
- package/docs/Templates/Codebase/structure.md +285 -0
- package/docs/Templates/Codebase/testing.md +480 -0
- package/docs/Templates/Execution/CONTINUE-HERE.md +78 -0
- package/docs/Templates/Execution/DISCUSSION-LOG.md +63 -0
- package/docs/Templates/Execution/PHASE-PROMPT.md +610 -0
- package/docs/Templates/Execution/STATE.md +176 -0
- package/docs/Templates/Execution/SUMMARY-COMPLEX.md +59 -0
- package/docs/Templates/Execution/SUMMARY-MINIMAL.md +41 -0
- package/docs/Templates/Execution/SUMMARY-STANDARD.md +48 -0
- package/docs/Templates/Execution/SUMMARY.md +248 -0
- package/docs/Templates/Profile/DEV-PREFERENCES.md +21 -0
- package/docs/Templates/Profile/USER-PROFILE.md +146 -0
- package/docs/Templates/Profile/USER-SETUP.md +311 -0
- package/docs/Templates/Project/DISCOVERY.md +146 -0
- package/docs/Templates/Project/MILESTONE-ARCHIVE.md +123 -0
- package/docs/Templates/Project/MILESTONE.md +115 -0
- package/docs/Templates/Project/PROJECT.md +206 -0
- package/docs/Templates/Project/REQUIREMENTS.md +231 -0
- package/docs/Templates/Project/RETROSPECTIVE.md +54 -0
- package/docs/Templates/Project/ROADMAP.md +202 -0
- package/docs/Templates/Quality/DEBUG.md +164 -0
- package/docs/Templates/Quality/UAT.md +280 -0
- package/docs/Templates/Quality/UI-SPEC.md +100 -0
- package/docs/Templates/Quality/VALIDATION.md +76 -0
- package/docs/Templates/Quality/VERIFICATION-REPORT.md +322 -0
- package/docs/Templates/Research/ARCHITECTURE.md +204 -0
- package/docs/Templates/Research/FEATURES.md +147 -0
- package/docs/Templates/Research/PITFALLS.md +200 -0
- package/docs/Templates/Research/STACK.md +120 -0
- package/docs/Templates/Research/SUMMARY.md +170 -0
- package/docs/Templates/System/CONFIG.json +43 -0
- package/docs/Templates/System/CONTEXT.md +352 -0
- package/docs/architecture/README.md +54 -42
- package/docs/commands-reference.md +62 -14
- package/docs/getting-started.md +26 -18
- package/docs/skills-authoring-guide.md +40 -12
- package/docs/tutorial.md +83 -116
- package/docs/user-guide.md +72 -198
- package/package.json +7 -2
- package/.mindforge/memory/knowledge-base.jsonl +0 -7
- package/.mindforge/memory/pattern-library.jsonl +0 -1
- package/.mindforge/memory/team-preferences.jsonl +0 -4
- package/.planning/browser-daemon.log +0 -32
- package/docs/mindforge-md-reference.md +0 -57
- package/docs/reference/config-reference.md +0 -64
- /package/{.mindforge/memory/decision-library.jsonl → .planning/phases/01-migrate-gsd-to-mindforge/.gitkeep} +0 -0
- /package/docs/{reference → References}/audit-events.md +0 -0
- /package/docs/{reference → References}/commands.md +0 -0
- /package/docs/{reference → References}/sdk-api.md +0 -0
- /package/docs/{reference → References}/skills-api.md +0 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# Developer Profile
|
|
2
|
+
|
|
3
|
+
> This profile was generated from session analysis. It contains behavioral directives
|
|
4
|
+
> for the agent to follow when working with this developer. HIGH confidence dimensions
|
|
5
|
+
> should be acted on directly. LOW confidence dimensions should be approached with
|
|
6
|
+
> hedging ("Based on your profile, I'll try X -- let me know if that's off").
|
|
7
|
+
|
|
8
|
+
**Generated:** {{generated_at}}
|
|
9
|
+
**Source:** {{data_source}}
|
|
10
|
+
**Projects Analyzed:** {{projects_list}}
|
|
11
|
+
**Messages Analyzed:** {{message_count}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Quick Reference
|
|
16
|
+
|
|
17
|
+
{{summary_instructions}}
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Communication Style
|
|
22
|
+
|
|
23
|
+
**Rating:** {{communication_style.rating}} | **Confidence:** {{communication_style.confidence}}
|
|
24
|
+
|
|
25
|
+
**Directive:** {{communication_style.claude_instruction}}
|
|
26
|
+
|
|
27
|
+
{{communication_style.summary}}
|
|
28
|
+
|
|
29
|
+
**Evidence:**
|
|
30
|
+
|
|
31
|
+
{{communication_style.evidence}}
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Decision Speed
|
|
36
|
+
|
|
37
|
+
**Rating:** {{decision_speed.rating}} | **Confidence:** {{decision_speed.confidence}}
|
|
38
|
+
|
|
39
|
+
**Directive:** {{decision_speed.claude_instruction}}
|
|
40
|
+
|
|
41
|
+
{{decision_speed.summary}}
|
|
42
|
+
|
|
43
|
+
**Evidence:**
|
|
44
|
+
|
|
45
|
+
{{decision_speed.evidence}}
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Explanation Depth
|
|
50
|
+
|
|
51
|
+
**Rating:** {{explanation_depth.rating}} | **Confidence:** {{explanation_depth.confidence}}
|
|
52
|
+
|
|
53
|
+
**Directive:** {{explanation_depth.claude_instruction}}
|
|
54
|
+
|
|
55
|
+
{{explanation_depth.summary}}
|
|
56
|
+
|
|
57
|
+
**Evidence:**
|
|
58
|
+
|
|
59
|
+
{{explanation_depth.evidence}}
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Debugging Approach
|
|
64
|
+
|
|
65
|
+
**Rating:** {{debugging_approach.rating}} | **Confidence:** {{debugging_approach.confidence}}
|
|
66
|
+
|
|
67
|
+
**Directive:** {{debugging_approach.claude_instruction}}
|
|
68
|
+
|
|
69
|
+
{{debugging_approach.summary}}
|
|
70
|
+
|
|
71
|
+
**Evidence:**
|
|
72
|
+
|
|
73
|
+
{{debugging_approach.evidence}}
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## UX Philosophy
|
|
78
|
+
|
|
79
|
+
**Rating:** {{ux_philosophy.rating}} | **Confidence:** {{ux_philosophy.confidence}}
|
|
80
|
+
|
|
81
|
+
**Directive:** {{ux_philosophy.claude_instruction}}
|
|
82
|
+
|
|
83
|
+
{{ux_philosophy.summary}}
|
|
84
|
+
|
|
85
|
+
**Evidence:**
|
|
86
|
+
|
|
87
|
+
{{ux_philosophy.evidence}}
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Vendor Philosophy
|
|
92
|
+
|
|
93
|
+
**Rating:** {{vendor_philosophy.rating}} | **Confidence:** {{vendor_philosophy.confidence}}
|
|
94
|
+
|
|
95
|
+
**Directive:** {{vendor_philosophy.claude_instruction}}
|
|
96
|
+
|
|
97
|
+
{{vendor_philosophy.summary}}
|
|
98
|
+
|
|
99
|
+
**Evidence:**
|
|
100
|
+
|
|
101
|
+
{{vendor_philosophy.evidence}}
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Frustration Triggers
|
|
106
|
+
|
|
107
|
+
**Rating:** {{frustration_triggers.rating}} | **Confidence:** {{frustration_triggers.confidence}}
|
|
108
|
+
|
|
109
|
+
**Directive:** {{frustration_triggers.claude_instruction}}
|
|
110
|
+
|
|
111
|
+
{{frustration_triggers.summary}}
|
|
112
|
+
|
|
113
|
+
**Evidence:**
|
|
114
|
+
|
|
115
|
+
{{frustration_triggers.evidence}}
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## Learning Style
|
|
120
|
+
|
|
121
|
+
**Rating:** {{learning_style.rating}} | **Confidence:** {{learning_style.confidence}}
|
|
122
|
+
|
|
123
|
+
**Directive:** {{learning_style.claude_instruction}}
|
|
124
|
+
|
|
125
|
+
{{learning_style.summary}}
|
|
126
|
+
|
|
127
|
+
**Evidence:**
|
|
128
|
+
|
|
129
|
+
{{learning_style.evidence}}
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Profile Metadata
|
|
134
|
+
|
|
135
|
+
| Field | Value |
|
|
136
|
+
|-------|-------|
|
|
137
|
+
| Profile Version | {{profile_version}} |
|
|
138
|
+
| Generated | {{generated_at}} |
|
|
139
|
+
| Source | {{data_source}} |
|
|
140
|
+
| Projects | {{projects_count}} |
|
|
141
|
+
| Messages | {{message_count}} |
|
|
142
|
+
| Dimensions Scored | {{dimensions_scored}}/8 |
|
|
143
|
+
| High Confidence | {{high_confidence_count}} |
|
|
144
|
+
| Medium Confidence | {{medium_confidence_count}} |
|
|
145
|
+
| Low Confidence | {{low_confidence_count}} |
|
|
146
|
+
| Sensitive Content Excluded | {{sensitive_excluded_summary}} |
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
# User Setup Template
|
|
2
|
+
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase}-USER-SETUP.md` - human-required configuration that the agent cannot automate.
|
|
4
|
+
|
|
5
|
+
**Purpose:** Document setup tasks that literally require human action - account creation, dashboard configuration, secret retrieval. the agent automates everything possible; this file captures only what remains.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## File Template
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
# Phase {X}: User Setup Required
|
|
13
|
+
|
|
14
|
+
**Generated:** [YYYY-MM-DD]
|
|
15
|
+
**Phase:** {phase-name}
|
|
16
|
+
**Status:** Incomplete
|
|
17
|
+
|
|
18
|
+
Complete these items for the integration to function. the agent automated everything possible; these items require human access to external dashboards/accounts.
|
|
19
|
+
|
|
20
|
+
## Environment Variables
|
|
21
|
+
|
|
22
|
+
| Status | Variable | Source | Add to |
|
|
23
|
+
|--------|----------|--------|--------|
|
|
24
|
+
| [ ] | `ENV_VAR_NAME` | [Service Dashboard → Path → To → Value] | `.env.local` |
|
|
25
|
+
| [ ] | `ANOTHER_VAR` | [Service Dashboard → Path → To → Value] | `.env.local` |
|
|
26
|
+
|
|
27
|
+
## Account Setup
|
|
28
|
+
|
|
29
|
+
[Only if new account creation is required]
|
|
30
|
+
|
|
31
|
+
- [ ] **Create [Service] account**
|
|
32
|
+
- URL: [signup URL]
|
|
33
|
+
- Skip if: Already have account
|
|
34
|
+
|
|
35
|
+
## Dashboard Configuration
|
|
36
|
+
|
|
37
|
+
[Only if dashboard configuration is required]
|
|
38
|
+
|
|
39
|
+
- [ ] **[Configuration task]**
|
|
40
|
+
- Location: [Service Dashboard → Path → To → Setting]
|
|
41
|
+
- Set to: [Required value or configuration]
|
|
42
|
+
- Notes: [Any important details]
|
|
43
|
+
|
|
44
|
+
## Verification
|
|
45
|
+
|
|
46
|
+
After completing setup, verify with:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# [Verification commands]
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Expected results:
|
|
53
|
+
- [What success looks like]
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
**Once all items complete:** Mark status as "Complete" at top of file.
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## When to Generate
|
|
63
|
+
|
|
64
|
+
Generate `{phase}-USER-SETUP.md` when plan frontmatter contains `user_setup` field.
|
|
65
|
+
|
|
66
|
+
**Trigger:** `user_setup` exists in PLAN.md frontmatter and has items.
|
|
67
|
+
|
|
68
|
+
**Location:** Same directory as PLAN.md and SUMMARY.md.
|
|
69
|
+
|
|
70
|
+
**Timing:** Generated during execute-plan.md after tasks complete, before SUMMARY.md creation.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Frontmatter Schema
|
|
75
|
+
|
|
76
|
+
In PLAN.md, `user_setup` declares human-required configuration:
|
|
77
|
+
|
|
78
|
+
```yaml
|
|
79
|
+
user_setup:
|
|
80
|
+
- service: stripe
|
|
81
|
+
why: "Payment processing requires API keys"
|
|
82
|
+
env_vars:
|
|
83
|
+
- name: STRIPE_SECRET_KEY
|
|
84
|
+
source: "Stripe Dashboard → Developers → API keys → Secret key"
|
|
85
|
+
- name: STRIPE_WEBHOOK_SECRET
|
|
86
|
+
source: "Stripe Dashboard → Developers → Webhooks → Signing secret"
|
|
87
|
+
dashboard_config:
|
|
88
|
+
- task: "Create webhook endpoint"
|
|
89
|
+
location: "Stripe Dashboard → Developers → Webhooks → Add endpoint"
|
|
90
|
+
details: "URL: https://[your-domain]/api/webhooks/stripe, Events: checkout.session.completed, customer.subscription.*"
|
|
91
|
+
local_dev:
|
|
92
|
+
- "Run: stripe listen --forward-to localhost:3000/api/webhooks/stripe"
|
|
93
|
+
- "Use the webhook secret from CLI output for local testing"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## The Automation-First Rule
|
|
99
|
+
|
|
100
|
+
**USER-SETUP.md contains ONLY what the agent literally cannot do.**
|
|
101
|
+
|
|
102
|
+
| the agent CAN Do (not in USER-SETUP) | the agent CANNOT Do (→ USER-SETUP) |
|
|
103
|
+
|-----------------------------------|--------------------------------|
|
|
104
|
+
| `npm install stripe` | Create Stripe account |
|
|
105
|
+
| Write webhook handler code | Get API keys from dashboard |
|
|
106
|
+
| Create `.env.local` file structure | Copy actual secret values |
|
|
107
|
+
| Run `stripe listen` | Authenticate Stripe CLI (browser OAuth) |
|
|
108
|
+
| Configure package.json | Access external service dashboards |
|
|
109
|
+
| Write any code | Retrieve secrets from third-party systems |
|
|
110
|
+
|
|
111
|
+
**The test:** "Does this require a human in a browser, accessing an account the agent doesn't have credentials for?"
|
|
112
|
+
- Yes → USER-SETUP.md
|
|
113
|
+
- No → the agent does it automatically
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Service-Specific Examples
|
|
118
|
+
|
|
119
|
+
<stripe_example>
|
|
120
|
+
```markdown
|
|
121
|
+
# Phase 10: User Setup Required
|
|
122
|
+
|
|
123
|
+
**Generated:** 2025-01-14
|
|
124
|
+
**Phase:** 10-monetization
|
|
125
|
+
**Status:** Incomplete
|
|
126
|
+
|
|
127
|
+
Complete these items for Stripe integration to function.
|
|
128
|
+
|
|
129
|
+
## Environment Variables
|
|
130
|
+
|
|
131
|
+
| Status | Variable | Source | Add to |
|
|
132
|
+
|--------|----------|--------|--------|
|
|
133
|
+
| [ ] | `STRIPE_SECRET_KEY` | Stripe Dashboard → Developers → API keys → Secret key | `.env.local` |
|
|
134
|
+
| [ ] | `NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY` | Stripe Dashboard → Developers → API keys → Publishable key | `.env.local` |
|
|
135
|
+
| [ ] | `STRIPE_WEBHOOK_SECRET` | Stripe Dashboard → Developers → Webhooks → [endpoint] → Signing secret | `.env.local` |
|
|
136
|
+
|
|
137
|
+
## Account Setup
|
|
138
|
+
|
|
139
|
+
- [ ] **Create Stripe account** (if needed)
|
|
140
|
+
- URL: https://dashboard.stripe.com/register
|
|
141
|
+
- Skip if: Already have Stripe account
|
|
142
|
+
|
|
143
|
+
## Dashboard Configuration
|
|
144
|
+
|
|
145
|
+
- [ ] **Create webhook endpoint**
|
|
146
|
+
- Location: Stripe Dashboard → Developers → Webhooks → Add endpoint
|
|
147
|
+
- Endpoint URL: `https://[your-domain]/api/webhooks/stripe`
|
|
148
|
+
- Events to send:
|
|
149
|
+
- `checkout.session.completed`
|
|
150
|
+
- `customer.subscription.created`
|
|
151
|
+
- `customer.subscription.updated`
|
|
152
|
+
- `customer.subscription.deleted`
|
|
153
|
+
|
|
154
|
+
- [ ] **Create products and prices** (if using subscription tiers)
|
|
155
|
+
- Location: Stripe Dashboard → Products → Add product
|
|
156
|
+
- Create each subscription tier
|
|
157
|
+
- Copy Price IDs to:
|
|
158
|
+
- `STRIPE_STARTER_PRICE_ID`
|
|
159
|
+
- `STRIPE_PRO_PRICE_ID`
|
|
160
|
+
|
|
161
|
+
## Local Development
|
|
162
|
+
|
|
163
|
+
For local webhook testing:
|
|
164
|
+
```bash
|
|
165
|
+
stripe listen --forward-to localhost:3000/api/webhooks/stripe
|
|
166
|
+
```
|
|
167
|
+
Use the webhook signing secret from CLI output (starts with `whsec_`).
|
|
168
|
+
|
|
169
|
+
## Verification
|
|
170
|
+
|
|
171
|
+
After completing setup:
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# Check env vars are set
|
|
175
|
+
grep STRIPE .env.local
|
|
176
|
+
|
|
177
|
+
# Verify build passes
|
|
178
|
+
npm run build
|
|
179
|
+
|
|
180
|
+
# Test webhook endpoint (should return 400 bad signature, not 500 crash)
|
|
181
|
+
curl -X POST http://localhost:3000/api/webhooks/stripe \
|
|
182
|
+
-H "Content-Type: application/json" \
|
|
183
|
+
-d '{}'
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Expected: Build passes, webhook returns 400 (signature validation working).
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
**Once all items complete:** Mark status as "Complete" at top of file.
|
|
191
|
+
```
|
|
192
|
+
</stripe_example>
|
|
193
|
+
|
|
194
|
+
<supabase_example>
|
|
195
|
+
```markdown
|
|
196
|
+
# Phase 2: User Setup Required
|
|
197
|
+
|
|
198
|
+
**Generated:** 2025-01-14
|
|
199
|
+
**Phase:** 02-authentication
|
|
200
|
+
**Status:** Incomplete
|
|
201
|
+
|
|
202
|
+
Complete these items for Supabase Auth to function.
|
|
203
|
+
|
|
204
|
+
## Environment Variables
|
|
205
|
+
|
|
206
|
+
| Status | Variable | Source | Add to |
|
|
207
|
+
|--------|----------|--------|--------|
|
|
208
|
+
| [ ] | `NEXT_PUBLIC_SUPABASE_URL` | Supabase Dashboard → Settings → API → Project URL | `.env.local` |
|
|
209
|
+
| [ ] | `NEXT_PUBLIC_SUPABASE_ANON_KEY` | Supabase Dashboard → Settings → API → anon public | `.env.local` |
|
|
210
|
+
| [ ] | `SUPABASE_SERVICE_ROLE_KEY` | Supabase Dashboard → Settings → API → service_role | `.env.local` |
|
|
211
|
+
|
|
212
|
+
## Account Setup
|
|
213
|
+
|
|
214
|
+
- [ ] **Create Supabase project**
|
|
215
|
+
- URL: https://supabase.com/dashboard/new
|
|
216
|
+
- Skip if: Already have project for this app
|
|
217
|
+
|
|
218
|
+
## Dashboard Configuration
|
|
219
|
+
|
|
220
|
+
- [ ] **Enable Email Auth**
|
|
221
|
+
- Location: Supabase Dashboard → Authentication → Providers
|
|
222
|
+
- Enable: Email provider
|
|
223
|
+
- Configure: Confirm email (on/off based on preference)
|
|
224
|
+
|
|
225
|
+
- [ ] **Configure OAuth providers** (if using social login)
|
|
226
|
+
- Location: Supabase Dashboard → Authentication → Providers
|
|
227
|
+
- For Google: Add Client ID and Secret from Google Cloud Console
|
|
228
|
+
- For GitHub: Add Client ID and Secret from GitHub OAuth Apps
|
|
229
|
+
|
|
230
|
+
## Verification
|
|
231
|
+
|
|
232
|
+
After completing setup:
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
# Check env vars
|
|
236
|
+
grep SUPABASE .env.local
|
|
237
|
+
|
|
238
|
+
# Verify connection (run in project directory)
|
|
239
|
+
npx supabase status
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
**Once all items complete:** Mark status as "Complete" at top of file.
|
|
245
|
+
```
|
|
246
|
+
</supabase_example>
|
|
247
|
+
|
|
248
|
+
<sendgrid_example>
|
|
249
|
+
```markdown
|
|
250
|
+
# Phase 5: User Setup Required
|
|
251
|
+
|
|
252
|
+
**Generated:** 2025-01-14
|
|
253
|
+
**Phase:** 05-notifications
|
|
254
|
+
**Status:** Incomplete
|
|
255
|
+
|
|
256
|
+
Complete these items for SendGrid email to function.
|
|
257
|
+
|
|
258
|
+
## Environment Variables
|
|
259
|
+
|
|
260
|
+
| Status | Variable | Source | Add to |
|
|
261
|
+
|--------|----------|--------|--------|
|
|
262
|
+
| [ ] | `SENDGRID_API_KEY` | SendGrid Dashboard → Settings → API Keys → Create API Key | `.env.local` |
|
|
263
|
+
| [ ] | `SENDGRID_FROM_EMAIL` | Your verified sender email address | `.env.local` |
|
|
264
|
+
|
|
265
|
+
## Account Setup
|
|
266
|
+
|
|
267
|
+
- [ ] **Create SendGrid account**
|
|
268
|
+
- URL: https://signup.sendgrid.com/
|
|
269
|
+
- Skip if: Already have account
|
|
270
|
+
|
|
271
|
+
## Dashboard Configuration
|
|
272
|
+
|
|
273
|
+
- [ ] **Verify sender identity**
|
|
274
|
+
- Location: SendGrid Dashboard → Settings → Sender Authentication
|
|
275
|
+
- Option 1: Single Sender Verification (quick, for dev)
|
|
276
|
+
- Option 2: Domain Authentication (production)
|
|
277
|
+
|
|
278
|
+
- [ ] **Create API Key**
|
|
279
|
+
- Location: SendGrid Dashboard → Settings → API Keys → Create API Key
|
|
280
|
+
- Permission: Restricted Access → Mail Send (Full Access)
|
|
281
|
+
- Copy key immediately (shown only once)
|
|
282
|
+
|
|
283
|
+
## Verification
|
|
284
|
+
|
|
285
|
+
After completing setup:
|
|
286
|
+
|
|
287
|
+
```bash
|
|
288
|
+
# Check env var
|
|
289
|
+
grep SENDGRID .env.local
|
|
290
|
+
|
|
291
|
+
# Test email sending (replace with your test email)
|
|
292
|
+
curl -X POST http://localhost:3000/api/test-email \
|
|
293
|
+
-H "Content-Type: application/json" \
|
|
294
|
+
-d '{"to": "your@email.com"}'
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
**Once all items complete:** Mark status as "Complete" at top of file.
|
|
300
|
+
```
|
|
301
|
+
</sendgrid_example>
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
## Guidelines
|
|
306
|
+
|
|
307
|
+
**Never include:** Actual secret values. Steps the agent can automate (package installs, code changes).
|
|
308
|
+
|
|
309
|
+
**Naming:** `{phase}-USER-SETUP.md` matches the phase number pattern.
|
|
310
|
+
**Status tracking:** User marks checkboxes and updates status line when complete.
|
|
311
|
+
**Searchability:** `grep -r "USER-SETUP" .planning/` finds all phases with user requirements.
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# Discovery Template
|
|
2
|
+
|
|
3
|
+
Template for `.planning/phases/XX-name/DISCOVERY.md` - shallow research for library/option decisions.
|
|
4
|
+
|
|
5
|
+
**Purpose:** Answer "which library/option should we use" questions during mandatory discovery in plan-phase.
|
|
6
|
+
|
|
7
|
+
For deep ecosystem research ("how do experts build this"), use `/mindforge-research-phase` which produces RESEARCH.md.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## File Template
|
|
12
|
+
|
|
13
|
+
```markdown
|
|
14
|
+
---
|
|
15
|
+
phase: XX-name
|
|
16
|
+
type: discovery
|
|
17
|
+
topic: [discovery-topic]
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
<session_initialization>
|
|
21
|
+
Before beginning discovery, verify today's date:
|
|
22
|
+
!`date +%Y-%m-%d`
|
|
23
|
+
|
|
24
|
+
Use this date when searching for "current" or "latest" information.
|
|
25
|
+
Example: If today is 2025-11-22, search for "2025" not "2024".
|
|
26
|
+
</session_initialization>
|
|
27
|
+
|
|
28
|
+
<discovery_objective>
|
|
29
|
+
Discover [topic] to inform [phase name] implementation.
|
|
30
|
+
|
|
31
|
+
Purpose: [What decision/implementation this enables]
|
|
32
|
+
Scope: [Boundaries]
|
|
33
|
+
Output: DISCOVERY.md with recommendation
|
|
34
|
+
</discovery_objective>
|
|
35
|
+
|
|
36
|
+
<discovery_scope>
|
|
37
|
+
<include>
|
|
38
|
+
- [Question to answer]
|
|
39
|
+
- [Area to investigate]
|
|
40
|
+
- [Specific comparison if needed]
|
|
41
|
+
</include>
|
|
42
|
+
|
|
43
|
+
<exclude>
|
|
44
|
+
- [Out of scope for this discovery]
|
|
45
|
+
- [Defer to implementation phase]
|
|
46
|
+
</exclude>
|
|
47
|
+
</discovery_scope>
|
|
48
|
+
|
|
49
|
+
<discovery_protocol>
|
|
50
|
+
|
|
51
|
+
**Source Priority:**
|
|
52
|
+
1. **Context7 MCP** - For library/framework documentation (current, authoritative)
|
|
53
|
+
2. **Official Docs** - For platform-specific or non-indexed libraries
|
|
54
|
+
3. **WebSearch** - For comparisons, trends, community patterns (verify all findings)
|
|
55
|
+
|
|
56
|
+
**Quality Checklist:**
|
|
57
|
+
Before completing discovery, verify:
|
|
58
|
+
- [ ] All claims have authoritative sources (Context7 or official docs)
|
|
59
|
+
- [ ] Negative claims ("X is not possible") verified with official documentation
|
|
60
|
+
- [ ] API syntax/configuration from Context7 or official docs (never WebSearch alone)
|
|
61
|
+
- [ ] WebSearch findings cross-checked with authoritative sources
|
|
62
|
+
- [ ] Recent updates/changelogs checked for breaking changes
|
|
63
|
+
- [ ] Alternative approaches considered (not just first solution found)
|
|
64
|
+
|
|
65
|
+
**Confidence Levels:**
|
|
66
|
+
- HIGH: Context7 or official docs confirm
|
|
67
|
+
- MEDIUM: WebSearch + Context7/official docs confirm
|
|
68
|
+
- LOW: WebSearch only or training knowledge only (mark for validation)
|
|
69
|
+
|
|
70
|
+
</discovery_protocol>
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
<output_structure>
|
|
74
|
+
Create `.planning/phases/XX-name/DISCOVERY.md`:
|
|
75
|
+
|
|
76
|
+
```markdown
|
|
77
|
+
# [Topic] Discovery
|
|
78
|
+
|
|
79
|
+
## Summary
|
|
80
|
+
[2-3 paragraph executive summary - what was researched, what was found, what's recommended]
|
|
81
|
+
|
|
82
|
+
## Primary Recommendation
|
|
83
|
+
[What to do and why - be specific and actionable]
|
|
84
|
+
|
|
85
|
+
## Alternatives Considered
|
|
86
|
+
[What else was evaluated and why not chosen]
|
|
87
|
+
|
|
88
|
+
## Key Findings
|
|
89
|
+
|
|
90
|
+
### [Category 1]
|
|
91
|
+
- [Finding with source URL and relevance to our case]
|
|
92
|
+
|
|
93
|
+
### [Category 2]
|
|
94
|
+
- [Finding with source URL and relevance]
|
|
95
|
+
|
|
96
|
+
## Code Examples
|
|
97
|
+
[Relevant implementation patterns, if applicable]
|
|
98
|
+
|
|
99
|
+
## Metadata
|
|
100
|
+
|
|
101
|
+
<metadata>
|
|
102
|
+
<confidence level="high|medium|low">
|
|
103
|
+
[Why this confidence level - based on source quality and verification]
|
|
104
|
+
</confidence>
|
|
105
|
+
|
|
106
|
+
<sources>
|
|
107
|
+
- [Primary authoritative sources used]
|
|
108
|
+
</sources>
|
|
109
|
+
|
|
110
|
+
<open_questions>
|
|
111
|
+
[What couldn't be determined or needs validation during implementation]
|
|
112
|
+
</open_questions>
|
|
113
|
+
|
|
114
|
+
<validation_checkpoints>
|
|
115
|
+
[If confidence is LOW or MEDIUM, list specific things to verify during implementation]
|
|
116
|
+
</validation_checkpoints>
|
|
117
|
+
</metadata>
|
|
118
|
+
```
|
|
119
|
+
</output_structure>
|
|
120
|
+
|
|
121
|
+
<success_criteria>
|
|
122
|
+
- All scope questions answered with authoritative sources
|
|
123
|
+
- Quality checklist items completed
|
|
124
|
+
- Clear primary recommendation
|
|
125
|
+
- Low-confidence findings marked with validation checkpoints
|
|
126
|
+
- Ready to inform PLAN.md creation
|
|
127
|
+
</success_criteria>
|
|
128
|
+
|
|
129
|
+
<guidelines>
|
|
130
|
+
**When to use discovery:**
|
|
131
|
+
- Technology choice unclear (library A vs B)
|
|
132
|
+
- Best practices needed for unfamiliar integration
|
|
133
|
+
- API/library investigation required
|
|
134
|
+
- Single decision pending
|
|
135
|
+
|
|
136
|
+
**When NOT to use:**
|
|
137
|
+
- Established patterns (CRUD, auth with known library)
|
|
138
|
+
- Implementation details (defer to execution)
|
|
139
|
+
- Questions answerable from existing project context
|
|
140
|
+
|
|
141
|
+
**When to use RESEARCH.md instead:**
|
|
142
|
+
- Niche/complex domains (3D, games, audio, shaders)
|
|
143
|
+
- Need ecosystem knowledge, not just library choice
|
|
144
|
+
- "How do experts build this" questions
|
|
145
|
+
- Use `/mindforge-research-phase` for these
|
|
146
|
+
</guidelines>
|