@vibesdotdev/cli 0.0.2 → 1.0.0-rc.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 (907) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +261 -1
  3. package/dist/boot/action-lifetime.d.ts +16 -0
  4. package/dist/boot/action-lifetime.d.ts.map +1 -0
  5. package/dist/boot/action-lifetime.js +80 -0
  6. package/dist/boot/action-lifetime.js.map +1 -0
  7. package/dist/boot/bootstrap.d.ts +190 -0
  8. package/dist/boot/bootstrap.d.ts.map +1 -0
  9. package/dist/boot/bootstrap.js +737 -0
  10. package/dist/boot/bootstrap.js.map +1 -0
  11. package/dist/boot/cli-flags.d.ts +45 -0
  12. package/dist/boot/cli-flags.d.ts.map +1 -0
  13. package/dist/boot/cli-flags.js +113 -0
  14. package/dist/boot/cli-flags.js.map +1 -0
  15. package/dist/boot/config.d.ts +25 -0
  16. package/dist/boot/config.d.ts.map +1 -0
  17. package/dist/{config.js → boot/config.js} +1 -1
  18. package/dist/boot/config.js.map +1 -0
  19. package/dist/boot/external-url.d.ts +13 -0
  20. package/dist/boot/external-url.d.ts.map +1 -0
  21. package/dist/boot/external-url.js +66 -0
  22. package/dist/boot/external-url.js.map +1 -0
  23. package/dist/boot/host-argv.d.ts +7 -0
  24. package/dist/boot/host-argv.d.ts.map +1 -0
  25. package/dist/boot/host-argv.js +8 -0
  26. package/dist/boot/host-argv.js.map +1 -0
  27. package/dist/boot/host-bootstrap.d.ts +37 -0
  28. package/dist/boot/host-bootstrap.d.ts.map +1 -0
  29. package/dist/boot/host-bootstrap.js +60 -0
  30. package/dist/boot/host-bootstrap.js.map +1 -0
  31. package/dist/boot/providers.d.ts +35 -0
  32. package/dist/boot/providers.d.ts.map +1 -0
  33. package/dist/boot/providers.js +155 -0
  34. package/dist/boot/providers.js.map +1 -0
  35. package/dist/boot/schemas/external-url.d.ts +11 -0
  36. package/dist/boot/schemas/external-url.d.ts.map +1 -0
  37. package/dist/boot/schemas/external-url.js +3 -0
  38. package/dist/boot/schemas/external-url.js.map +1 -0
  39. package/dist/boot/schemas/host-bootstrap.d.ts +7 -0
  40. package/dist/boot/schemas/host-bootstrap.d.ts.map +1 -0
  41. package/dist/boot/schemas/host-bootstrap.js +3 -0
  42. package/dist/boot/schemas/host-bootstrap.js.map +1 -0
  43. package/dist/boot/schemas/providers.d.ts +23 -0
  44. package/dist/boot/schemas/providers.d.ts.map +1 -0
  45. package/dist/boot/schemas/providers.js +3 -0
  46. package/dist/boot/schemas/providers.js.map +1 -0
  47. package/dist/boot/schemas/types.d.ts +4 -0
  48. package/dist/boot/schemas/types.d.ts.map +1 -0
  49. package/dist/{api → boot}/schemas/types.js.map +1 -1
  50. package/dist/boot/tui-plugin-policy.d.ts +8 -0
  51. package/dist/boot/tui-plugin-policy.d.ts.map +1 -0
  52. package/dist/boot/tui-plugin-policy.js +26 -0
  53. package/dist/boot/tui-plugin-policy.js.map +1 -0
  54. package/dist/boot/version.d.ts +13 -0
  55. package/dist/boot/version.d.ts.map +1 -0
  56. package/dist/boot/version.js +14 -0
  57. package/dist/boot/version.js.map +1 -0
  58. package/dist/bun/index.d.ts +2 -0
  59. package/dist/bun/index.d.ts.map +1 -0
  60. package/dist/bun/index.js +2 -0
  61. package/dist/bun/index.js.map +1 -0
  62. package/dist/bun/interactive-host.d.ts +9 -0
  63. package/dist/bun/interactive-host.d.ts.map +1 -0
  64. package/dist/bun/interactive-host.js +18 -0
  65. package/dist/bun/interactive-host.js.map +1 -0
  66. package/dist/commands/cli.kinds.d.ts +1239 -0
  67. package/dist/commands/cli.kinds.d.ts.map +1 -0
  68. package/dist/commands/cli.kinds.js +138 -0
  69. package/dist/commands/cli.kinds.js.map +1 -0
  70. package/dist/commands/cli.plugin.d.ts +22 -0
  71. package/dist/commands/cli.plugin.d.ts.map +1 -0
  72. package/dist/commands/cli.plugin.js +138 -0
  73. package/dist/commands/cli.plugin.js.map +1 -0
  74. package/dist/commands/completion/bash.d.ts +1 -1
  75. package/dist/commands/completion/bash.d.ts.map +1 -1
  76. package/dist/commands/completion/bash.impl.consumer.d.ts +6 -0
  77. package/dist/commands/completion/bash.impl.consumer.d.ts.map +1 -0
  78. package/dist/commands/completion/bash.impl.consumer.js +6 -0
  79. package/dist/commands/completion/bash.impl.consumer.js.map +1 -0
  80. package/dist/commands/completion/bash.js +4 -2
  81. package/dist/commands/completion/bash.js.map +1 -1
  82. package/dist/commands/completion/completion.consumer.plugin.d.ts +3 -0
  83. package/dist/commands/completion/completion.consumer.plugin.d.ts.map +1 -0
  84. package/dist/commands/completion/completion.consumer.plugin.js +19 -0
  85. package/dist/commands/completion/completion.consumer.plugin.js.map +1 -0
  86. package/dist/commands/completion/completion.descriptor.d.ts +1 -2
  87. package/dist/commands/completion/completion.descriptor.d.ts.map +1 -1
  88. package/dist/commands/completion/completion.descriptor.js +11 -4
  89. package/dist/commands/completion/completion.descriptor.js.map +1 -1
  90. package/dist/commands/completion/completion.descriptors.d.ts +3 -0
  91. package/dist/commands/completion/completion.descriptors.d.ts.map +1 -0
  92. package/dist/commands/completion/completion.descriptors.js +56 -0
  93. package/dist/commands/completion/completion.descriptors.js.map +1 -0
  94. package/dist/commands/completion/completion.impl.d.ts +5 -4
  95. package/dist/commands/completion/completion.impl.d.ts.map +1 -1
  96. package/dist/commands/completion/completion.impl.js +104 -145
  97. package/dist/commands/completion/completion.impl.js.map +1 -1
  98. package/dist/commands/completion/completion.install.impl.consumer.d.ts +4 -0
  99. package/dist/commands/completion/completion.install.impl.consumer.d.ts.map +1 -0
  100. package/dist/commands/completion/completion.install.impl.consumer.js +102 -0
  101. package/dist/commands/completion/completion.install.impl.consumer.js.map +1 -0
  102. package/dist/commands/completion/completion.kinds.d.ts +43 -0
  103. package/dist/commands/completion/completion.kinds.d.ts.map +1 -0
  104. package/dist/commands/completion/completion.kinds.js +17 -0
  105. package/dist/commands/completion/completion.kinds.js.map +1 -0
  106. package/dist/commands/completion/fig.d.ts +1 -1
  107. package/dist/commands/completion/fig.d.ts.map +1 -1
  108. package/dist/commands/completion/fig.impl.consumer.d.ts +6 -0
  109. package/dist/commands/completion/fig.impl.consumer.d.ts.map +1 -0
  110. package/dist/commands/completion/fig.impl.consumer.js +6 -0
  111. package/dist/commands/completion/fig.impl.consumer.js.map +1 -0
  112. package/dist/commands/completion/fish.d.ts +1 -1
  113. package/dist/commands/completion/fish.d.ts.map +1 -1
  114. package/dist/commands/completion/fish.impl.consumer.d.ts +6 -0
  115. package/dist/commands/completion/fish.impl.consumer.d.ts.map +1 -0
  116. package/dist/commands/completion/fish.impl.consumer.js +6 -0
  117. package/dist/commands/completion/fish.impl.consumer.js.map +1 -0
  118. package/dist/commands/completion/tree.d.ts +5 -26
  119. package/dist/commands/completion/tree.d.ts.map +1 -1
  120. package/dist/commands/completion/tree.js +26 -25
  121. package/dist/commands/completion/tree.js.map +1 -1
  122. package/dist/commands/completion/zsh-widget.js +4 -4
  123. package/dist/commands/completion/zsh.d.ts +1 -1
  124. package/dist/commands/completion/zsh.d.ts.map +1 -1
  125. package/dist/commands/completion/zsh.impl.consumer.d.ts +6 -0
  126. package/dist/commands/completion/zsh.impl.consumer.d.ts.map +1 -0
  127. package/dist/commands/completion/zsh.impl.consumer.js +6 -0
  128. package/dist/commands/completion/zsh.impl.consumer.js.map +1 -0
  129. package/dist/commands/completion/zsh.js +1 -1
  130. package/dist/commands/completion/zsh.js.map +1 -1
  131. package/dist/commands/docs/cli.commands.docs.descriptor.d.ts +8 -0
  132. package/dist/commands/docs/cli.commands.docs.descriptor.d.ts.map +1 -0
  133. package/dist/commands/docs/cli.commands.docs.descriptor.js +55 -0
  134. package/dist/commands/docs/cli.commands.docs.descriptor.js.map +1 -0
  135. package/dist/commands/docs/cli.docs.descriptor.d.ts +4 -0
  136. package/dist/commands/docs/cli.docs.descriptor.d.ts.map +1 -0
  137. package/dist/commands/docs/cli.docs.descriptor.js +44 -0
  138. package/dist/commands/docs/cli.docs.descriptor.js.map +1 -0
  139. package/dist/commands/docs/cli.groups.docs.descriptor.d.ts +4 -0
  140. package/dist/commands/docs/cli.groups.docs.descriptor.d.ts.map +1 -0
  141. package/dist/commands/docs/cli.groups.docs.descriptor.js +40 -0
  142. package/dist/commands/docs/cli.groups.docs.descriptor.js.map +1 -0
  143. package/dist/commands/docs/cli.output.docs.descriptor.d.ts +4 -0
  144. package/dist/commands/docs/cli.output.docs.descriptor.d.ts.map +1 -0
  145. package/dist/commands/docs/cli.output.docs.descriptor.js +45 -0
  146. package/dist/commands/docs/cli.output.docs.descriptor.js.map +1 -0
  147. package/dist/commands/docs/content/cli-commands.json +1 -0
  148. package/dist/commands/docs/content/cli-groups.json +1 -0
  149. package/dist/commands/docs/content/cli-output.json +1 -0
  150. package/dist/commands/docs/doc-paths.d.ts +11 -0
  151. package/dist/commands/docs/doc-paths.d.ts.map +1 -0
  152. package/dist/commands/docs/doc-paths.js +32 -0
  153. package/dist/commands/docs/doc-paths.js.map +1 -0
  154. package/dist/commands/docs/generate.d.ts +48 -0
  155. package/dist/commands/docs/generate.d.ts.map +1 -0
  156. package/dist/commands/docs/generate.js +121 -0
  157. package/dist/commands/docs/generate.js.map +1 -0
  158. package/dist/commands/docs/render-command.d.ts +5 -0
  159. package/dist/commands/docs/render-command.d.ts.map +1 -0
  160. package/dist/commands/docs/render-command.js +117 -0
  161. package/dist/commands/docs/render-command.js.map +1 -0
  162. package/dist/commands/docs/render-group.d.ts +5 -0
  163. package/dist/commands/docs/render-group.d.ts.map +1 -0
  164. package/dist/commands/docs/render-group.js +62 -0
  165. package/dist/commands/docs/render-group.js.map +1 -0
  166. package/dist/commands/docs/schemas/generate.d.ts +14 -0
  167. package/dist/commands/docs/schemas/generate.d.ts.map +1 -0
  168. package/dist/commands/docs/schemas/generate.js +3 -0
  169. package/dist/commands/docs/schemas/generate.js.map +1 -0
  170. package/dist/commands/output.d.ts +27 -0
  171. package/dist/commands/output.d.ts.map +1 -0
  172. package/dist/commands/output.js +104 -0
  173. package/dist/commands/output.js.map +1 -0
  174. package/dist/commands/profile/_utils.d.ts +34 -9
  175. package/dist/commands/profile/_utils.d.ts.map +1 -1
  176. package/dist/commands/profile/_utils.js +65 -37
  177. package/dist/commands/profile/_utils.js.map +1 -1
  178. package/dist/commands/profile/profile-env.d.ts +42 -0
  179. package/dist/commands/profile/profile-env.d.ts.map +1 -0
  180. package/dist/commands/profile/profile-env.js +56 -0
  181. package/dist/commands/profile/profile-env.js.map +1 -0
  182. package/dist/commands/profile/profile-group.descriptor.d.ts +1 -1
  183. package/dist/commands/profile/profile-group.descriptor.d.ts.map +1 -1
  184. package/dist/commands/profile/profile.create.descriptor.d.ts +1 -1
  185. package/dist/commands/profile/profile.create.descriptor.d.ts.map +1 -1
  186. package/dist/commands/profile/profile.create.descriptor.js +12 -1
  187. package/dist/commands/profile/profile.create.descriptor.js.map +1 -1
  188. package/dist/commands/profile/profile.create.impl.d.ts +2 -6
  189. package/dist/commands/profile/profile.create.impl.d.ts.map +1 -1
  190. package/dist/commands/profile/profile.create.impl.js +32 -9
  191. package/dist/commands/profile/profile.create.impl.js.map +1 -1
  192. package/dist/commands/profile/profile.delete.descriptor.d.ts +1 -1
  193. package/dist/commands/profile/profile.delete.descriptor.d.ts.map +1 -1
  194. package/dist/commands/profile/profile.delete.impl.d.ts +2 -7
  195. package/dist/commands/profile/profile.delete.impl.d.ts.map +1 -1
  196. package/dist/commands/profile/profile.delete.impl.js +33 -16
  197. package/dist/commands/profile/profile.delete.impl.js.map +1 -1
  198. package/dist/commands/profile/profile.environment.descriptor.d.ts +4 -0
  199. package/dist/commands/profile/profile.environment.descriptor.d.ts.map +1 -0
  200. package/dist/commands/profile/profile.environment.descriptor.js +26 -0
  201. package/dist/commands/profile/profile.environment.descriptor.js.map +1 -0
  202. package/dist/commands/profile/profile.environment.impl.d.ts +14 -0
  203. package/dist/commands/profile/profile.environment.impl.d.ts.map +1 -0
  204. package/dist/commands/profile/profile.environment.impl.js +33 -0
  205. package/dist/commands/profile/profile.environment.impl.js.map +1 -0
  206. package/dist/commands/profile/profile.info.descriptor.d.ts +1 -1
  207. package/dist/commands/profile/profile.info.descriptor.d.ts.map +1 -1
  208. package/dist/commands/profile/profile.info.descriptor.js +5 -1
  209. package/dist/commands/profile/profile.info.descriptor.js.map +1 -1
  210. package/dist/commands/profile/profile.info.impl.d.ts +5 -2
  211. package/dist/commands/profile/profile.info.impl.d.ts.map +1 -1
  212. package/dist/commands/profile/profile.info.impl.js +31 -14
  213. package/dist/commands/profile/profile.info.impl.js.map +1 -1
  214. package/dist/commands/profile/profile.list.descriptor.d.ts +1 -1
  215. package/dist/commands/profile/profile.list.descriptor.d.ts.map +1 -1
  216. package/dist/commands/profile/profile.list.descriptor.js +5 -1
  217. package/dist/commands/profile/profile.list.descriptor.js.map +1 -1
  218. package/dist/commands/profile/profile.list.impl.d.ts +17 -2
  219. package/dist/commands/profile/profile.list.impl.d.ts.map +1 -1
  220. package/dist/commands/profile/profile.list.impl.js +52 -25
  221. package/dist/commands/profile/profile.list.impl.js.map +1 -1
  222. package/dist/commands/profile/profile.use.descriptor.d.ts +1 -1
  223. package/dist/commands/profile/profile.use.descriptor.d.ts.map +1 -1
  224. package/dist/commands/profile/profile.use.impl.d.ts +2 -6
  225. package/dist/commands/profile/profile.use.impl.d.ts.map +1 -1
  226. package/dist/commands/profile/profile.use.impl.js +40 -10
  227. package/dist/commands/profile/profile.use.impl.js.map +1 -1
  228. package/dist/commands/runtime/codegen.command.descriptor.d.ts +26 -12
  229. package/dist/commands/runtime/codegen.command.descriptor.d.ts.map +1 -1
  230. package/dist/commands/runtime/codegen.command.descriptor.js +24 -6
  231. package/dist/commands/runtime/codegen.command.descriptor.js.map +1 -1
  232. package/dist/commands/runtime/codegen.command.impl.d.ts +15 -2
  233. package/dist/commands/runtime/codegen.command.impl.d.ts.map +1 -1
  234. package/dist/commands/runtime/codegen.command.impl.js +17 -30
  235. package/dist/commands/runtime/codegen.command.impl.js.map +1 -1
  236. package/dist/commands/runtime/codegen.d.ts +10 -14
  237. package/dist/commands/runtime/codegen.d.ts.map +1 -1
  238. package/dist/commands/runtime/codegen.declarations.d.ts +6 -0
  239. package/dist/commands/runtime/codegen.declarations.d.ts.map +1 -0
  240. package/dist/commands/runtime/codegen.declarations.js +6 -0
  241. package/dist/commands/runtime/codegen.declarations.js.map +1 -0
  242. package/dist/commands/runtime/codegen.js +85 -58
  243. package/dist/commands/runtime/codegen.js.map +1 -1
  244. package/dist/commands/runtime/export/markdown-document.d.ts +25 -0
  245. package/dist/commands/runtime/export/markdown-document.d.ts.map +1 -0
  246. package/dist/commands/runtime/export/markdown-document.js +38 -0
  247. package/dist/commands/runtime/export/markdown-document.js.map +1 -0
  248. package/dist/commands/runtime/export/markdown.d.ts +17 -0
  249. package/dist/commands/runtime/export/markdown.d.ts.map +1 -0
  250. package/dist/commands/runtime/export/markdown.js +141 -0
  251. package/dist/commands/runtime/export/markdown.js.map +1 -0
  252. package/dist/commands/runtime/export/read.d.ts +27 -0
  253. package/dist/commands/runtime/export/read.d.ts.map +1 -0
  254. package/dist/commands/runtime/export/read.js +128 -0
  255. package/dist/commands/runtime/export/read.js.map +1 -0
  256. package/dist/commands/runtime/export/reading-notes.d.ts +11 -0
  257. package/dist/commands/runtime/export/reading-notes.d.ts.map +1 -0
  258. package/dist/commands/runtime/export/reading-notes.js +45 -0
  259. package/dist/commands/runtime/export/reading-notes.js.map +1 -0
  260. package/dist/commands/runtime/export/register.d.ts +34 -0
  261. package/dist/commands/runtime/export/register.d.ts.map +1 -0
  262. package/dist/commands/runtime/export/register.js +57 -0
  263. package/dist/commands/runtime/export/register.js.map +1 -0
  264. package/dist/commands/runtime/export/schemas.d.ts +104 -0
  265. package/dist/commands/runtime/export/schemas.d.ts.map +1 -0
  266. package/dist/commands/runtime/export/schemas.js +38 -0
  267. package/dist/commands/runtime/export/schemas.js.map +1 -0
  268. package/dist/commands/runtime/export/write.d.ts +16 -0
  269. package/dist/commands/runtime/export/write.d.ts.map +1 -0
  270. package/dist/commands/runtime/export/write.js +36 -0
  271. package/dist/commands/runtime/export/write.js.map +1 -0
  272. package/dist/commands/runtime/export.command.impl.d.ts +18 -0
  273. package/dist/commands/runtime/export.command.impl.d.ts.map +1 -0
  274. package/dist/commands/runtime/export.command.impl.js +39 -0
  275. package/dist/commands/runtime/export.command.impl.js.map +1 -0
  276. package/dist/commands/runtime/export.d.ts +28 -0
  277. package/dist/commands/runtime/export.d.ts.map +1 -0
  278. package/dist/commands/runtime/export.descriptor.d.ts +55 -0
  279. package/dist/commands/runtime/export.descriptor.d.ts.map +1 -0
  280. package/dist/commands/runtime/export.descriptor.js +58 -0
  281. package/dist/commands/runtime/export.descriptor.js.map +1 -0
  282. package/dist/commands/runtime/export.js +28 -0
  283. package/dist/commands/runtime/export.js.map +1 -0
  284. package/dist/commands/runtime/index.d.ts +2 -2
  285. package/dist/commands/runtime/index.d.ts.map +1 -1
  286. package/dist/commands/runtime/index.js +3 -3
  287. package/dist/commands/runtime/index.js.map +1 -1
  288. package/dist/commands/runtime/plugin.d.ts +1 -1
  289. package/dist/commands/runtime/plugin.d.ts.map +1 -1
  290. package/dist/commands/runtime/plugin.js +1 -1
  291. package/dist/commands/runtime/plugin.js.map +1 -1
  292. package/dist/commands/runtime/runtime-group.descriptor.d.ts +1 -1
  293. package/dist/commands/runtime/runtime-group.descriptor.d.ts.map +1 -1
  294. package/dist/commands/schemas/output.d.ts +26 -0
  295. package/dist/commands/schemas/output.d.ts.map +1 -0
  296. package/dist/commands/schemas/output.js +14 -0
  297. package/dist/commands/schemas/output.js.map +1 -0
  298. package/dist/commands/schemas/profile-environment.d.ts +6 -0
  299. package/dist/commands/schemas/profile-environment.d.ts.map +1 -0
  300. package/dist/commands/schemas/profile-environment.js +3 -0
  301. package/dist/commands/schemas/profile-environment.js.map +1 -0
  302. package/dist/commands/schemas/profile-list.d.ts +22 -0
  303. package/dist/commands/schemas/profile-list.d.ts.map +1 -0
  304. package/dist/commands/schemas/profile-list.js +3 -0
  305. package/dist/commands/schemas/profile-list.js.map +1 -0
  306. package/dist/commands/skills/_skills.d.ts +98 -0
  307. package/dist/commands/skills/_skills.d.ts.map +1 -0
  308. package/dist/commands/skills/_skills.js +183 -0
  309. package/dist/commands/skills/_skills.js.map +1 -0
  310. package/dist/commands/skills/skills-group.descriptor.d.ts +4 -0
  311. package/dist/commands/skills/skills-group.descriptor.d.ts.map +1 -0
  312. package/dist/commands/skills/skills-group.descriptor.js +12 -0
  313. package/dist/commands/skills/skills-group.descriptor.js.map +1 -0
  314. package/dist/commands/skills/skills.install.descriptor.d.ts +4 -0
  315. package/dist/commands/skills/skills.install.descriptor.d.ts.map +1 -0
  316. package/dist/commands/skills/skills.install.descriptor.js +37 -0
  317. package/dist/commands/skills/skills.install.descriptor.js.map +1 -0
  318. package/dist/commands/skills/skills.install.impl.d.ts +12 -0
  319. package/dist/commands/skills/skills.install.impl.d.ts.map +1 -0
  320. package/dist/commands/skills/skills.install.impl.js +65 -0
  321. package/dist/commands/skills/skills.install.impl.js.map +1 -0
  322. package/dist/commands/skills/skills.list.descriptor.d.ts +4 -0
  323. package/dist/commands/skills/skills.list.descriptor.d.ts.map +1 -0
  324. package/dist/commands/skills/skills.list.descriptor.js +23 -0
  325. package/dist/commands/skills/skills.list.descriptor.js.map +1 -0
  326. package/dist/commands/skills/skills.list.impl.d.ts +11 -0
  327. package/dist/commands/skills/skills.list.impl.d.ts.map +1 -0
  328. package/dist/commands/skills/skills.list.impl.js +69 -0
  329. package/dist/commands/skills/skills.list.impl.js.map +1 -0
  330. package/dist/core/runtime/shared/context.d.ts +16 -16
  331. package/dist/core/runtime/shared/context.d.ts.map +1 -1
  332. package/dist/core/runtime/shared/context.js +20 -35
  333. package/dist/core/runtime/shared/context.js.map +1 -1
  334. package/dist/core/runtime/shared/options.d.ts +5 -19
  335. package/dist/core/runtime/shared/options.d.ts.map +1 -1
  336. package/dist/core/runtime/shared/options.js +87 -42
  337. package/dist/core/runtime/shared/options.js.map +1 -1
  338. package/dist/design-inventory.d.ts +23 -0
  339. package/dist/design-inventory.d.ts.map +1 -0
  340. package/dist/design-inventory.js +66 -0
  341. package/dist/design-inventory.js.map +1 -0
  342. package/dist/index.d.ts +12 -21
  343. package/dist/index.d.ts.map +1 -1
  344. package/dist/index.js +15 -25
  345. package/dist/index.js.map +1 -1
  346. package/dist/invocation/client.d.ts +20 -0
  347. package/dist/invocation/client.d.ts.map +1 -0
  348. package/dist/invocation/client.js +25 -0
  349. package/dist/invocation/client.js.map +1 -0
  350. package/dist/invocation/state.d.ts +10 -0
  351. package/dist/invocation/state.d.ts.map +1 -0
  352. package/dist/invocation/state.js +32 -0
  353. package/dist/invocation/state.js.map +1 -0
  354. package/dist/patterns/builtins/config-namespace-commands.d.ts +10 -0
  355. package/dist/patterns/builtins/config-namespace-commands.d.ts.map +1 -0
  356. package/dist/patterns/builtins/config-namespace-commands.js +132 -0
  357. package/dist/patterns/builtins/config-namespace-commands.js.map +1 -0
  358. package/dist/patterns/builtins/config-namespace-output.d.ts +9 -0
  359. package/dist/patterns/builtins/config-namespace-output.d.ts.map +1 -0
  360. package/dist/patterns/builtins/config-namespace-output.js +31 -0
  361. package/dist/patterns/builtins/config-namespace-output.js.map +1 -0
  362. package/dist/patterns/builtins/config-namespace.d.ts +23 -0
  363. package/dist/patterns/builtins/config-namespace.d.ts.map +1 -0
  364. package/dist/patterns/builtins/config-namespace.js +70 -0
  365. package/dist/patterns/builtins/config-namespace.js.map +1 -0
  366. package/dist/patterns/builtins/crud-commands.d.ts +11 -0
  367. package/dist/patterns/builtins/crud-commands.d.ts.map +1 -0
  368. package/dist/patterns/builtins/crud-commands.js +105 -0
  369. package/dist/patterns/builtins/crud-commands.js.map +1 -0
  370. package/dist/patterns/builtins/crud-output.d.ts +7 -0
  371. package/dist/patterns/builtins/crud-output.d.ts.map +1 -0
  372. package/dist/patterns/builtins/crud-output.js +21 -0
  373. package/dist/patterns/builtins/crud-output.js.map +1 -0
  374. package/dist/patterns/builtins/crud.d.ts +16 -0
  375. package/dist/patterns/builtins/crud.d.ts.map +1 -0
  376. package/dist/patterns/builtins/crud.js +38 -0
  377. package/dist/patterns/builtins/crud.js.map +1 -0
  378. package/dist/patterns/{log-viewer.d.ts → builtins/log-viewer.d.ts} +5 -5
  379. package/dist/patterns/builtins/log-viewer.d.ts.map +1 -0
  380. package/dist/patterns/{log-viewer.js → builtins/log-viewer.js} +31 -9
  381. package/dist/patterns/builtins/log-viewer.js.map +1 -0
  382. package/dist/patterns/builtins/output.d.ts +5 -0
  383. package/dist/patterns/builtins/output.d.ts.map +1 -0
  384. package/dist/patterns/builtins/output.js +25 -0
  385. package/dist/patterns/builtins/output.js.map +1 -0
  386. package/dist/patterns/{process-manager.d.ts → builtins/process-manager.d.ts} +9 -4
  387. package/dist/patterns/builtins/process-manager.d.ts.map +1 -0
  388. package/dist/patterns/{process-manager.js → builtins/process-manager.js} +46 -29
  389. package/dist/patterns/builtins/process-manager.js.map +1 -0
  390. package/dist/patterns/builtins/tool-wrapper.d.ts +18 -0
  391. package/dist/patterns/builtins/tool-wrapper.d.ts.map +1 -0
  392. package/dist/patterns/builtins/tool-wrapper.js +124 -0
  393. package/dist/patterns/builtins/tool-wrapper.js.map +1 -0
  394. package/dist/patterns/cli-value.d.ts +3 -0
  395. package/dist/patterns/cli-value.d.ts.map +1 -0
  396. package/dist/patterns/cli-value.js +42 -0
  397. package/dist/patterns/cli-value.js.map +1 -0
  398. package/dist/patterns/index.d.ts +5 -9
  399. package/dist/patterns/index.d.ts.map +1 -1
  400. package/dist/patterns/index.js +5 -9
  401. package/dist/patterns/index.js.map +1 -1
  402. package/dist/patterns/pattern.kinds.d.ts +30 -0
  403. package/dist/patterns/pattern.kinds.d.ts.map +1 -0
  404. package/dist/patterns/pattern.kinds.js +8 -0
  405. package/dist/patterns/pattern.kinds.js.map +1 -0
  406. package/dist/patterns/resolver.d.ts +11 -32
  407. package/dist/patterns/resolver.d.ts.map +1 -1
  408. package/dist/patterns/resolver.js +14 -45
  409. package/dist/patterns/resolver.js.map +1 -1
  410. package/dist/patterns/schemas.d.ts +9 -492
  411. package/dist/patterns/schemas.d.ts.map +1 -1
  412. package/dist/patterns/schemas.js +5 -94
  413. package/dist/patterns/schemas.js.map +1 -1
  414. package/dist/schemas/bootstrap.d.ts +242 -0
  415. package/dist/schemas/bootstrap.d.ts.map +1 -0
  416. package/dist/schemas/bootstrap.js +7 -0
  417. package/dist/schemas/bootstrap.js.map +1 -0
  418. package/dist/schemas/command-implementation.d.ts +34 -0
  419. package/dist/schemas/command-implementation.d.ts.map +1 -0
  420. package/dist/schemas/command-implementation.js +31 -0
  421. package/dist/schemas/command-implementation.js.map +1 -0
  422. package/dist/schemas/command-recommendations.d.ts +9 -0
  423. package/dist/schemas/command-recommendations.d.ts.map +1 -0
  424. package/dist/schemas/command-recommendations.js +14 -0
  425. package/dist/schemas/command-recommendations.js.map +1 -0
  426. package/dist/schemas/completion.d.ts +118 -0
  427. package/dist/schemas/completion.d.ts.map +1 -0
  428. package/dist/schemas/completion.js +63 -0
  429. package/dist/schemas/completion.js.map +1 -0
  430. package/dist/schemas/descriptors.d.ts +1 -129
  431. package/dist/schemas/descriptors.d.ts.map +1 -1
  432. package/dist/schemas/descriptors.js +1 -95
  433. package/dist/schemas/descriptors.js.map +1 -1
  434. package/dist/schemas/design-inventory.d.ts +20 -0
  435. package/dist/schemas/design-inventory.d.ts.map +1 -0
  436. package/dist/schemas/design-inventory.js +10 -0
  437. package/dist/schemas/design-inventory.js.map +1 -0
  438. package/dist/schemas/discovery.d.ts +17 -0
  439. package/dist/schemas/discovery.d.ts.map +1 -0
  440. package/dist/schemas/discovery.js +15 -0
  441. package/dist/schemas/discovery.js.map +1 -0
  442. package/dist/schemas/exit.d.ts +33 -0
  443. package/dist/schemas/exit.d.ts.map +1 -0
  444. package/dist/schemas/exit.js +20 -0
  445. package/dist/schemas/exit.js.map +1 -0
  446. package/dist/schemas/interactive-host.d.ts +10 -0
  447. package/dist/schemas/interactive-host.d.ts.map +1 -0
  448. package/dist/schemas/interactive-host.js +11 -0
  449. package/dist/schemas/interactive-host.js.map +1 -0
  450. package/dist/schemas/output-format.d.ts +61 -0
  451. package/dist/schemas/output-format.d.ts.map +1 -0
  452. package/dist/schemas/output-format.js +26 -0
  453. package/dist/schemas/output-format.js.map +1 -0
  454. package/dist/schemas/pattern-implementation.d.ts +1572 -0
  455. package/dist/schemas/pattern-implementation.d.ts.map +1 -0
  456. package/dist/schemas/pattern-implementation.js +12 -0
  457. package/dist/schemas/pattern-implementation.js.map +1 -0
  458. package/dist/schemas/pattern-input.d.ts +152 -0
  459. package/dist/schemas/pattern-input.d.ts.map +1 -0
  460. package/dist/schemas/pattern-input.js +194 -0
  461. package/dist/schemas/pattern-input.js.map +1 -0
  462. package/dist/schemas/pm-context.d.ts +17 -0
  463. package/dist/schemas/pm-context.d.ts.map +1 -0
  464. package/dist/schemas/pm-context.js +13 -0
  465. package/dist/schemas/pm-context.js.map +1 -0
  466. package/dist/schemas/prompts.d.ts +61 -0
  467. package/dist/schemas/prompts.d.ts.map +1 -0
  468. package/dist/schemas/prompts.js +43 -0
  469. package/dist/schemas/prompts.js.map +1 -0
  470. package/dist/schemas/runtime-codegen.d.ts +191 -0
  471. package/dist/schemas/runtime-codegen.d.ts.map +1 -0
  472. package/dist/schemas/runtime-codegen.js +83 -0
  473. package/dist/schemas/runtime-codegen.js.map +1 -0
  474. package/dist/schemas/surface.d.ts +33 -20
  475. package/dist/schemas/surface.d.ts.map +1 -1
  476. package/dist/schemas/surface.js +2 -1
  477. package/dist/schemas/surface.js.map +1 -1
  478. package/dist/schemas/terminal-input.d.ts +15 -0
  479. package/dist/schemas/terminal-input.d.ts.map +1 -0
  480. package/dist/schemas/terminal-input.js +13 -0
  481. package/dist/schemas/terminal-input.js.map +1 -0
  482. package/dist/schemas/types.d.ts +1 -201
  483. package/dist/schemas/types.d.ts.map +1 -1
  484. package/dist/support/cli-inventory.generated.d.ts +4 -0
  485. package/dist/support/cli-inventory.generated.d.ts.map +1 -0
  486. package/dist/support/cli-inventory.generated.js +31 -0
  487. package/dist/support/cli-inventory.generated.js.map +1 -0
  488. package/dist/support/logging/cli-startup.logger.descriptor.d.ts.map +1 -0
  489. package/dist/support/logging/cli-startup.logger.descriptor.js.map +1 -0
  490. package/dist/support/logging/logging.d.ts +8 -0
  491. package/dist/support/logging/logging.d.ts.map +1 -0
  492. package/dist/support/logging/logging.js +13 -0
  493. package/dist/support/logging/logging.js.map +1 -0
  494. package/dist/support/terminal-input.d.ts +11 -0
  495. package/dist/support/terminal-input.d.ts.map +1 -0
  496. package/dist/support/terminal-input.js +39 -0
  497. package/dist/support/terminal-input.js.map +1 -0
  498. package/dist/support/ui/context.descriptor.d.ts +35 -0
  499. package/dist/support/ui/context.descriptor.d.ts.map +1 -0
  500. package/dist/{ui.context.descriptor.js → support/ui/context.descriptor.js} +2 -2
  501. package/dist/support/ui/context.descriptor.js.map +1 -0
  502. package/dist/support/ui/format.client.d.ts +42 -0
  503. package/dist/support/ui/format.client.d.ts.map +1 -0
  504. package/dist/support/ui/format.client.js +92 -0
  505. package/dist/support/ui/format.client.js.map +1 -0
  506. package/dist/support/ui/format.kinds.d.ts +30 -0
  507. package/dist/support/ui/format.kinds.d.ts.map +1 -0
  508. package/dist/support/ui/format.kinds.js +8 -0
  509. package/dist/support/ui/format.kinds.js.map +1 -0
  510. package/dist/support/ui/format.plugin.d.ts +7 -0
  511. package/dist/support/ui/format.plugin.d.ts.map +1 -0
  512. package/dist/support/ui/format.plugin.js +23 -0
  513. package/dist/support/ui/format.plugin.js.map +1 -0
  514. package/dist/support/ui/formats.d.ts +4 -0
  515. package/dist/support/ui/formats.d.ts.map +1 -0
  516. package/dist/support/ui/formats.js +34 -0
  517. package/dist/support/ui/formats.js.map +1 -0
  518. package/dist/support/ui/prompts.d.ts +9 -0
  519. package/dist/support/ui/prompts.d.ts.map +1 -0
  520. package/dist/support/ui/prompts.js +99 -0
  521. package/dist/support/ui/prompts.js.map +1 -0
  522. package/dist/support/ui/schemas/types.d.ts +2 -0
  523. package/dist/support/ui/schemas/types.d.ts.map +1 -0
  524. package/dist/support/ui/schemas/types.js.map +1 -0
  525. package/dist/support/ui/schemas/ui-toolkit.d.ts +45 -0
  526. package/dist/support/ui/schemas/ui-toolkit.d.ts.map +1 -0
  527. package/dist/support/ui/schemas/ui-toolkit.js +2 -0
  528. package/dist/support/ui/schemas/ui-toolkit.js.map +1 -0
  529. package/dist/support/ui/showcase.d.ts +18 -0
  530. package/dist/support/ui/showcase.d.ts.map +1 -0
  531. package/dist/support/ui/showcase.js +101 -0
  532. package/dist/support/ui/showcase.js.map +1 -0
  533. package/dist/support/ui/table.d.ts +28 -0
  534. package/dist/support/ui/table.d.ts.map +1 -0
  535. package/dist/support/ui/table.js +74 -0
  536. package/dist/support/ui/table.js.map +1 -0
  537. package/dist/support/ui/toolkit.d.ts +56 -0
  538. package/dist/support/ui/toolkit.d.ts.map +1 -0
  539. package/dist/support/ui/toolkit.js +130 -0
  540. package/dist/support/ui/toolkit.js.map +1 -0
  541. package/dist/support/vibesdev/index.d.ts +2 -0
  542. package/dist/support/vibesdev/index.d.ts.map +1 -0
  543. package/dist/support/vibesdev/index.js +3 -0
  544. package/dist/support/vibesdev/index.js.map +1 -0
  545. package/dist/surface/CLISurface.d.ts +77 -3
  546. package/dist/surface/CLISurface.d.ts.map +1 -1
  547. package/dist/surface/CLISurface.js +642 -98
  548. package/dist/surface/CLISurface.js.map +1 -1
  549. package/dist/surface/argument-name.d.ts +14 -0
  550. package/dist/surface/argument-name.d.ts.map +1 -0
  551. package/dist/surface/argument-name.js +23 -0
  552. package/dist/surface/argument-name.js.map +1 -0
  553. package/dist/surface/attach-tui-action.d.ts +35 -9
  554. package/dist/surface/attach-tui-action.d.ts.map +1 -1
  555. package/dist/surface/attach-tui-action.js +50 -43
  556. package/dist/surface/attach-tui-action.js.map +1 -1
  557. package/dist/surface/build-context.d.ts +2 -2
  558. package/dist/surface/build-context.d.ts.map +1 -1
  559. package/dist/surface/build-context.js +26 -44
  560. package/dist/surface/build-context.js.map +1 -1
  561. package/dist/surface/command-group-policy.d.ts +2 -3
  562. package/dist/surface/command-group-policy.d.ts.map +1 -1
  563. package/dist/surface/command-group-policy.js +1 -11
  564. package/dist/surface/command-group-policy.js.map +1 -1
  565. package/dist/surface/command-implementation.d.ts +9 -0
  566. package/dist/surface/command-implementation.d.ts.map +1 -0
  567. package/dist/surface/command-implementation.js +19 -0
  568. package/dist/surface/command-implementation.js.map +1 -0
  569. package/dist/surface/command-options.d.ts +29 -0
  570. package/dist/surface/command-options.d.ts.map +1 -0
  571. package/dist/surface/command-options.js +57 -0
  572. package/dist/surface/command-options.js.map +1 -0
  573. package/dist/surface/commander-action.d.ts +25 -0
  574. package/dist/surface/commander-action.d.ts.map +1 -0
  575. package/dist/surface/commander-action.js +38 -0
  576. package/dist/surface/commander-action.js.map +1 -0
  577. package/dist/surface/discovery-cache.d.ts +3 -15
  578. package/dist/surface/discovery-cache.d.ts.map +1 -1
  579. package/dist/surface/discovery-cache.js +6 -33
  580. package/dist/surface/discovery-cache.js.map +1 -1
  581. package/dist/surface/exit.d.ts +10 -0
  582. package/dist/surface/exit.d.ts.map +1 -0
  583. package/dist/surface/exit.js +33 -0
  584. package/dist/surface/exit.js.map +1 -0
  585. package/dist/surface/failure-of.d.ts +9 -0
  586. package/dist/surface/failure-of.d.ts.map +1 -0
  587. package/dist/surface/failure-of.js +17 -0
  588. package/dist/surface/failure-of.js.map +1 -0
  589. package/dist/surface/failure-output.d.ts +50 -0
  590. package/dist/surface/failure-output.d.ts.map +1 -0
  591. package/dist/surface/failure-output.js +84 -0
  592. package/dist/surface/failure-output.js.map +1 -0
  593. package/dist/surface/failure-report.d.ts +78 -0
  594. package/dist/surface/failure-report.d.ts.map +1 -0
  595. package/dist/surface/failure-report.js +229 -0
  596. package/dist/surface/failure-report.js.map +1 -0
  597. package/dist/surface/group-fallback.d.ts +32 -0
  598. package/dist/surface/group-fallback.d.ts.map +1 -0
  599. package/dist/surface/group-fallback.js +78 -0
  600. package/dist/surface/group-fallback.js.map +1 -0
  601. package/dist/surface/index.d.ts +10 -0
  602. package/dist/surface/index.d.ts.map +1 -0
  603. package/dist/surface/index.js +8 -0
  604. package/dist/surface/index.js.map +1 -0
  605. package/dist/surface/inherited-options.d.ts +28 -0
  606. package/dist/surface/inherited-options.d.ts.map +1 -0
  607. package/dist/surface/inherited-options.js +108 -0
  608. package/dist/surface/inherited-options.js.map +1 -0
  609. package/dist/surface/interactive-gate.d.ts +41 -0
  610. package/dist/surface/interactive-gate.d.ts.map +1 -0
  611. package/dist/surface/interactive-gate.js +112 -0
  612. package/dist/surface/interactive-gate.js.map +1 -0
  613. package/dist/surface/invocation-actions.d.ts +40 -0
  614. package/dist/surface/invocation-actions.d.ts.map +1 -0
  615. package/dist/surface/invocation-actions.js +78 -0
  616. package/dist/surface/invocation-actions.js.map +1 -0
  617. package/dist/surface/invocation-effects.d.ts +11 -0
  618. package/dist/surface/invocation-effects.d.ts.map +1 -0
  619. package/dist/surface/invocation-effects.js +52 -0
  620. package/dist/surface/invocation-effects.js.map +1 -0
  621. package/dist/surface/invocation-lifecycle.d.ts +49 -0
  622. package/dist/surface/invocation-lifecycle.d.ts.map +1 -0
  623. package/dist/surface/invocation-lifecycle.js +127 -0
  624. package/dist/surface/invocation-lifecycle.js.map +1 -0
  625. package/dist/surface/output-format-request.d.ts +23 -0
  626. package/dist/surface/output-format-request.d.ts.map +1 -0
  627. package/dist/surface/output-format-request.js +116 -0
  628. package/dist/surface/output-format-request.js.map +1 -0
  629. package/dist/surface/pm-context.d.ts +5 -0
  630. package/dist/surface/pm-context.d.ts.map +1 -0
  631. package/dist/surface/pm-context.js +69 -0
  632. package/dist/surface/pm-context.js.map +1 -0
  633. package/dist/surface/register-commands.d.ts +24 -4
  634. package/dist/surface/register-commands.d.ts.map +1 -1
  635. package/dist/surface/register-commands.js +156 -63
  636. package/dist/surface/register-commands.js.map +1 -1
  637. package/dist/surface/register-groups.d.ts +4 -4
  638. package/dist/surface/register-groups.d.ts.map +1 -1
  639. package/dist/surface/register-groups.js +71 -9
  640. package/dist/surface/register-groups.js.map +1 -1
  641. package/dist/surface/schemas/CLISurface.d.ts +31 -0
  642. package/dist/surface/schemas/CLISurface.d.ts.map +1 -0
  643. package/dist/surface/schemas/CLISurface.js +2 -0
  644. package/dist/surface/schemas/CLISurface.js.map +1 -0
  645. package/dist/surface/schemas/command-implementation.d.ts +20 -0
  646. package/dist/surface/schemas/command-implementation.d.ts.map +1 -0
  647. package/dist/surface/schemas/command-implementation.js +2 -0
  648. package/dist/surface/schemas/command-implementation.js.map +1 -0
  649. package/dist/surface/schemas/interactive-gate.d.ts +29 -0
  650. package/dist/surface/schemas/interactive-gate.d.ts.map +1 -0
  651. package/dist/surface/schemas/interactive-gate.js +2 -0
  652. package/dist/surface/schemas/interactive-gate.js.map +1 -0
  653. package/package.json +273 -136
  654. package/bin/vibes.ts +0 -26
  655. package/dist/api/client/factory.d.ts +0 -29
  656. package/dist/api/client/factory.d.ts.map +0 -1
  657. package/dist/api/client/factory.js +0 -189
  658. package/dist/api/client/factory.js.map +0 -1
  659. package/dist/api/schemas/common.d.ts +0 -58
  660. package/dist/api/schemas/common.d.ts.map +0 -1
  661. package/dist/api/schemas/common.js +0 -48
  662. package/dist/api/schemas/common.js.map +0 -1
  663. package/dist/api/schemas/types.d.ts +0 -30
  664. package/dist/api/schemas/types.d.ts.map +0 -1
  665. package/dist/api/services/api.d.ts +0 -14
  666. package/dist/api/services/api.d.ts.map +0 -1
  667. package/dist/api/services/api.js +0 -110
  668. package/dist/api/services/api.js.map +0 -1
  669. package/dist/api/types.d.ts +0 -6
  670. package/dist/api/types.d.ts.map +0 -1
  671. package/dist/api/types.js +0 -5
  672. package/dist/api/types.js.map +0 -1
  673. package/dist/bin.d.ts +0 -28
  674. package/dist/bin.d.ts.map +0 -1
  675. package/dist/bin.js +0 -73
  676. package/dist/bin.js.map +0 -1
  677. package/dist/bootstrap.d.ts +0 -14
  678. package/dist/bootstrap.d.ts.map +0 -1
  679. package/dist/bootstrap.js +0 -14
  680. package/dist/bootstrap.js.map +0 -1
  681. package/dist/cli.plugin.d.ts +0 -20
  682. package/dist/cli.plugin.d.ts.map +0 -1
  683. package/dist/cli.plugin.js +0 -170
  684. package/dist/cli.plugin.js.map +0 -1
  685. package/dist/commands/runtime/_logging.d.ts +0 -11
  686. package/dist/commands/runtime/_logging.d.ts.map +0 -1
  687. package/dist/commands/runtime/_logging.js +0 -40
  688. package/dist/commands/runtime/_logging.js.map +0 -1
  689. package/dist/config.d.ts +0 -17
  690. package/dist/config.d.ts.map +0 -1
  691. package/dist/config.js.map +0 -1
  692. package/dist/core/index.d.ts +0 -9
  693. package/dist/core/index.d.ts.map +0 -1
  694. package/dist/core/index.js +0 -5
  695. package/dist/core/index.js.map +0 -1
  696. package/dist/core/namespace/hook.d.ts +0 -12
  697. package/dist/core/namespace/hook.d.ts.map +0 -1
  698. package/dist/core/namespace/hook.js +0 -15
  699. package/dist/core/namespace/hook.js.map +0 -1
  700. package/dist/core/namespace/index.d.ts +0 -18
  701. package/dist/core/namespace/index.d.ts.map +0 -1
  702. package/dist/core/namespace/index.js +0 -214
  703. package/dist/core/namespace/index.js.map +0 -1
  704. package/dist/core/namespace/schemas/index.d.ts +0 -25
  705. package/dist/core/namespace/schemas/index.d.ts.map +0 -1
  706. package/dist/core/namespace/schemas/index.js +0 -2
  707. package/dist/core/namespace/schemas/index.js.map +0 -1
  708. package/dist/core/plugins/types.d.ts +0 -81
  709. package/dist/core/plugins/types.d.ts.map +0 -1
  710. package/dist/core/plugins/types.js +0 -6
  711. package/dist/core/plugins/types.js.map +0 -1
  712. package/dist/core/runtime/context.d.ts +0 -25
  713. package/dist/core/runtime/context.d.ts.map +0 -1
  714. package/dist/core/runtime/context.js +0 -30
  715. package/dist/core/runtime/context.js.map +0 -1
  716. package/dist/core/runtime/hooks.d.ts +0 -12
  717. package/dist/core/runtime/hooks.d.ts.map +0 -1
  718. package/dist/core/runtime/hooks.js +0 -2
  719. package/dist/core/runtime/hooks.js.map +0 -1
  720. package/dist/core/schemas/manifest.d.ts +0 -24
  721. package/dist/core/schemas/manifest.d.ts.map +0 -1
  722. package/dist/core/schemas/manifest.js +0 -6
  723. package/dist/core/schemas/manifest.js.map +0 -1
  724. package/dist/core/schemas/types.d.ts +0 -7
  725. package/dist/core/schemas/types.d.ts.map +0 -1
  726. package/dist/core/schemas/types.js.map +0 -1
  727. package/dist/core/ui/interface.d.ts +0 -12
  728. package/dist/core/ui/interface.d.ts.map +0 -1
  729. package/dist/core/ui/interface.js +0 -6
  730. package/dist/core/ui/interface.js.map +0 -1
  731. package/dist/docs/cli.commands.docs.descriptor.d.ts +0 -4
  732. package/dist/docs/cli.commands.docs.descriptor.d.ts.map +0 -1
  733. package/dist/docs/cli.commands.docs.descriptor.js +0 -207
  734. package/dist/docs/cli.commands.docs.descriptor.js.map +0 -1
  735. package/dist/docs/cli.groups.docs.descriptor.d.ts +0 -4
  736. package/dist/docs/cli.groups.docs.descriptor.d.ts.map +0 -1
  737. package/dist/docs/cli.groups.docs.descriptor.js +0 -330
  738. package/dist/docs/cli.groups.docs.descriptor.js.map +0 -1
  739. package/dist/docs/cli.output.docs.descriptor.d.ts +0 -4
  740. package/dist/docs/cli.output.docs.descriptor.d.ts.map +0 -1
  741. package/dist/docs/cli.output.docs.descriptor.js +0 -442
  742. package/dist/docs/cli.output.docs.descriptor.js.map +0 -1
  743. package/dist/docs/types.d.ts +0 -19
  744. package/dist/docs/types.d.ts.map +0 -1
  745. package/dist/docs/types.js +0 -2
  746. package/dist/docs/types.js.map +0 -1
  747. package/dist/errors.d.ts +0 -74
  748. package/dist/errors.d.ts.map +0 -1
  749. package/dist/errors.js +0 -113
  750. package/dist/errors.js.map +0 -1
  751. package/dist/logging/cli-startup.logger.descriptor.d.ts.map +0 -1
  752. package/dist/logging/cli-startup.logger.descriptor.js.map +0 -1
  753. package/dist/logging.d.ts +0 -4
  754. package/dist/logging.d.ts.map +0 -1
  755. package/dist/logging.js +0 -21
  756. package/dist/logging.js.map +0 -1
  757. package/dist/patterns/config-namespace.d.ts +0 -23
  758. package/dist/patterns/config-namespace.d.ts.map +0 -1
  759. package/dist/patterns/config-namespace.js +0 -218
  760. package/dist/patterns/config-namespace.js.map +0 -1
  761. package/dist/patterns/crud.d.ts +0 -23
  762. package/dist/patterns/crud.d.ts.map +0 -1
  763. package/dist/patterns/crud.js +0 -164
  764. package/dist/patterns/crud.js.map +0 -1
  765. package/dist/patterns/log-viewer.d.ts.map +0 -1
  766. package/dist/patterns/log-viewer.js.map +0 -1
  767. package/dist/patterns/pattern-types.d.ts +0 -21
  768. package/dist/patterns/pattern-types.d.ts.map +0 -1
  769. package/dist/patterns/pattern-types.js +0 -7
  770. package/dist/patterns/pattern-types.js.map +0 -1
  771. package/dist/patterns/process-manager.d.ts.map +0 -1
  772. package/dist/patterns/process-manager.js.map +0 -1
  773. package/dist/patterns/resolver.contracts.d.ts +0 -14
  774. package/dist/patterns/resolver.contracts.d.ts.map +0 -1
  775. package/dist/patterns/resolver.contracts.js +0 -9
  776. package/dist/patterns/resolver.contracts.js.map +0 -1
  777. package/dist/patterns/tool-wrapper.d.ts +0 -18
  778. package/dist/patterns/tool-wrapper.d.ts.map +0 -1
  779. package/dist/patterns/tool-wrapper.js +0 -130
  780. package/dist/patterns/tool-wrapper.js.map +0 -1
  781. package/dist/providers.d.ts +0 -105
  782. package/dist/providers.d.ts.map +0 -1
  783. package/dist/providers.js +0 -164
  784. package/dist/providers.js.map +0 -1
  785. package/dist/support/ui-toolkit.d.ts +0 -62
  786. package/dist/support/ui-toolkit.d.ts.map +0 -1
  787. package/dist/support/ui-toolkit.js +0 -172
  788. package/dist/support/ui-toolkit.js.map +0 -1
  789. package/dist/surface.d.ts +0 -9
  790. package/dist/surface.d.ts.map +0 -1
  791. package/dist/surface.js +0 -8
  792. package/dist/surface.js.map +0 -1
  793. package/dist/types.d.ts +0 -4
  794. package/dist/types.d.ts.map +0 -1
  795. package/dist/types.js +0 -2
  796. package/dist/types.js.map +0 -1
  797. package/dist/ui/schemas/types.d.ts +0 -2
  798. package/dist/ui/schemas/types.d.ts.map +0 -1
  799. package/dist/ui/schemas/types.js +0 -2
  800. package/dist/ui/schemas/types.js.map +0 -1
  801. package/dist/ui/toolkit/VibesUIToolkit.d.ts +0 -2
  802. package/dist/ui/toolkit/VibesUIToolkit.d.ts.map +0 -1
  803. package/dist/ui/toolkit/VibesUIToolkit.js +0 -2
  804. package/dist/ui/toolkit/VibesUIToolkit.js.map +0 -1
  805. package/dist/ui.context.descriptor.d.ts +0 -21
  806. package/dist/ui.context.descriptor.d.ts.map +0 -1
  807. package/dist/ui.context.descriptor.js.map +0 -1
  808. package/dist/utils/open.d.ts +0 -2
  809. package/dist/utils/open.d.ts.map +0 -1
  810. package/dist/utils/open.js +0 -30
  811. package/dist/utils/open.js.map +0 -1
  812. package/dist/version.d.ts +0 -2
  813. package/dist/version.d.ts.map +0 -1
  814. package/dist/version.js +0 -2
  815. package/dist/version.js.map +0 -1
  816. package/src/api/client/factory.ts +0 -265
  817. package/src/api/schemas/common.ts +0 -50
  818. package/src/api/schemas/types.ts +0 -32
  819. package/src/api/services/api.ts +0 -129
  820. package/src/api/types.ts +0 -12
  821. package/src/bin.ts +0 -84
  822. package/src/bootstrap.ts +0 -19
  823. package/src/cli.plugin.d.ts +0 -19
  824. package/src/cli.plugin.ts +0 -202
  825. package/src/commands/completion/bash.ts +0 -68
  826. package/src/commands/completion/completion.descriptor.ts +0 -48
  827. package/src/commands/completion/completion.impl.ts +0 -188
  828. package/src/commands/completion/fig.ts +0 -78
  829. package/src/commands/completion/fish.ts +0 -52
  830. package/src/commands/completion/tree.ts +0 -115
  831. package/src/commands/completion/zsh-widget.ts +0 -39
  832. package/src/commands/completion/zsh.ts +0 -165
  833. package/src/commands/profile/_utils.ts +0 -72
  834. package/src/commands/profile/profile-group.descriptor.ts +0 -14
  835. package/src/commands/profile/profile.create.descriptor.ts +0 -24
  836. package/src/commands/profile/profile.create.impl.ts +0 -44
  837. package/src/commands/profile/profile.delete.descriptor.ts +0 -31
  838. package/src/commands/profile/profile.delete.impl.ts +0 -71
  839. package/src/commands/profile/profile.info.descriptor.ts +0 -25
  840. package/src/commands/profile/profile.info.impl.ts +0 -51
  841. package/src/commands/profile/profile.list.descriptor.ts +0 -18
  842. package/src/commands/profile/profile.list.impl.ts +0 -46
  843. package/src/commands/profile/profile.use.descriptor.ts +0 -25
  844. package/src/commands/profile/profile.use.impl.ts +0 -39
  845. package/src/commands/runtime/_logging.ts +0 -47
  846. package/src/commands/runtime/codegen.command.descriptor.ts +0 -18
  847. package/src/commands/runtime/codegen.command.impl.ts +0 -44
  848. package/src/commands/runtime/codegen.ts +0 -84
  849. package/src/commands/runtime/index.ts +0 -14
  850. package/src/commands/runtime/plugin.ts +0 -7
  851. package/src/commands/runtime/runtime-group.descriptor.ts +0 -12
  852. package/src/config.ts +0 -22
  853. package/src/core/index.ts +0 -9
  854. package/src/core/namespace/hook.ts +0 -25
  855. package/src/core/namespace/index.ts +0 -298
  856. package/src/core/namespace/schemas/index.ts +0 -25
  857. package/src/core/plugins/types.ts +0 -87
  858. package/src/core/runtime/context.ts +0 -50
  859. package/src/core/runtime/hooks.ts +0 -12
  860. package/src/core/runtime/shared/context.ts +0 -65
  861. package/src/core/runtime/shared/options.ts +0 -60
  862. package/src/core/schemas/manifest.ts +0 -26
  863. package/src/core/schemas/types.ts +0 -6
  864. package/src/core/ui/interface.ts +0 -12
  865. package/src/docs/cli.commands.docs.descriptor.ts +0 -210
  866. package/src/docs/cli.groups.docs.descriptor.ts +0 -333
  867. package/src/docs/cli.output.docs.descriptor.ts +0 -445
  868. package/src/docs/types.ts +0 -18
  869. package/src/errors.ts +0 -123
  870. package/src/index.ts +0 -76
  871. package/src/logging/cli-startup.logger.descriptor.ts +0 -16
  872. package/src/logging.ts +0 -35
  873. package/src/patterns/config-namespace.ts +0 -251
  874. package/src/patterns/crud.ts +0 -217
  875. package/src/patterns/index.ts +0 -24
  876. package/src/patterns/log-viewer.ts +0 -118
  877. package/src/patterns/pattern-types.ts +0 -22
  878. package/src/patterns/process-manager.ts +0 -180
  879. package/src/patterns/resolver.contracts.ts +0 -15
  880. package/src/patterns/resolver.ts +0 -86
  881. package/src/patterns/schemas.ts +0 -146
  882. package/src/patterns/tool-wrapper.ts +0 -165
  883. package/src/providers.ts +0 -282
  884. package/src/schemas/descriptors.d.ts +0 -119
  885. package/src/schemas/descriptors.ts +0 -136
  886. package/src/schemas/surface.ts +0 -52
  887. package/src/schemas/types.d.ts +0 -195
  888. package/src/schemas/types.ts +0 -225
  889. package/src/support/ui-toolkit.ts +0 -224
  890. package/src/surface/CLISurface.ts +0 -193
  891. package/src/surface/attach-tui-action.ts +0 -76
  892. package/src/surface/build-context.ts +0 -49
  893. package/src/surface/command-group-policy.ts +0 -52
  894. package/src/surface/discovery-cache.ts +0 -143
  895. package/src/surface/register-commands.ts +0 -266
  896. package/src/surface/register-groups.ts +0 -84
  897. package/src/surface.ts +0 -9
  898. package/src/types.ts +0 -3
  899. package/src/ui/schemas/types.ts +0 -1
  900. package/src/ui/toolkit/VibesUIToolkit.ts +0 -1
  901. package/src/ui.context.descriptor.ts +0 -13
  902. package/src/utils/open.ts +0 -36
  903. package/src/version.ts +0 -10
  904. /package/dist/{api → boot}/schemas/types.js +0 -0
  905. /package/dist/{logging → support/logging}/cli-startup.logger.descriptor.d.ts +0 -0
  906. /package/dist/{logging → support/logging}/cli-startup.logger.descriptor.js +0 -0
  907. /package/dist/{core → support/ui}/schemas/types.js +0 -0
