mango-brain 3.2.1__tar.gz → 3.2.3__tar.gz

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.
Files changed (53) hide show
  1. {mango_brain-3.2.1 → mango_brain-3.2.3}/PKG-INFO +15 -29
  2. {mango_brain-3.2.1 → mango_brain-3.2.3}/README.md +14 -28
  3. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/PKG-INFO +15 -29
  4. {mango_brain-3.2.1 → mango_brain-3.2.3}/pyproject.toml +1 -1
  5. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/cli.py +15 -2
  6. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/SOURCES.txt +0 -0
  7. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/dependency_links.txt +0 -0
  8. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/entry_points.txt +0 -0
  9. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/requires.txt +0 -0
  10. {mango_brain-3.2.1 → mango_brain-3.2.3}/mango_brain.egg-info/top_level.txt +0 -0
  11. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/__init__.py +0 -0
  12. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/__main__.py +0 -0
  13. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/agents/analyzer.md +0 -0
  14. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/agents/executor.md +0 -0
  15. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/agents/mem-manager.md +0 -0
  16. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/agents/verifier.md +0 -0
  17. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/api_routes.py +0 -0
  18. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/config.py +0 -0
  19. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/dashboard_dist/assets/index-B2dCBdj5.js +0 -0
  20. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/dashboard_dist/assets/index-C9E5pXFt.css +0 -0
  21. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/dashboard_dist/favicon.svg +0 -0
  22. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/dashboard_dist/icons.svg +0 -0
  23. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/dashboard_dist/index.html +0 -0
  24. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/database.py +0 -0
  25. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/decay.py +0 -0
  26. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/embeddings.py +0 -0
  27. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/graph.py +0 -0
  28. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/jsonl_parser.py +0 -0
  29. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/main.py +0 -0
  30. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/mangobrain.default.toml +0 -0
  31. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/mcp_tools.py +0 -0
  32. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/models.py +0 -0
  33. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/init/01-doc-base.md +0 -0
  34. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/init/02-code-base.md +0 -0
  35. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/init/03-event-base.md +0 -0
  36. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/init/04-chat-base.md +0 -0
  37. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/init/05-elaborate-base.md +0 -0
  38. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/prompts/reference/memory-definition.md +0 -0
  39. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/retrieval.py +0 -0
  40. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/rules/mangobrain-remember.md +0 -0
  41. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/rules/mangobrain-workflow.md +0 -0
  42. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/brain-init/SKILL.md +0 -0
  43. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/discuss/SKILL.md +0 -0
  44. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/elaborate/SKILL.md +0 -0
  45. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/health-check/SKILL.md +0 -0
  46. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/memorize/SKILL.md +0 -0
  47. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/smoke-test/SKILL.md +0 -0
  48. {mango_brain-3.2.1 → mango_brain-3.2.3}/server/skills/task/SKILL.md +0 -0
  49. {mango_brain-3.2.1 → mango_brain-3.2.3}/setup.cfg +0 -0
  50. {mango_brain-3.2.1 → mango_brain-3.2.3}/tests/test_core.py +0 -0
  51. {mango_brain-3.2.1 → mango_brain-3.2.3}/tests/test_init.py +0 -0
  52. {mango_brain-3.2.1 → mango_brain-3.2.3}/tests/test_phase2.py +0 -0
  53. {mango_brain-3.2.1 → mango_brain-3.2.3}/tests/test_setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mango-brain
3
- Version: 3.2.1
3
+ Version: 3.2.3
4
4
  Summary: The learning layer for Claude Code — persistent associative memory + development workflow. Claude Code gets smarter the longer you use it.
5
5
  Author-email: Federico Anastasi <federico.anastasi@outlook.com>
6
6
  License: MIT
@@ -42,6 +42,7 @@ Requires-Dist: scipy>=1.12; extra == "dev"
42
42
 
43
43
  <p align="center">
44
44
  <a href="https://pypi.org/project/mangobrain/"><img src="https://img.shields.io/pypi/v/mangobrain?style=flat-square&color=7c3aed&label=PyPI" /></a>
45
+ <img src="https://img.shields.io/badge/v3.2.2-7c3aed?style=flat-square" />
45
46
  <img src="https://img.shields.io/badge/python-3.11+-blue?style=flat-square&logo=python&logoColor=white" />
46
47
  <img src="https://img.shields.io/badge/MCP-compatible-8A2BE2?style=flat-square" />
47
48
  <img src="https://img.shields.io/badge/license-MIT-green?style=flat-square" />
@@ -76,33 +77,18 @@ After 500+ memories across two real projects, session 50 is genuinely better tha
76
77
 
77
78
  ## How it works
78
79
 
