@stigmer/cli 3.0.8

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 (1049) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +42 -0
  3. package/auth/auth0.d.ts +19 -0
  4. package/auth/auth0.d.ts.map +1 -0
  5. package/auth/auth0.js +39 -0
  6. package/auth/auth0.js.map +1 -0
  7. package/auth/callback-server.d.ts +18 -0
  8. package/auth/callback-server.d.ts.map +1 -0
  9. package/auth/callback-server.js +77 -0
  10. package/auth/callback-server.js.map +1 -0
  11. package/auth/index.d.ts +5 -0
  12. package/auth/index.d.ts.map +1 -0
  13. package/auth/index.js +6 -0
  14. package/auth/index.js.map +1 -0
  15. package/auth/login.d.ts +2 -0
  16. package/auth/login.d.ts.map +1 -0
  17. package/auth/login.js +56 -0
  18. package/auth/login.js.map +1 -0
  19. package/auth/pages.d.ts +7 -0
  20. package/auth/pages.d.ts.map +1 -0
  21. package/auth/pages.js +21 -0
  22. package/auth/pages.js.map +1 -0
  23. package/auth/pkce.d.ts +7 -0
  24. package/auth/pkce.d.ts.map +1 -0
  25. package/auth/pkce.js +22 -0
  26. package/auth/pkce.js.map +1 -0
  27. package/auth/token.d.ts +33 -0
  28. package/auth/token.d.ts.map +1 -0
  29. package/auth/token.js +111 -0
  30. package/auth/token.js.map +1 -0
  31. package/backend.d.ts +5 -0
  32. package/backend.d.ts.map +1 -0
  33. package/backend.js +14 -0
  34. package/backend.js.map +1 -0
  35. package/cli/stigmer.d.ts +3 -0
  36. package/cli/stigmer.d.ts.map +1 -0
  37. package/cli/stigmer.js +14 -0
  38. package/cli/stigmer.js.map +1 -0
  39. package/client/client.d.ts +25 -0
  40. package/client/client.d.ts.map +1 -0
  41. package/client/client.js +55 -0
  42. package/client/client.js.map +1 -0
  43. package/client/index.d.ts +2 -0
  44. package/client/index.d.ts.map +1 -0
  45. package/client/index.js +3 -0
  46. package/client/index.js.map +1 -0
  47. package/commands/agent-exec-flags.d.ts +30 -0
  48. package/commands/agent-exec-flags.d.ts.map +1 -0
  49. package/commands/agent-exec-flags.js +52 -0
  50. package/commands/agent-exec-flags.js.map +1 -0
  51. package/commands/apikey/duration.d.ts +2 -0
  52. package/commands/apikey/duration.d.ts.map +1 -0
  53. package/commands/apikey/duration.js +30 -0
  54. package/commands/apikey/duration.js.map +1 -0
  55. package/commands/apikey/index.d.ts +3 -0
  56. package/commands/apikey/index.d.ts.map +1 -0
  57. package/commands/apikey/index.js +118 -0
  58. package/commands/apikey/index.js.map +1 -0
  59. package/commands/apply.d.ts +3 -0
  60. package/commands/apply.d.ts.map +1 -0
  61. package/commands/apply.js +155 -0
  62. package/commands/apply.js.map +1 -0
  63. package/commands/auth/index.d.ts +3 -0
  64. package/commands/auth/index.d.ts.map +1 -0
  65. package/commands/auth/index.js +76 -0
  66. package/commands/auth/index.js.map +1 -0
  67. package/commands/completion.d.ts +3 -0
  68. package/commands/completion.d.ts.map +1 -0
  69. package/commands/completion.js +82 -0
  70. package/commands/completion.js.map +1 -0
  71. package/commands/config/backend.d.ts +3 -0
  72. package/commands/config/backend.d.ts.map +1 -0
  73. package/commands/config/backend.js +49 -0
  74. package/commands/config/backend.js.map +1 -0
  75. package/commands/config/context.d.ts +3 -0
  76. package/commands/config/context.d.ts.map +1 -0
  77. package/commands/config/context.js +23 -0
  78. package/commands/config/context.js.map +1 -0
  79. package/commands/config/index.d.ts +3 -0
  80. package/commands/config/index.d.ts.map +1 -0
  81. package/commands/config/index.js +13 -0
  82. package/commands/config/index.js.map +1 -0
  83. package/commands/config/kv.d.ts +3 -0
  84. package/commands/config/kv.d.ts.map +1 -0
  85. package/commands/config/kv.js +39 -0
  86. package/commands/config/kv.js.map +1 -0
  87. package/commands/connect.d.ts +3 -0
  88. package/commands/connect.d.ts.map +1 -0
  89. package/commands/connect.js +56 -0
  90. package/commands/connect.js.map +1 -0
  91. package/commands/delete.d.ts +3 -0
  92. package/commands/delete.d.ts.map +1 -0
  93. package/commands/delete.js +41 -0
  94. package/commands/delete.js.map +1 -0
  95. package/commands/diff.d.ts +3 -0
  96. package/commands/diff.d.ts.map +1 -0
  97. package/commands/diff.js +87 -0
  98. package/commands/diff.js.map +1 -0
  99. package/commands/down.d.ts +3 -0
  100. package/commands/down.d.ts.map +1 -0
  101. package/commands/down.js +23 -0
  102. package/commands/down.js.map +1 -0
  103. package/commands/download.d.ts +3 -0
  104. package/commands/download.d.ts.map +1 -0
  105. package/commands/download.js +46 -0
  106. package/commands/download.js.map +1 -0
  107. package/commands/draft.d.ts +3 -0
  108. package/commands/draft.d.ts.map +1 -0
  109. package/commands/draft.js +97 -0
  110. package/commands/draft.js.map +1 -0
  111. package/commands/execution/approve.d.ts +3 -0
  112. package/commands/execution/approve.d.ts.map +1 -0
  113. package/commands/execution/approve.js +60 -0
  114. package/commands/execution/approve.js.map +1 -0
  115. package/commands/execution/control.d.ts +3 -0
  116. package/commands/execution/control.d.ts.map +1 -0
  117. package/commands/execution/control.js +57 -0
  118. package/commands/execution/control.js.map +1 -0
  119. package/commands/execution/index.d.ts +3 -0
  120. package/commands/execution/index.d.ts.map +1 -0
  121. package/commands/execution/index.js +21 -0
  122. package/commands/execution/index.js.map +1 -0
  123. package/commands/execution/logs.d.ts +3 -0
  124. package/commands/execution/logs.d.ts.map +1 -0
  125. package/commands/execution/logs.js +34 -0
  126. package/commands/execution/logs.js.map +1 -0
  127. package/commands/execution/trace.d.ts +3 -0
  128. package/commands/execution/trace.d.ts.map +1 -0
  129. package/commands/execution/trace.js +24 -0
  130. package/commands/execution/trace.js.map +1 -0
  131. package/commands/get.d.ts +3 -0
  132. package/commands/get.d.ts.map +1 -0
  133. package/commands/get.js +81 -0
  134. package/commands/get.js.map +1 -0
  135. package/commands/internal-daemon.d.ts +3 -0
  136. package/commands/internal-daemon.d.ts.map +1 -0
  137. package/commands/internal-daemon.js +22 -0
  138. package/commands/internal-daemon.js.map +1 -0
  139. package/commands/list.d.ts +3 -0
  140. package/commands/list.d.ts.map +1 -0
  141. package/commands/list.js +117 -0
  142. package/commands/list.js.map +1 -0
  143. package/commands/logs.d.ts +3 -0
  144. package/commands/logs.d.ts.map +1 -0
  145. package/commands/logs.js +59 -0
  146. package/commands/logs.js.map +1 -0
  147. package/commands/mcp-server.d.ts +22 -0
  148. package/commands/mcp-server.d.ts.map +1 -0
  149. package/commands/mcp-server.js +104 -0
  150. package/commands/mcp-server.js.map +1 -0
  151. package/commands/push.d.ts +3 -0
  152. package/commands/push.d.ts.map +1 -0
  153. package/commands/push.js +150 -0
  154. package/commands/push.js.map +1 -0
  155. package/commands/reset.d.ts +3 -0
  156. package/commands/reset.d.ts.map +1 -0
  157. package/commands/reset.js +45 -0
  158. package/commands/reset.js.map +1 -0
  159. package/commands/resume.d.ts +3 -0
  160. package/commands/resume.d.ts.map +1 -0
  161. package/commands/resume.js +87 -0
  162. package/commands/resume.js.map +1 -0
  163. package/commands/run.d.ts +3 -0
  164. package/commands/run.d.ts.map +1 -0
  165. package/commands/run.js +193 -0
  166. package/commands/run.js.map +1 -0
  167. package/commands/search.d.ts +3 -0
  168. package/commands/search.d.ts.map +1 -0
  169. package/commands/search.js +73 -0
  170. package/commands/search.js.map +1 -0
  171. package/commands/seedpack.d.ts +3 -0
  172. package/commands/seedpack.d.ts.map +1 -0
  173. package/commands/seedpack.js +76 -0
  174. package/commands/seedpack.js.map +1 -0
  175. package/commands/setup.d.ts +3 -0
  176. package/commands/setup.d.ts.map +1 -0
  177. package/commands/setup.js +57 -0
  178. package/commands/setup.js.map +1 -0
  179. package/commands/shared.d.ts +15 -0
  180. package/commands/shared.d.ts.map +1 -0
  181. package/commands/shared.js +34 -0
  182. package/commands/shared.js.map +1 -0
  183. package/commands/status.d.ts +3 -0
  184. package/commands/status.d.ts.map +1 -0
  185. package/commands/status.js +18 -0
  186. package/commands/status.js.map +1 -0
  187. package/commands/tag.d.ts +3 -0
  188. package/commands/tag.d.ts.map +1 -0
  189. package/commands/tag.js +24 -0
  190. package/commands/tag.js.map +1 -0
  191. package/commands/up.d.ts +3 -0
  192. package/commands/up.d.ts.map +1 -0
  193. package/commands/up.js +39 -0
  194. package/commands/up.js.map +1 -0
  195. package/commands/usage.d.ts +3 -0
  196. package/commands/usage.d.ts.map +1 -0
  197. package/commands/usage.js +56 -0
  198. package/commands/usage.js.map +1 -0
  199. package/commands/validate.d.ts +3 -0
  200. package/commands/validate.d.ts.map +1 -0
  201. package/commands/validate.js +64 -0
  202. package/commands/validate.js.map +1 -0
  203. package/commands/version.d.ts +3 -0
  204. package/commands/version.d.ts.map +1 -0
  205. package/commands/version.js +11 -0
  206. package/commands/version.js.map +1 -0
  207. package/config/config.d.ts +39 -0
  208. package/config/config.d.ts.map +1 -0
  209. package/config/config.js +85 -0
  210. package/config/config.js.map +1 -0
  211. package/config/index.d.ts +5 -0
  212. package/config/index.d.ts.map +1 -0
  213. package/config/index.js +6 -0
  214. package/config/index.js.map +1 -0
  215. package/config/keys.d.ts +6 -0
  216. package/config/keys.d.ts.map +1 -0
  217. package/config/keys.js +53 -0
  218. package/config/keys.js.map +1 -0
  219. package/config/paths.d.ts +10 -0
  220. package/config/paths.d.ts.map +1 -0
  221. package/config/paths.js +21 -0
  222. package/config/paths.js.map +1 -0
  223. package/config/resolve.d.ts +33 -0
  224. package/config/resolve.d.ts.map +1 -0
  225. package/config/resolve.js +77 -0
  226. package/config/resolve.js.map +1 -0
  227. package/errors/classify.d.ts +17 -0
  228. package/errors/classify.d.ts.map +1 -0
  229. package/errors/classify.js +158 -0
  230. package/errors/classify.js.map +1 -0
  231. package/errors/cli-exit-error.d.ts +6 -0
  232. package/errors/cli-exit-error.d.ts.map +1 -0
  233. package/errors/cli-exit-error.js +15 -0
  234. package/errors/cli-exit-error.js.map +1 -0
  235. package/errors/exit-codes.d.ts +10 -0
  236. package/errors/exit-codes.d.ts.map +1 -0
  237. package/errors/exit-codes.js +12 -0
  238. package/errors/exit-codes.js.map +1 -0
  239. package/errors/handle.d.ts +14 -0
  240. package/errors/handle.d.ts.map +1 -0
  241. package/errors/handle.js +46 -0
  242. package/errors/handle.js.map +1 -0
  243. package/errors/index.d.ts +6 -0
  244. package/errors/index.d.ts.map +1 -0
  245. package/errors/index.js +7 -0
  246. package/errors/index.js.map +1 -0
  247. package/errors/usage-error.d.ts +5 -0
  248. package/errors/usage-error.d.ts.map +1 -0
  249. package/errors/usage-error.js +13 -0
  250. package/errors/usage-error.js.map +1 -0
  251. package/index.d.ts +3 -0
  252. package/index.d.ts.map +1 -0
  253. package/index.js +8 -0
  254. package/index.js.map +1 -0
  255. package/local/artifact.d.ts +38 -0
  256. package/local/artifact.d.ts.map +1 -0
  257. package/local/artifact.js +133 -0
  258. package/local/artifact.js.map +1 -0
  259. package/local/constants.d.ts +36 -0
  260. package/local/constants.d.ts.map +1 -0
  261. package/local/constants.js +44 -0
  262. package/local/constants.js.map +1 -0
  263. package/local/daemon/components.d.ts +20 -0
  264. package/local/daemon/components.d.ts.map +1 -0
  265. package/local/daemon/components.js +105 -0
  266. package/local/daemon/components.js.map +1 -0
  267. package/local/daemon/env.d.ts +55 -0
  268. package/local/daemon/env.d.ts.map +1 -0
  269. package/local/daemon/env.js +82 -0
  270. package/local/daemon/env.js.map +1 -0
  271. package/local/daemon/host.d.ts +7 -0
  272. package/local/daemon/host.d.ts.map +1 -0
  273. package/local/daemon/host.js +74 -0
  274. package/local/daemon/host.js.map +1 -0
  275. package/local/daemon/index.d.ts +8 -0
  276. package/local/daemon/index.d.ts.map +1 -0
  277. package/local/daemon/index.js +8 -0
  278. package/local/daemon/index.js.map +1 -0
  279. package/local/daemon/launch.d.ts +11 -0
  280. package/local/daemon/launch.d.ts.map +1 -0
  281. package/local/daemon/launch.js +219 -0
  282. package/local/daemon/launch.js.map +1 -0
  283. package/local/daemon/process.d.ts +28 -0
  284. package/local/daemon/process.d.ts.map +1 -0
  285. package/local/daemon/process.js +149 -0
  286. package/local/daemon/process.js.map +1 -0
  287. package/local/daemon/supervisor.d.ts +56 -0
  288. package/local/daemon/supervisor.d.ts.map +1 -0
  289. package/local/daemon/supervisor.js +211 -0
  290. package/local/daemon/supervisor.js.map +1 -0
  291. package/local/daemon/types.d.ts +63 -0
  292. package/local/daemon/types.d.ts.map +1 -0
  293. package/local/daemon/types.js +9 -0
  294. package/local/daemon/types.js.map +1 -0
  295. package/local/llm-config.d.ts +30 -0
  296. package/local/llm-config.d.ts.map +1 -0
  297. package/local/llm-config.js +93 -0
  298. package/local/llm-config.js.map +1 -0
  299. package/local/logs/tail.d.ts +19 -0
  300. package/local/logs/tail.d.ts.map +1 -0
  301. package/local/logs/tail.js +86 -0
  302. package/local/logs/tail.js.map +1 -0
  303. package/local/logs/view.d.ts +20 -0
  304. package/local/logs/view.d.ts.map +1 -0
  305. package/local/logs/view.js +50 -0
  306. package/local/logs/view.js.map +1 -0
  307. package/local/net/tcp.d.ts +23 -0
  308. package/local/net/tcp.d.ts.map +1 -0
  309. package/local/net/tcp.js +47 -0
  310. package/local/net/tcp.js.map +1 -0
  311. package/local/paths.d.ts +26 -0
  312. package/local/paths.d.ts.map +1 -0
  313. package/local/paths.js +57 -0
  314. package/local/paths.js.map +1 -0
  315. package/local/reset.d.ts +14 -0
  316. package/local/reset.d.ts.map +1 -0
  317. package/local/reset.js +57 -0
  318. package/local/reset.js.map +1 -0
  319. package/local/runtime/index.d.ts +5 -0
  320. package/local/runtime/index.d.ts.map +1 -0
  321. package/local/runtime/index.js +6 -0
  322. package/local/runtime/index.js.map +1 -0
  323. package/local/runtime/node.d.ts +8 -0
  324. package/local/runtime/node.d.ts.map +1 -0
  325. package/local/runtime/node.js +59 -0
  326. package/local/runtime/node.js.map +1 -0
  327. package/local/runtime/runner.d.ts +40 -0
  328. package/local/runtime/runner.d.ts.map +1 -0
  329. package/local/runtime/runner.js +154 -0
  330. package/local/runtime/runner.js.map +1 -0
  331. package/local/runtime/server.d.ts +39 -0
  332. package/local/runtime/server.d.ts.map +1 -0
  333. package/local/runtime/server.js +141 -0
  334. package/local/runtime/server.js.map +1 -0
  335. package/local/runtime/which.d.ts +3 -0
  336. package/local/runtime/which.d.ts.map +1 -0
  337. package/local/runtime/which.js +30 -0
  338. package/local/runtime/which.js.map +1 -0
  339. package/local/seedpack/apply.d.ts +43 -0
  340. package/local/seedpack/apply.d.ts.map +1 -0
  341. package/local/seedpack/apply.js +94 -0
  342. package/local/seedpack/apply.js.map +1 -0
  343. package/local/seedpack/content.d.ts +56 -0
  344. package/local/seedpack/content.d.ts.map +1 -0
  345. package/local/seedpack/content.js +201 -0
  346. package/local/seedpack/content.js.map +1 -0
  347. package/local/setup/prompt.d.ts +8 -0
  348. package/local/setup/prompt.d.ts.map +1 -0
  349. package/local/setup/prompt.js +63 -0
  350. package/local/setup/prompt.js.map +1 -0
  351. package/local/setup/wizard.d.ts +22 -0
  352. package/local/setup/wizard.d.ts.map +1 -0
  353. package/local/setup/wizard.js +65 -0
  354. package/local/setup/wizard.js.map +1 -0
  355. package/local/state/health-state.d.ts +26 -0
  356. package/local/state/health-state.d.ts.map +1 -0
  357. package/local/state/health-state.js +34 -0
  358. package/local/state/health-state.js.map +1 -0
  359. package/local/state/index.d.ts +7 -0
  360. package/local/state/index.d.ts.map +1 -0
  361. package/local/state/index.js +8 -0
  362. package/local/state/index.js.map +1 -0
  363. package/local/state/lock.d.ts +12 -0
  364. package/local/state/lock.d.ts.map +1 -0
  365. package/local/state/lock.js +70 -0
  366. package/local/state/lock.js.map +1 -0
  367. package/local/state/log-rotation.d.ts +17 -0
  368. package/local/state/log-rotation.d.ts.map +1 -0
  369. package/local/state/log-rotation.js +101 -0
  370. package/local/state/log-rotation.js.map +1 -0
  371. package/local/state/pidfile.d.ts +11 -0
  372. package/local/state/pidfile.d.ts.map +1 -0
  373. package/local/state/pidfile.js +35 -0
  374. package/local/state/pidfile.js.map +1 -0
  375. package/local/state/proc.d.ts +16 -0
  376. package/local/state/proc.d.ts.map +1 -0
  377. package/local/state/proc.js +69 -0
  378. package/local/state/proc.js.map +1 -0
  379. package/local/state/startup-config.d.ts +23 -0
  380. package/local/state/startup-config.d.ts.map +1 -0
  381. package/local/state/startup-config.js +33 -0
  382. package/local/state/startup-config.js.map +1 -0
  383. package/local/status.d.ts +9 -0
  384. package/local/status.d.ts.map +1 -0
  385. package/local/status.js +168 -0
  386. package/local/status.js.map +1 -0
  387. package/local/temporal/download.d.ts +20 -0
  388. package/local/temporal/download.d.ts.map +1 -0
  389. package/local/temporal/download.js +36 -0
  390. package/local/temporal/download.js.map +1 -0
  391. package/local/temporal/index.d.ts +5 -0
  392. package/local/temporal/index.d.ts.map +1 -0
  393. package/local/temporal/index.js +6 -0
  394. package/local/temporal/index.js.map +1 -0
  395. package/local/temporal/inspect.d.ts +8 -0
  396. package/local/temporal/inspect.d.ts.map +1 -0
  397. package/local/temporal/inspect.js +33 -0
  398. package/local/temporal/inspect.js.map +1 -0
  399. package/local/temporal/manager.d.ts +50 -0
  400. package/local/temporal/manager.d.ts.map +1 -0
  401. package/local/temporal/manager.js +208 -0
  402. package/local/temporal/manager.js.map +1 -0
  403. package/local/temporal/supervisor.d.ts +34 -0
  404. package/local/temporal/supervisor.d.ts.map +1 -0
  405. package/local/temporal/supervisor.js +83 -0
  406. package/local/temporal/supervisor.js.map +1 -0
  407. package/local/webconsole/index.d.ts +4 -0
  408. package/local/webconsole/index.d.ts.map +1 -0
  409. package/local/webconsole/index.js +13 -0
  410. package/local/webconsole/index.js.map +1 -0
  411. package/logger.d.ts +13 -0
  412. package/logger.d.ts.map +1 -0
  413. package/logger.js +35 -0
  414. package/logger.js.map +1 -0
  415. package/output/command-result.d.ts +47 -0
  416. package/output/command-result.d.ts.map +1 -0
  417. package/output/command-result.js +134 -0
  418. package/output/command-result.js.map +1 -0
  419. package/output/confirm.d.ts +22 -0
  420. package/output/confirm.d.ts.map +1 -0
  421. package/output/confirm.js +42 -0
  422. package/output/confirm.js.map +1 -0
  423. package/output/format.d.ts +22 -0
  424. package/output/format.d.ts.map +1 -0
  425. package/output/format.js +72 -0
  426. package/output/format.js.map +1 -0
  427. package/output/index.d.ts +7 -0
  428. package/output/index.d.ts.map +1 -0
  429. package/output/index.js +8 -0
  430. package/output/index.js.map +1 -0
  431. package/output/ndjson.d.ts +24 -0
  432. package/output/ndjson.d.ts.map +1 -0
  433. package/output/ndjson.js +38 -0
  434. package/output/ndjson.js.map +1 -0
  435. package/output/proto.d.ts +12 -0
  436. package/output/proto.d.ts.map +1 -0
  437. package/output/proto.js +34 -0
  438. package/output/proto.js.map +1 -0
  439. package/output/style.d.ts +19 -0
  440. package/output/style.d.ts.map +1 -0
  441. package/output/style.js +44 -0
  442. package/output/style.js.map +1 -0
  443. package/output/table.d.ts +5 -0
  444. package/output/table.d.ts.map +1 -0
  445. package/output/table.js +43 -0
  446. package/output/table.js.map +1 -0
  447. package/package.json +49 -0
  448. package/program.d.ts +3 -0
  449. package/program.d.ts.map +1 -0
  450. package/program.js +95 -0
  451. package/program.js.map +1 -0
  452. package/registry/aliases.d.ts +18 -0
  453. package/registry/aliases.d.ts.map +1 -0
  454. package/registry/aliases.js +85 -0
  455. package/registry/aliases.js.map +1 -0
  456. package/registry/index.d.ts +6 -0
  457. package/registry/index.d.ts.map +1 -0
  458. package/registry/index.js +7 -0
  459. package/registry/index.js.map +1 -0
  460. package/registry/metadata.d.ts +12 -0
  461. package/registry/metadata.d.ts.map +1 -0
  462. package/registry/metadata.js +49 -0
  463. package/registry/metadata.js.map +1 -0
  464. package/registry/registry.d.ts +39 -0
  465. package/registry/registry.d.ts.map +1 -0
  466. package/registry/registry.js +59 -0
  467. package/registry/registry.js.map +1 -0
  468. package/registry/verb-support.d.ts +5 -0
  469. package/registry/verb-support.d.ts.map +1 -0
  470. package/registry/verb-support.js +48 -0
  471. package/registry/verb-support.js.map +1 -0
  472. package/registry/verbs.d.ts +16 -0
  473. package/registry/verbs.d.ts.map +1 -0
  474. package/registry/verbs.js +36 -0
  475. package/registry/verbs.js.map +1 -0
  476. package/resources/apply/apply.d.ts +55 -0
  477. package/resources/apply/apply.d.ts.map +1 -0
  478. package/resources/apply/apply.js +163 -0
  479. package/resources/apply/apply.js.map +1 -0
  480. package/resources/apply/declarative.d.ts +106 -0
  481. package/resources/apply/declarative.d.ts.map +1 -0
  482. package/resources/apply/declarative.js +378 -0
  483. package/resources/apply/declarative.js.map +1 -0
  484. package/resources/apply/discovery.d.ts +7 -0
  485. package/resources/apply/discovery.d.ts.map +1 -0
  486. package/resources/apply/discovery.js +47 -0
  487. package/resources/apply/discovery.js.map +1 -0
  488. package/resources/apply/handlers.d.ts +15 -0
  489. package/resources/apply/handlers.d.ts.map +1 -0
  490. package/resources/apply/handlers.js +126 -0
  491. package/resources/apply/handlers.js.map +1 -0
  492. package/resources/apply/synth/project-track.d.ts +21 -0
  493. package/resources/apply/synth/project-track.d.ts.map +1 -0
  494. package/resources/apply/synth/project-track.js +102 -0
  495. package/resources/apply/synth/project-track.js.map +1 -0
  496. package/resources/apply/synth/reader.d.ts +18 -0
  497. package/resources/apply/synth/reader.d.ts.map +1 -0
  498. package/resources/apply/synth/reader.js +55 -0
  499. package/resources/apply/synth/reader.js.map +1 -0
  500. package/resources/apply/synth/runtime.d.ts +8 -0
  501. package/resources/apply/synth/runtime.d.ts.map +1 -0
  502. package/resources/apply/synth/runtime.js +32 -0
  503. package/resources/apply/synth/runtime.js.map +1 -0
  504. package/resources/apply/synth/synthesize.d.ts +43 -0
  505. package/resources/apply/synth/synthesize.d.ts.map +1 -0
  506. package/resources/apply/synth/synthesize.js +115 -0
  507. package/resources/apply/synth/synthesize.js.map +1 -0
  508. package/resources/connect/connect.d.ts +24 -0
  509. package/resources/connect/connect.d.ts.map +1 -0
  510. package/resources/connect/connect.js +71 -0
  511. package/resources/connect/connect.js.map +1 -0
  512. package/resources/connect/discover.d.ts +5 -0
  513. package/resources/connect/discover.d.ts.map +1 -0
  514. package/resources/connect/discover.js +100 -0
  515. package/resources/connect/discover.js.map +1 -0
  516. package/resources/connect/display.d.ts +5 -0
  517. package/resources/connect/display.d.ts.map +1 -0
  518. package/resources/connect/display.js +58 -0
  519. package/resources/connect/display.js.map +1 -0
  520. package/resources/connect/oauth.d.ts +45 -0
  521. package/resources/connect/oauth.d.ts.map +1 -0
  522. package/resources/connect/oauth.js +152 -0
  523. package/resources/connect/oauth.js.map +1 -0
  524. package/resources/delete.d.ts +18 -0
  525. package/resources/delete.d.ts.map +1 -0
  526. package/resources/delete.js +180 -0
  527. package/resources/delete.js.map +1 -0
  528. package/resources/diff.d.ts +16 -0
  529. package/resources/diff.d.ts.map +1 -0
  530. package/resources/diff.js +158 -0
  531. package/resources/diff.js.map +1 -0
  532. package/resources/documents.d.ts +16 -0
  533. package/resources/documents.d.ts.map +1 -0
  534. package/resources/documents.js +89 -0
  535. package/resources/documents.js.map +1 -0
  536. package/resources/download.d.ts +16 -0
  537. package/resources/download.d.ts.map +1 -0
  538. package/resources/download.js +107 -0
  539. package/resources/download.js.map +1 -0
  540. package/resources/execution-approve.d.ts +26 -0
  541. package/resources/execution-approve.d.ts.map +1 -0
  542. package/resources/execution-approve.js +69 -0
  543. package/resources/execution-approve.js.map +1 -0
  544. package/resources/execution-control.d.ts +16 -0
  545. package/resources/execution-control.d.ts.map +1 -0
  546. package/resources/execution-control.js +57 -0
  547. package/resources/execution-control.js.map +1 -0
  548. package/resources/execution-format.d.ts +12 -0
  549. package/resources/execution-format.d.ts.map +1 -0
  550. package/resources/execution-format.js +56 -0
  551. package/resources/execution-format.js.map +1 -0
  552. package/resources/execution-logs.d.ts +16 -0
  553. package/resources/execution-logs.d.ts.map +1 -0
  554. package/resources/execution-logs.js +132 -0
  555. package/resources/execution-logs.js.map +1 -0
  556. package/resources/execution-trace.d.ts +10 -0
  557. package/resources/execution-trace.d.ts.map +1 -0
  558. package/resources/execution-trace.js +125 -0
  559. package/resources/execution-trace.js.map +1 -0
  560. package/resources/execution.d.ts +59 -0
  561. package/resources/execution.d.ts.map +1 -0
  562. package/resources/execution.js +192 -0
  563. package/resources/execution.js.map +1 -0
  564. package/resources/get-bindings.d.ts +12 -0
  565. package/resources/get-bindings.d.ts.map +1 -0
  566. package/resources/get-bindings.js +40 -0
  567. package/resources/get-bindings.js.map +1 -0
  568. package/resources/get.d.ts +6 -0
  569. package/resources/get.d.ts.map +1 -0
  570. package/resources/get.js +31 -0
  571. package/resources/get.js.map +1 -0
  572. package/resources/git.d.ts +15 -0
  573. package/resources/git.d.ts.map +1 -0
  574. package/resources/git.js +69 -0
  575. package/resources/git.js.map +1 -0
  576. package/resources/ignore/defaults.d.ts +2 -0
  577. package/resources/ignore/defaults.d.ts.map +1 -0
  578. package/resources/ignore/defaults.js +140 -0
  579. package/resources/ignore/defaults.js.map +1 -0
  580. package/resources/ignore/index.d.ts +5 -0
  581. package/resources/ignore/index.d.ts.map +1 -0
  582. package/resources/ignore/index.js +6 -0
  583. package/resources/ignore/index.js.map +1 -0
  584. package/resources/ignore/match.d.ts +3 -0
  585. package/resources/ignore/match.d.ts.map +1 -0
  586. package/resources/ignore/match.js +166 -0
  587. package/resources/ignore/match.js.map +1 -0
  588. package/resources/ignore/matcher.d.ts +44 -0
  589. package/resources/ignore/matcher.d.ts.map +1 -0
  590. package/resources/ignore/matcher.js +125 -0
  591. package/resources/ignore/matcher.js.map +1 -0
  592. package/resources/ignore/pattern.d.ts +13 -0
  593. package/resources/ignore/pattern.d.ts.map +1 -0
  594. package/resources/ignore/pattern.js +118 -0
  595. package/resources/ignore/pattern.js.map +1 -0
  596. package/resources/list.d.ts +7 -0
  597. package/resources/list.d.ts.map +1 -0
  598. package/resources/list.js +82 -0
  599. package/resources/list.js.map +1 -0
  600. package/resources/mcp/runtime-env.d.ts +23 -0
  601. package/resources/mcp/runtime-env.d.ts.map +1 -0
  602. package/resources/mcp/runtime-env.js +68 -0
  603. package/resources/mcp/runtime-env.js.map +1 -0
  604. package/resources/picker/ink.d.ts +35 -0
  605. package/resources/picker/ink.d.ts.map +1 -0
  606. package/resources/picker/ink.js +45 -0
  607. package/resources/picker/ink.js.map +1 -0
  608. package/resources/picker/tty.d.ts +19 -0
  609. package/resources/picker/tty.d.ts.map +1 -0
  610. package/resources/picker/tty.js +21 -0
  611. package/resources/picker/tty.js.map +1 -0
  612. package/resources/reference.d.ts +32 -0
  613. package/resources/reference.d.ts.map +1 -0
  614. package/resources/reference.js +128 -0
  615. package/resources/reference.js.map +1 -0
  616. package/resources/render.d.ts +28 -0
  617. package/resources/render.d.ts.map +1 -0
  618. package/resources/render.js +87 -0
  619. package/resources/render.js.map +1 -0
  620. package/resources/run/agent-exec.d.ts +15 -0
  621. package/resources/run/agent-exec.d.ts.map +1 -0
  622. package/resources/run/agent-exec.js +81 -0
  623. package/resources/run/agent-exec.js.map +1 -0
  624. package/resources/run/attachments.d.ts +24 -0
  625. package/resources/run/attachments.d.ts.map +1 -0
  626. package/resources/run/attachments.js +209 -0
  627. package/resources/run/attachments.js.map +1 -0
  628. package/resources/run/create.d.ts +56 -0
  629. package/resources/run/create.d.ts.map +1 -0
  630. package/resources/run/create.js +105 -0
  631. package/resources/run/create.js.map +1 -0
  632. package/resources/run/env.d.ts +18 -0
  633. package/resources/run/env.d.ts.map +1 -0
  634. package/resources/run/env.js +147 -0
  635. package/resources/run/env.js.map +1 -0
  636. package/resources/run/epilogue.d.ts +9 -0
  637. package/resources/run/epilogue.d.ts.map +1 -0
  638. package/resources/run/epilogue.js +144 -0
  639. package/resources/run/epilogue.js.map +1 -0
  640. package/resources/run/header.d.ts +23 -0
  641. package/resources/run/header.d.ts.map +1 -0
  642. package/resources/run/header.js +51 -0
  643. package/resources/run/header.js.map +1 -0
  644. package/resources/run/prepare.d.ts +60 -0
  645. package/resources/run/prepare.d.ts.map +1 -0
  646. package/resources/run/prepare.js +78 -0
  647. package/resources/run/prepare.js.map +1 -0
  648. package/resources/run/resolve.d.ts +8 -0
  649. package/resources/run/resolve.d.ts.map +1 -0
  650. package/resources/run/resolve.js +28 -0
  651. package/resources/run/resolve.js.map +1 -0
  652. package/resources/run/resume.d.ts +13 -0
  653. package/resources/run/resume.d.ts.map +1 -0
  654. package/resources/run/resume.js +94 -0
  655. package/resources/run/resume.js.map +1 -0
  656. package/resources/run/stream.d.ts +24 -0
  657. package/resources/run/stream.d.ts.map +1 -0
  658. package/resources/run/stream.js +80 -0
  659. package/resources/run/stream.js.map +1 -0
  660. package/resources/run/workflow-stream.d.ts +25 -0
  661. package/resources/run/workflow-stream.d.ts.map +1 -0
  662. package/resources/run/workflow-stream.js +152 -0
  663. package/resources/run/workflow-stream.js.map +1 -0
  664. package/resources/run/workspace.d.ts +17 -0
  665. package/resources/run/workspace.d.ts.map +1 -0
  666. package/resources/run/workspace.js +147 -0
  667. package/resources/run/workspace.js.map +1 -0
  668. package/resources/search.d.ts +22 -0
  669. package/resources/search.d.ts.map +1 -0
  670. package/resources/search.js +23 -0
  671. package/resources/search.js.map +1 -0
  672. package/resources/session.d.ts +19 -0
  673. package/resources/session.d.ts.map +1 -0
  674. package/resources/session.js +51 -0
  675. package/resources/session.js.map +1 -0
  676. package/resources/skill.d.ts +84 -0
  677. package/resources/skill.d.ts.map +1 -0
  678. package/resources/skill.js +342 -0
  679. package/resources/skill.js.map +1 -0
  680. package/resources/stream/approval-detect.d.ts +38 -0
  681. package/resources/stream/approval-detect.d.ts.map +1 -0
  682. package/resources/stream/approval-detect.js +93 -0
  683. package/resources/stream/approval-detect.js.map +1 -0
  684. package/resources/stream/convert.d.ts +38 -0
  685. package/resources/stream/convert.d.ts.map +1 -0
  686. package/resources/stream/convert.js +178 -0
  687. package/resources/stream/convert.js.map +1 -0
  688. package/resources/stream/diff.d.ts +29 -0
  689. package/resources/stream/diff.d.ts.map +1 -0
  690. package/resources/stream/diff.js +214 -0
  691. package/resources/stream/diff.js.map +1 -0
  692. package/resources/stream/events.d.ts +137 -0
  693. package/resources/stream/events.d.ts.map +1 -0
  694. package/resources/stream/events.js +15 -0
  695. package/resources/stream/events.js.map +1 -0
  696. package/resources/stream/headless.d.ts +38 -0
  697. package/resources/stream/headless.d.ts.map +1 -0
  698. package/resources/stream/headless.js +75 -0
  699. package/resources/stream/headless.js.map +1 -0
  700. package/resources/stream/ink.d.ts +22 -0
  701. package/resources/stream/ink.d.ts.map +1 -0
  702. package/resources/stream/ink.js +24 -0
  703. package/resources/stream/ink.js.map +1 -0
  704. package/resources/stream/render-ndjson.d.ts +25 -0
  705. package/resources/stream/render-ndjson.d.ts.map +1 -0
  706. package/resources/stream/render-ndjson.js +156 -0
  707. package/resources/stream/render-ndjson.js.map +1 -0
  708. package/resources/stream/render-plaintext.d.ts +18 -0
  709. package/resources/stream/render-plaintext.d.ts.map +1 -0
  710. package/resources/stream/render-plaintext.js +71 -0
  711. package/resources/stream/render-plaintext.js.map +1 -0
  712. package/resources/stream/snapshot.d.ts +8 -0
  713. package/resources/stream/snapshot.d.ts.map +1 -0
  714. package/resources/stream/snapshot.js +163 -0
  715. package/resources/stream/snapshot.js.map +1 -0
  716. package/resources/stream/subagent.d.ts +12 -0
  717. package/resources/stream/subagent.d.ts.map +1 -0
  718. package/resources/stream/subagent.js +76 -0
  719. package/resources/stream/subagent.js.map +1 -0
  720. package/resources/stream/submit.d.ts +20 -0
  721. package/resources/stream/submit.d.ts.map +1 -0
  722. package/resources/stream/submit.js +125 -0
  723. package/resources/stream/submit.js.map +1 -0
  724. package/resources/stream/todo.d.ts +11 -0
  725. package/resources/stream/todo.d.ts.map +1 -0
  726. package/resources/stream/todo.js +44 -0
  727. package/resources/stream/todo.js.map +1 -0
  728. package/resources/stream/tool-state.d.ts +31 -0
  729. package/resources/stream/tool-state.d.ts.map +1 -0
  730. package/resources/stream/tool-state.js +126 -0
  731. package/resources/stream/tool-state.js.map +1 -0
  732. package/resources/stream/tty.d.ts +8 -0
  733. package/resources/stream/tty.d.ts.map +1 -0
  734. package/resources/stream/tty.js +15 -0
  735. package/resources/stream/tty.js.map +1 -0
  736. package/resources/stream/workflow-event-view.d.ts +21 -0
  737. package/resources/stream/workflow-event-view.d.ts.map +1 -0
  738. package/resources/stream/workflow-event-view.js +88 -0
  739. package/resources/stream/workflow-event-view.js.map +1 -0
  740. package/resources/stream/workflow-render-ndjson.d.ts +5 -0
  741. package/resources/stream/workflow-render-ndjson.d.ts.map +1 -0
  742. package/resources/stream/workflow-render-ndjson.js +54 -0
  743. package/resources/stream/workflow-render-ndjson.js.map +1 -0
  744. package/resources/stream/workflow-render-plaintext.d.ts +8 -0
  745. package/resources/stream/workflow-render-plaintext.d.ts.map +1 -0
  746. package/resources/stream/workflow-render-plaintext.js +34 -0
  747. package/resources/stream/workflow-render-plaintext.js.map +1 -0
  748. package/resources/tag.d.ts +4 -0
  749. package/resources/tag.d.ts.map +1 -0
  750. package/resources/tag.js +36 -0
  751. package/resources/tag.js.map +1 -0
  752. package/resources/usage.d.ts +14 -0
  753. package/resources/usage.d.ts.map +1 -0
  754. package/resources/usage.js +251 -0
  755. package/resources/usage.js.map +1 -0
  756. package/resources/validate.d.ts +6 -0
  757. package/resources/validate.d.ts.map +1 -0
  758. package/resources/validate.js +28 -0
  759. package/resources/validate.js.map +1 -0
  760. package/resources/version.d.ts +6 -0
  761. package/resources/version.d.ts.map +1 -0
  762. package/resources/version.js +75 -0
  763. package/resources/version.js.map +1 -0
  764. package/runtime.d.ts +5 -0
  765. package/runtime.d.ts.map +1 -0
  766. package/runtime.js +19 -0
  767. package/runtime.js.map +1 -0
  768. package/src/auth/auth0.ts +43 -0
  769. package/src/auth/callback-server.ts +104 -0
  770. package/src/auth/index.ts +6 -0
  771. package/src/auth/login.ts +61 -0
  772. package/src/auth/pages.ts +31 -0
  773. package/src/auth/pkce.test.ts +37 -0
  774. package/src/auth/pkce.ts +26 -0
  775. package/src/auth/token.test.ts +95 -0
  776. package/src/auth/token.ts +135 -0
  777. package/src/backend.ts +15 -0
  778. package/src/cli/stigmer.ts +16 -0
  779. package/src/client/client.test.ts +46 -0
  780. package/src/client/client.ts +84 -0
  781. package/src/client/index.ts +3 -0
  782. package/src/commands/agent-exec-flags.ts +75 -0
  783. package/src/commands/apikey/duration.test.ts +23 -0
  784. package/src/commands/apikey/duration.ts +35 -0
  785. package/src/commands/apikey/index.ts +133 -0
  786. package/src/commands/apply.ts +213 -0
  787. package/src/commands/auth/index.ts +87 -0
  788. package/src/commands/completion.ts +96 -0
  789. package/src/commands/config/backend.ts +58 -0
  790. package/src/commands/config/context.ts +26 -0
  791. package/src/commands/config/index.ts +18 -0
  792. package/src/commands/config/kv.ts +44 -0
  793. package/src/commands/connect.ts +75 -0
  794. package/src/commands/delete.ts +56 -0
  795. package/src/commands/diff.ts +97 -0
  796. package/src/commands/down.ts +27 -0
  797. package/src/commands/download.ts +68 -0
  798. package/src/commands/draft.ts +128 -0
  799. package/src/commands/execution/approve.ts +76 -0
  800. package/src/commands/execution/control.ts +79 -0
  801. package/src/commands/execution/index.ts +24 -0
  802. package/src/commands/execution/logs.ts +47 -0
  803. package/src/commands/execution/trace.ts +32 -0
  804. package/src/commands/get.ts +99 -0
  805. package/src/commands/internal-daemon.ts +25 -0
  806. package/src/commands/list.ts +138 -0
  807. package/src/commands/logs.ts +73 -0
  808. package/src/commands/mcp-server.test.ts +65 -0
  809. package/src/commands/mcp-server.ts +124 -0
  810. package/src/commands/push.ts +205 -0
  811. package/src/commands/reset.ts +57 -0
  812. package/src/commands/resume.ts +121 -0
  813. package/src/commands/run.ts +276 -0
  814. package/src/commands/search.ts +90 -0
  815. package/src/commands/seedpack.ts +94 -0
  816. package/src/commands/setup.ts +71 -0
  817. package/src/commands/shared.ts +41 -0
  818. package/src/commands/status.ts +20 -0
  819. package/src/commands/tag.ts +31 -0
  820. package/src/commands/up.ts +51 -0
  821. package/src/commands/usage.ts +74 -0
  822. package/src/commands/validate.test.ts +79 -0
  823. package/src/commands/validate.ts +73 -0
  824. package/src/commands/version.ts +13 -0
  825. package/src/config/config.test.ts +76 -0
  826. package/src/config/config.ts +127 -0
  827. package/src/config/index.ts +22 -0
  828. package/src/config/keys.test.ts +38 -0
  829. package/src/config/keys.ts +64 -0
  830. package/src/config/paths.ts +25 -0
  831. package/src/config/resolve.test.ts +103 -0
  832. package/src/config/resolve.ts +80 -0
  833. package/src/errors/classify.ts +199 -0
  834. package/src/errors/cli-exit-error.ts +16 -0
  835. package/src/errors/clierr.test.ts +172 -0
  836. package/src/errors/exit-codes.ts +14 -0
  837. package/src/errors/handle.ts +53 -0
  838. package/src/errors/index.ts +7 -0
  839. package/src/errors/usage-error.ts +14 -0
  840. package/src/index.ts +8 -0
  841. package/src/local/artifact.test.ts +28 -0
  842. package/src/local/artifact.ts +166 -0
  843. package/src/local/constants.ts +52 -0
  844. package/src/local/daemon/components.test.ts +80 -0
  845. package/src/local/daemon/components.ts +113 -0
  846. package/src/local/daemon/daemon.integration.test.ts +183 -0
  847. package/src/local/daemon/env.test.ts +51 -0
  848. package/src/local/daemon/env.ts +118 -0
  849. package/src/local/daemon/host.ts +79 -0
  850. package/src/local/daemon/index.ts +18 -0
  851. package/src/local/daemon/launch.ts +260 -0
  852. package/src/local/daemon/process.ts +183 -0
  853. package/src/local/daemon/supervisor.test.ts +260 -0
  854. package/src/local/daemon/supervisor.ts +249 -0
  855. package/src/local/daemon/types.ts +76 -0
  856. package/src/local/llm-config.test.ts +80 -0
  857. package/src/local/llm-config.ts +107 -0
  858. package/src/local/logs/tail.test.ts +70 -0
  859. package/src/local/logs/tail.ts +100 -0
  860. package/src/local/logs/view.test.ts +46 -0
  861. package/src/local/logs/view.ts +65 -0
  862. package/src/local/net/tcp.ts +65 -0
  863. package/src/local/paths.ts +67 -0
  864. package/src/local/reset.test.ts +53 -0
  865. package/src/local/reset.ts +90 -0
  866. package/src/local/runtime/index.ts +18 -0
  867. package/src/local/runtime/node.ts +67 -0
  868. package/src/local/runtime/runner.ts +186 -0
  869. package/src/local/runtime/runtime.test.ts +155 -0
  870. package/src/local/runtime/server.test.ts +152 -0
  871. package/src/local/runtime/server.ts +172 -0
  872. package/src/local/runtime/which.ts +30 -0
  873. package/src/local/seedpack/apply.test.ts +166 -0
  874. package/src/local/seedpack/apply.ts +139 -0
  875. package/src/local/seedpack/content.test.ts +148 -0
  876. package/src/local/seedpack/content.ts +223 -0
  877. package/src/local/setup/prompt.ts +70 -0
  878. package/src/local/setup/wizard.test.ts +42 -0
  879. package/src/local/setup/wizard.ts +78 -0
  880. package/src/local/state/health-state.ts +55 -0
  881. package/src/local/state/index.ts +8 -0
  882. package/src/local/state/lock.ts +77 -0
  883. package/src/local/state/log-rotation.ts +112 -0
  884. package/src/local/state/pidfile.ts +37 -0
  885. package/src/local/state/proc.ts +66 -0
  886. package/src/local/state/startup-config.ts +51 -0
  887. package/src/local/state/state.test.ts +166 -0
  888. package/src/local/status.test.ts +88 -0
  889. package/src/local/status.ts +186 -0
  890. package/src/local/temporal/download.test.ts +64 -0
  891. package/src/local/temporal/download.ts +54 -0
  892. package/src/local/temporal/index.ts +6 -0
  893. package/src/local/temporal/inspect.ts +32 -0
  894. package/src/local/temporal/manager.test.ts +31 -0
  895. package/src/local/temporal/manager.ts +247 -0
  896. package/src/local/temporal/supervisor.test.ts +77 -0
  897. package/src/local/temporal/supervisor.ts +97 -0
  898. package/src/local/webconsole/index.ts +13 -0
  899. package/src/logger.ts +39 -0
  900. package/src/output/command-result.test.ts +64 -0
  901. package/src/output/command-result.ts +185 -0
  902. package/src/output/confirm.test.ts +43 -0
  903. package/src/output/confirm.ts +53 -0
  904. package/src/output/format.test.ts +65 -0
  905. package/src/output/format.ts +101 -0
  906. package/src/output/index.ts +30 -0
  907. package/src/output/ndjson.ts +55 -0
  908. package/src/output/proto.test.ts +72 -0
  909. package/src/output/proto.ts +55 -0
  910. package/src/output/style.ts +57 -0
  911. package/src/output/table.test.ts +37 -0
  912. package/src/output/table.ts +52 -0
  913. package/src/program.test.ts +64 -0
  914. package/src/program.ts +100 -0
  915. package/src/registry/aliases.test.ts +99 -0
  916. package/src/registry/aliases.ts +93 -0
  917. package/src/registry/index.ts +7 -0
  918. package/src/registry/metadata.ts +60 -0
  919. package/src/registry/registry.test.ts +80 -0
  920. package/src/registry/registry.ts +101 -0
  921. package/src/registry/verb-support.ts +50 -0
  922. package/src/registry/verbs.ts +43 -0
  923. package/src/resources/apply/apply.integration.test.ts +207 -0
  924. package/src/resources/apply/apply.ts +202 -0
  925. package/src/resources/apply/declarative.integration.test.ts +126 -0
  926. package/src/resources/apply/declarative.test.ts +132 -0
  927. package/src/resources/apply/declarative.ts +474 -0
  928. package/src/resources/apply/discovery.ts +60 -0
  929. package/src/resources/apply/handlers.ts +145 -0
  930. package/src/resources/apply/synth/capstone.integration.test.ts +134 -0
  931. package/src/resources/apply/synth/project-track.integration.test.ts +194 -0
  932. package/src/resources/apply/synth/project-track.ts +126 -0
  933. package/src/resources/apply/synth/reader.test.ts +90 -0
  934. package/src/resources/apply/synth/reader.ts +68 -0
  935. package/src/resources/apply/synth/runtime.test.ts +29 -0
  936. package/src/resources/apply/synth/runtime.ts +39 -0
  937. package/src/resources/apply/synth/synthesize.test.ts +109 -0
  938. package/src/resources/apply/synth/synthesize.ts +161 -0
  939. package/src/resources/connect/__fixtures__/stdio-crash.mjs +6 -0
  940. package/src/resources/connect/__fixtures__/stdio-server.mjs +43 -0
  941. package/src/resources/connect/connect.integration.test.ts +185 -0
  942. package/src/resources/connect/connect.ts +107 -0
  943. package/src/resources/connect/discover.test.ts +45 -0
  944. package/src/resources/connect/discover.ts +125 -0
  945. package/src/resources/connect/display.ts +68 -0
  946. package/src/resources/connect/oauth.test.ts +155 -0
  947. package/src/resources/connect/oauth.ts +191 -0
  948. package/src/resources/delete.ts +239 -0
  949. package/src/resources/diff.integration.test.ts +103 -0
  950. package/src/resources/diff.test.ts +34 -0
  951. package/src/resources/diff.ts +187 -0
  952. package/src/resources/documents.test.ts +67 -0
  953. package/src/resources/documents.ts +102 -0
  954. package/src/resources/download.ts +151 -0
  955. package/src/resources/execution-approve.test.ts +50 -0
  956. package/src/resources/execution-approve.ts +94 -0
  957. package/src/resources/execution-control.ts +78 -0
  958. package/src/resources/execution-format.test.ts +48 -0
  959. package/src/resources/execution-format.ts +54 -0
  960. package/src/resources/execution-logs.ts +176 -0
  961. package/src/resources/execution-trace.ts +159 -0
  962. package/src/resources/execution.integration.test.ts +285 -0
  963. package/src/resources/execution.test.ts +138 -0
  964. package/src/resources/execution.ts +229 -0
  965. package/src/resources/get-bindings.ts +61 -0
  966. package/src/resources/get.ts +41 -0
  967. package/src/resources/git.ts +71 -0
  968. package/src/resources/ignore/defaults.ts +155 -0
  969. package/src/resources/ignore/ignore.test.ts +139 -0
  970. package/src/resources/ignore/index.ts +17 -0
  971. package/src/resources/ignore/match.ts +158 -0
  972. package/src/resources/ignore/matcher.ts +158 -0
  973. package/src/resources/ignore/pattern.ts +131 -0
  974. package/src/resources/list.ts +97 -0
  975. package/src/resources/mcp/runtime-env.test.ts +68 -0
  976. package/src/resources/mcp/runtime-env.ts +79 -0
  977. package/src/resources/mutate-verbs.integration.test.ts +233 -0
  978. package/src/resources/picker/ink.tsx +114 -0
  979. package/src/resources/picker/tty.test.ts +37 -0
  980. package/src/resources/picker/tty.ts +30 -0
  981. package/src/resources/push-download.integration.test.ts +175 -0
  982. package/src/resources/read-completion.integration.test.ts +156 -0
  983. package/src/resources/read-verbs.integration.test.ts +164 -0
  984. package/src/resources/reference.test.ts +107 -0
  985. package/src/resources/reference.ts +140 -0
  986. package/src/resources/render.ts +118 -0
  987. package/src/resources/run/agent-exec.ts +107 -0
  988. package/src/resources/run/attachments.test.ts +113 -0
  989. package/src/resources/run/attachments.ts +261 -0
  990. package/src/resources/run/create.test.ts +119 -0
  991. package/src/resources/run/create.ts +165 -0
  992. package/src/resources/run/env.test.ts +131 -0
  993. package/src/resources/run/env.ts +167 -0
  994. package/src/resources/run/epilogue.ts +166 -0
  995. package/src/resources/run/header.test.ts +61 -0
  996. package/src/resources/run/header.ts +62 -0
  997. package/src/resources/run/prepare.test.ts +92 -0
  998. package/src/resources/run/prepare.ts +139 -0
  999. package/src/resources/run/resolve.ts +32 -0
  1000. package/src/resources/run/resume.ts +119 -0
  1001. package/src/resources/run/stream.ts +108 -0
  1002. package/src/resources/run/workflow-stream.integration.test.ts +157 -0
  1003. package/src/resources/run/workflow-stream.ts +203 -0
  1004. package/src/resources/run/workspace.test.ts +93 -0
  1005. package/src/resources/run/workspace.ts +171 -0
  1006. package/src/resources/search.ts +53 -0
  1007. package/src/resources/session.test.ts +48 -0
  1008. package/src/resources/session.ts +66 -0
  1009. package/src/resources/skill.test.ts +227 -0
  1010. package/src/resources/skill.ts +451 -0
  1011. package/src/resources/stream/approval-detect.ts +118 -0
  1012. package/src/resources/stream/convert.ts +210 -0
  1013. package/src/resources/stream/diff.test.ts +316 -0
  1014. package/src/resources/stream/diff.ts +254 -0
  1015. package/src/resources/stream/events.ts +193 -0
  1016. package/src/resources/stream/headless.test.ts +119 -0
  1017. package/src/resources/stream/headless.ts +112 -0
  1018. package/src/resources/stream/ink.tsx +56 -0
  1019. package/src/resources/stream/lazy-import.test.ts +63 -0
  1020. package/src/resources/stream/render-ndjson.test.ts +116 -0
  1021. package/src/resources/stream/render-ndjson.ts +176 -0
  1022. package/src/resources/stream/render-plaintext.test.ts +68 -0
  1023. package/src/resources/stream/render-plaintext.ts +86 -0
  1024. package/src/resources/stream/snapshot.test.ts +97 -0
  1025. package/src/resources/stream/snapshot.ts +191 -0
  1026. package/src/resources/stream/subagent.ts +104 -0
  1027. package/src/resources/stream/submit.test.ts +77 -0
  1028. package/src/resources/stream/submit.ts +137 -0
  1029. package/src/resources/stream/todo.ts +53 -0
  1030. package/src/resources/stream/tool-state.ts +142 -0
  1031. package/src/resources/stream/tty.ts +14 -0
  1032. package/src/resources/stream/workflow-event-view.test.ts +116 -0
  1033. package/src/resources/stream/workflow-event-view.ts +111 -0
  1034. package/src/resources/stream/workflow-render-ndjson.ts +61 -0
  1035. package/src/resources/stream/workflow-render-plaintext.ts +43 -0
  1036. package/src/resources/stream/workflow-render.test.ts +81 -0
  1037. package/src/resources/tag.ts +50 -0
  1038. package/src/resources/usage.test.ts +94 -0
  1039. package/src/resources/usage.ts +301 -0
  1040. package/src/resources/validate.test.ts +54 -0
  1041. package/src/resources/validate.ts +31 -0
  1042. package/src/resources/version.ts +105 -0
  1043. package/src/runtime.ts +23 -0
  1044. package/src/types/marked-terminal.d.ts +31 -0
  1045. package/src/version.ts +46 -0
  1046. package/version.d.ts +2 -0
  1047. package/version.d.ts.map +1 -0
  1048. package/version.js +45 -0
  1049. package/version.js.map +1 -0
