mother-brain 0.6.1 β 0.6.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/package.json +1 -1
- package/skills/mother-brain/SKILL.md +117 -1
package/package.json
CHANGED
|
@@ -277,6 +277,21 @@ Mother Brain transforms high-level visions into executable reality by:
|
|
|
277
277
|
- **AGENT RUNTIME CONTEXT IN ISSUES**: When documenting friction, bugs, or improvements, always note the agent runtime (e.g., "Copilot CLI + Claude Sonnet", "Codex CLI + GPT-5"). Issues are often runtime-specificβwhat works in one may break in another. This context is essential for reproducing and scoping fixes.
|
|
278
278
|
- **EMOJI AS ENHANCEMENT, NOT IDENTIFIER**: Emoji rendering varies across agent runtimes and models. Always include text labels alongside emoji markers (e.g., "π§ Mother Brain" not just "π§ "). Never rely on emoji alone to convey meaningβsome runtimes may strip, replace, or fail to reproduce them.
|
|
279
279
|
- **VERIFICATION OVER TRUST**: When user completes a setup/configuration step that CAN be programmatically verified, ALWAYS verify before proceeding. Don't trust "done" when verification is possible. Verification methods: API calls, CLI commands, file existence checks, service health endpoints, build artifact validation.
|
|
280
|
+
- **STORY ANCHOR TRACKING (CRITICAL)**: Session state MUST track `currentStory` (the outcome being worked on) and `storyApproved` (boolean). Before ANY response, check: "Is there an unapproved story in progress?" If yes, ALWAYS show story context header: "π Current Story: [Ability to X] β Status: [In Progress/Awaiting Approval]". Feedback during story execution is a sub-task, NOT a context switch. Never lose track of the active story.
|
|
281
|
+
- **VISUAL/DESIGN DISCOVERY GATE (BLOCKING)**: Before implementing ANY story with visual/UI elements, run MANDATORY discovery:
|
|
282
|
+
1. "What style/aesthetic are you imagining?"
|
|
283
|
+
2. "Any references, examples, or inspiration?"
|
|
284
|
+
3. "What should it definitely NOT look like?"
|
|
285
|
+
Block implementation until user provides direction. Never make styling decisions autonomously β visual choices are user-driven, not AI-driven.
|
|
286
|
+
- **BLOCKING DEPENDENCIES UPFRONT**: At story start, identify ALL user-dependent actions the AI cannot perform (API keys, app setup, external configs, account creation). Ask for ALL of these upfront: "Before I can work autonomously, I need: [list]". Do not start implementation until blocking dependencies are resolved.
|
|
287
|
+
- **STORY CONFIDENCE CHECK (MINI-DISCOVERY)**: Before implementing ANY story, assess: "Do I have enough information to implement this correctly?" Technical details = usually yes. Creative/UX/style details = usually no. If uncertain on ANY user-facing aspect, ask targeted questions BEFORE implementing. Never assume layout, styling, content, or interaction patterns β ask first.
|
|
288
|
+
- **SUB-TASK CLASSIFICATION (MID-STORY FEEDBACK)**: When bugs or feedback arise during story execution:
|
|
289
|
+
1. Ask: "Is this essential to meet the outcome's acceptance criteria, or a separate improvement?"
|
|
290
|
+
2. If ESSENTIAL to outcome β treat as immediate sub-task, fix before continuing
|
|
291
|
+
3. If NOT essential to outcome β add to backlog, continue with story
|
|
292
|
+
Keep story focused on its acceptance criteria. Don't let scope creep derail completion.
|
|
293
|
+
- **STORY-FIRST TERMINOLOGY**: In ALL user-facing output, use "story" (user outcome) not "task" (internal implementation). Stories = outcomes with acceptance criteria that users validate. Tasks = internal implementation details never shown to users for validation. User validates: "Can I now do X?" not "Does this code work?"
|
|
294
|
+
- **CONSERVATIVE VERSIONING**: Use patch versions (0.X.Y) for at least 20 releases before incrementing minor version. Prevents version number inflation. Example: 0.6.1 β 0.6.2 β ... β 0.6.21 β 0.7.0.
|
|
280
295
|
|
|
281
296
|
### Output Formatting Rules (CRITICAL)
|
|
282
297
|
|
|
@@ -2686,7 +2701,7 @@ Key rules: Use `allow_freeform: true` on all `ask_user` calls. Check freeform re
|
|
|
2686
2701
|
|
|
2687
2702
|
Before implementing ANY task, you MUST complete this gate:
|
|
2688
2703
|
|
|
2689
|
-
**Step 9.0:
|
|
2704
|
+
**Step 9.0: Story Start Assessment**
|
|
2690
2705
|
|
|
2691
2706
|
1. **Load Project Brain** (if exists):
|
|
2692
2707
|
- Read `.mother-brain/project-brain.md`
|
|
@@ -2729,6 +2744,33 @@ Key rules: Use `allow_freeform: true` on all `ask_user` calls. Check freeform re
|
|
|
2729
2744
|
- Note: "No Elder Brain knowledge for [technology]"
|
|
2730
2745
|
- Plan to contribute back via Elder Brain RECEIVE after task
|
|
2731
2746
|
|
|
2747
|
+
**Step 9.0.1: Blocking Dependencies Collection (MANDATORY)**
|
|
2748
|
+
|
|
2749
|
+
Before starting ANY story, identify what the AI CANNOT do autonomously:
|
|
2750
|
+
|
|
2751
|
+
**Check for these dependency types:**
|
|
2752
|
+
- **Account/Service Setup**: Creating accounts, subscribing to services, accepting terms of service
|
|
2753
|
+
- **API Keys & Credentials**: Obtaining keys, secrets, OAuth tokens the AI cannot generate
|
|
2754
|
+
- **External Configuration**: Setting up third-party consoles, enabling features in dashboards
|
|
2755
|
+
- **Physical Actions**: Device setup, hardware configuration, local installations the AI can't perform
|
|
2756
|
+
- **Payment/Billing**: Anything requiring financial transactions
|
|
2757
|
+
|
|
2758
|
+
**If ANY blocking dependencies found:**
|
|
2759
|
+
```
|
|
2760
|
+
βΈοΈ Before I can work autonomously on this story, I need you to:
|
|
2761
|
+
|
|
2762
|
+
1. [Blocking dependency 1 - what exactly to do]
|
|
2763
|
+
2. [Blocking dependency 2 - what exactly to do]
|
|
2764
|
+
3. [Blocking dependency 3 - what exactly to do]
|
|
2765
|
+
|
|
2766
|
+
Let me know when these are ready, or if you need help with any step.
|
|
2767
|
+
```
|
|
2768
|
+
|
|
2769
|
+
- **WAIT for user confirmation before proceeding**
|
|
2770
|
+
- Update session-state.json with `blockingDependencies` array
|
|
2771
|
+
- When user confirms, verify programmatically where possible (see VERIFICATION OVER TRUST principle)
|
|
2772
|
+
- Only proceed to implementation when all blocking dependencies resolved
|
|
2773
|
+
|
|
2732
2774
|
3. **Skill Sufficiency Check** (CRITICAL):
|
|
2733
2775
|
- List existing skills in `.github/skills/`
|
|
2734
2776
|
- For EACH creative/specialized element in this task, ask:
|
|
@@ -3153,6 +3195,64 @@ Key rules: Use `allow_freeform: true` on all `ask_user` calls. Check freeform re
|
|
|
3153
3195
|
|
|
3154
3196
|
**Key Principle**: Mother Brain orchestrates; Child Brain analyzes and routes. This separation keeps Mother Brain clean.
|
|
3155
3197
|
|
|
3198
|
+
### 10A.1 **Mid-Story Sub-Task Classification (MANDATORY)**
|
|
3199
|
+
|
|
3200
|
+
When bugs, issues, or feedback arise DURING story execution (before outcome validation):
|
|
3201
|
+
|
|
3202
|
+
**Step 10A.1.1: Display Story Context Header**
|
|
3203
|
+
Always remind user of the active story:
|
|
3204
|
+
```
|
|
3205
|
+
π Current Story: [Outcome Name]
|
|
3206
|
+
Status: In Progress | [X/Y] acceptance criteria verified
|
|
3207
|
+
|
|
3208
|
+
β οΈ Issue Detected: [brief description of issue/feedback]
|
|
3209
|
+
```
|
|
3210
|
+
|
|
3211
|
+
**Step 10A.1.2: Classify the Issue**
|
|
3212
|
+
Ask user to classify:
|
|
3213
|
+
```
|
|
3214
|
+
Is this issue essential to meet the outcome, or a separate improvement?
|
|
3215
|
+
|
|
3216
|
+
1. π― Essential β must fix before this outcome can be considered complete
|
|
3217
|
+
2. π Improvement β add to backlog, continue with current story
|
|
3218
|
+
3. β Not sure β let's discuss
|
|
3219
|
+
```
|
|
3220
|
+
|
|
3221
|
+
**Step 10A.1.3: Handle Based on Classification**
|
|
3222
|
+
|
|
3223
|
+
**If ESSENTIAL:**
|
|
3224
|
+
- Treat as immediate sub-task
|
|
3225
|
+
- Add to session-state.json: `currentStory.subTasks` with `essential: true`
|
|
3226
|
+
- Fix before continuing with story
|
|
3227
|
+
- Display: "π Adding as essential sub-task, fixing now..."
|
|
3228
|
+
|
|
3229
|
+
**If IMPROVEMENT (not essential):**
|
|
3230
|
+
- Add to backlog (roadmap.md or backlog section)
|
|
3231
|
+
- Mark in session-state.json: `currentStory.subTasks` with `essential: false, status: "backlog"`
|
|
3232
|
+
- Continue with current story
|
|
3233
|
+
- Display: "π Added to backlog β continuing with [story name]..."
|
|
3234
|
+
|
|
3235
|
+
**If NOT SURE:**
|
|
3236
|
+
- Ask clarifying question:
|
|
3237
|
+
```
|
|
3238
|
+
Let me help clarify:
|
|
3239
|
+
|
|
3240
|
+
The current story's acceptance criteria are:
|
|
3241
|
+
1. [Criterion A]
|
|
3242
|
+
2. [Criterion B]
|
|
3243
|
+
|
|
3244
|
+
Does this issue block any of these specific criteria from being met?
|
|
3245
|
+
```
|
|
3246
|
+
- Based on response, classify as essential or improvement
|
|
3247
|
+
|
|
3248
|
+
**Step 10A.1.4: Maintain Story Focus**
|
|
3249
|
+
After handling sub-task:
|
|
3250
|
+
- Always return to story context
|
|
3251
|
+
- Show: "π Returning to: [Outcome Name]"
|
|
3252
|
+
- Display remaining acceptance criteria to verify
|
|
3253
|
+
|
|
3254
|
+
**Key Principle**: Stories stay focused on their acceptance criteria. Scope creep is routed to backlog, not allowed to derail completion.
|
|
3255
|
+
|
|
3156
3256
|
### 10B. **Post-Task Reflection via Child Brain** (Proactive Improvement)
|
|
3157
3257
|
- **When to run**: ALWAYS after task is marked complete by user - this is mandatory, not optional
|
|
3158
3258
|
- **Trigger**: Step 10 task completion β Step 10B runs automatically β then Step 11
|
|
@@ -3347,9 +3447,25 @@ Key rules: Use `allow_freeform: true` on all `ask_user` calls. Check freeform re
|
|
|
3347
3447
|
```json
|
|
3348
3448
|
{
|
|
3349
3449
|
"projectName": "Gaming Backlog Manager",
|
|
3450
|
+
"currentStory": {
|
|
3451
|
+
"id": "outcome-001",
|
|
3452
|
+
"name": "Ability to track my game backlog",
|
|
3453
|
+
"approved": false,
|
|
3454
|
+
"acceptanceCriteria": [
|
|
3455
|
+
{"criterion": "I can add games to my backlog", "verified": true},
|
|
3456
|
+
{"criterion": "I can mark games as completed", "verified": false},
|
|
3457
|
+
{"criterion": "I can see my backlog list", "verified": true}
|
|
3458
|
+
],
|
|
3459
|
+
"subTasks": [
|
|
3460
|
+
{"id": "sub-001", "description": "Fix mobile layout", "essential": true, "status": "done"},
|
|
3461
|
+
{"id": "sub-002", "description": "Add dark mode", "essential": false, "status": "backlog"}
|
|
3462
|
+
],
|
|
3463
|
+
"blockingDependencies": []
|
|
3464
|
+
},
|
|
3350
3465
|
"lastTask": "003-localstorage-data-layer",
|
|
3351
3466
|
"lastTaskStatus": "DONE",
|
|
3352
3467
|
"currentPhase": "Phase 1",
|
|
3468
|
+
"completedStories": ["outcome-001"],
|
|
3353
3469
|
"completedTasks": ["001", "002", "003"],
|
|
3354
3470
|
"totalTasks": 9,
|
|
3355
3471
|
"skillsCreated": ["pwa-builder"],
|