@songsid/agend 2.2.0-beta.1 → 2.2.0-beta.10

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 (377) hide show
  1. package/README.md +1 -1
  2. package/README.zh-TW.md +1 -1
  3. package/dist/agent-cli-instructions.md +16 -9
  4. package/dist/agent-cli.js +15 -7
  5. package/dist/agent-cli.js.map +1 -1
  6. package/dist/agent-endpoint.js +21 -9
  7. package/dist/agent-endpoint.js.map +1 -1
  8. package/dist/agent-whats-new.d.ts +47 -0
  9. package/dist/agent-whats-new.js +147 -0
  10. package/dist/agent-whats-new.js.map +1 -0
  11. package/dist/auth-api.d.ts +2 -2
  12. package/dist/auth-api.js +4 -2
  13. package/dist/auth-api.js.map +1 -1
  14. package/dist/backend/antigravity.d.ts +3 -0
  15. package/dist/backend/antigravity.js +9 -0
  16. package/dist/backend/antigravity.js.map +1 -1
  17. package/dist/backend/claude-carry.d.ts +22 -0
  18. package/dist/backend/claude-carry.js +170 -0
  19. package/dist/backend/claude-carry.js.map +1 -0
  20. package/dist/backend/claude-code.d.ts +65 -2
  21. package/dist/backend/claude-code.js +226 -33
  22. package/dist/backend/claude-code.js.map +1 -1
  23. package/dist/backend/codex-metadata.d.ts +33 -0
  24. package/dist/backend/codex-metadata.js +122 -18
  25. package/dist/backend/codex-metadata.js.map +1 -1
  26. package/dist/backend/codex.d.ts +3 -0
  27. package/dist/backend/codex.js +17 -1
  28. package/dist/backend/codex.js.map +1 -1
  29. package/dist/backend/credential-profile.d.ts +40 -3
  30. package/dist/backend/credential-profile.js +113 -5
  31. package/dist/backend/credential-profile.js.map +1 -1
  32. package/dist/backend/effort-metadata.d.ts +1 -1
  33. package/dist/backend/effort-metadata.js +3 -2
  34. package/dist/backend/effort-metadata.js.map +1 -1
  35. package/dist/backend/grok.d.ts +4 -0
  36. package/dist/backend/grok.js +14 -0
  37. package/dist/backend/grok.js.map +1 -1
  38. package/dist/backend/kiro-engine-ledger.d.ts +5 -0
  39. package/dist/backend/kiro-engine-ledger.js +20 -0
  40. package/dist/backend/kiro-engine-ledger.js.map +1 -1
  41. package/dist/backend/kiro-identity.d.ts +6 -0
  42. package/dist/backend/kiro-identity.js +19 -5
  43. package/dist/backend/kiro-identity.js.map +1 -1
  44. package/dist/backend/kiro.d.ts +39 -3
  45. package/dist/backend/kiro.js +143 -19
  46. package/dist/backend/kiro.js.map +1 -1
  47. package/dist/backend/launch-effort.d.ts +33 -0
  48. package/dist/backend/launch-effort.js +123 -0
  49. package/dist/backend/launch-effort.js.map +1 -0
  50. package/dist/backend/muse.d.ts +84 -0
  51. package/dist/backend/muse.js +449 -53
  52. package/dist/backend/muse.js.map +1 -1
  53. package/dist/backend/types.d.ts +33 -4
  54. package/dist/backend/types.js +2 -1
  55. package/dist/backend/types.js.map +1 -1
  56. package/dist/backend-command.d.ts +91 -0
  57. package/dist/backend-command.js +122 -0
  58. package/dist/backend-command.js.map +1 -0
  59. package/dist/background-work-ended.d.ts +18 -0
  60. package/dist/background-work-ended.js +30 -0
  61. package/dist/background-work-ended.js.map +1 -0
  62. package/dist/cache-service.d.ts +2 -0
  63. package/dist/cache-service.js +2 -1
  64. package/dist/cache-service.js.map +1 -1
  65. package/dist/channel/adapters/discord.d.ts +24 -1
  66. package/dist/channel/adapters/discord.js +87 -2
  67. package/dist/channel/adapters/discord.js.map +1 -1
  68. package/dist/channel/adapters/telegram.d.ts +24 -2
  69. package/dist/channel/adapters/telegram.js +118 -20
  70. package/dist/channel/adapters/telegram.js.map +1 -1
  71. package/dist/channel/mcp-server.js +9 -1
  72. package/dist/channel/mcp-server.js.map +1 -1
  73. package/dist/channel/mcp-tools.d.ts +11 -0
  74. package/dist/channel/mcp-tools.js +24 -13
  75. package/dist/channel/mcp-tools.js.map +1 -1
  76. package/dist/channel/message-edit-errors.d.ts +5 -0
  77. package/dist/channel/message-edit-errors.js +24 -0
  78. package/dist/channel/message-edit-errors.js.map +1 -0
  79. package/dist/channel/telegram-markdown.d.ts +6 -0
  80. package/dist/channel/telegram-markdown.js +104 -0
  81. package/dist/channel/telegram-markdown.js.map +1 -0
  82. package/dist/channel/tool-router.js +9 -3
  83. package/dist/channel/tool-router.js.map +1 -1
  84. package/dist/channel/types.d.ts +39 -3
  85. package/dist/cli.js +133 -28
  86. package/dist/cli.js.map +1 -1
  87. package/dist/command-table.d.ts +2 -2
  88. package/dist/command-table.js +6 -3
  89. package/dist/command-table.js.map +1 -1
  90. package/dist/config-validator.js +59 -0
  91. package/dist/config-validator.js.map +1 -1
  92. package/dist/cross-instance-envelope.d.ts +15 -2
  93. package/dist/cross-instance-envelope.js +29 -5
  94. package/dist/cross-instance-envelope.js.map +1 -1
  95. package/dist/daemon.d.ts +156 -1
  96. package/dist/daemon.js +764 -89
  97. package/dist/daemon.js.map +1 -1
  98. package/dist/delivery-outbox.d.ts +62 -7
  99. package/dist/delivery-outbox.js +309 -22
  100. package/dist/delivery-outbox.js.map +1 -1
  101. package/dist/delivery-reconciliation.d.ts +18 -1
  102. package/dist/delivery-reconciliation.js +67 -2
  103. package/dist/delivery-reconciliation.js.map +1 -1
  104. package/dist/fleet-context.d.ts +10 -1
  105. package/dist/fleet-manager.d.ts +345 -10
  106. package/dist/fleet-manager.js +1868 -174
  107. package/dist/fleet-manager.js.map +1 -1
  108. package/dist/general-knowledge/skills/backend-providers/SKILL.md +1 -1
  109. package/dist/general-knowledge/skills/credential-profiles/SKILL.md +92 -21
  110. package/dist/general-knowledge/skills/cross-instance-messaging/SKILL.md +27 -3
  111. package/dist/general-knowledge/skills/delegation-playbook/SKILL.md +8 -8
  112. package/dist/general-knowledge/skills/fleet-config/SKILL.md +5 -5
  113. package/dist/general-knowledge/skills/fleet-health/SKILL.md +4 -4
  114. package/dist/general-knowledge/skills/fleet-restart/SKILL.md +13 -13
  115. package/dist/general-knowledge/skills/instance-lifecycle/SKILL.md +3 -2
  116. package/dist/general-knowledge/skills/kiro-engine-migration/SKILL.md +6 -0
  117. package/dist/general-knowledge/skills/model-discovery/SKILL.md +9 -9
  118. package/dist/general-knowledge/skills/multi-channel/SKILL.md +8 -2
  119. package/dist/general-knowledge/skills/scheduling/SKILL.md +5 -3
  120. package/dist/general-knowledge/skills/session-management/SKILL.md +6 -5
  121. package/dist/general-knowledge/skills/tui-effort/SKILL.md +2 -2
  122. package/dist/general-knowledge/skills/worker-collaboration/SKILL.md +8 -3
  123. package/dist/general-knowledge/steering/core-rules.md +8 -7
  124. package/dist/host-memory.d.ts +10 -0
  125. package/dist/host-memory.js +33 -1
  126. package/dist/host-memory.js.map +1 -1
  127. package/dist/human-delivery-receipts.d.ts +83 -0
  128. package/dist/human-delivery-receipts.js +194 -0
  129. package/dist/human-delivery-receipts.js.map +1 -0
  130. package/dist/instance-avatar.d.ts +36 -0
  131. package/dist/instance-avatar.js +57 -0
  132. package/dist/instance-avatar.js.map +1 -0
  133. package/dist/instance-config-impact.js +6 -0
  134. package/dist/instance-config-impact.js.map +1 -1
  135. package/dist/instance-lifecycle.d.ts +29 -6
  136. package/dist/instance-lifecycle.js +79 -28
  137. package/dist/instance-lifecycle.js.map +1 -1
  138. package/dist/instructions.d.ts +3 -1
  139. package/dist/instructions.js +11 -8
  140. package/dist/instructions.js.map +1 -1
  141. package/dist/kiro-log-gate.d.ts +42 -0
  142. package/dist/kiro-log-gate.js +39 -0
  143. package/dist/kiro-log-gate.js.map +1 -0
  144. package/dist/locale.js +200 -44
  145. package/dist/locale.js.map +1 -1
  146. package/dist/log-service.d.ts +99 -0
  147. package/dist/log-service.js +243 -0
  148. package/dist/log-service.js.map +1 -0
  149. package/dist/log-steps.d.ts +169 -0
  150. package/dist/log-steps.js +858 -0
  151. package/dist/log-steps.js.map +1 -0
  152. package/dist/login-controller.d.ts +20 -3
  153. package/dist/login-controller.js +71 -19
  154. package/dist/login-controller.js.map +1 -1
  155. package/dist/login-flows.d.ts +5 -2
  156. package/dist/login-flows.js +5 -4
  157. package/dist/login-flows.js.map +1 -1
  158. package/dist/memory-pressure.d.ts +13 -1
  159. package/dist/memory-pressure.js +50 -10
  160. package/dist/memory-pressure.js.map +1 -1
  161. package/dist/needs-you-hub.js +2 -0
  162. package/dist/needs-you-hub.js.map +1 -1
  163. package/dist/needs-you-live.d.ts +6 -0
  164. package/dist/needs-you-live.js +23 -3
  165. package/dist/needs-you-live.js.map +1 -1
  166. package/dist/next-steps.js +1 -1
  167. package/dist/next-steps.js.map +1 -1
  168. package/dist/outbound-handlers.d.ts +100 -0
  169. package/dist/outbound-handlers.js +263 -96
  170. package/dist/outbound-handlers.js.map +1 -1
  171. package/dist/outbound-schemas.d.ts +26 -15
  172. package/dist/outbound-schemas.js +24 -7
  173. package/dist/outbound-schemas.js.map +1 -1
  174. package/dist/public-link-progress.d.ts +1 -1
  175. package/dist/public-link-progress.js +8 -2
  176. package/dist/public-link-progress.js.map +1 -1
  177. package/dist/public-preview.d.ts +101 -0
  178. package/dist/public-preview.js +236 -0
  179. package/dist/public-preview.js.map +1 -0
  180. package/dist/public-web-gateway.js +11 -4
  181. package/dist/public-web-gateway.js.map +1 -1
  182. package/dist/public-web-link.d.ts +24 -1
  183. package/dist/public-web-link.js +63 -9
  184. package/dist/public-web-link.js.map +1 -1
  185. package/dist/reply-buttons-controller.d.ts +3 -0
  186. package/dist/reply-buttons-controller.js +3 -2
  187. package/dist/reply-buttons-controller.js.map +1 -1
  188. package/dist/restart-guard.d.ts +6 -3
  189. package/dist/restart-guard.js +6 -3
  190. package/dist/restart-guard.js.map +1 -1
  191. package/dist/restart-progress.d.ts +33 -0
  192. package/dist/restart-progress.js +30 -0
  193. package/dist/restart-progress.js.map +1 -1
  194. package/dist/service-activation.d.ts +15 -7
  195. package/dist/service-activation.js +46 -29
  196. package/dist/service-activation.js.map +1 -1
  197. package/dist/service-installer.d.ts +31 -0
  198. package/dist/service-installer.js +41 -2
  199. package/dist/service-installer.js.map +1 -1
  200. package/dist/settings-api.js +85 -25
  201. package/dist/settings-api.js.map +1 -1
  202. package/dist/settings-change.js +72 -1
  203. package/dist/settings-change.js.map +1 -1
  204. package/dist/settings-effect.js +28 -4
  205. package/dist/settings-effect.js.map +1 -1
  206. package/dist/settings-http-confirmation.js +7 -0
  207. package/dist/settings-http-confirmation.js.map +1 -1
  208. package/dist/setup-form.d.ts +1 -1
  209. package/dist/setup-form.js +1 -1
  210. package/dist/spawn-gate.js +5 -1
  211. package/dist/spawn-gate.js.map +1 -1
  212. package/dist/spawn-hold-reply.d.ts +12 -0
  213. package/dist/spawn-hold-reply.js +39 -0
  214. package/dist/spawn-hold-reply.js.map +1 -0
  215. package/dist/status-emojis.d.ts +10 -3
  216. package/dist/status-emojis.js +11 -2
  217. package/dist/status-emojis.js.map +1 -1
  218. package/dist/systemd-peer-bus.d.ts +95 -0
  219. package/dist/systemd-peer-bus.js +430 -0
  220. package/dist/systemd-peer-bus.js.map +1 -0
  221. package/dist/systemd-runtime.d.ts +27 -1
  222. package/dist/systemd-runtime.js +69 -7
  223. package/dist/systemd-runtime.js.map +1 -1
  224. package/dist/tips.js +4 -4
  225. package/dist/tips.js.map +1 -1
  226. package/dist/tool-progress.js +3 -2
  227. package/dist/tool-progress.js.map +1 -1
  228. package/dist/topic-commands.d.ts +42 -2
  229. package/dist/topic-commands.js +92 -7
  230. package/dist/topic-commands.js.map +1 -1
  231. package/dist/transcript-delta-reader.d.ts +3 -3
  232. package/dist/transcript-delta-reader.js +8 -8
  233. package/dist/transcript-delta-reader.js.map +1 -1
  234. package/dist/transcript-jsonl.d.ts +80 -3
  235. package/dist/transcript-jsonl.js +147 -10
  236. package/dist/transcript-jsonl.js.map +1 -1
  237. package/dist/transcript-monitor.d.ts +19 -0
  238. package/dist/transcript-monitor.js +87 -15
  239. package/dist/transcript-monitor.js.map +1 -1
  240. package/dist/transcript-sources.d.ts +78 -0
  241. package/dist/transcript-sources.js +375 -64
  242. package/dist/transcript-sources.js.map +1 -1
  243. package/dist/transcript-turns.d.ts +15 -2
  244. package/dist/transcript-turns.js +15 -2
  245. package/dist/transcript-turns.js.map +1 -1
  246. package/dist/tunnel/cloudflared.d.ts +7 -15
  247. package/dist/tunnel/cloudflared.js +36 -1
  248. package/dist/tunnel/cloudflared.js.map +1 -1
  249. package/dist/tunnel/purpose-lane.d.ts +5 -1
  250. package/dist/tunnel/purpose-lane.js +14 -7
  251. package/dist/tunnel/purpose-lane.js.map +1 -1
  252. package/dist/tunnel/types.d.ts +5 -1
  253. package/dist/tunnel/types.js.map +1 -1
  254. package/dist/turn-resume.d.ts +2 -0
  255. package/dist/turn-resume.js +1 -1
  256. package/dist/turn-resume.js.map +1 -1
  257. package/dist/types.d.ts +25 -0
  258. package/dist/ui/chat-commands.js +1 -0
  259. package/dist/ui/chat-emojis.js +33 -0
  260. package/dist/ui/chat-mentions.js +63 -0
  261. package/dist/ui/chat-render.js +42 -2
  262. package/dist/ui/chat-store.js +2 -2
  263. package/dist/ui/chat-strings.js +38 -20
  264. package/dist/ui/chat-thread.js +69 -12
  265. package/dist/ui/chat-time.js +80 -0
  266. package/dist/ui/panel-chat.js +39 -10
  267. package/dist/ui/panel-details.js +2 -0
  268. package/dist/ui/panel-fleet.js +199 -57
  269. package/dist/ui/panel-log.js +428 -0
  270. package/dist/ui/panel-needs.js +6 -2
  271. package/dist/ui/panel-settings.js +137 -32
  272. package/dist/ui/preview-panel.js +55 -15
  273. package/dist/ui/preview-status.js +28 -0
  274. package/dist/ui/preview.js +44 -3
  275. package/dist/ui/settings-dialogs.js +7 -2
  276. package/dist/ui/settings-model.js +2 -1
  277. package/dist/ui/settings-strings.js +46 -4
  278. package/dist/ui/settings-token.js +1 -1
  279. package/dist/ui/shared/app-i18n.js +43 -17
  280. package/dist/ui/shared/app-prefs.js +250 -0
  281. package/dist/ui/shared/app-route.js +7 -2
  282. package/dist/ui/shared/app-shell.js +165 -8
  283. package/dist/ui/shared/app-store.js +5 -1
  284. package/dist/ui/shared/app-stream.js +23 -5
  285. package/dist/ui/shared/app.css +155 -22
  286. package/dist/ui/shared/app.js +11 -1
  287. package/dist/ui/shared/fonts/README.md +1 -1
  288. package/dist/ui/shared/header-tools.js +55 -5
  289. package/dist/ui/shared/instance-nav.js +241 -45
  290. package/dist/ui/shared/instance-switch.js +4 -4
  291. package/dist/ui/shared/panel-view.js +6 -0
  292. package/dist/ui/shared/signin.js +7 -7
  293. package/dist/ui/shared/theme.js +39 -7
  294. package/dist/ui/shared/tokens.css +1 -1
  295. package/dist/ui/shared/ui-icons.js +1 -0
  296. package/dist/ui/shared/usage-dialog.js +23 -5
  297. package/dist/ui/shared/view-strings.js +32 -4
  298. package/dist/ui/signin.html +1 -1
  299. package/dist/unrecognised-prompt.d.ts +23 -0
  300. package/dist/unrecognised-prompt.js +74 -0
  301. package/dist/unrecognised-prompt.js.map +1 -0
  302. package/dist/update-install.d.ts +28 -2
  303. package/dist/update-install.js +22 -4
  304. package/dist/update-install.js.map +1 -1
  305. package/dist/update-marker.d.ts +51 -0
  306. package/dist/update-marker.js +61 -0
  307. package/dist/update-marker.js.map +1 -1
  308. package/dist/update-preflight.d.ts +100 -0
  309. package/dist/update-preflight.js +264 -0
  310. package/dist/update-preflight.js.map +1 -0
  311. package/dist/updater-caller.d.ts +31 -0
  312. package/dist/updater-caller.js +109 -0
  313. package/dist/updater-caller.js.map +1 -0
  314. package/dist/usage/i18n-keys.d.ts +1 -1
  315. package/dist/usage/i18n-keys.js +1 -1
  316. package/dist/usage/i18n-keys.js.map +1 -1
  317. package/dist/usage/providers.d.ts +34 -5
  318. package/dist/usage/providers.js +160 -27
  319. package/dist/usage/providers.js.map +1 -1
  320. package/dist/usage/statusline-usage.d.ts +6 -2
  321. package/dist/usage/statusline-usage.js +10 -4
  322. package/dist/usage/statusline-usage.js.map +1 -1
  323. package/dist/view-api.d.ts +1 -1
  324. package/dist/view-api.js +38 -8
  325. package/dist/view-api.js.map +1 -1
  326. package/dist/wake-coordinator.d.ts +11 -0
  327. package/dist/wake-coordinator.js +38 -4
  328. package/dist/wake-coordinator.js.map +1 -1
  329. package/dist/web-api.d.ts +49 -2
  330. package/dist/web-api.js +421 -31
  331. package/dist/web-api.js.map +1 -1
  332. package/dist/web-auth.d.ts +2 -2
  333. package/dist/web-auth.js +9 -4
  334. package/dist/web-auth.js.map +1 -1
  335. package/dist/web-commands.d.ts +27 -4
  336. package/dist/web-commands.js +19 -4
  337. package/dist/web-commands.js.map +1 -1
  338. package/dist/web-host-guard.d.ts +3 -11
  339. package/dist/web-host-guard.js +3 -12
  340. package/dist/web-host-guard.js.map +1 -1
  341. package/dist/web-images.d.ts +47 -0
  342. package/dist/web-images.js +169 -0
  343. package/dist/web-images.js.map +1 -0
  344. package/dist/web-mentions.d.ts +44 -0
  345. package/dist/web-mentions.js +75 -0
  346. package/dist/web-mentions.js.map +1 -0
  347. package/dist/web-prefs.d.ts +63 -0
  348. package/dist/web-prefs.js +265 -0
  349. package/dist/web-prefs.js.map +1 -0
  350. package/dist/web-preview.d.ts +14 -1
  351. package/dist/web-preview.js +35 -13
  352. package/dist/web-preview.js.map +1 -1
  353. package/dist/web-reply-files.d.ts +45 -0
  354. package/dist/web-reply-files.js +223 -0
  355. package/dist/web-reply-files.js.map +1 -0
  356. package/dist/web-schedules.d.ts +12 -0
  357. package/dist/web-schedules.js +34 -0
  358. package/dist/web-schedules.js.map +1 -0
  359. package/dist/web-server-drain.d.ts +10 -0
  360. package/dist/web-server-drain.js +50 -0
  361. package/dist/web-server-drain.js.map +1 -0
  362. package/dist/web-session.d.ts +36 -1
  363. package/dist/web-session.js +53 -6
  364. package/dist/web-session.js.map +1 -1
  365. package/dist/web-settings-patch.d.ts +23 -0
  366. package/dist/web-settings-patch.js +77 -0
  367. package/dist/web-settings-patch.js.map +1 -0
  368. package/dist/web-shell-routes.d.ts +5 -1
  369. package/dist/web-shell-routes.js +10 -1
  370. package/dist/web-shell-routes.js.map +1 -1
  371. package/dist/web-upload.d.ts +17 -4
  372. package/dist/web-upload.js +64 -13
  373. package/dist/web-upload.js.map +1 -1
  374. package/dist/workflow-templates/default.md +1 -1
  375. package/package.json +1 -1
  376. package/templates/launchd.plist.ejs +3 -1
  377. package/templates/systemd.service.ejs +2 -1