@@ -1,21 +1,46 @@
1
1
  /**
2
2
  * Profile command utilities
3
3
  *
4
- * Shared helpers for scanning profile directories and formatting output.
5
- * Uses node built-ins only to avoid circular dependencies.
4
+ * Shared helpers for scanning profile directories and formatting output. Every
5
+ * read and write goes through the handed runtime: its published path roots
6
+ * (`getPathRoots`), its path mechanics for a named profile's home (the paths
7
+ * owner's `createPathRoots`, which also refuses `.` and `..`), and its
8
+ * filesystem kind (`resolveFileSystemAdapter`).
6
9
  */
10
+ import * as z from 'zod/v4';
11
+ import type { FileSystemAdapterInterface } from '@vibesdotdev/filesystem';
12
+ import { type PathRoots, type RuntimePath } from '@vibesdotdev/paths';
13
+ import type { VibesRuntime } from '@vibesdotdev/kernel/api/runtime';
7
14
  export declare const GREEN = "\u001B[32m";
8
15
  export declare const GRAY = "\u001B[90m";
9
16
  export declare const YELLOW = "\u001B[33m";
10
17
  export declare const RED = "\u001B[31m";
11
18
  export declare const BOLD = "\u001B[1m";
12
19
  export declare const RESET = "\u001B[0m";