79
- ```mermaid
80
- flowchart LR
81
- DISCUSS["/discuss\nPlan with memory"] -->|task.md| TASK["/task"]
82
-
83
- subgraph agents ["4 specialized agents"]
84
- direction TB
85
- ANALYZER["Analyzer\nExplores code + recalls memory"]
86
- EXECUTOR["Executor\nWrites code — no memory, 100% focused"]
87
- VERIFIER["Verifier\nQA + checks known issues"]
88
- MEMMGR["Mem-manager\nCaptures knowledge at close"]
89
- end
90
-
91
- TASK --> agents
92
- MEMMGR -->|saves| MEMORY[("Memory")]
93
- MEMORY -.->|"recalls"| ANALYZER
94
- MEMORY -.->|"recalls"| VERIFIER
95
- MEMORY -->|"next session"| DISCUSS
96
- ```
97
-
98
- **The closed loop:** work produces knowledge, knowledge improves work.
80
+ <p align="center">
81
+ <img src="assets/workflow.svg" alt="MangoBrain Workflow" width="800" />
82
+ </p>
99
83
 
100
- | Phase | What happens |
101
- |-------|-------------|
102
- | `/discuss` | You describe what to build. Claude recalls past decisions, known bugs, patterns. Analyzers explore the codebase *and* memory. Output: `task.md`. |
103
- | `/task` | 4 agents execute with strict roles. The **analyzer** checks memory for gotchas. The **executor** writes code (no memory access — 100% focused). The **verifier** recalls known issues before shipping. |
104
- | `close` | The **mem-manager** runs automatically. Captures decisions, bugs found, patterns learned. Zero effort. |
105
- | `next session` | Memory surfaces relevant knowledge. The loop repeats each cycle smarter than the last. |
84
+ | | What happens | Codebase | Memory |
85
+ |---|---|---|---|
86
+ | **`/discuss`** | You explain the task. Claude explores code, recalls past decisions, brainstorms with full context. Output: `task.md`. | reads | reads |
87
+ | **Analyzer** | Deep analysis of the areas involved. Surfaces gotchas from memory before any code is written. | reads | reads |
88
+ | **Executor** | Writes code 100% focused on implementation. No memory access by design. | writes | — |
89
+ | **Verifier** | Runs tests, checks quality, recalls known issues from memory before shipping. | reads | reads |
90
+ | **Mem-manager** | Captures decisions, bugs found, patterns learned. Zero effort from you. | — | **writes** |
91
+ | **Next session** | `/discuss` starts with everything the last cycle learned. The loop repeats — each cycle smarter. | | reads |
106
92
 
107
93
  ---
108
94
 
@@ -111,7 +97,7 @@ flowchart LR
111
97
  ### 1. Install
112
98
 
113
99
  ```bash
114
- pip install mangobrain
100
+ pip install mango-brain
115
101
  ```
116
102
 
117
103
  Lightweight install (~50MB). PyTorch and the embedding engine are installed in the next step, optimized for your hardware.
@@ -142,7 +128,7 @@ Open Claude Code in your project and paste:
142
128
  Install MangoBrain for this project.
143
129
  IMPORTANT: Use Python 3.11 or higher. Check available versions first (python --version,
144
130
  py -3.12 --version, python3.12 --version, etc.) and use the correct one for pip install.