@@ -38,6 +38,12 @@ export interface CredentialHomeSpec {
38
38
  * expensive to duplicate and carry no identity.
39
39
  */
40
40
  share: readonly string[];
41
+ /**
42
+ * Private entries a new profile starts as a copy of, when the shared home has them and the profile does not yet
43
+ * (#1699: claude's settings.json — the user's permissions, hooks, env and which plugins are enabled). Copied once;
44
+ * from then on the profile's own, so `/model` in one profile never reaches another. Each must also be in `isolate`.
45
+ */
46
+ seed?: readonly string[];
41
47
  /**
42
48
  * `redirect-files` only: the files the profile owns, relative to the home the
43
49
  * backend is already using.
@@ -53,11 +59,15 @@ export interface CredentialHomeSpec {
53
59
  * A profile nobody has logged into is not an empty session — the CLI stops at
54
60
  * an interactive sign-in prompt and waits there, so an agent pointed at one
55
61
  * never starts. A backend that cannot answer this omits it, and the switch is
56
- * allowed rather than blocked on a check that does not exist.
62
+ * allowed rather than blocked on a check that does not exist. `null`: the store
63
+ * is there but cannot be read, so it can say neither (#1699) — the same as no
64
+ * check, never "signed out".
57
65
  */
58
- hasLogin?: (storeHome: string) => boolean;
66
+ hasLogin?: (storeHome: string) => boolean | null;
59
67
  /** The subcommand that logs a store in, for telling the user what to run. */
60
68
  loginSubcommand: string;
69
+ /** The CLI binary that subcommand belongs to, when it is not the backend's name (claude-code → `claude`). */
70
+ binary?: string;
61
71
  /**
62
72
  * Whether changing profile means the conversation is gone.
63
73
  *
@@ -68,9 +78,27 @@ export interface CredentialHomeSpec {
68
78
  * backend's files force.
69
79
  */
70
80
  switchStartsFreshSession: boolean;
81
+ /**
82
+ * #1753: a switch can take the conversation along — the backend's transcript copied into the new profile's store
83
+ * and resumed there (claude-code). When the copy cannot be made, `switchStartsFreshSession` is what happens instead.
84
+ */
85
+ switchCarriesConversation?: boolean;
71
86
  }