20
+ /** A command's `name` argument: the text given, or absent. */
21
+ export declare const ProfileNameArgumentSchema: z.ZodCatch<z.ZodOptional<z.ZodString>>;
13
22
  export declare function validateProfileName(name: string): string;
14
- export declare function getProfilesDir(): string;
15
- export declare function getActiveProfile(): string | undefined;
16
- export declare function listProfiles(): string[];
17
- export declare function profileExists(name: string): boolean;
18
- export declare function createProfileDir(name: string): void;
19
- export declare function deleteProfileDir(name: string): void;
20
- export declare function log(msg: string): void;
23
+ /** The runtime's profile storage: its roots, its path mechanics and its filesystem. */
24
+ export interface ProfileStore {
25
+ readonly roots: PathRoots;
26
+ readonly runtimePath: RuntimePath;
27
+ readonly fs: FileSystemAdapterInterface;
28
+ }
29
+ export declare function openProfileStore(runtime: VibesRuntime): Promise<ProfileStore>;
30
+ /**
31
+ * Resolve the base vibes home directory for the active runtime.
32
+ *
33
+ * Compatibility surface for profile commands. Directory authority belongs to
34
+ * the immutable paths/roots descriptor selected at runtime bootstrap; the
35
+ * caller reads it from the runtime it was handed (`getPathRoots(runtime)`).
36
+ */
37
+ export declare function getVibesBaseDir(roots: PathRoots): string;
38
+ export declare function getProfilesDir(roots: PathRoots): string;
39
+ /** Absolute path to a specific profile's home directory, as the paths owner places it. */
40
+ export declare function getProfileHome(name: string, store: Pick<ProfileStore, 'roots' | 'runtimePath'>): string;
41
+ export declare function getActiveProfile(roots: PathRoots): string | undefined;
42
+ export declare function listProfiles(store: ProfileStore): Promise<string[]>;
43
+ export declare function profileExists(name: string, store: ProfileStore): Promise<boolean>;
44
+ export declare function createProfileDir(name: string, store: ProfileStore): Promise<void>;
45
+ export declare function deleteProfileDir(name: string, store: ProfileStore): Promise<void>;
21
46
  //# sourceMappingURL=_utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_utils.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/_utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,eAAO,MAAM,KAAK,eAAa,CAAC;AAChC,eAAO,MAAM,IAAI,eAAa,CAAC;AAC/B,eAAO,MAAM,MAAM,eAAa,CAAC;AACjC,eAAO,MAAM,GAAG,eAAa,CAAC;AAC9B,eAAO,MAAM,IAAI,cAAY,CAAC;AAC9B,eAAO,MAAM,KAAK,cAAY,CAAC;AAI/B,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAErD;AAED,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAOvC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKnD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAEnD;AAED,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAErC"}
