@tryglen/cli 0.37.1 → 0.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (798) hide show
  1. package/README.md +21 -4
  2. package/dist/_generated/contract/index.js +3 -0
  3. package/dist/_generated/contract/index.js.map +1 -0
  4. package/dist/_generated/contract/procedures.gen.js +34 -0
  5. package/dist/_generated/contract/procedures.gen.js.map +1 -0
  6. package/dist/_generated/contract/types.gen.js +3 -0
  7. package/dist/_generated/contract/types.gen.js.map +1 -0
  8. package/dist/_generated/contract/zod.gen.js +799 -0
  9. package/dist/_generated/contract/zod.gen.js.map +1 -0
  10. package/dist/bin.js +137 -560
  11. package/dist/bin.js.map +1 -1
  12. package/dist/clients/agents/agent-bin.js +67 -0
  13. package/dist/clients/agents/agent-bin.js.map +1 -0
  14. package/dist/clients/agents/agent-path-overrides.js +23 -0
  15. package/dist/clients/agents/agent-path-overrides.js.map +1 -0
  16. package/dist/clients/agents/agents-table.js +91 -0
  17. package/dist/clients/agents/agents-table.js.map +1 -0
  18. package/dist/{_utils → clients/agents}/managed-block.js +8 -4
  19. package/dist/clients/agents/managed-block.js.map +1 -0
  20. package/dist/clients/agents/normalize-transcript-timestamp.js.map +1 -0
  21. package/dist/clients/agents/plugin-status.js +74 -0
  22. package/dist/clients/agents/plugin-status.js.map +1 -0
  23. package/dist/clients/agents/run-agent-steps.js +21 -0
  24. package/dist/clients/agents/run-agent-steps.js.map +1 -0
  25. package/dist/{_utils → clients/claude}/extract-claude-segments.js +9 -5
  26. package/dist/clients/claude/extract-claude-segments.js.map +1 -0
  27. package/dist/clients/claude/parse-claude-transcript.js +114 -0
  28. package/dist/clients/claude/parse-claude-transcript.js.map +1 -0
  29. package/dist/clients/codex/codex-app-server.js +102 -0
  30. package/dist/clients/codex/codex-app-server.js.map +1 -0
  31. package/dist/clients/codex/codex-hooks-file.js +65 -0
  32. package/dist/clients/codex/codex-hooks-file.js.map +1 -0
  33. package/dist/clients/codex/codex-hooks-merge.js +9 -0
  34. package/dist/clients/codex/codex-hooks-merge.js.map +1 -0
  35. package/dist/clients/codex/codex-hooks-setup.js +167 -0
  36. package/dist/clients/codex/codex-hooks-setup.js.map +1 -0
  37. package/dist/clients/codex/codex-paths.js +13 -0
  38. package/dist/clients/codex/codex-paths.js.map +1 -0
  39. package/dist/clients/codex/codex-repair-trace.js +36 -0
  40. package/dist/clients/codex/codex-repair-trace.js.map +1 -0
  41. package/dist/clients/codex/codex-rules-setup.js +27 -0
  42. package/dist/clients/codex/codex-rules-setup.js.map +1 -0
  43. package/dist/{_utils → clients/codex}/codex-trust-toml.js +6 -5
  44. package/dist/clients/codex/codex-trust-toml.js.map +1 -0
  45. package/dist/clients/codex/extract-codex-segments.js +64 -0
  46. package/dist/clients/codex/extract-codex-segments.js.map +1 -0
  47. package/dist/clients/codex/parse-codex-transcript.js +123 -0
  48. package/dist/clients/codex/parse-codex-transcript.js.map +1 -0
  49. package/dist/clients/cursor/parse-cursor-db.js +185 -0
  50. package/dist/clients/cursor/parse-cursor-db.js.map +1 -0
  51. package/dist/clients/git/canonical-remote-url.js +13 -0
  52. package/dist/clients/git/canonical-remote-url.js.map +1 -0
  53. package/dist/clients/git/git-context.js +60 -0
  54. package/dist/clients/git/git-context.js.map +1 -0
  55. package/dist/clients/git/git-hook-setup.js +128 -0
  56. package/dist/clients/git/git-hook-setup.js.map +1 -0
  57. package/dist/{_utils → clients/git}/pr-review-link.js +5 -4
  58. package/dist/clients/git/pr-review-link.js.map +1 -0
  59. package/dist/clients/glen-api/config.js +11 -0
  60. package/dist/clients/glen-api/config.js.map +1 -0
  61. package/dist/clients/glen-api/glen-api.js +199 -0
  62. package/dist/clients/glen-api/glen-api.js.map +1 -0
  63. package/dist/{_utils → clients/glen-api}/glen-headers.js +1 -1
  64. package/dist/clients/glen-api/glen-headers.js.map +1 -0
  65. package/dist/clients/glen-api/refresh-control-state.js +18 -0
  66. package/dist/clients/glen-api/refresh-control-state.js.map +1 -0
  67. package/dist/clients/glen-api/report-cli-install.js +20 -0
  68. package/dist/clients/glen-api/report-cli-install.js.map +1 -0
  69. package/dist/clients/glen-api/sync-mode-from-server.js +45 -0
  70. package/dist/clients/glen-api/sync-mode-from-server.js.map +1 -0
  71. package/dist/clients/indicator/indicator-app.js +127 -0
  72. package/dist/clients/indicator/indicator-app.js.map +1 -0
  73. package/dist/clients/indicator/indicator-health.js +40 -0
  74. package/dist/clients/indicator/indicator-health.js.map +1 -0
  75. package/dist/clients/jcode/jcode-bundle.js +19 -0
  76. package/dist/clients/jcode/jcode-bundle.js.map +1 -0
  77. package/dist/clients/jcode/jcode-event.js +74 -0
  78. package/dist/clients/jcode/jcode-event.js.map +1 -0
  79. package/dist/{_utils → clients/jcode}/jcode-hook-lines.js +1 -1
  80. package/dist/clients/jcode/jcode-hook-lines.js.map +1 -0
  81. package/dist/{_utils → clients/jcode}/jcode-hooks-toml.js +21 -29
  82. package/dist/clients/jcode/jcode-hooks-toml.js.map +1 -0
  83. package/dist/clients/jcode/jcode-paths.js +14 -0
  84. package/dist/clients/jcode/jcode-paths.js.map +1 -0
  85. package/dist/clients/jcode/jcode-setup.js +148 -0
  86. package/dist/clients/jcode/jcode-setup.js.map +1 -0
  87. package/dist/clients/jcode/jcode-skills-sync.js +84 -0
  88. package/dist/clients/jcode/jcode-skills-sync.js.map +1 -0
  89. package/dist/{_utils → clients/jcode}/parse-jcode-session.js +38 -35
  90. package/dist/clients/jcode/parse-jcode-session.js.map +1 -0
  91. package/dist/clients/npm/semver-newer.js +8 -0
  92. package/dist/clients/npm/semver-newer.js.map +1 -0
  93. package/dist/clients/npm/update.js +147 -0
  94. package/dist/clients/npm/update.js.map +1 -0
  95. package/dist/{_utils → clients/pi}/extract-pi-segments.js +7 -3
  96. package/dist/clients/pi/extract-pi-segments.js.map +1 -0
  97. package/dist/clients/pi/parse-pi-transcript.js +149 -0
  98. package/dist/clients/pi/parse-pi-transcript.js.map +1 -0
  99. package/dist/clients/telemetry/send-events.js +32 -0
  100. package/dist/clients/telemetry/send-events.js.map +1 -0
  101. package/dist/commands/_utils/forget-or-restore-observation-or-message.js +41 -0
  102. package/dist/commands/_utils/forget-or-restore-observation-or-message.js.map +1 -0
  103. package/dist/commands/artifact/_utils/explain-artifact-error.js +31 -0
  104. package/dist/commands/artifact/_utils/explain-artifact-error.js.map +1 -0
  105. package/dist/commands/artifact/_utils/require-slug.js +14 -0
  106. package/dist/commands/artifact/_utils/require-slug.js.map +1 -0
  107. package/dist/commands/artifact/artifact.options.js +43 -0
  108. package/dist/commands/artifact/artifact.options.js.map +1 -0
  109. package/dist/commands/artifact/create.js +87 -0
  110. package/dist/commands/artifact/create.js.map +1 -0
  111. package/dist/commands/artifact/delete.js +18 -0
  112. package/dist/commands/artifact/delete.js.map +1 -0
  113. package/dist/commands/artifact/get.js +21 -0
  114. package/dist/commands/artifact/get.js.map +1 -0
  115. package/dist/commands/artifact/list.js +4 -0
  116. package/dist/commands/artifact/list.js.map +1 -0
  117. package/dist/commands/artifact/search.js +25 -0
  118. package/dist/commands/artifact/search.js.map +1 -0
  119. package/dist/commands/artifact/share.js +42 -0
  120. package/dist/commands/artifact/share.js.map +1 -0
  121. package/dist/commands/code-search/code-search.options.js +10 -0
  122. package/dist/commands/code-search/code-search.options.js.map +1 -0
  123. package/dist/commands/code-search/index.js +106 -0
  124. package/dist/commands/code-search/index.js.map +1 -0
  125. package/dist/commands/dependency/dependency.options.js +10 -0
  126. package/dist/commands/dependency/dependency.options.js.map +1 -0
  127. package/dist/commands/dependency/index.js +25 -0
  128. package/dist/commands/dependency/index.js.map +1 -0
  129. package/dist/{_utils → commands/doctor/_utils}/ingest-diagnosis.js +16 -17
  130. package/dist/commands/doctor/_utils/ingest-diagnosis.js.map +1 -0
  131. package/dist/commands/doctor/_utils/login-check.js +48 -0
  132. package/dist/commands/doctor/_utils/login-check.js.map +1 -0
  133. package/dist/commands/doctor/doctor.options.js +17 -0
  134. package/dist/commands/doctor/doctor.options.js.map +1 -0
  135. package/dist/commands/doctor/index.js +366 -0
  136. package/dist/commands/doctor/index.js.map +1 -0
  137. package/dist/commands/feedback/feedback.options.js +82 -0
  138. package/dist/commands/feedback/feedback.options.js.map +1 -0
  139. package/dist/commands/feedback/index.js +64 -0
  140. package/dist/commands/feedback/index.js.map +1 -0
  141. package/dist/commands/forget/forget.options.js +12 -0
  142. package/dist/commands/forget/forget.options.js.map +1 -0
  143. package/dist/commands/forget/index.js +30 -0
  144. package/dist/commands/forget/index.js.map +1 -0
  145. package/dist/commands/git-hooks/git-hooks.options.js +17 -0
  146. package/dist/commands/git-hooks/git-hooks.options.js.map +1 -0
  147. package/dist/commands/git-hooks/index.js +21 -0
  148. package/dist/commands/git-hooks/index.js.map +1 -0
  149. package/dist/commands/git-hooks/write-commit-trailer.js +38 -0
  150. package/dist/commands/git-hooks/write-commit-trailer.js.map +1 -0
  151. package/dist/commands/import/_utils/collect-import-files.js +54 -0
  152. package/dist/commands/import/_utils/collect-import-files.js.map +1 -0
  153. package/dist/commands/import/_utils/detect-transcript-format.js +46 -0
  154. package/dist/commands/import/_utils/detect-transcript-format.js.map +1 -0
  155. package/dist/{_utils → commands/import/_utils}/parse-harbor-atif.js +28 -51
  156. package/dist/commands/import/_utils/parse-harbor-atif.js.map +1 -0
  157. package/dist/{_utils → commands/import/_utils}/resolve-import-workspace.js +12 -17
  158. package/dist/commands/import/_utils/resolve-import-workspace.js.map +1 -0
  159. package/dist/{_utils → commands/import/_utils}/transcript-turns.js +47 -52
  160. package/dist/commands/import/_utils/transcript-turns.js.map +1 -0
  161. package/dist/commands/import/import.options.js +18 -0
  162. package/dist/commands/import/import.options.js.map +1 -0
  163. package/dist/commands/import/import.schema.js +28 -0
  164. package/dist/commands/import/import.schema.js.map +1 -0
  165. package/dist/commands/import/index.js +284 -0
  166. package/dist/commands/import/index.js.map +1 -0
  167. package/dist/commands/incognito/incognito.options.js +7 -0
  168. package/dist/commands/incognito/incognito.options.js.map +1 -0
  169. package/dist/commands/incognito/index.js +5 -0
  170. package/dist/commands/incognito/index.js.map +1 -0
  171. package/dist/commands/indicator/index.js +59 -0
  172. package/dist/commands/indicator/index.js.map +1 -0
  173. package/dist/commands/indicator/indicator.options.js +7 -0
  174. package/dist/commands/indicator/indicator.options.js.map +1 -0
  175. package/dist/commands/ingest/_utils/agent-adapter.js +37 -0
  176. package/dist/commands/ingest/_utils/agent-adapter.js.map +1 -0
  177. package/dist/{_utils → commands/ingest/_utils}/build-turn-body.js +8 -6
  178. package/dist/commands/ingest/_utils/build-turn-body.js.map +1 -0
  179. package/dist/{_utils → commands/ingest/_utils}/format-turn-nudges.js +14 -31
  180. package/dist/commands/ingest/_utils/format-turn-nudges.js.map +1 -0
  181. package/dist/commands/ingest/_utils/idempotency-key.js +4 -0
  182. package/dist/commands/ingest/_utils/idempotency-key.js.map +1 -0
  183. package/dist/commands/ingest/_utils/ingest-failure-memo.js +58 -0
  184. package/dist/commands/ingest/_utils/ingest-failure-memo.js.map +1 -0
  185. package/dist/commands/ingest/_utils/parse-transcript.js +76 -0
  186. package/dist/commands/ingest/_utils/parse-transcript.js.map +1 -0
  187. package/dist/commands/ingest/_utils/turn-cache.js +73 -0
  188. package/dist/commands/ingest/_utils/turn-cache.js.map +1 -0
  189. package/dist/commands/ingest/index.js +379 -0
  190. package/dist/commands/ingest/index.js.map +1 -0
  191. package/dist/commands/ingest/ingest.options.js +13 -0
  192. package/dist/commands/ingest/ingest.options.js.map +1 -0
  193. package/dist/commands/install/_utils/claude-statusline.js +58 -0
  194. package/dist/commands/install/_utils/claude-statusline.js.map +1 -0
  195. package/dist/commands/install/_utils/codex-post-install.js +56 -0
  196. package/dist/commands/install/_utils/codex-post-install.js.map +1 -0
  197. package/dist/{_utils → commands/install/_utils}/ensure-global-cli.js +49 -52
  198. package/dist/commands/install/_utils/ensure-global-cli.js.map +1 -0
  199. package/dist/commands/install/_utils/finish-install.js +67 -0
  200. package/dist/commands/install/_utils/finish-install.js.map +1 -0
  201. package/dist/commands/install/_utils/jcode-install.js +29 -0
  202. package/dist/commands/install/_utils/jcode-install.js.map +1 -0
  203. package/dist/{_utils → commands/install/_utils}/npm-error-cause.js +1 -2
  204. package/dist/commands/install/_utils/npm-error-cause.js.map +1 -0
  205. package/dist/commands/install/_utils/prepare-machine.js +85 -0
  206. package/dist/commands/install/_utils/prepare-machine.js.map +1 -0
  207. package/dist/commands/install/codex-hooks-repair.js +17 -0
  208. package/dist/commands/install/codex-hooks-repair.js.map +1 -0
  209. package/dist/commands/install/index.js +186 -0
  210. package/dist/commands/install/index.js.map +1 -0
  211. package/dist/commands/install/install.options.js +41 -0
  212. package/dist/commands/install/install.options.js.map +1 -0
  213. package/dist/commands/invite/index.js +47 -0
  214. package/dist/commands/invite/index.js.map +1 -0
  215. package/dist/commands/invite/invite.options.js +24 -0
  216. package/dist/commands/invite/invite.options.js.map +1 -0
  217. package/dist/commands/login/_utils/open-browser.js +9 -0
  218. package/dist/commands/login/_utils/open-browser.js.map +1 -0
  219. package/dist/commands/login/_utils/parse-start.js +25 -0
  220. package/dist/commands/login/_utils/parse-start.js.map +1 -0
  221. package/dist/commands/login/_utils/poll-for-approval.js +55 -0
  222. package/dist/commands/login/_utils/poll-for-approval.js.map +1 -0
  223. package/dist/commands/login/index.js +101 -0
  224. package/dist/commands/login/index.js.map +1 -0
  225. package/dist/commands/login/login.options.js +12 -0
  226. package/dist/commands/login/login.options.js.map +1 -0
  227. package/dist/commands/logout/index.js +16 -0
  228. package/dist/commands/logout/index.js.map +1 -0
  229. package/dist/commands/logout/logout.options.js +4 -0
  230. package/dist/commands/logout/logout.options.js.map +1 -0
  231. package/dist/commands/onboard/index.js +20 -0
  232. package/dist/commands/onboard/index.js.map +1 -0
  233. package/dist/commands/org/_utils/apply-switch.js +37 -0
  234. package/dist/commands/org/_utils/apply-switch.js.map +1 -0
  235. package/dist/commands/org/_utils/fetch-orgs.js +19 -0
  236. package/dist/commands/org/_utils/fetch-orgs.js.map +1 -0
  237. package/dist/commands/org/list.js +14 -0
  238. package/dist/commands/org/list.js.map +1 -0
  239. package/dist/commands/org/org.options.js +10 -0
  240. package/dist/commands/org/org.options.js.map +1 -0
  241. package/dist/commands/org/switch.js +37 -0
  242. package/dist/commands/org/switch.js.map +1 -0
  243. package/dist/commands/pr-link/_utils/is-commit-command.js +14 -0
  244. package/dist/commands/pr-link/_utils/is-commit-command.js.map +1 -0
  245. package/dist/commands/pr-link/_utils/record-commit-anchor.js +46 -0
  246. package/dist/commands/pr-link/_utils/record-commit-anchor.js.map +1 -0
  247. package/dist/commands/pr-link/index.js +74 -0
  248. package/dist/commands/pr-link/index.js.map +1 -0
  249. package/dist/commands/pr-link/pr-link.options.js +13 -0
  250. package/dist/commands/pr-link/pr-link.options.js.map +1 -0
  251. package/dist/commands/restore/index.js +27 -0
  252. package/dist/commands/restore/index.js.map +1 -0
  253. package/dist/commands/restore/restore.options.js +12 -0
  254. package/dist/commands/restore/restore.options.js.map +1 -0
  255. package/dist/{_utils → commands/search/_utils}/format-search-result.js +5 -4
  256. package/dist/commands/search/_utils/format-search-result.js.map +1 -0
  257. package/dist/commands/search/_utils/runtime-timezone.js +12 -0
  258. package/dist/commands/search/_utils/runtime-timezone.js.map +1 -0
  259. package/dist/commands/search/index.js +36 -0
  260. package/dist/commands/search/index.js.map +1 -0
  261. package/dist/commands/search/search.options.js +7 -0
  262. package/dist/commands/search/search.options.js.map +1 -0
  263. package/dist/commands/session-start/index.js +119 -0
  264. package/dist/commands/session-start/index.js.map +1 -0
  265. package/dist/commands/session-start/session-start.options.js +13 -0
  266. package/dist/commands/session-start/session-start.options.js.map +1 -0
  267. package/dist/commands/set-mode/index.js +38 -0
  268. package/dist/commands/set-mode/index.js.map +1 -0
  269. package/dist/commands/set-mode/set-mode.options.js +8 -0
  270. package/dist/commands/set-mode/set-mode.options.js.map +1 -0
  271. package/dist/commands/skill/_utils/download-file.js +28 -0
  272. package/dist/commands/skill/_utils/download-file.js.map +1 -0
  273. package/dist/commands/skill/_utils/explain-skill-error.js +31 -0
  274. package/dist/commands/skill/_utils/explain-skill-error.js.map +1 -0
  275. package/dist/commands/skill/_utils/skill-cache.js +136 -0
  276. package/dist/commands/skill/_utils/skill-cache.js.map +1 -0
  277. package/dist/commands/skill/create/_utils/pack-skill-dir.js +160 -0
  278. package/dist/commands/skill/create/_utils/pack-skill-dir.js.map +1 -0
  279. package/dist/commands/skill/create/index.js +108 -0
  280. package/dist/commands/skill/create/index.js.map +1 -0
  281. package/dist/commands/skill/search.js +38 -0
  282. package/dist/commands/skill/search.js.map +1 -0
  283. package/dist/commands/skill/share.js +52 -0
  284. package/dist/commands/skill/share.js.map +1 -0
  285. package/dist/commands/skill/skill.options.js +58 -0
  286. package/dist/commands/skill/skill.options.js.map +1 -0
  287. package/dist/commands/skill/use.js +72 -0
  288. package/dist/commands/skill/use.js.map +1 -0
  289. package/dist/commands/status/index.js +33 -0
  290. package/dist/commands/status/index.js.map +1 -0
  291. package/dist/commands/status/status.options.js +4 -0
  292. package/dist/commands/status/status.options.js.map +1 -0
  293. package/dist/commands/statusline/index.js +33 -0
  294. package/dist/commands/statusline/index.js.map +1 -0
  295. package/dist/commands/statusline/statusline.options.js +4 -0
  296. package/dist/commands/statusline/statusline.options.js.map +1 -0
  297. package/dist/commands/suggestions/index.js +36 -0
  298. package/dist/commands/suggestions/index.js.map +1 -0
  299. package/dist/commands/suggestions/suggestions.options.js +12 -0
  300. package/dist/commands/suggestions/suggestions.options.js.map +1 -0
  301. package/dist/commands/takeover/_utils/agent-paths.js +13 -7
  302. package/dist/commands/takeover/_utils/agent-paths.js.map +1 -1
  303. package/dist/commands/takeover/_utils/agent-process.js +111 -0
  304. package/dist/commands/takeover/_utils/agent-process.js.map +1 -0
  305. package/dist/commands/takeover/_utils/archive-codex-desktop-thread.js +17 -58
  306. package/dist/commands/takeover/_utils/archive-codex-desktop-thread.js.map +1 -1
  307. package/dist/commands/takeover/_utils/canonical-digest.js +2 -2
  308. package/dist/commands/takeover/_utils/canonical-digest.js.map +1 -1
  309. package/dist/commands/takeover/_utils/codex-desktop-recovery.js +77 -95
  310. package/dist/commands/takeover/_utils/codex-desktop-recovery.js.map +1 -1
  311. package/dist/commands/takeover/_utils/context-fit.js +7 -4
  312. package/dist/commands/takeover/_utils/context-fit.js.map +1 -1
  313. package/dist/commands/takeover/_utils/cursor-store.js +333 -281
  314. package/dist/commands/takeover/_utils/cursor-store.js.map +1 -1
  315. package/dist/commands/takeover/_utils/import-codex-desktop-thread.js +138 -282
  316. package/dist/commands/takeover/_utils/import-codex-desktop-thread.js.map +1 -1
  317. package/dist/commands/takeover/_utils/launch-desktop-url.js +19 -24
  318. package/dist/commands/takeover/_utils/launch-desktop-url.js.map +1 -1
  319. package/dist/commands/takeover/_utils/native-file.js +86 -73
  320. package/dist/commands/takeover/_utils/native-file.js.map +1 -1
  321. package/dist/commands/takeover/_utils/probe-agent.js +12 -9
  322. package/dist/commands/takeover/_utils/probe-agent.js.map +1 -1
  323. package/dist/commands/takeover/_utils/staged-session.js +18 -17
  324. package/dist/commands/takeover/_utils/staged-session.js.map +1 -1
  325. package/dist/commands/takeover/_utils/write-claude-session.js +10 -13
  326. package/dist/commands/takeover/_utils/write-claude-session.js.map +1 -1
  327. package/dist/commands/takeover/_utils/write-codex-desktop-session.js +39 -37
  328. package/dist/commands/takeover/_utils/write-codex-desktop-session.js.map +1 -1
  329. package/dist/commands/takeover/_utils/write-codex-session.js +34 -25
  330. package/dist/commands/takeover/_utils/write-codex-session.js.map +1 -1
  331. package/dist/commands/takeover/_utils/write-cursor-session.js +8 -19
  332. package/dist/commands/takeover/_utils/write-cursor-session.js.map +1 -1
  333. package/dist/commands/takeover/_utils/write-pi-session.js +34 -22
  334. package/dist/commands/takeover/_utils/write-pi-session.js.map +1 -1
  335. package/dist/commands/takeover/index.js +129 -164
  336. package/dist/commands/takeover/index.js.map +1 -1
  337. package/dist/commands/takeover/takeover.options.js +6 -0
  338. package/dist/commands/takeover/takeover.options.js.map +1 -0
  339. package/dist/commands/takeover/takeover.schema.js +17 -55
  340. package/dist/commands/takeover/takeover.schema.js.map +1 -1
  341. package/dist/commands/telemetry/index.js +33 -0
  342. package/dist/commands/telemetry/index.js.map +1 -0
  343. package/dist/commands/telemetry/send.js +7 -0
  344. package/dist/commands/telemetry/send.js.map +1 -0
  345. package/dist/commands/telemetry/telemetry.options.js +12 -0
  346. package/dist/commands/telemetry/telemetry.options.js.map +1 -0
  347. package/dist/commands/uninstall/_utils/purge-agent-plugins.js +58 -0
  348. package/dist/commands/uninstall/_utils/purge-agent-plugins.js.map +1 -0
  349. package/dist/commands/uninstall/_utils/purge-claude-statusline.js +51 -0
  350. package/dist/commands/uninstall/_utils/purge-claude-statusline.js.map +1 -0
  351. package/dist/commands/uninstall/_utils/purge-local-state.js +52 -0
  352. package/dist/commands/uninstall/_utils/purge-local-state.js.map +1 -0
  353. package/dist/commands/uninstall/index.js +138 -0
  354. package/dist/commands/uninstall/index.js.map +1 -0
  355. package/dist/commands/uninstall/uninstall.options.js +4 -0
  356. package/dist/commands/uninstall/uninstall.options.js.map +1 -0
  357. package/dist/commands/update/index.js +117 -0
  358. package/dist/commands/update/index.js.map +1 -0
  359. package/dist/commands/update/self-update.js +7 -0
  360. package/dist/commands/update/self-update.js.map +1 -0
  361. package/dist/commands/update/update.options.js +7 -0
  362. package/dist/commands/update/update.options.js.map +1 -0
  363. package/dist/core/errors/cli-error.js +22 -0
  364. package/dist/core/errors/cli-error.js.map +1 -0
  365. package/dist/core/errors/result.js +21 -0
  366. package/dist/core/errors/result.js.map +1 -0
  367. package/dist/core/errors/settle.js +18 -0
  368. package/dist/core/errors/settle.js.map +1 -0
  369. package/dist/core/json/is-record.js +3 -0
  370. package/dist/core/json/is-record.js.map +1 -0
  371. package/dist/core/json/json-field.js +5 -0
  372. package/dist/core/json/json-field.js.map +1 -0
  373. package/dist/core/json/jsonl-records.js +15 -0
  374. package/dist/core/json/jsonl-records.js.map +1 -0
  375. package/dist/core/json/parse-json.js +4 -0
  376. package/dist/core/json/parse-json.js.map +1 -0
  377. package/dist/core/run/cli-input.js +116 -0
  378. package/dist/core/run/cli-input.js.map +1 -0
  379. package/dist/core/run/hook-agents.js +4 -0
  380. package/dist/core/run/hook-agents.js.map +1 -0
  381. package/dist/{_utils → core/run}/normalize-boolean-flags.js +0 -1
  382. package/dist/core/run/normalize-boolean-flags.js.map +1 -0
  383. package/dist/core/run/run-hook.js +18 -0
  384. package/dist/core/run/run-hook.js.map +1 -0
  385. package/dist/core/run/run.js +16 -0
  386. package/dist/core/run/run.js.map +1 -0
  387. package/dist/core/state/credentials.js +34 -0
  388. package/dist/core/state/credentials.js.map +1 -0
  389. package/dist/core/state/ephemeral-session.js +11 -0
  390. package/dist/core/state/ephemeral-session.js.map +1 -0
  391. package/dist/core/state/glen-home.js +9 -0
  392. package/dist/core/state/glen-home.js.map +1 -0
  393. package/dist/core/state/ingest-heartbeat.js +56 -0
  394. package/dist/core/state/ingest-heartbeat.js.map +1 -0
  395. package/dist/core/state/install-receipt.js +174 -0
  396. package/dist/core/state/install-receipt.js.map +1 -0
  397. package/dist/core/state/session-map.js +22 -0
  398. package/dist/core/state/session-map.js.map +1 -0
  399. package/dist/core/state/state-line-memo.js +52 -0
  400. package/dist/core/state/state-line-memo.js.map +1 -0
  401. package/dist/{_utils → core/state}/state-line.js +1 -1
  402. package/dist/core/state/state-line.js.map +1 -0
  403. package/dist/core/state/state.js +51 -0
  404. package/dist/core/state/state.js.map +1 -0
  405. package/dist/core/system/env.js +74 -0
  406. package/dist/core/system/env.js.map +1 -0
  407. package/dist/core/system/files.js +102 -0
  408. package/dist/core/system/files.js.map +1 -0
  409. package/dist/core/system/glen-base-url.js +4 -0
  410. package/dist/core/system/glen-base-url.js.map +1 -0
  411. package/dist/core/system/http.js +146 -0
  412. package/dist/core/system/http.js.map +1 -0
  413. package/dist/core/system/run-program.js +55 -0
  414. package/dist/core/system/run-program.js.map +1 -0
  415. package/dist/core/system/sha256-hex.js +4 -0
  416. package/dist/core/system/sha256-hex.js.map +1 -0
  417. package/dist/{_utils → core/system}/shell-profile.js +43 -56
  418. package/dist/core/system/shell-profile.js.map +1 -0
  419. package/dist/core/system/spawn-detached.js +10 -0
  420. package/dist/core/system/spawn-detached.js.map +1 -0
  421. package/dist/core/system/spawn-self.js +5 -0
  422. package/dist/core/system/spawn-self.js.map +1 -0
  423. package/dist/core/system/sqlite.js +55 -0
  424. package/dist/core/system/sqlite.js.map +1 -0
  425. package/dist/core/system/version.js +16 -0
  426. package/dist/core/system/version.js.map +1 -0
  427. package/dist/core/telemetry/build-event.js +27 -0
  428. package/dist/core/telemetry/build-event.js.map +1 -0
  429. package/dist/core/telemetry/events-store.js +62 -0
  430. package/dist/core/telemetry/events-store.js.map +1 -0
  431. package/dist/core/telemetry/finish-telemetry.js +32 -0
  432. package/dist/core/telemetry/finish-telemetry.js.map +1 -0
  433. package/dist/core/telemetry/install-id.js +18 -0
  434. package/dist/core/telemetry/install-id.js.map +1 -0
  435. package/dist/core/telemetry/note-if-err.js +8 -0
  436. package/dist/core/telemetry/note-if-err.js.map +1 -0
  437. package/dist/core/telemetry/record-event.js +7 -0
  438. package/dist/core/telemetry/record-event.js.map +1 -0
  439. package/dist/core/telemetry/telemetry-context.js +10 -0
  440. package/dist/core/telemetry/telemetry-context.js.map +1 -0
  441. package/dist/core/telemetry/telemetry-settings.js +32 -0
  442. package/dist/core/telemetry/telemetry-settings.js.map +1 -0
  443. package/dist/core/terminal/attention-summary.js +14 -0
  444. package/dist/core/terminal/attention-summary.js.map +1 -0
  445. package/dist/core/terminal/out.js +86 -0
  446. package/dist/core/terminal/out.js.map +1 -0
  447. package/dist/core/terminal/prompt.js +34 -0
  448. package/dist/core/terminal/prompt.js.map +1 -0
  449. package/dist/core/terminal/read-hook-event.js +17 -0
  450. package/dist/core/terminal/read-hook-event.js.map +1 -0
  451. package/dist/core/terminal/read-stdin.js +23 -0
  452. package/dist/core/terminal/read-stdin.js.map +1 -0
  453. package/dist/jcode/plugin.json +1 -1
  454. package/dist/jcode/skills/feedback/SKILL.md +8 -8
  455. package/dist/jcode/skills/invite/SKILL.md +4 -4
  456. package/dist/jcode/skills/setup/SKILL.md +6 -4
  457. package/dist/macos/glen.app/Contents/MacOS/glen +0 -0
  458. package/package.json +16 -7
  459. package/dist/_utils/agent-adapter.d.ts +0 -9
  460. package/dist/_utils/agent-adapter.js +0 -49
  461. package/dist/_utils/agent-adapter.js.map +0 -1
  462. package/dist/_utils/agents-table.d.ts +0 -11
  463. package/dist/_utils/agents-table.js +0 -35
  464. package/dist/_utils/agents-table.js.map +0 -1
  465. package/dist/_utils/build-turn-body.d.ts +0 -17
  466. package/dist/_utils/build-turn-body.js.map +0 -1
  467. package/dist/_utils/cli-error.d.ts +0 -12
  468. package/dist/_utils/cli-error.js +0 -21
  469. package/dist/_utils/cli-error.js.map +0 -1
  470. package/dist/_utils/codex-app-server.d.ts +0 -11
  471. package/dist/_utils/codex-app-server.js +0 -94
  472. package/dist/_utils/codex-app-server.js.map +0 -1
  473. package/dist/_utils/codex-hooks-merge.d.ts +0 -22
  474. package/dist/_utils/codex-hooks-merge.js +0 -60
  475. package/dist/_utils/codex-hooks-merge.js.map +0 -1
  476. package/dist/_utils/codex-hooks-setup.d.ts +0 -14
  477. package/dist/_utils/codex-hooks-setup.js +0 -162
  478. package/dist/_utils/codex-hooks-setup.js.map +0 -1
  479. package/dist/_utils/codex-paths.d.ts +0 -5
  480. package/dist/_utils/codex-paths.js +0 -10
  481. package/dist/_utils/codex-paths.js.map +0 -1
  482. package/dist/_utils/codex-repair-trace.d.ts +0 -11
  483. package/dist/_utils/codex-repair-trace.js +0 -39
  484. package/dist/_utils/codex-repair-trace.js.map +0 -1
  485. package/dist/_utils/codex-rules-setup.d.ts +0 -4
  486. package/dist/_utils/codex-rules-setup.js +0 -34
  487. package/dist/_utils/codex-rules-setup.js.map +0 -1
  488. package/dist/_utils/codex-trust-toml.d.ts +0 -7
  489. package/dist/_utils/codex-trust-toml.js.map +0 -1
  490. package/dist/_utils/collect-import-files.d.ts +0 -4
  491. package/dist/_utils/collect-import-files.js +0 -50
  492. package/dist/_utils/collect-import-files.js.map +0 -1
  493. package/dist/_utils/config.d.ts +0 -45
  494. package/dist/_utils/config.js +0 -47
  495. package/dist/_utils/config.js.map +0 -1
  496. package/dist/_utils/confirm.d.ts +0 -7
  497. package/dist/_utils/confirm.js +0 -35
  498. package/dist/_utils/confirm.js.map +0 -1
  499. package/dist/_utils/credentials.d.ts +0 -15
  500. package/dist/_utils/credentials.js +0 -62
  501. package/dist/_utils/credentials.js.map +0 -1
  502. package/dist/_utils/detect-transcript-format.d.ts +0 -2
  503. package/dist/_utils/detect-transcript-format.js +0 -57
  504. package/dist/_utils/detect-transcript-format.js.map +0 -1
  505. package/dist/_utils/ensure-global-cli.d.ts +0 -4
  506. package/dist/_utils/ensure-global-cli.js.map +0 -1
  507. package/dist/_utils/ephemeral-session.d.ts +0 -2
  508. package/dist/_utils/ephemeral-session.js +0 -12
  509. package/dist/_utils/ephemeral-session.js.map +0 -1
  510. package/dist/_utils/extract-claude-segments.d.ts +0 -2
  511. package/dist/_utils/extract-claude-segments.js.map +0 -1
  512. package/dist/_utils/extract-codex-segments.d.ts +0 -2
  513. package/dist/_utils/extract-codex-segments.js +0 -65
  514. package/dist/_utils/extract-codex-segments.js.map +0 -1
  515. package/dist/_utils/extract-pi-segments.d.ts +0 -2
  516. package/dist/_utils/extract-pi-segments.js.map +0 -1
  517. package/dist/_utils/find-bin.d.ts +0 -7
  518. package/dist/_utils/find-bin.js +0 -89
  519. package/dist/_utils/find-bin.js.map +0 -1
  520. package/dist/_utils/format-search-result.d.ts +0 -2
  521. package/dist/_utils/format-search-result.js.map +0 -1
  522. package/dist/_utils/format-turn-nudges.d.ts +0 -2
  523. package/dist/_utils/format-turn-nudges.js.map +0 -1
  524. package/dist/_utils/git-context.d.ts +0 -13
  525. package/dist/_utils/git-context.js +0 -82
  526. package/dist/_utils/git-context.js.map +0 -1
  527. package/dist/_utils/git-hook-setup.d.ts +0 -18
  528. package/dist/_utils/git-hook-setup.js +0 -115
  529. package/dist/_utils/git-hook-setup.js.map +0 -1
  530. package/dist/_utils/glen-headers.d.ts +0 -8
  531. package/dist/_utils/glen-headers.js.map +0 -1
  532. package/dist/_utils/http.d.ts +0 -23
  533. package/dist/_utils/http.js +0 -97
  534. package/dist/_utils/http.js.map +0 -1
  535. package/dist/_utils/idempotency-key.d.ts +0 -2
  536. package/dist/_utils/idempotency-key.js +0 -7
  537. package/dist/_utils/idempotency-key.js.map +0 -1
  538. package/dist/_utils/indicator-app.d.ts +0 -9
  539. package/dist/_utils/indicator-app.js +0 -91
  540. package/dist/_utils/indicator-app.js.map +0 -1
  541. package/dist/_utils/indicator-health.d.ts +0 -8
  542. package/dist/_utils/indicator-health.js +0 -37
  543. package/dist/_utils/indicator-health.js.map +0 -1
  544. package/dist/_utils/ingest-diagnosis.d.ts +0 -24
  545. package/dist/_utils/ingest-diagnosis.js.map +0 -1
  546. package/dist/_utils/ingest-failure-memo.d.ts +0 -2
  547. package/dist/_utils/ingest-failure-memo.js +0 -58
  548. package/dist/_utils/ingest-failure-memo.js.map +0 -1
  549. package/dist/_utils/ingest-heartbeat.d.ts +0 -9
  550. package/dist/_utils/ingest-heartbeat.js +0 -48
  551. package/dist/_utils/ingest-heartbeat.js.map +0 -1
  552. package/dist/_utils/install-receipt.d.ts +0 -51
  553. package/dist/_utils/install-receipt.js +0 -202
  554. package/dist/_utils/install-receipt.js.map +0 -1
  555. package/dist/_utils/jcode-bundle.d.ts +0 -3
  556. package/dist/_utils/jcode-bundle.js +0 -16
  557. package/dist/_utils/jcode-bundle.js.map +0 -1
  558. package/dist/_utils/jcode-event.d.ts +0 -3
  559. package/dist/_utils/jcode-event.js +0 -66
  560. package/dist/_utils/jcode-event.js.map +0 -1
  561. package/dist/_utils/jcode-hook-lines.d.ts +0 -5
  562. package/dist/_utils/jcode-hook-lines.js.map +0 -1
  563. package/dist/_utils/jcode-hooks-toml.d.ts +0 -8
  564. package/dist/_utils/jcode-hooks-toml.js.map +0 -1
  565. package/dist/_utils/jcode-paths.d.ts +0 -7
  566. package/dist/_utils/jcode-paths.js +0 -10
  567. package/dist/_utils/jcode-paths.js.map +0 -1
  568. package/dist/_utils/jcode-setup.d.ts +0 -27
  569. package/dist/_utils/jcode-setup.js +0 -151
  570. package/dist/_utils/jcode-setup.js.map +0 -1
  571. package/dist/_utils/jcode-skills-sync.d.ts +0 -8
  572. package/dist/_utils/jcode-skills-sync.js +0 -74
  573. package/dist/_utils/jcode-skills-sync.js.map +0 -1
  574. package/dist/_utils/login-check.d.ts +0 -2
  575. package/dist/_utils/login-check.js +0 -57
  576. package/dist/_utils/login-check.js.map +0 -1
  577. package/dist/_utils/managed-block.d.ts +0 -4
  578. package/dist/_utils/managed-block.js.map +0 -1
  579. package/dist/_utils/normalize-boolean-flags.d.ts +0 -2
  580. package/dist/_utils/normalize-boolean-flags.js.map +0 -1
  581. package/dist/_utils/normalize-transcript-timestamp.d.ts +0 -2
  582. package/dist/_utils/normalize-transcript-timestamp.js.map +0 -1
  583. package/dist/_utils/npm-error-cause.d.ts +0 -5
  584. package/dist/_utils/npm-error-cause.js.map +0 -1
  585. package/dist/_utils/open-browser.d.ts +0 -2
  586. package/dist/_utils/open-browser.js +0 -18
  587. package/dist/_utils/open-browser.js.map +0 -1
  588. package/dist/_utils/parse-claude-transcript.d.ts +0 -3
  589. package/dist/_utils/parse-claude-transcript.js +0 -145
  590. package/dist/_utils/parse-claude-transcript.js.map +0 -1
  591. package/dist/_utils/parse-codex-transcript.d.ts +0 -3
  592. package/dist/_utils/parse-codex-transcript.js +0 -132
  593. package/dist/_utils/parse-codex-transcript.js.map +0 -1
  594. package/dist/_utils/parse-cursor-db.d.ts +0 -5
  595. package/dist/_utils/parse-cursor-db.js +0 -212
  596. package/dist/_utils/parse-cursor-db.js.map +0 -1
  597. package/dist/_utils/parse-harbor-atif.d.ts +0 -3
  598. package/dist/_utils/parse-harbor-atif.js.map +0 -1
  599. package/dist/_utils/parse-jcode-session.d.ts +0 -14
  600. package/dist/_utils/parse-jcode-session.js.map +0 -1
  601. package/dist/_utils/parse-pi-transcript.d.ts +0 -3
  602. package/dist/_utils/parse-pi-transcript.js +0 -164
  603. package/dist/_utils/parse-pi-transcript.js.map +0 -1
  604. package/dist/_utils/parse-transcript.d.ts +0 -14
  605. package/dist/_utils/parse-transcript.js +0 -94
  606. package/dist/_utils/parse-transcript.js.map +0 -1
  607. package/dist/_utils/plugin-status.d.ts +0 -4
  608. package/dist/_utils/plugin-status.js +0 -76
  609. package/dist/_utils/plugin-status.js.map +0 -1
  610. package/dist/_utils/post-route.d.ts +0 -6
  611. package/dist/_utils/post-route.js +0 -66
  612. package/dist/_utils/post-route.js.map +0 -1
  613. package/dist/_utils/pr-review-link.d.ts +0 -11
  614. package/dist/_utils/pr-review-link.js.map +0 -1
  615. package/dist/_utils/proactive-ticket-log.d.ts +0 -3
  616. package/dist/_utils/proactive-ticket-log.js +0 -21
  617. package/dist/_utils/proactive-ticket-log.js.map +0 -1
  618. package/dist/_utils/purge-agent-plugins.d.ts +0 -8
  619. package/dist/_utils/purge-agent-plugins.js +0 -62
  620. package/dist/_utils/purge-agent-plugins.js.map +0 -1
  621. package/dist/_utils/purge-claude-statusline.d.ts +0 -12
  622. package/dist/_utils/purge-claude-statusline.js +0 -57
  623. package/dist/_utils/purge-claude-statusline.js.map +0 -1
  624. package/dist/_utils/purge-local-state.d.ts +0 -7
  625. package/dist/_utils/purge-local-state.js +0 -40
  626. package/dist/_utils/purge-local-state.js.map +0 -1
  627. package/dist/_utils/record-commit-anchor.d.ts +0 -8
  628. package/dist/_utils/record-commit-anchor.js +0 -73
  629. package/dist/_utils/record-commit-anchor.js.map +0 -1
  630. package/dist/_utils/refresh-control-state.d.ts +0 -6
  631. package/dist/_utils/refresh-control-state.js +0 -30
  632. package/dist/_utils/refresh-control-state.js.map +0 -1
  633. package/dist/_utils/render-callback-page.d.ts +0 -2
  634. package/dist/_utils/render-callback-page.js +0 -90
  635. package/dist/_utils/render-callback-page.js.map +0 -1
  636. package/dist/_utils/report-cli-install.d.ts +0 -2
  637. package/dist/_utils/report-cli-install.js +0 -17
  638. package/dist/_utils/report-cli-install.js.map +0 -1
  639. package/dist/_utils/resolve-import-workspace.d.ts +0 -4
  640. package/dist/_utils/resolve-import-workspace.js.map +0 -1
  641. package/dist/_utils/result.d.ts +0 -14
  642. package/dist/_utils/result.js +0 -12
  643. package/dist/_utils/result.js.map +0 -1
  644. package/dist/_utils/run-bin.d.ts +0 -14
  645. package/dist/_utils/run-bin.js +0 -60
  646. package/dist/_utils/run-bin.js.map +0 -1
  647. package/dist/_utils/runtime-timezone.d.ts +0 -1
  648. package/dist/_utils/runtime-timezone.js +0 -13
  649. package/dist/_utils/runtime-timezone.js.map +0 -1
  650. package/dist/_utils/session-map.d.ts +0 -4
  651. package/dist/_utils/session-map.js +0 -38
  652. package/dist/_utils/session-map.js.map +0 -1
  653. package/dist/_utils/shell-profile.d.ts +0 -13
  654. package/dist/_utils/shell-profile.js.map +0 -1
  655. package/dist/_utils/state-line-memo.d.ts +0 -2
  656. package/dist/_utils/state-line-memo.js +0 -47
  657. package/dist/_utils/state-line-memo.js.map +0 -1
  658. package/dist/_utils/state-line.d.ts +0 -3
  659. package/dist/_utils/state-line.js.map +0 -1
  660. package/dist/_utils/state.d.ts +0 -15
  661. package/dist/_utils/state.js +0 -53
  662. package/dist/_utils/state.js.map +0 -1
  663. package/dist/_utils/sync-mode-from-server.d.ts +0 -3
  664. package/dist/_utils/sync-mode-from-server.js +0 -44
  665. package/dist/_utils/sync-mode-from-server.js.map +0 -1
  666. package/dist/_utils/transcript-turns.d.ts +0 -51
  667. package/dist/_utils/transcript-turns.js.map +0 -1
  668. package/dist/_utils/turn-cache.d.ts +0 -7
  669. package/dist/_utils/turn-cache.js +0 -56
  670. package/dist/_utils/turn-cache.js.map +0 -1
  671. package/dist/_utils/update.d.ts +0 -19
  672. package/dist/_utils/update.js +0 -196
  673. package/dist/_utils/update.js.map +0 -1
  674. package/dist/_utils/version.d.ts +0 -2
  675. package/dist/_utils/version.js +0 -18
  676. package/dist/_utils/version.js.map +0 -1
  677. package/dist/_utils/which.d.ts +0 -2
  678. package/dist/_utils/which.js +0 -4
  679. package/dist/_utils/which.js.map +0 -1
  680. package/dist/_utils/write-commit-trailer.d.ts +0 -2
  681. package/dist/_utils/write-commit-trailer.js +0 -25
  682. package/dist/_utils/write-commit-trailer.js.map +0 -1
  683. package/dist/bin.d.ts +0 -2
  684. package/dist/commands/_utils/materialize-skill.d.ts +0 -30
  685. package/dist/commands/_utils/materialize-skill.js +0 -207
  686. package/dist/commands/_utils/materialize-skill.js.map +0 -1
  687. package/dist/commands/_utils/mutate-evidence.d.ts +0 -17
  688. package/dist/commands/_utils/mutate-evidence.js +0 -80
  689. package/dist/commands/_utils/mutate-evidence.js.map +0 -1
  690. package/dist/commands/_utils/pack-skill-dir.d.ts +0 -15
  691. package/dist/commands/_utils/pack-skill-dir.js +0 -169
  692. package/dist/commands/_utils/pack-skill-dir.js.map +0 -1
  693. package/dist/commands/artifact.d.ts +0 -18
  694. package/dist/commands/artifact.js +0 -139
  695. package/dist/commands/artifact.js.map +0 -1
  696. package/dist/commands/code-search.d.ts +0 -4
  697. package/dist/commands/code-search.js +0 -164
  698. package/dist/commands/code-search.js.map +0 -1
  699. package/dist/commands/dependency.d.ts +0 -4
  700. package/dist/commands/dependency.js +0 -23
  701. package/dist/commands/dependency.js.map +0 -1
  702. package/dist/commands/doctor.d.ts +0 -7
  703. package/dist/commands/doctor.js +0 -243
  704. package/dist/commands/doctor.js.map +0 -1
  705. package/dist/commands/feedback.d.ts +0 -15
  706. package/dist/commands/feedback.js +0 -112
  707. package/dist/commands/feedback.js.map +0 -1
  708. package/dist/commands/forget.d.ts +0 -4
  709. package/dist/commands/forget.js +0 -29
  710. package/dist/commands/forget.js.map +0 -1
  711. package/dist/commands/git-hooks.d.ts +0 -9
  712. package/dist/commands/git-hooks.js +0 -18
  713. package/dist/commands/git-hooks.js.map +0 -1
  714. package/dist/commands/import.d.ts +0 -8
  715. package/dist/commands/import.js +0 -414
  716. package/dist/commands/import.js.map +0 -1
  717. package/dist/commands/incognito.d.ts +0 -4
  718. package/dist/commands/incognito.js +0 -13
  719. package/dist/commands/incognito.js.map +0 -1
  720. package/dist/commands/indicator.d.ts +0 -4
  721. package/dist/commands/indicator.js +0 -65
  722. package/dist/commands/indicator.js.map +0 -1
  723. package/dist/commands/ingest.d.ts +0 -3
  724. package/dist/commands/ingest.js +0 -367
  725. package/dist/commands/ingest.js.map +0 -1
  726. package/dist/commands/install.d.ts +0 -9
  727. package/dist/commands/install.js +0 -431
  728. package/dist/commands/install.js.map +0 -1
  729. package/dist/commands/invite.d.ts +0 -4
  730. package/dist/commands/invite.js +0 -61
  731. package/dist/commands/invite.js.map +0 -1
  732. package/dist/commands/login.d.ts +0 -4
  733. package/dist/commands/login.js +0 -145
  734. package/dist/commands/login.js.map +0 -1
  735. package/dist/commands/logout.d.ts +0 -4
  736. package/dist/commands/logout.js +0 -26
  737. package/dist/commands/logout.js.map +0 -1
  738. package/dist/commands/onboard.d.ts +0 -4
  739. package/dist/commands/onboard.js +0 -18
  740. package/dist/commands/onboard.js.map +0 -1
  741. package/dist/commands/org.d.ts +0 -5
  742. package/dist/commands/org.js +0 -157
  743. package/dist/commands/org.js.map +0 -1
  744. package/dist/commands/pr-link.d.ts +0 -2
  745. package/dist/commands/pr-link.js +0 -69
  746. package/dist/commands/pr-link.js.map +0 -1
  747. package/dist/commands/restore.d.ts +0 -4
  748. package/dist/commands/restore.js +0 -23
  749. package/dist/commands/restore.js.map +0 -1
  750. package/dist/commands/search.d.ts +0 -4
  751. package/dist/commands/search.js +0 -85
  752. package/dist/commands/search.js.map +0 -1
  753. package/dist/commands/session-start.d.ts +0 -2
  754. package/dist/commands/session-start.js +0 -114
  755. package/dist/commands/session-start.js.map +0 -1
  756. package/dist/commands/set-mode.d.ts +0 -5
  757. package/dist/commands/set-mode.js +0 -96
  758. package/dist/commands/set-mode.js.map +0 -1
  759. package/dist/commands/skill.d.ts +0 -18
  760. package/dist/commands/skill.js +0 -309
  761. package/dist/commands/skill.js.map +0 -1
  762. package/dist/commands/status.d.ts +0 -4
  763. package/dist/commands/status.js +0 -33
  764. package/dist/commands/status.js.map +0 -1
  765. package/dist/commands/statusline.d.ts +0 -2
  766. package/dist/commands/statusline.js +0 -37
  767. package/dist/commands/statusline.js.map +0 -1
  768. package/dist/commands/suggestions.d.ts +0 -4
  769. package/dist/commands/suggestions.js +0 -84
  770. package/dist/commands/suggestions.js.map +0 -1
  771. package/dist/commands/takeover/_utils/agent-paths.d.ts +0 -6
  772. package/dist/commands/takeover/_utils/archive-codex-desktop-thread.d.ts +0 -5
  773. package/dist/commands/takeover/_utils/canonical-digest.d.ts +0 -5
  774. package/dist/commands/takeover/_utils/codex-desktop-recovery.d.ts +0 -16
  775. package/dist/commands/takeover/_utils/context-fit.d.ts +0 -18
  776. package/dist/commands/takeover/_utils/cursor-store.d.ts +0 -49
  777. package/dist/commands/takeover/_utils/import-codex-desktop-thread.d.ts +0 -14
  778. package/dist/commands/takeover/_utils/launch-desktop-url.d.ts +0 -4
  779. package/dist/commands/takeover/_utils/native-file.d.ts +0 -14
  780. package/dist/commands/takeover/_utils/probe-agent.d.ts +0 -20
  781. package/dist/commands/takeover/_utils/provenance-context.d.ts +0 -7
  782. package/dist/commands/takeover/_utils/staged-session.d.ts +0 -64
  783. package/dist/commands/takeover/_utils/write-claude-desktop-session.d.ts +0 -47
  784. package/dist/commands/takeover/_utils/write-claude-session.d.ts +0 -53
  785. package/dist/commands/takeover/_utils/write-codex-desktop-session.d.ts +0 -96
  786. package/dist/commands/takeover/_utils/write-codex-session.d.ts +0 -52
  787. package/dist/commands/takeover/_utils/write-cursor-session.d.ts +0 -57
  788. package/dist/commands/takeover/_utils/write-pi-session.d.ts +0 -52
  789. package/dist/commands/takeover/index.d.ts +0 -21
  790. package/dist/commands/takeover/takeover.schema.d.ts +0 -24
  791. package/dist/commands/uninstall.d.ts +0 -8
  792. package/dist/commands/uninstall.js +0 -130
  793. package/dist/commands/uninstall.js.map +0 -1
  794. package/dist/commands/update.d.ts +0 -4
  795. package/dist/commands/update.js +0 -127
  796. package/dist/commands/update.js.map +0 -1
  797. package/dist/jcode/skills/session-takeover/SKILL.md +0 -67
  798. /package/dist/{_utils → clients/agents}/normalize-transcript-timestamp.js +0 -0