72
- /** Backends that can hold more than one login. Codex and Claude come later. */
87
+ /**
88
+ * A Claude Code login in a config dir: an OAuth token in `.credentials.json` (Linux), or the account claude records in
89
+ * `.claude.json` when it signs in (every platform — on macOS the token itself is in the Keychain, which this never
90
+ * reads). Shape only, never a value. Neither file there: signed out. A file there that cannot be read or parsed, and
91
+ * no proof in the other: null — unknown, never "signed out" (#1699).
92
+ */
93
+ export declare function claudeStoreHasLogin(storeHome: string): boolean | null;
94
+ /** Backends that can hold more than one login. */
73
95
  export declare const CREDENTIAL_HOMES: Readonly<Record<string, CredentialHomeSpec>>;
96
+ /**
97
+ * Backends whose credential profile can be signed in from chat — `/login <backend> <profile>` runs the backend's own
98
+ * login in the browser terminal with the profile's variable (#1699 part 2). Only those whose login TUI was checked
99
+ * under a relocated home; the others' profiles are signed in on the host with credentialProfileLoginCommand.
100
+ */
101
+ export declare const CHAT_PROFILE_LOGIN_BACKENDS: ReadonlySet<string>;
74
102
  export declare function credentialHomeSpec(backendName: string): CredentialHomeSpec | null;