1
+ {"version":3,"file":"_utils.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/_utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAiD,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,eAAO,MAAM,KAAK,eAAa,CAAC;AAChC,eAAO,MAAM,IAAI,eAAa,CAAC;AAC/B,eAAO,MAAM,MAAM,eAAa,CAAC;AACjC,eAAO,MAAM,GAAG,eAAa,CAAC;AAC9B,eAAO,MAAM,IAAI,cAAY,CAAC;AAC9B,eAAO,MAAM,KAAK,cAAY,CAAC;AAY/B,8DAA8D;AAC9D,eAAO,MAAM,yBAAyB,wCAAyC,CAAC;AAEhF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED,uFAAuF;AACvF,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,EAAE,EAAE,0BAA0B,CAAC;CACxC;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAMnF;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAExD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAEvD;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,aAAa,CAAC,GAAG,MAAM,CAOvG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAErE;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAMzE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAGvF;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvF;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAEvF"}
@@ -1,13 +1,15 @@
1
1
  /**
2
2
  * Profile command utilities
3
3
  *
4
- * Shared helpers for scanning profile directories and formatting output.
5
- * Uses node built-ins only to avoid circular dependencies.
4
+ * Shared helpers for scanning profile directories and formatting output. Every
5
+ * read and write goes through the handed runtime: its published path roots
6
+ * (`getPathRoots`), its path mechanics for a named profile's home (the paths
7
+ * owner's `createPathRoots`, which also refuses `.` and `..`), and its
8
+ * filesystem kind (`resolveFileSystemAdapter`).
6
9
  */
