@sugar-crash-studios/vibe-forge 0.4.0

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 (201) hide show
  1. package/.claude/commands/clear-attention.md +63 -0
  2. package/.claude/commands/compact-context.md +52 -0
  3. package/.claude/commands/configure-vcs.md +102 -0
  4. package/.claude/commands/forge.md +171 -0
  5. package/.claude/commands/need-help.md +77 -0
  6. package/.claude/commands/update-status.md +64 -0
  7. package/.claude/commands/worker-loop.md +106 -0
  8. package/.claude/hooks/worker-loop.js +198 -0
  9. package/.claude/scripts/setup-worker-loop.sh +45 -0
  10. package/.claude/settings.local.json +46 -0
  11. package/LICENSE +21 -0
  12. package/README.md +238 -0
  13. package/agents/aegis/personality.md +294 -0
  14. package/agents/anvil/personality.md +276 -0
  15. package/agents/architect/personality.md +258 -0
  16. package/agents/crucible/personality.md +360 -0
  17. package/agents/ember/personality.md +291 -0
  18. package/agents/forge-master/capabilities.md +144 -0
  19. package/agents/forge-master/context-template.md +128 -0
  20. package/agents/forge-master/personality.md +138 -0
  21. package/agents/furnace/personality.md +340 -0
  22. package/agents/herald/personality.md +247 -0
  23. package/agents/loki/personality.md +108 -0
  24. package/agents/oracle/personality.md +283 -0
  25. package/agents/pixel/personality.md +113 -0
  26. package/agents/planning-hub/personality.md +320 -0
  27. package/agents/scribe/personality.md +251 -0
  28. package/agents/temper/personality.md +218 -0
  29. package/bin/cli.js +375 -0
  30. package/bin/dashboard/api/agents.js +333 -0
  31. package/bin/dashboard/api/dispatch.js +483 -0
  32. package/bin/dashboard/api/tasks.js +416 -0
  33. package/bin/dashboard/frontend/index.html +13 -0
  34. package/bin/dashboard/frontend/package.json +16 -0
  35. package/bin/dashboard/frontend/src/App.svelte +222 -0
  36. package/bin/dashboard/frontend/src/app.css +1777 -0
  37. package/bin/dashboard/frontend/src/lib/components/AgentCard.svelte +60 -0
  38. package/bin/dashboard/frontend/src/lib/components/AgentsPanel.svelte +57 -0
  39. package/bin/dashboard/frontend/src/lib/components/DispatchModal.svelte +180 -0
  40. package/bin/dashboard/frontend/src/lib/components/Footer.svelte +33 -0
  41. package/bin/dashboard/frontend/src/lib/components/Header.svelte +84 -0
  42. package/bin/dashboard/frontend/src/lib/components/IssueCard.svelte +33 -0
  43. package/bin/dashboard/frontend/src/lib/components/IssuesPanel.svelte +73 -0
  44. package/bin/dashboard/frontend/src/lib/components/KeyboardShortcutsModal.svelte +108 -0
  45. package/bin/dashboard/frontend/src/lib/components/MobileTabs.svelte +52 -0
  46. package/bin/dashboard/frontend/src/lib/components/NotificationCard.svelte +60 -0
  47. package/bin/dashboard/frontend/src/lib/components/NotificationsPanel.svelte +44 -0
  48. package/bin/dashboard/frontend/src/lib/components/TaskCard.svelte +63 -0
  49. package/bin/dashboard/frontend/src/lib/components/TasksPanel.svelte +82 -0
  50. package/bin/dashboard/frontend/src/lib/components/Toast.svelte +45 -0
  51. package/bin/dashboard/frontend/src/lib/stores/agents.js +34 -0
  52. package/bin/dashboard/frontend/src/lib/stores/issues.js +54 -0
  53. package/bin/dashboard/frontend/src/lib/stores/notifications.js +48 -0
  54. package/bin/dashboard/frontend/src/lib/stores/tasks.js +63 -0
  55. package/bin/dashboard/frontend/src/lib/stores/theme.js +33 -0
  56. package/bin/dashboard/frontend/src/lib/stores/toast.js +35 -0
  57. package/bin/dashboard/frontend/src/lib/stores/ui.js +25 -0
  58. package/bin/dashboard/frontend/src/lib/stores/voice.js +275 -0
  59. package/bin/dashboard/frontend/src/lib/stores/websocket.js +295 -0
  60. package/bin/dashboard/frontend/src/lib/utils/api.js +101 -0
  61. package/bin/dashboard/frontend/src/lib/utils/formatters.js +54 -0
  62. package/bin/dashboard/frontend/src/main.js +9 -0
  63. package/bin/dashboard/frontend/svelte.config.js +5 -0
  64. package/bin/dashboard/frontend/vite.config.js +20 -0
  65. package/bin/dashboard/public/assets/index-DnfVj9Ce.css +1 -0
  66. package/bin/dashboard/public/assets/index-Ze5h0kXQ.js +2 -0
  67. package/bin/dashboard/public/index.html +14 -0
  68. package/bin/dashboard/server.js +566 -0
  69. package/bin/forge-daemon.sh +463 -0
  70. package/bin/forge-setup.sh +645 -0
  71. package/bin/forge-spawn.sh +164 -0
  72. package/bin/forge.cmd +83 -0
  73. package/bin/forge.sh +533 -0
  74. package/bin/lib/agents.sh +177 -0
  75. package/bin/lib/colors.sh +44 -0
  76. package/bin/lib/config.sh +347 -0
  77. package/bin/lib/constants.sh +241 -0
  78. package/bin/lib/daemon/display.sh +128 -0
  79. package/bin/lib/daemon/notifications.sh +263 -0
  80. package/bin/lib/daemon/routing.sh +77 -0
  81. package/bin/lib/daemon/state.sh +115 -0
  82. package/bin/lib/daemon/sync.sh +95 -0
  83. package/bin/lib/database.sh +310 -0
  84. package/bin/lib/heimdall-setup.js +113 -0
  85. package/bin/lib/heimdall.js +265 -0
  86. package/bin/lib/json.sh +264 -0
  87. package/bin/lib/terminal.js +451 -0
  88. package/bin/lib/util.sh +126 -0
  89. package/bin/lib/vcs.js +349 -0
  90. package/config/agent-manifest.yaml +203 -0
  91. package/config/agents.json +168 -0
  92. package/config/task-template.md +159 -0
  93. package/config/task-types.yaml +106 -0
  94. package/context/agent-status/aegis.json +7 -0
  95. package/context/agent-status/anvil.json +7 -0
  96. package/context/agent-status/architect.json +7 -0
  97. package/context/agent-status/crucible.json +7 -0
  98. package/context/agent-status/ember.json +7 -0
  99. package/context/agent-status/furnace.json +7 -0
  100. package/context/agent-status/loki.json +7 -0
  101. package/context/agent-status/oracle.json +7 -0
  102. package/context/agent-status/pixel.json +7 -0
  103. package/context/agent-status/planning-hub.json +7 -0
  104. package/context/agent-status/scribe.json +7 -0
  105. package/context/agent-status/temper.json +7 -0
  106. package/context/feature-brainstorm.md +426 -0
  107. package/context/forge-state.yaml +19 -0
  108. package/context/modern-conventions.md +129 -0
  109. package/context/project-context-template.md +122 -0
  110. package/context/project-context.md +122 -0
  111. package/docs/TODO.md +150 -0
  112. package/docs/agents.md +409 -0
  113. package/docs/architecture/decisions/ADR-001-daemon-modularization.md +122 -0
  114. package/docs/architecture/vibe-lab-integration.md +684 -0
  115. package/docs/architecture.md +194 -0
  116. package/docs/bmad-gap-analysis-2026-03-31.md +444 -0
  117. package/docs/cleanup-workflow.md +329 -0
  118. package/docs/commands.md +451 -0
  119. package/docs/dashboard-mockup.html +989 -0
  120. package/docs/getting-started.md +261 -0
  121. package/docs/integration/forge-ownership-policy.md +112 -0
  122. package/docs/npm-publishing.md +132 -0
  123. package/docs/roadmap-2026.md +519 -0
  124. package/docs/security.md +144 -0
  125. package/docs/wireframes/dashboard-mvp.md +1164 -0
  126. package/docs/workflows/README.md +32 -0
  127. package/docs/workflows/azure-devops.md +108 -0
  128. package/docs/workflows/bitbucket.md +104 -0
  129. package/docs/workflows/git-only.md +130 -0
  130. package/docs/workflows/gitea.md +168 -0
  131. package/docs/workflows/github.md +103 -0
  132. package/docs/workflows/gitlab.md +105 -0
  133. package/docs/workflows.md +454 -0
  134. package/package.json +73 -0
  135. package/tasks/completed/ARCH-001-duplicate-agent-config.md +121 -0
  136. package/tasks/completed/ARCH-002-mixed-bash-node-implementation.md +88 -0
  137. package/tasks/completed/ARCH-003-worker-loop-hook-duplication.md +77 -0
  138. package/tasks/completed/ARCH-009-test-organization.md +78 -0
  139. package/tasks/completed/ARCH-011-jq-vs-nodejs-json.md +94 -0
  140. package/tasks/completed/ARCH-012-tmp-files-in-root.md +71 -0
  141. package/tasks/completed/ARCH-013-exit-code-constants.md +65 -0
  142. package/tasks/completed/ARCH-014-sed-incompatibility.md +96 -0
  143. package/tasks/completed/ARCH-015-docs-todo-tracking.md +83 -0
  144. package/tasks/completed/BUG-dash-001-tasks-filter-error.md +31 -0
  145. package/tasks/completed/BUG-dash-002-agents-unknown.md +41 -0
  146. package/tasks/completed/CLEAN-001.md +38 -0
  147. package/tasks/completed/CLEAN-002.md +43 -0
  148. package/tasks/completed/CLEAN-003.md +47 -0
  149. package/tasks/completed/CLEAN-004.md +56 -0
  150. package/tasks/completed/CLEAN-005.md +75 -0
  151. package/tasks/completed/CLEAN-006.md +47 -0
  152. package/tasks/completed/CLEAN-007.md +34 -0
  153. package/tasks/completed/CLEAN-008.md +49 -0
  154. package/tasks/completed/CLEAN-012.md +58 -0
  155. package/tasks/completed/CLEAN-013.md +45 -0
  156. package/tasks/completed/FEATURE-001a-dashboard-wireframes.md +162 -0
  157. package/tasks/completed/IMPL-007a-daemon-notifications-module.md +82 -0
  158. package/tasks/completed/IMPL-007b-daemon-sync-module.md +71 -0
  159. package/tasks/completed/IMPL-007c-daemon-state-module.md +80 -0
  160. package/tasks/completed/IMPL-007d-daemon-routing-module.md +77 -0
  161. package/tasks/completed/IMPL-007e-daemon-display-module.md +77 -0
  162. package/tasks/completed/IMPL-007f-daemon-integration.md +124 -0
  163. package/tasks/completed/PLAT-1-heimdall.md +420 -0
  164. package/tasks/completed/SEC-001-sql-injection-fix.md +58 -0
  165. package/tasks/completed/SEC-002-notification-injection-fix.md +45 -0
  166. package/tasks/completed/SEC-003-eval-injection-fix.md +54 -0
  167. package/tasks/completed/SEC-004-pid-race-condition-fix.md +49 -0
  168. package/tasks/completed/SEC-005-worker-loop-path-fix.md +51 -0
  169. package/tasks/completed/SEC-006-eval-agent-names.md +55 -0
  170. package/tasks/completed/SEC-007-spawn-escaping.md +67 -0
  171. package/tasks/completed/TASK-DASH-001-server-infrastructure.md +185 -0
  172. package/tasks/completed/TASK-anvil-001-dashboard-frontend.md +133 -0
  173. package/tasks/completed/review-bmad-aegis.md +89 -0
  174. package/tasks/completed/review-bmad-anvil.md +80 -0
  175. package/tasks/completed/review-bmad-crucible.md +81 -0
  176. package/tasks/completed/review-bmad-ember.md +90 -0
  177. package/tasks/completed/review-bmad-furnace.md +79 -0
  178. package/tasks/completed/review-bmad-pixel.md +82 -0
  179. package/tasks/completed/review-bmad-scribe.md +92 -0
  180. package/tasks/completed/review-bmad-sentinel.md +83 -0
  181. package/tasks/pending/ARCH-004-git-bash-detection-duplication.md +72 -0
  182. package/tasks/pending/ARCH-005-missing-src-directory.md +95 -0
  183. package/tasks/pending/ARCH-006-task-template-location.md +64 -0
  184. package/tasks/pending/ARCH-008-forge-master-vs-hub.md +81 -0
  185. package/tasks/pending/ARCH-010-missing-index-files.md +84 -0
  186. package/tasks/pending/CLEAN-009.md +31 -0
  187. package/tasks/pending/CLEAN-010.md +30 -0
  188. package/tasks/pending/CLEAN-011.md +30 -0
  189. package/tasks/pending/CLEAN-014.md +32 -0
  190. package/tasks/pending/DESIGN-dash-001-layout-review.md +45 -0
  191. package/tasks/pending/FEATURE-001-dashboard-mvp.md +268 -0
  192. package/tasks/review/ARCH-007-daemon-monolith.md +162 -0
  193. package/tasks/review/bmad-review-aegis.md +349 -0
  194. package/tasks/review/bmad-review-anvil.md +259 -0
  195. package/tasks/review/bmad-review-crucible.md +277 -0
  196. package/tasks/review/bmad-review-ember.md +307 -0
  197. package/tasks/review/bmad-review-furnace.md +285 -0
  198. package/tasks/review/bmad-review-pixel.md +329 -0
  199. package/tasks/review/bmad-review-scribe.md +361 -0
  200. package/tasks/review/bmad-review-sentinel.md +242 -0
  201. package/tasks/review/task-001.md +78 -0