75
103
  /**
76
104
  * The profile a backend was asked for, or null for "behave exactly as before".
@@ -149,6 +177,13 @@ export type CredentialProfileLogin = {
149
177
  } | {
150
178
  readonly state: "unknown";
151
179
  };
180
+ /**
181
+ * The environment a backend's CLI needs to act on a profile's login — the same variable and path its launch uses
182
+ * (#1699 follow-up: the token-free auth probe of an instance on a profile). Null for a backend without profiles.
183
+ */
184
+ export declare function credentialProfileEnv(dataDir: string, backendName: string, profile: string): Record<string, string> | null;
185
+ /** The whole shell line that signs a profile in, for a person to run on the host. Null for a backend without profiles. */
186
+ export declare function credentialProfileLoginCommand(dataDir: string, backendName: string, profile: string): string | null;
152
187
  export declare function credentialProfileLogin(dataDir: string, backendName: string, profile: string): CredentialProfileLogin;
153
188
  /**
154
189
  * Does switching this backend's profile cost the conversation?
@@ -158,6 +193,8 @@ export declare function credentialProfileLogin(dataDir: string, backendName: str
158
193
  * assuming it is lost only costs a handover message nobody needed.
159
194
  */
160
195
  export declare function credentialSwitchStartsFresh(backendName: string): boolean;