7
- import { existsSync, readdirSync, statSync, mkdirSync, rmSync } from 'node:fs';
8
- import { homedir } from 'node:os';
9
- import { join } from 'node:path';
10
- import { getRuntimeEnv } from '@vibesdotdev/runtime';
10
+ import * as z from 'zod/v4';
11
+ import { resolveFileSystemAdapter } from '@vibesdotdev/filesystem/client';
12
+ import { createPathRoots, getPathRoots, getRuntimePath } from '@vibesdotdev/paths';
11
13
  export const GREEN = '\x1b[32m';
12
14
  export const GRAY = '\x1b[90m';
13
15
  export const YELLOW = '\x1b[33m';
@@ -15,47 +17,73 @@ export const RED = '\x1b[31m';
15
17
  export const BOLD = '\x1b[1m';
16
18
  export const RESET = '\x1b[0m';
17
19
  const VALID_PROFILE_NAME = /^[a-zA-Z0-9._-]+$/;
20
+ /** A profile name; `.` and `..` would name the profiles directory or its parent. */
21
+ const ProfileNameSchema = z
22
+ .string()
23
+ .min(1, 'Profile name is required')
24
+ .max(64, 'Profile name must be 64 characters or fewer')
25
+ .regex(VALID_PROFILE_NAME, 'Profile name may only contain letters, numbers, dots, hyphens, and underscores')
26
+ .refine((name) => name !== '.' && name !== '..', 'Profile name may not be . or ..');
27
+ /** A command's `name` argument: the text given, or absent. */
28
+ export const ProfileNameArgumentSchema = z.string().optional().catch(undefined);
18
29
  export function validateProfileName(name) {
19
- if (!name || typeof name !== 'string') {
20
- throw new Error('Profile name is required');
30
+ const parsed = ProfileNameSchema.safeParse(name);
31
+ if (!parsed.success) {
32
+ throw new Error(parsed.error.issues[0]?.message ?? 'Profile name is invalid', { cause: parsed.error });
21
33
  }
22
- if (name.length > 64) {
23
- throw new Error('Profile name must be 64 characters or fewer');
24
- }
25
- if (!VALID_PROFILE_NAME.test(name)) {
26
- throw new Error('Profile name may only contain letters, numbers, dots, hyphens, and underscores');
27
- }
28
- return name;
34
+ return parsed.data;
29
35
  }
30
- export function getProfilesDir() {
31
- return join(homedir(), '.vibes', 'profile');
36
+ export async function openProfileStore(runtime) {
37
+ return {
38
+ roots: getPathRoots(runtime),
39
+ runtimePath: await getRuntimePath(runtime),
40
+ fs: await resolveFileSystemAdapter(runtime, { binding: false })
41
+ };
32
42
  }
33
- export function getActiveProfile() {
34
- return getRuntimeEnv('VIBES_PROFILE') || getRuntimeEnv('VIBES_PROFILE_NAME') || undefined;
43
+ /**
44
+ * Resolve the base vibes home directory for the active runtime.
45
+ *
46
+ * Compatibility surface for profile commands. Directory authority belongs to
47
+ * the immutable paths/roots descriptor selected at runtime bootstrap; the
48
+ * caller reads it from the runtime it was handed (`getPathRoots(runtime)`).
49
+ */
50
+ export function getVibesBaseDir(roots) {
51
+ return roots.vibesHome;
35
52
  }
36
- export function listProfiles() {
37
- const dir = getProfilesDir();
38
- if (!existsSync(dir))
53
+ export function getProfilesDir(roots) {
54
+ return roots.profilesDir;
55
+ }
56
+ /** Absolute path to a specific profile's home directory, as the paths owner places it. */
57
+ export function getProfileHome(name, store) {
58
+ return createPathRoots({
59
+ runtimePath: store.runtimePath,
60
+ userHome: store.roots.userHome,
61
+ vibesHome: store.roots.vibesHome,
62
+ profileName: name
63
+ }).activeHome;
64
+ }
65
+ export function getActiveProfile(roots) {
66
+ return roots.profileName;
67
+ }
68
+ export async function listProfiles(store) {
69
+ const dir = getProfilesDir(store.roots);
70
+ if (!(await store.fs.exists(dir)))
39
71
  return [];
40
- return readdirSync(dir).filter((name) => {
41
- const full = join(dir, name);
42
- return statSync(full).isDirectory();
43
- });
72
+ // The filesystem kind reports a link as a link and never follows it, so a symlinked entry is not a profile.
73
+ const entries = await store.fs.list(dir);
74
+ return entries.filter((entry) => entry.kind === 'directory').map((entry) => entry.name);
44
75
  }
45
- export function profileExists(name) {
46
- const path = join(getProfilesDir(), name);
47
- return existsSync(path) && statSync(path).isDirectory();
76
+ export async function profileExists(name, store) {
77
+ const path = getProfileHome(name, store);
78
+ return (await store.fs.exists(path)) && (await store.fs.stat(path)).kind === 'directory';
48
79
  }
49
- export function createProfileDir(name) {
50
- const base = join(getProfilesDir(), name);
80
+ export async function createProfileDir(name, store) {
81
+ const base = getProfileHome(name, store);
51
82
  for (const sub of ['config', 'data', 'cache', 'logs']) {
52
- mkdirSync(join(base, sub), { recursive: true });
83
+ await store.fs.mkdir(store.fs.join(base, sub), { recursive: true });
53
84
  }
54
85
  }
55
- export function deleteProfileDir(name) {
56
- rmSync(join(getProfilesDir(), name), { recursive: true, force: true });
57
- }
58
- export function log(msg) {
59
- process.stderr.write(msg + '\n');
86
+ export async function deleteProfileDir(name, store) {
87
+ await store.fs.remove(getProfileHome(name, store), { recursive: true });
60
88
  }
61
89
  //# sourceMappingURL=_utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_utils.js","sourceRoot":"","sources":["../../../src/commands/profile/_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_utils.js","sourceRoot":"","sources":["../../../src/commands/profile/_utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Profile <-> environment binding helpers.
3
+ *
4
+ * A profile is more than a set of empty directories: it carries a persisted
5
+ * environment selection inside its own home, so
6
+ * that activating the profile (via `eval "$(vibes profile use <name>)"`) switches
7
+ * BOTH the credential/config home and the active environment.
8
+ *
9
+ * This reuses the EXISTING environment manifest machinery
10
+ * (saveCurrentEnvironmentSelection / loadCurrentEnvironmentSelection from
11
+ * @vibesdotdev/config/environment/current) rather than inventing a parallel
12
+ * config system. That manifest resolves against the host's own profile, which
13
+ * the host declared once at capture; another profile's selection is the same
14
+ * manifest bound to that profile's roots
15
+ * (`@vibesdotdev/config/environment/profile-environment`), read and written in
16
+ * process. Nothing re-enters the CLI.
17
+ */
18
+ import type { VibesRuntime } from '@vibesdotdev/kernel';
19
+ import { type ResolvedVibesEnvironment } from '@vibesdotdev/config/environment/resolve-app-origin';
20
+ /**
21
+ * Minimal structural view of an environment descriptor — only the fields the
22
+ * profile commands surface (id, apiUrl, the per-app auth origin). Declared
23
+ * locally because the full descriptor type lives at a deep path that is not
24
+ * re-exported from @vibesdotdev/config.
25
+ */
26
+ export type ProfileEnvironmentDescriptor = Pick<ResolvedVibesEnvironment, 'id' | 'apiUrl' | 'apps'>;
27
+ /** Default environment a newly created profile should bind to. */
28
+ export declare function defaultProfileEnvironmentId(runtime: VibesRuntime): string;
29
+ /** Resolve a registered environment descriptor through the handed runtime. */
30
+ export declare function getEnvironmentDescriptor(id: string, runtime: VibesRuntime): Promise<ProfileEnvironmentDescriptor | undefined>;
31
+ /** The environment selection bound to this host's own profile. */
32
+ export declare function readActiveProfileEnvironment(runtime: VibesRuntime): Promise<string | null>;
33
+ /** Bind this host's own profile to an environment. */
34
+ export declare function writeActiveProfileEnvironment(runtime: VibesRuntime, environmentId: string): Promise<void>;
35
+ /** Persist an environment selection into a specific profile's home. */
36
+ export declare function setProfileEnvironment(runtime: VibesRuntime, name: string, environmentId: string): Promise<void>;
37
+ /**
38
+ * Read the persisted environment id for a specific profile, or null if the
39
+ * profile has no environment bound yet.
40
+ */
41
+ export declare function getProfileEnvironment(runtime: VibesRuntime, name: string): Promise<string | null>;
42
+ //# sourceMappingURL=profile-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile-env.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile-env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAA2B,KAAK,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAE5H;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAC,wBAAwB,EAAE,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC;AAEpG,kEAAkE;AAClE,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAEzE;AAED,8EAA8E;AAC9E,wBAAsB,wBAAwB,CAC7C,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC,CAEnD;AAED,kEAAkE;AAClE,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAEhG;AAED,sDAAsD;AACtD,wBAAsB,6BAA6B,CAClD,OAAO,EAAE,YAAY,EACrB,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,uEAAuE;AACvE,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGvG"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Profile <-> environment binding helpers.
3
+ *
4
+ * A profile is more than a set of empty directories: it carries a persisted
5
+ * environment selection inside its own home, so
6
+ * that activating the profile (via `eval "$(vibes profile use <name>)"`) switches
7
+ * BOTH the credential/config home and the active environment.
8
+ *
9
+ * This reuses the EXISTING environment manifest machinery
10
+ * (saveCurrentEnvironmentSelection / loadCurrentEnvironmentSelection from
11
+ * @vibesdotdev/config/environment/current) rather than inventing a parallel
12
+ * config system. That manifest resolves against the host's own profile, which
13
+ * the host declared once at capture; another profile's selection is the same
14
+ * manifest bound to that profile's roots
15
+ * (`@vibesdotdev/config/environment/profile-environment`), read and written in
16
+ * process. Nothing re-enters the CLI.
17
+ */
18
+ import { saveCurrentEnvironmentSelection, loadCurrentEnvironmentSelection } from '@vibesdotdev/config/environment/current';
19
+ import { getPathRoots } from '@vibesdotdev/paths';
20
+ import { readProfileEnvironment, writeProfileEnvironment } from '@vibesdotdev/config/environment/profile-environment';
21
+ import { resolveDefaultEnvironmentId } from '@vibesdotdev/config/env.runtime';
22
+ import { resolveVibesEnvironment } from '@vibesdotdev/config/environment/resolve-app-origin';
23
+ /** Default environment a newly created profile should bind to. */
24
+ export function defaultProfileEnvironmentId(runtime) {
25
+ return resolveDefaultEnvironmentId(runtime);
26
+ }
27
+ /** Resolve a registered environment descriptor through the handed runtime. */
28
+ export async function getEnvironmentDescriptor(id, runtime) {
29
+ return await resolveVibesEnvironment({ environmentId: id, fallbackToActive: false }, runtime) ?? undefined;
30
+ }
31
+ /** The environment selection bound to this host's own profile. */
32
+ export async function readActiveProfileEnvironment(runtime) {
33
+ return loadCurrentEnvironmentSelection(runtime);
34
+ }
35
+ /** Bind this host's own profile to an environment. */
36
+ export async function writeActiveProfileEnvironment(runtime, environmentId) {
37
+ await saveCurrentEnvironmentSelection(runtime, environmentId);
38
+ }
39
+ /** Persist an environment selection into a specific profile's home. */
40
+ export async function setProfileEnvironment(runtime, name, environmentId) {
41
+ if (name === getPathRoots(runtime).profileName) {
42
+ await writeActiveProfileEnvironment(runtime, environmentId);
43
+ return;
44
+ }
45
+ await writeProfileEnvironment(runtime, name, environmentId);
46
+ }
47
+ /**
48
+ * Read the persisted environment id for a specific profile, or null if the
49
+ * profile has no environment bound yet.
50
+ */
51
+ export async function getProfileEnvironment(runtime, name) {
52
+ if (name === getPathRoots(runtime).profileName)
53
+ return readActiveProfileEnvironment(runtime);
54
+ return readProfileEnvironment(runtime, name);
55
+ }
56
+ //# sourceMappingURL=profile-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile-env.js","sourceRoot":"","sources":["../../../src/commands/profile/profile-env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACN,+BAA+B,EAC/B,+BAA+B,EAC/B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AACtH,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAiC,MAAM,oDAAoD,CAAC;AAU5H,kEAAkE;AAClE,MAAM,UAAU,2BAA2B,CAAC,OAAqB;IAChE,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC7C,EAAU,EACV,OAAqB;IAErB,OAAO,MAAM,uBAAuB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,IAAI,SAAS,CAAC;AAC5G,CAAC;AAED,kEAAkE;AAClE,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAAqB;IACvE,OAAO,+BAA+B,CAAC,OAAO,CAAC,CAAC;AACjD,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAClD,OAAqB,EACrB,aAAqB;IAErB,MAAM,+BAA+B,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC/D,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,OAAqB,EACrB,IAAY,EACZ,aAAqB;IAErB,IAAI,IAAI,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,6BAA6B,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC5D,OAAO;IACR,CAAC;IACD,MAAM,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;AAC7D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAAqB,EAAE,IAAY;IAC9E,IAAI,IAAI,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW;QAAE,OAAO,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAC7F,OAAO,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { CLIGroupAssetDescriptor } from '../../schemas/descriptors';
1
+ import type { CLIGroupAssetDescriptor } from '../../schemas/descriptors.ts';
2
2
  declare const descriptor: CLIGroupAssetDescriptor;
3
3
  export default descriptor;
4
4
  //# sourceMappingURL=profile-group.descriptor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile-group.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile-group.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,QAAA,MAAM,UAAU,EAAE,uBASjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"profile-group.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile-group.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAE5E,QAAA,MAAM,UAAU,EAAE,uBASjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { CLICommandAssetDescriptor } from '../../schemas/descriptors';
1
+ import type { CLICommandAssetDescriptor } from '../../schemas/descriptors.ts';
2
2
  declare const descriptor: CLICommandAssetDescriptor;
3
3
  export default descriptor;
4
4
  //# sourceMappingURL=profile.create.descriptor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile.create.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,QAAA,MAAM,UAAU,EAAE,yBAmBjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"profile.create.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,QAAA,MAAM,UAAU,EAAE,yBA8BjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -11,8 +11,19 @@ const descriptor = {
11
11
  required: true
12
12
  }
13
13
  ],
14
+ options: [
15
+ {
16
+ flags: '--env <environment>',
17
+ description: 'Registered environment id; defaults to the Config runtime default.',
18
+ type: 'string'
19
+ }
20
+ ],
14
21
  examples: [
15
- { command: 'vibes profile create work', description: 'Create a new profile named "work"' }
22
+ { command: 'vibes profile create work', description: 'Create a new profile named "work"' },
23
+ {
24
+ command: 'vibes profile create work --env production',
25
+ description: 'Create a "work" profile bound to the production environment'
26
+ }
16
27
  ],
17
28
  surfaces: ['cli'],
18
29
  hardware: ['consumer'],
@@ -1 +1 @@
1
- {"version":3,"file":"profile.create.descriptor.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAA8B;IAC7C,IAAI,EAAE,aAAa;IACnB,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,sBAAsB;IACnC,KAAK,EAAE,SAAS;IAChB,SAAS,EAAE;QACV;YACC,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,+BAA+B;YAC5C,QAAQ,EAAE,IAAI;SACd;KACD;IACD,QAAQ,EAAE;QACT,EAAE,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,mCAAmC,EAAE;KAC1F;IACD,QAAQ,EAAE,CAAC,KAAK,CAAC;IACjB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,OAAO,EAAE,IAAI;CACb,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"profile.create.descriptor.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAA8B;IAC7C,IAAI,EAAE,aAAa;IACnB,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,sBAAsB;IACnC,KAAK,EAAE,SAAS;IAChB,SAAS,EAAE;QACV;YACC,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,+BAA+B;YAC5C,QAAQ,EAAE,IAAI;SACd;KACD;IACD,OAAO,EAAE;QACR;YACC,KAAK,EAAE,qBAAqB;YAC5B,WAAW,EAAE,oEAAoE;YACjF,IAAI,EAAE,QAAQ;SACd;KACD;IACD,QAAQ,EAAE;QACT,EAAE,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,mCAAmC,EAAE;QAC1F;YACC,OAAO,EAAE,4CAA4C;YACrD,WAAW,EAAE,6DAA6D;SAC1E;KACD;IACD,QAAQ,EAAE,CAAC,KAAK,CAAC;IACjB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,OAAO,EAAE,IAAI;CACb,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,10 +1,6 @@
1
- /**
2
- * Profile Create Implementation
3
- *
4
- * Creates ~/.vibes/profile/{name}/ along with config/, data/, cache/, logs/.
5
- */
1
+ import type { CommandContext, CommandOptions } from '../../schemas/surface.ts';
6
2
  declare const _default: {
7
- execute(args: Record<string, unknown>): Promise<void>;
3
+ execute(args: CommandOptions, opts: CommandOptions, context: CommandContext): Promise<void>;
8
4
  };
9
5
  export default _default;
10
6
  //# sourceMappingURL=profile.create.impl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile.create.impl.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;kBAgBkB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;;AAD5D,wBAwBE"}
1
+ {"version":3,"file":"profile.create.impl.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.impl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;;kBA8B1D,cAAc,QAAQ,cAAc,WAAW,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;;AADlG,wBA6CE"}
@@ -1,28 +1,51 @@
1
+ import { requestCLIExit } from "../../boot/providers.js";
2
+ import { commandWriters } from "../../commands/output.js";
3
+ import * as z from 'zod/v4';
1
4
  /**
2
5
  * Profile Create Implementation
3
6
  *
4
- * Creates ~/.vibes/profile/{name}/ along with config/, data/, cache/, logs/.
7
+ * Creates {base}/profile/{name}/ along with config/, data/, cache/, logs/ and
8
+ * binds the profile to a registered Config environment. Every
9
+ * local surface shares the selected base; the profile name supplies isolation,
10
+ * while its environment binding is metadata inside that one profile.
5
11
  */
6
- import { existsSync } from 'node:fs';
7
- import { getProfilesDir, profileExists, createProfileDir, validateProfileName, GREEN, RED, BOLD, RESET, log } from './_utils.js';
12
+ import { profileExists, createProfileDir, validateProfileName, getProfileHome, openProfileStore, ProfileNameArgumentSchema, GREEN, RED, GRAY, BOLD, RESET, } from "./_utils.js";
13
+ import { defaultProfileEnvironmentId, setProfileEnvironment, getEnvironmentDescriptor } from "./profile-env.js";
8
14
  export default {
9
- async execute(args) {
10
- const name = args.name;
15
+ async execute(args, opts, context) {
16
+ const { log } = await commandWriters(context.runtime);
17
+ const store = await openProfileStore(context.runtime);
18
+ const name = ProfileNameArgumentSchema.parse(args.name);
11
19
  if (!name) {
12
20
  log(`${RED}✗${RESET} Profile name is required`);
13
- process.exit(1);
21
+ requestCLIExit(1);
14
22
  }
15
23
  validateProfileName(name);
24
+ const envArg = z.string().catch('').parse(opts.env).trim();
25
+ const environmentId = envArg || defaultProfileEnvironmentId(context.runtime);
26
+ const descriptor = await getEnvironmentDescriptor(environmentId, context.runtime);
27
+ if (!descriptor) {
28
+ log(`${RED}✗${RESET} Unknown environment: ${BOLD}${environmentId}${RESET}`);
29
+ requestCLIExit(1);
30
+ return;
31
+ }
16
32
  log('');
17
33
  log(`${BOLD}vibes profile create${RESET} ${name}`);
18
34
  log(`${'─'.repeat(40)}`);
19
- if (profileExists(name)) {
35
+ if (await profileExists(name, store)) {
20
36
  log(` ${RED}✗${RESET} Profile already exists: ${BOLD}${name}${RESET}`);
21
37
  log('');
22
- process.exit(1);
38
+ requestCLIExit(1);
23
39
  }
24
- createProfileDir(name);
40
+ await createProfileDir(name, store);
25
41
  log(` ${GREEN}✓${RESET} Created profile ${BOLD}${name}${RESET}`);
42
+ // Persist the environment selection INTO this profile's own home so that
43
+ // activating the profile switches both env + cred home.
44
+ await setProfileEnvironment(context.runtime, name, environmentId);
45
+ const apiUrl = descriptor.apiUrl;
46
+ log(` ${GREEN}✓${RESET} Bound to environment ${BOLD}${environmentId}${RESET}` +
47
+ (apiUrl ? ` ${GRAY}(${apiUrl})${RESET}` : ''));
48
+ log(` ${GRAY}Home: ${getProfileHome(name, store)}${RESET}`);
26
49
  log('');
27
50
  }
28
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"profile.create.impl.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.impl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EACN,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,EACL,GAAG,EACH,IAAI,EACJ,KAAK,EACL,GAAG,EACH,MAAM,UAAU,CAAC;AAElB,eAAe;IACd,KAAK,CAAC,OAAO,CAAC,IAA6B;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;QACjC,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,2BAA2B,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE1B,GAAG,CAAC,EAAE,CAAC,CAAC;QACR,GAAG,CAAC,GAAG,IAAI,uBAAuB,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEzB,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,4BAA4B,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;YACxE,GAAG,CAAC,EAAE,CAAC,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,GAAG,CAAC,KAAK,KAAK,IAAI,KAAK,oBAAoB,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;QAClE,GAAG,CAAC,EAAE,CAAC,CAAC;IACT,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"profile.create.impl.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.create.impl.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CLICommandAssetDescriptor } from '../../schemas/descriptors';
1
+ import type { CLICommandAssetDescriptor } from '../../schemas/descriptors.ts';
2
2
  declare const descriptor: CLICommandAssetDescriptor;
3
3
  export default descriptor;
4
4
  //# sourceMappingURL=profile.delete.descriptor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile.delete.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,QAAA,MAAM,UAAU,EAAE,yBA0BjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"profile.delete.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,QAAA,MAAM,UAAU,EAAE,yBA0BjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,11 +1,6 @@
1
- /**
2
- * Profile Delete Implementation
3
- *
4
- * Deletes a profile directory with optional --force to skip confirmation.
5
- * Refuses to delete the currently active profile.
6
- */
1
+ import type { CommandContext, CommandOptions } from '../../schemas/surface.ts';
7
2
  declare const _default: {
8
- execute(args: Record<string, unknown>, opts: Record<string, unknown>): Promise<void>;
3
+ execute(args: CommandOptions, opts: CommandOptions, context: CommandContext): Promise<void>;
9
4
  };
10
5
  export default _default;
11
6
  //# sourceMappingURL=profile.delete.impl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile.delete.impl.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;kBAiBK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,QACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,OAAO,CAAC,IAAI,CAAC;;AAJjB,wBAkDE"}
1
+ {"version":3,"file":"profile.delete.impl.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.impl.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;;kBAmCvE,cAAc,QACd,cAAc,WACX,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;;AALjB,wBAgDE"}
@@ -1,48 +1,65 @@
1
+ import { requestCLIExit } from "../../boot/providers.js";
2
+ import { commandWriters } from "../../commands/output.js";
1
3
  /**
2
4
  * Profile Delete Implementation
3
5
  *
4
6
  * Deletes a profile directory with optional --force to skip confirmation.
5
7
  * Refuses to delete the currently active profile.
6
8
  */
7
- import { createInterface } from 'node:readline/promises';
8
- import { getActiveProfile, profileExists, deleteProfileDir, validateProfileName, GREEN, RED, BOLD, RESET, log } from './_utils.js';
9
+ import { getRuntimeStdin } from '@vibesdotdev/kernel';
10
+ import { readTerminalLine, tryResolveTerminalTransport } from "../../support/terminal-input.js";
11
+ import { getActiveProfile, profileExists, deleteProfileDir, validateProfileName, openProfileStore, ProfileNameArgumentSchema, GREEN, RED, BOLD, RESET, } from "./_utils.js";
12
+ /** A piped confirmation is one short line; more is a mistake, refused by the host's bounded read. */
13
+ const CONFIRMATION_STDIN_MAX_BYTES = 4096;
14
+ /**
15
+ * The confirmation answer. On a terminal the runtime observed, one typed line
16
+ * (the selected `cli/terminal-input` transport); otherwise the
17
+ * runtime's bounded stdin read, whose first line is the answer (an empty or
18
+ * closed stdin answers "no").
19
+ */
20
+ async function readConfirmation(runtime, question) {
21
+ if (runtime.localEnvironment.terminal?.()?.stdinIsTerminal === true) {
22
+ const transport = await tryResolveTerminalTransport(runtime);
23
+ return readTerminalLine(question, transport);
24
+ }
25
+ const stdin = await getRuntimeStdin(runtime);
26
+ const read = await stdin.readStdin({ maxBytes: CONFIRMATION_STDIN_MAX_BYTES });
27
+ return read.text.split(/\r?\n/, 1)[0] ?? '';
28
+ }
9
29
  export default {
10
- async execute(args, opts) {
11
- const name = args.name;
30
+ async execute(args, opts, context) {
31
+ const { log } = await commandWriters(context.runtime);
32
+ const store = await openProfileStore(context.runtime);
33
+ const name = ProfileNameArgumentSchema.parse(args.name);
12
34
  const force = opts.force === true;
13
35
  if (!name) {
14
36
  log(`${RED}✗${RESET} Profile name is required`);
15
- process.exit(1);
37
+ requestCLIExit(1);
16
38
  }
17
39
  validateProfileName(name);
18
40
  log('');
19
41
  log(`${BOLD}vibes profile delete${RESET} ${name}`);
20
42
  log(`${'─'.repeat(40)}`);
21
- if (!profileExists(name)) {
43
+ if (!(await profileExists(name, store))) {
22
44
  log(` ${RED}✗${RESET} Profile does not exist: ${BOLD}${name}${RESET}`);
23
45
  log('');
24
- process.exit(1);
46
+ requestCLIExit(1);
25
47
  }
26
- const active = getActiveProfile();
48
+ const active = getActiveProfile(store.roots);
27
49
  if (name === active) {
28
50
  log(` ${RED}✗${RESET} Cannot delete the currently active profile: ${BOLD}${name}${RESET}`);
29
51
  log('');
30
- process.exit(1);
52
+ requestCLIExit(1);
31
53
  }
32
54
  if (!force) {
33
- const rl = createInterface({
34
- input: process.stdin,
35
- output: process.stdout
36
- });
37
- const answer = await rl.question(` Delete profile "${name}"? [y/N] `);
38
- rl.close();
55
+ const answer = await readConfirmation(context.runtime, ` Delete profile "${name}"? [y/N] `);
39
56
  if (answer.trim().toLowerCase() !== 'y') {
40
57
  log(` ${RED}✗${RESET} Cancelled`);
41
58
  log('');
42
59
  return;
43
60
  }
44
61
  }
45
- deleteProfileDir(name);
62
+ await deleteProfileDir(name, store);
46
63
  log(` ${GREEN}✓${RESET} Deleted profile ${BOLD}${name}${RESET}`);
47
64
  log('');
48
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"profile.delete.impl.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.impl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EACN,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,EACL,GAAG,EACH,IAAI,EACJ,KAAK,EACL,GAAG,EACH,MAAM,UAAU,CAAC;AAElB,eAAe;IACd,KAAK,CAAC,OAAO,CACZ,IAA6B,EAC7B,IAA6B;QAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;QAElC,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,2BAA2B,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE1B,GAAG,CAAC,EAAE,CAAC,CAAC;QACR,GAAG,CAAC,GAAG,IAAI,uBAAuB,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,4BAA4B,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;YACxE,GAAG,CAAC,EAAE,CAAC,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAClC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACrB,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,gDAAgD,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;YAC5F,GAAG,CAAC,EAAE,CAAC,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,EAAE,GAAG,eAAe,CAAC;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACtB,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,IAAI,WAAW,CAAC,CAAC;YACvE,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gBACzC,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC;gBACnC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,OAAO;YACR,CAAC;QACF,CAAC;QAED,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,GAAG,CAAC,KAAK,KAAK,IAAI,KAAK,oBAAoB,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC;QAClE,GAAG,CAAC,EAAE,CAAC,CAAC;IACT,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"profile.delete.impl.js","sourceRoot":"","sources":["../../../src/commands/profile/profile.delete.impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { CLICommandAssetDescriptor } from '../../schemas/descriptors.ts';
2
+ declare const descriptor: CLICommandAssetDescriptor;
3
+ export default descriptor;
4
+ //# sourceMappingURL=profile.environment.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.environment.descriptor.d.ts","sourceRoot":"","sources":["../../../src/commands/profile/profile.environment.descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAE9E,QAAA,MAAM,UAAU,EAAE,yBAuBjB,CAAC;AAEF,eAAe,UAAU,CAAC"}