crewswarm 0.9.2 → 0.9.4
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/README.md +22 -9
- package/apps/dashboard/dist/assets/chat-core-uXb_C0GM.js +1 -0
- package/apps/dashboard/dist/assets/chat-core-uXb_C0GM.js.br +0 -0
- package/apps/dashboard/dist/assets/cli-process-CNZ_UBCt.js +1 -0
- package/apps/dashboard/dist/assets/cli-process-CNZ_UBCt.js.br +0 -0
- package/apps/dashboard/dist/assets/index-BeVllEj_.js +2 -0
- package/apps/dashboard/dist/assets/index-BeVllEj_.js.br +0 -0
- package/apps/dashboard/dist/assets/{index-CF0aJRtC.css → index-D-sRshvg.css} +1 -1
- package/apps/dashboard/dist/assets/index-D-sRshvg.css.br +0 -0
- package/apps/dashboard/dist/assets/tab-benchmarks-tab-BHjKCPm3.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-models-tab-dNRgsTOO.js +1 -0
- package/apps/dashboard/dist/assets/tab-models-tab-dNRgsTOO.js.br +0 -0
- package/apps/dashboard/dist/assets/{tab-pm-loop-tab-Bfd449B4.js → tab-pm-loop-tab-DiAPTJXu.js} +1 -1
- package/apps/dashboard/dist/assets/tab-pm-loop-tab-DiAPTJXu.js.br +0 -0
- package/apps/dashboard/dist/assets/{tab-projects-tab-DhNWnlzt.js → tab-projects-tab-SFH4E--a.js} +1 -1
- package/apps/dashboard/dist/assets/tab-projects-tab-SFH4E--a.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-settings-tab-CuvH_Fj_.js +1 -0
- package/apps/dashboard/dist/assets/tab-settings-tab-CuvH_Fj_.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-skills-tab-DR7PJ7NB.js +1 -0
- package/apps/dashboard/dist/assets/tab-skills-tab-DR7PJ7NB.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-testing-tab-CezZOZcJ.js +1 -0
- package/apps/dashboard/dist/assets/tab-testing-tab-CezZOZcJ.js.br +0 -0
- package/apps/dashboard/dist/index.html +135 -15
- package/apps/dashboard/dist/index.html.br +0 -0
- package/apps/dashboard/dist/index.html.gz +0 -0
- package/apps/vibe/README.md +2 -2
- package/apps/vibe/package.json +1 -1
- package/apps/vibe/server.mjs +101 -56
- package/crew-lead.mjs +34 -4
- package/lib/bridges/cli-executor.mjs +1 -1
- package/lib/bridges/gateway-ws.mjs +4 -0
- package/lib/browser/passthrough-stderr.js +1 -0
- package/lib/chat/project-messages.mjs +3 -5
- package/lib/cli-process-tracker.mjs +3 -2
- package/lib/contacts/identity-linker.mjs +1 -0
- package/lib/crew-judge/judge.mjs +19 -18
- package/lib/crew-lead/agent-manager.mjs +1 -1
- package/lib/crew-lead/background.mjs +14 -1
- package/lib/crew-lead/chat-handler.mjs +38 -1
- package/lib/crew-lead/http-server.mjs +106 -57
- package/lib/crew-lead/llm-caller.mjs +24 -8
- package/lib/crew-lead/prompts.mjs +14 -1
- package/lib/crew-lead/tools.mjs +3 -2
- package/lib/crew-lead/wave-dispatcher.mjs +19 -5
- package/lib/crew-lead/ws-router.mjs +219 -27
- package/lib/engines/crew-cli.mjs +1 -1
- package/lib/engines/engine-registry.mjs +14 -3
- package/lib/engines/rt-envelope.mjs +1 -0
- package/lib/engines/runners.mjs +28 -4
- package/lib/gemini-cli-passthrough-noise.mjs +1 -1
- package/lib/integrations/code-search.mjs +4 -3
- package/lib/memory/shared-adapter.mjs +23 -10
- package/lib/pipeline/manager.mjs +2 -1
- package/lib/runtime/config.mjs +1 -1
- package/lib/runtime/paths.mjs +12 -8
- package/lib/runtime/spending.mjs +2 -1
- package/package.json +42 -14
- package/scripts/capture-build-flow.mjs +118 -0
- package/scripts/coverage-report.mjs +209 -0
- package/scripts/coverage-summary.mjs +47 -0
- package/scripts/dashboard-validation.mjs +76 -0
- package/scripts/dashboard.mjs +1667 -551
- package/scripts/generate-openapi.mjs +683 -277
- package/scripts/live-bridge-matrix.mjs +79 -0
- package/scripts/live-cli-matrix.mjs +166 -0
- package/scripts/live-crewchat-check.mjs +42 -0
- package/scripts/live-engine-matrix.mjs +50 -0
- package/scripts/live-provider-failover-matrix.mjs +107 -0
- package/scripts/live-provider-matrix.mjs +228 -0
- package/scripts/restart-all-from-repo.sh +4 -4
- package/scripts/restart-service.sh +12 -9
- package/scripts/smoke-dispatch.mjs +4 -1
- package/scripts/test-blast-radius.mjs +204 -0
- package/scripts/test-report-summary.mjs +88 -0
- package/scripts/test-reporter.mjs +651 -0
- package/scripts/test-rerun.mjs +136 -0
- package/scripts/tmux-bridge +130 -0
- package/apps/dashboard/dist/assets/chat-core-Cx4sTxDd.js +0 -1
- package/apps/dashboard/dist/assets/chat-core-Cx4sTxDd.js.br +0 -0
- package/apps/dashboard/dist/assets/cli-process-COMRNPqr.js +0 -1
- package/apps/dashboard/dist/assets/cli-process-COMRNPqr.js.br +0 -0
- package/apps/dashboard/dist/assets/index-CF0aJRtC.css.br +0 -0
- package/apps/dashboard/dist/assets/index-DnClJ1ee.js +0 -2
- package/apps/dashboard/dist/assets/index-DnClJ1ee.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-models-tab-BLEjmd19.js +0 -1
- package/apps/dashboard/dist/assets/tab-models-tab-BLEjmd19.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-pm-loop-tab-Bfd449B4.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-projects-tab-DhNWnlzt.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-settings-tab-Bn4nXtDe.js +0 -1
- package/apps/dashboard/dist/assets/tab-settings-tab-Bn4nXtDe.js.br +0 -0
- package/apps/dashboard/dist/assets/tab-skills-tab-BpY0uZHW.js +0 -1
- package/apps/dashboard/dist/assets/tab-skills-tab-BpY0uZHW.js.br +0 -0
- package/apps/dashboard/index.html +0 -6529
- package/apps/dashboard/package.json +0 -15
- package/apps/dashboard/src/app.js +0 -2828
- package/apps/dashboard/src/app.js.br +0 -0
- package/apps/dashboard/src/app.js.gz +0 -0
- package/apps/dashboard/src/chat/chat-actions.js +0 -1847
- package/apps/dashboard/src/chat/chat-actions.js.br +0 -0
- package/apps/dashboard/src/chat/unified-messages.js +0 -327
- package/apps/dashboard/src/chat/unified-messages.js.br +0 -0
- package/apps/dashboard/src/cli-process.js +0 -208
- package/apps/dashboard/src/cli-process.js.br +0 -0
- package/apps/dashboard/src/cli-process.js.gz +0 -0
- package/apps/dashboard/src/components/active-tasks-panel.js +0 -175
- package/apps/dashboard/src/components/active-tasks-panel.js.br +0 -0
- package/apps/dashboard/src/core/api.js +0 -18
- package/apps/dashboard/src/core/api.js.br +0 -0
- package/apps/dashboard/src/core/dom.js +0 -228
- package/apps/dashboard/src/core/dom.js.br +0 -0
- package/apps/dashboard/src/core/state.js +0 -91
- package/apps/dashboard/src/core/state.js.br +0 -0
- package/apps/dashboard/src/core/task-manager.js +0 -134
- package/apps/dashboard/src/core/task-manager.js.br +0 -0
- package/apps/dashboard/src/orchestration-status.js +0 -127
- package/apps/dashboard/src/orchestration-status.js.br +0 -0
- package/apps/dashboard/src/setup-wizard.js +0 -562
- package/apps/dashboard/src/setup-wizard.js.br +0 -0
- package/apps/dashboard/src/styles.css +0 -2085
- package/apps/dashboard/src/styles.css.br +0 -0
- package/apps/dashboard/src/styles.css.gz +0 -0
- package/apps/dashboard/src/tabs/agents-tab.js +0 -2237
- package/apps/dashboard/src/tabs/agents-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/benchmarks-tab.js +0 -229
- package/apps/dashboard/src/tabs/benchmarks-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/comms-tab.js +0 -955
- package/apps/dashboard/src/tabs/comms-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/contacts-tab.js +0 -654
- package/apps/dashboard/src/tabs/contacts-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/engines-tab.js +0 -175
- package/apps/dashboard/src/tabs/engines-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/memory-tab.js +0 -182
- package/apps/dashboard/src/tabs/memory-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/models-tab.js +0 -450
- package/apps/dashboard/src/tabs/models-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/pm-loop-tab.js +0 -185
- package/apps/dashboard/src/tabs/pm-loop-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/projects-tab.js +0 -663
- package/apps/dashboard/src/tabs/projects-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/projects-tab.js.gz +0 -0
- package/apps/dashboard/src/tabs/prompts-tab.js +0 -160
- package/apps/dashboard/src/tabs/prompts-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/services-tab.js +0 -202
- package/apps/dashboard/src/tabs/services-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/settings-tab.js +0 -861
- package/apps/dashboard/src/tabs/settings-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/skills-tab.js +0 -284
- package/apps/dashboard/src/tabs/skills-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/spending-tab.js +0 -173
- package/apps/dashboard/src/tabs/spending-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/swarm-chat-tab.js +0 -660
- package/apps/dashboard/src/tabs/swarm-chat-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/swarm-tab.js +0 -538
- package/apps/dashboard/src/tabs/swarm-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/usage-tab.js +0 -390
- package/apps/dashboard/src/tabs/usage-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/waves-tab.js +0 -238
- package/apps/dashboard/src/tabs/waves-tab.js.br +0 -0
- package/apps/dashboard/src/tabs/workflows-tab.js +0 -747
- package/apps/dashboard/src/tabs/workflows-tab.js.br +0 -0
- package/apps/vibe/.crew/agent-memory/pipeline.json +0 -304
- package/apps/vibe/.crew/cost.json +0 -17
- package/apps/vibe/.crew/json-parse-metrics.jsonl +0 -27
- package/apps/vibe/.crew/pipeline-metrics.jsonl +0 -27
- package/apps/vibe/.crew/pipeline-runs/pipeline-0f90c392-2425-4ae5-850c-bd9d17b1d690.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-1c269dd9-a63f-4fba-af81-5cf08048ef06.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-288a7765-da24-4a22-89bc-1f3cc9b0562c.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-2c78fd22-a657-4bd1-bc49-0679fb384409.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-3da23550-22ed-4904-9a0a-8e79c1f3024c.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-3e6fe08d-3264-404a-8df3-aab7efef10e7.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-42eec610-57fe-4e09-9e7e-b315038495c2.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-4438eb4c-ae13-42b1-90e2-b043d8983be8.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-4740a9f5-86e7-44b6-a394-de433e291727.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-49e1da6a-957e-48fd-9220-415019e4f8e2.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-4c9251db-be68-427b-a3fc-a264f2b5778d.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-6413fa33-a802-4b57-a8c0-a9056ad67842.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-65e29a57-664d-4196-8109-017e364f182e.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-6aa04bc5-9593-4b1f-b58d-3bf2978cb602.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-6e1cba53-9b70-457e-99e0-59199149dd21.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-749f41cc-4dac-4204-be64-873a6080a0d2.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-74d68121-e181-4864-bd9a-c3211341dfaf.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-8509bc24-142d-4e07-b44a-a50bf99d1103.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-960339c6-07ca-43ce-9900-f6e1702b39b9.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-9bef2dd2-6122-42e5-b3d9-19f4d80f9e40.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-9c6480a9-7031-4146-b241-825b9a2d1de1.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-9fd42426-8492-4157-9d5f-e1537c060489.jsonl +0 -2
- package/apps/vibe/.crew/pipeline-runs/pipeline-ad6d40a3-2f5e-46a9-a345-47caaccc51aa.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-bc606133-8d5b-4535-8d85-f1a29cdaa981.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-c1418f4e-b773-4ca1-84a3-216acf36e2f2.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-c1a13ccd-634a-4d01-a4a7-1177b8a752ff.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-c7d27b42-249e-4bd4-8f26-6aa998110b8a.jsonl +0 -5
- package/apps/vibe/.crew/pipeline-runs/pipeline-cca2e9b9-4a34-4d25-a311-5c793fa7e91e.jsonl +0 -5
- package/apps/vibe/.crew/sandbox.json +0 -7
- package/apps/vibe/.crew/session.json +0 -330
- package/apps/vibe/.crew/training-data.jsonl +0 -0
- package/apps/vibe/.github/workflows/studio-quality.yml +0 -37
- package/apps/vibe/.studio-data/project-messages/chuck-norris.jsonl +0 -18
- package/apps/vibe/.studio-data/project-messages/general.jsonl +0 -81
- package/apps/vibe/.studio-data/project-messages/studio-local.jsonl +0 -18
- package/apps/vibe/ARCHITECTURE.md +0 -3393
- package/apps/vibe/QUICK-REFERENCE.md +0 -211
- package/apps/vibe/ROADMAP.md +0 -41
- package/apps/vibe/STUDIO-SETUP-COMPLETE.md +0 -35
- package/apps/vibe/VISUAL-GUIDE.md +0 -378
- package/apps/vibe/capture-demo.mjs +0 -160
- package/apps/vibe/capture-full-demo.mjs +0 -255
- package/apps/vibe/capture-quickstart.mjs +0 -256
- package/apps/vibe/capture-vibe-assets.mjs +0 -71
- package/apps/vibe/capture-vibe-video.mjs +0 -260
- package/apps/vibe/check-buttons.js +0 -41
- package/apps/vibe/diagnose.html +0 -106
- package/apps/vibe/fix-buttons.js +0 -103
- package/apps/vibe/index.html +0 -3404
- package/apps/vibe/package-lock.json +0 -920
- package/apps/vibe/scripts/studio-pty-host.py +0 -117
- package/apps/vibe/src/main.js +0 -2940
- package/apps/vibe/src/register-all-languages.js +0 -98
- package/apps/vibe/start-studio.sh +0 -11
- package/apps/vibe/test/accessibility-tests.js +0 -77
- package/apps/vibe/test/browser-performance-audit.mjs +0 -205
- package/apps/vibe/test/performance-tests.js +0 -120
- package/apps/vibe/test/security-tests.js +0 -213
- package/apps/vibe/tests/e2e.local.mjs +0 -54
- package/apps/vibe/tests/server.smoke.mjs +0 -106
- package/apps/vibe/update_website.mjs +0 -74
- package/apps/vibe/vite.config.js +0 -19
- package/lib/crew-lead/chat-handler.mjs.bak +0 -1274
- 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!** 🐝✨
|
package/apps/vibe/ROADMAP.md
DELETED
|
@@ -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.
|