@@ -1,114 +0,0 @@
1
- import { spawn } from "node:child_process";
2
- import { config } from "../_utils/config.js";
3
- import { readCredentials } from "../_utils/credentials.js";
4
- import { isEphemeralSession } from "../_utils/ephemeral-session.js";
5
- import { recordHeartbeatRun } from "../_utils/ingest-heartbeat.js";
6
- import { jcodeSessionStartEvent } from "../_utils/jcode-event.js";
7
- import { refreshControlState } from "../_utils/refresh-control-state.js";
8
- import { recordSession } from "../_utils/session-map.js";
9
- import { rememberStateLine } from "../_utils/state-line-memo.js";
10
- import { formatStateLine } from "../_utils/state-line.js";
11
- import { readState } from "../_utils/state.js";
12
- const readStdin = async () => {
13
- if (process.stdin.isTTY)
14
- return ""; // manual run in a terminal — don't hang
15
- const chunks = [];
16
- for await (const chunk of process.stdin)
17
- chunks.push(chunk);
18
- return Buffer.concat(chunks).toString("utf8");
19
- };
20
- const spawnDoctorAuto = () => {
21
- try {
22
- const c = spawn(process.execPath, [process.argv[1] ?? "glen", "doctor", "--auto"], { detached: true, stdio: "ignore" });
23
- c.on("error", () => { });
24
- c.unref();
25
- }
26
- catch { }
27
- };
28
- const sessionStart = async (agent) => {
29
- const stdinRaw = await readStdin().catch(() => "");
30
- const event = agent === "jcode"
31
- ? jcodeSessionStartEvent(process.env)
32
- : (() => {
33
- try {
34
- return JSON.parse(stdinRaw);
35
- }
36
- catch {
37
- return null;
38
- }
39
- })();
40
- // Ephemeral session: stay silent (stdout leaks into the parent orchestrator),
41
- // and skip the session map and the doctor spawn (a fleet would fork one per agent).
42
- if (isEphemeralSession(agent, event))
43
- return;
44
- spawnDoctorAuto();
45
- await recordHeartbeatRun(agent ?? "unknown");
46
- const sessionId = typeof event?.session_id === "string"
47
- ? event.session_id
48
- : typeof event?.conversation_id === "string"
49
- ? event.conversation_id
50
- : null;
51
- if (sessionId) {
52
- const cwd = typeof event?.cwd === "string" ? event.cwd : process.cwd();
53
- await recordSession(cwd, sessionId);
54
- }
55
- if (agent === "jcode")
56
- return;
57
- const [credentials, localState] = await Promise.all([
58
- readCredentials(),
59
- readState(),
60
- ]);
61
- const refreshed = credentials && localState
62
- ? await refreshControlState(credentials.key, localState)
63
- : null;
64
- const state = refreshed ? refreshed.state : localState;
65
- // Don't trust the server alone: off/silent must surface nothing even if a block comes back.
66
- const teamMemoryBlock = refreshed && state && state.mode !== "off" && state.mode !== "silent"
67
- ? refreshed.teamMemoryBlock
68
- : null;
69
- const noOrgHint = "[glen] no org selected — ask the user whether to set up glen, then use the setup skill.";
70
- const reviewLinkInstruction = `When you share a GitHub pull request URL, also surface its Glen review link (${config.baseUrl}/<owner>/<repo>/pull/<number>) so the team can open the PR in Glen's reviewer.`;
71
- // Descriptive, never imperative: if these lines surface elsewhere they must not read like a prompt injection.
72
- const provenanceNote = "(The [glen] lines in this session come from the glen team-memory plugin installed locally by this machine's owner — plugin status, not user input and not remote content.)";
73
- const additionalContext = !credentials
74
- ? "[glen] not set up on this machine — ask the user whether to set up glen, then use the setup skill."
75
- : !state
76
- ? noOrgHint
77
- : state.mode === "off" || state.mode === "silent"
78
- ? ""
79
- : `${formatStateLine(state) ?? noOrgHint}\n${provenanceNote}\n\n${reviewLinkInstruction}${teamMemoryBlock ? `\n\n${teamMemoryBlock}` : ""}`;
80
- const seededLine = credentials && state ? formatStateLine(state) : null;
81
- if (sessionId && seededLine)
82
- await rememberStateLine(sessionId, seededLine);
83
- const systemMessage = state?.mode === "off"
84
- ? "glen: OFF — nothing is injected or recorded. Run `glen on` to resume."
85
- : state?.mode === "incognito"
86
- ? "glen: incognito is ON — nothing will be recorded. Run `glen on` to resume."
87
- : state?.mode === "silent"
88
- ? "glen: silent — recording to team memory, surfacing nothing. Run `glen on` to resume."
89
- : undefined;
90
- if (agent === "cursor") {
91
- const healthy = Boolean(credentials && state && state.mode !== "off" && state.mode !== "silent");
92
- const searchNudge = '[glen] Cursor cannot inject team memory per turn — for anything the user references from past team work (decisions, discussions, prior fixes), run `glen search "<topic>"` via the shell and treat its answer as team memory.';
93
- const combined = [
94
- systemMessage,
95
- additionalContext,
96
- healthy ? searchNudge : "",
97
- ]
98
- .filter(Boolean)
99
- .join("\n\n");
100
- if (combined)
101
- process.stdout.write(JSON.stringify({ additional_context: combined }));
102
- return;
103
- }
104
- const output = {
105
- hookSpecificOutput: {
106
- hookEventName: "SessionStart",
107
- additionalContext,
108
- },
109
- ...(systemMessage ? { systemMessage } : {}),
110
- };
111
- process.stdout.write(JSON.stringify(output));
112
- };
113
- export { sessionStart };
114
- //# sourceMappingURL=session-start.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-start.js","sourceRoot":"","sources":["../../src/commands/session-start.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { type CliError } from "../_utils/cli-error.js";
2
- import { type Result } from "../_utils/result.js";
3
- import { type GlenMode } from "../_utils/state.js";
4
- declare const setMode: (mode: GlenMode) => Promise<Result<void, CliError>>;
5
- export { setMode };
@@ -1,96 +0,0 @@
1
- import { causeOf, cliErr } from "../_utils/cli-error.js";
2
- import { config } from "../_utils/config.js";
3
- import { readCredentials } from "../_utils/credentials.js";
4
- import { buildGlenHeaders } from "../_utils/glen-headers.js";
5
- import { httpJson, networkRemedy } from "../_utils/http.js";
6
- import { err, ok } from "../_utils/result.js";
7
- import { readState, statePath, writeState, } from "../_utils/state.js";
8
- import { handle426AndReexec } from "../_utils/update.js";
9
- import { cliVersion } from "../_utils/version.js";
10
- const confirmation = {
11
- on: "🏔️ glen is ON — injecting context and recording (account-wide).\n",
12
- off: "🏔️ glen is OFF — nothing is injected or recorded on any machine or agent until you run `glen on`.\n",
13
- incognito: "🏔️ Incognito ON — glen keeps recalling but records nothing, on every machine and agent, until you run `glen on`. Admin analytics still count your prompts as content-free numbers — never what you did.\n",
14
- silent: "🏔️ Silent ON — glen keeps recording but surfaces nothing (no recall, no suggestions, no search results), on every machine and agent, until you run `glen on`.\n",
15
- };
16
- // The server is the source of truth. Fail (mode unchanged) when it can't be reached:
17
- // local state must never claim a mode the server doesn't enforce.
18
- const pushServerPreference = async (state, mode) => {
19
- const creds = await readCredentials();
20
- if (!creds)
21
- return err(cliErr({ what: "not connected", remedy: "run `glen login` first" }));
22
- const res = await httpJson(config.setRecordingUrl, {
23
- method: "POST",
24
- headers: {
25
- "content-type": "application/json",
26
- ...buildGlenHeaders({ key: creds.key, state, version: cliVersion }),
27
- },
28
- body: JSON.stringify({ mode }),
29
- timeoutMs: config.setRecordingTimeoutMs,
30
- });
31
- if (!res.ok)
32
- return err(cliErr({
33
- what: "could not update the recording preference — mode unchanged",
34
- why: res.error.detail,
35
- remedy: networkRemedy(res.error),
36
- }));
37
- if (res.value.status === 426)
38
- handle426AndReexec(process.argv.slice(2));
39
- if (res.value.status === 401 || res.value.status === 403) {
40
- if (res.value.rawText.includes("no active organization"))
41
- return err(cliErr({
42
- what: "no active organization",
43
- remedy: "run `glen org switch`",
44
- }));
45
- return err(cliErr({
46
- what: "your connection expired",
47
- remedy: "run `glen login` to reconnect",
48
- }));
49
- }
50
- if (!res.value.isOk)
51
- return err(cliErr({
52
- what: `could not update the recording preference (HTTP ${res.value.status}) — mode unchanged`,
53
- why: res.value.rawText.slice(0, 200) || `HTTP ${res.value.status}`,
54
- remedy: "try again in a minute — if it persists, check https://tryglen.com/status",
55
- }));
56
- const d = res.value.json;
57
- const acceptedMode = d?.mode === "on" ||
58
- d?.mode === "off" ||
59
- d?.mode === "incognito" ||
60
- d?.mode === "silent"
61
- ? d.mode
62
- : mode;
63
- return ok({
64
- mode: acceptedMode,
65
- updatedAt: typeof d?.updatedAt === "string" ? d.updatedAt : null,
66
- });
67
- };
68
- const setMode = async (mode) => {
69
- const current = await readState();
70
- if (!current)
71
- return err(cliErr({
72
- what: "no active organization",
73
- remedy: "run `glen org switch` (or `glen login`) first",
74
- }));
75
- const pushed = await pushServerPreference(current, mode);
76
- if (!pushed.ok)
77
- return pushed;
78
- const w = await writeState({
79
- ...current,
80
- mode: pushed.value.mode,
81
- ...(pushed.value.updatedAt !== null
82
- ? { modeUpdatedAt: pushed.value.updatedAt }
83
- : {}),
84
- });
85
- if (!w.ok)
86
- return err(cliErr({
87
- what: "could not save glen mode",
88
- why: causeOf(w.error),
89
- path: statePath(),
90
- remedy: "check ownership of ~/.glen (e.g. `sudo chown -R $USER ~/.glen`) and retry",
91
- }));
92
- process.stdout.write(confirmation[mode]);
93
- return ok(undefined);
94
- };
95
- export { setMode };
96
- //# sourceMappingURL=set-mode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"set-mode.js","sourceRoot":"","sources":["../../src/commands/set-mode.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { type CliError } from "../_utils/cli-error.js";
2
- import { type Result } from "../_utils/result.js";
3
- declare const skillSearch: (query: string | undefined, by: string | undefined) => Promise<Result<void, CliError>>;
4
- declare const skillUse: (slug: string | undefined) => Promise<Result<void, CliError>>;
5
- declare const skillCreate: (opts: {
6
- name: string | undefined;
7
- description: string | undefined;
8
- file: string | undefined;
9
- dir?: string;
10
- deps?: string;
11
- update?: boolean;
12
- org?: boolean;
13
- }) => Promise<Result<void, CliError>>;
14
- declare const skillShare: (slug: string | undefined, opts: {
15
- with: string | undefined;
16
- org: boolean;
17
- }) => Promise<Result<void, CliError>>;
18
- export { skillSearch, skillUse, skillCreate, skillShare };
@@ -1,309 +0,0 @@
1
- import { readFile } from "node:fs/promises";
2
- import { cliErr } from "../_utils/cli-error.js";
3
- import { config } from "../_utils/config.js";
4
- import { postRoute } from "../_utils/post-route.js";
5
- import { err, ok } from "../_utils/result.js";
6
- import { readSessionForCwd } from "../_utils/session-map.js";
7
- import { buildCachedMap, materializeSkill, removeSkillDir, skillsBaseDir, substituteSkillDir, } from "./_utils/materialize-skill.js";
8
- import { packSkillDir } from "./_utils/pack-skill-dir.js";
9
- const skillSearch = async (query, by) => {
10
- const body = {};
11
- if (query?.trim())
12
- body.query = query.trim();
13
- if (by?.trim())
14
- body.createdBy = by.trim();
15
- const res = await postRoute(config.skillSearchUrl, body);
16
- if (!res.ok)
17
- return res;
18
- const results = res.value.results ?? [];
19
- if (results.length === 0) {
20
- process.stdout.write("glen: no matching skills. Try a broader query, or create one with `glen skill create`.\n");
21
- return ok(undefined);
22
- }
23
- for (const s of results) {
24
- const uses = `${s.orgUseCount} use${s.orgUseCount === 1 ? "" : "s"}`;
25
- process.stdout.write(`${s.name} [${s.slug}] · by ${s.author?.name ?? "unknown"} · ${uses}\n ${s.description}\n`);
26
- if (s.subskills?.length)
27
- process.stdout.write(` ↳ pulls in: ${s.subskills.map((r) => `${r.name} [${r.slug}]`).join(", ")}\n`);
28
- if (s.referencedBy?.length)
29
- process.stdout.write(` ↰ referenced by: ${s.referencedBy.map((r) => `${r.name} [${r.slug}]`).join(", ")}\n`);
30
- }
31
- process.stdout.write("\nRun one with: glen skill use <slug>\n");
32
- return ok(undefined);
33
- };
34
- const asSkillManifestFile = (v) => {
35
- if (!v || typeof v !== "object")
36
- return null;
37
- const f = v;
38
- if (typeof f.path !== "string" ||
39
- typeof f.isExecutable !== "boolean" ||
40
- typeof f.contentType !== "string")
41
- return null;
42
- if (typeof f.content === "string")
43
- return {
44
- path: f.path,
45
- isExecutable: f.isExecutable,
46
- contentType: f.contentType,
47
- content: f.content,
48
- };
49
- if (typeof f.url === "string")
50
- return {
51
- path: f.path,
52
- isExecutable: f.isExecutable,
53
- contentType: f.contentType,
54
- url: f.url,
55
- };
56
- return null;
57
- };
58
- const asSkillManifest = (v) => {
59
- if (typeof v.slug !== "string" ||
60
- typeof v.name !== "string" ||
61
- typeof v.content !== "string" ||
62
- typeof v.updatedAt !== "string")
63
- return null;
64
- const author = v.author;
65
- if (!author || typeof author.name !== "string")
66
- return null;
67
- if (!Array.isArray(v.files))
68
- return null;
69
- const files = v.files.map(asSkillManifestFile);
70
- if (files.some((f) => f === null))
71
- return null;
72
- return {
73
- slug: v.slug,
74
- name: v.name,
75
- content: v.content,
76
- updatedAt: v.updatedAt,
77
- author: { name: author.name },
78
- files: files,
79
- };
80
- };
81
- const materializePrefetchEntries = async (prefetch, baseDir) => {
82
- if (!Array.isArray(prefetch))
83
- return;
84
- await Promise.all(prefetch.map(async (entry) => {
85
- if (!entry || typeof entry !== "object")
86
- return;
87
- const manifest = asSkillManifest(entry);
88
- if (!manifest)
89
- return;
90
- // Best-effort, but say so on stderr: stdout is the skill text the agent reads.
91
- const materialized = await materializeSkill(manifest, baseDir);
92
- if (!materialized.ok)
93
- process.stderr.write(`glen: could not cache the prefetched skill "${manifest.slug}" — ${materialized.error.what}\n`);
94
- }));
95
- };
96
- const formatProvenance = (name, authorName, updatedAt) => `> Glen skill "${name}" by ${authorName}, updated ${updatedAt.slice(0, 10)}\n\n`;
97
- const provenanceFor = (body) => {
98
- const author = body.author;
99
- if (typeof body.name !== "string" || typeof body.updatedAt !== "string")
100
- return null;
101
- if (!author || typeof author.name !== "string")
102
- return null;
103
- return formatProvenance(body.name, author.name, body.updatedAt);
104
- };
105
- const printRootSkillResponse = async (body, baseDir) => {
106
- const hasFiles = Array.isArray(body.files) && body.files.length > 0;
107
- if (!hasFiles) {
108
- // Remove files left from a previous version: nothing else clears this dir,
109
- // and its stale .glen-meta.json would keep claiming it's cached.
110
- if (typeof body.slug === "string")
111
- await removeSkillDir(baseDir, body.slug);
112
- const content = body.content;
113
- if (typeof content !== "string" || !content.trim()) {
114
- process.stdout.write("glen: that skill has no content.\n");
115
- return ok(undefined);
116
- }
117
- const provenance = provenanceFor(body);
118
- if (provenance)
119
- process.stdout.write(provenance);
120
- process.stdout.write(`${content}\n`);
121
- return ok(undefined);
122
- }
123
- const manifest = asSkillManifest(body);
124
- if (!manifest)
125
- return err(cliErr({
126
- what: "glen returned an unexpected skill response",
127
- remedy: "try again — if it persists, check https://tryglen.com/status",
128
- }));
129
- const materialized = await materializeSkill(manifest, baseDir);
130
- if (!materialized.ok)
131
- return materialized;
132
- process.stdout.write(formatProvenance(manifest.name, manifest.author.name, manifest.updatedAt));
133
- process.stdout.write(`${substituteSkillDir(manifest.content, materialized.value)}\n`);
134
- return ok(undefined);
135
- };
136
- const skillUse = async (slug) => {
137
- if (!slug?.trim())
138
- return err(cliErr({
139
- what: "missing skill slug",
140
- remedy: "usage: glen skill use <slug> (find slugs with `glen skill search`)",
141
- }));
142
- const conversationId = await readSessionForCwd(process.cwd());
143
- const baseDir = skillsBaseDir();
144
- const cached = await buildCachedMap(baseDir);
145
- const res = await postRoute(config.skillUseUrl, {
146
- slug: slug.trim(),
147
- ...(conversationId ? { conversationId } : {}),
148
- ...(Object.keys(cached).length > 0 ? { cached } : {}),
149
- });
150
- if (!res.ok)
151
- return res;
152
- await materializePrefetchEntries(res.value.prefetch, baseDir);
153
- const printed = await printRootSkillResponse(res.value, baseDir);
154
- if (!printed.ok)
155
- return printed;
156
- const deps = res.value.dependencies;
157
- if (deps?.length) {
158
- process.stdout.write("\n## Requirements\n");
159
- for (const d of deps)
160
- process.stdout.write(`- ${d.name} (${d.kind}) — ${d.description} — ${d.sourceUrl}\n`);
161
- }
162
- return ok(undefined);
163
- };
164
- const skillCreate = async (opts) => {
165
- const hasFile = Boolean(opts.file?.trim());
166
- const hasDir = Boolean(opts.dir?.trim());
167
- if (!opts.name?.trim() || !opts.description?.trim() || (!hasFile && !hasDir))
168
- return err(cliErr({
169
- what: "missing required fields",
170
- remedy: 'usage: glen skill create --name "<name>" --description "<one-line>" (--file <path-to-SKILL.md> | --dir <path-to-skill-directory>) [--update] [--org]',
171
- }));
172
- if (hasFile && hasDir)
173
- return err(cliErr({
174
- what: "--file and --dir are mutually exclusive",
175
- remedy: "pass either --file <path-to-SKILL.md> or --dir <path-to-skill-directory>, not both",
176
- }));
177
- const body = await buildCreateBody(opts);
178
- if (!body.ok)
179
- return body;
180
- const depsResult = await readDepsFile(opts.deps);
181
- if (!depsResult.ok)
182
- return depsResult;
183
- const res = await postRoute(config.skillCreateUrl, {
184
- name: opts.name.trim(),
185
- description: opts.description.trim(),
186
- ...body.value,
187
- ...(depsResult.value ? { dependencies: depsResult.value } : {}),
188
- ...(opts.update ? { update: true } : {}),
189
- // Send only when set: the server treats a missing flag as "keep current sharing".
190
- ...(opts.org ? { org: true } : {}),
191
- });
192
- if (!res.ok)
193
- return res;
194
- const rawSlug = res.value.slug;
195
- const slug = typeof rawSlug === "string" ? rawSlug : opts.name.trim();
196
- const verb = res.value.updated === true ? "updated" : "saved";
197
- const visibility = res.value.sharedWithOrg === true
198
- ? "shared with your org"
199
- : `private to you. Share it with \`glen skill share ${slug} --org\` or --with <email>`;
200
- process.stdout.write(`glen: ${verb} skill "${slug}" — ${visibility}.\n`);
201
- return ok(undefined);
202
- };
203
- const skillShare = async (slug, opts) => {
204
- if (!slug?.trim())
205
- return err(cliErr({
206
- what: "missing skill slug",
207
- remedy: "usage: glen skill share <slug> [--with <email>[,<email>…]] [--org]",
208
- }));
209
- const emails = (opts.with ?? "")
210
- .split(",")
211
- .map((e) => e.trim())
212
- .filter(Boolean);
213
- if (emails.length === 0 && !opts.org)
214
- return err(cliErr({
215
- what: "nothing to share",
216
- remedy: "pass --with <email>[,<email>…] to add teammates and/or --org for the whole org",
217
- }));
218
- const res = await postRoute(config.skillShareUrl, {
219
- slug: slug.trim(),
220
- ...(emails.length > 0 ? { emails } : {}),
221
- ...(opts.org ? { org: true } : {}),
222
- });
223
- if (!res.ok)
224
- return res;
225
- const count = Number(res.value.recipientCount ?? 0);
226
- const visibility = res.value.sharedWithOrg === true
227
- ? "the whole org"
228
- : count > 0
229
- ? `${count} teammate${count === 1 ? "" : "s"}`
230
- : "only you";
231
- process.stdout.write(`glen: skill "${String(res.value.slug)}" is now visible to ${visibility}. Manage sharing: ${config.baseUrl}/dynamic-skills/${encodeURIComponent(String(res.value.slug))}\n`);
232
- const subskillCount = Number(res.value.sharedSubskillCount ?? 0);
233
- if (subskillCount > 0)
234
- process.stdout.write(`glen: also shared ${subskillCount} subskill${subskillCount === 1 ? "" : "s"} it references.\n`);
235
- const foreignPrivate = res.value.foreignPrivate;
236
- if (foreignPrivate?.length)
237
- process.stdout.write(`glen: couldn't share ${foreignPrivate.length} (not yours): ${foreignPrivate
238
- .map((s) => `${s.name} (by ${s.ownerName})`)
239
- .join(", ")}\n`);
240
- return ok(undefined);
241
- };
242
- // dir always sends `files`, even [], so an --update removes files the new dir no longer has.
243
- const buildCreateBody = async (opts) => {
244
- if (opts.dir?.trim()) {
245
- const packed = await packSkillDir(opts.dir.trim());
246
- if (!packed.ok)
247
- return packed;
248
- return ok({ content: packed.value.content, files: packed.value.files });
249
- }
250
- const file = opts.file?.trim();
251
- if (!file)
252
- return err(cliErr({
253
- what: "missing required fields",
254
- remedy: 'usage: glen skill create --name "<name>" --description "<one-line>" (--file <path-to-SKILL.md> | --dir <path-to-skill-directory>) [--update] [--org]',
255
- }));
256
- const content = await readSkillFile(file);
257
- if (!content.ok)
258
- return content;
259
- return ok({ content: content.value });
260
- };
261
- const readSkillFile = async (file) => {
262
- try {
263
- const text = await readFile(file, "utf8");
264
- if (!text.trim())
265
- return err(cliErr({
266
- what: `the skill file ${file} is empty`,
267
- remedy: "write the SKILL.md body to that file first",
268
- }));
269
- return ok(text);
270
- }
271
- catch {
272
- return err(cliErr({
273
- what: `could not read ${file}`,
274
- remedy: "pass --file <path> pointing to the SKILL.md body",
275
- }));
276
- }
277
- };
278
- const _PARSE_FAIL = Symbol("parse-fail");
279
- const readDepsFile = async (file) => {
280
- if (!file?.trim())
281
- return ok(undefined);
282
- const text = await readFile(file.trim(), "utf8").catch(() => null);
283
- if (text === null)
284
- return err(cliErr({
285
- what: `could not read --deps file ${file}`,
286
- remedy: "pass --deps <path> pointing to a JSON array file",
287
- }));
288
- const parsed = (() => {
289
- try {
290
- return JSON.parse(text);
291
- }
292
- catch {
293
- return _PARSE_FAIL;
294
- }
295
- })();
296
- if (parsed === _PARSE_FAIL)
297
- return err(cliErr({
298
- what: `could not parse --deps file ${file} as JSON`,
299
- remedy: `fix the JSON in ${file} — it must be a JSON array`,
300
- }));
301
- if (!Array.isArray(parsed))
302
- return err(cliErr({
303
- what: `--deps file ${file} must be a JSON array`,
304
- remedy: "the --deps file must be a JSON array of dependency objects",
305
- }));
306
- return ok(parsed);
307
- };
308
- export { skillSearch, skillUse, skillCreate, skillShare };
309
- //# sourceMappingURL=skill.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { CliError } from "../_utils/cli-error.js";
2
- import { type Result } from "../_utils/result.js";
3
- declare const status: () => Promise<Result<void, CliError>>;
4
- export { status };
@@ -1,33 +0,0 @@
1
- import { config } from "../_utils/config.js";
2
- import { readCredentials } from "../_utils/credentials.js";
3
- import { ok } from "../_utils/result.js";
4
- import { readState } from "../_utils/state.js";
5
- import { cliVersion } from "../_utils/version.js";
6
- const status = async () => {
7
- const [creds, state] = await Promise.all([readCredentials(), readState()]);
8
- process.stdout.write(`🏔️ glen ${cliVersion}\n`);
9
- if (creds?.type === "apikey" && creds.key) {
10
- process.stdout.write(` connected with an API key. Base: ${config.baseUrl}\n`);
11
- }
12
- else {
13
- process.stdout.write(` not connected. Run \`glen login\` to connect. Base: ${config.baseUrl}\n`);
14
- if (state) {
15
- process.stdout.write(` org: ${state.activeOrgSlug ?? state.activeOrgId}${state.activeOrgName ? ` (${state.activeOrgName})` : ""}\n`);
16
- process.stdout.write(` mode: ${state.mode}\n`);
17
- }
18
- else {
19
- process.stdout.write(" org: none — run `glen org switch`\n");
20
- }
21
- return ok(undefined);
22
- }
23
- if (state) {
24
- process.stdout.write(` org: ${state.activeOrgSlug ?? state.activeOrgId}${state.activeOrgName ? ` (${state.activeOrgName})` : ""}\n`);
25
- process.stdout.write(` mode: ${state.mode}\n`);
26
- }
27
- else {
28
- process.stdout.write(" org: none — run `glen org switch`\n");
29
- }
30
- return ok(undefined);
31
- };
32
- export { status };
33
- //# sourceMappingURL=status.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAe,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,MAAM,GAAG,KAAK,IAAqC,EAAE;IACzD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAE3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,UAAU,IAAI,CAAC,CAAC;IAEjD,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,sCAAsC,MAAM,CAAC,OAAO,IAAI,CACzD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yDAAyD,MAAM,CAAC,OAAO,IAAI,CAC5E,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,UAAU,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAChH,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,UAAU,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAChH,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- declare const statusline: () => Promise<void>;
2
- export { statusline };