vibe64 0.1.38 → 0.1.40

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 (261) hide show
  1. package/bin/run.js +1942 -1846
  2. package/bin/server.js +136 -112
  3. package/bin/upgrade-state.js +5023 -4860
  4. package/dist/assets/GithubBrowserTabs-BoDkGFtY.js +1 -0
  5. package/dist/assets/LocalDatabaseServer-BWAvRlUl.css +1 -0
  6. package/dist/assets/LocalDatabaseServer-CVsGChHh.js +2 -0
  7. package/dist/assets/StudioErrorNotice-C_jbvp9V.js +1 -0
  8. package/dist/assets/VAlert-gwuhYlYb.js +1 -0
  9. package/dist/assets/VAutocomplete-D7Vk5wq_.js +1 -0
  10. package/dist/assets/VAvatar-DvRBcmqv.js +1 -0
  11. package/dist/assets/VBtn-BhVEwXLX.js +1 -0
  12. package/dist/assets/VCard-C3Hx769y.js +1 -0
  13. package/dist/assets/VCheckbox-DyCGSN0H.js +1 -0
  14. package/dist/assets/VCheckboxBtn-DCyuVH7W.css +1 -0
  15. package/dist/assets/VCheckboxBtn-DYcQU2Pn.js +1 -0
  16. package/dist/assets/VChip-VVdtjfq-.js +1 -0
  17. package/dist/assets/VDialog-CQDhjRiV.js +1 -0
  18. package/dist/assets/VDivider-Dq25WsKu.js +1 -0
  19. package/dist/assets/VExpansionPanels-C1y-myl5.js +1 -0
  20. package/dist/assets/VMenu-CDcBLYWR.js +1 -0
  21. package/dist/assets/VOverlay-Cp4rFk6g.js +1 -0
  22. package/dist/assets/VRadioGroup-CAjNZwF7.js +1 -0
  23. package/dist/assets/VRow-BskP28jR.js +1 -0
  24. package/dist/assets/VSelect-D3oLvCcB.js +2 -0
  25. package/dist/assets/VSheet-DxYEFfnM.js +1 -0
  26. package/dist/assets/VSkeletonLoader-Cync3lZZ.js +1 -0
  27. package/dist/assets/VSpacer-CgWOWvBh.js +1 -0
  28. package/dist/assets/VSwitch-BxGuGypi.js +1 -0
  29. package/dist/assets/VTextField-C0b_0cSa.js +1 -0
  30. package/dist/assets/VTextField-F6unyhrS.css +1 -0
  31. package/dist/assets/VTextarea-B7sZd1JY.js +1 -0
  32. package/dist/assets/{Vibe64AsyncModuleState-Do9EqX3S.js → Vibe64AsyncModuleState-syuPcpGx.js} +1 -1
  33. package/dist/assets/Vibe64AuthSettingsButton-CmiidAs5.js +5 -0
  34. package/dist/assets/{Vibe64AuthSettingsButton-M44SSmZ9.css → Vibe64AuthSettingsButton-D2lltUhi.css} +1 -1
  35. package/dist/assets/Vibe64CopyCommand-CYiZcy0d.js +1 -0
  36. package/dist/assets/Vibe64CopyCommand-ClbQLYZi.css +1 -0
  37. package/dist/assets/{Vibe64DashboardBackButton-BH_8j_VR.js → Vibe64DashboardBackButton-Go_MJuIK.js} +1 -1
  38. package/dist/assets/{Vibe64DashboardPageHeader-BXQR00HK.js → Vibe64DashboardPageHeader-BMrdRph6.js} +1 -1
  39. package/dist/assets/Vibe64DashboardPageHeader-CdlzsyKQ.css +1 -0
  40. package/dist/assets/Vibe64DashboardShell-MCzEQCWu.js +1 -0
  41. package/dist/assets/{Vibe64DatabaseWorkspace-Ca8IHSRq.js → Vibe64DatabaseWorkspace-DM9V017v.js} +3 -3
  42. package/dist/assets/{Vibe64DatabaseWorkspace-DPDMxhAW.css → Vibe64DatabaseWorkspace-DePBDUMy.css} +1 -1
  43. package/dist/assets/Vibe64OutputControls-CU9H0Dur.js +8 -0
  44. package/dist/assets/{Vibe64OutputControls-Co5YzwcK.css → Vibe64OutputControls-CeBzZPUT.css} +1 -1
  45. package/dist/assets/{Vibe64RepositoryWorkspace-Agyt4O-V.css → Vibe64RepositoryWorkspace-Bw9W691N.css} +1 -1
  46. package/dist/assets/{Vibe64RepositoryWorkspace-BfsZozSJ.js → Vibe64RepositoryWorkspace-DaAChLA8.js} +2 -2
  47. package/dist/assets/{Vibe64SessionFiles-n87RqqY6.js → Vibe64SessionFiles-CM2EzXBf.js} +4 -4
  48. package/dist/assets/Vibe64SessionFiles-DsPb8hOe.css +1 -0
  49. package/dist/assets/{Vibe64TemporaryAiFixAction-BiuIE9mC.js → Vibe64TemporaryAiFixAction-CIePbdW8.js} +1 -1
  50. package/dist/assets/{Vibe64UiStoryboardView-BhKRpL0N.js → Vibe64UiStoryboardView-Bp9STItF.js} +1 -1
  51. package/dist/assets/{Vibe64UnavailableSessions-Ca5nC7KH.js → Vibe64UnavailableSessions-JBgHzM-j.js} +1 -1
  52. package/dist/assets/{_sessionId_-B_TTRB4c.js → _sessionId_-DVHd6D5V.js} +1 -1
  53. package/dist/assets/{_sessionTool_-1V-z6Pbp.js → _sessionTool_-BV1AwpUx.js} +1 -1
  54. package/dist/assets/_slug_-DsfaE8Vh.js +25 -0
  55. package/dist/assets/_slug_-_qfQqdHb.css +1 -0
  56. package/dist/assets/{access-tl4ht_d8.js → access-BbzSuMt5.js} +1 -1
  57. package/dist/assets/app-BNh2oZg-.js +1 -0
  58. package/dist/assets/assistantRouting-DeE8jvtE.js +3 -0
  59. package/dist/assets/{changes-DZWHZguL.js → changes-D8Koqrqg.js} +1 -1
  60. package/dist/assets/client-CybfBKCn.js +2 -0
  61. package/dist/assets/client-D6UGamrv.css +1 -0
  62. package/dist/assets/{conversation-B90ERX9h.js → conversation-DZW4-Wck.js} +2 -2
  63. package/dist/assets/{conversation-vxJGwmtW.css → conversation-TK6EmDk4.css} +1 -1
  64. package/dist/assets/{createSimpleFunctional-CZTGuNuR.js → createSimpleFunctional-zlXZooQW.js} +1 -1
  65. package/dist/assets/{dashboard-iREwhGqv.js → dashboard-DLrmf5ed.js} +1 -1
  66. package/dist/assets/definitions-DgyQJgn-.js +1 -0
  67. package/dist/assets/dialog-transition-D2vqGksQ.js +1 -0
  68. package/dist/assets/env-B5V1EC4M.css +1 -0
  69. package/dist/assets/env-rVQwLtYr.js +1 -0
  70. package/dist/assets/health-92hh8xXh.css +1 -0
  71. package/dist/assets/health-B6r9LLrd.js +1 -0
  72. package/dist/assets/{history-DVURy45X.js → history-C6xLWUxL.js} +1 -1
  73. package/dist/assets/incoming-Bdqo8z25.css +1 -0
  74. package/dist/assets/incoming-CNwZa_yD.js +2 -0
  75. package/dist/assets/index-B9P6KjvH.js +138 -0
  76. package/dist/assets/{index-irlMYzLh.css → index-BC29JK2e.css} +1 -1
  77. package/dist/assets/{integrations-Dy5jIiJ5.js → integrations-CcrqPXxj.js} +10 -10
  78. package/dist/assets/integrations-Co8WvCiD.css +1 -0
  79. package/dist/assets/issues-DEjIlMdl.js +1 -0
  80. package/dist/assets/layout-B2Ap07aa.js +1 -0
  81. package/dist/assets/{lazy-NHSwD9FS.js → lazy-BjyT2XvW.js} +1 -1
  82. package/dist/assets/{learning-_O1PEaam.js → learning-BP1xvd8w.js} +1 -1
  83. package/dist/assets/mdi-Bt90Ns76.js +1 -0
  84. package/dist/assets/placement-CQy46H3H.js +1 -0
  85. package/dist/assets/publish-CPWnztCc.css +1 -0
  86. package/dist/assets/publish-CVXolnAG.js +3 -0
  87. package/dist/assets/pull-requests-BjwokcU0.css +1 -0
  88. package/dist/assets/pull-requests-DdgzLzY_.js +1 -0
  89. package/dist/assets/{repository-BUfUAyS9.js → repository-5S0LzRq3.js} +1 -1
  90. package/dist/assets/ripple-EFNA8EBu.js +11 -0
  91. package/dist/assets/rolldown-runtime-DBalRfVu.js +1 -0
  92. package/dist/assets/{session-BdhKrcX4.js → session-BGpiZThC.js} +1 -1
  93. package/dist/assets/{settings-CzhIcn9K.js → settings-BKP_eQ3F.js} +1 -1
  94. package/dist/assets/settings-D8x4KUqV.css +1 -0
  95. package/dist/assets/shared-DZETtWRH.js +2 -0
  96. package/dist/assets/studioGateApi-BXHVBVEc.js +1 -0
  97. package/dist/assets/studioUrls-DpSS-0z1.js +1 -0
  98. package/dist/assets/useArchivedVibe64Sessions-D8DWpcSy.js +1 -0
  99. package/dist/assets/useCommand-nWFczmJy.js +1 -0
  100. package/dist/assets/useEndpointResource-Ds8EDBZ2.js +1 -0
  101. package/dist/assets/useRealtimeEvent-DrOiU8lJ.js +1 -0
  102. package/dist/assets/{useUiFeedback-BPBF_0bp.js → useUiFeedback-CMwE4MLs.js} +1 -1
  103. package/dist/assets/useVibe64ConversationLog-D-Vkq0sK.js +1 -0
  104. package/dist/assets/{useVibe64DatabaseTools-4o6S8eXq.js → useVibe64DatabaseTools-Dpm53ruL.js} +1 -1
  105. package/dist/assets/useVibe64ProjectScope-B5ogg6jd.js +1 -0
  106. package/dist/assets/useVibe64SessionData-CGJXj3r7.js +1 -0
  107. package/dist/assets/{useVibe64SessionSelection-CuZCzAcY.js → useVibe64SessionSelection-BEqKR412.js} +1 -1
  108. package/dist/assets/{useVibe64SystemGraph-B4RmsC9Y.js → useVibe64SystemGraph-DbSfrYF8.js} +1 -1
  109. package/dist/assets/{useVibe64Terminal-Cg3idMcy.js → useVibe64Terminal-I7Sf6xMW.js} +1 -1
  110. package/dist/assets/vibe64ProjectScope.local-B06ABkhI.js +1 -0
  111. package/dist/assets/vibe64SavedEnvValues-B_QE9aAj.js +1 -0
  112. package/dist/assets/vibe64SessionFocus-CA-sk8Ri.css +1 -0
  113. package/dist/assets/vibe64SessionFocus-tv2wz7_H.js +1 -0
  114. package/dist/assets/{vibe64SessionInfo-BuBUdL-e.js → vibe64SessionInfo-B0uItVOK.js} +1 -1
  115. package/dist/assets/{vibe64SessionToolDefinitions-BJaJH5LR.js → vibe64SessionToolDefinitions-Dsn8WYmO.js} +1 -1
  116. package/dist/index.html +56 -46
  117. package/docs/colleague-usage/account-profile-and-appearance.md +1 -1
  118. package/docs/colleague-usage/{ai-accounts-and-routing.md → ai-accounts.md} +41 -114
  119. package/docs/colleague-usage/ai-model-setups.md +159 -0
  120. package/docs/colleague-usage/ai-onboarding.md +94 -21
  121. package/docs/colleague-usage/ai-personal-use.md +41 -0
  122. package/docs/colleague-usage/auto-workflow.md +8 -3
  123. package/docs/colleague-usage/codex-context-recovery.md +2 -1
  124. package/docs/colleague-usage/coding-agent-goals.md +7 -4
  125. package/docs/colleague-usage/coding-agents.md +8 -5
  126. package/docs/colleague-usage/colleague-watches.md +15 -4
  127. package/docs/colleague-usage/colleague.md +21 -5
  128. package/docs/colleague-usage/connected-contributions.md +13 -13
  129. package/docs/colleague-usage/connected-projects.md +2 -2
  130. package/docs/colleague-usage/conversation-context.md +1 -1
  131. package/docs/colleague-usage/dashboard-navigation.md +5 -3
  132. package/docs/colleague-usage/development-env.md +21 -4
  133. package/docs/colleague-usage/file-interfaces.md +1 -1
  134. package/docs/colleague-usage/github-work.md +8 -8
  135. package/docs/colleague-usage/health-checks.md +52 -18
  136. package/docs/colleague-usage/incoming-changes.md +3 -3
  137. package/docs/colleague-usage/integrations.md +5 -3
  138. package/docs/colleague-usage/learning-course-catalogue.md +3 -3
  139. package/docs/colleague-usage/learning-environment.md +57 -50
  140. package/docs/colleague-usage/learning-mode-ui.md +13 -10
  141. package/docs/colleague-usage/learning-practice-projects.md +13 -2
  142. package/docs/colleague-usage/learning-teacher-guide.md +9 -4
  143. package/docs/colleague-usage/learning-with-colleague.md +9 -5
  144. package/docs/colleague-usage/lesson-authoring.md +12 -12
  145. package/docs/colleague-usage/lesson-step-bar.md +32 -33
  146. package/docs/colleague-usage/main-chat-approvals.md +150 -0
  147. package/docs/colleague-usage/preview-browser-checks.md +5 -1
  148. package/docs/colleague-usage/project-language-tools.md +16 -2
  149. package/docs/colleague-usage/project-settings.md +1 -1
  150. package/docs/colleague-usage/project-setup.md +17 -7
  151. package/docs/colleague-usage/publishing.md +185 -0
  152. package/docs/colleague-usage/running-vibe64-on-your-computer.md +54 -6
  153. package/docs/colleague-usage/sessions.md +18 -10
  154. package/docs/colleague-usage/set-up-linux.md +254 -0
  155. package/docs/colleague-usage/set-up-macos.md +199 -0
  156. package/docs/colleague-usage/set-up-windows.md +76 -0
  157. package/docs/colleague-usage/starter-apps.md +21 -4
  158. package/docs/colleague-usage/teaching-content.md +2 -2
  159. package/docs/colleague-usage/team-ai-access.md +108 -0
  160. package/docs/colleague-usage/temporary-chats.md +9 -7
  161. package/docs/colleague-usage/workspace-preparation.md +50 -1
  162. package/docs/templates/learn-topic/README.md +3 -3
  163. package/docs/templates/learn-topic/training/lessons/TOPIC-01/lesson.json +2 -1
  164. package/docs/training-content.md +39 -16
  165. package/node_modules/@jskit-ai/assistant-core/package.json +1 -1
  166. package/node_modules/@jskit-ai/assistant-runtime/package.json +1 -1
  167. package/node_modules/@jskit-ai/assistant-voice/package.json +1 -1
  168. package/node_modules/@jskit-ai/connector-google-calendar/package.json +1 -1
  169. package/node_modules/@jskit-ai/connectors-catalog/package.json +1 -1
  170. package/node_modules/@jskit-ai/connectors-catalog/patterns/oauth-connection/PATTERN.md +25 -0
  171. package/node_modules/@jskit-ai/connectors-core/package.json +1 -1
  172. package/node_modules/@jskit-ai/http-runtime/package.json +1 -1
  173. package/node_modules/@jskit-ai/kernel/package.json +1 -1
  174. package/node_modules/@jskit-ai/realtime/package.json +1 -1
  175. package/node_modules/@jskit-ai/resource-core/package.json +1 -1
  176. package/node_modules/@jskit-ai/resource-crud-core/package.json +1 -1
  177. package/node_modules/@jskit-ai/uploads-runtime/package.json +1 -1
  178. package/node_modules/@local/vibe64-accounts/package.json +2 -1
  179. package/node_modules/@local/vibe64-core/package.json +4 -1
  180. package/node_modules/@local/vibe64-execution/src/host/execHelper.js +82 -81
  181. package/node_modules/@local/vibe64-genesis/bin/vibe64-genesis-host-context +73 -69
  182. package/node_modules/@local/vibe64-genesis/package.json +1 -0
  183. package/node_modules/@local/vibe64-genesis/src/server/agentSpecs.js +118 -68
  184. package/node_modules/@local/vibe64-genesis/src/server/index.js +501 -415
  185. package/node_modules/@local/vibe64-genesis/src/server/packaging.js +105 -0
  186. package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +143 -139
  187. package/node_modules/@local/vibe64-packaging/package.json +26 -0
  188. package/node_modules/@local/vibe64-packaging/src/server/packers/capacitor/ShellIcons.java +112 -0
  189. package/node_modules/@local/vibe64-project/package.json +3 -1
  190. package/node_modules/@local/vibe64-publishing/package.json +12 -0
  191. package/node_modules/@local/vibe64-runtime/src/server/codexAppServerProcess.js +7 -7
  192. package/node_modules/@local/vibe64-runtime/src/shared/assistantRoutingScores.json +25 -22
  193. package/node_modules/@local/vibe64-terminals/package.json +2 -1
  194. package/node_modules/@local/vibe64-terminals/src/server/sessionWorkOperationCommand.js +1340 -1300
  195. package/node_modules/@local/vibe64-training/package.json +2 -1
  196. package/package.json +19 -15
  197. package/server.bundle.mjs +42890 -40887
  198. package/dist/assets/GithubBrowserTabs-BykoCFfz.js +0 -1
  199. package/dist/assets/StudioErrorNotice-CSrUw1QV.js +0 -1
  200. package/dist/assets/VAlert-P256xaE0.js +0 -1
  201. package/dist/assets/VAutocomplete-BDb95qJX.js +0 -1
  202. package/dist/assets/VAvatar-DPzqDH4r.js +0 -1
  203. package/dist/assets/VBtn-B2MBK2DL.js +0 -1
  204. package/dist/assets/VCard-mXy0k4aS.js +0 -1
  205. package/dist/assets/VCheckbox-C7A1ZW4D.js +0 -1
  206. package/dist/assets/VChip-CcI-Oo2J.js +0 -1
  207. package/dist/assets/VDialog-Bu3EfKb1.js +0 -1
  208. package/dist/assets/VDivider-BMEqUoAB.js +0 -1
  209. package/dist/assets/VExpansionPanels-Dgjrop0V.js +0 -1
  210. package/dist/assets/VMenu-C_x18lwb.js +0 -1
  211. package/dist/assets/VOverlay-CeMZurIN.js +0 -1
  212. package/dist/assets/VRadioGroup-CUu2-KIP.js +0 -1
  213. package/dist/assets/VRow-Cpw7OHQV.js +0 -1
  214. package/dist/assets/VSelect-DL3HaA5m.js +0 -2
  215. package/dist/assets/VSheet-DZWsu0kL.js +0 -1
  216. package/dist/assets/VSkeletonLoader-CttxM1tw.js +0 -1
  217. package/dist/assets/VSpacer-Dhmsvk4t.js +0 -1
  218. package/dist/assets/VSwitch-BRHeDJkH.js +0 -1
  219. package/dist/assets/VTextField-BR2eZeFT.js +0 -1
  220. package/dist/assets/VTextField-BiatYyd3.css +0 -1
  221. package/dist/assets/VTextarea-DbqamXJd.js +0 -1
  222. package/dist/assets/Vibe64AuthSettingsButton-CIwtchKm.js +0 -5
  223. package/dist/assets/Vibe64DashboardPageHeader-Gm1IvlHx.css +0 -1
  224. package/dist/assets/Vibe64DashboardShell-DXVDJUAY.js +0 -1
  225. package/dist/assets/Vibe64OutputControls-DngQNTTt.js +0 -8
  226. package/dist/assets/Vibe64SessionFiles-Bl8wJ5Sk.css +0 -1
  227. package/dist/assets/_slug_-Buxpw0T4.css +0 -1
  228. package/dist/assets/_slug_-DsqilUs_.js +0 -24
  229. package/dist/assets/app-DT4_MliP.js +0 -1
  230. package/dist/assets/assistantRouting-D4XpXcEf.js +0 -3
  231. package/dist/assets/client-BWV84wi2.js +0 -2
  232. package/dist/assets/client-DGrP-2AJ.css +0 -1
  233. package/dist/assets/definitions-CNu5E87y.js +0 -1
  234. package/dist/assets/env-BzRtyO0w.css +0 -1
  235. package/dist/assets/env-D5KpTEw7.js +0 -1
  236. package/dist/assets/health-BJvooRnJ.css +0 -1
  237. package/dist/assets/health-BhoO1d4h.js +0 -1
  238. package/dist/assets/incoming-DWDrmxyH.css +0 -1
  239. package/dist/assets/incoming-DzADFGqp.js +0 -2
  240. package/dist/assets/index-GBRpNZLy.js +0 -138
  241. package/dist/assets/integrations-Cq1x-Di9.css +0 -1
  242. package/dist/assets/issues-lh7R775d.js +0 -1
  243. package/dist/assets/mdi-CG9pWOSj.js +0 -1
  244. package/dist/assets/placement-BF-zIEhA.js +0 -1
  245. package/dist/assets/pull-requests-ByE-Dvk7.js +0 -1
  246. package/dist/assets/pull-requests-CdbhyFOv.css +0 -1
  247. package/dist/assets/ripple-BVltMmyV.js +0 -11
  248. package/dist/assets/settings-BopLnpB0.css +0 -1
  249. package/dist/assets/shared-DpMvYJO3.js +0 -2
  250. package/dist/assets/studioGateApi-DcCqiD9V.js +0 -1
  251. package/dist/assets/studioUrls-DmMMIScP.js +0 -1
  252. package/dist/assets/useArchivedVibe64Sessions-CLHJOyeW.js +0 -1
  253. package/dist/assets/useCommand-Bqxb-naz.js +0 -1
  254. package/dist/assets/useEndpointResource-DWoQ2keu.js +0 -1
  255. package/dist/assets/useRealtimeEvent-Bwapstla.js +0 -1
  256. package/dist/assets/useVibe64ConversationLog-B4JgmxUf.js +0 -1
  257. package/dist/assets/useVibe64Learning-DyqXkpLw.js +0 -1
  258. package/dist/assets/useVibe64ProjectScope-Bp1ImZlz.js +0 -1
  259. package/dist/assets/useVibe64SessionData-YhhE_5pC.js +0 -1
  260. package/dist/assets/vibe64SessionFocus-Cz5Vq1re.js +0 -1
  261. package/dist/assets/vibe64SessionFocus-OJ2toBd9.css +0 -1
