@agentuity/cli 2.0.10 → 3.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/dist/cmd/ai/prompt/index.d.ts.map +1 -1
  2. package/dist/cmd/ai/prompt/index.js +2 -7
  3. package/dist/cmd/ai/prompt/index.js.map +1 -1
  4. package/dist/cmd/build/adapters/generic.d.ts +29 -0
  5. package/dist/cmd/build/adapters/generic.d.ts.map +1 -0
  6. package/dist/cmd/build/adapters/generic.js +190 -0
  7. package/dist/cmd/build/adapters/generic.js.map +1 -0
  8. package/dist/cmd/build/adapters/index.d.ts +15 -0
  9. package/dist/cmd/build/adapters/index.d.ts.map +1 -0
  10. package/dist/cmd/build/adapters/index.js +24 -0
  11. package/dist/cmd/build/adapters/index.js.map +1 -0
  12. package/dist/cmd/build/adapters/nextjs.d.ts +11 -0
  13. package/dist/cmd/build/adapters/nextjs.d.ts.map +1 -0
  14. package/dist/cmd/build/adapters/nextjs.js +118 -0
  15. package/dist/cmd/build/adapters/nextjs.js.map +1 -0
  16. package/dist/cmd/build/adapters/static-server.d.ts +23 -0
  17. package/dist/cmd/build/adapters/static-server.d.ts.map +1 -0
  18. package/dist/cmd/build/adapters/static-server.js +137 -0
  19. package/dist/cmd/build/adapters/static-server.js.map +1 -0
  20. package/dist/cmd/build/adapters/types.d.ts +71 -0
  21. package/dist/cmd/build/adapters/types.d.ts.map +1 -0
  22. package/dist/cmd/build/adapters/types.js +8 -0
  23. package/dist/cmd/build/adapters/types.js.map +1 -0
  24. package/dist/cmd/build/detect/engine.d.ts +24 -0
  25. package/dist/cmd/build/detect/engine.d.ts.map +1 -0
  26. package/dist/cmd/build/detect/engine.js +91 -0
  27. package/dist/cmd/build/detect/engine.js.map +1 -0
  28. package/dist/cmd/build/detect/frameworks.d.ts +66 -0
  29. package/dist/cmd/build/detect/frameworks.d.ts.map +1 -0
  30. package/dist/cmd/build/detect/frameworks.js +278 -0
  31. package/dist/cmd/build/detect/frameworks.js.map +1 -0
  32. package/dist/cmd/build/detect/generic.d.ts +13 -0
  33. package/dist/cmd/build/detect/generic.d.ts.map +1 -0
  34. package/dist/cmd/build/detect/generic.js +62 -0
  35. package/dist/cmd/build/detect/generic.js.map +1 -0
  36. package/dist/cmd/build/detect/index.d.ts +27 -0
  37. package/dist/cmd/build/detect/index.d.ts.map +1 -0
  38. package/dist/cmd/build/detect/index.js +76 -0
  39. package/dist/cmd/build/detect/index.js.map +1 -0
  40. package/dist/cmd/build/detect/types.d.ts +91 -0
  41. package/dist/cmd/build/detect/types.d.ts.map +1 -0
  42. package/dist/cmd/build/detect/types.js +9 -0
  43. package/dist/cmd/build/detect/types.js.map +1 -0
  44. package/dist/cmd/build/detect/util.d.ts +41 -0
  45. package/dist/cmd/build/detect/util.d.ts.map +1 -0
  46. package/dist/cmd/build/detect/util.js +101 -0
  47. package/dist/cmd/build/detect/util.js.map +1 -0
  48. package/dist/cmd/build/index.d.ts.map +1 -1
  49. package/dist/cmd/build/index.js +49 -22
  50. package/dist/cmd/build/index.js.map +1 -1
  51. package/dist/cmd/build/package/index.d.ts +30 -0
  52. package/dist/cmd/build/package/index.d.ts.map +1 -0
  53. package/dist/cmd/build/package/index.js +39 -0
  54. package/dist/cmd/build/package/index.js.map +1 -0
  55. package/dist/cmd/build/package/launch.d.ts +56 -0
  56. package/dist/cmd/build/package/launch.d.ts.map +1 -0
  57. package/dist/cmd/build/package/launch.js +56 -0
  58. package/dist/cmd/build/package/launch.js.map +1 -0
  59. package/dist/cmd/build/typecheck.d.ts.map +1 -1
  60. package/dist/cmd/build/typecheck.js +8 -0
  61. package/dist/cmd/build/typecheck.js.map +1 -1
  62. package/dist/cmd/cloud/deploy.d.ts.map +1 -1
  63. package/dist/cmd/cloud/deploy.js +63 -13
  64. package/dist/cmd/cloud/deploy.js.map +1 -1
  65. package/dist/cmd/coder/create.d.ts.map +1 -1
  66. package/dist/cmd/coder/create.js +18 -0
  67. package/dist/cmd/coder/create.js.map +1 -1
  68. package/dist/cmd/coder/index.d.ts.map +1 -1
  69. package/dist/cmd/coder/index.js +4 -0
  70. package/dist/cmd/coder/index.js.map +1 -1
  71. package/dist/cmd/coder/start.d.ts.map +1 -1
  72. package/dist/cmd/coder/start.js +49 -1
  73. package/dist/cmd/coder/start.js.map +1 -1
  74. package/dist/cmd/coder/update.d.ts.map +1 -1
  75. package/dist/cmd/coder/update.js +21 -1
  76. package/dist/cmd/coder/update.js.map +1 -1
  77. package/dist/cmd/coder/workspace/create.d.ts.map +1 -1
  78. package/dist/cmd/coder/workspace/create.js +17 -1
  79. package/dist/cmd/coder/workspace/create.js.map +1 -1
  80. package/dist/cmd/coder/workspace/list.js +2 -2
  81. package/dist/cmd/coder/workspace/list.js.map +1 -1
  82. package/dist/cmd/dev/index.d.ts +9 -0
  83. package/dist/cmd/dev/index.d.ts.map +1 -1
  84. package/dist/cmd/dev/index.js +127 -923
  85. package/dist/cmd/dev/index.js.map +1 -1
  86. package/dist/cmd/project/auth/shared.d.ts.map +1 -1
  87. package/dist/cmd/project/auth/shared.js +14 -38
  88. package/dist/cmd/project/auth/shared.js.map +1 -1
  89. package/dist/cmd/project/create.d.ts.map +1 -1
  90. package/dist/cmd/project/create.js +12 -19
  91. package/dist/cmd/project/create.js.map +1 -1
  92. package/dist/cmd/project/frameworks-ai-examples.d.ts +15 -0
  93. package/dist/cmd/project/frameworks-ai-examples.d.ts.map +1 -0
  94. package/dist/cmd/project/frameworks-ai-examples.js +160 -0
  95. package/dist/cmd/project/frameworks-ai-examples.js.map +1 -0
  96. package/dist/cmd/project/frameworks-landing-pages.d.ts +17 -0
  97. package/dist/cmd/project/frameworks-landing-pages.d.ts.map +1 -0
  98. package/dist/cmd/project/frameworks-landing-pages.js +242 -0
  99. package/dist/cmd/project/frameworks-landing-pages.js.map +1 -0
  100. package/dist/cmd/project/frameworks.d.ts +58 -0
  101. package/dist/cmd/project/frameworks.d.ts.map +1 -0
  102. package/dist/cmd/project/frameworks.js +152 -0
  103. package/dist/cmd/project/frameworks.js.map +1 -0
  104. package/dist/cmd/project/reconcile.d.ts.map +1 -1
  105. package/dist/cmd/project/reconcile.js +10 -23
  106. package/dist/cmd/project/reconcile.js.map +1 -1
  107. package/dist/cmd/project/remote-import.js +1 -1
  108. package/dist/cmd/project/scaffold.d.ts +58 -0
  109. package/dist/cmd/project/scaffold.d.ts.map +1 -0
  110. package/dist/cmd/project/scaffold.js +223 -0
  111. package/dist/cmd/project/scaffold.js.map +1 -0
  112. package/dist/cmd/project/template-flow.d.ts +8 -4
  113. package/dist/cmd/project/template-flow.d.ts.map +1 -1
  114. package/dist/cmd/project/template-flow.js +93 -144
  115. package/dist/cmd/project/template-flow.js.map +1 -1
  116. package/dist/deploy-metadata.d.ts +49 -0
  117. package/dist/deploy-metadata.d.ts.map +1 -0
  118. package/dist/deploy-metadata.js +183 -0
  119. package/dist/deploy-metadata.js.map +1 -0
  120. package/dist/index.d.ts +1 -1
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js.map +1 -1
  123. package/dist/types.d.ts +25 -31
  124. package/dist/types.d.ts.map +1 -1
  125. package/dist/types.js.map +1 -1
  126. package/package.json +13 -8
  127. package/src/cmd/ai/prompt/index.ts +2 -7
  128. package/src/cmd/build/adapters/generic.ts +239 -0
  129. package/src/cmd/build/adapters/index.ts +30 -0
  130. package/src/cmd/build/adapters/nextjs.ts +146 -0
  131. package/src/cmd/build/adapters/static-server.ts +143 -0
  132. package/src/cmd/build/adapters/types.ts +93 -0
  133. package/src/cmd/build/detect/engine.ts +111 -0
  134. package/src/cmd/build/detect/frameworks.ts +335 -0
  135. package/src/cmd/build/detect/generic.ts +71 -0
  136. package/src/cmd/build/detect/index.ts +122 -0
  137. package/src/cmd/build/detect/types.ts +109 -0
  138. package/src/cmd/build/detect/util.ts +104 -0
  139. package/src/cmd/build/index.ts +64 -24
  140. package/src/cmd/build/package/index.ts +66 -0
  141. package/src/cmd/build/package/launch.ts +104 -0
  142. package/src/cmd/build/typecheck.ts +9 -0
  143. package/src/cmd/cloud/deploy.ts +86 -13
  144. package/src/cmd/coder/create.ts +24 -1
  145. package/src/cmd/coder/index.ts +4 -0
  146. package/src/cmd/coder/start.ts +60 -1
  147. package/src/cmd/coder/update.ts +18 -1
  148. package/src/cmd/coder/workspace/create.ts +20 -2
  149. package/src/cmd/coder/workspace/list.ts +2 -2
  150. package/src/cmd/dev/index.ts +155 -1059
  151. package/src/cmd/project/auth/shared.ts +14 -39
  152. package/src/cmd/project/create.ts +14 -19
  153. package/src/cmd/project/frameworks-ai-examples.ts +166 -0
  154. package/src/cmd/project/frameworks-landing-pages.ts +267 -0
  155. package/src/cmd/project/frameworks.ts +223 -0
  156. package/src/cmd/project/reconcile.ts +10 -22
  157. package/src/cmd/project/remote-import.ts +1 -1
  158. package/src/cmd/project/scaffold.ts +300 -0
  159. package/src/cmd/project/template-flow.ts +102 -156
  160. package/src/deploy-metadata.ts +253 -0
  161. package/src/index.ts +0 -2
  162. package/src/types.ts +0 -31
  163. package/dist/agents-docs.d.ts +0 -23
  164. package/dist/agents-docs.d.ts.map +0 -1
  165. package/dist/agents-docs.js +0 -56
  166. package/dist/agents-docs.js.map +0 -1
  167. package/dist/cmd/ai/prompt/agent.d.ts +0 -10
  168. package/dist/cmd/ai/prompt/agent.d.ts.map +0 -1
  169. package/dist/cmd/ai/prompt/agent.js +0 -28
  170. package/dist/cmd/ai/prompt/agent.js.map +0 -1
  171. package/dist/cmd/build/app-router-detector.d.ts +0 -39
  172. package/dist/cmd/build/app-router-detector.d.ts.map +0 -1
  173. package/dist/cmd/build/app-router-detector.js +0 -229
  174. package/dist/cmd/build/app-router-detector.js.map +0 -1
  175. package/dist/cmd/build/format-schema.d.ts +0 -6
  176. package/dist/cmd/build/format-schema.d.ts.map +0 -1
  177. package/dist/cmd/build/format-schema.js +0 -60
  178. package/dist/cmd/build/format-schema.js.map +0 -1
  179. package/dist/cmd/build/vite/agent-discovery.d.ts +0 -37
  180. package/dist/cmd/build/vite/agent-discovery.d.ts.map +0 -1
  181. package/dist/cmd/build/vite/agent-discovery.js +0 -263
  182. package/dist/cmd/build/vite/agent-discovery.js.map +0 -1
  183. package/dist/cmd/build/vite/beacon-plugin.d.ts +0 -19
  184. package/dist/cmd/build/vite/beacon-plugin.d.ts.map +0 -1
  185. package/dist/cmd/build/vite/beacon-plugin.js +0 -137
  186. package/dist/cmd/build/vite/beacon-plugin.js.map +0 -1
  187. package/dist/cmd/build/vite/browser-env-plugin.d.ts +0 -9
  188. package/dist/cmd/build/vite/browser-env-plugin.d.ts.map +0 -1
  189. package/dist/cmd/build/vite/browser-env-plugin.js +0 -28
  190. package/dist/cmd/build/vite/browser-env-plugin.js.map +0 -1
  191. package/dist/cmd/build/vite/bun-dev-server.d.ts +0 -67
  192. package/dist/cmd/build/vite/bun-dev-server.d.ts.map +0 -1
  193. package/dist/cmd/build/vite/bun-dev-server.js +0 -340
  194. package/dist/cmd/build/vite/bun-dev-server.js.map +0 -1
  195. package/dist/cmd/build/vite/bundle-files.d.ts +0 -12
  196. package/dist/cmd/build/vite/bundle-files.d.ts.map +0 -1
  197. package/dist/cmd/build/vite/bundle-files.js +0 -107
  198. package/dist/cmd/build/vite/bundle-files.js.map +0 -1
  199. package/dist/cmd/build/vite/config-loader.d.ts +0 -29
  200. package/dist/cmd/build/vite/config-loader.d.ts.map +0 -1
  201. package/dist/cmd/build/vite/config-loader.js +0 -57
  202. package/dist/cmd/build/vite/config-loader.js.map +0 -1
  203. package/dist/cmd/build/vite/db-rewrite.d.ts +0 -50
  204. package/dist/cmd/build/vite/db-rewrite.d.ts.map +0 -1
  205. package/dist/cmd/build/vite/db-rewrite.js +0 -169
  206. package/dist/cmd/build/vite/db-rewrite.js.map +0 -1
  207. package/dist/cmd/build/vite/docs-generator.d.ts +0 -13
  208. package/dist/cmd/build/vite/docs-generator.d.ts.map +0 -1
  209. package/dist/cmd/build/vite/docs-generator.js +0 -97
  210. package/dist/cmd/build/vite/docs-generator.js.map +0 -1
  211. package/dist/cmd/build/vite/env-types-generator.d.ts +0 -26
  212. package/dist/cmd/build/vite/env-types-generator.d.ts.map +0 -1
  213. package/dist/cmd/build/vite/env-types-generator.js +0 -110
  214. package/dist/cmd/build/vite/env-types-generator.js.map +0 -1
  215. package/dist/cmd/build/vite/index.d.ts +0 -3
  216. package/dist/cmd/build/vite/index.d.ts.map +0 -1
  217. package/dist/cmd/build/vite/index.js +0 -4
  218. package/dist/cmd/build/vite/index.js.map +0 -1
  219. package/dist/cmd/build/vite/lifecycle-generator.d.ts +0 -19
  220. package/dist/cmd/build/vite/lifecycle-generator.d.ts.map +0 -1
  221. package/dist/cmd/build/vite/lifecycle-generator.js +0 -328
  222. package/dist/cmd/build/vite/lifecycle-generator.js.map +0 -1
  223. package/dist/cmd/build/vite/metadata-generator.d.ts +0 -36
  224. package/dist/cmd/build/vite/metadata-generator.d.ts.map +0 -1
  225. package/dist/cmd/build/vite/metadata-generator.js +0 -575
  226. package/dist/cmd/build/vite/metadata-generator.js.map +0 -1
  227. package/dist/cmd/build/vite/prompt-generator.d.ts +0 -23
  228. package/dist/cmd/build/vite/prompt-generator.d.ts.map +0 -1
  229. package/dist/cmd/build/vite/prompt-generator.js +0 -123
  230. package/dist/cmd/build/vite/prompt-generator.js.map +0 -1
  231. package/dist/cmd/build/vite/public-asset-path-plugin.d.ts +0 -45
  232. package/dist/cmd/build/vite/public-asset-path-plugin.d.ts.map +0 -1
  233. package/dist/cmd/build/vite/public-asset-path-plugin.js +0 -166
  234. package/dist/cmd/build/vite/public-asset-path-plugin.js.map +0 -1
  235. package/dist/cmd/build/vite/route-discovery.d.ts +0 -64
  236. package/dist/cmd/build/vite/route-discovery.d.ts.map +0 -1
  237. package/dist/cmd/build/vite/route-discovery.js +0 -187
  238. package/dist/cmd/build/vite/route-discovery.js.map +0 -1
  239. package/dist/cmd/build/vite/server-bundler.d.ts +0 -20
  240. package/dist/cmd/build/vite/server-bundler.d.ts.map +0 -1
  241. package/dist/cmd/build/vite/server-bundler.js +0 -388
  242. package/dist/cmd/build/vite/server-bundler.js.map +0 -1
  243. package/dist/cmd/build/vite/static-renderer.d.ts +0 -26
  244. package/dist/cmd/build/vite/static-renderer.d.ts.map +0 -1
  245. package/dist/cmd/build/vite/static-renderer.js +0 -188
  246. package/dist/cmd/build/vite/static-renderer.js.map +0 -1
  247. package/dist/cmd/build/vite/tailwind-source-plugin.d.ts +0 -15
  248. package/dist/cmd/build/vite/tailwind-source-plugin.d.ts.map +0 -1
  249. package/dist/cmd/build/vite/tailwind-source-plugin.js +0 -61
  250. package/dist/cmd/build/vite/tailwind-source-plugin.js.map +0 -1
  251. package/dist/cmd/build/vite/vite-asset-server-config.d.ts +0 -24
  252. package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +0 -1
  253. package/dist/cmd/build/vite/vite-asset-server-config.js +0 -285
  254. package/dist/cmd/build/vite/vite-asset-server-config.js.map +0 -1
  255. package/dist/cmd/build/vite/vite-asset-server.d.ts +0 -30
  256. package/dist/cmd/build/vite/vite-asset-server.d.ts.map +0 -1
  257. package/dist/cmd/build/vite/vite-asset-server.js +0 -109
  258. package/dist/cmd/build/vite/vite-asset-server.js.map +0 -1
  259. package/dist/cmd/build/vite/vite-builder.d.ts +0 -59
  260. package/dist/cmd/build/vite/vite-builder.d.ts.map +0 -1
  261. package/dist/cmd/build/vite/vite-builder.js +0 -401
  262. package/dist/cmd/build/vite/vite-builder.js.map +0 -1
  263. package/dist/cmd/build/vite/workbench-generator.d.ts +0 -10
  264. package/dist/cmd/build/vite/workbench-generator.d.ts.map +0 -1
  265. package/dist/cmd/build/vite/workbench-generator.js +0 -135
  266. package/dist/cmd/build/vite/workbench-generator.js.map +0 -1
  267. package/dist/cmd/build/vite/ws-proxy.d.ts +0 -53
  268. package/dist/cmd/build/vite/ws-proxy.d.ts.map +0 -1
  269. package/dist/cmd/build/vite/ws-proxy.js +0 -95
  270. package/dist/cmd/build/vite/ws-proxy.js.map +0 -1
  271. package/dist/cmd/build/vite-bundler.d.ts +0 -29
  272. package/dist/cmd/build/vite-bundler.d.ts.map +0 -1
  273. package/dist/cmd/build/vite-bundler.js +0 -93
  274. package/dist/cmd/build/vite-bundler.js.map +0 -1
  275. package/dist/cmd/dev/agents.d.ts +0 -2
  276. package/dist/cmd/dev/agents.d.ts.map +0 -1
  277. package/dist/cmd/dev/agents.js +0 -123
  278. package/dist/cmd/dev/agents.js.map +0 -1
  279. package/dist/cmd/dev/api.d.ts +0 -20
  280. package/dist/cmd/dev/api.d.ts.map +0 -1
  281. package/dist/cmd/dev/api.js +0 -42
  282. package/dist/cmd/dev/api.js.map +0 -1
  283. package/dist/cmd/dev/dev-lock.d.ts +0 -62
  284. package/dist/cmd/dev/dev-lock.d.ts.map +0 -1
  285. package/dist/cmd/dev/dev-lock.js +0 -250
  286. package/dist/cmd/dev/dev-lock.js.map +0 -1
  287. package/dist/cmd/dev/download.d.ts +0 -11
  288. package/dist/cmd/dev/download.d.ts.map +0 -1
  289. package/dist/cmd/dev/download.js +0 -94
  290. package/dist/cmd/dev/download.js.map +0 -1
  291. package/dist/cmd/dev/file-watcher.d.ts +0 -24
  292. package/dist/cmd/dev/file-watcher.d.ts.map +0 -1
  293. package/dist/cmd/dev/file-watcher.js +0 -349
  294. package/dist/cmd/dev/file-watcher.js.map +0 -1
  295. package/dist/cmd/dev/process-manager.d.ts +0 -104
  296. package/dist/cmd/dev/process-manager.d.ts.map +0 -1
  297. package/dist/cmd/dev/process-manager.js +0 -204
  298. package/dist/cmd/dev/process-manager.js.map +0 -1
  299. package/dist/cmd/dev/sync.d.ts +0 -12
  300. package/dist/cmd/dev/sync.d.ts.map +0 -1
  301. package/dist/cmd/dev/sync.js +0 -227
  302. package/dist/cmd/dev/sync.js.map +0 -1
  303. package/dist/cmd/dev/templates.d.ts +0 -3
  304. package/dist/cmd/dev/templates.d.ts.map +0 -1
  305. package/dist/cmd/dev/templates.js +0 -58
  306. package/dist/cmd/dev/templates.js.map +0 -1
  307. package/dist/cmd/project/download.d.ts +0 -35
  308. package/dist/cmd/project/download.d.ts.map +0 -1
  309. package/dist/cmd/project/download.js +0 -403
  310. package/dist/cmd/project/download.js.map +0 -1
  311. package/dist/cmd/project/templates.d.ts +0 -9
  312. package/dist/cmd/project/templates.d.ts.map +0 -1
  313. package/dist/cmd/project/templates.js +0 -34
  314. package/dist/cmd/project/templates.js.map +0 -1
  315. package/src/agents-docs.ts +0 -86
  316. package/src/cmd/ai/prompt/agent.md +0 -305
  317. package/src/cmd/ai/prompt/agent.ts +0 -31
  318. package/src/cmd/build/app-router-detector.ts +0 -320
  319. package/src/cmd/build/format-schema.ts +0 -66
  320. package/src/cmd/build/vite/agent-discovery.ts +0 -380
  321. package/src/cmd/build/vite/beacon-plugin.ts +0 -164
  322. package/src/cmd/build/vite/browser-env-plugin.ts +0 -34
  323. package/src/cmd/build/vite/bun-dev-server.ts +0 -458
  324. package/src/cmd/build/vite/bundle-files.ts +0 -135
  325. package/src/cmd/build/vite/config-loader.ts +0 -76
  326. package/src/cmd/build/vite/db-rewrite.ts +0 -189
  327. package/src/cmd/build/vite/docs-generator.ts +0 -103
  328. package/src/cmd/build/vite/env-types-generator.ts +0 -145
  329. package/src/cmd/build/vite/index.ts +0 -3
  330. package/src/cmd/build/vite/lifecycle-generator.ts +0 -381
  331. package/src/cmd/build/vite/metadata-generator.ts +0 -713
  332. package/src/cmd/build/vite/prompt-generator.ts +0 -169
  333. package/src/cmd/build/vite/public-asset-path-plugin.ts +0 -209
  334. package/src/cmd/build/vite/route-discovery.ts +0 -271
  335. package/src/cmd/build/vite/server-bundler.ts +0 -481
  336. package/src/cmd/build/vite/static-renderer.ts +0 -239
  337. package/src/cmd/build/vite/tailwind-source-plugin.ts +0 -73
  338. package/src/cmd/build/vite/vite-asset-server-config.ts +0 -349
  339. package/src/cmd/build/vite/vite-asset-server.ts +0 -154
  340. package/src/cmd/build/vite/vite-builder.ts +0 -503
  341. package/src/cmd/build/vite/workbench-generator.ts +0 -152
  342. package/src/cmd/build/vite/ws-proxy.ts +0 -126
  343. package/src/cmd/build/vite-bundler.ts +0 -137
  344. package/src/cmd/dev/agents.ts +0 -140
  345. package/src/cmd/dev/api.ts +0 -65
  346. package/src/cmd/dev/dev-lock.ts +0 -332
  347. package/src/cmd/dev/download.ts +0 -117
  348. package/src/cmd/dev/file-watcher.ts +0 -423
  349. package/src/cmd/dev/process-manager.ts +0 -261
  350. package/src/cmd/dev/sync.ts +0 -411
  351. package/src/cmd/dev/templates.ts +0 -66
  352. package/src/cmd/project/download.ts +0 -505
  353. package/src/cmd/project/templates.ts +0 -56
