crewswarm 0.9.2 → 0.9.3

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 (207) hide show
  1. package/README.md +22 -9
  2. package/apps/dashboard/dist/assets/{chat-core-Cx4sTxDd.js → chat-core-3KirthZA.js} +1 -1
  3. package/apps/dashboard/dist/assets/index-GSWxxEPO.js +2 -0
  4. package/apps/dashboard/dist/assets/{tab-pm-loop-tab-Bfd449B4.js → tab-pm-loop-tab-DiAPTJXu.js} +1 -1
  5. package/apps/dashboard/dist/assets/{tab-projects-tab-DhNWnlzt.js → tab-projects-tab-SFH4E--a.js} +1 -1
  6. package/apps/dashboard/dist/assets/tab-settings-tab-BselH1c0.js +1 -0
  7. package/apps/dashboard/dist/index.html +82 -11
  8. package/apps/vibe/README.md +2 -2
  9. package/apps/vibe/package.json +1 -1
  10. package/apps/vibe/server.mjs +3 -3
  11. package/crew-lead.mjs +34 -4
  12. package/lib/bridges/gateway-ws.mjs +4 -0
  13. package/lib/crew-lead/chat-handler.mjs +34 -0
  14. package/lib/crew-lead/http-server.mjs +55 -14
  15. package/lib/crew-lead/llm-caller.mjs +24 -8
  16. package/lib/crew-lead/prompts.mjs +7 -0
  17. package/lib/crew-lead/wave-dispatcher.mjs +15 -3
  18. package/lib/crew-lead/ws-router.mjs +219 -27
  19. package/lib/engines/engine-registry.mjs +9 -0
  20. package/lib/engines/rt-envelope.mjs +1 -0
  21. package/lib/engines/runners.mjs +5 -2
  22. package/lib/runtime/paths.mjs +12 -8
  23. package/package.json +35 -15
  24. package/scripts/capture-build-flow.mjs +118 -0
  25. package/scripts/coverage-report.mjs +209 -0
  26. package/scripts/coverage-summary.mjs +47 -0
  27. package/scripts/dashboard-validation.mjs +74 -0
  28. package/scripts/dashboard.mjs +560 -70
  29. package/scripts/live-bridge-matrix.mjs +79 -0
  30. package/scripts/live-cli-matrix.mjs +166 -0
  31. package/scripts/live-crewchat-check.mjs +42 -0
  32. package/scripts/live-engine-matrix.mjs +50 -0
  33. package/scripts/live-provider-failover-matrix.mjs +107 -0
  34. package/scripts/live-provider-matrix.mjs +228 -0
  35. package/scripts/restart-all-from-repo.sh +4 -4
  36. package/scripts/smoke-dispatch.mjs +4 -1
  37. package/scripts/test-blast-radius.mjs +204 -0
  38. package/scripts/test-report-summary.mjs +88 -0
  39. package/scripts/test-reporter.mjs +651 -0
  40. package/scripts/test-rerun.mjs +136 -0
  41. package/scripts/tmux-bridge +130 -0
  42. package/apps/dashboard/dist/assets/chat-core-Cx4sTxDd.js.br +0 -0
  43. package/apps/dashboard/dist/assets/cli-process-COMRNPqr.js.br +0 -0
  44. package/apps/dashboard/dist/assets/components-BS9fQjE_.js.br +0 -0
  45. package/apps/dashboard/dist/assets/core-utils-CmOkXgzi.js.br +0 -0
  46. package/apps/dashboard/dist/assets/index-CF0aJRtC.css.br +0 -0
  47. package/apps/dashboard/dist/assets/index-DnClJ1ee.js +0 -2
  48. package/apps/dashboard/dist/assets/index-DnClJ1ee.js.br +0 -0
  49. package/apps/dashboard/dist/assets/orchestration-Ca2DLWN-.js.br +0 -0
  50. package/apps/dashboard/dist/assets/setup-wizard-CA0Or47w.js.br +0 -0
  51. package/apps/dashboard/dist/assets/tab-agents-tab-BgpIsjkw.js.br +0 -0
  52. package/apps/dashboard/dist/assets/tab-comms-tab-kguqTIzD.js.br +0 -0
  53. package/apps/dashboard/dist/assets/tab-contacts-tab-DiOyMYth.js.br +0 -0
  54. package/apps/dashboard/dist/assets/tab-engines-tab-BsdZVvU0.js.br +0 -0
  55. package/apps/dashboard/dist/assets/tab-memory-tab-Cu6u13EQ.js.br +0 -0
  56. package/apps/dashboard/dist/assets/tab-models-tab-BLEjmd19.js.br +0 -0
  57. package/apps/dashboard/dist/assets/tab-pm-loop-tab-Bfd449B4.js.br +0 -0
  58. package/apps/dashboard/dist/assets/tab-projects-tab-DhNWnlzt.js.br +0 -0
  59. package/apps/dashboard/dist/assets/tab-prompts-tab-DVkUNaJd.js.br +0 -0
  60. package/apps/dashboard/dist/assets/tab-services-tab-DU_LH3uG.js.br +0 -0
  61. package/apps/dashboard/dist/assets/tab-settings-tab-Bn4nXtDe.js +0 -1
  62. package/apps/dashboard/dist/assets/tab-settings-tab-Bn4nXtDe.js.br +0 -0
  63. package/apps/dashboard/dist/assets/tab-skills-tab-BpY0uZHW.js.br +0 -0
  64. package/apps/dashboard/dist/assets/tab-spending-tab-DEccQHnt.js.br +0 -0
  65. package/apps/dashboard/dist/assets/tab-swarm-chat-tab-BNrd88-r.js.br +0 -0
  66. package/apps/dashboard/dist/assets/tab-swarm-tab-B1AcjL1W.js.br +0 -0
  67. package/apps/dashboard/dist/assets/tab-usage-tab-BIOOnB-Y.js.br +0 -0
  68. package/apps/dashboard/dist/assets/tab-waves-tab-SaJDkb4x.js.br +0 -0
  69. package/apps/dashboard/dist/assets/tab-workflows-tab-B-soSy1k.js.br +0 -0
  70. package/apps/dashboard/dist/index.html.br +0 -0
  71. package/apps/dashboard/dist/index.html.gz +0 -0
  72. package/apps/dashboard/index.html +0 -6529
  73. package/apps/dashboard/package.json +0 -15
  74. package/apps/dashboard/src/app.js +0 -2828
  75. package/apps/dashboard/src/app.js.br +0 -0
  76. package/apps/dashboard/src/app.js.gz +0 -0
  77. package/apps/dashboard/src/chat/chat-actions.js +0 -1847
  78. package/apps/dashboard/src/chat/chat-actions.js.br +0 -0
  79. package/apps/dashboard/src/chat/unified-messages.js +0 -327
  80. package/apps/dashboard/src/chat/unified-messages.js.br +0 -0
  81. package/apps/dashboard/src/cli-process.js +0 -208
  82. package/apps/dashboard/src/cli-process.js.br +0 -0
  83. package/apps/dashboard/src/cli-process.js.gz +0 -0
  84. package/apps/dashboard/src/components/active-tasks-panel.js +0 -175
  85. package/apps/dashboard/src/components/active-tasks-panel.js.br +0 -0
  86. package/apps/dashboard/src/core/api.js +0 -18
  87. package/apps/dashboard/src/core/api.js.br +0 -0
  88. package/apps/dashboard/src/core/dom.js +0 -228
  89. package/apps/dashboard/src/core/dom.js.br +0 -0
  90. package/apps/dashboard/src/core/state.js +0 -91
  91. package/apps/dashboard/src/core/state.js.br +0 -0
  92. package/apps/dashboard/src/core/task-manager.js +0 -134
  93. package/apps/dashboard/src/core/task-manager.js.br +0 -0
  94. package/apps/dashboard/src/orchestration-status.js +0 -127
  95. package/apps/dashboard/src/orchestration-status.js.br +0 -0
  96. package/apps/dashboard/src/setup-wizard.js +0 -562
  97. package/apps/dashboard/src/setup-wizard.js.br +0 -0
  98. package/apps/dashboard/src/styles.css +0 -2085
  99. package/apps/dashboard/src/styles.css.br +0 -0
  100. package/apps/dashboard/src/styles.css.gz +0 -0
  101. package/apps/dashboard/src/tabs/agents-tab.js +0 -2237
  102. package/apps/dashboard/src/tabs/agents-tab.js.br +0 -0
  103. package/apps/dashboard/src/tabs/benchmarks-tab.js +0 -229
  104. package/apps/dashboard/src/tabs/benchmarks-tab.js.br +0 -0
  105. package/apps/dashboard/src/tabs/comms-tab.js +0 -955
  106. package/apps/dashboard/src/tabs/comms-tab.js.br +0 -0
  107. package/apps/dashboard/src/tabs/contacts-tab.js +0 -654
  108. package/apps/dashboard/src/tabs/contacts-tab.js.br +0 -0
  109. package/apps/dashboard/src/tabs/engines-tab.js +0 -175
  110. package/apps/dashboard/src/tabs/engines-tab.js.br +0 -0
  111. package/apps/dashboard/src/tabs/memory-tab.js +0 -182
  112. package/apps/dashboard/src/tabs/memory-tab.js.br +0 -0
  113. package/apps/dashboard/src/tabs/models-tab.js +0 -450
  114. package/apps/dashboard/src/tabs/models-tab.js.br +0 -0
  115. package/apps/dashboard/src/tabs/pm-loop-tab.js +0 -185
  116. package/apps/dashboard/src/tabs/pm-loop-tab.js.br +0 -0
  117. package/apps/dashboard/src/tabs/projects-tab.js +0 -663
  118. package/apps/dashboard/src/tabs/projects-tab.js.br +0 -0
  119. package/apps/dashboard/src/tabs/projects-tab.js.gz +0 -0
  120. package/apps/dashboard/src/tabs/prompts-tab.js +0 -160
  121. package/apps/dashboard/src/tabs/prompts-tab.js.br +0 -0
  122. package/apps/dashboard/src/tabs/services-tab.js +0 -202
  123. package/apps/dashboard/src/tabs/services-tab.js.br +0 -0
  124. package/apps/dashboard/src/tabs/settings-tab.js +0 -861
  125. package/apps/dashboard/src/tabs/settings-tab.js.br +0 -0
  126. package/apps/dashboard/src/tabs/skills-tab.js +0 -284
  127. package/apps/dashboard/src/tabs/skills-tab.js.br +0 -0
  128. package/apps/dashboard/src/tabs/spending-tab.js +0 -173
  129. package/apps/dashboard/src/tabs/spending-tab.js.br +0 -0
  130. package/apps/dashboard/src/tabs/swarm-chat-tab.js +0 -660
  131. package/apps/dashboard/src/tabs/swarm-chat-tab.js.br +0 -0
  132. package/apps/dashboard/src/tabs/swarm-tab.js +0 -538
  133. package/apps/dashboard/src/tabs/swarm-tab.js.br +0 -0
  134. package/apps/dashboard/src/tabs/usage-tab.js +0 -390
  135. package/apps/dashboard/src/tabs/usage-tab.js.br +0 -0
  136. package/apps/dashboard/src/tabs/waves-tab.js +0 -238
  137. package/apps/dashboard/src/tabs/waves-tab.js.br +0 -0
  138. package/apps/dashboard/src/tabs/workflows-tab.js +0 -747
  139. package/apps/dashboard/src/tabs/workflows-tab.js.br +0 -0
  140. package/apps/vibe/.crew/agent-memory/pipeline.json +0 -304
  141. package/apps/vibe/.crew/cost.json +0 -17
  142. package/apps/vibe/.crew/json-parse-metrics.jsonl +0 -27
  143. package/apps/vibe/.crew/pipeline-metrics.jsonl +0 -27
  144. package/apps/vibe/.crew/pipeline-runs/pipeline-0f90c392-2425-4ae5-850c-bd9d17b1d690.jsonl +0 -5
  145. package/apps/vibe/.crew/pipeline-runs/pipeline-1c269dd9-a63f-4fba-af81-5cf08048ef06.jsonl +0 -5
  146. package/apps/vibe/.crew/pipeline-runs/pipeline-288a7765-da24-4a22-89bc-1f3cc9b0562c.jsonl +0 -5
  147. package/apps/vibe/.crew/pipeline-runs/pipeline-2c78fd22-a657-4bd1-bc49-0679fb384409.jsonl +0 -5
  148. package/apps/vibe/.crew/pipeline-runs/pipeline-3da23550-22ed-4904-9a0a-8e79c1f3024c.jsonl +0 -5
  149. package/apps/vibe/.crew/pipeline-runs/pipeline-3e6fe08d-3264-404a-8df3-aab7efef10e7.jsonl +0 -5
  150. package/apps/vibe/.crew/pipeline-runs/pipeline-42eec610-57fe-4e09-9e7e-b315038495c2.jsonl +0 -5
  151. package/apps/vibe/.crew/pipeline-runs/pipeline-4438eb4c-ae13-42b1-90e2-b043d8983be8.jsonl +0 -5
  152. package/apps/vibe/.crew/pipeline-runs/pipeline-4740a9f5-86e7-44b6-a394-de433e291727.jsonl +0 -5
  153. package/apps/vibe/.crew/pipeline-runs/pipeline-49e1da6a-957e-48fd-9220-415019e4f8e2.jsonl +0 -5
  154. package/apps/vibe/.crew/pipeline-runs/pipeline-4c9251db-be68-427b-a3fc-a264f2b5778d.jsonl +0 -5
  155. package/apps/vibe/.crew/pipeline-runs/pipeline-6413fa33-a802-4b57-a8c0-a9056ad67842.jsonl +0 -5
  156. package/apps/vibe/.crew/pipeline-runs/pipeline-65e29a57-664d-4196-8109-017e364f182e.jsonl +0 -5
  157. package/apps/vibe/.crew/pipeline-runs/pipeline-6aa04bc5-9593-4b1f-b58d-3bf2978cb602.jsonl +0 -5
  158. package/apps/vibe/.crew/pipeline-runs/pipeline-6e1cba53-9b70-457e-99e0-59199149dd21.jsonl +0 -5
  159. package/apps/vibe/.crew/pipeline-runs/pipeline-749f41cc-4dac-4204-be64-873a6080a0d2.jsonl +0 -5
  160. package/apps/vibe/.crew/pipeline-runs/pipeline-74d68121-e181-4864-bd9a-c3211341dfaf.jsonl +0 -5
  161. package/apps/vibe/.crew/pipeline-runs/pipeline-8509bc24-142d-4e07-b44a-a50bf99d1103.jsonl +0 -5
  162. package/apps/vibe/.crew/pipeline-runs/pipeline-960339c6-07ca-43ce-9900-f6e1702b39b9.jsonl +0 -5
  163. package/apps/vibe/.crew/pipeline-runs/pipeline-9bef2dd2-6122-42e5-b3d9-19f4d80f9e40.jsonl +0 -5
  164. package/apps/vibe/.crew/pipeline-runs/pipeline-9c6480a9-7031-4146-b241-825b9a2d1de1.jsonl +0 -5
  165. package/apps/vibe/.crew/pipeline-runs/pipeline-9fd42426-8492-4157-9d5f-e1537c060489.jsonl +0 -2
  166. package/apps/vibe/.crew/pipeline-runs/pipeline-ad6d40a3-2f5e-46a9-a345-47caaccc51aa.jsonl +0 -5
  167. package/apps/vibe/.crew/pipeline-runs/pipeline-bc606133-8d5b-4535-8d85-f1a29cdaa981.jsonl +0 -5
  168. package/apps/vibe/.crew/pipeline-runs/pipeline-c1418f4e-b773-4ca1-84a3-216acf36e2f2.jsonl +0 -5
  169. package/apps/vibe/.crew/pipeline-runs/pipeline-c1a13ccd-634a-4d01-a4a7-1177b8a752ff.jsonl +0 -5
  170. package/apps/vibe/.crew/pipeline-runs/pipeline-c7d27b42-249e-4bd4-8f26-6aa998110b8a.jsonl +0 -5
  171. package/apps/vibe/.crew/pipeline-runs/pipeline-cca2e9b9-4a34-4d25-a311-5c793fa7e91e.jsonl +0 -5
  172. package/apps/vibe/.crew/sandbox.json +0 -7
  173. package/apps/vibe/.crew/session.json +0 -330
  174. package/apps/vibe/.crew/training-data.jsonl +0 -0
  175. package/apps/vibe/.github/workflows/studio-quality.yml +0 -37
  176. package/apps/vibe/.studio-data/project-messages/chuck-norris.jsonl +0 -18
  177. package/apps/vibe/.studio-data/project-messages/general.jsonl +0 -81
  178. package/apps/vibe/.studio-data/project-messages/studio-local.jsonl +0 -18
  179. package/apps/vibe/ARCHITECTURE.md +0 -3393
  180. package/apps/vibe/QUICK-REFERENCE.md +0 -211
  181. package/apps/vibe/ROADMAP.md +0 -41
  182. package/apps/vibe/STUDIO-SETUP-COMPLETE.md +0 -35
  183. package/apps/vibe/VISUAL-GUIDE.md +0 -378
  184. package/apps/vibe/capture-demo.mjs +0 -160
  185. package/apps/vibe/capture-full-demo.mjs +0 -255
  186. package/apps/vibe/capture-quickstart.mjs +0 -256
  187. package/apps/vibe/capture-vibe-assets.mjs +0 -71
  188. package/apps/vibe/capture-vibe-video.mjs +0 -260
  189. package/apps/vibe/check-buttons.js +0 -41
  190. package/apps/vibe/diagnose.html +0 -106
  191. package/apps/vibe/fix-buttons.js +0 -103
  192. package/apps/vibe/index.html +0 -3404
  193. package/apps/vibe/package-lock.json +0 -920
  194. package/apps/vibe/scripts/studio-pty-host.py +0 -117
  195. package/apps/vibe/src/main.js +0 -2940
  196. package/apps/vibe/src/register-all-languages.js +0 -98
  197. package/apps/vibe/start-studio.sh +0 -11
  198. package/apps/vibe/test/accessibility-tests.js +0 -77
  199. package/apps/vibe/test/browser-performance-audit.mjs +0 -205
  200. package/apps/vibe/test/performance-tests.js +0 -120
  201. package/apps/vibe/test/security-tests.js +0 -213
  202. package/apps/vibe/tests/e2e.local.mjs +0 -54
  203. package/apps/vibe/tests/server.smoke.mjs +0 -106
  204. package/apps/vibe/update_website.mjs +0 -74
  205. package/apps/vibe/vite.config.js +0 -19
  206. package/lib/crew-lead/chat-handler.mjs.bak +0 -1274
  207. package/lib/engines/rt-envelope.mjs.backup-current +0 -870