@@ -12,22 +12,67 @@ run `PORT=3001 npx vibe64 --no-open` and open `http://127.0.0.1:3001` yourself.
12
12
 
13
13
  Nothing needs configuring. Vibe64 runs as you, with your own tools and folders.
14
14
 
15
+ Setting up a computer for the first time? Follow the step-by-step guide for
16
+ yours: [Linux](set-up-linux.md) (Ubuntu, Debian, Fedora, Arch),
17
+ [macOS](set-up-macos.md) or [Windows](set-up-windows.md) (through WSL). Each
18
+ covers Node.js, Git, an AI tool, project languages, build tools and database
19
+ servers, and the **Other ways** links on tool rows open the matching section.
20
+
15
21
  ## Tools Vibe64 uses
16
22
 
17
23
  Vibe64 runs the tools already installed on your computer: the ones your
18
24
  terminal finds on its `PATH`, plus Homebrew's `/opt/homebrew/bin` on macOS.
19
25
  That includes Node.js, npm, Git and any language tools your projects need.
20
- Install or upgrade them the way you normally would; Vibe64 uses the new version
26
+ Your own installs come first: `~/.local/bin`, mise's shims folder
27
+ (`~/.local/share/mise/shims`) and the Claude Code, opencode, rustup and Bun
28
+ folders are searched before the system folders, so `mise use -g python@3.13`
29
+ beats an older system Python even before your shell profile is reloaded. On
30
+ Debian and Ubuntu the newest `/usr/lib/postgresql/<version>/bin` is added, and on
31
+ macOS Homebrew's PostgreSQL and MariaDB folders, so their programs are found.
32
+ Install or upgrade tools the way you normally would; Vibe64 uses the new version
21
33
  the next time it runs a command.