@@ -69,7 +69,12 @@ import { validateAptDependencies } from '../../utils/apt-validator';
69
69
  import { extractDependencies } from '../../utils/deps';
70
70
  import { zipDir } from '../../utils/zip';
71
71
  import { typecheck } from '../build/typecheck';
72
- import { viteBundle } from '../build/vite-bundler';
72
+ import { detectFrameworkWithPackageJson } from '../build/detect';
73
+ import { getAdapter } from '../build/adapters';
74
+ import { packageBuildOutput } from '../build/package';
75
+ import type { BuildResult } from '../build/adapters/types';
76
+ import type { PackageResult } from '../build/package';
77
+ import { generateDeployMetadata } from '../../deploy-metadata';
73
78
  import { getProjectGithubStatus } from '../git/api';
74
79
  import { runGitLink } from '../git/link';
75
80
  import { runForkedDeploy } from './deploy-fork';
@@ -276,6 +281,7 @@ export const deploySubcommand = createSubcommand({
276
281
 
277
282
  let deployment: Deployment | undefined;
278
283
  let build: BuildMetadata | undefined;
284
+ let buildOutputDir: string | undefined;
279
285
  let instructions: DeploymentInstructions | undefined;
280
286
  let complete: DeploymentComplete | undefined;
281
287
  let statusResult: DeploymentStatusResult | undefined;
@@ -631,7 +637,7 @@ export const deploySubcommand = createSubcommand({
631
637
  if (!deployment) {
632
638
  return stepError('deployment was null');
633
639
  }
634
- let capturedOutput: string[] = [];
640
+ const capturedOutput: string[] = [];
635
641
  const rootDir = resolve(projectDir);
636
642
 
637
643
  // Run typecheck with collector for error reporting
@@ -653,20 +659,85 @@ export const deploySubcommand = createSubcommand({
653
659
  return stepError('Typecheck failed\n\n' + typeResult.output);
654
660
  }
655
661
  try {
656
- const bundleResult = await viteBundle({
657
- rootDir,
662
+ // Step 1: Detect framework
663
+ const { framework, packageJson } =
664
+ await detectFrameworkWithPackageJson(rootDir);
665
+
666
+ if (!framework) {
667
+ return stepError(
668
+ 'Could not detect a JS framework. Ensure package.json exists with a build script.'
669
+ );
670
+ }
671
+
672
+ const frameworkLabel = framework.version
673
+ ? `${framework.name} v${framework.version}`
674
+ : framework.name;
675
+ capturedOutput.push(
676
+ tui.muted(`✓ Detected ${frameworkLabel} (${framework.runtime})`)
677
+ );
678
+
679
+ // Step 2: Get adapter and build
680
+ const outDir = join(rootDir, '.agentuity');
681
+ const adapter = getAdapter(framework.name);
682
+
683
+ const endBuildDiagnostic = collector.startDiagnostic('build');
684
+ const buildResult: BuildResult = await adapter.build({
685
+ projectDir: rootDir,
686
+ framework,
687
+ packageJson: packageJson!,
688
+ outputDir: outDir,
689
+ logger: ctx.logger,
690
+ collector,
658
691
  dev: false,
659
- deploymentId: deployment.id,
660
- orgId: deployment.orgId,
661
692
  projectId: project.projectId,
693
+ orgId: deployment.orgId,
662
694
  region: project.region,
663
- logger: ctx.logger,
695
+ deploymentId: deployment.id,
664
696
  deploymentOptions: opts,
665
697
  deploymentConfig: project.deployment,
666
- collector,
667
698
  });
668
- capturedOutput = [...capturedOutput, ...bundleResult.output];
669
- build = await loadBuildMetadata(join(projectDir, '.agentuity'));
699
+ endBuildDiagnostic();
700
+
701
+ capturedOutput.push(...buildResult.logs);
702
+ buildOutputDir = buildResult.outputDir;
703
+
704
+ // Step 3: Package output (launch.json, Procfile, .agentuity-build)
705
+ const packageResult: PackageResult = packageBuildOutput(
706
+ framework,
707
+ buildResult,
708
+ buildResult.outputDir
709
+ );
710
+
711
+ // Step 4: Generate deploy metadata
712
+ const isAgentuity = framework.name === 'agentuity';
713
+
714
+ if (isAgentuity) {
715
+ // Agentuity native: the Vite pipeline writes agentuity.metadata.json
716
+ // with full routes, agents, and assets — load it and add launch metadata
717
+ build = await loadBuildMetadata(buildResult.outputDir);
718
+ build.launch = packageResult.launch;
719
+ } else {
720
+ // Non-Agentuity: generate metadata from build result
721
+ build = await generateDeployMetadata({
722
+ buildResult,
723
+ packageResult,
724
+ projectDir: rootDir,
725
+ projectId: project.projectId,
726
+ orgId: deployment.orgId,
727
+ region: project.region,
728
+ deploymentId: deployment.id,
729
+ deploymentConfig: project.deployment,
730
+ deploymentOptions: opts,
731
+ logger: ctx.logger,
732
+ });
733
+ }
734
+
735
+ ctx.logger.debug(
736
+ 'Launch metadata: %s',
737
+ JSON.stringify(build.launch, null, 2)
738
+ );
739
+
740
+ // Step 5: Send metadata to API to get upload URLs
670
741
  instructions = await projectDeploymentUpdate(
671
742
  apiClient,
672
743
  deployment.id,
@@ -746,9 +817,10 @@ export const deploySubcommand = createSubcommand({
746
817
  const endZipDiagnostic = collector.startDiagnostic('zip-package');
747
818
  progress(5);
748
819
  ctx.logger.trace('Starting deployment zip creation');
749
- // zip up the assets folder
820
+ // zip up the build output directory
821
+ const zipSourceDir = buildOutputDir ?? join(projectDir, '.agentuity');
750
822
  const deploymentZip = join(tmpdir(), `${deployment.id}.zip`);
751
- await zipDir(join(projectDir, '.agentuity'), deploymentZip, {
823
+ await zipDir(zipSourceDir, deploymentZip, {
752
824
  filter: (_filename: string, relative: string) => {
753
825
  if (relative.startsWith('.vite/')) {
754
826
  return false;
@@ -878,7 +950,8 @@ export const deploySubcommand = createSubcommand({
878
950
  }
879
951
 
880
952
  // Asset filename already includes the subdirectory (e.g., "client/assets/main-abc123.js")
881
- const filePath = join(projectDir, '.agentuity', asset.filename);
953
+ const assetBaseDir = buildOutputDir ?? join(projectDir, '.agentuity');
954
+ const filePath = join(assetBaseDir, asset.filename);
882
955
 
883
956
  const headers: Record<string, string> = {
884
957
  'Content-Type': asset.contentType,
@@ -44,6 +44,12 @@ export const createCoderSubcommand = createSubcommand({
44
44
  ),
45
45
  description: 'Create with label and tags, return JSON',
46
46
  },
47
+ {
48
+ command: getCommand(
49
+ 'coder create "Review this change" --default-agent code-review --enabled-agents code-review'
50
+ ),
51
+ description: 'Create with a selected agent roster and a custom default route target',
52
+ },
47
53
  ],
48
54
  schema: {
49
55
  args: z.object({
@@ -61,6 +67,10 @@ export const createCoderSubcommand = createSubcommand({
61
67
  // Session config
62
68
  label: z.string().optional().describe('Human-readable session label'),
63
69
  agent: z.string().optional().describe('Default agent role (e.g. lead, scout)'),
70
+ defaultAgent: z
71
+ .string()
72
+ .optional()
73
+ .describe('Preferred default agent slug or built-in route target'),
64
74
  visibility: z
65
75
  .string()
66
76
  .optional()
@@ -86,6 +96,10 @@ export const createCoderSubcommand = createSubcommand({
86
96
  // Resources
87
97
  workspaceId: z.string().optional().describe('Workspace ID to use'),
88
98
  tags: z.string().optional().describe('Comma-separated tags'),
99
+ enabledAgents: z
100
+ .string()
101
+ .optional()
102
+ .describe('Comma-separated built-in/custom agents to include'),
89
103
  env: z
90
104
  .string()
91
105
  .optional()
@@ -105,10 +119,14 @@ export const createCoderSubcommand = createSubcommand({
105
119
  });
106
120
 
107
121
  // Build the create session request body from flags
108
- const body: CoderCreateSessionRequest = {
122
+ const body: CoderCreateSessionRequest & {
123
+ defaultAgent?: string;
124
+ enabledAgents?: string[];
125
+ } = {
109
126
  task: args.task,
110
127
  ...(opts?.label && { label: opts.label }),
111
128
  ...(opts?.agent && { agent: opts.agent }),
129
+ ...(opts?.defaultAgent && { defaultAgent: opts.defaultAgent }),
112
130
  ...(opts?.visibility && { visibility: normalizeVisibility(opts.visibility) }),
113
131
  ...(opts?.workflowMode && { workflowMode: opts.workflowMode as 'standard' | 'loop' }),
114
132
  };
@@ -149,6 +167,11 @@ export const createCoderSubcommand = createSubcommand({
149
167
  .split(',')
150
168
  .map((t) => t.trim())
151
169
  .filter(Boolean);
170
+ if (opts?.enabledAgents)
171
+ body.enabledAgents = opts.enabledAgents
172
+ .split(',')
173
+ .map((name) => name.trim())
174
+ .filter(Boolean);
152
175
  if (opts?.savedSkillIds)
153
176
  body.savedSkillIds = opts.savedSkillIds
154
177
  .split(',')
@@ -24,6 +24,10 @@ export const command = createCommand({
24
24
  command: getCommand('coder start'),
25
25
  description: 'Start a coding session connected to Coder',
26
26
  },
27
+ {
28
+ command: getCommand('coder start --dir ~/path/to/my/project'),
29
+ description: 'Start a coding session from a specific local project directory',
30
+ },
27
31
  {
28
32
  command: getCommand('coder create "Build a REST API"'),
29
33
  description: 'Create a new Coder session with a task',
@@ -1,4 +1,6 @@
1
1
  import { dirname, resolve } from 'node:path';
2
+ import { stat } from 'node:fs/promises';
3
+ import { homedir } from 'node:os';
2
4
  import { z } from 'zod';
3
5
  import { CoderClient, type CoderSessionListItem } from '@agentuity/core/coder';
4
6
  import { ValidationOutputError } from '@agentuity/core';
@@ -64,6 +66,10 @@ export const startSubcommand = createSubcommand({
64
66
  command: getCommand('coder start'),
65
67
  description: 'Start Pi with auto-detected Hub and extension',
66
68
  },
69
+ {
70
+ command: getCommand('coder start --dir ~/path/to/my/project'),
71
+ description: 'Start from a specific local project directory',
72
+ },
67
73
  {
68
74
  command: getCommand('coder start --url ws://127.0.0.1:3500/api/ws'),
69
75
  description: 'Start with explicit Coder URL',
@@ -97,6 +103,7 @@ export const startSubcommand = createSubcommand({
97
103
  ],
98
104
  schema: {
99
105
  options: z.object({
106
+ dir: z.string().optional().describe('Local project directory to start from'),
100
107
  url: z.string().optional().describe('Coder API URL override'),
101
108
  extension: z.string().optional().describe('Coder extension path override'),
102
109
  pi: z.string().optional().describe('Path to pi binary'),
@@ -121,6 +128,30 @@ export const startSubcommand = createSubcommand({
121
128
  },
122
129
  async handler(ctx) {
123
130
  const { opts, options } = ctx;
131
+
132
+ // Resolve working directory from optional --dir option
133
+ let cwd = process.cwd();
134
+ if (opts?.dir) {
135
+ // Warn if --dir is provided with --remote or --sandbox (dir is ignored in those modes)
136
+ if (opts?.remote !== undefined || opts?.sandbox !== undefined) {
137
+ tui.warning('--dir is ignored in remote/sandbox mode');
138
+ } else {
139
+ const raw = opts.dir.trim();
140
+ cwd =
141
+ raw === '~' || raw.startsWith('~/')
142
+ ? resolve(homedir(), raw.slice(2))
143
+ : resolve(raw);
144
+
145
+ const st = await stat(cwd).catch(() => null);
146
+ if (!st?.isDirectory()) {
147
+ tui.fatal(
148
+ `The specified path is not a valid directory: ${cwd}`,
149
+ ErrorCode.CONFIG_INVALID
150
+ );
151
+ return;
152
+ }
153
+ }
154
+ }
124
155
  const client = new CoderClient({
125
156
  apiKey: ctx.auth.apiKey,
126
157
  url: opts?.url,
@@ -216,6 +247,33 @@ export const startSubcommand = createSubcommand({
216
247
  // with the coder extension loaded for Hub UI (footer, /hub, commands).
217
248
  // Agent.emit() drives native rendering — no [remote_message] blocks.
218
249
  if (remoteSessionId) {
250
+ try {
251
+ const session = await tui.spinner({
252
+ message: 'Preparing remote session…',
253
+ callback: async () => client.prepareSessionForRemoteAttach(remoteSessionId!),
254
+ });
255
+
256
+ if (session.historyOnly === true) {
257
+ tui.fatal(
258
+ `Session ${remoteSessionId} is history-only and cannot be attached remotely.`,
259
+ ErrorCode.CONFIG_INVALID
260
+ );
261
+ return;
262
+ }
263
+
264
+ if (session.runtimeAvailable === false) {
265
+ tui.fatal(
266
+ `Session ${remoteSessionId} is offline and could not be resumed for remote attach.`,
267
+ ErrorCode.NETWORK_ERROR
268
+ );
269
+ return;
270
+ }
271
+ } catch (err) {
272
+ const msg = err instanceof Error ? err.message : String(err);
273
+ tui.fatal(`Failed to prepare remote session: ${msg}`, ErrorCode.NETWORK_ERROR);
274
+ return;
275
+ }
276
+
219
277
  if (!options.json) {
220
278
  tui.newline();
221
279
  tui.output(` Hub: ${tui.bold(hubWsUrl)}`);
@@ -343,6 +401,7 @@ export const startSubcommand = createSubcommand({
343
401
  tui.output(` Hub: ${tui.bold(hubWsUrl)}`);
344
402
  tui.output(` Extension: ${tui.bold(extensionPath)}`);
345
403
  tui.output(` Pi: ${tui.bold(piBinary)}`);
404
+ if (opts?.dir) tui.output(` Dir: ${tui.bold(cwd)}`);
346
405
  if (opts?.agent) tui.output(` Agent: ${tui.bold(opts.agent)}`);
347
406
  tui.newline();
348
407
  }
@@ -351,7 +410,7 @@ export const startSubcommand = createSubcommand({
351
410
  try {
352
411
  const proc = Bun.spawn([piBinary, ...piArgs], {
353
412
  env,
354
- cwd: process.cwd(),
413
+ cwd,
355
414
  stdin: 'inherit',
356
415
  stdout: 'inherit',
357
416
  stderr: 'inherit',
@@ -40,6 +40,10 @@ export const updateSubcommand = createSubcommand({
40
40
  url: z.string().optional().describe('Coder API URL override'),
41
41
  label: z.string().optional().describe('Updated session label'),
42
42
  agent: z.string().optional().describe('Updated default agent role'),
43
+ defaultAgent: z
44
+ .string()
45
+ .optional()
46
+ .describe('Updated preferred default agent slug or built-in route target'),
43
47
  visibility: z
44
48
  .string()
45
49
  .optional()
@@ -50,6 +54,10 @@ export const updateSubcommand = createSubcommand({
50
54
  loopAutoContinue: z.boolean().optional().describe('Auto-continue loop'),
51
55
  loopAllowDetached: z.boolean().optional().describe('Allow detached loop execution'),
52
56
  tags: z.string().optional().describe('Comma-separated tags (replaces existing)'),
57
+ enabledAgents: z
58
+ .string()
59
+ .optional()
60
+ .describe('Comma-separated built-in/custom agents (replaces existing)'),
53
61
  }),
54
62
  },
55
63
  async handler(ctx) {
@@ -64,6 +72,7 @@ export const updateSubcommand = createSubcommand({
64
72
 
65
73
  if (opts?.label) body.label = opts.label;
66
74
  if (opts?.agent) body.agent = opts.agent;
75
+ if (opts?.defaultAgent) body.defaultAgent = opts.defaultAgent;
67
76
  if (opts?.visibility) body.visibility = normalizeVisibility(opts.visibility);
68
77
  if (opts?.workflowMode) body.workflowMode = opts.workflowMode;
69
78
  if (opts?.tags) {
@@ -72,6 +81,12 @@ export const updateSubcommand = createSubcommand({
72
81
  .map((t) => t.trim())
73
82
  .filter(Boolean);
74
83
  }
84
+ if (opts?.enabledAgents) {
85
+ body.enabledAgents = opts.enabledAgents
86
+ .split(',')
87
+ .map((name) => name.trim())
88
+ .filter(Boolean);
89
+ }
75
90
 
76
91
  if (
77
92
  opts?.loopGoal ||
@@ -90,7 +105,7 @@ export const updateSubcommand = createSubcommand({
90
105
 
91
106
  if (Object.keys(body).length === 0) {
92
107
  tui.fatal(
93
- 'No update fields provided. Use --label, --visibility, --tags, --agent, --workflow-mode, or loop options.',
108
+ 'No update fields provided. Use --label, --visibility, --tags, --agent, --default-agent, --enabled-agents, --workflow-mode, or loop options.',
94
109
  ErrorCode.VALIDATION_FAILED
95
110
  );
96
111
  }
@@ -109,6 +124,8 @@ export const updateSubcommand = createSubcommand({
109
124
  if (opts?.visibility) fields.push(`Visibility: ${body.visibility}`);
110
125
  if (opts?.tags) fields.push(`Tags: ${(body.tags as string[]).join(', ')}`);
111
126
  if (opts?.agent) fields.push(`Agent: ${opts.agent}`);
127
+ if (opts?.defaultAgent) fields.push(`Default agent: ${opts.defaultAgent}`);
128
+ if (opts?.enabledAgents) fields.push(`Enabled agents: ${opts.enabledAgents}`);
112
129
  if (opts?.workflowMode || body.loop) fields.push(`Workflow: ${body.workflowMode}`);
113
130
 
114
131
  for (const f of fields) {
@@ -45,6 +45,10 @@ export const createWorkspaceSubcommand = createSubcommand({
45
45
  scope: z.string().optional().describe('Workspace scope: user or org'),
46
46
  repo: z.string().optional().describe('Repository URL to add'),
47
47
  repoBranch: z.string().optional().describe('Branch for the repository'),
48
+ enabledAgents: z
49
+ .string()
50
+ .optional()
51
+ .describe('Comma-separated built-in/custom agents to include'),
48
52
  }),
49
53
  },
50
54
  async handler(ctx) {
@@ -55,7 +59,9 @@ export const createWorkspaceSubcommand = createSubcommand({
55
59
  orgId: ctx.orgId,
56
60
  });
57
61
 
58
- const body: CoderCreateWorkspaceRequest = {
62
+ const body: CoderCreateWorkspaceRequest & {
63
+ enabledAgents?: string[];
64
+ } = {
59
65
  name: args.name,
60
66
  ...(opts?.description && { description: opts.description }),
61
67
  ...(opts?.scope && { scope: opts.scope as 'user' | 'org' }),
@@ -72,9 +78,18 @@ export const createWorkspaceSubcommand = createSubcommand({
72
78
  return;
73
79
  }
74
80
  }
81
+ if (opts?.enabledAgents) {
82
+ body.enabledAgents = opts.enabledAgents
83
+ .split(',')
84
+ .map((name) => name.trim())
85
+ .filter(Boolean);
86
+ }
75
87
 
76
88
  try {
77
89
  const created = await client.createWorkspace(body);
90
+ const createdEnabledAgents = Array.isArray(created.enabledAgents)
91
+ ? created.enabledAgents.filter((name): name is string => typeof name === 'string')
92
+ : [];
78
93
 
79
94
  if (options.json) {
80
95
  return created;
@@ -88,7 +103,10 @@ export const createWorkspaceSubcommand = createSubcommand({
88
103
  }
89
104
  tui.output(` Scope: ${created.scope}`);
90
105
  tui.output(` Repos: ${created.repoCount}`);
91
- tui.output(` Skills: ${created.selectionCount}`);
106
+ tui.output(` Selections: ${created.selectionCount}`);
107
+ if (createdEnabledAgents.length > 0) {
108
+ tui.output(` Agents: ${createdEnabledAgents.join(', ')}`);
109
+ }
92
110
 
93
111
  return created;
94
112
  } catch (err) {
@@ -83,7 +83,7 @@ export const listSubcommand = createSubcommand({
83
83
  Name: w.name,
84
84
  Scope: w.scope,
85
85
  Repos: String(w.repoCount),
86
- Skills: String(w.selectionCount),
86
+ Selections: String(w.selectionCount),
87
87
  Created: formatRelativeTime(w.createdAt),
88
88
  })),
89
89
  [
@@ -91,7 +91,7 @@ export const listSubcommand = createSubcommand({
91
91
  { name: 'Name', alignment: 'left' },
92
92
  { name: 'Scope', alignment: 'center' },
93
93
  { name: 'Repos', alignment: 'right' },
94
- { name: 'Skills', alignment: 'right' },
94
+ { name: 'Selections', alignment: 'right' },
95
95
  { name: 'Created', alignment: 'right' },
96
96
  ]
97
97
  );