145
- Run: pip install mangobrain (using Python >= 3.11's pip)
131
+ Run: pip install mango-brain (using Python >= 3.11's pip)
146
132
  Then run: mangobrain install
147
133
  Then run: mangobrain serve --api (in background)
148
134
  Then tell me to open http://localhost:3101 and to restart Claude Code.
@@ -15,6 +15,7 @@
15
15
 
16
16
  <p align="center">
17
17
  <a href="https://pypi.org/project/mangobrain/"><img src="https://img.shields.io/pypi/v/mangobrain?style=flat-square&color=7c3aed&label=PyPI" /></a>
18
+ <img src="https://img.shields.io/badge/v3.2.2-7c3aed?style=flat-square" />
18
19
  <img src="https://img.shields.io/badge/python-3.11+-blue?style=flat-square&logo=python&logoColor=white" />
19
20
  <img src="https://img.shields.io/badge/MCP-compatible-8A2BE2?style=flat-square" />
20
21
  <img src="https://img.shields.io/badge/license-MIT-green?style=flat-square" />
@@ -49,33 +50,18 @@ After 500+ memories across two real projects, session 50 is genuinely better tha
49
50
 
50
51
  ## How it works
51
52
 
52
- ```mermaid
53
- flowchart LR
54
- DISCUSS["/discuss\nPlan with memory"] -->|task.md| TASK["/task"]
55
-
56
- subgraph agents ["4 specialized agents"]
57
- direction TB
58
- ANALYZER["Analyzer\nExplores code + recalls memory"]
59
- EXECUTOR["Executor\nWrites code — no memory, 100% focused"]
60
- VERIFIER["Verifier\nQA + checks known issues"]
61
- MEMMGR["Mem-manager\nCaptures knowledge at close"]
62
- end
63
-
64
- TASK --> agents
65
- MEMMGR -->|saves| MEMORY[("Memory")]
66
- MEMORY -.->|"recalls"| ANALYZER
67
- MEMORY -.->|"recalls"| VERIFIER
68
- MEMORY -->|"next session"| DISCUSS
69
- ```
70
-
71
- **The closed loop:** work produces knowledge, knowledge improves work.
53
+ <p align="center">
54
+ <img src="assets/workflow.svg" alt="MangoBrain Workflow" width="800" />
55
+ </p>
72
56
 
73
- | Phase | What happens |
74
- |-------|-------------|
75
- | `/discuss` | You describe what to build. Claude recalls past decisions, known bugs, patterns. Analyzers explore the codebase *and* memory. Output: `task.md`. |
76
- | `/task` | 4 agents execute with strict roles. The **analyzer** checks memory for gotchas. The **executor** writes code (no memory access — 100% focused). The **verifier** recalls known issues before shipping. |
77
- | `close` | The **mem-manager** runs automatically. Captures decisions, bugs found, patterns learned. Zero effort. |
78
- | `next session` | Memory surfaces relevant knowledge. The loop repeats each cycle smarter than the last. |
57
+ | | What happens | Codebase | Memory |
58
+ |---|---|---|---|
59
+ | **`/discuss`** | You explain the task. Claude explores code, recalls past decisions, brainstorms with full context. Output: `task.md`. | reads | reads |
60
+ | **Analyzer** | Deep analysis of the areas involved. Surfaces gotchas from memory before any code is written. | reads | reads |
61
+ | **Executor** | Writes code 100% focused on implementation. No memory access by design. | writes | — |
62
+ | **Verifier** | Runs tests, checks quality, recalls known issues from memory before shipping. | reads | reads |
63
+ | **Mem-manager** | Captures decisions, bugs found, patterns learned. Zero effort from you. | — | **writes** |
64
+ | **Next session** | `/discuss` starts with everything the last cycle learned. The loop repeats — each cycle smarter. | | reads |
79
65
 
80
66
  ---
81
67
 
@@ -84,7 +70,7 @@ flowchart LR
84
70
  ### 1. Install
85
71
 
86
72
  ```bash
87
- pip install mangobrain
73
+ pip install mango-brain
88
74
  ```
89
75
 
90
76
  Lightweight install (~50MB). PyTorch and the embedding engine are installed in the next step, optimized for your hardware.
@@ -115,7 +101,7 @@ Open Claude Code in your project and paste:
115
101
  Install MangoBrain for this project.
116
102
  IMPORTANT: Use Python 3.11 or higher. Check available versions first (python --version,
117
103
  py -3.12 --version, python3.12 --version, etc.) and use the correct one for pip install.
118
- Run: pip install mangobrain (using Python >= 3.11's pip)
104
+ Run: pip install mango-brain (using Python >= 3.11's pip)
119
105
  Then run: mangobrain install
120
106
  Then run: mangobrain serve --api (in background)
121
107
  Then tell me to open http://localhost:3101 and to restart Claude Code.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mango-brain
3
- Version: 3.2.1
3
+ Version: 3.2.3
4
4
  Summary: The learning layer for Claude Code — persistent associative memory + development workflow. Claude Code gets smarter the longer you use it.
5
5
  Author-email: Federico Anastasi <federico.anastasi@outlook.com>
6
6
  License: MIT
@@ -42,6 +42,7 @@ Requires-Dist: scipy>=1.12; extra == "dev"
42
42
 
43
43
  <p align="center">
44
44
  <a href="https://pypi.org/project/mangobrain/"><img src="https://img.shields.io/pypi/v/mangobrain?style=flat-square&color=7c3aed&label=PyPI" /></a>
45
+ <img src="https://img.shields.io/badge/v3.2.2-7c3aed?style=flat-square" />
45
46
  <img src="https://img.shields.io/badge/python-3.11+-blue?style=flat-square&logo=python&logoColor=white" />
46
47
  <img src="https://img.shields.io/badge/MCP-compatible-8A2BE2?style=flat-square" />
47
48
  <img src="https://img.shields.io/badge/license-MIT-green?style=flat-square" />
@@ -76,33 +77,18 @@ After 500+ memories across two real projects, session 50 is genuinely better tha
76
77
 
77
78
  ## How it works
78
79
 
79
- ```mermaid
80
- flowchart LR
81
- DISCUSS["/discuss\nPlan with memory"] -->|task.md| TASK["/task"]
82
-
83
- subgraph agents ["4 specialized agents"]
84
- direction TB
85
- ANALYZER["Analyzer\nExplores code + recalls memory"]
86
- EXECUTOR["Executor\nWrites code — no memory, 100% focused"]
87
- VERIFIER["Verifier\nQA + checks known issues"]
88
- MEMMGR["Mem-manager\nCaptures knowledge at close"]
89
- end
90
-
91
- TASK --> agents
92
- MEMMGR -->|saves| MEMORY[("Memory")]
93
- MEMORY -.->|"recalls"| ANALYZER
94
- MEMORY -.->|"recalls"| VERIFIER
95
- MEMORY -->|"next session"| DISCUSS
96
- ```
97
-
98
- **The closed loop:** work produces knowledge, knowledge improves work.
80
+ <p align="center">
81
+ <img src="assets/workflow.svg" alt="MangoBrain Workflow" width="800" />
82
+ </p>
99
83
 
100
- | Phase | What happens |
101
- |-------|-------------|
102
- | `/discuss` | You describe what to build. Claude recalls past decisions, known bugs, patterns. Analyzers explore the codebase *and* memory. Output: `task.md`. |
103
- | `/task` | 4 agents execute with strict roles. The **analyzer** checks memory for gotchas. The **executor** writes code (no memory access — 100% focused). The **verifier** recalls known issues before shipping. |
104
- | `close` | The **mem-manager** runs automatically. Captures decisions, bugs found, patterns learned. Zero effort. |
105
- | `next session` | Memory surfaces relevant knowledge. The loop repeats each cycle smarter than the last. |
84
+ | | What happens | Codebase | Memory |
85
+ |---|---|---|---|
86
+ | **`/discuss`** | You explain the task. Claude explores code, recalls past decisions, brainstorms with full context. Output: `task.md`. | reads | reads |
87
+ | **Analyzer** | Deep analysis of the areas involved. Surfaces gotchas from memory before any code is written. | reads | reads |
88
+ | **Executor** | Writes code 100% focused on implementation. No memory access by design. | writes | — |
89
+ | **Verifier** | Runs tests, checks quality, recalls known issues from memory before shipping. | reads | reads |
90
+ | **Mem-manager** | Captures decisions, bugs found, patterns learned. Zero effort from you. | — | **writes** |
91
+ | **Next session** | `/discuss` starts with everything the last cycle learned. The loop repeats — each cycle smarter. | | reads |
106
92
 
107
93
  ---
108
94
 
@@ -111,7 +97,7 @@ flowchart LR
111
97
  ### 1. Install
112
98
 
113
99
  ```bash
114
- pip install mangobrain
100
+ pip install mango-brain
115
101
  ```
116
102
 
117
103
  Lightweight install (~50MB). PyTorch and the embedding engine are installed in the next step, optimized for your hardware.
@@ -142,7 +128,7 @@ Open Claude Code in your project and paste:
142
128
  Install MangoBrain for this project.
143
129
  IMPORTANT: Use Python 3.11 or higher. Check available versions first (python --version,
144
130
  py -3.12 --version, python3.12 --version, etc.) and use the correct one for pip install.
145
- Run: pip install mangobrain (using Python >= 3.11's pip)
131
+ Run: pip install mango-brain (using Python >= 3.11's pip)
146
132
  Then run: mangobrain install
147
133
  Then run: mangobrain serve --api (in background)
148
134
  Then tell me to open http://localhost:3101 and to restart Claude Code.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "mango-brain"
7
- version = "3.2.1"
7
+ version = "3.2.3"
8
8
  description = "The learning layer for Claude Code — persistent associative memory + development workflow. Claude Code gets smarter the longer you use it."
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
@@ -445,10 +445,23 @@ def _setup_mcp_json(project_path: Path) -> None:
445
445
 
446
446
 
447
447
  def _patch_claude_md(project_path: Path, project_name: str) -> None:
448
- """Add MangoBrain section to project's CLAUDE.md if not already present."""
449
- claude_md = project_path / "CLAUDE.md"
448
+ """Add MangoBrain section to project's CLAUDE.md if not already present.
449
+
450
+ Searches for CLAUDE.md in order: .claude/CLAUDE.md, then root CLAUDE.md.
451
+ Patches whichever is found first. Creates root CLAUDE.md only if neither exists.
452
+ """
453
+ claude_md_inner = project_path / ".claude" / "CLAUDE.md"
454
+ claude_md_root = project_path / "CLAUDE.md"
450
455
  marker = "## MangoBrain"
451
456
 
457
+ # Find existing CLAUDE.md — prefer .claude/ over root
458
+ if claude_md_inner.exists():
459
+ claude_md = claude_md_inner
460
+ elif claude_md_root.exists():
461
+ claude_md = claude_md_root
462
+ else:
463
+ claude_md = claude_md_root # Create at root if neither exists
464
+
452
465
  if claude_md.exists():
453
466
  content = claude_md.read_text(encoding="utf-8")
454
467
  if marker in content:
File without changes
File without changes
File without changes
File without changes