@agentuity/cli 0.0.100 → 0.0.102

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 (264) hide show
  1. package/AGENTS.md +19 -188
  2. package/bin/cli.ts +13 -6
  3. package/dist/api.d.ts +1 -0
  4. package/dist/api.d.ts.map +1 -1
  5. package/dist/api.js +1 -1
  6. package/dist/api.js.map +1 -1
  7. package/dist/cli.d.ts.map +1 -1
  8. package/dist/cli.js +41 -12
  9. package/dist/cli.js.map +1 -1
  10. package/dist/cmd/ai/index.d.ts.map +1 -1
  11. package/dist/cmd/ai/index.js +6 -1
  12. package/dist/cmd/ai/index.js.map +1 -1
  13. package/dist/cmd/ai/prompt/agent.d.ts +7 -0
  14. package/dist/cmd/ai/prompt/agent.d.ts.map +1 -1
  15. package/dist/cmd/ai/prompt/agent.js +12 -323
  16. package/dist/cmd/ai/prompt/agent.js.map +1 -1
  17. package/dist/cmd/ai/prompt/api.d.ts +7 -0
  18. package/dist/cmd/ai/prompt/api.d.ts.map +1 -1
  19. package/dist/cmd/ai/prompt/api.js +12 -260
  20. package/dist/cmd/ai/prompt/api.js.map +1 -1
  21. package/dist/cmd/ai/prompt/version.d.ts +35 -0
  22. package/dist/cmd/ai/prompt/version.d.ts.map +1 -0
  23. package/dist/cmd/ai/prompt/version.js +55 -0
  24. package/dist/cmd/ai/prompt/version.js.map +1 -0
  25. package/dist/cmd/ai/prompt/web.d.ts +7 -0
  26. package/dist/cmd/ai/prompt/web.d.ts.map +1 -1
  27. package/dist/cmd/ai/prompt/web.js +12 -283
  28. package/dist/cmd/ai/prompt/web.js.map +1 -1
  29. package/dist/cmd/ai/skills/generate.d.ts +3 -0
  30. package/dist/cmd/ai/skills/generate.d.ts.map +1 -0
  31. package/dist/cmd/ai/skills/generate.js +65 -0
  32. package/dist/cmd/ai/skills/generate.js.map +1 -0
  33. package/dist/cmd/ai/skills/generator.d.ts +4 -0
  34. package/dist/cmd/ai/skills/generator.d.ts.map +1 -0
  35. package/dist/cmd/ai/skills/generator.js +402 -0
  36. package/dist/cmd/ai/skills/generator.js.map +1 -0
  37. package/dist/cmd/ai/skills/index.d.ts +4 -0
  38. package/dist/cmd/ai/skills/index.d.ts.map +1 -0
  39. package/dist/cmd/ai/skills/index.js +21 -0
  40. package/dist/cmd/ai/skills/index.js.map +1 -0
  41. package/dist/cmd/auth/signup.d.ts.map +1 -1
  42. package/dist/cmd/auth/signup.js +1 -0
  43. package/dist/cmd/auth/signup.js.map +1 -1
  44. package/dist/cmd/build/ast.d.ts +2 -1
  45. package/dist/cmd/build/ast.d.ts.map +1 -1
  46. package/dist/cmd/build/ast.js +135 -47
  47. package/dist/cmd/build/ast.js.map +1 -1
  48. package/dist/cmd/build/entry-generator.d.ts.map +1 -1
  49. package/dist/cmd/build/entry-generator.js +255 -188
  50. package/dist/cmd/build/entry-generator.js.map +1 -1
  51. package/dist/cmd/build/vite/agent-discovery.d.ts.map +1 -1
  52. package/dist/cmd/build/vite/agent-discovery.js +103 -45
  53. package/dist/cmd/build/vite/agent-discovery.js.map +1 -1
  54. package/dist/cmd/build/vite/bun-dev-server.d.ts +7 -1
  55. package/dist/cmd/build/vite/bun-dev-server.d.ts.map +1 -1
  56. package/dist/cmd/build/vite/bun-dev-server.js +52 -26
  57. package/dist/cmd/build/vite/bun-dev-server.js.map +1 -1
  58. package/dist/cmd/build/vite/docs-generator.d.ts +13 -0
  59. package/dist/cmd/build/vite/docs-generator.d.ts.map +1 -0
  60. package/dist/cmd/build/vite/docs-generator.js +81 -0
  61. package/dist/cmd/build/vite/docs-generator.js.map +1 -0
  62. package/dist/cmd/build/vite/index.d.ts +3 -3
  63. package/dist/cmd/build/vite/index.d.ts.map +1 -1
  64. package/dist/cmd/build/vite/index.js +9 -7
  65. package/dist/cmd/build/vite/index.js.map +1 -1
  66. package/dist/cmd/build/vite/lifecycle-generator.d.ts +1 -1
  67. package/dist/cmd/build/vite/lifecycle-generator.d.ts.map +1 -1
  68. package/dist/cmd/build/vite/lifecycle-generator.js +19 -5
  69. package/dist/cmd/build/vite/lifecycle-generator.js.map +1 -1
  70. package/dist/cmd/build/vite/metadata-generator.d.ts.map +1 -1
  71. package/dist/cmd/build/vite/metadata-generator.js +203 -7
  72. package/dist/cmd/build/vite/metadata-generator.js.map +1 -1
  73. package/dist/cmd/build/vite/prompt-generator.d.ts +23 -0
  74. package/dist/cmd/build/vite/prompt-generator.d.ts.map +1 -0
  75. package/dist/cmd/build/vite/prompt-generator.js +123 -0
  76. package/dist/cmd/build/vite/prompt-generator.js.map +1 -0
  77. package/dist/cmd/build/vite/registry-generator.d.ts +3 -3
  78. package/dist/cmd/build/vite/registry-generator.d.ts.map +1 -1
  79. package/dist/cmd/build/vite/registry-generator.js +644 -103
  80. package/dist/cmd/build/vite/registry-generator.js.map +1 -1
  81. package/dist/cmd/build/vite/route-discovery.d.ts +4 -0
  82. package/dist/cmd/build/vite/route-discovery.d.ts.map +1 -1
  83. package/dist/cmd/build/vite/route-discovery.js.map +1 -1
  84. package/dist/cmd/build/vite/server-bundler.d.ts +4 -0
  85. package/dist/cmd/build/vite/server-bundler.d.ts.map +1 -1
  86. package/dist/cmd/build/vite/server-bundler.js +63 -17
  87. package/dist/cmd/build/vite/server-bundler.js.map +1 -1
  88. package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +1 -1
  89. package/dist/cmd/build/vite/vite-asset-server-config.js +4 -0
  90. package/dist/cmd/build/vite/vite-asset-server-config.js.map +1 -1
  91. package/dist/cmd/build/vite/vite-builder.d.ts +1 -1
  92. package/dist/cmd/build/vite/vite-builder.d.ts.map +1 -1
  93. package/dist/cmd/build/vite/vite-builder.js +118 -96
  94. package/dist/cmd/build/vite/vite-builder.js.map +1 -1
  95. package/dist/cmd/build/vite-bundler.js +6 -6
  96. package/dist/cmd/build/vite-bundler.js.map +1 -1
  97. package/dist/cmd/cloud/deploy.d.ts.map +1 -1
  98. package/dist/cmd/cloud/deploy.js +89 -32
  99. package/dist/cmd/cloud/deploy.js.map +1 -1
  100. package/dist/cmd/cloud/keyvalue/create-namespace.d.ts.map +1 -1
  101. package/dist/cmd/cloud/keyvalue/create-namespace.js +3 -1
  102. package/dist/cmd/cloud/keyvalue/create-namespace.js.map +1 -1
  103. package/dist/cmd/cloud/keyvalue/delete-namespace.d.ts.map +1 -1
  104. package/dist/cmd/cloud/keyvalue/delete-namespace.js +3 -1
  105. package/dist/cmd/cloud/keyvalue/delete-namespace.js.map +1 -1
  106. package/dist/cmd/cloud/keyvalue/delete.d.ts.map +1 -1
  107. package/dist/cmd/cloud/keyvalue/delete.js +3 -1
  108. package/dist/cmd/cloud/keyvalue/delete.js.map +1 -1
  109. package/dist/cmd/cloud/keyvalue/set.d.ts.map +1 -1
  110. package/dist/cmd/cloud/keyvalue/set.js +4 -2
  111. package/dist/cmd/cloud/keyvalue/set.js.map +1 -1
  112. package/dist/cmd/cloud/stream/get.d.ts.map +1 -1
  113. package/dist/cmd/cloud/stream/get.js +2 -13
  114. package/dist/cmd/cloud/stream/get.js.map +1 -1
  115. package/dist/cmd/cloud/vector/delete-namespace.d.ts +3 -0
  116. package/dist/cmd/cloud/vector/delete-namespace.d.ts.map +1 -0
  117. package/dist/cmd/cloud/vector/delete-namespace.js +77 -0
  118. package/dist/cmd/cloud/vector/delete-namespace.js.map +1 -0
  119. package/dist/cmd/cloud/vector/index.d.ts.map +1 -1
  120. package/dist/cmd/cloud/vector/index.js +21 -4
  121. package/dist/cmd/cloud/vector/index.js.map +1 -1
  122. package/dist/cmd/cloud/vector/list-namespaces.d.ts +3 -0
  123. package/dist/cmd/cloud/vector/list-namespaces.d.ts.map +1 -0
  124. package/dist/cmd/cloud/vector/list-namespaces.js +42 -0
  125. package/dist/cmd/cloud/vector/list-namespaces.js.map +1 -0
  126. package/dist/cmd/cloud/vector/stats.d.ts +3 -0
  127. package/dist/cmd/cloud/vector/stats.d.ts.map +1 -0
  128. package/dist/cmd/cloud/vector/stats.js +142 -0
  129. package/dist/cmd/cloud/vector/stats.js.map +1 -0
  130. package/dist/cmd/cloud/vector/upsert.d.ts +3 -0
  131. package/dist/cmd/cloud/vector/upsert.d.ts.map +1 -0
  132. package/dist/cmd/cloud/vector/upsert.js +192 -0
  133. package/dist/cmd/cloud/vector/upsert.js.map +1 -0
  134. package/dist/cmd/dev/file-watcher.d.ts.map +1 -1
  135. package/dist/cmd/dev/file-watcher.js +94 -33
  136. package/dist/cmd/dev/file-watcher.js.map +1 -1
  137. package/dist/cmd/dev/index.d.ts.map +1 -1
  138. package/dist/cmd/dev/index.js +298 -61
  139. package/dist/cmd/dev/index.js.map +1 -1
  140. package/dist/cmd/dev/skills.d.ts +10 -0
  141. package/dist/cmd/dev/skills.d.ts.map +1 -0
  142. package/dist/cmd/dev/skills.js +57 -0
  143. package/dist/cmd/dev/skills.js.map +1 -0
  144. package/dist/cmd/dev/sync.d.ts.map +1 -1
  145. package/dist/cmd/dev/sync.js +19 -3
  146. package/dist/cmd/dev/sync.js.map +1 -1
  147. package/dist/cmd/index.d.ts.map +1 -1
  148. package/dist/cmd/index.js +1 -0
  149. package/dist/cmd/index.js.map +1 -1
  150. package/dist/cmd/project/create.d.ts.map +1 -1
  151. package/dist/cmd/project/create.js +3 -0
  152. package/dist/cmd/project/create.js.map +1 -1
  153. package/dist/cmd/project/template-flow.d.ts +1 -0
  154. package/dist/cmd/project/template-flow.d.ts.map +1 -1
  155. package/dist/cmd/project/template-flow.js +30 -5
  156. package/dist/cmd/project/template-flow.js.map +1 -1
  157. package/dist/cmd/setup/index.d.ts.map +1 -1
  158. package/dist/cmd/setup/index.js +1 -0
  159. package/dist/cmd/setup/index.js.map +1 -1
  160. package/dist/cmd/upgrade/index.d.ts +15 -0
  161. package/dist/cmd/upgrade/index.d.ts.map +1 -1
  162. package/dist/cmd/upgrade/index.js +59 -4
  163. package/dist/cmd/upgrade/index.js.map +1 -1
  164. package/dist/config.d.ts.map +1 -1
  165. package/dist/config.js +8 -0
  166. package/dist/config.js.map +1 -1
  167. package/dist/domain.d.ts +45 -0
  168. package/dist/domain.d.ts.map +1 -0
  169. package/dist/domain.js +200 -0
  170. package/dist/domain.js.map +1 -0
  171. package/dist/index.d.ts +0 -1
  172. package/dist/index.d.ts.map +1 -1
  173. package/dist/index.js +0 -1
  174. package/dist/index.js.map +1 -1
  175. package/dist/schema-generator.d.ts +2 -0
  176. package/dist/schema-generator.d.ts.map +1 -1
  177. package/dist/schema-generator.js +18 -0
  178. package/dist/schema-generator.js.map +1 -1
  179. package/dist/steps.d.ts +1 -1
  180. package/dist/steps.d.ts.map +1 -1
  181. package/dist/steps.js +16 -5
  182. package/dist/steps.js.map +1 -1
  183. package/dist/tui/prompt.d.ts +1 -2
  184. package/dist/tui/prompt.d.ts.map +1 -1
  185. package/dist/tui/prompt.js +8 -4
  186. package/dist/tui/prompt.js.map +1 -1
  187. package/dist/tui.d.ts +16 -0
  188. package/dist/tui.d.ts.map +1 -1
  189. package/dist/tui.js +23 -2
  190. package/dist/tui.js.map +1 -1
  191. package/dist/types.d.ts +9 -2
  192. package/dist/types.d.ts.map +1 -1
  193. package/dist/types.js +3 -3
  194. package/dist/types.js.map +1 -1
  195. package/package.json +5 -8
  196. package/src/api.ts +1 -1
  197. package/src/cli.ts +47 -12
  198. package/src/cmd/ai/index.ts +6 -1
  199. package/src/cmd/ai/prompt/agent.md +306 -0
  200. package/src/cmd/ai/prompt/agent.ts +12 -322
  201. package/src/cmd/ai/prompt/api.md +360 -0
  202. package/src/cmd/ai/prompt/api.ts +13 -260
  203. package/src/cmd/ai/prompt/version.ts +61 -0
  204. package/src/cmd/ai/prompt/web.md +509 -0
  205. package/src/cmd/ai/prompt/web.ts +12 -282
  206. package/src/cmd/ai/skills/generate.ts +75 -0
  207. package/src/cmd/ai/skills/generator.ts +519 -0
  208. package/src/cmd/ai/skills/index.ts +23 -0
  209. package/src/cmd/auth/signup.ts +1 -0
  210. package/src/cmd/build/ast.ts +161 -48
  211. package/src/cmd/build/entry-generator.ts +258 -187
  212. package/src/cmd/build/vite/agent-discovery.ts +151 -58
  213. package/src/cmd/build/vite/bun-dev-server.ts +57 -27
  214. package/src/cmd/build/vite/docs-generator.ts +87 -0
  215. package/src/cmd/build/vite/index.ts +9 -7
  216. package/src/cmd/build/vite/lifecycle-generator.ts +19 -5
  217. package/src/cmd/build/vite/metadata-generator.ts +251 -7
  218. package/src/cmd/build/vite/prompt-generator.ts +169 -0
  219. package/src/cmd/build/vite/registry-generator.ts +750 -108
  220. package/src/cmd/build/vite/route-discovery.ts +4 -0
  221. package/src/cmd/build/vite/server-bundler.ts +73 -23
  222. package/src/cmd/build/vite/vite-asset-server-config.ts +5 -0
  223. package/src/cmd/build/vite/vite-builder.ts +134 -100
  224. package/src/cmd/build/vite-bundler.ts +6 -6
  225. package/src/cmd/cloud/deploy.ts +114 -36
  226. package/src/cmd/cloud/keyvalue/create-namespace.ts +3 -1
  227. package/src/cmd/cloud/keyvalue/delete-namespace.ts +3 -1
  228. package/src/cmd/cloud/keyvalue/delete.ts +3 -1
  229. package/src/cmd/cloud/keyvalue/set.ts +4 -2
  230. package/src/cmd/cloud/stream/get.ts +2 -9
  231. package/src/cmd/cloud/vector/delete-namespace.ts +89 -0
  232. package/src/cmd/cloud/vector/index.ts +21 -4
  233. package/src/cmd/cloud/vector/list-namespaces.ts +46 -0
  234. package/src/cmd/cloud/vector/stats.ts +160 -0
  235. package/src/cmd/cloud/vector/upsert.ts +216 -0
  236. package/src/cmd/dev/file-watcher.ts +109 -34
  237. package/src/cmd/dev/index.ts +364 -60
  238. package/src/cmd/dev/skills.ts +82 -0
  239. package/src/cmd/dev/sync.ts +41 -6
  240. package/src/cmd/index.ts +1 -0
  241. package/src/cmd/project/create.ts +3 -0
  242. package/src/cmd/project/template-flow.ts +37 -5
  243. package/src/cmd/setup/index.ts +1 -0
  244. package/src/cmd/upgrade/index.ts +68 -4
  245. package/src/config.ts +9 -0
  246. package/src/domain.ts +273 -0
  247. package/src/index.ts +0 -5
  248. package/src/runtime-bootstrap.md +1 -1
  249. package/src/schema-generator.ts +23 -0
  250. package/src/steps.ts +16 -5
  251. package/src/tui/prompt.ts +11 -5
  252. package/src/tui.ts +21 -2
  253. package/src/types/md.d.ts +8 -0
  254. package/src/types.ts +12 -3
  255. package/dist/cmd/cloud/domain.d.ts +0 -17
  256. package/dist/cmd/cloud/domain.d.ts.map +0 -1
  257. package/dist/cmd/cloud/domain.js +0 -79
  258. package/dist/cmd/cloud/domain.js.map +0 -1
  259. package/dist/runtime-bootstrap.d.ts +0 -56
  260. package/dist/runtime-bootstrap.d.ts.map +0 -1
  261. package/dist/runtime-bootstrap.js +0 -95
  262. package/dist/runtime-bootstrap.js.map +0 -1
  263. package/src/cmd/cloud/domain.ts +0 -100
  264. package/src/runtime-bootstrap.ts +0 -131
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { resolve, join } from 'node:path';
3
3
  import { existsSync } from 'node:fs';
