mother-brain 0.0.20 β†’ 0.0.22

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.js CHANGED
@@ -653,7 +653,7 @@ async function uninstall(options) {
653
653
  // src/cli.ts
654
654
  import { exec as exec3 } from "child_process";
655
655
  var program = new Command();
656
- var VERSION = "0.0.20";
656
+ var VERSION = "0.0.22";
657
657
  program.name("mother-brain").description("AI-powered project management framework for GitHub Copilot CLI").version(VERSION);
658
658
  program.command("init").description("Initialize Mother Brain in the current project").option("-f, --force", "Overwrite existing skills").action(init);
659
659
  program.command("update").description("Update Mother Brain skills to the latest version").action(update);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mother-brain",
3
- "version": "0.0.20",
3
+ "version": "0.0.22",
4
4
  "description": "AI-powered project management framework for GitHub Copilot CLI",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -521,8 +521,11 @@ This pattern ensures NO workflow ever traps the userβ€”there's always an escape
521
521
  - "Add a new feature to Mother Brain"
522
522
  - "Improve documentation"
523
523
  - "Refactor or clean up code"
524
+ - "πŸ“₯ Review community improvements"
524
525
  - "Continue previous meta-work"
525
526
 
527
+ - **If "Review community improvements"**: Jump to **Step 2A.1: Review Community Improvements**
528
+
526
529
  **Step 2.3.2: Track Meta-Work**
527
530
  - Update `.mother-brain/meta-mode.json` with focus:
528
531
  ```json
@@ -636,20 +639,22 @@ This pattern ensures NO workflow ever traps the userβ€”there's always an escape
636
639
 
637
640
  - Proceed to normal workflow (Step 8+)
638
641
 
639
- ### 2A. **Send Improvement to Mother Brain** (GitHub Issue-Based Contribution)
642
+ ### 2A. **Send Improvement to Mother Brain** (Automatic One-Click Contribution)
640
643
  - When user selects "πŸ“€ Send improvement to Mother Brain":
641
644
 
642
- **Purpose**: Instead of directly modifying Mother Brain files, improvements are submitted as GitHub issues. This prevents users from overwriting each other's changes and ensures all improvements are reviewed.
645
+ **Purpose**: Automatically detect local Mother Brain improvements, gather context from learning logs, and submit a fully-formed GitHub issue in one click. No questions asked - just send.
646
+
647
+ **AUTOMATIC WORKFLOW (No User Prompts)**:
643
648
 
644
- **Step 2A.1: Detect Local Changes**
649
+ **Step 2A.1: Auto-Detect Local Changes**
645
650
 
646
- - Scan for local changes to Mother Brain core files:
651
+ - Silently scan for changes to core files:
647
652
  ```powershell
648
- git diff --name-only HEAD -- ".github/skills/mother-brain/" "cli/"
649
- git status --porcelain -- ".github/skills/mother-brain/" "cli/"
653
+ git diff --name-only HEAD -- ".github/skills/mother-brain/" ".github/skills/child-brain/" ".github/skills/skill-creator/" "cli/"
654
+ git status --porcelain -- ".github/skills/mother-brain/" ".github/skills/child-brain/" ".github/skills/skill-creator/" "cli/"
650
655
  ```
651
656
 
652
- - **Core files to check**:
657
+ - **Core files checked**:
653
658
  - `.github/skills/mother-brain/SKILL.md`
654
659
  - `.github/skills/child-brain/SKILL.md`
655
660
  - `.github/skills/skill-creator/SKILL.md`
@@ -657,100 +662,97 @@ This pattern ensures NO workflow ever traps the userβ€”there's always an escape
657
662
  - `cli/package.json`
658
663
 
659
664
  - **If no changes detected**:
660
- - Display: "No local Mother Brain changes detected."
661
- - Ask if user wants to describe an improvement anyway
665
+ - Display: "πŸ“­ No local Mother Brain changes to send. Make improvements first, then come back here."
666
+ - Return to main menu (Step 2)
662
667
 
663
- **Step 2A.2: Summarize Changes**
668
+ **Step 2A.2: Auto-Generate Diff Summary**
664
669
 
665
- - For each changed file, get the diff:
666
- ```powershell
667
- git diff HEAD -- [file]
668
- ```
670
+ - For each changed file, get the diff silently
671
+ - AI generates a human-readable summary:
672
+ - What was changed
673
+ - Why it was changed (inferred from diff context)
674
+ - Expected benefit
669
675
 
670
- - Create a summary of changes in human-readable format:
671
- ```
672
- πŸ“ Local Mother Brain Changes Detected
673
-
674
- Files Changed:
675
- - [file1]: [brief description of change]
676
- - [file2]: [brief description of change]
677
-
678
- Summary:
679
- [AI-generated summary of what the changes accomplish]
680
- ```
676
+ **Step 2A.3: Auto-Extract Learning Context**
681
677
 
682
- **Step 2A.3: Gather Context from Learning Log**
678
+ - Check `.mother-brain/project-brain.md` for recent learnings:
679
+ - Extract last 3-5 relevant learning entries
680
+ - Focus on friction that triggered Mother Brain improvements
683
681
 
684
- - Check `.mother-brain/project-brain.md` for recent learnings that triggered this improvement
685
- - Check conversation history for friction that led to the changes
686
- - Compile into "Why This Improvement" section:
687
- ```
688
- Why This Improvement:
689
- - Friction encountered: [description]
690
- - Learning from project: [what was learned]
691
- - Expected benefit: [how this helps all users]
692
- ```
682
+ - Check conversation history for:
683
+ - What friction was encountered
684
+ - How it was resolved
685
+ - What insight led to the improvement
693
686
 
694
- **Step 2A.4: Create GitHub Issue**
687
+ **Step 2A.4: Auto-Create GitHub Issue**
695
688
 
696
- - Generate issue title and body:
689
+ - Generate complete issue automatically:
697
690
  ```markdown
698
- Title: [Improvement] [Brief description of improvement]
691
+ Title: [Improvement] [AI-generated brief title from changes]
699
692
 
700
693
  ## Summary
701
- [AI-generated summary of the improvement]
694
+ [AI-generated summary explaining the improvement in 2-3 sentences]
702
695
 
703
- ## Changes Proposed
704
- [Detailed diff or description of each change]
696
+ ## Changes
697
+ [Collapsible diff for each file]
698
+ <details>
699
+ <summary>[filename] - [brief description]</summary>
700
+
701
+ ```diff
702
+ [actual diff]
703
+ ```
704
+ </details>
705
705
 
706
706
  ## Why This Improvement
707
- - **Friction Encountered**: [What problem was faced]
708
- - **Context**: [Relevant learnings or examples]
709
- - **Expected Benefit**: [How this helps all Mother Brain users]
707
+ **Friction Encountered:**
708
+ [Extracted from learning log - what problem was faced]
710
709
 
711
- ## Files Affected
712
- - [ ] `.github/skills/mother-brain/SKILL.md`
713
- - [ ] [other files]
710
+ **Resolution:**
711
+ [How the improvement addresses the friction]
714
712
 
715
- ## Testing Notes
716
- [Any notes on how to test this improvement]
713
+ **Expected Benefit:**
714
+ [How this helps all Mother Brain users]
715
+
716
+ ## Learning Log Context
717
+ [Relevant excerpts from project-brain.md that led to this improvement]
717
718
 
718
719
  ---
719
- *Submitted via Mother Brain "Send Improvement" workflow*
720
+ *Submitted automatically via Mother Brain v[version]*
720
721
  ```
721
722
 
722
- - Use GitHub MCP server to create the issue:
723
+ - Create issue using GitHub MCP:
723
724
  ```
724
725
  github-mcp-server: create_issue
725
- owner: [Mother Brain repo owner]
726
+ owner: [Mother Brain repo owner from git remote]
726
727
  repo: [Mother Brain repo name]
727
728
  title: [Generated title]
728
729
  body: [Generated body]
729
730
  labels: ["improvement", "community-contribution"]
730
731
  ```
731
732
 
732
- - Display confirmation:
733
+ **Step 2A.5: Confirm and Offer Revert**
734
+
735
+ - Display success message:
733
736
  ```
734
737
  βœ… Improvement Submitted!
735
738
 
736
- Issue Created: #[number] - [title]
737
- URL: [issue URL]
739
+ Issue #[number]: [title]
740
+ [issue URL]
738
741
 
739
- The Mother Brain maintainers will review your improvement.
740
- Your local changes have been preserved.
742
+ Changes detected:
743
+ β€’ [file1] - [brief change description]
744
+ β€’ [file2] - [brief change description]
741
745
  ```
742
746
 
743
- **Step 2A.5: Offer to Revert Local Changes**
744
-
745
747
  - Use `ask_user` with choices:
746
- - "Keep local changes (for further testing)"
748
+ - "Keep local changes (for further work)"
747
749
  - "Revert Mother Brain files (clean slate)"
748
750
 
749
751
  - **If revert selected**:
750
752
  ```powershell
751
753
  git checkout HEAD -- ".github/skills/mother-brain/" ".github/skills/child-brain/" ".github/skills/skill-creator/" "cli/"
752
754
  ```
753
- - Display: "Local Mother Brain files reverted to last commit."
755
+ - Display: "✨ Local Mother Brain files reverted to clean slate."
754
756
 
755
757
  - Return to main menu (Step 2)
756
758
 
@@ -766,81 +768,130 @@ This pattern ensures NO workflow ever traps the userβ€”there's always an escape
766
768
  labels: ["improvement"]
767
769
  ```
768
770
 
769
- - Display issue list:
771
+ - **If no issues**: Display "πŸ“­ No community improvements pending review." β†’ Return to menu
772
+
773
+ - **If issues exist**: Display summarized list:
770
774
  ```
771
- πŸ“₯ Community Improvements to Review
775
+ πŸ“₯ Community Improvements to Review ([count] pending)
772
776
 
773
- 1. #[number] - [title] (by @[author], [date])
774
- Status: [open/in review]
775
- 2. #[number] - [title] (by @[author], [date])
776
- Status: [open/in review]
777
- [...]
777
+ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
778
+ β”‚ #[number] - [title] β”‚
779
+ β”‚ by @[author] β€’ [time ago] β”‚
780
+ β”‚ β”‚
781
+ β”‚ πŸ“ [AI-generated 1-sentence summary of what this improves] β”‚
782
+ β”‚ πŸ“ [files affected count] files β€’ [lines changed] lines β”‚
783
+ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
778
784
 
779
- Select an issue to review, or go back.
785
+ [Repeat for each issue, max 5 shown]
780
786
  ```
781
787
 
782
788
  - Use `ask_user` with issue numbers as choices + "Back to menu"
783
789
 
784
790
  **Step 2A.1.2: Review Selected Issue**
785
791
 
786
- - Fetch full issue details:
787
- ```
788
- github-mcp-server: get_issue
789
- issue_number: [selected]
790
- ```
792
+ - Fetch full issue details
791
793
 
792
- - Display issue content with analysis:
794
+ - Display with AI-generated analysis:
793
795
  ```
794
796
  πŸ“‹ Issue #[number]: [title]
795
797
 
796
- Submitted by: @[author]
797
- Date: [created_at]
798
+ Submitted by: @[author] β€’ [created_at]
798
799
 
799
- [Issue body]
800
+ ═══════════════════════════════════════════════════════════════
800
801
 
801
- ---
802
- πŸ” Impact Analysis:
803
- - Files affected: [list]
804
- - Risk level: [low/medium/high]
805
- - Dependencies: [any]
802
+ πŸ” IMPACT SUMMARY
803
+
804
+ What It Does:
805
+ [AI-generated 2-3 sentence explanation of the improvement]
806
+
807
+ Why It Was Submitted:
808
+ [Extract from "Friction Encountered" section of issue]
809
+
810
+ Risk Assessment:
811
+ β€’ Scope: [Low/Medium/High] - [brief reason]
812
+ β€’ Breaking Changes: [None/Minor/Major]
813
+ β€’ Files: [list affected files]
814
+
815
+ ═══════════════════════════════════════════════════════════════
816
+
817
+ πŸ“„ FULL DIFF
818
+ [Collapsible or scrollable diff from issue body]
806
819
  ```
807
820
 
808
821
  - Use `ask_user` with choices:
809
- - "Accept and integrate this improvement"
810
- - "Request changes (comment on issue)"
811
- - "Reject (close with explanation)"
812
- - "Skip for now"
822
+ - "βœ… Accept - integrate this improvement"
823
+ - "❌ Reject - close with explanation"
824
+ - "πŸ’¬ Request changes - ask for modifications"
825
+ - "⏭️ Skip - review later"
813
826
 
814
- **Step 2A.1.3: Integrate Accepted Improvement**
827
+ **Step 2A.1.3: Accept Improvement**
815
828
 
816
829
  - If accepted:
817
- 1. Apply the proposed changes using `edit` tool
818
- 2. Run any tests if they exist
819
- 3. Comment on issue: "Integrated in [version]"
820
- 4. Close issue with "integrated" label
821
-
822
- - Display:
823
- ```
824
- βœ… Improvement Integrated
825
-
826
- Changes applied from issue #[number].
827
- Ready for release when you choose "Release Mother Brain".
828
- ```
829
-
830
- **Step 2A.1.4: Request Changes**
830
+ 1. Parse the diffs from the issue body
831
+ 2. Apply changes using `edit` tool
832
+ 3. Run validation (npm build if CLI changes)
833
+ 4. **Auto-comment** on issue:
834
+ ```markdown
835
+ βœ… **Improvement Integrated**
836
+
837
+ Thank you for this contribution! Your improvement has been integrated
838
+ and will be included in the next release.
839
+
840
+ Changes applied:
841
+ - [list of files modified]
842
+
843
+ πŸš€ *Integrated by Mother Brain*
844
+ ```
845
+ 5. Close issue with "integrated" label
846
+
847
+ - Display: "βœ… Improvement from #[number] integrated. Ready for release."
848
+
849
+ **Step 2A.1.4: Reject Improvement**
850
+
851
+ - If rejected:
852
+ 1. Use `ask_user` to get brief reason (or offer common reasons):
853
+ - "Doesn't align with framework direction"
854
+ - "Implementation approach needs rework"
855
+ - "Duplicate of existing functionality"
856
+ - "Custom reason..."
857
+ 2. **Auto-comment** on issue:
858
+ ```markdown
859
+ ❌ **Improvement Not Accepted**
860
+
861
+ Thank you for taking the time to submit this improvement.
862
+ After review, we've decided not to integrate it at this time.
863
+
864
+ **Reason:** [selected/custom reason]
865
+
866
+ [If appropriate: "Feel free to revise and resubmit if you'd like
867
+ to address this feedback."]
868
+
869
+ πŸ™ *We appreciate your contribution to Mother Brain*
870
+ ```
871
+ 3. Close issue with "wontfix" label
872
+
873
+ - Display: "Issue #[number] closed with explanation."
874
+
875
+ **Step 2A.1.5: Request Changes**
831
876
 
832
877
  - If "Request changes" selected:
833
- - Use `ask_user` to get feedback text
834
- - Comment on issue with feedback
835
- - Display confirmation
836
-
837
- **Step 2A.1.5: Reject Improvement**
838
-
839
- - If "Reject" selected:
840
- - Use `ask_user` to get rejection reason
841
- - Comment on issue with explanation
842
- - Close issue with "wontfix" label
843
- - Display confirmation
878
+ 1. Use `ask_user` to get feedback text
879
+ 2. **Auto-comment** on issue:
880
+ ```markdown
881
+ πŸ’¬ **Changes Requested**
882
+
883
+ Thanks for this improvement! Before we can integrate it,
884
+ please address the following:
885
+
886
+ [user's feedback]
887
+
888
+ Once updated, we'll review again.
889
+
890
+ πŸ”„ *Feedback from Mother Brain maintainer*
891
+ ```
892
+ 3. Add "changes-requested" label
893
+
894
+ - Display: "Feedback posted to #[number]."
844
895
 
845
896
 
846
897