@@ -1,211 +0,0 @@
1
- # crewswarm Vibe — Quick Reference Card
2
-
3
- ## Start Vibe
4
-
5
- ```bash
6
- npm install
7
- npm run build
8
- npm start
9
- # -> http://127.0.0.1:3333
10
- ```
11
-
12
- ---
13
-
14
- ## Layout
15
-
16
- ```
17
- ┌─────────────────────────────────────────────┐
18
- │ 🐝 crewswarm Vibe Project Name │
19
- ├───────┬─────────────────┬───────────────────┤
20
- │ Files │ Editor (Monaco)│ Chat + Agents │
21
- ├───────┴─────────────────┴───────────────────┤
22
- │ Terminal (Agent Activity Logs) │
23
- └─────────────────────────────────────────────┘
24
- ```
25
-
26
- ---
27
-
28
- ## Keyboard Shortcuts
29
-
30
- | Key | Action |
31
- |---|---|
32
- | **Enter** | Send chat message |
33
- | **Shift+Enter** | Insert a new line in chat |
34
- | **⌘+S** | Save file (also auto-saves after 1s) |
35
- | Click file in tree | Open in editor |
36
- | Click × on tab | Close file |
37
-
38
- ---
39
-
40
- ## Agent Status Icons
41
-
42
- | Icon | Meaning |
43
- |---|---|
44
- | 🟢 | Online |
45
- | ⚡ | Working |
46
- | ✅ | Complete |
47
- | 🔴 | Error |
48
-
49
- ---
50
-
51
- ## Terminal Log Colors
52
-
53
- | Color | Type |
54
- |---|---|
55
- | Cyan | Info |
56
- | Green | Success |
57
- | Red | Error |
58
- | Orange | Warning |
59
-
60
- ---
61
-
62
- ## Workflow
63
-
64
- 1. **Open file** → Click in file tree
65
- 2. **Edit** → Type in Monaco editor
66
- 3. **Save** → Auto-saves (or ⌘+S)
67
- 4. **Run Codex** → Switch mode to `cli:codex`, type a task, press Enter
68
- 5. **Watch progress** → Terminal shows RT updates
69
-
70
- ---
71
-
72
- ## Connections
73
-
74
- Always local:
75
- - **Vibe** (:3333) — projects, file IO, local `cli:codex`
76
-
77
- Optional shared services:
78
- - **Dashboard** (:4319) — auth, agents, crew-lead passthrough
79
- - **crew-lead** (:5010) — shared chat backend
80
- - **RT Bus** (:18889) — agent activity
81
-
82
- ---
83
-
84
- ## File Structure
85
-
86
- ```
87
- apps/vibe/
88
- ├── index.html # UI layout
89
- ├── src/main.js # All logic
90
- ├── vite.config.js # Dev server
91
- └── server.mjs # Prod server
92
- ```
93
-
94
- ---
95
-
96
- ## Commands
97
-
98
- ```bash
99
- # Dev mode
100
- npm run dev
101
-
102
- # Production build
103
- npm run build
104
-
105
- # Production server
106
- npm start
107
-
108
- # Smoke test
109
- npm test
110
- ```
111
-
112
- ---
113
-
114
- ## Troubleshooting
115
-
116
- **Vibe won't start?**
117
- ```bash
118
- cd apps/vibe
119
- rm -rf node_modules
120
- npm install
121
- npm run dev
122
- ```
123
-
124
- **Codex mode not working?**
125
- - Check Codex CLI: `codex --help`
126
- - Use `cli:codex` for standalone local coding
127
-
128
- **Terminal not acting like a full shell?**
129
- - The bottom terminal opens a real local shell for the selected project
130
- - It still is not a full PTY-backed terminal emulator, so use an external terminal for heavy TUI workflows
131
- - Use `cli:codex` for real local file-changing execution
132
-
133
- **RT bus disconnected?**
134
- - Check RT daemon: `ps aux | grep "rt-daemon"`
135
-
136
- **File tree empty?**
137
- - Check the selected project path exists
138
- - Check local server: `curl http://127.0.0.1:3333/api/studio/projects`
139
-
140
- ---
141
-
142
- ## Ports
143
-
144
- | Service | Port |
145
- |---|---|
146
- | Vibe | 3333 |
147
- | Dashboard | 4319 |
148
- | crew-lead | 5010 |
149
- | RT Bus | 18889 |
150
-
151
- ---
152
-
153
- ## Docs
154
-
155
- - `README.md`
156
- - `ARCHITECTURE.md`
157
- - `VISUAL-GUIDE.md`
158
-
159
- ---
160
-
161
- ## Phase Status
162
-
163
- **Local Core (Complete):**
164
- - ✅ Monaco editor
165
- - ✅ Local project persistence
166
- - ✅ Real file operations
167
- - ✅ Local `cli:codex` execution
168
- - ✅ Smoke test coverage
169
-
170
- **Still shared / optional:**
171
- - 🔄 crew-lead chat
172
- - 🔄 broader agent routing
173
- - 🔄 RT activity from the full crewswarm stack
174
-
175
- ---
176
-
177
- ## Quick Tips
178
-
179
- - **File not saving?** Check terminal for the save error line and confirm the file is inside the selected project directory
180
- - **Want dark theme?** Already using vs-dark (Monaco default)
181
- - **Multiple tabs?** Click files to open, × to close
182
- - **Agent not responding?** Check dashboard → Agents tab for status
183
- - **Customize layout?** Edit `apps/vibe/index.html` CSS grid
184
-
185
- ---
186
-
187
- ## Example Chat
188
-
189
- ```
190
- You: Add validation to the login form
191
-
192
- Mode: cli:codex
193
-
194
- [Terminal]
195
- [14:30:00] fake codex started
196
- [14:30:05] fake codex finished
197
-
198
- codex: wrote files in the project directory
199
- ```
200
-
201
- ---
202
-
203
- **Built with:** Monaco • Vite • local HTTP server • Codex CLI
204
- **License:** MIT
205
- **Version:** 1.0.0
206
-
207
- ---
208
-
209
- **Need help?** Open GitHub issue with `[Vibe]` tag.
210
-
211
- **Enjoy!** 🐝✨
@@ -1,41 +0,0 @@
1
- # crewswarm vibe — ROADMAP
2
-
3
- ## Phase 1: Core IDE ✅
4
- - [x] Monaco editor integration
5
- - [x] File tree navigation
6
- - [x] Chat with agents (crew-lead, direct agents, CLI bypass)
7
- - [x] Project selection
8
- - [x] Authentication (Bearer token)
9
- - [x] CORS fixes for Vibe ↔ Dashboard ↔ crew-lead
10
-
11
- ## Phase 2: Advanced Features 🔄
12
- - [x] Cmd+K inline chat overlay ✓ 12:50:06 AM (crew-coder-front)
13
- - [x] Diff preview modal for agent changes AM ✓ 1:20:18 AM (crew-coder-front)
14
- - [x] File content loading from local Studio server ✓ 1:22:32 AM (crew-coder-front)
15
- - [x] Terminal integration (bottom panel) AM ✓ 1:28:52 AM (crew-fixer)
16
- - [x] Settings panel (link to main dashboard) ✓ 1:31:55 AM (crew-coder-front)
17
- - [x] Change from studio to vibe (only in the UI and docs; directory and runtime names unchanged)
18
-
19
-
20
- ## Phase 3: Polish 📋
21
- - [x] All panels adjustable / resize the views AM ✓ 2:55:51 AM (crew-fixer)
22
- - [x] Syntax highlighting for the bundled Monaco language set (`css`, `html`, `javascript`, `markdown`, `python`, `typescript`)
23
- - [x] Dark/light theme toggle AM AM ✓ 3:21:24 AM (crew-fixer)
24
- - [x] Keyboard shortcuts guide AM ✓ 3:25:51 AM (crew-coder-front)
25
- - [x] Performance optimization AM AM PM PM ✓ 1:19:08 AM (crew-coder-back)
26
- - [x] Error handling improvements PM PM ✓ 1:24:08 AM (crew-coder-back)
27
-
28
- ## Notes
29
- - All CORS issues resolved (wildcard headers)
30
- - Local Studio API working: `/api/studio/projects`, `/api/studio/files`, `/api/studio/file-content`
31
- - crew-lead chat working: `/chat` with Bearer auth
32
- - Vibe port: 3333, Dashboard: 4319, crew-lead: 5010
33
-
34
- ---
35
-
36
- ## PM-Generated (Round 1)
37
-
38
- - [x] Add a color contrast analyzer tool to the project to ensure that the color schemes used in the application meet the latest accessibility standards and provide a good user experience for users with visual impairments. PM PM ✓ 1:30:42 AM (crew-coder-back)
39
- - [x] Implement a comprehensive testing framework that includes automated tests for accessibility, performance, and security to ensure that the application is robust, reliable, and meets the latest web development trends and best practices. PM PM ✓ 1:35:44 AM (crew-coder-back)
40
-
41
-
@@ -1,35 +0,0 @@
1
- # Vibe Setup Complete
2
-
3
- ## Quick Start
4
-
5
- ```bash
6
- cd apps/vibe
7
- bash start-studio.sh
8
- ```
9
-
10
- Open `http://127.0.0.1:3333`.
11
-
12
- ## Manual Start
13
-
14
- ```bash
15
- cd apps/vibe
16
- npm install
17
- npm run build
18
- npm start
19
- ```
20
-
21
- ## Verification
22
-
23
- ```bash
24
- npm test
25
- npm run test:e2e
26
- ```
27
-
28
- - `npm test` runs the local smoke, accessibility, performance, and security checks.
29
- - `npm run test:e2e` runs a self-contained local HTTP/API end-to-end check for the shipped Vibe server and bundle.
30
-
31
- ## Notes
32
-
33
- - `cli:codex` is the standalone local CLI path.
34
- - Shared dashboard and agent routing features still depend on the broader crewswarm stack.
35
- - Built assets are served from `dist/`.
@@ -1,378 +0,0 @@
1
- # CrewSwarm Vibe — Visual Guide
2
-
3
- ## Vibe Layout
4
-
5
- ```
6
- ┌──────────────────────────────────────────────────────────────────────────────┐
7
- │ 🐝 CrewSwarm Vibe my-todo-app │
8
- ├─────────────┬────────────────────────────────┬────────────────────────────────┤
9
- │ │ │ │
10
- │ EXPLORER │ MONACO EDITOR │ CHAT WITH AGENTS │
11
- │ │ │ │
12
- │ 📁 src/ │ function TodoApp() { │ 🟢 crew-lead │
13
- │ ├─ 📄 app.js│ const [todos, setTodos] │ ⚡ crew-coder │
14
- │ ├─ 📄 api.js│ = useState([]); │ 🔵 crew-qa │
15
- │ └─ 📁 comp/│ │ │
16
- │ 📝 README │ return ( │ ──────────────────────── │
17
- │ 📦 package │ <div className="app"> │ │
18
- │ │ <h1>Todo App</h1> │ You: │
19
- │ │ {todos.map(todo => │ Add input validation for │
20
- │ │ <TodoItem │ the todo form │
21
- │ │ key={todo.id} │ │
22
- │ │ todo={todo} │ crew-lead: │
23
- │ │ /> │ I'll have crew-coder add │
24
- │ │ )} │ validation for you. │
25
- │ │ </div> │ │
26
- │ │ ); │ [14:32] ⚡ Dispatching to │
27
- │ │ } │ crew-coder... │
28
- │ │ │ │
29
- │ │ export default TodoApp; │ crew-coder: │
30
- │ │ │ ✅ Added validation to │
31
- │ │ │ src/TodoForm.jsx: │
32
- │ │ │ • Required field check │
33
- │ │ │ • Max length 100 chars │
34
- │ │ │ • No empty strings │
35
- │ │ │ │
36
- │ │ │ ┌─────────────────────────┐ │
37
- │ │ │ │ Ask the crew anything...│ │
38
- │ │ │ │ (⌘+Enter to send) │ │
39
- │ │ │ └─────────────────────────┘ │
40
- ├─────────────┴────────────────────────────────┴────────────────────────────────┤
41
- │ TERMINAL / AGENT OUTPUT │
42
- │ │
43
- │ [14:32:05] 🔗 Connected to RT message bus │
44
- │ [14:32:15] ⚡ crew-coder started working on task │
45
- │ [14:32:16] 🔧 crew-coder → write_file src/TodoForm.jsx │
46
- │ [14:32:17] 🔧 crew-coder → write_file src/validation.js │
47
- │ [14:32:18] ✅ crew-coder completed task │
48
- │ [14:32:19] 💾 Saved src/TodoForm.jsx │
49
- │ │
50
- └────────────────────────────────────────────────────────────────────────────────┘
51
- ```
52
-
53
- ---
54
-
55
- ## Color Scheme (vs-dark theme)
56
-
57
- ```css
58
- Background: #1e1e1e (main editor)
59
- Sidebar: #252526 (file tree, chat)
60
- Titlebar: #323233
61
- Borders: #181818
62
- Text: #d4d4d4
63
- Active tab: #1e1e1e
64
- Inactive tab: #2d2d30
65
- User message: #0e639c (blue bubble)
66
- Agent message: #2d2d30 (gray bubble)
67
- Success: #81c784 (green)
68
- Error: #e57373 (red)
69
- Info: #4fc3f7 (cyan)
70
- Warning: #ffb74d (orange)
71
- ```
72
-
73
- ---
74
-
75
- ## Key UI Elements
76
-
77
- ### 1. Titlebar
78
- ```
79
- ┌──────────────────────────────────────────────────────┐
80
- │ 🐝 CrewSwarm Vibe my-todo-app │
81
- └──────────────────────────────────────────────────────┘
82
- ↑ Logo ↑ Project name (right aligned)
83
- ```
84
-
85
- ### 2. File Tree
86
- ```
87
- EXPLORER
88
-
89
- 📁 src/
90
- ├─ 📄 app.js ← Click to open
91
- ├─ 📄 api.js
92
- └─ 📁 components/
93
- ├─ 📄 TodoItem.jsx
94
- └─ 📄 TodoForm.jsx
95
- 📝 README.md
96
- 📦 package.json
97
- ```
98
-
99
- **States:**
100
- - Regular: `📄 app.js`
101
- - Active: `📄 app.js` (highlighted bg: #37373d)
102
- - Hover: `📄 app.js` (subtle highlight)
103
-
104
- ### 3. Editor Tabs
105
- ```
106
- ┌───────────┬───────────┬───────────┐
107
- │ app.js × │ api.js × │ README × │
108
- └───────────┴───────────┴───────────┘
109
- ↑ active ↑ inactive ↑ inactive
110
- ```
111
-
112
- **Active tab:**
113
- - Background: #1e1e1e
114
- - Text: #fff
115
-
116
- **Inactive tab:**
117
- - Background: transparent
118
- - Text: #969696
119
-
120
- ### 4. Chat Panel
121
- ```
122
- ┌─────────────────────────────────┐
123
- │ Chat with Agents │ ← Header
124
- ├─────────────────────────────────┤
125
- │ 🟢 crew-lead │ ← Status indicators
126
- │ ⚡ crew-coder │
127
- │ 🔵 crew-qa │
128
- ├─────────────────────────────────┤
129
- │ │
130
- │ [Chat messages scroll here] │
131
- │ │
132
- ├─────────────────────────────────┤
133
- │ ┌─────────────────────────────┐ │
134
- │ │ Ask the crew anything... │ │ ← Input (⌘+Enter)
135
- │ │ │ │
136
- │ └─────────────────────────────┘ │
137
- └─────────────────────────────────┘
138
- ```
139
-
140
- **Status indicators:**
141
- - 🟢 Green = online/available
142
- - ⚡ Yellow = working on task
143
- - 🔵 Blue = ready
144
- - 🔴 Red = error/offline
145
-
146
- ### 5. Terminal
147
- ```
148
- ┌────────────────────────────────────────────────┐
149
- │ Agent Output [Clear] │ ← Header
150
- ├────────────────────────────────────────────────┤
151
- │ [14:32:15] ⚡ crew-coder started working │ ← Info (cyan)
152
- │ [14:32:18] ✅ crew-coder completed task │ ← Success (green)
153
- │ [14:32:19] 💾 Saved src/TodoForm.jsx │ ← Success (green)
154
- │ [14:32:20] ❌ Failed to save config.json │ ← Error (red)
155
- └────────────────────────────────────────────────┘
156
- ```
157
-
158
- **Log colors:**
159
- - Info: #4fc3f7
160
- - Success: #81c784
161
- - Error: #e57373
162
- - Warning: #ffb74d
163
-
164
- ---
165
-
166
- ## Responsive Behavior
167
-
168
- ### Desktop (1920×1080)
169
- ```
170
- File Tree: 250px
171
- Editor: flex (grows)
172
- Chat: 350px
173
- Terminal: 200px
174
- ```
175
-
176
- ### Laptop (1440×900)
177
- ```
178
- File Tree: 200px
179
- Editor: flex (grows)
180
- Chat: 300px
181
- Terminal: 180px
182
- ```
183
-
184
- ### Tablet (1024×768)
185
- ```
186
- File Tree: Collapsible (hidden by default)
187
- Editor: Full width
188
- Chat: Overlay (slides in from right)
189
- Terminal: 150px
190
- ```
191
-
192
- ---
193
-
194
- ## Interactions
195
-
196
- ### File Tree
197
- - **Click file** → Opens in editor
198
- - **Hover file** → Slight highlight
199
- - **Active file** → Bold + highlight
200
-
201
- ### Editor
202
- - **Type** → Auto-saves after 1s
203
- - **⌘+S** → Immediate save
204
- - **Tab close (×)** → Removes tab, switches to previous
205
-
206
- ### Chat
207
- - **Type** → Input grows (max 3 lines)
208
- - **⌘+Enter** → Sends message
209
- - **Messages** → Auto-scroll to bottom
210
- - **Agent bubbles** → Different colors per role
211
-
212
- ### Terminal
213
- - **New event** → Auto-scrolls to bottom
214
- - **Scroll up** → Pauses auto-scroll
215
- - **Scroll to bottom** → Re-enables auto-scroll
216
-
217
- ---
218
-
219
- ## Monaco Editor Features
220
-
221
- **Built-in:**
222
- - ✅ Syntax highlighting (50+ languages)
223
- - ✅ Auto-completion (basic)
224
- - ✅ Find/replace
225
- - ✅ Minimap
226
- - ✅ Line numbers
227
- - ✅ Code folding
228
- - ✅ Multi-cursor (⌥+Click)
229
- - ✅ Bracket matching
230
-
231
- **Coming soon:**
232
- - 🔄 IntelliSense (full)
233
- - 🔄 Git diff indicators (green/red bars)
234
- - 🔄 Error squiggles (from linter)
235
- - 🔄 Inline agent suggestions
236
-
237
- ---
238
-
239
- ## Agent Status Icons
240
-
241
- ```
242
- 🟢 Online Agent ready to receive tasks
243
- ⚡ Working Agent actively processing
244
- ✅ Complete Agent finished task
245
- 🔵 Idle Agent available but not active
246
- 🔴 Error Agent encountered error
247
- ⏸️ Paused Agent temporarily disabled
248
- 🔄 Restarting Agent reloading
249
- ```
250
-
251
- ---
252
-
253
- ## Example Workflows
254
-
255
- ### Workflow 1: Open File + Edit
256
- ```
257
- 1. Click "src/app.js" in file tree
258
- → File opens in editor
259
- → Tab appears at top
260
-
261
- 2. Type changes in editor
262
- → Auto-saves after 1s
263
- → Terminal shows: "💾 Saved src/app.js"
264
-
265
- 3. Click "×" on tab to close
266
- → File closes
267
- → Switches to previous tab
268
- ```
269
-
270
- ### Workflow 2: Ask Agent to Edit
271
- ```
272
- 1. Type in chat: "Add error handling to api.js"
273
- → Press ⌘+Enter
274
-
275
- 2. crew-lead responds:
276
- "I'll have crew-coder add that for you."
277
-
278
- 3. Terminal shows:
279
- [14:45:00] ⚡ crew-coder started working
280
- [14:45:05] 🔧 crew-coder → write_file src/api.js
281
- [14:45:06] ✅ crew-coder completed task
282
-
283
- 4. File tree: "api.js" changes appear
284
- → Click to open and review
285
- ```
286
-
287
- ### Workflow 3: Multi-Agent Pipeline
288
- ```
289
- 1. Type: "Build a login page with tests"
290
-
291
- 2. crew-lead coordinates:
292
- ⚡ Dispatching to crew-coder-front...
293
- ⚡ Dispatching to crew-qa...
294
-
295
- 3. Terminal shows both agents working:
296
- [15:00:00] ⚡ crew-coder-front started
297
- [15:00:15] ✅ crew-coder-front completed
298
- [15:00:16] ⚡ crew-qa started
299
- [15:00:30] ✅ crew-qa completed
300
-
301
- 4. Result:
302
- ✅ Created src/LoginPage.jsx
303
- ✅ Created tests/login.test.js
304
- ```
305
-
306
- ---
307
-
308
- ## Keyboard Shortcuts (Future)
309
-
310
- | Shortcut | Action |
311
- |---|---|
312
- | ⌘+S | Save current file |
313
- | ⌘+P | Quick file picker |
314
- | ⌘+K | Focus chat input |
315
- | ⌘+J | Toggle terminal |
316
- | ⌘+B | Toggle file tree |
317
- | ⌘+Enter | Send chat message |
318
- | ⌘+W | Close current tab |
319
- | ⌘+Shift+P | Command palette |
320
- | ⌘+/ | Toggle comment |
321
- | ⌘+F | Find in file |
322
-
323
- ---
324
-
325
- ## Comparison to Cursor
326
-
327
- | Feature | Cursor | Vibe |
328
- |---|---|---|
329
- | File editing | ✅ Full IDE | ✅ Monaco |
330
- | Agent chat | ✅ Inline + panel | ✅ Side panel |
331
- | File tree | ✅ Full features | ✅ Basic (Phase 1) |
332
- | Terminal | ✅ Full shell | ✅ Agent logs only |
333
- | Git | ✅ Built-in | 🔄 Future |
334
- | Extensions | ✅ VSCode ecosystem | ❌ Not yet |
335
- | Themes | ✅ Full customization | ✅ vs-dark (default) |
336
- | Multi-agent | ❌ Single agent | ✅ 20 agents |
337
- | Real-time updates | ⚠️ Polling | ✅ WebSocket |
338
-
339
- **Vibe's differentiator:** Real-time multi-agent coordination with visible progress. Cursor is better as a full IDE, Vibe is better for swarm workflows.
340
-
341
- ---
342
-
343
- ## Screenshots (Conceptual)
344
-
345
- **Main view:**
346
- ```
347
- ┌────────────────────────────────────────────────┐
348
- │ FILE TREE │ EDITOR │ CHAT │
349
- │ │ │ │
350
- │ Click files │ Code here │ Talk to agents│
351
- └────────────────────────────────────────────────┘
352
- │ TERMINAL (agent activity) │
353
- └────────────────────────────┘
354
- ```
355
-
356
- **Chat conversation:**
357
- ```
358
- You: Add validation
359
-
360
- crew-lead: Sure! Dispatching to crew-coder...
361
-
362
- crew-coder: ✅ Added validation.js
363
- • Required field check
364
- • Email format validation
365
- • Password strength check
366
- ```
367
-
368
- **Terminal activity:**
369
- ```
370
- [14:32:15] 🔗 Connected to RT bus
371
- [14:32:20] ⚡ crew-coder started task
372
- [14:32:25] 🔧 crew-coder → write_file
373
- [14:32:26] ✅ crew-coder completed task
374
- ```
375
-
376
- ---
377
-
378
- **Next:** See [`STUDIO-SETUP-COMPLETE.md`](./STUDIO-SETUP-COMPLETE.md) in this folder for local setup, verification, and usage.