196
+ /** #1753: does a profile switch on this backend copy the conversation into the new profile and resume it there? */
197
+ export declare function credentialSwitchCarriesConversation(backendName: string): boolean;
161
198
  /** The profile one instance runs under, or null for the shared login. */
162
199
  export declare function instanceCredentialProfile(instance: {
163
200
  backend_options?: Record<string, Record<string, unknown>>;
@@ -24,7 +24,7 @@
24
24
  * the login, a refresh lock, and a runtime socket directory. An entry nobody
25
25
  * has classified stays private, which costs disk and never leaks a session.
26
26
  */
27
- import { existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, symlinkSync, unlinkSync } from "node:fs";
27
+ import { constants as fsConstants, copyFileSync, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, statSync, symlinkSync, unlinkSync } from "node:fs";
28
28
  import { homedir } from "node:os";
29
29
  import { join, resolve } from "node:path";
30
30
  import { kiroStoreHasLogin } from "./kiro-auth-store.js";
@@ -105,11 +105,81 @@ function codexStoreHasLogin(storeHome) {
105
105
  return false;
106
106
  }
107
107
  }
108
- /** Backends that can hold more than one login. Codex and Claude come later. */
108
+ /**
109
+ * Claude Code keeps its whole state under one directory that `CLAUDE_CONFIG_DIR` moves (#1699, claude 2.1.296, binary
110
+ * plus a live TUI on Linux and macOS against a mock API): the login (`.credentials.json`, or on macOS the Keychain item
111
+ * `Claude Code-credentials-<sha256(dir)[0..8]>` — keyed by the directory, so two profiles never overwrite each other),
112
+ * the global config `.claude.json` (account, onboarding, per-project trust), and every conversation under `projects/`.
113
+ * Nothing goes to `~/.claude` or `~/.claude.json` while it is set.
114
+ *
115
+ * Only a NAMED profile sets it. Unset is the user's existing login: on macOS the Keychain item has no suffix then, and
116
+ * setting the variable at all — even to `~/.claude` — would look up a different item and the login would seem gone.
117
+ *
118
+ * The user's own instructions, agents, commands, skills, output styles and plugins are linked back; everything that is
119
+ * an account, a conversation or a setting `/model` writes stays private. `settings.json` starts as a copy of the
120
+ * user's (permissions, hooks, env, which plugins are enabled) and is the profile's own from then on. A different profile is a different
121
+ * `projects/`, so a switch finds no conversation there (verified: `--resume <id>` and `--continue` find nothing) — unless
122
+ * it is copied over, which is what a switch does (#1753, claude-carry.ts): copied, it resumes; when it cannot be, fresh.
123
+ */
124
+ const CLAUDE_HOME = {
125
+ kind: "relocate-home",
126
+ env: "CLAUDE_CONFIG_DIR",
127
+ sharedRoot: () => resolve(process.env.CLAUDE_CONFIG_DIR?.trim() || join(homedir(), ".claude")),
128
+ storeSubdir: "",
129
+ isolate: [
130
+ ".credentials.json", ".claude.json", "settings.json", "settings.local.json",
131
+ "projects", "sessions", "history.jsonl", "backups", "todos", "shell-snapshots", "statsig", "ide", "session-env", "file-history",
132
+ ],
133
+ share: ["CLAUDE.md", "agents", "commands", "skills", "output-styles", "plugins"],
134
+ seed: ["settings.json"],
135
+ files: [],
136
+ hasLogin: claudeStoreHasLogin,
137
+ loginSubcommand: "auth login",
138
+ binary: "claude",
139
+ switchStartsFreshSession: true,
140
+ switchCarriesConversation: true,
141
+ };
142
+ /**
143
+ * A Claude Code login in a config dir: an OAuth token in `.credentials.json` (Linux), or the account claude records in
144
+ * `.claude.json` when it signs in (every platform — on macOS the token itself is in the Keychain, which this never
145
+ * reads). Shape only, never a value. Neither file there: signed out. A file there that cannot be read or parsed, and
146
+ * no proof in the other: null — unknown, never "signed out" (#1699).
147
+ */
148
+ export function claudeStoreHasLogin(storeHome) {
149
+ let unreadable = false;
150
+ const read = (name) => {
151
+ try {
152
+ const value = JSON.parse(readFileSync(join(storeHome, name), "utf8"));
153
+ if (value && typeof value === "object")
154
+ return value;
155
+ }
156
+ catch (err) {
157
+ if (err.code === "ENOENT")
158
+ return null;
159
+ }
160
+ unreadable = true;
161
+ return null;
162
+ };
163
+ const token = read(".credentials.json")?.claudeAiOauth?.accessToken;
164
+ if (typeof token === "string" && token.length > 0)
165
+ return true;
166
+ const account = read(".claude.json")?.oauthAccount?.accountUuid;
167
+ if (typeof account === "string" && account.length > 0)
168
+ return true;
169
+ return unreadable ? null : false;
170
+ }
171
+ /** Backends that can hold more than one login. */
109
172
  export const CREDENTIAL_HOMES = {
110
173
  "kiro-cli": KIRO_HOME,
111
174
  "codex": CODEX_HOME,
175
+ "claude-code": CLAUDE_HOME,
112
176
  };
177
+ /**
178
+ * Backends whose credential profile can be signed in from chat — `/login <backend> <profile>` runs the backend's own
179
+ * login in the browser terminal with the profile's variable (#1699 part 2). Only those whose login TUI was checked
180
+ * under a relocated home; the others' profiles are signed in on the host with credentialProfileLoginCommand.
181
+ */
182
+ export const CHAT_PROFILE_LOGIN_BACKENDS = new Set(["claude-code"]);
113
183
  export function credentialHomeSpec(backendName) {
114
184
  return CREDENTIAL_HOMES[backendName] ?? null;
115
185
  }
@@ -138,7 +208,9 @@ export function resolveCredentialProfile(backendOptions) {
138
208
  * "these three agents use the work account" impossible to express.
139
209
  */
140
210
  export function credentialProfileHome(dataDir, backendName, profile) {
141
- return join(dataDir, "credential-profiles", backendName, profile);
211
+ // Absolute and normalised (#1699): claude names its macOS Keychain item after this exact string, so every writer and
212
+ // reader of a profile must spell it the same way — no relative AGEND_HOME, no trailing slash.
213
+ return resolve(dataDir, "credential-profiles", backendName, profile);
142
214
  }
143
215
  /**
144
216
  * The credential profile's store an instance's CLI writes to, if any (#1007).
@@ -206,6 +278,20 @@ export function prepareCredentialProfileHome(spec, profileHome) {
206
278
  // Absent, or removed by a concurrent start. Either way there is no link.
207
279
  }
208
280
  }
281
+ for (const name of spec.seed ?? []) {
282
+ if (!spec.isolate.includes(name))
283
+ continue;
284
+ const source = join(sharedStore, name);
285
+ try {
286
+ if (!statSync(source).isFile())
287
+ continue;
288
+ // EXCL: a profile that already has its own (a later start, or a concurrent one) is never overwritten.
289
+ copyFileSync(source, join(profileStore, name), fsConstants.COPYFILE_EXCL);
290
+ }
291
+ catch {
292
+ // Absent in the shared home, or already in the profile: nothing to start from, or nothing to do.
293
+ }
294
+ }
209
295
  for (const name of spec.share) {
210
296
  // Isolation wins over sharing, so a name in both lists is never linked.
211
297
  if (spec.isolate.includes(name))
@@ -301,19 +387,37 @@ export function credentialProfileStoreHome(dataDir, backendName, profile) {
301
387
  const home = credentialProfileHome(dataDir, backendName, profile);
302
388
  return spec?.storeSubdir ? join(home, spec.storeSubdir) : home;
303
389
  }
390
+ /**
391
+ * The environment a backend's CLI needs to act on a profile's login — the same variable and path its launch uses
392
+ * (#1699 follow-up: the token-free auth probe of an instance on a profile). Null for a backend without profiles.
393
+ */
394
+ export function credentialProfileEnv(dataDir, backendName, profile) {
395
+ const spec = credentialHomeSpec(backendName);
396
+ return spec ? { [spec.env]: credentialProfileHome(dataDir, backendName, profile) } : null;
397
+ }
398
+ /** The whole shell line that signs a profile in, for a person to run on the host. Null for a backend without profiles. */
399
+ export function credentialProfileLoginCommand(dataDir, backendName, profile) {
400
+ const spec = credentialHomeSpec(backendName);
401
+ if (!spec)
402
+ return null;
403
+ return `${spec.env}=${JSON.stringify(credentialProfileHome(dataDir, backendName, profile))} ${spec.binary ?? backendName} ${spec.loginSubcommand}`;
404
+ }
304
405
  export function credentialProfileLogin(dataDir, backendName, profile) {
305
406
  const spec = credentialHomeSpec(backendName);
306
407
  if (!spec?.hasLogin)
307
408
  return { state: "unknown" };
308
409
  const storeHome = credentialProfileStoreHome(dataDir, backendName, profile);
309
- if (spec.hasLogin(storeHome))
410
+ const login = spec.hasLogin(storeHome);
411
+ if (login === null)
412
+ return { state: "unknown" };
413
+ if (login)
310
414
  return { state: "logged-in" };
311
415
  return {
312
416
  state: "signed-out",
313
417
  // The whole command, not a description of one: this is read by an agent
314
418
  // relaying it to a person who has to run it, and a paraphrase of a shell
315
419
  // line is how a person ends up logging the wrong profile in.
316
- loginCommand: `${spec.env}=${JSON.stringify(credentialProfileHome(dataDir, backendName, profile))} ${backendName} ${spec.loginSubcommand}`,
420
+ loginCommand: credentialProfileLoginCommand(dataDir, backendName, profile),
317
421
  };
318
422
  }
319
423
  /**
@@ -326,6 +430,10 @@ export function credentialProfileLogin(dataDir, backendName, profile) {
326
430
  export function credentialSwitchStartsFresh(backendName) {
327
431
  return credentialHomeSpec(backendName)?.switchStartsFreshSession ?? true;
328
432
  }
433
+ /** #1753: does a profile switch on this backend copy the conversation into the new profile and resume it there? */
434
+ export function credentialSwitchCarriesConversation(backendName) {
435
+ return credentialHomeSpec(backendName)?.switchCarriesConversation === true;
436
+ }
329
437
  /** The profile one instance runs under, or null for the shared login. */
330
438
  export function instanceCredentialProfile(instance, defaults, backendName) {
331
439
  for (const options of [instance?.backend_options, defaults?.backend_options]) {
@@ -1 +1 @@
1
- {"version":3,"file":"credential-profile.js","sourceRoot":"","sources":["../../src/backend/credential-profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credential-profile.js","sourceRoot":"","sources":["../../src/backend/credential-profile.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export interface EffortMetadata {
29
29
  levels: string[];
30
30
  }
31
31
  /** Pure status/menu lookup: only existing Codex config/cache files may be read. */
32
- export declare function readEffortMetadata(backend: string, instanceDir: string): EffortMetadata;
32
+ export declare function readEffortMetadata(backend: string, instanceDir: string, model?: string | null): EffortMetadata;
33
33
  /** The effort levels agy accepts when its `--help` does not list them (agy before 1.3, or an unreadable help). */
34
34
  export declare const AGY_FALLBACK_EFFORT_LEVELS: readonly string[];
35
35
  export declare const CANONICAL_EFFORT: readonly string[];
@@ -13,9 +13,10 @@ export const EFFORT_CAPABILITIES = {
13
13
  codex: { strategy: "restart" },
14
14
  };
15
15
  /** Pure status/menu lookup: only existing Codex config/cache files may be read. */
16
- export function readEffortMetadata(backend, instanceDir) {
16
+ export function readEffortMetadata(backend, instanceDir, model) {
17
17
  if (backend === "codex") {
18
- return { strategy: EFFORT_CAPABILITIES.codex.strategy, levels: readCodexEffortLevels(codexMetadataHomes(instanceDir)) };
18
+ // Codex's levels are per model (#1806 review): `model` when the caller knows which one runs, else config.toml's.
19
+ return { strategy: EFFORT_CAPABILITIES.codex.strategy, levels: readCodexEffortLevels({ ...codexMetadataHomes(instanceDir), model: model ?? null }) };
19
20
  }
20
21
  if (backend === "antigravity") {
21
22
  // From the binary's own --help, via the CLI env probe's cache (agyEffortLevels); three levels until then.
@@ -1 +1 @@
1
- {"version":3,"file":"effort-metadata.js","sourceRoot":"","sources":["../../src/backend/effort-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,sFAAsF;AACtF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,aAAa,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;IACzF,UAAU,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;IACtF,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;IAChE,WAAW,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;IACvE,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;IAChF,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;CACtB,CAAC;AAOX,mFAAmF;AACnF,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,WAAmB;IACrE,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,EAAE,QAAQ,EAAE,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;IAC1H,CAAC;IACD,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QAC9B,0GAA0G;QAC1G,OAAO,EAAE,QAAQ,EAAE,mBAAmB,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,CAAC;IAC3F,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACjG,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAA6D,CAAC,CAAC;IACtG,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,kHAAkH;AAClH,MAAM,CAAC,MAAM,0BAA0B,GAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACvF,MAAM,CAAC,MAAM,gBAAgB,GAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAE7F;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,YAAoB,YAAY,EAAE;IAChE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAmD,CAAC;QAChJ,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,QAAQ,GAAG,cAAc,CAAC;QAC7F,MAAM,MAAM,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YACrD,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAE,GAAG,CAAC,YAA0B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnF,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC,CAAC,iCAAiC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,0BAA0B,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"effort-metadata.js","sourceRoot":"","sources":["../../src/backend/effort-metadata.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,9 @@ export declare class GrokBackend implements CliBackend {
25
25
  private binaryPath;
26
26
  private workingDirectory?;
27
27
  constructor(instanceDir: string);
28
+ /** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
29
+ private quietLaunchNotes;
30
+ consumeQuietLaunchNotes(): string[];
28
31
  buildCommand(config: CliBackendConfig): string;
29
32
  /**
30
33
  * Build an ASCII-only, per-instance MCP server key. Grok Build's MCP client has
@@ -70,6 +73,7 @@ export declare class GrokBackend implements CliBackend {
70
73
  getRuntimeDialogs(): RuntimeDialog[];
71
74
  getQuitCommand(): string | null;
72
75
  getQuitKey(): string;
76
+ getQuitKeyPresses(): number;
73
77
  getCompactCommand(): string;
74
78
  getClearCommand(): string;
75
79
  getCancelKey(): string;
@@ -1,4 +1,5 @@
1
1
  import { EFFORT_CAPABILITIES } from "./effort-metadata.js";
2
+ import { flagEffort } from "./launch-effort.js";
2
3
  import { join } from "node:path";
3
4
  import { execFileSync } from "node:child_process";
4
5
  import { existsSync, readFileSync, readdirSync, statSync, writeFileSync, chmodSync } from "node:fs";
@@ -106,6 +107,9 @@ export class GrokBackend {
106
107
  this.instanceDir = instanceDir;
107
108
  this.binaryPath = resolveBinary("grok");
108
109
  }
110
+ /** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
111
+ quietLaunchNotes = [];
112
+ consumeQuietLaunchNotes() { const notes = this.quietLaunchNotes; this.quietLaunchNotes = []; return notes; }
109
113
  buildCommand(config) {
110
114
  this.workingDirectory = config.workingDirectory;
111
115
  // Flags: -m/--model, --always-approve, -r/--resume <ID>, -p/--single, --no-auto-update.
@@ -129,6 +133,11 @@ export class GrokBackend {
129
133
  warnIfModelMismatch("grok", model);
130
134
  cmd += ` --model ${shellQuote(model)}`;
131
135
  }
136
+ // #1811: the configured effort, where this grok takes it (launch-effort.ts); else a quiet note.
137
+ const effort = flagEffort("grok", config.effort, this.binaryPath);
138
+ if (effort.arg)
139
+ cmd += effort.arg;
140
+ this.quietLaunchNotes = effort.note ? [effort.note] : [];
132
141
  return cmd;
133
142
  }
134
143
  /**
@@ -388,6 +397,11 @@ export class GrokBackend {
388
397
  // grok has no slash quit command — it quits via the Ctrl+Q key chord (getQuitKey).
389
398
  getQuitCommand() { return null; }
390
399
  getQuitKey() { return "C-q"; }
400
+ // #1792: Quit is a double press within 1000 ms (grok's own keyboard docs since
401
+ // at least 1.0.46; live on 1.0.50 and 1.0.52). One Ctrl+Q only paints
402
+ // "Ctrl+q:press again to quit", so every stop and pause fell through to the
403
+ // SIGTERM fallback. The daemon spaces the presses 250 ms apart.
404
+ getQuitKeyPresses() { return 2; }
391
405
  // Trailing space commits the exact slash command before Grok's autocomplete
392
406
  // can expand the partial token to `/compact-mode`.
393
407
  getCompactCommand() { return "/compact "; }
@@ -1 +1 @@
1
- {"version":3,"file":"grok.js","sourceRoot":"","sources":["../../src/backend/grok.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grok.js","sourceRoot":"","sources":["../../src/backend/grok.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,11 @@ export type KiroLedger = Record<string, KiroLedgerEntry>;
19
19
  export declare function kiroLedgerPath(agendHome?: string): string;
20
20
  export declare function agendVersion(): string;
21
21
  export declare function readKiroLedger(path?: string): KiroLedger;
22
+ /** #1624: absence alone permits the pre-ledger upgrade fallback. The forgiving
23
+ * display reader above cannot prove that: it drops invalid entries and treats
24
+ * I/O failures as empty. Never turn damaged/unreadable history into adoption.
25
+ */
26
+ export declare function kiroHasNoLaunchRecord(instance: string, path?: string): boolean;
22
27
  /** Write via a temp file and rename; the temp file is removed whatever happens. Throws on failure. */
23
28
  export declare function writeFileAtomic(path: string, data: string): void;
24
29
  /** Read, change one entry, write back atomically. Returns false when the ledger could not be written. */
@@ -55,6 +55,26 @@ export function readKiroLedger(path = kiroLedgerPath()) {
55
55
  catch { /* missing or damaged: start over */ }
56
56
  return {};
57
57
  }
58
+ /** #1624: absence alone permits the pre-ledger upgrade fallback. The forgiving
59
+ * display reader above cannot prove that: it drops invalid entries and treats
60
+ * I/O failures as empty. Never turn damaged/unreadable history into adoption.
61
+ */
62
+ export function kiroHasNoLaunchRecord(instance, path = kiroLedgerPath()) {
63
+ let text;
64
+ try {
65
+ text = readFileSync(path, "utf8");
66
+ }
67
+ catch (err) {
68
+ return err.code === "ENOENT";
69
+ }
70
+ try {
71
+ const parsed = JSON.parse(text);
72
+ return isObject(parsed) && !Object.hasOwn(parsed, instance);
73
+ }
74
+ catch {
75
+ return false;
76
+ }
77
+ }
58
78
  /** Write via a temp file and rename; the temp file is removed whatever happens. Throws on failure. */
59
79
  export function writeFileAtomic(path, data) {
60
80
  const tmp = `${path}.${process.pid}.${randomBytes(4).toString("hex")}.tmp`;
@@ -1 +1 @@
1
- {"version":3,"file":"kiro-engine-ledger.js","sourceRoot":"","sources":["../../src/backend/kiro-engine-ledger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kiro-engine-ledger.js","sourceRoot":"","sources":["../../src/backend/kiro-engine-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAwB3C,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,UAAU,cAAc,CAAC,YAAoB,YAAY,EAAE;IAC/D,OAAO,IAAI,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;AACpD,CAAC;AAED,IAAI,iBAAqC,CAAC;AAC1C,MAAM,UAAU,YAAY;IAC1B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC;YAAC,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,iBAAiB,GAAG,SAAS,CAAC;QAAC,CAAC;IACzJ,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAgC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAEjH,MAAM,GAAG,GAAuB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAExD,SAAS,cAAc,CAAC,CAAU;IAChC,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;WACzC,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC;WAC7D,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;WACxD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,0GAA0G;AAC1G,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,gBAAgB,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;WAC1F,CAAC,CAAC,CAAC,iBAAiB,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,CAAC;WACzE,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe,cAAc,EAAE;IAC5D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,CAAC;QACjE,IAAI,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC;IAC5H,CAAC;IAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAChD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,OAAe,cAAc,EAAE;IACrF,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QAAC,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACtD,OAAQ,GAA6B,CAAC,IAAI,KAAK,QAAQ,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;AAC3B,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY;IACxD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3E,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB,EAAE,IAAY;IACvD,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,MAA2E,EAAE,OAAe,cAAc,EAAE;IAC7J,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACxB,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,CAAmB,EAAE,CAAmB;IAC1D,OAAO,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;WACvF,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtF,CAAC;AAaD,MAAM,UAAU,gBAAgB,CAAC,KAAsB,EAAE,OAAe,cAAc,EAAE;IACtF,MAAM,MAAM,GAAqB;QAC/B,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,YAAY,EAAE,YAAY,EAAE;QAC5B,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;KACxB,CAAC;IACF,OAAO,gBAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QAC9C,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC;QAC5G,OAAO;YACL,GAAG,KAAK;YACR,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;YAC1C,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,MAAM,CAAC,EAAE;YACxC,UAAU,EAAE,MAAM;YAClB,OAAO,EAAE,WAAW;SACrB,CAAC;IACJ,CAAC,EAAE,IAAI,CAAC,CAAC;AACX,CAAC"}
@@ -45,6 +45,7 @@ export type KiroIdentityDecision =
45
45
  agentConfirmed: boolean;
46
46
  } | {
47
47
  mode: "fresh";
48
+ notice?: "shared-directory" | "claimed-conversation" | "unknown-peers";
48
49
  };
49
50
  export interface ResolveKiroIdentityOptions {
50
51
  instance: string;
@@ -57,6 +58,11 @@ export interface ResolveKiroIdentityOptions {
57
58
  readStore: () => KiroStoreRead;
58
59
  /** Whether this instance launched in this directory, with this profile and engine, before #906. */
59
60
  launchedBefore: () => boolean;
61
+ /** Only for an absent launch record, on a capable binary. Consults the current
62
+ * complete configured roster at the synchronous adoption boundary, not a
63
+ * snapshot taken before v2 discovery. null means no upgrade fallback.
64
+ */
65
+ upgradeAdoption?: () => "eligible" | "shared-directory" | "unknown-peers" | null;
60
66
  now?: () => number;
61
67
  }
62
68
  /** Whether launch preparation needs a store snapshot. Only reads the small
@@ -15,7 +15,8 @@
15
15
  * Named by a hash of the instance name, so any instance name AgEnD allows (CJK included)
16
16
  * has one; the name itself is inside.
17
17
  *
18
- * - Adoption (no state file at all, and the engine ledger shows this instance launched here before #906): the
18
+ * - Adoption (no state file at all, and either the engine ledger shows this instance launched here before #906,
19
+ * or the pre-ledger upgrade fallback proves this is the only configured kiro instance in the directory): the
19
20
  * newest conversation for the directory is claimed and recorded before the launch. An unreadable store then is
20
21
  * legacy mode — the old command, not isolated, nothing recorded — and the next launch tries again. A claim this
21
22
  * instance completed whose record could not be written is taken up again on the retry, never given up.
@@ -381,18 +382,30 @@ export function resolveKiroIdentity(opts) {
381
382
  settlePending();
382
383
  return fresh;
383
384
  }
384
- // Adoption: only with no state file at all, and only for an instance that ran here before (#906 §2). The chosen
385
+ // Adoption: only with no state file at all, with old launch evidence or the
386
+ // one-time unshared-directory upgrade fallback (#1624). A durably fresh mark
387
+ // always takes the evidence-only path below. The chosen
385
388
  // conversation is recorded (pending) before it is claimed, so a retry after any failure takes up that exact
386
389
  // conversation — never whichever is newest by then.
387
390
  if (read.kind === "none") {
388
- if (opts.skipResume || !opts.launchedBefore())
391
+ if (opts.skipResume)
389
392
  return startFresh();
393
+ const previousLaunch = opts.launchedBefore();
394
+ const upgrade = previousLaunch ? null : opts.upgradeAdoption?.() ?? null;
395
+ if (!previousLaunch && upgrade !== "eligible") {
396
+ const fresh = startFresh();
397
+ return upgrade ? { ...fresh, notice: upgrade } : fresh;
398
+ }
390
399
  const store = opts.readStore();
391
400
  if (store.kind === "unreadable")
392
401
  return { mode: "legacy", reason: store.detail };
393
402
  const newest = store.sessions.filter(s => SAFE_ID.test(s.id)).sort((x, y) => y.updatedAt - x.updatedAt)[0];
394
- if (!newest || claimOf(p.claims, newest.id) !== null)
403
+ if (!newest)
395
404
  return startFresh(store);
405
+ if (claimOf(p.claims, newest.id) !== null) {
406
+ const fresh = startFresh(store);
407
+ return upgrade === "eligible" ? { ...fresh, notice: "claimed-conversation" } : fresh;
408
+ }
396
409
  try {
397
410
  mkdirSync(p.instances, { recursive: true, mode: 0o700 });
398
411
  writePending(p.pending, { ...pendingMap, [key]: newest.id });
@@ -402,7 +415,8 @@ export function resolveKiroIdentity(opts) {
402
415
  }
403
416
  if (!claim(p.claims, newest.id, instance)) {
404
417
  settlePending();
405
- return startFresh(store);
418
+ const fresh = startFresh(store);
419
+ return upgrade === "eligible" ? { ...fresh, notice: "claimed-conversation" } : fresh;
406
420
  }
407
421
  if (!save({ engine, workingDirectory, credentialProfile, id: newest.id, since: now(), known: [], abandoned: [], agentConfirmed: false })) {
408
422
  throw new KiroIdentityError(`cannot write ${p.state}`); // the pending entry and the claim stand: the retry takes this id