@@ -0,0 +1,329 @@
1
+ # BMAD vs Vibe Forge: UX & Developer Experience Review
2
+
3
+ **Reviewer:** Pixel - UX Designer
4
+ **Date:** 2026-03-31
5
+ **Task:** review-bmad-pixel
6
+
7
+ ---
8
+
9
+ ## Executive Summary
10
+
11
+ Let me paint you a picture. Two developers each pick up an AI orchestration framework on a Monday morning. One follows BMAD's structured phase model and finds a well-lit path with clear signposts. The other opens Vibe Forge and meets a team of vivid personalities - but sometimes has to hunt for the on-ramp. Both arrive at productivity, but the journey feels different.
12
+
13
+ After reviewing both frameworks through the lens of developer experience, mental models, and UX design philosophy, here's my honest assessment: **BMAD wins on structured clarity and onboarding; Vibe Forge wins on visual richness, personality, and real-time feedback.** Neither is complete without borrowing from the other.
14
+
15
+ ---
16
+
17
+ ## Framework Quick Reference
18
+
19
+ | Dimension | BMAD-METHOD | Vibe Forge |
20
+ |---|---|---|
21
+ | Core metaphor | Agile phases + specialist consultants | Forge / workshop + worker agents |
22
+ | Agent model | 9 named personas with trigger codes | 13 agents across hub/worker/specialist roles |
23
+ | Onboarding | `npx bmad-method install` (interactive) | `npx vibe-forge init` (then manual steps) |
24
+ | Mental model | Linear phases: Analysis > Planning > Solutioning > Implementation | Hub + distributed workers + task lifecycle |
25
+ | Task tracking | `sprint-status.yaml` + markdown files | `tasks/pending/in-progress/completed/` folders |
26
+ | Visual dashboard | None - file-based only | Web UI with WebSocket real-time updates |
27
+ | IDE integration | Claude Code, Cursor, Windsurf (portability!) | Claude Code only |
28
+ | UX design support | Sally (`bmad-ux-designer`) - 1 trigger `CU` | Pixel (UX Designer) - full personality + workflow |
29
+ | Session model | Fresh chat per workflow (intentional) | Persistent agent sessions per terminal tab |
30
+
31
+ ---
32
+
33
+ ## 1. Developer Experience (DX): Day-to-Day Feel
34
+
35
+ ### BMAD
36
+
37
+ Put yourself in the shoes of a new developer. You run `npx bmad-method install`, answer a few interactive prompts, and you're set up. Then you type `bmad-help` and the framework tells you **exactly what to do next** - it reads your project state and gives context-aware guidance. This is exceptional DX.
38
+
39
+ The trigger code system (`CP`, `DS`, `CR`, `CU`) is like a keyboard-shortcut layer on top of natural conversation. Once memorized, it's fast. But before memorization, it's a vocabulary wall. First-time users will need to consult the agent's menu constantly.
40
+
41
+ **Friction points:**
42
+ - Every workflow requires a fresh chat session. The docs say this is intentional (context window management), but cognitively, it feels like being asked to wake your entire team up from scratch every time you switch tasks. It's a tax the user pays repeatedly.
43
+ - No cross-session memory outside of artifact files. If you're mid-flow and something interrupts you, you must re-orient the agent by re-providing context.
44
+ - Workflow names like `bmad-check-implementation-readiness` are descriptive but verbose - not scannable at a glance.
45
+ - The UX designer (Sally) has only ONE trigger (`CU`). Compare that to Paige the Technical Writer who has 6. UX design as a first-class concern has been clearly under-invested.
46
+
47
+ **Delights:**
48
+ - `bmad-help` is a genuinely brilliant UX decision. A context-aware guide that runs after every workflow removes the "what do I do next?" anxiety. This is the framework's best feature.
49
+ - Adversarial review as a structured workflow pattern (not just a suggestion) creates accountability without requiring human intervention.
50
+ - The four-phase model gives developers a clear north star: even a confused new user can orient themselves by asking "which phase am I in?"
51
+
52
+ ### Vibe Forge
53
+
54
+ Now put yourself in the shoes of a developer opening Vibe Forge for the first time. The README presents a beautiful ASCII architecture diagram. You see agents with names and icons. You feel the energy of a collaborative workshop. Then... you need to set up the daemon, configure terminals, understand the task folder structure, and learn which agent to talk to when.
55
+
56
+ **Friction points:**
57
+ - The README still references Sage, Oracle, and Quartermaster - agent names that no longer exist in the current agent roster. A new developer reading the README will be confused when they don't find these agents. **This is an urgent documentation UX bug.**
58
+ - No equivalent to `bmad-help` - there's no intelligent "here's what to do next" guidance. Users must self-orient.
59
+ - The Planning Hub (multi-voice "party mode") is a genuinely creative idea, but the mental model - one session is actually 7 experts - is not obvious on first encounter. It requires reading the personality doc to understand.
60
+ - Spawning agents in terminal tabs is a delightful concept on Windows Terminal, but on other platforms, the experience degrades to "print these instructions manually." The cross-platform story is incomplete.
61
+ - The `--dangerously-skip-permissions` flag in `forge.sh` will give security-conscious developers pause, even with a comment explaining it. The comment says "see docs/security.md" but that creates a detour in the onboarding flow.
62
+
63
+ **Delights:**
64
+ - Real-time WebSocket dashboard at port 2800 (a clever nod to "forge temperature in °F 🔥") is a genuine differentiator. BMAD has no equivalent. Developers can see agent status, task progress, and forge state at a glance.
65
+ - Colored terminal tabs per agent is a beautiful micro-interaction - you know at a visual glance which terminal is which agent.
66
+ - Agent personalities are richer and more distinct than BMAD's personas. Pixel (me!) has extensive principles, expertise areas, and collaboration guidance. Sally from BMAD gets one trigger code.
67
+ - The task folder lifecycle (`pending > in-progress > completed > review > approved`) is more expressive than BMAD's `sprint-status.yaml`. The state of work is visible in the filesystem itself.
68
+
69
+ ---
70
+
71
+ ## 2. Mental Model Clarity
72
+
73
+ ### BMAD's Mental Model
74
+
75
+ > "You are always in a phase. Each phase has agents. Each agent has triggers. Artifacts from one phase feed the next."
76
+
77
+ **Clarity score: 8/10.** The four-phase model is almost universally understood from software development practice. Even a developer who has never seen BMAD before can reason: "I need to plan before I build." The phase model creates a strong scaffold for decision-making.
78
+
79
+ The agent-as-consultant metaphor is natural. You hire a specialist for a specific job, get the deliverable, and move on. This aligns with how many developers already think about their work.
80
+
81
+ ### Vibe Forge's Mental Model
82
+
83
+ > "There is a hub and there are workers. Workers pick up tasks, complete them, and wait for review. The hub coordinates."
84
+
85
+ **Clarity score: 6/10.** The forge/workshop metaphor is evocative and memorable. But the execution leaves gaps. Who is the user in this model? Sometimes they're talking to the Planning Hub team, sometimes they're reading agent output files, sometimes they're watching the dashboard. The mental model requires holding multiple contexts simultaneously.
86
+
87
+ The distinction between "Core Agents," "Worker Agents," "Planning Hub Agents," and "Specialists" adds taxonomy that isn't immediately useful to a first-timer. Compare to BMAD: every agent is just an agent with a skill. Simpler.
88
+
89
+ **The biggest model gap:** What does a developer DO when they first arrive? BMAD answers this with `bmad-help`. Vibe Forge doesn't have a first-time-user welcome guide embedded in the framework experience.
90
+
91
+ ---
92
+
93
+ ## 3. Command Design
94
+
95
+ ### BMAD
96
+
97
+ Trigger codes are discoverable in-context (each agent shows its menu), but they're opaque to outsiders. `CP` means Create PRD - you'd never guess that from the letters alone. The system rewards power users and penalizes newcomers.
98
+
99
+ The four-type skill taxonomy (Agent Skills, Workflow Skills, Task Skills, Tool Skills) is an elegant architecture internally, but it's not exposed meaningfully to users. From a developer's perspective, it all just looks like "invoke this skill."
100
+
101
+ ### Vibe Forge
102
+
103
+ CLI commands in `forge.sh` follow familiar Unix patterns (`forge init`, `forge start`, `forge status`, `forge help`). This is more intuitive to discover than BMAD's trigger codes. A developer can read `forge help` and understand the system.
104
+
105
+ The `/forge` slash commands in Claude Code are clear and predictable. However, the command documentation in the README needs updating to match the current agent roster and capabilities.
106
+
107
+ **Gap:** Vibe Forge lacks BMAD's in-context command discovery. When you open a Planning Hub session, there's no menu of available actions. You need to already know what to ask for.
108
+
109
+ ---
110
+
111
+ ## 4. Dashboard UX
112
+
113
+ ### BMAD
114
+
115
+ No dashboard. All visibility is through files and conversational feedback in the IDE. This is deliberately minimal - BMAD assumes the IDE is the primary interface and doesn't add UI complexity.
116
+
117
+ For solo developers, this works. For teams, or for anyone who wants a peripheral display of project state, it's a significant gap.
118
+
119
+ ### Vibe Forge
120
+
121
+ The web dashboard at port 2800 with WebSocket real-time updates is a meaningful differentiator. The use of WebSockets means status changes push to the browser immediately - this is the right technical choice. The frontend uses a component-based architecture (`src/main.js`, `public/` static files), which suggests it can be extended.
122
+
123
+ **Current state concerns (based on file structure review):**
124
+ - The dashboard exists but its completeness is unclear from the file structure alone. The key question is: does it show what a developer actually needs to see? Agent status, task queue, recent activity?
125
+ - An empty state and loading state matter as much as the connected state. What does a developer see before the daemon is running?
126
+ - The dashboard should be the "front door" to the forge - but it's not mentioned prominently in onboarding. You discover it exists by reading the server.js file, not the README.
127
+
128
+ **Recommendation:** The dashboard needs to be the hero feature in the README. "Open your browser to http://localhost:2800 and watch your forge in real time" should be step two of onboarding.
129
+
130
+ ---
131
+
132
+ ## 5. Onboarding Flow
133
+
134
+ ### BMAD
135
+
136
+ ```
137
+ npx bmad-method install
138
+ → Interactive prompts (directory, modules, IDE)
139
+ → Files generated in _bmad/ and _bmad-output/
140
+ → "Run bmad-help to get started"
141
+ → bmad-help detects project state → tells you exactly what to do
142
+ ```
143
+
144
+ **Time to first value: ~5 minutes.** The flow is linear, clear, and self-correcting. If you get lost, `bmad-help` finds you.
145
+
146
+ One friction point: fresh chat per workflow is an imposed behavioral constraint that must be internalized by the user. There's no mechanism to enforce it - just a documented rule. Rule-enforcement via documentation alone creates failure modes.
147
+
148
+ ### Vibe Forge
149
+
150
+ ```
151
+ npx vibe-forge init (OR: git clone + manual setup)
152
+ → Clone into _vibe-forge/
153
+ → Run forge-setup.sh
154
+ → Start Planning Hub with forge.sh
155
+ → (Separately) start the dashboard
156
+ → (Separately) learn the task folder structure
157
+ → (Separately) learn how to spawn worker agents
158
+ ```
159
+
160
+ **Time to first value: ~15-30 minutes.** Each step works, but the journey requires more user-directed exploration. The lack of a state-aware "what to do next" guide means developers who get confused stay confused.
161
+
162
+ **Key gap:** No project-context.md equivalent as a structured first artifact. BMAD's `bmad-generate-project-context` creates a living constitution for the project. Vibe Forge's `context/project-context.md` exists but isn't generated by the framework - it's a template that the developer fills in manually.
163
+
164
+ ---
165
+
166
+ ## 6. Error Messages and Feedback
167
+
168
+ ### BMAD
169
+
170
+ Feedback is entirely conversational. When something goes wrong (wrong phase, missing artifact, etc.), the agent in-character explains the issue. This is warm and contextual, but it requires the AI to consistently identify and explain errors - which isn't guaranteed.
171
+
172
+ The adversarial review pattern is elegant error-surface design: you force the system to find problems before shipping. This is a feedback mechanism built into the workflow itself.
173
+
174
+ ### Vibe Forge
175
+
176
+ The daemon and agent status files provide programmatic feedback. An agent can signal `blocked` status and file an attention request in `tasks/attention/`. This is a more structured approach than BMAD's conversational feedback.
177
+
178
+ The WebSocket dashboard can show real-time error states - a significant advantage. If Furnace errors out, the dashboard can show it immediately without requiring a developer to poll a YAML file.
179
+
180
+ **Gap:** The error handling story for end-users (as opposed to the framework daemon) isn't fully visible from the codebase. What happens when `forge.sh` fails? What happens when an agent drops its status file? What does a confused new developer see?
181
+
182
+ ---
183
+
184
+ ## 7. Agent Personality UX
185
+
186
+ ### BMAD
187
+
188
+ Agents have human names and defined personas (Mary the Analyst, John the PM, Winston the Architect). This creates a relatable team feel. The personas are functional identifiers more than true characters - they ground interactions in real-world role archetypes.
189
+
190
+ The trigger-code menus that agents present create a consistent UX pattern: every agent says "I'm [name], here's what I can do." This is like a good menu in a restaurant - you know what's available.
191
+
192
+ **Weakness:** Personas are thin. Winston the Architect isn't a character with opinions and principles - he's a role with trigger codes. The emotional texture of "working with a team" is more implied than delivered.
193
+
194
+ ### Vibe Forge
195
+
196
+ Agents are richly defined. Pixel (my own definition) has: core principles, expertise areas, a working style, collaboration protocols, communication patterns, and memorable trait examples. This is a personality system, not just a role description.
197
+
198
+ The Planning Hub "party mode" with multiple distinct expert voices is a genuinely creative UX concept. When 7 different perspectives engage with a single question, the conversation feels like a real design review. This is Vibe Forge's strongest personality UX advantage.
199
+
200
+ **Weakness:** Rich personalities require more reading to internalize. A developer has to read agent files to understand what each agent will and won't do. BMAD's menu-driven discovery is more immediately actionable.
201
+
202
+ ---
203
+
204
+ ## 8. UX Project Support
205
+
206
+ ### BMAD
207
+
208
+ Sally the UX Designer has one trigger: `CU` (Create UX Design). That's it. No iteration workflow, no design system support, no accessibility review, no usability testing protocol. UX design is treated as a single one-shot deliverable that happens between PRD and architecture.
209
+
210
+ For a framework that positions itself as supporting AI-driven product development, this is a meaningful gap. Any product with a UI deserves more UX design process than a single workflow step.
211
+
212
+ ### Vibe Forge
213
+
214
+ Pixel (me!) has a comprehensive UX design practice built into the agent personality:
215
+ - User research and journey mapping
216
+ - Wireframes, mockups, prototypes
217
+ - Accessibility (WCAG compliance as baseline)
218
+ - Design systems and component libraries
219
+ - Code review with UX criteria
220
+ - Collaboration protocols with Anvil (implementation) and Crucible (testing)
221
+
222
+ However: **a personality is not a workflow.** Vibe Forge has a rich UX agent but no explicit UX workflow steps in the task lifecycle. There's no "UX review gate" before implementation, no accessibility checkpoint, no design spec format. Sally has one trigger but no personality. Pixel has personality but no structured triggers.
223
+
224
+ **Both frameworks fail UX-focused projects, but in different ways.**
225
+
226
+ ---
227
+
228
+ ## Top Friction Points in Vibe Forge
229
+
230
+ ### P0 - Critical
231
+
232
+ 1. **README references non-existent agents.** Sage, Oracle, and Quartermaster appear in the README architecture diagram and agent table. These agents don't exist in the current `agents/` directory. This is a trust-destroying inconsistency for any new user. First impression = broken.
233
+
234
+ **What's actually going on:** The Planning Hub's party mode already defines 7 named expert voices - and those voices ARE the intended Sage/Oracle/Quartermaster roles under different names. The mapping:
235
+
236
+ | README ghost name | What it actually is | Standalone agent exists? |
237
+ |---|---|---|
238
+ | Sage | Architect (🏛️) | ✅ `agents/architect/` |
239
+ | Oracle | Oracle/PM (📊) - hub voice only | ❌ No standalone agent |
240
+ | Quartermaster | Also Oracle/PM - fully redundant | ❌ Doesn't exist anywhere |
241
+
242
+ **Two valid paths forward:**
243
+
244
+ - **Remove all three** from the README. Sage becomes Architect (already implemented). Quartermaster disappears - its role is covered by Oracle inside the hub. Oracle stays as a Planning Hub voice only. Simpler roster, accurate docs. Clean.
245
+
246
+ - **Implement Oracle as a standalone agent** (retire Sage and Quartermaster as names). Oracle the PM/requirements analyst is the one genuinely missing standalone agent in the current ecosystem. Every other Planning Hub voice has a standalone counterpart - Pixel, Architect, Aegis, Ember, Crucible all have `agents/` folders. Oracle is the gap. Implementing Oracle would close the most meaningful gap BMAD has over Vibe Forge (John the PM is BMAD's most-used agent), and let developers spin up a pure requirements-analysis session without needing the full hub party.
247
+
248
+ **My recommendation: implement Oracle, retire Sage and Quartermaster.** Not because the current system is broken - the hub voices work. But because Oracle as a standalone agent gives users a capability they currently can't access outside of party mode, fills the PM gap that BMAD exploits, and completes the ecosystem symmetry that the README was clearly trying to gesture at.
249
+
250
+ 2. **No "what do I do next" guidance.** Unlike `bmad-help`, Vibe Forge has no context-aware entry point. A developer arriving with no prior knowledge has to read documentation and explore files to understand their next step.
251
+
252
+ ### P1 - High Priority
253
+
254
+ 3. **Dashboard is buried, not celebrated.** The real-time web dashboard is a genuine competitive advantage. It should be the second sentence of the README, not discoverable only by reading `server.js`. "Open http://localhost:2800" should be in the Getting Started section.
255
+
256
+ 4. **Agent spawning is platform-dependent with degraded fallback.** Windows Terminal works beautifully. Everything else falls back to "print these instructions." Mac and Linux developers get a second-class experience.
257
+
258
+ 5. **Project context is manual, not generated.** The `context/project-context.md` template requires manual filling. BMAD generates this as a structured artifact via workflow. A guided `forge init` flow that walks developers through context creation would dramatically improve onboarding.
259
+
260
+ 6. **`--dangerously-skip-permissions` in `forge.sh` without inline reassurance.** Even with a comment, this flag creates friction for security-aware developers. The onboarding experience should proactively address this concern rather than linking to a separate doc.
261
+
262
+ ### P2 - Medium Priority
263
+
264
+ 7. **No task creation UX for non-technical users.** The task file format is markdown with YAML frontmatter. Creating tasks by writing files is ergonomic for engineers but creates a barrier for product managers or designers who might use the planning hub.
265
+
266
+ 8. **Planning Hub's multi-voice model is undiscoverable.** The "7 experts in one session" mental model is innovative but requires reading the personality doc to understand. A brief session intro that names the assembled experts would dramatically improve comprehension.
267
+
268
+ 9. **UX workflow has no structured checkpoints.** There is no accessibility review step, no design sign-off gate, no UX artifact format. Pixel exists as a personality but not as a workflow participant. BMAD's weakness (Sally has one trigger) is Vibe Forge's weakness too (Pixel has no triggers).
269
+
270
+ ---
271
+
272
+ ## Recommendations for Vibe Forge
273
+
274
+ ### Steal from BMAD
275
+
276
+ 1. **Build a `forge-help` command.** A context-aware "what should I do next?" command that reads `forge-state.yaml`, checks task status, and recommends the next action. This single feature would dramatically improve the onboarding experience and day-to-day DX.
277
+
278
+ 2. **Adopt BMAD's four-phase model as a conceptual layer.** Not as a strict requirement, but as an optional scaffold that developers can reference. "Are you in the planning phase or implementation phase?" gives users orientation without imposing rigid workflow.
279
+
280
+ 3. **Create a `project-context.md` generation workflow.** Walk the developer through their project's tech stack, patterns, and team during init. Generate the context file as a first-class artifact rather than a template to fill in alone.
281
+
282
+ 4. **Add in-session menus to agents.** When a developer opens a Planning Hub session, the Forge Master should announce: "Here's what we can do together: [list]. What would you like to work on?" BMAD's menu-on-open pattern is worth adopting.
283
+
284
+ ### Vibe Forge's Advantages to Double Down On
285
+
286
+ 5. **Make the dashboard the hero.** Feature it prominently in README, in onboarding, in agent intros. "Your forge is running. See it live at http://localhost:2800." This is a genuine differentiator BMAD can't match without significant investment.
287
+
288
+ 6. **Deepen the party mode UX.** The multi-voice Planning Hub is Vibe Forge's most innovative UX feature. Make it more discoverable, document it visually, give it a formal name in the README ("Team Planning Session"). This is a story worth telling.
289
+
290
+ 7. **Give Pixel structured workflow hooks.** Create explicit UX checkpoints: a `forge ux-review` command that triggers accessibility checks, usability evaluation, and design sign-off before implementation. Put UX design on equal footing with architecture and backend review in the task lifecycle.
291
+
292
+ 8. **Formalize the design-to-implementation handoff.** Create a wireframe/spec format that Pixel produces and Anvil consumes. The collaboration protocol exists in the personality docs but not in the actual workflow. Making this concrete would benefit every project with a UI.
293
+
294
+ ---
295
+
296
+ ## Comparative Scorecard
297
+
298
+ | Dimension | BMAD | Vibe Forge | Notes |
299
+ |---|---|---|---|
300
+ | Onboarding speed | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | bmad-help is a decisive advantage |
301
+ | Mental model clarity | ⭐⭐⭐⭐ | ⭐⭐⭐ | BMAD's phases are more universal |
302
+ | Command discoverability | ⭐⭐⭐ | ⭐⭐⭐⭐ | Vibe Forge's CLI is more intuitive |
303
+ | Visual feedback / dashboard | ⭐ | ⭐⭐⭐⭐⭐ | Vibe Forge has no competition here |
304
+ | Real-time status visibility | ⭐ | ⭐⭐⭐⭐⭐ | WebSocket dashboard is a differentiator |
305
+ | Agent personalities | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | Vibe Forge's richness is unmatched |
306
+ | Cross-platform support | ⭐⭐⭐⭐ | ⭐⭐⭐ | BMAD works across 3 IDEs |
307
+ | UX design support | ⭐⭐ | ⭐⭐⭐ | Both need improvement |
308
+ | Error/feedback quality | ⭐⭐⭐ | ⭐⭐⭐⭐ | File-based + WebSocket is superior |
309
+ | Documentation consistency | ⭐⭐⭐⭐ | ⭐⭐ | README agent mismatch is a real problem |
310
+ | **Overall DX** | ⭐⭐⭐⭐ | ⭐⭐⭐ | BMAD wins on clarity, Vibe Forge on richness |
311
+
312
+ ---
313
+
314
+ ## Closing Thoughts
315
+
316
+ Every framework is a UX product. Developers are users. Their first five minutes matter as much as their first five weeks.
317
+
318
+ BMAD understands this. `bmad-help` is a hug for confused developers. The phase model is a map for the lost. These are not technical features - they are empathy-driven design decisions.
319
+
320
+ Vibe Forge is more exciting. The real-time dashboard, the vivid agent personalities, the WebSocket architecture - these are the features that make people *want* to use the framework. But excitement without clarity creates abandoned tools.
321
+
322
+ The ideal framework borrows BMAD's clarity of guidance and phases, and combines it with Vibe Forge's visual richness, personality depth, and real-time feedback. Neither framework is there yet. Vibe Forge is closer to being truly delightful - it just needs to fill the onboarding gaps that are currently leaving first-time users stranded.
323
+
324
+ Fix the README agent names. Build a forge-help command. Celebrate the dashboard. Then we're in conversation with BMAD as an equal - and ahead of it where it matters most.
325
+
326
+ ---
327
+
328
+ *Reviewed by Pixel, UX Designer - Vibe Forge*
329
+ *"Every click, command, and interaction is a UX decision."*