@@ -0,0 +1,73 @@
1
+ // `stigmer logs` — view daemon component logs, with `kubectl logs`-style
2
+ // defaults: follow all components live, showing a tail snapshot first.
3
+ //
4
+ // stigmer logs # follow all components
5
+ // stigmer logs --no-follow --tail 100
6
+ // stigmer logs --component runner # just the runner
7
+
8
+ import type { Command } from "commander";
9
+ import { homedir } from "node:os";
10
+
11
+ interface LogsFlags {
12
+ follow?: boolean; // false when --no-follow is passed
13
+ tail?: string;
14
+ component?: string;
15
+ all?: boolean; // false when --no-all is passed
16
+ }
17
+
18
+ export function registerLogs(program: Command): void {
19
+ program
20
+ .command("logs")
21
+ .description("view logs from the local Stigmer stack")
22
+ .option("-f, --no-follow", "do not stream new log lines (show the tail and exit)")
23
+ .option("-n, --tail <lines>", "number of recent lines to show before streaming", "50")
24
+ .option("-c, --component <name>", "show a single component (stigmer-server, runner, or temporal)")
25
+ .option("--no-all", "with --component unset, restrict to the default component")
26
+ .action((options: LogsFlags) => runLogs(options));
27
+ }
28
+
29
+ async function runLogs(options: LogsFlags): Promise<void> {
30
+ const { allComponents, componentByName, followAll, printTail } = await import("../local/logs/view.js");
31
+ const { logDir } = await import("../local/paths.js");
32
+ const { CliExitError } = await import("../errors/cli-exit-error.js");
33
+ const { ExitCode } = await import("../errors/exit-codes.js");
34
+
35
+ const dir = logDir(homedir());
36
+ const tail = Number.parseInt(options.tail ?? "50", 10);
37
+ const tailLines = Number.isNaN(tail) ? 50 : tail;
38
+ const follow = options.follow !== false;
39
+
40
+ // A single component is selected explicitly; otherwise show all unless the
41
+ // user opted out of the all-view (then fall back to the server's logs).
42
+ const useAll = options.component === undefined && options.all !== false;
43
+ const components = useAll
44
+ ? allComponents(dir)
45
+ : [
46
+ componentByName(dir, options.component ?? "stigmer-server") ??
47
+ (() => {
48
+ throw new CliExitError(`unknown component: ${options.component}`, ExitCode.Usage, [
49
+ "Valid components: stigmer-server, runner, temporal",
50
+ ]);
51
+ })(),
52
+ ];
53
+
54
+ printTail(components, tailLines, process.stdout);
55
+
56
+ if (!follow) return;
57
+ await streamUntilInterrupt(() => followAll(components, process.stdout));
58
+ }
59
+
60
+ // Follow until SIGINT, then stop cleanly. Resolves on Ctrl-C so the process can
61
+ // exit 0 rather than dumping a stack trace.
62
+ function streamUntilInterrupt(start: () => { stop(): void }): Promise<void> {
63
+ return new Promise((resolve) => {
64
+ const handle = start();
65
+ const onSignal = (): void => {
66
+ handle.stop();
67
+ process.removeListener("SIGINT", onSignal);
68
+ process.stderr.write("\n");
69
+ resolve();
70
+ };
71
+ process.on("SIGINT", onSignal);
72
+ });
73
+ }
@@ -0,0 +1,65 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import type { Config } from "../config/config.js";
3
+ import { applyConfigEnv, applyFlagsEnv } from "./mcp-server.js";
4
+
5
+ describe("applyConfigEnv", () => {
6
+ it("points a local backend at the local server", () => {
7
+ const env: NodeJS.ProcessEnv = {};
8
+ applyConfigEnv({ backend: { type: "local" } }, env);
9
+ expect(env.STIGMER_SERVER_ADDRESS).toBe("localhost:7234");
10
+ expect(env.STIGMER_API_KEY).toBeUndefined();
11
+ });
12
+
13
+ it("contributes the cloud endpoint and token", () => {
14
+ const env: NodeJS.ProcessEnv = {};
15
+ const config: Config = {
16
+ backend: { type: "cloud", cloud: { endpoint: "api.stigmer.ai:443", token: "tok-123" } },
17
+ };
18
+ applyConfigEnv(config, env);
19
+ expect(env.STIGMER_SERVER_ADDRESS).toBe("api.stigmer.ai:443");
20
+ expect(env.STIGMER_API_KEY).toBe("tok-123");
21
+ });
22
+
23
+ it("never overrides a value already present in the environment", () => {
24
+ const env: NodeJS.ProcessEnv = { STIGMER_SERVER_ADDRESS: "preset:7234" };
25
+ applyConfigEnv({ backend: { type: "local" } }, env);
26
+ expect(env.STIGMER_SERVER_ADDRESS).toBe("preset:7234");
27
+ });
28
+ });
29
+
30
+ describe("applyFlagsEnv", () => {
31
+ it("maps every set flag to its environment variable", () => {
32
+ const env: NodeJS.ProcessEnv = {};
33
+ applyFlagsEnv(
34
+ {
35
+ transport: "http",
36
+ port: "9090",
37
+ serverAddress: "host:7234",
38
+ apiKey: "key",
39
+ logFormat: "json",
40
+ logLevel: "debug",
41
+ },
42
+ env,
43
+ );
44
+ expect(env).toMatchObject({
45
+ STIGMER_MCP_TRANSPORT: "http",
46
+ STIGMER_MCP_HTTP_PORT: "9090",
47
+ STIGMER_SERVER_ADDRESS: "host:7234",
48
+ STIGMER_API_KEY: "key",
49
+ STIGMER_MCP_LOG_FORMAT: "json",
50
+ STIGMER_MCP_LOG_LEVEL: "debug",
51
+ });
52
+ });
53
+
54
+ it("overrides config-derived values (flags win)", () => {
55
+ const env: NodeJS.ProcessEnv = { STIGMER_SERVER_ADDRESS: "from-config:7234" };
56
+ applyFlagsEnv({ serverAddress: "from-flag:7234" }, env);
57
+ expect(env.STIGMER_SERVER_ADDRESS).toBe("from-flag:7234");
58
+ });
59
+
60
+ it("ignores unset flags", () => {
61
+ const env: NodeJS.ProcessEnv = {};
62
+ applyFlagsEnv({}, env);
63
+ expect(Object.keys(env)).toHaveLength(0);
64
+ });
65
+ });
@@ -0,0 +1,124 @@
1
+ // `stigmer mcp-server` — start the Stigmer MCP server.
2
+ //
3
+ // The server is the TypeScript `@stigmer/mcp-server` package, and the CLI runs it
4
+ // IN-PROCESS via its `run(cfg, signal)` embed API — the module exists precisely
5
+ // so a host like the CLI embeds it rather than shelling out (the Go CLI shelled
6
+ // out only because Go cannot import TypeScript). This avoids a child process, an
7
+ // npx/tsx resolution dance, and a second Node startup.
8
+ //
9
+ // MCP clients (Cursor, Claude Desktop, Windsurf) spawn `stigmer mcp-server` and
10
+ // speak the protocol over stdio, so stdout must carry ONLY MCP frames: the CLI's
11
+ // logger writes to stderr (see logger.ts) and the server logs to stderr too. The
12
+ // CLI owns the shutdown signal and aborts the server's AbortController on
13
+ // SIGINT/SIGTERM.
14
+ //
15
+ // Configuration precedence (matches the Go CLI): flags > env > ~/.stigmer config
16
+ // > server defaults. We realize that precedence by bridging config into the
17
+ // environment only where unset, then letting explicit flags override, and finally
18
+ // letting the server read its Config from the environment.
19
+
20
+ import type { Command } from "commander";
21
+ import type { Config } from "../config/config.js";
22
+
23
+ /** Flags the command bridges into the server's environment. */
24
+ export interface McpServerFlags {
25
+ transport?: string;
26
+ port?: string;
27
+ serverAddress?: string;
28
+ apiKey?: string;
29
+ logFormat?: string;
30
+ logLevel?: string;
31
+ }
32
+
33
+ const HELP_AFTER = `
34
+ Environment variables:
35
+ STIGMER_SERVER_ADDRESS gRPC address (default: CLI config, else localhost:7234)
36
+ STIGMER_API_KEY API key (auto-resolved from CLI config for cloud)
37
+ STIGMER_MCP_TRANSPORT stdio | http | both (default: stdio)
38
+ STIGMER_MCP_HTTP_PORT HTTP listen port (default: 8080)
39
+ STIGMER_MCP_LOG_FORMAT text | json (default: text)
40
+ STIGMER_MCP_LOG_LEVEL debug | info | warn | error (default: info)
41
+
42
+ Examples:
43
+ # STDIO mode (default — what MCP clients spawn)
44
+ $ stigmer mcp-server
45
+
46
+ # HTTP mode on a custom port
47
+ $ stigmer mcp-server --transport http --port 9090
48
+
49
+ # Cursor mcp.json:
50
+ # { "command": "stigmer", "args": ["mcp-server"] }`;
51
+
52
+ export function registerMcpServer(program: Command): void {
53
+ program
54
+ .command("mcp-server")
55
+ .description("start the MCP server that exposes Stigmer resources to AI coding assistants")
56
+ .option("--transport <mode>", "transport mode: stdio, http, or both (env: STIGMER_MCP_TRANSPORT)")
57
+ .option("--port <port>", "HTTP listen port (env: STIGMER_MCP_HTTP_PORT)")
58
+ .option("--server-address <addr>", "gRPC address of stigmer-server (env: STIGMER_SERVER_ADDRESS)")
59
+ .option("--api-key <key>", "API key for stigmer-server (env: STIGMER_API_KEY)")
60
+ .option("--log-format <fmt>", "log encoding: text or json (env: STIGMER_MCP_LOG_FORMAT)")
61
+ .option("--log-level <level>", "minimum log level: debug, info, warn, or error (env: STIGMER_MCP_LOG_LEVEL)")
62
+ .addHelpText("after", HELP_AFTER)
63
+ .action((flags: McpServerFlags) => runMcpServer(flags));
64
+ }
65
+
66
+ async function runMcpServer(flags: McpServerFlags): Promise<void> {
67
+ const { load } = await import("../config/config.js");
68
+ applyConfigEnv(load(), process.env);
69
+ applyFlagsEnv(flags, process.env);
70
+
71
+ // Imported lazily so `stigmer --help`/`version` never pull in the MCP stack.
72
+ const { run, defaultConfig } = await import("@stigmer/mcp-server");
73
+
74
+ const controller = new AbortController();
75
+ const onSignal = (): void => controller.abort();
76
+ process.once("SIGINT", onSignal);
77
+ process.once("SIGTERM", onSignal);
78
+ try {
79
+ await run(defaultConfig(), controller.signal);
80
+ } finally {
81
+ process.removeListener("SIGINT", onSignal);
82
+ process.removeListener("SIGTERM", onSignal);
83
+ }
84
+ }
85
+
86
+ /**
87
+ * Bridge CLI config into the server's environment, but only where unset, so a
88
+ * pre-existing environment variable (or a flag bridged before this) wins. Local
89
+ * backends connect to the local server without auth; cloud backends contribute
90
+ * the stored endpoint and token.
91
+ */
92
+ export function applyConfigEnv(config: Config, env: NodeJS.ProcessEnv): void {
93
+ if (config.backend.type === "local") {
94
+ setIfEmpty(env, "STIGMER_SERVER_ADDRESS", "localhost:7234");
95
+ return;
96
+ }
97
+ const cloud = config.backend.cloud;
98
+ if (cloud !== undefined) {
99
+ setIfEmpty(env, "STIGMER_SERVER_ADDRESS", cloud.endpoint);
100
+ setIfEmpty(env, "STIGMER_API_KEY", cloud.token);
101
+ }
102
+ }
103
+
104
+ /** Bridge explicitly-set flags into the server's environment (highest precedence). */
105
+ export function applyFlagsEnv(flags: McpServerFlags, env: NodeJS.ProcessEnv): void {
106
+ setIfPresent(env, "STIGMER_MCP_TRANSPORT", flags.transport);
107
+ setIfPresent(env, "STIGMER_MCP_HTTP_PORT", flags.port);
108
+ setIfPresent(env, "STIGMER_SERVER_ADDRESS", flags.serverAddress);
109
+ setIfPresent(env, "STIGMER_API_KEY", flags.apiKey);
110
+ setIfPresent(env, "STIGMER_MCP_LOG_FORMAT", flags.logFormat);
111
+ setIfPresent(env, "STIGMER_MCP_LOG_LEVEL", flags.logLevel);
112
+ }
113
+
114
+ function setIfEmpty(env: NodeJS.ProcessEnv, key: string, value: string | undefined): void {
115
+ if (value !== undefined && value !== "" && (env[key] === undefined || env[key] === "")) {
116
+ env[key] = value;
117
+ }
118
+ }
119
+
120
+ function setIfPresent(env: NodeJS.ProcessEnv, key: string, value: string | undefined): void {
121
+ if (value !== undefined && value !== "") {
122
+ env[key] = value;
123
+ }
124
+ }
@@ -0,0 +1,205 @@
1
+ // `stigmer push <type> [path]` — package and upload an artifact to the registry.
2
+ // Only skills are pushable today. Two source modes: a local directory (default,
3
+ // git provenance auto-detected) or a remote repo via --git-url (cloned to a
4
+ // temp dir, then pushed). Heavy modules are lazy-imported so `--help` stays fast.
5
+ import { mkdtempSync, rmSync } from "node:fs";
6
+ import { tmpdir } from "node:os";
7
+ import { join } from "node:path";
8
+ import type { Command } from "commander";
9
+ import { ensureAuthenticated, resolveOrganization } from "../config/index.js";
10
+ import { UsageError } from "../errors/index.js";
11
+ import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
12
+ import { defaultRegistry, Verb } from "../registry/index.js";
13
+ import { globalOrg } from "./shared.js";
14
+
15
+ interface PushFlags {
16
+ tag?: string;
17
+ message?: string;
18
+ dryRun?: boolean;
19
+ gitUrl?: string;
20
+ gitRef?: string;
21
+ subdir?: string;
22
+ ignore?: string[];
23
+ include?: string[];
24
+ gitignore?: boolean; // false when --no-gitignore is passed (commander negation)
25
+ verbose?: boolean;
26
+ }
27
+
28
+ const collect = (value: string, previous: string[]): string[] => [...previous, value];
29
+
30
+ export function registerPush(program: Command): void {
31
+ program
32
+ .command("push <type> [path]")
33
+ .description("push an artifact to the registry (supported types: skill)")
34
+ .option("--tag <tag>", "version tag for the artifact", "latest")
35
+ .option("-m, --message <message>", "version message describing what changed")
36
+ .option("--dry-run", "validate without pushing")
37
+ .option("--git-url <url>", "push from a remote git repository URL")
38
+ .option("--git-ref <ref>", "git reference (tag, branch, or commit SHA) for remote push")
39
+ .option("--subdir <dir>", "subdirectory within the git repository containing the artifact")
40
+ .option("--ignore <pattern>", "additional pattern to ignore (repeatable)", collect, [])
41
+ .option("--include <pattern>", "pattern to force-include (repeatable)", collect, [])
42
+ .option("--no-gitignore", "don't respect .gitignore patterns")
43
+ .option("--verbose", "show detailed output including ignore decisions")
44
+ .action((type: string, path: string | undefined, options: PushFlags, command: Command) =>
45
+ runPush(type, path, options, command),
46
+ );
47
+ }
48
+
49
+ async function runPush(type: string, path: string | undefined, options: PushFlags, command: Command): Promise<void> {
50
+ const info = defaultRegistry().getByAlias(type);
51
+ if (info === undefined) {
52
+ throw new UsageError(`unknown resource type: ${type}\n\nAvailable types: skill`);
53
+ }
54
+ if (!info.supportedVerbs.has(Verb.Push)) {
55
+ throw new UsageError(`${info.displayName} does not support 'push'`);
56
+ }
57
+ if (info.kind !== ApiResourceKind.skill) {
58
+ throw new UsageError(`push not implemented for ${info.displayName}`);
59
+ }
60
+
61
+ const [{ connectBackend }, skill] = await Promise.all([import("../backend.js"), import("../resources/skill.js")]);
62
+ const client = connectBackend();
63
+ ensureAuthenticated(client.config);
64
+ const org = resolveOrganization(client.config, globalOrg(command));
65
+
66
+ const ignoreOptions = {
67
+ respectGitignore: options.gitignore !== false,
68
+ extraIgnore: options.ignore ?? [],
69
+ extraInclude: options.include ?? [],
70
+ };
71
+ const decisionSink = options.verbose === true ? (line: string) => process.stderr.write(`${line}\n`) : undefined;
72
+ const tag = options.tag ?? "latest";
73
+ const message = options.message ?? "";
74
+
75
+ if (options.gitUrl !== undefined && options.gitUrl !== "") {
76
+ await pushRemote(client.stigmer, skill, { org, tag, message, ignoreOptions, decisionSink, options });
77
+ return;
78
+ }
79
+
80
+ const directory = path !== undefined && path !== "" ? path : process.cwd();
81
+ if (!skill.hasSkillFile(directory)) {
82
+ throw new UsageError(
83
+ `SKILL.md not found in ${directory}\n\nA skill directory must contain a SKILL.md file defining the skill interface`,
84
+ );
85
+ }
86
+ // Validate metadata early so dry-run and real pushes fail the same way.
87
+ skill.parseSkillMetadata(directory);
88
+
89
+ if (options.dryRun === true) {
90
+ process.stdout.write(renderDryRun(directory, skill.analyzeDryRun(directory, ignoreOptions), skill));
91
+ return;
92
+ }
93
+
94
+ const result = await skill.pushSkill(client.stigmer, directory, org, tag, message, ignoreOptions, decisionSink);
95
+ process.stdout.write(renderResult(result, skill));
96
+ }
97
+
98
+ interface RemoteContext {
99
+ org: string;
100
+ tag: string;
101
+ message: string;
102
+ ignoreOptions: { respectGitignore: boolean; extraIgnore: string[]; extraInclude: string[] };
103
+ decisionSink?: (line: string) => void;
104
+ options: PushFlags;
105
+ }
106
+
107
+ async function pushRemote(
108
+ client: import("@stigmer/sdk").Stigmer,
109
+ skill: typeof import("../resources/skill.js"),
110
+ ctx: RemoteContext,
111
+ ): Promise<void> {
112
+ const gitUrl = ctx.options.gitUrl ?? "";
113
+ const gitRef = ctx.options.gitRef ?? "";
114
+ const subdir = ctx.options.subdir ?? "";
115
+
116
+ if (ctx.options.dryRun === true) {
117
+ process.stdout.write(renderRemoteDryRun(gitUrl, gitRef, subdir, ctx));
118
+ return;
119
+ }
120
+
121
+ const { cloneRepository } = await import("../resources/git.js");
122
+ const tempDir = mkdtempSync(join(tmpdir(), "stigmer-skill-"));
123
+ try {
124
+ cloneRepository(gitUrl, gitRef, tempDir);
125
+ const skillDir = subdir !== "" ? join(tempDir, subdir) : tempDir;
126
+ if (!skill.hasSkillFile(skillDir)) {
127
+ throw new UsageError(
128
+ `SKILL.md not found in ${subdir !== "" ? subdir : "repository root"}\n\n` +
129
+ "The skill directory must contain a SKILL.md file with YAML frontmatter",
130
+ );
131
+ }
132
+ const result = await skill.pushSkillFromClone(
133
+ client,
134
+ skillDir,
135
+ { gitUrl, gitRef, subdir, org: ctx.org, tag: ctx.tag, message: ctx.message, options: ctx.ignoreOptions },
136
+ ctx.decisionSink,
137
+ );
138
+ process.stdout.write(renderResult(result, skill));
139
+ } finally {
140
+ rmSync(tempDir, { recursive: true, force: true });
141
+ }
142
+ }
143
+
144
+ function renderResult(result: import("../resources/skill.js").PushResult, skill: typeof import("../resources/skill.js")): string {
145
+ const status = result.isNewResource ? "new resource" : result.versionChanged ? "new version" : "unchanged";
146
+ const lines = [
147
+ "",
148
+ `Pushed skill '${result.skillName}'`,
149
+ ` ID: ${result.id}`,
150
+ ` Slug: ${result.slug}`,
151
+ ` Tag: ${result.tag}`,
152
+ ` Version: ${skill.shortHash(result.versionHash)}`,
153
+ ` Size: ${skill.formatBytes(result.artifactSize)}`,
154
+ ` Status: ${status}`,
155
+ ];
156
+ if (result.message !== "") lines.push(` Message: ${result.message}`);
157
+ lines.push("");
158
+ return `${lines.join("\n")}\n`;
159
+ }
160
+
161
+ function renderDryRun(
162
+ directory: string,
163
+ analysis: import("../resources/skill.js").DryRunAnalysis,
164
+ skill: typeof import("../resources/skill.js"),
165
+ ): string {
166
+ const { stats } = analysis;
167
+ const lines = [
168
+ "",
169
+ `Dry run - analyzing skill directory: ${directory}`,
170
+ "",
171
+ "Pattern sources:",
172
+ ...analysis.patternSources.map((s) => ` - ${s}`),
173
+ "",
174
+ `Files to include: ${stats.filesIncluded} (${skill.formatBytes(stats.totalSize)})`,
175
+ `Files ignored: ${stats.filesIgnored}`,
176
+ `Directories skipped: ${stats.dirsSkipped}`,
177
+ ];
178
+ if (analysis.sampleIncluded.length > 0) {
179
+ lines.push("", "Sample included:", ...analysis.sampleIncluded.map((f) => ` + ${f}`));
180
+ }
181
+ if (analysis.sampleIgnored.length > 0) {
182
+ lines.push("", "Sample ignored:", ...analysis.sampleIgnored.map((f) => ` - ${f}`));
183
+ }
184
+ lines.push("", "Run without --dry-run to push the skill artifact.", "");
185
+ return `${lines.join("\n")}\n`;
186
+ }
187
+
188
+ function renderRemoteDryRun(gitUrl: string, gitRef: string, subdir: string, ctx: RemoteContext): string {
189
+ const lines = ["", "Dry run mode - would push skill from remote git repository:", "", "Git Source:", ` URL: ${gitUrl}`];
190
+ if (gitRef !== "") lines.push(` Ref: ${gitRef}`);
191
+ if (subdir !== "") lines.push(` Subdir: ${subdir}`);
192
+ lines.push(` Tag: ${ctx.tag}`, "", "Ignore Configuration:");
193
+ lines.push(` Gitignore: ${ctx.ignoreOptions.respectGitignore ? "enabled" : "disabled"}`);
194
+ lines.push(" Security defaults: enabled");
195
+ lines.push(" Stigmerignore: will load if present");
196
+ if (ctx.ignoreOptions.extraIgnore.length > 0) lines.push(` Extra ignore: ${ctx.ignoreOptions.extraIgnore.join(", ")}`);
197
+ if (ctx.ignoreOptions.extraInclude.length > 0) lines.push(` Force include: ${ctx.ignoreOptions.extraInclude.join(", ")}`);
198
+ lines.push(
199
+ "",
200
+ "Note: Full analysis requires cloning the repository.",
201
+ "Run without --dry-run to push the skill artifact.",
202
+ "",
203
+ );
204
+ return `${lines.join("\n")}\n`;
205
+ }
@@ -0,0 +1,57 @@
1
+ // `stigmer reset` — stop the stack and wipe all persistent local state, then
2
+ // (unless config was removed) restart fresh. Destructive, so it confirms first
3
+ // unless `--force` is given. Configuration is preserved unless --include-config.
4
+
5
+ import type { Command } from "commander";
6
+ import { homedir } from "node:os";
7
+ import { CommandResult, type OutputFlags, renderResult } from "../output/index.js";
8
+ import { addResultFlags, resultFormat } from "./shared.js";
9
+
10
+ interface ResetFlags extends OutputFlags {
11
+ force?: boolean;
12
+ includeConfig?: boolean;
13
+ }
14
+
15
+ export function registerReset(program: Command): void {
16
+ const reset = program
17
+ .command("reset")
18
+ .description("stop the stack and remove all local state, then restart fresh")
19
+ .option("--force", "skip the confirmation prompt")
20
+ .option("--include-config", "also remove configuration (API keys, preferences)")
21
+ .action((options: ResetFlags) => runReset(options));
22
+ addResultFlags(reset);
23
+ }
24
+
25
+ async function runReset(options: ResetFlags): Promise<void> {
26
+ const { reset } = await import("../local/reset.js");
27
+ const { up } = await import("../local/daemon/launch.js");
28
+ const { confirm } = await import("../local/setup/prompt.js");
29
+ const { configDir } = await import("../local/paths.js");
30
+
31
+ if (options.force !== true) {
32
+ const scope = options.includeConfig === true ? " INCLUDING configuration (config.yaml)" : " (configuration preserved)";
33
+ const ok = await confirm(`This will remove all runtime data in ${configDir(homedir())}${scope}.\nContinue?`);
34
+ if (!ok) {
35
+ renderResult(CommandResult.warning("Reset cancelled"), resultFormat(options));
36
+ return;
37
+ }
38
+ }
39
+
40
+ const outcome = await reset({ includeConfig: options.includeConfig === true });
41
+
42
+ const result = CommandResult.success("Reset complete");
43
+ const removed = result.addSection("Removed");
44
+ if (outcome.servicesStopped) removed.item("services stopped");
45
+ for (const path of outcome.removedPaths) removed.item(path);
46
+
47
+ if (options.includeConfig === true) {
48
+ result.hint("Run 'stigmer up' to reconfigure and start fresh");
49
+ renderResult(result, resultFormat(options));
50
+ return;
51
+ }
52
+
53
+ renderResult(result, resultFormat(options));
54
+
55
+ process.stderr.write("\nRestarting Stigmer local stack…\n");
56
+ await up({}, homedir());
57
+ }
@@ -0,0 +1,121 @@
1
+ // `stigmer resume [session-id-or-text]` — re-open an existing session. Thin
2
+ // handler: classify the argument (Go's executeResumeSmart), then delegate to the
3
+ // resume orchestrator. Resource IDs that aren't sessions are redirected to `run`;
4
+ // text/0-arg would open the session picker (a separate, not-yet-wired task).
5
+
6
+ import type { Command } from "commander";
7
+ import { ensureAuthenticated, resolveOrganization } from "../config/index.js";
8
+ import { UsageError } from "../errors/index.js";
9
+ import { interactiveBrowseEnabled } from "../resources/picker/tty.js";
10
+ import { globalOrg } from "./shared.js";
11
+
12
+ interface ResumeFlags {
13
+ verbose?: boolean;
14
+ mode?: string;
15
+ json?: boolean;
16
+ }
17
+
18
+ export function registerResume(program: Command): void {
19
+ program
20
+ .command("resume [reference]")
21
+ .description("resume an existing session by ID")
22
+ .option("-v, --verbose", "show all execution events")
23
+ .option("--mode <mode>", 'follow-up interaction mode: "agent" (default) or "plan" (read-only)')
24
+ .option("--json", "stream events as newline-delimited JSON")
25
+ .action((reference: string | undefined, options: ResumeFlags, command: Command) =>
26
+ runResume(reference, options, command),
27
+ );
28
+ }
29
+
30
+ async function runResume(reference: string | undefined, options: ResumeFlags, command: Command): Promise<void> {
31
+ const { validateMode } = await import("../resources/run/prepare.js");
32
+ // Call through a plain signature: TS forbids assertion functions reached via a
33
+ // destructured dynamic-import binding (TS2775); we only need the throw-on-invalid
34
+ // side effect here, not the narrowing.
35
+ (validateMode as (mode: string) => void)(options.mode ?? "");
36
+
37
+ const { connectBackend } = await import("../backend.js");
38
+ const client = connectBackend();
39
+ ensureAuthenticated(client.config);
40
+ const org = resolveOrganization(client.config, globalOrg(command));
41
+ if (org === "") {
42
+ throw new UsageError(
43
+ "organization not set\n\nSet it with:\n stigmer config context set --org <org>\n stigmer resume --org <org> ...",
44
+ );
45
+ }
46
+
47
+ const outputMode = options.json === true ? "json" : "inline";
48
+ const mode = (options.mode ?? "") as import("../resources/run/prepare.js").RunMode;
49
+
50
+ if (reference === undefined) {
51
+ if (interactiveBrowseEnabled(outputMode)) {
52
+ await browseAndResumeSession("", client, org, mode, outputMode);
53
+ return;
54
+ }
55
+ throw browseUnavailableError();
56
+ }
57
+
58
+ const { isSessionId, isAgentId, isWorkflowId, hasResourceIdPrefix, validateResourceId } = await import(
59
+ "../resources/reference.js"
60
+ );
61
+
62
+ // Agent/workflow IDs belong to `run`.
63
+ if (isAgentId(reference) || isWorkflowId(reference)) {
64
+ throw new UsageError(`Resource IDs like "${reference}" are not sessions\n\nTo run a resource:\n stigmer run ${reference}`);
65
+ }
66
+
67
+ if (isSessionId(reference)) {
68
+ if (validateResourceId(reference) !== null) {
69
+ throw new UsageError(
70
+ `Incomplete session ID: ${reference}\n\nProvide the full session ID (e.g. ses_01abc123xyz456789012345678)`,
71
+ );
72
+ }
73
+ const { openSession } = await import("../resources/run/resume.js");
74
+ await openSession({ client, sessionId: reference, org, mode, outputMode });
75
+ return;
76
+ }
77
+
78
+ // Any other resource-ID prefix is not a session.
79
+ if (hasResourceIdPrefix(reference)) {
80
+ throw new UsageError(
81
+ `Resource IDs like "${reference}" are not sessions\n\n` +
82
+ "To resume a session, provide a session ID (ses_…) or search text:\n" +
83
+ " stigmer resume <session-id>",
84
+ );
85
+ }
86
+
87
+ // Bare text → interactive session picker (pre-filtered by the text) on a TTY;
88
+ // otherwise actionable guidance.
89
+ if (interactiveBrowseEnabled(outputMode)) {
90
+ await browseAndResumeSession(reference, client, org, mode, outputMode);
91
+ return;
92
+ }
93
+ throw browseUnavailableError(reference);
94
+ }
95
+
96
+ // Mount the session picker; on selection, re-open the chosen session through the
97
+ // existing resume orchestrator. Cancel (Esc/Ctrl+C → undefined) returns cleanly
98
+ // so the command exits 0. Loaded lazily to honor the DD-001 boundary.
99
+ async function browseAndResumeSession(
100
+ initialQuery: string,
101
+ client: import("../client/index.js").BackendClient,
102
+ org: string,
103
+ mode: import("../resources/run/prepare.js").RunMode,
104
+ outputMode: "inline" | "json",
105
+ ): Promise<void> {
106
+ const { pickSession } = await import("../resources/picker/ink.js");
107
+ const selected = await pickSession({ client: client.stigmer, initialQuery });
108
+ if (selected === undefined) return;
109
+ const sessionId = selected.metadata?.id ?? "";
110
+ if (sessionId === "") return;
111
+ const { openSession } = await import("../resources/run/resume.js");
112
+ await openSession({ client, sessionId, org, mode, outputMode });
113
+ }
114
+
115
+ function browseUnavailableError(query?: string): UsageError {
116
+ const head =
117
+ query === undefined || query === ""
118
+ ? "Interactive session browsing requires an interactive terminal"
119
+ : `Searching sessions for "${query}" requires an interactive terminal`;
120
+ return new UsageError(`${head}\n\nSpecify a full session ID:\n stigmer resume <session-id>`);
121
+ }