22
34
 
35
+ Vibe64 needs Node.js (the version it declares), Git and one AI tool. Everything
36
+ else depends on the project: a tool row appears only where a step needs it, for
37
+ example after **Preparing workspace** fails (see
38
+ [Project language tools](project-language-tools.md)).
39
+
40
+ On native Windows, `npx vibe64` stops and explains that Vibe64 runs on Windows
41
+ inside WSL2 (Ubuntu), with a link to [Set up Windows](set-up-windows.md). With
42
+ the wrong Node.js version it stops and shows the mise command that installs the
43
+ right one, with a link to the guide's Node.js step: mise must also be added to
44
+ your shell before a new terminal finds the new Node.js.
45
+
23
46
  - **AI agents.** Claude Code, Codex and opencode are used through their own
24
47
  commands, so each must be installed on this computer before you can use it.
25
- See [AI accounts](ai-accounts-and-routing.md) for what to install and how to
48
+ See [AI accounts](ai-accounts.md) for what to install and how to
26
49
  check again.
27
50
  - **npm global installs** go wherever your own npm configuration puts them.
28
51
  - **Playwright** uses its own browser cache. If **Health** reports that
29
52
  Playwright or its Chromium is missing, install Playwright, then run
30
- `playwright install chromium`.
53
+ `playwright install chromium`. The coding agent's Preview browser checks use
54
+ the project's own Playwright when it has one, otherwise the `playwright`
55
+ command installed on this computer (for example `npm install -g playwright`).
56
+ A Django, Rails or Spring Boot project therefore needs no Node.js packages
57
+ for these checks.
58
+
59
+ ## Git
60
+
61
+ Vibe64 keeps each project's history with Git (2.28 or newer).
62
+
63
+ - **Git missing or too old.** The repository button at the top of a project
64
+ says **Git needed** (or **Update Git**). Open it for the install command for
65
+ this computer, with a copy button; after installing, press **Check again**.
66
+ - **A folder without Git.** The button says **No Git yet**. Open it and choose
67
+ **Start version control here** to start Git in that folder. Vibe64 never does
68
+ this by itself, and nothing is uploaded.
69
+ - **Your name on commits.** Commits use the name and email from your own Git
70
+ settings. If Git has none, they are saved with a stand-in name ending in
71
+ “via Vibe64”, and **Health** and the Save result show the two
72
+ `git config --global` lines to set yours.
73
+ - **Signed commits.** If your Git signs every commit (`commit.gpgsign`) and the
74
+ key needs a passphrase, Vibe64 can't type it. Make one signed commit in a
75
+ terminal to unlock the key, then try again. Vibe64 doesn't change the setting.
31
76
 