4
- import { internalExit } from '@agentuity/runtime';
4
+ import { getServiceUrls } from '@agentuity/server';
5
5
  import { createCommand } from '../../types';
6
6
  import { startBunDevServer } from '../build/vite/bun-dev-server';
7
7
  import { startViteAssetServer } from '../build/vite/vite-asset-server';
@@ -14,9 +14,72 @@ import { createDevmodeSyncService } from './sync';
14
14
  import { getDevmodeDeploymentId } from '../build/ast';
15
15
  import { getDefaultConfigDir, saveConfig } from '../../config';
16
16
  import { createFileWatcher } from './file-watcher';
17
+ import { regenerateSkillsAsync } from './skills';
17
18
  const DEFAULT_PORT = 3500;
18
19
  const MIN_PORT = 1024;
19
20
  const MAX_PORT = 65535;
21
+ /**
22
+ * Kill any lingering gravity processes from previous dev sessions.
23
+ * This is a defensive measure to clean up orphaned processes.
24
+ */
25
+ async function killLingeringGravityProcesses(logger) {
26
+ // Only attempt on Unix-like systems (macOS, Linux)
27
+ if (process.platform === 'win32') {
28
+ return;
29
+ }
30
+ try {
31
+ // Use pkill to kill gravity processes owned by current user
32
+ // The -f flag matches against full command line
33
+ // We specifically match the gravity binary name to avoid killing unrelated processes
34
+ const result = Bun.spawnSync(['pkill', '-f', 'gravity.*--endpoint-id'], {
35
+ stdout: 'ignore',
36
+ stderr: 'ignore',
37
+ });
38
+ // Exit code 0 = processes killed, 1 = no matching processes, other = error
39
+ if (result.exitCode === 0) {
40
+ logger.debug('Killed lingering gravity processes from previous session');
41
+ // Brief pause to let processes fully terminate
42
+ await new Promise((resolve) => setTimeout(resolve, 100));
43
+ }
44
+ }
45
+ catch {
46
+ // pkill not available or failed - not critical, continue
47
+ }
48
+ }
49
+ /**
50
+ * Stop the existing Bun server if one is running.
51
+ * Waits for the port to become available before returning.
52
+ */
53
+ async function stopBunServer(port, logger) {
54
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
55
+ const globalAny = globalThis;
56
+ const server = globalAny.__AGENTUITY_SERVER__;
57
+ if (!server)
58
+ return;
59
+ try {
60
+ logger.debug('Stopping previous Bun server...');
61
+ server.stop(true); // Close active connections immediately
62
+ }
63
+ catch (err) {
64
+ logger.debug('Error stopping previous Bun server: %s', err);
65
+ }
66
+ // Wait for socket to close to avoid EADDRINUSE races
67
+ for (let i = 0; i < 20; i++) {
68
+ try {
69
+ await fetch(`http://127.0.0.1:${port}/`, {
70
+ method: 'HEAD',
71
+ signal: AbortSignal.timeout(200),
72
+ });
73
+ // Still responding, wait a bit more
74
+ await new Promise((r) => setTimeout(r, 50));
75
+ }
76
+ catch {
77
+ // Connection refused or timeout => server is down
78
+ break;
79
+ }
80
+ }
81
+ globalAny.__AGENTUITY_SERVER__ = undefined;
82
+ }
20
83
  const getDefaultPort = () => {
21
84
  const envPort = process.env.PORT;
22
85
  if (!envPort) {
@@ -77,6 +140,11 @@ export const command = createCommand({
77
140
  const mustHaves = [join(rootDir, 'package.json'), appTs, srcDir];
78
141
  const missing = [];
79
142
  const interactive = !shouldDisableInteractive(opts.interactive);
143
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
144
+ let originalExit = globalThis.AGENTUITY_PROCESS_EXIT;
145
+ if (!originalExit) {
146
+ originalExit = process.exit.bind(process);
147
+ }
80
148
  for (const filename of mustHaves) {
81
149
  if (!existsSync(filename)) {
82
150
  missing.push(filename);
@@ -87,16 +155,23 @@ export const command = createCommand({
87
155
  for (const filename of missing) {
88
156
  tui.bullet(`Missing ${filename}`);
89
157
  }
90
- internalExit(1);
158
+ originalExit(1);
91
159
  }
160
+ // Kill any lingering gravity processes from previous dev sessions
161
+ // This prevents "zombie" gravity clients from blocking the public URL
162
+ await killLingeringGravityProcesses(logger);
92
163
  // Setup devmode and gravity (if using public URL)
93
164
  const useMockService = process.env.DEVMODE_SYNC_SERVICE_MOCK === 'true';
94
165
  const apiClient = auth ? new APIClient(getAPIBaseURL(config), logger, config) : null;
95
- createDevmodeSyncService({
96
- logger,
97
- apiClient,
98
- mock: useMockService,
99
- });
166
+ const syncService = apiClient
167
+ ? createDevmodeSyncService({
168
+ logger,
169
+ apiClient,
170
+ mock: useMockService,
171
+ })
172
+ : null;
173
+ // Track previous metadata for sync diffing
174
+ let previousMetadata;
100
175
  let devmode;
101
176
  let gravityBin;
102
177
  let gravityURL;
@@ -180,10 +255,15 @@ export const command = createCommand({
180
255
  bottomSpacer: false,
181
256
  centerTitle: false,
182
257
  });
258
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
259
+ const cliVersion = global.__CLI_SCHEMA__?.version ?? '';
260
+ if (cliVersion) {
261
+ regenerateSkillsAsync(rootDir, cliVersion, logger).catch(() => { });
262
+ }
183
263
  // Start Vite asset server ONCE before restart loop
184
264
  // Vite handles frontend HMR independently and stays running across backend restarts
185
- let vitePort;
186
265
  let viteServer = null;
266
+ let vitePort;
187
267
  try {
188
268
  logger.debug('Starting Vite asset server...');
189
269
  const viteResult = await startViteAssetServer({
@@ -197,12 +277,14 @@ export const command = createCommand({
197
277
  }
198
278
  catch (error) {
199
279
  tui.error(`Failed to start Vite asset server: ${error}`);
200
- internalExit(1);
280
+ originalExit(1);
281
+ return;
201
282
  }
202
283
  // Restart loop - allows BACKEND server to restart on file changes
203
284
  // Vite stays running and handles frontend changes via HMR
204
285
  let shouldRestart = false;
205
286
  let gravityProcess = null;
287
+ let stdinListenerRegistered = false; // Track if stdin listener is already registered
206
288
  const restartServer = () => {
207
289
  shouldRestart = true;
208
290
  };
@@ -217,21 +299,42 @@ export const command = createCommand({
217
299
  });
218
300
  // Start file watcher (will be paused during builds)
219
301
  fileWatcher.start();
220
- // Setup signal handlers once before the loop
221
- const cleanup = async () => {
222
- tui.info('Shutting down...');
223
- // Stop file watcher
224
- fileWatcher.stop();
225
- // Close Vite asset server first
226
- if (viteServer) {
227
- await viteServer.close();
302
+ // Track if cleanup is in progress to avoid duplicate cleanup
303
+ let cleaningUp = false;
304
+ /**
305
+ * Centralized cleanup function for all resources.
306
+ * Called on restart, shutdown, and fatal errors.
307
+ * @param exitAfter - If true, exit the process after cleanup
308
+ * @param exitCode - Exit code to use if exitAfter is true
309
+ * @param silent - If true, don't show "Shutting down" message
310
+ */
311
+ const cleanup = async (exitAfter = false, exitCode = 0, silent = false) => {
312
+ if (cleaningUp)
313
+ return;
314
+ cleaningUp = true;
315
+ if (!silent) {
316
+ tui.info('Shutting down...');
317
+ }
318
+ // Stop file watcher first to prevent restart triggers during cleanup
319
+ try {
320
+ fileWatcher.stop();
321
+ }
322
+ catch (err) {
323
+ logger.debug('Error stopping file watcher: %s', err);
324
+ }
325
+ // Stop Bun server
326
+ try {
327
+ await stopBunServer(opts.port, logger);
328
+ }
329
+ catch (err) {
330
+ logger.debug('Error stopping Bun server during cleanup: %s', err);
228
331
  }
229
332
  // Kill gravity client with SIGTERM first, then SIGKILL as fallback
230
333
  if (gravityProcess) {
231
334
  try {
232
335
  gravityProcess.kill('SIGTERM');
233
336
  // Give it a moment to gracefully shutdown
234
- await new Promise((resolve) => setTimeout(resolve, 100));
337
+ await new Promise((resolve) => setTimeout(resolve, 150));
235
338
  if (gravityProcess.exitCode === null) {
236
339
  gravityProcess.kill('SIGKILL');
237
340
  }
@@ -239,16 +342,97 @@ export const command = createCommand({
239
342
  catch (err) {
240
343
  logger.debug('Error killing gravity process: %s', err);
241
344
  }
345
+ finally {
346
+ gravityProcess = null;
347
+ }
348
+ }
349
+ // Close Vite asset server last (it handles frontend, should stay up longest)
350
+ if (viteServer) {
351
+ try {
352
+ await viteServer.close();
353
+ }
354
+ catch (err) {
355
+ logger.debug('Error closing Vite server: %s', err);
356
+ }
357
+ finally {
358
+ viteServer = null;
359
+ }
360
+ }
361
+ // Reset cleanup flag if not exiting (allows restart)
362
+ if (!exitAfter) {
363
+ cleaningUp = false;
364
+ }
365
+ else {
366
+ originalExit(exitCode);
242
367
  }
243
- internalExit(0);
244
368
  };
245
- process.on('SIGINT', cleanup);
246
- process.on('SIGTERM', cleanup);
247
- // Ensure Vite and gravity are always killed on exit (even if cleanup is bypassed)
369
+ /**
370
+ * Cleanup for restart: stops Bun server and Gravity, keeps Vite running
371
+ */
372
+ const cleanupForRestart = async () => {
373
+ logger.debug('Cleaning up for restart...');
374
+ // Stop Bun server
375
+ try {
376
+ await stopBunServer(opts.port, logger);
377
+ }
378
+ catch (err) {
379
+ logger.debug('Error stopping Bun server for restart: %s', err);
380
+ }
381
+ // Kill gravity client
382
+ if (gravityProcess) {
383
+ try {
384
+ gravityProcess.kill('SIGTERM');
385
+ await new Promise((resolve) => setTimeout(resolve, 150));
386
+ if (gravityProcess.exitCode === null) {
387
+ gravityProcess.kill('SIGKILL');
388
+ }
389
+ }
390
+ catch (err) {
391
+ logger.debug('Error killing gravity process for restart: %s', err);
392
+ }
393
+ finally {
394
+ gravityProcess = null;
395
+ }
396
+ }
397
+ };
398
+ // SIGINT/SIGTERM: coordinate shutdown between bundle and dev resources
399
+ let signalHandlersRegistered = false;
400
+ if (!signalHandlersRegistered) {
401
+ signalHandlersRegistered = true;
402
+ const safeExit = async (code, reason) => {
403
+ if (reason) {
404
+ logger.debug('DevMode terminating (%d) due to: %s', code, reason);
405
+ }
406
+ await cleanup(true, code);
407
+ };
408
+ process.on('SIGINT', () => {
409
+ void safeExit(0, 'SIGINT');
410
+ });
411
+ process.on('SIGTERM', () => {
412
+ void safeExit(0, 'SIGTERM');
413
+ });
414
+ // Handle uncaught exceptions - clean up and exit rather than limping on
415
+ process.on('uncaughtException', (err) => {
416
+ tui.error(`Uncaught exception: ${err instanceof Error ? err.stack ?? err.message : String(err)}`);
417
+ void safeExit(1, 'uncaughtException');
418
+ });
419
+ // Handle unhandled rejections - log but don't exit (usually recoverable)
420
+ process.on('unhandledRejection', (reason) => {
421
+ logger.warn('Unhandled promise rejection: %s', reason instanceof Error ? reason.stack ?? reason.message : String(reason));
422
+ });
423
+ }
424
+ // Ensure resources are always cleaned up on exit (synchronous fallback)
248
425
  process.on('exit', () => {
426
+ // Kill gravity client with SIGKILL for immediate termination
427
+ if (gravityProcess && gravityProcess.exitCode === null) {
428
+ try {
429
+ gravityProcess.kill('SIGKILL');
430
+ }
431
+ catch {
432
+ // Ignore errors during exit cleanup
433
+ }
434
+ }
249
435
  // Close Vite server synchronously if possible
250
- // Note: Vite's close() is async, but we can't await in 'exit' handler
251
- // Most Vite implementations handle sync close gracefully
252
436
  if (viteServer) {
253
437
  try {
254
438
  viteServer.close();
@@ -257,10 +441,12 @@ export const command = createCommand({
257
441
  // Ignore errors during exit cleanup
258
442
  }
259
443
  }
260
- // Kill gravity client with SIGKILL for immediate termination
261
- if (gravityProcess && gravityProcess.exitCode === null) {
444
+ // Stop Bun server synchronously (best effort)
445
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
446
+ const server = globalThis.__AGENTUITY_SERVER__;
447
+ if (server?.stop) {
262
448
  try {
263
- gravityProcess.kill('SIGKILL');
449
+ server.stop(true);
264
450
  }
265
451
  catch {
266
452
  // Ignore errors during exit cleanup
@@ -272,10 +458,18 @@ export const command = createCommand({
272
458
  // Pause file watcher during build to avoid loops
273
459
  fileWatcher.pause();
274
460
  try {
275
- // Generate entry file for Vite before starting dev server
461
+ // Generate entry file and bundle for dev server (with LLM patches)
276
462
  await tui.spinner({
277
- message: 'Generating entry file',
463
+ message: 'Building dev bundle',
278
464
  callback: async () => {
465
+ // Step 1: Generate workbench files if enabled (must be done before entry generation)
466
+ if (workbenchConfigData.enabled) {
467
+ logger.debug('Workbench enabled, generating source files before bundle...');
468
+ const { generateWorkbenchFiles } = await import('../build/vite/workbench-generator');
469
+ await generateWorkbenchFiles(rootDir, project?.projectId ?? '', workbenchConfigData, logger);
470
+ }
471
+ // Step 2: Generate entry file with workbench config
472
+ // Note: vitePort is NOT passed here - the app reads process.env.VITE_PORT at runtime
279
473
  const { generateEntryFile } = await import('../build/entry-generator');
280
474
  await generateEntryFile({
281
475
  rootDir,
@@ -283,13 +477,49 @@ export const command = createCommand({
283
477
  deploymentId,
284
478
  logger,
285
479
  mode: 'dev',
480
+ workbench: workbenchConfigData.enabled ? workbenchConfigData : undefined,
481
+ });
482
+ // Step 3: Bundle the app with LLM patches (dev mode = no minification)
483
+ // This produces .agentuity/app.js with AI Gateway routing patches applied
484
+ const { installExternalsAndBuild } = await import('../build/vite/server-bundler');
485
+ await installExternalsAndBuild({
486
+ rootDir,
487
+ dev: true, // DevMode: no minification, inline sourcemaps
488
+ logger,
286
489
  });
490
+ // Generate metadata file (needed for eval ID lookup at runtime)
491
+ const { discoverAgents } = await import('../build/vite/agent-discovery');
492
+ const { discoverRoutes } = await import('../build/vite/route-discovery');
493
+ const { generateMetadata, writeMetadataFile } = await import('../build/vite/metadata-generator');
494
+ const srcDir = join(rootDir, 'src');
495
+ // Generate/update prompt files (non-blocking)
496
+ import('../build/vite/prompt-generator')
497
+ .then(({ generatePromptFiles }) => generatePromptFiles(srcDir, logger))
498
+ .catch((err) => logger.warn('Failed to generate prompt files: %s', err.message));
499
+ const agents = await discoverAgents(srcDir, project?.projectId ?? '', deploymentId, logger);
500
+ const { routes } = await discoverRoutes(srcDir, project?.projectId ?? '', deploymentId, logger);
501
+ const metadata = await generateMetadata({
502
+ rootDir,
503
+ projectId: project?.projectId ?? '',
504
+ orgId: project?.orgId ?? '',
505
+ deploymentId,
506
+ agents,
507
+ routes,
508
+ dev: true,
509
+ logger,
510
+ });
511
+ writeMetadataFile(rootDir, metadata, true, logger);
512
+ // Sync metadata with backend (creates agents and evals in the database)
513
+ if (syncService && project?.projectId) {
514
+ await syncService.sync(metadata, previousMetadata, project.projectId, deploymentId);
515
+ previousMetadata = metadata;
516
+ }
287
517
  },
288
518
  clearOnSuccess: true,
289
519
  });
290
520
  }
291
521
  catch (error) {
292
- tui.error(`Failed to generate entry file: ${error}`);
522
+ tui.error(`Failed to build dev bundle: ${error}`);
293
523
  tui.warn('Waiting for file changes to retry...');
294
524
  // Resume watcher to detect changes for retry
295
525
  fileWatcher.resume();
@@ -305,6 +535,29 @@ export const command = createCommand({
305
535
  continue;
306
536
  }
307
537
  try {
538
+ // Set environment variables for LLM provider patches BEFORE starting server
539
+ // These must be set so the bundled patches can route LLM calls through AI Gateway
540
+ const serviceUrls = getServiceUrls(project?.region);
541
+ process.env.AGENTUITY_SDK_DEV_MODE = 'true';
542
+ process.env.AGENTUITY_ENV = 'development';
543
+ process.env.NODE_ENV = 'development';
544
+ if (project?.region) {
545
+ process.env.AGENTUITY_REGION = project.region;
546
+ }
547
+ process.env.PORT = String(opts.port);
548
+ process.env.AGENTUITY_PORT = process.env.PORT;
549
+ if (project) {
550
+ process.env.AGENTUITY_TRANSPORT_URL = serviceUrls.catalyst;
551
+ process.env.AGENTUITY_CATALYST_URL = serviceUrls.catalyst;
552
+ process.env.AGENTUITY_VECTOR_URL = serviceUrls.vector;
553
+ process.env.AGENTUITY_KEYVALUE_URL = serviceUrls.keyvalue;
554
+ process.env.AGENTUITY_STREAM_URL = serviceUrls.stream;
555
+ process.env.AGENTUITY_CLOUD_ORG_ID = project.orgId;
556
+ process.env.AGENTUITY_CLOUD_PROJECT_ID = project.projectId;
557
+ }
558
+ // Set Vite port for asset proxying in bundled app
559
+ process.env.VITE_PORT = String(vitePort);
560
+ logger.debug('Set VITE_PORT=%s for asset proxying', process.env.VITE_PORT);
308
561
  // Start Bun dev server (Vite already running, just start backend)
309
562
  await startBunDevServer({
310
563
  rootDir,
@@ -315,7 +568,6 @@ export const command = createCommand({
315
568
  logger,
316
569
  vitePort, // Pass port of already-running Vite server
317
570
  });
318
- // Note: Bun server runs in-process, no separate app process needed
319
571
  // Wait for app.ts to finish loading (Vite is ready but app may still be initializing)
320
572
  // Give it 2 seconds to ensure app initialization completes
321
573
  await new Promise((resolve) => setTimeout(resolve, 2000));
@@ -386,8 +638,12 @@ export const command = createCommand({
386
638
  // Sync service integration
387
639
  // TODO: Integrate sync service with Vite's buildStart/buildEnd hooks
388
640
  // The sync service will be called when metadata changes are detected
389
- // Handle keyboard shortcuts
390
- if (interactive && process.stdin.isTTY && process.stdout.isTTY) {
641
+ // Handle keyboard shortcuts - only register listener once
642
+ if (interactive &&
643
+ process.stdin.isTTY &&
644
+ process.stdout.isTTY &&
645
+ !stdinListenerRegistered) {
646
+ stdinListenerRegistered = true;
391
647
  process.stdin.setRawMode(true);
392
648
  process.stdin.resume();
393
649
  process.stdin.setEncoding('utf8');
@@ -399,9 +655,10 @@ export const command = createCommand({
399
655
  };
400
656
  process.stdin.on('data', (data) => {
401
657
  const key = data.toString();
402
- // Handle Ctrl+C
658
+ // Handle Ctrl+C - send SIGINT to trigger graceful shutdown
403
659
  if (key === '\u0003') {
404
- internalExit(0);
660
+ process.kill(process.pid, 'SIGINT');
661
+ return;
405
662
  }
406
663
  switch (key) {
407
664
  case 'h':
@@ -417,7 +674,7 @@ export const command = createCommand({
417
674
  });
418
675
  break;
419
676
  case 'q':
420
- internalExit(0);
677
+ void cleanup(true, 0);
421
678
  break;
422
679
  default:
423
680
  process.stdout.write(data);
@@ -439,19 +696,8 @@ export const command = createCommand({
439
696
  });
440
697
  // Restart triggered - cleanup and loop (Vite stays running)
441
698
  logger.debug('Restarting backend server...');
442
- // Kill gravity client (if running)
443
- if (gravityProcess) {
444
- try {
445
- gravityProcess.kill('SIGTERM');
446
- await new Promise((resolve) => setTimeout(resolve, 100));
447
- if (gravityProcess.exitCode === null) {
448
- gravityProcess.kill('SIGKILL');
449
- }
450
- }
451
- catch (err) {
452
- logger.debug('Error killing gravity process during restart: %s', err);
453
- }
454
- }
699
+ // Clean up Bun server and Gravity (Vite stays running)
700
+ await cleanupForRestart();
455
701
  // Brief pause before restart
456
702
  await new Promise((resolve) => setTimeout(resolve, 500));
457
703
  }
@@ -459,18 +705,9 @@ export const command = createCommand({
459
705
  tui.error(`Error during server operation: ${error}`);
460
706
  tui.warn('Waiting for file changes to retry...');
461
707
  // Cleanup on error (Vite stays running)
462
- if (gravityProcess) {
463
- try {
464
- gravityProcess.kill('SIGTERM');
465
- await new Promise((resolve) => setTimeout(resolve, 100));
466
- if (gravityProcess.exitCode === null) {
467
- gravityProcess.kill('SIGKILL');
468
- }
469
- }
470
- catch (err) {
471
- logger.debug('Error killing gravity process on error: %s', err);
472
- }
473
- }
708
+ await cleanupForRestart();
709
+ // Resume file watcher to detect changes for retry
710
+ fileWatcher.resume();
474
711
  // Wait for next restart trigger
475
712
  await new Promise((resolve) => {
476
713
  const checkRestart = setInterval(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/dev/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/dev/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Logger } from '@agentuity/core';
2
+ interface SkillsCheckResult {
3
+ needsRegeneration: boolean;
4
+ reason?: 'missing' | 'outdated' | 'version-missing';
5
+ currentVersion?: string;
6
+ }
7
+ export declare function checkSkillsVersion(projectDir: string, cliVersion: string): Promise<SkillsCheckResult>;
8
+ export declare function regenerateSkillsAsync(projectDir: string, cliVersion: string, logger: Logger): Promise<void>;
9
+ export {};
10
+ //# sourceMappingURL=skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../../src/cmd/dev/skills.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAK9C,UAAU,iBAAiB;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,iBAAiB,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,kBAAkB,CACvC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CA+Bf"}