32
77
  ## Where Vibe64 keeps things
33
78
 
@@ -56,6 +101,9 @@ itself. To keep using the old location instead, start Vibe64 with
56
101
 
57
102
  ## Colleague
58
103
 
59
- Colleague can explain where Vibe64 keeps things and which tools it uses, and can
60
- open **Health** to check them. Installing tools, moving folders and restarting
61
- Vibe64 happen in your own terminal; Colleague cannot run them for you.
104
+ Colleague can explain where Vibe64 keeps things, which tools it uses and every
105
+ step of the setup guides. It can run **Health**, check whether a named tool runs
106
+ now, check a project's database server and save non-secret connection values
107
+ in **Env** when you ask. Installing tools, editing shell files, moving folders
108
+ and restarting Vibe64 happen in your own terminal; Colleague cannot run them for
109
+ you and never uses `sudo`.
@@ -1,9 +1,10 @@
1
1
  # Create and switch sessions
2
2
 
3
3
  Use **New session** (+), or **Create session** when there are no open sessions,
4
- to open **Start an AI session**. It lists **Claude Code** first, then **Codex**,
5
- then **OpenCode**, and preselects the first available one. Choose an available
6
- orchestrator, review any branch choice, then select **Create session** (or
4
+ to open **Start an AI session**. It shows **Runs on your main AI:** and the main
5
+ AI's model; every session runs on that AI setup, with no per-session tool
6
+ choice. Select **Change** to open AI setup instead. Review any branch choice,
7
+ then select **Create session** (or
7
8
  **Create branch & session**). While **Creating session…** is shown, the dialog
8
9
  shows a progress bar and explains that it is copying the project source. It stays open: clicking outside,
9
10
  pressing Escape, Close and Cancel cannot dismiss it. On success it closes and
@@ -25,9 +26,10 @@ followed by the project's setup steps. The assistant can start when preparation
25
26
  finishes; see [Prepare a session after updating its source](workspace-preparation.md)
26
27
  for failures and retry.
27
28
 
28
- Creation through an action without an explicit AI choice uses the first available
29
- workflow from the same picker. An explicit choice is preserved even when it is
30
- unavailable: fix its account or Model routing settings before retrying. Colleague
29
+ Creation through an action without an explicit AI choice uses the main AI. An
30
+ explicit model choice makes the new chat Custom and is preserved even when it is
31
+ unavailable: fix its account or AI setup before retrying. A team member's new
32
+ session still records the owner's main AI; main chat runs on the owner's AI. Colleague
31
33
  can read the available choices and explain recovery; it must not claim a failed
32
34
  request left no saved lesson without checking that lesson's current state.
33
35
 
@@ -144,8 +146,9 @@ permissions and confirmation still apply.
144
146
 
145
147
  ## Chat availability
146
148
 
147
- The chat checks which modes you can use and shows the effective assistant,
148
- shared-backup label or an actionable connection message. These lightweight
149
+ The chat checks which modes you can use and shows the effective assistant or an
150
+ actionable connection message. Modes that run on the owner's AI are not listed
151
+ for team members. These lightweight
149
152
  checks do not start a model or download its repeated execution plan. Opening
150
153
  **Chat mode** still shows the available choices; access is checked again when
151
154
  work is sent. Colleague can explain an unavailable mode, but cannot grant access.
@@ -237,10 +240,15 @@ not require an AI connection. Archive or renewal already in progress still block
237
240
  You can still browse and work in other session tabs; the server-selected source
238
241
  link stays on the pinned session. Cross-project requests addressed to the
239
242
  server-selected session also keep that destination. Pinning does not Save,
240
- publish, freeze file contents, or deploy.
243
+ push, freeze file contents, or deploy.
241
244
 
242
245
  The pinned session cannot be archived or renewed, and the project cannot close
243
246
  or be closed by idle cleanup. Closing your browser does not remove the pin.
247
+ Idle cleanup otherwise closes an open project, with its Preview, terminals and
248
+ assistant processes, 30 to 35 minutes after its last recorded activity (opening
249
+ it, session changes and assistant work). Leaving the project or closing the
250
+ browser does not close it sooner; close the project yourself to free its
251
+ memory at once. A running assistant turn or active goal keeps it open.
244
252
  The pin survives server restarts. To change it, return to the pinned session and
245
253
  choose **Unpin session**; tab selection then controls the source link again.
246
254
  Other sessions show a disabled pin with **Unpin the project's pinned session first**.
@@ -248,7 +256,7 @@ Desktop and mobile use the same pin button beside Save. Learning sessions have
248
256
  no source pin. Separate project pins do not affect each other.
249
257
 
250
258
  Colleague can explain the pin or, on your explicit request, pin/unpin a named
251
- session through its session action. Source cleanliness and publication checks
259
+ session through its session action. Source cleanliness and saved-work checks
252
260
  for host updates still apply to the pinned source.
253
261
 
254
262
  ## Answer clarification questions
@@ -0,0 +1,254 @@
1
+ # Set up Linux for Vibe64
2
+
3
+ A step-by-step setup for running Vibe64 on your own Linux computer: Ubuntu and
4
+ Debian (also inside WSL on Windows), Fedora and Arch. Do the steps up to **An AI tool**
5
+ once. The project steps only matter when a project needs them, and Vibe64 tells
6
+ you when: a row with the exact command appears where the work needs the tool.
7
+
8
+ Commands that start with `sudo` ask for your computer password. Nothing shows
9
+ while you type it; press Enter when done. Everything else installs into your
10
+ home folder and needs no password.
11
+
12
+ ## Basic tools
13
+
14
+ Vibe64 needs `curl` and `git`. Most desktops already have them.
15
+
16
+ | System | Command |
17
+ |---|---|
18
+ | Ubuntu, Debian, WSL | `sudo apt install curl git` |
19
+ | Fedora | `sudo dnf install curl git` |
20
+ | Arch | `sudo pacman -S curl git` |
21
+
22
+ Check: `git --version` prints a version (2.28 or newer).
23
+
24
+ ## Node.js and mise
25
+
26
+ Vibe64 needs **Node.js 26**. Distribution packages are older, so install it
27
+ with [mise](https://mise.jdx.dev/), which installs languages into your home
28
+ folder without a password. Install mise:
29
+
30
+ ```sh
31
+ curl -fsSL https://mise.run | sh
32
+ ```
33
+
34
+ Then add it to your shell, so every terminal (and every program Vibe64 starts)
35
+ finds the tools it installs. For **bash** on Ubuntu, Debian and WSL:
36
+
37
+ ```sh
38
+ echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc
39
+ echo 'eval "$(~/.local/bin/mise activate bash --shims)"' >> ~/.profile
40
+ ```
41
+
42
+ On **Fedora and Arch**, use `~/.bash_profile` instead of `~/.profile` in the
43
+ second line (those systems read `~/.bash_profile` first). If your shell is
44
+ **zsh**, use `activate zsh` and the files `~/.zshrc` and `~/.zprofile`. Other
45
+ shells: see mise's [shell setup](https://mise.jdx.dev/dev-tools/shims.html).
46
+
47
+ Now install Node.js and close the terminal:
48
+
49
+ ```sh
50
+ ~/.local/bin/mise use -g node@26
51
+ ```
52
+
53
+ Open a new terminal. Check: `node --version` prints `v26…`. Always keep the
54
+ `-g`: without it, mise writes a `mise.toml` file into whatever folder you are
55
+ in.
56
+
57
+ ## Start Vibe64
58
+
59
+ In the folder you want to work on, run `npx vibe64`. See
60
+ [Running Vibe64 on your computer](running-vibe64-on-your-computer.md) for the
61
+ options and where Vibe64 keeps its data.
62
+
63
+ ## Git
64
+
65
+ Tell Git who you are, once, so your commits carry your name:
66
+
67
+ ```sh
68
+ git config --global user.name "Your Name"
69
+ git config --global user.email "you@example.com"
70
+ ```
71
+
72
+ Without them Vibe64 still saves your work, using a stand-in name ending in
73
+ “via Vibe64”, and **Health** reminds you. To work with GitHub, connect it in
74
+ **Account settings → GitHub**; signing in fills in your name and email only
75
+ when Git has none.
76
+
77
+ ## An AI tool
78
+
79
+ Vibe64 works through one AI tool on this computer. One is enough; each installs
80
+ into your home folder:
81
+
82
+ | AI | Command |
83
+ |---|---|
84
+ | Claude Code | `curl -fsSL https://claude.ai/install.sh \| bash` |
85
+ | Codex (ChatGPT and OpenAI keys) | `curl -fsSL https://chatgpt.com/codex/install.sh \| sh` |
86
+ | opencode (providers connected through OpenCode) | `curl -fsSL https://opencode.ai/install \| bash` |
87
+
88
+ Then choose **Set up your AI** in Vibe64 and sign in. See
89
+ [AI accounts](ai-accounts.md).
90
+
91
+ ## Project languages
92
+
93
+ Only when a project needs one. When **Preparing workspace** fails because a
94
+ language is missing, the panel shows its row with the command for this
95
+ computer. These install with mise, without a password:
96
+
97
+ | Language | Command |
98
+ |---|---|
99
+ | Python | `mise use -g python@3.13` |
100
+ | Ruby | `mise use -g ruby@3.4` |
101
+ | Java | `mise use -g java@temurin-25` |
102
+ | Go | `mise use -g go` |
103
+ | Rust | `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh` |
104
+ | PHP and Composer | `/bin/bash -c "$(curl -fsSL https://php.new/install/linux)"` |
105
+
106
+ After installing, choose **Check again** on the row; no restart is needed.
107
+
108
+ **Using your system's packages instead.** This works too, but needs a
109
+ password and gives older versions.
110
+
111
+ - Python on Ubuntu, Debian, WSL:
112
+ `sudo apt install python3 python3-venv python3-pip` (without
113
+ `python3-venv`, creating a virtual environment fails with “ensurepip is not
114
+ available”). Fedora: `sudo dnf install python3 python3-pip`. Arch:
115
+ `sudo pacman -S python python-pip`.
116
+ - PHP on Ubuntu, Debian, WSL:
117
+ `sudo apt install php-cli php-mysql php-pgsql php-sqlite3 php-xml php-mbstring php-curl php-zip php-intl unzip composer`.
118
+ Fedora:
119
+ `sudo dnf install php-cli php-mysqlnd php-pgsql php-pdo php-xml php-mbstring php-intl php-pecl-zip composer`.
120
+ On Arch, use the php.new line above: Arch's own PHP needs extensions turned on
121
+ by hand.
122
+ - Ruby from the system is not recommended: installing gems then needs a password.
123
+
124
+ ## Build tools
125
+
126
+ Some packages compile native code (Rails gems such as `psych`, `pg` and
127
+ `mysql2`, Python's `mysqlclient`), so they need a compiler and a few
128
+ libraries. The row is called **Build tools**.
129
+
130
+ Ubuntu, Debian, WSL:
131
+
132
+ ```sh
133
+ sudo apt install build-essential pkg-config libyaml-dev libssl-dev zlib1g-dev libpq-dev default-libmysqlclient-dev libgmp-dev
134
+ ```
135
+
136
+ Fedora:
137
+
138
+ ```sh
139
+ sudo dnf install gcc gcc-c++ make pkgconf-pkg-config libyaml-devel openssl-devel zlib-ng-compat-devel gmp-devel libpq-devel mariadb-connector-c-devel
140
+ ```
141
+
142
+ Arch:
143
+
144
+ ```sh
145
+ sudo pacman -S --needed base-devel libyaml openssl zlib gmp postgresql-libs mariadb-libs
146
+ ```
147
+
148
+ ## Databases
149
+
150
+ Only when a project uses MySQL or PostgreSQL. SQLite needs nothing. You run the
151
+ database server yourself; one you already have is fine. Vibe64 never starts it
152
+ for you.
153
+
154
+ **Install and start it**, once. For MySQL projects, use MariaDB, the
155
+ MySQL-compatible server Linux systems ship.
156
+
157
+ | | MariaDB (for MySQL projects) | PostgreSQL |
158
+ |---|---|---|
159
+ | Ubuntu, Debian, WSL | `sudo apt install mariadb-server` | `sudo apt install postgresql` |
160
+
161
+ Fedora, MariaDB:
162
+
163
+ ```sh
164
+ sudo dnf install mariadb-server
165
+ sudo systemctl enable --now mariadb
166
+ ```
167
+
168
+ Fedora, PostgreSQL:
169
+
170
+ ```sh
171
+ sudo dnf install postgresql-server
172
+ sudo env PGSETUP_INITDB_OPTIONS="--auth-host=scram-sha-256" postgresql-setup --initdb
173
+ sudo systemctl enable --now postgresql
174
+ ```
175
+
176
+ Arch, MariaDB:
177
+
178
+ ```sh
179
+ sudo pacman -S mariadb
180
+ sudo mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
181
+ sudo systemctl enable --now mariadb
182
+ ```
183
+
184
+ Arch, PostgreSQL:
185
+
186
+ ```sh
187
+ sudo pacman -S postgresql
188
+ sudo -iu postgres initdb -D /var/lib/postgres/data --auth-local=peer --auth-host=scram-sha-256
189
+ sudo systemctl enable --now postgresql
190
+ ```
191
+
192
+ On Ubuntu and Debian the server starts by itself. If it is stopped later, start
193
+ it with `sudo service mariadb start` or `sudo service postgresql start`.
194
+
195
+ On Fedora, the PostgreSQL line above lets projects sign in with a password. A
196
+ server set up earlier without it refuses password sign-ins; the panel then says
197
+ the server “doesn't accept password sign-ins”. To fix it, change `ident` to
198
+ `scram-sha-256` on the `127.0.0.1` and `::1` lines of
199
+ `/var/lib/pgsql/data/pg_hba.conf`, then run `sudo systemctl reload postgresql`.
200
+
201
+ **Give the project its own login.** The administrator accounts (`root` for
202
+ MariaDB, `postgres` for PostgreSQL) only sign in from the computer's own
203
+ administrator account, so projects need a login of their own. In the failed
204
+ step's **database server** panel, choose **Suggest a user and password**, open
205
+ **Create a login and database**, copy the command and paste it into a terminal.
206
+ Then choose **Save and check**. When the panel says connected, choose
207
+ **Retry**. See [Workspace preparation](workspace-preparation.md).
208
+
209
+ If you already run Oracle MySQL, keep it: put its host, port, user and password
210
+ in the panel or in **Env**. Don't install MariaDB next to it; the two replace
211
+ each other's packages.
212
+
213
+ ## Extras
214
+
215
+ Nice to have; nothing depends on them.
216
+
217
+ | Tool | Ubuntu, Debian, WSL | Fedora | Arch |
218
+ |---|---|---|---|
219
+ | GitHub CLI | `mise use -g gh` | `mise use -g gh` | `sudo pacman -S github-cli` |
220
+ | ripgrep (faster search) | `sudo apt install ripgrep` | `sudo dnf install ripgrep` | `sudo pacman -S ripgrep` |
221
+ | Browser for automated checks | `npx playwright install --with-deps chromium` | `npx playwright install chromium` | `npx playwright install chromium` |
222
+
223
+ Playwright installs the libraries its browser needs only on Ubuntu and Debian;
224
+ on Fedora and Arch, if the browser doesn't start, install the libraries it
225
+ names. Don't install the GitHub CLI with snap. GitHub's own
226
+ [install page](https://github.com/cli/cli/blob/trunk/docs/install_linux.md)
227
+ lists the official package repositories.
228
+
229
+ ## Check your setup
230
+
231
+ Open **Dashboard → Health**. The top line says **Vibe64 has what it needs.**
232
+ when Node.js, Git and an AI tool all run. Each missing tool shows its command
233
+ with a copy button and **Check again**. A tool counts only when it actually
234
+ starts, so a broken install shows as **didn't start**, not as ready.
235
+
236
+ If a tool works in your terminal but Vibe64 can't find it, it is probably
237
+ installed somewhere only your interactive shell knows. Check the `mise` lines
238
+ above, then start Vibe64 again from a new terminal.
239
+
240
+ ## Ask Colleague
241
+
242
+ Colleague can walk you through any step here and explain what a row or message
243
+ means. It can also do the safe parts for you, when you ask:
244
+
245
+ - check whether a tool runs now (“is Ruby installed?”), or run all of
246
+ **Health**;
247
+ - check the project's database server with the current values, and save the
248
+ host, port, database name and user name you tell it into **Env**;
249
+ - retry the session's **Preparing workspace**, and open **Health** or **Env**.
250
+
251
+ You run the install commands yourself, in your own terminal: Colleague never
252
+ uses `sudo`, never edits your shell files and never installs anything. Never
253
+ type a password into chat; enter it in the panel's password field or in
254
+ **Env**.
@@ -0,0 +1,199 @@
1
+ # Set up a Mac for Vibe64
2
+
3
+ A step-by-step setup for running Vibe64 on your own Mac. Do the steps up to
4
+ **An AI tool** once. The project steps only matter when a project needs them, and
5
+ Vibe64 tells you when: a row with the exact command appears where the work
6
+ needs the tool.
7
+
8
+ Paste each command into **Terminal** (in Applications → Utilities) and press
9
+ Enter. A command that asks for your Mac password shows nothing while you type;
10
+ press Enter when done.
11
+
12
+ ## Basic tools
13
+
14
+ Apple's command line tools give you Git, a compiler and Make:
15
+
16
+ ```sh
17
+ xcode-select --install
18
+ ```
19
+
20
+ A window opens; choose **Install** and wait for it to finish. Check:
21
+ `git --version` prints a version. Until they are installed, `git`, `python3`
22
+ and `cc` on a Mac only open that install window, so Vibe64 shows this one row
23
+ first and checks nothing else that depends on it.
24
+
25
+ ## Homebrew
26
+
27
+ [Homebrew](https://brew.sh/) installs the programs that need more than your
28
+ home folder, such as database servers. Its first install asks for your Mac
29
+ password, so use an administrator account:
30
+
31
+ ```sh
32
+ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
33
+ ```
34
+
35
+ When it finishes, make it available in every terminal:
36
+
37
+ ```sh
38
+ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
39
+ ```
40
+
41
+ That is the folder on Apple silicon Macs; Homebrew prints the right line for
42
+ your Mac at the end of its install, so you can copy it from there. After this
43
+ first install, `brew install …` needs no password. Homebrew supports macOS 15
44
+ (Sequoia) and newer.
45
+
46
+ ## Node.js and mise
47
+
48
+ Vibe64 needs **Node.js 26**. Install it with [mise](https://mise.jdx.dev/),
49
+ which installs languages into your home folder without a password:
50
+
51
+ ```sh
52
+ curl -fsSL https://mise.run | sh
53
+ echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc
54
+ echo 'eval "$(~/.local/bin/mise activate zsh --shims)"' >> ~/.zprofile
55
+ ~/.local/bin/mise use -g node@26
56
+ ```
57
+
58
+ These lines are for zsh, the Mac's standard shell. If you use bash, write
59
+ `activate bash` into `~/.bashrc` and `activate bash --shims` into
60
+ `~/.bash_profile` instead.
61
+
62
+ Close Terminal and open it again. Check: `node --version` prints `v26…`. Always
63
+ keep the `-g`: without it, mise writes a `mise.toml` file into whatever folder
64
+ you are in.
65
+
66
+ ## Start Vibe64
67
+
68
+ In the folder you want to work on, run `npx vibe64`. See
69
+ [Running Vibe64 on your computer](running-vibe64-on-your-computer.md) for the
70
+ options and where Vibe64 keeps its data.
71
+
72
+ ## Git
73
+
74
+ Tell Git who you are, once, so your commits carry your name:
75
+
76
+ ```sh
77
+ git config --global user.name "Your Name"
78
+ git config --global user.email "you@example.com"
79
+ ```
80
+
81
+ Without them Vibe64 still saves your work, using a stand-in name ending in
82
+ “via Vibe64”, and **Health** reminds you. To work with GitHub, connect it in
83
+ **Account settings → GitHub**; signing in fills in your name and email only
84
+ when Git has none.
85
+
86
+ ## An AI tool
87
+
88
+ Vibe64 works through one AI tool on this computer. One is enough; each installs
89
+ into your home folder:
90
+
91
+ | AI | Command |
92
+ |---|---|
93
+ | Claude Code | `curl -fsSL https://claude.ai/install.sh \| bash` |
94
+ | Codex (ChatGPT and OpenAI keys) | `curl -fsSL https://chatgpt.com/codex/install.sh \| sh` |
95
+ | opencode (providers connected through OpenCode) | `curl -fsSL https://opencode.ai/install \| bash` |
96
+
97
+ Then choose **Set up your AI** in Vibe64 and sign in. See
98
+ [AI accounts](ai-accounts.md).
99
+
100
+ ## Project languages
101
+
102
+ Only when a project needs one. When **Preparing workspace** fails because a
103
+ language is missing, the panel shows its row with the command for this Mac.
104
+ These install with mise, without a password:
105
+
106
+ | Language | Command |
107
+ |---|---|
108
+ | Python | `mise use -g python@3.13` |
109
+ | Ruby | `mise use -g ruby@3.4` |
110
+ | Java | `mise use -g java@temurin-25` |
111
+ | Go | `mise use -g go` |
112
+ | Rust | `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh` |
113
+ | PHP and Composer | `/bin/bash -c "$(curl -fsSL https://php.new/install/mac)"` |
114
+
115
+ After installing, choose **Check again** on the row; no restart is needed.
116
+
117
+ The Mac's own Ruby and Python are old, and `/usr/bin/java` only says that no
118
+ Java is installed. Vibe64 looks in mise's folders before the system ones, so
119
+ the versions you install with mise win; each row shows the version and folder it
120
+ found. `brew install ruby` or `brew install python` also work, if you prefer
121
+ Homebrew.
122
+
123
+ ## Build tools
124
+
125
+ Some packages compile native code (Rails gems such as `psych` and `mysql2`,
126
+ Python's `mysqlclient`), so they need Apple's command line tools (step one)
127
+ and a few libraries. The row is called **Build tools**:
128
+
129
+ ```sh
130
+ brew install pkg-config libyaml openssl@3 gmp
131
+ ```
132
+
133
+ For MySQL drivers, also run `brew install mariadb`: the drivers build against
134
+ it. Don't install `mysql-client` for this; its newer versions can't sign in to
135
+ MariaDB users. Vibe64 adds Homebrew's PostgreSQL folder to the PATH of the commands it
136
+ runs, so PostgreSQL drivers find what they need in the server you install
137
+ below.
138
+
139
+ ## Databases
140
+
141
+ Only when a project uses MySQL or PostgreSQL. SQLite needs nothing. You run the
142
+ database server yourself; one you already have is fine. Vibe64 never starts it
143
+ for you.
144
+
145
+ **Install and start it**, once:
146
+
147
+ | Database | Command |
148
+ |---|---|
149
+ | MySQL-compatible (MariaDB) | `brew install mariadb && brew services start mariadb` |
150
+ | PostgreSQL | `brew install postgresql@18 && brew services start postgresql@18` |
151
+
152
+ `brew services` starts the server now and every time you log in. To stop it:
153
+ `brew services stop mariadb` (or `postgresql@18`).
154
+
155
+ **Give the project its own login.** In the failed step's **database server**
156
+ panel, choose **Suggest a user and password**, open **Create a login and
157
+ database**, copy the command and paste it into Terminal. Then choose **Save
158
+ and check**. When the panel says connected, choose **Retry**. See
159
+ [Workspace preparation](workspace-preparation.md).
160
+
161
+ If you already run Oracle MySQL, keep it: put its host, port, user and password
162
+ in the panel or in **Env**. Don't install Homebrew's MariaDB next to it; the two
163
+ conflict.
164
+
165
+ ## Extras
166
+
167
+ Nice to have; nothing depends on them.
168
+
169
+ | Tool | Command |
170
+ |---|---|
171
+ | GitHub CLI | `brew install gh` |
172
+ | ripgrep (faster search) | `brew install ripgrep` |
173
+ | Browser for automated checks | `npx playwright install chromium` |
174
+
175
+ ## Check your setup
176
+
177
+ Open **Dashboard → Health**. The top line says **Vibe64 has what it needs.**
178
+ when Node.js, Git and an AI tool all run. Each missing tool shows its command
179
+ with a copy button and **Check again**. A tool counts only when it actually
180
+ starts, so a broken install shows as **didn't start**, not as ready.
181
+
182
+ If a tool works in Terminal but Vibe64 can't find it, it is probably installed
183
+ somewhere only your interactive shell knows. Check the `mise` and Homebrew
184
+ lines above, then start Vibe64 again from a new Terminal window.
185
+
186
+ ## Ask Colleague
187
+
188
+ Colleague can walk you through any step here and explain what a row or message
189
+ means. It can also do the safe parts for you, when you ask:
190
+
191
+ - check whether a tool runs now (“is Ruby installed?”), or run all of
192
+ **Health**;
193
+ - check the project's database server with the current values, and save the
194
+ host, port, database name and user name you tell it into **Env**;
195
+ - retry the session's **Preparing workspace**, and open **Health** or **Env**.
196
+
197
+ You run the install commands yourself, in Terminal: Colleague never uses
198
+ `sudo`, never edits your shell files and never installs anything. Never type a
199
+ password into chat; enter it in the panel's password field or in **Env**.
@@ -0,0 +1,76 @@
1
+ # Set up Windows for Vibe64 (WSL)
2
+
3
+ Vibe64 runs on Windows inside **WSL**, Windows' built-in Linux, with Ubuntu.
4
+ It doesn't run in PowerShell or Command Prompt: there, `npx vibe64` stops and
5
+ points here. Once Ubuntu is set up, everything else is the same as on Linux.
6
+
7
+ You need Windows 11, or Windows 10 version 2004 or newer.
8
+
9
+ ## Install WSL and Ubuntu
10
+
11
+ 1. Right-click **Start**, choose **Terminal (Admin)** or **Windows PowerShell
12
+ (Admin)**, and run:
13
+
14
+ ```powershell
15
+ wsl --install
16
+ ```
17
+
18
+ 2. Restart Windows when it asks.
19
+ 3. Open **Ubuntu** from the Start menu. The first start takes a minute, then
20
+ asks for a **username and password**. They are for Ubuntu only and don't
21
+ have to match your Windows ones. Remember the password: Ubuntu asks for it
22
+ whenever a command starts with `sudo`. Nothing shows while you type it.
23
+
24
+ If `wsl --install` only prints help text, WSL is already there: run
25
+ `wsl --install -d Ubuntu` instead. Microsoft's
26
+ [install page](https://learn.microsoft.com/en-us/windows/wsl/install) has the
27
+ details.
28
+
29
+ ## Set up Ubuntu
30
+
31
+ From now on, type every command in the **Ubuntu** window, not in PowerShell.
32
+ Follow [Set up Linux](set-up-linux.md) from the start, using the lines for
33
+ **Ubuntu, Debian, WSL**: the basic tools, Node.js with mise, Git, an AI tool,
34
+ and later whatever your projects need. Install the AI tools inside Ubuntu too;
35
+ copies installed on the Windows side don't work from Ubuntu.
36
+
37
+ Two checks after the Node.js step, in a new Ubuntu window:
38
+
39
+ - `which node npx` must print paths that start with `/home/`. A path starting
40
+ with `/mnt/c/` is the Windows Node.js leaking in; it doesn't work with
41
+ Vibe64. Make sure the mise lines are in `~/.bashrc` and `~/.profile`, then
42
+ open a new Ubuntu window.
43
+ - `node --version` prints `v26…`.
44
+
45
+ ## Keep projects inside Ubuntu
46
+
47
+ Put your projects in your Ubuntu home folder (for example `~/Vibe64`, where
48
+ Vibe64 creates new ones), not under `/mnt/c/`:
49
+
50
+ - **Clone inside Ubuntu.** A project cloned with Git for Windows has Windows
51
+ line endings, and its scripts then fail with errors like
52
+ `/usr/bin/env: 'ruby\r': No such file or directory`.
53
+ - **Speed.** Files under `/mnt/c/` are much slower for Linux programs.
54
+
55
+ To see a project's files in Windows, run `explorer.exe .` in its folder.
56
+
57
+ ## Start Vibe64
58
+
59
+ In the Ubuntu window, go to your project folder and run `npx vibe64`. Open the
60
+ address it shows in your normal Windows browser: WSL passes `localhost` through
61
+ to Windows. See [Running Vibe64 on your computer](running-vibe64-on-your-computer.md).
62
+
63
+ ## Databases
64
+
65
+ Install and start them inside Ubuntu, with the Ubuntu lines in
66
+ [Set up Linux](set-up-linux.md#databases). A database server installed on the
67
+ Windows side also works: put its address in the project's **Env** (from inside
68
+ WSL, Windows is not always reachable at `localhost`, so this is the harder
69
+ route).
70
+
71
+ ## Ask Colleague
72
+
73
+ Colleague can explain each step and check what is installed inside Ubuntu (it
74
+ runs **Health** and checks single tools when you ask). Installing WSL, Ubuntu
75
+ and the tools happens in your own terminal; Colleague never runs commands with
76
+ `sudo` or in PowerShell. Never type a password into chat.