commandmate 0.44.2 → 0.44.3

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 (581) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +149 -149
  3. package/.next/app-path-routes-manifest.json +21 -21
  4. package/.next/build-manifest.json +2 -2
  5. package/.next/prerender-manifest.json +12 -12
  6. package/.next/react-loadable-manifest.json +0 -6
  7. package/.next/required-server-files.json +1 -1
  8. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/api/agents/update/route.js +1 -1
  10. package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
  11. package/.next/server/app/api/agents/versions/route.js +1 -1
  12. package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/app/update/route.js +2 -2
  15. package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/auth/login/route.js +1 -1
  18. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/capabilities/route.js +1 -1
  22. package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/daily-summary/route.js +1 -1
  24. package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
  25. package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/daily-summary/status/route.js +1 -1
  27. package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
  28. package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/external-apps/[id]/route.js +1 -1
  31. package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/external-apps/route.js +1 -1
  33. package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/hooks/agent-event/route.js +2 -2
  37. package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
  38. package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/hooks/claude-done/route.js +2 -2
  40. package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
  41. package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/hooks/permission-request/route.js +1 -1
  43. package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
  44. package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/push/escalation/route.js +1 -1
  48. package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/push/subscriptions/route.js +2 -2
  50. package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/push/vapid/route.js +1 -1
  52. package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/relays/[relayId]/cancel/route.js +1 -1
  54. package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
  55. package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
  56. package/.next/server/app/api/relays/route.js +1 -1
  57. package/.next/server/app/api/relays/route.js.nft.json +1 -1
  58. package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
  60. package/.next/server/app/api/repositories/[id]/route.js +1 -1
  61. package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
  62. package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
  63. package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
  64. package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/repositories/clone/route.js +1 -1
  66. package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
  67. package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
  68. package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/repositories/restore/route.js +1 -1
  70. package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
  71. package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
  72. package/.next/server/app/api/repositories/route.js +1 -1
  73. package/.next/server/app/api/repositories/route.js.nft.json +1 -1
  74. package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
  75. package/.next/server/app/api/repositories/scan/route.js +1 -1
  76. package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
  77. package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
  78. package/.next/server/app/api/repositories/sync/route.js +1 -1
  79. package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
  80. package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
  81. package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/settings/default-agents/route.js +1 -1
  83. package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
  84. package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
  85. package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/sidebar/group-order/route.js +1 -1
  87. package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/skills/[id]/route.js +1 -1
  89. package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
  91. package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/skills/route.js +1 -1
  94. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/templates/[id]/route.js +2 -2
  99. package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
  100. package/.next/server/app/api/templates/route.js +2 -2
  101. package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
  104. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
  105. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
  106. package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
  107. package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
  108. package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
  109. package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
  110. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
  111. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
  112. package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
  113. package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
  115. package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
  116. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +3 -3
  117. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
  118. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
  119. package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
  120. package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
  121. package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
  122. package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
  123. package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
  124. package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
  125. package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
  126. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +2 -2
  128. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
  129. package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
  130. package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js +1 -1
  131. package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
  132. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
  133. package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
  134. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
  135. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
  136. package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
  138. package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
  139. package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
  140. package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
  141. package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
  142. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
  143. package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
  144. package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
  145. package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
  146. package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
  148. package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
  149. package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
  150. package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
  151. package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
  152. package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
  153. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
  155. package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
  156. package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
  157. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
  158. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
  159. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
  160. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
  161. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
  163. package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
  164. package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
  166. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
  167. package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
  169. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js +1 -1
  170. package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
  171. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
  172. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
  173. package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
  174. package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
  175. package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
  176. package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
  177. package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
  178. package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
  179. package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
  181. package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
  182. package/.next/server/app/api/worktrees/[id]/marp-render/route.js +1 -1
  183. package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
  184. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
  185. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
  186. package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
  187. package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
  188. package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
  189. package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js +1 -1
  190. package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
  191. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
  192. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
  193. package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
  194. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
  195. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
  196. package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
  197. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
  198. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
  199. package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
  200. package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
  201. package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
  202. package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
  203. package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
  204. package/.next/server/app/api/worktrees/[id]/route.js +1 -1
  205. package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
  206. package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
  207. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +2 -2
  208. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
  209. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
  210. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +2 -2
  211. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
  212. package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
  213. package/.next/server/app/api/worktrees/[id]/schedules/route.js +3 -3
  214. package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
  215. package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
  216. package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
  217. package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
  218. package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
  219. package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
  220. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +2 -2
  221. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
  222. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
  223. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
  224. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
  225. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
  226. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
  227. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
  228. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
  229. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
  230. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
  231. package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
  232. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
  233. package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
  234. package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
  235. package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
  236. package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
  237. package/.next/server/app/api/worktrees/[id]/tasks/route.js +1 -1
  238. package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
  239. package/.next/server/app/api/worktrees/[id]/terminal/route.js +2 -2
  240. package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
  241. package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
  242. package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
  243. package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
  244. package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
  245. package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
  246. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js +1 -1
  247. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  248. package/.next/server/app/api/worktrees/[id]/todos/route.js +1 -1
  249. package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
  250. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
  251. package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
  252. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
  253. package/.next/server/app/api/worktrees/[id]/verify/config/route.js +1 -1
  254. package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
  255. package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
  256. package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
  257. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
  258. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
  259. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
  260. package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
  261. package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
  262. package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
  263. package/.next/server/app/api/worktrees/route.js +1 -1
  264. package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
  265. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  266. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  267. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  268. package/.next/server/app/more/page_client-reference-manifest.js +1 -1
  269. package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  270. package/.next/server/app/page_client-reference-manifest.js +1 -1
  271. package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
  272. package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
  273. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  274. package/.next/server/app/sessions/page.js +1 -1
  275. package/.next/server/app/sessions/page.js.nft.json +1 -1
  276. package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  277. package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
  278. package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
  279. package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  280. package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
  281. package/.next/server/app/worktrees/[id]/page.js +11 -11
  282. package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
  283. package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
  284. package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
  285. package/.next/server/app-paths-manifest.json +21 -21
  286. package/.next/server/chunks/1191.js +2 -2
  287. package/.next/server/chunks/1210.js +1 -1
  288. package/.next/server/chunks/1559.js +2 -0
  289. package/.next/server/chunks/1789.js +1 -0
  290. package/.next/server/chunks/2119.js +1 -1
  291. package/.next/server/chunks/2404.js +1 -1
  292. package/.next/server/chunks/2445.js +1 -1
  293. package/.next/server/chunks/2460.js +1 -1
  294. package/.next/server/chunks/2710.js +1 -1
  295. package/.next/server/chunks/2908.js +1 -1
  296. package/.next/server/chunks/2980.js +1 -1
  297. package/.next/server/chunks/3241.js +1 -1
  298. package/.next/server/chunks/3480.js +1 -1
  299. package/.next/server/chunks/3718.js +1 -1
  300. package/.next/server/chunks/4207.js +2 -2
  301. package/.next/server/chunks/450.js +1 -1
  302. package/.next/server/chunks/4672.js +5 -0
  303. package/.next/server/chunks/{9353.js → 4718.js} +2 -2
  304. package/.next/server/chunks/4837.js +14 -0
  305. package/.next/server/chunks/5048.js +1 -1
  306. package/.next/server/chunks/5209.js +1 -0
  307. package/.next/server/chunks/5595.js +1 -1
  308. package/.next/server/chunks/5625.js +25 -0
  309. package/.next/server/chunks/611.js +1 -1
  310. package/.next/server/chunks/6130.js +1 -1
  311. package/.next/server/chunks/6401.js +1 -1
  312. package/.next/server/chunks/6781.js +1 -1
  313. package/.next/server/chunks/6793.js +3 -3
  314. package/.next/server/chunks/7491.js +2 -2
  315. package/.next/server/chunks/7905.js +1 -1
  316. package/.next/server/chunks/850.js +1 -1
  317. package/.next/server/chunks/8728.js +3 -3
  318. package/.next/server/chunks/8791.js +1 -1
  319. package/.next/server/chunks/8800.js +1 -1
  320. package/.next/server/chunks/8918.js +7 -7
  321. package/.next/server/chunks/9130.js +1 -1
  322. package/.next/server/chunks/9390.js +2 -2
  323. package/.next/server/chunks/9584.js +1 -1
  324. package/.next/server/chunks/9627.js +6 -6
  325. package/.next/server/chunks/9731.js +3 -3
  326. package/.next/server/middleware-manifest.json +5 -5
  327. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  328. package/.next/server/pages/500.html +1 -1
  329. package/.next/server/server-reference-manifest.json +1 -1
  330. package/.next/static/chunks/{1642-fb2e176aaadbd137.js → 1642-767aed8e7c61ef7f.js} +1 -1
  331. package/.next/static/chunks/{2407-051f6f84226a9f2c.js → 2407-06d35bb1aa02de80.js} +1 -1
  332. package/.next/static/chunks/{2619-04bc32f026a0d946.js → 2619-a305ad4810f1393a.js} +1 -1
  333. package/.next/static/chunks/4727-5d695d71e3fdf97b.js +1 -0
  334. package/.next/static/chunks/{8165-3853772f6ae1299b.js → 8165-3525fb42f1b4976e.js} +1 -1
  335. package/.next/static/chunks/app/{layout-9da1ab602bcb3051.js → layout-0d1750b833f5cc3e.js} +1 -1
  336. package/.next/static/chunks/app/sessions/page-2af68c63211c751f.js +1 -0
  337. package/.next/static/chunks/app/worktrees/[id]/page-e36898c3a80e7302.js +1 -0
  338. package/.next/static/chunks/app/worktrees/[id]/terminal/{page-373ea37b16d930c7.js → page-c601f3b3ece6557e.js} +1 -1
  339. package/.next/static/css/057f64a65726c439.css +1 -0
  340. package/.next/trace +13 -13
  341. package/dist/cli/commands/ask.d.ts.map +1 -1
  342. package/dist/cli/commands/ask.js +120 -119
  343. package/dist/cli/commands/attach.d.ts +94 -0
  344. package/dist/cli/commands/attach.d.ts.map +1 -1
  345. package/dist/cli/commands/attach.js +145 -7
  346. package/dist/cli/commands/auto-yes.js +1 -1
  347. package/dist/cli/commands/capture.d.ts.map +1 -1
  348. package/dist/cli/commands/capture.js +3 -5
  349. package/dist/cli/commands/command-target.d.ts +23 -0
  350. package/dist/cli/commands/command-target.d.ts.map +1 -0
  351. package/dist/cli/commands/command-target.js +25 -0
  352. package/dist/cli/commands/instances.d.ts.map +1 -1
  353. package/dist/cli/commands/instances.js +41 -2
  354. package/dist/cli/commands/message-dispatch.d.ts +36 -0
  355. package/dist/cli/commands/message-dispatch.d.ts.map +1 -0
  356. package/dist/cli/commands/message-dispatch.js +63 -0
  357. package/dist/cli/commands/reply.d.ts.map +1 -1
  358. package/dist/cli/commands/reply.js +2 -5
  359. package/dist/cli/commands/respond.d.ts.map +1 -1
  360. package/dist/cli/commands/respond.js +3 -6
  361. package/dist/cli/commands/send.d.ts.map +1 -1
  362. package/dist/cli/commands/send.js +149 -146
  363. package/dist/cli/commands/wait.d.ts.map +1 -1
  364. package/dist/cli/commands/wait.js +589 -431
  365. package/dist/cli/types/api-responses.d.ts +159 -27
  366. package/dist/cli/types/api-responses.d.ts.map +1 -1
  367. package/dist/cli/types/api-responses.js +4 -2
  368. package/dist/cli/utils/api-client.d.ts +25 -5
  369. package/dist/cli/utils/api-client.d.ts.map +1 -1
  370. package/dist/cli/utils/api-client.js +87 -55
  371. package/dist/cli/utils/server-url.d.ts +1 -0
  372. package/dist/cli/utils/server-url.d.ts.map +1 -1
  373. package/dist/cli/utils/server-url.js +7 -0
  374. package/dist/config/uat-isolation.d.ts +140 -0
  375. package/dist/config/uat-isolation.d.ts.map +1 -0
  376. package/dist/config/uat-isolation.js +246 -0
  377. package/dist/lib/global-state.d.ts +12 -0
  378. package/dist/lib/global-state.d.ts.map +1 -0
  379. package/dist/lib/global-state.js +16 -0
  380. package/dist/lib/polling/auto-yes-suppression-reason.d.ts +33 -0
  381. package/dist/lib/polling/auto-yes-suppression-reason.d.ts.map +1 -0
  382. package/dist/lib/polling/auto-yes-suppression-reason.js +2 -0
  383. package/dist/lib/session/prompt-view.d.ts +26 -3
  384. package/dist/lib/session/prompt-view.d.ts.map +1 -1
  385. package/dist/lib/session/prompt-view.js +26 -3
  386. package/dist/lib/session/status-evidence-type.d.ts +16 -0
  387. package/dist/lib/session/status-evidence-type.d.ts.map +1 -0
  388. package/dist/lib/session/status-evidence-type.js +2 -0
  389. package/dist/lib/tmux/legacy-session-alias.d.ts.map +1 -1
  390. package/dist/lib/tmux/legacy-session-alias.js +2 -1
  391. package/dist/server/locales/en/worktree.json +3 -1
  392. package/dist/server/locales/ja/worktree.json +3 -1
  393. package/dist/server/src/cli/types/api-responses.js +4 -2
  394. package/dist/server/src/config/cli-tool-timing-config.js +1 -6
  395. package/dist/server/src/config/uat-isolation.js +246 -0
  396. package/dist/server/src/lib/assistant-response-saver.js +62 -3
  397. package/dist/server/src/lib/auto-yes-lifecycle.js +6 -0
  398. package/dist/server/src/lib/auto-yes-poller.js +450 -160
  399. package/dist/server/src/lib/auto-yes-state.js +2 -2
  400. package/dist/server/src/lib/cli-tools/antigravity.js +38 -79
  401. package/dist/server/src/lib/cli-tools/base.js +151 -0
  402. package/dist/server/src/lib/cli-tools/codex.js +44 -80
  403. package/dist/server/src/lib/cli-tools/command-code.js +24 -56
  404. package/dist/server/src/lib/cli-tools/copilot.js +25 -67
  405. package/dist/server/src/lib/cli-tools/direct-input.js +8 -0
  406. package/dist/server/src/lib/cli-tools/gemini.js +23 -73
  407. package/dist/server/src/lib/cli-tools/opencode-pane-width.js +53 -0
  408. package/dist/server/src/lib/cli-tools/opencode-v2.js +9 -7
  409. package/dist/server/src/lib/cli-tools/opencode.js +21 -85
  410. package/dist/server/src/lib/cli-tools/submit-verified-sender.js +127 -4
  411. package/dist/server/src/lib/cli-tools/vibe-local.js +21 -66
  412. package/dist/server/src/lib/detection/cli-patterns.js +374 -3065
  413. package/dist/server/src/lib/detection/idle-evidence-observation.js +2 -2
  414. package/dist/server/src/lib/detection/prompt-detect-multiple-choice.js +7 -32
  415. package/dist/server/src/lib/detection/prompt-detector.js +2 -35
  416. package/dist/server/src/lib/detection/selection-shape-patterns.js +69 -0
  417. package/dist/server/src/lib/detection/selection-shape.js +32 -520
  418. package/dist/server/src/lib/detection/shared/pasted-text.js +41 -0
  419. package/dist/server/src/lib/detection/shared/shell-pane-command.js +16 -0
  420. package/dist/server/src/lib/detection/shared/strip-box-drawing.js +25 -0
  421. package/dist/server/src/lib/detection/tools/antigravity/detect.js +5 -29
  422. package/dist/server/src/lib/detection/tools/antigravity/dialog.js +2 -15
  423. package/dist/server/src/lib/detection/tools/antigravity/patterns.js +286 -0
  424. package/dist/server/src/lib/detection/tools/claude/detect.js +3 -14
  425. package/dist/server/src/lib/detection/tools/claude/patterns.js +264 -4
  426. package/dist/server/src/lib/detection/tools/claude/prompt.js +2 -10
  427. package/dist/server/src/lib/detection/tools/codex/detect.js +46 -85
  428. package/dist/server/src/lib/detection/tools/codex/live-region.js +33 -2
  429. package/dist/server/src/lib/detection/tools/codex/patterns.js +855 -0
  430. package/dist/server/src/lib/detection/tools/codex/prompt.js +2 -10
  431. package/dist/server/src/lib/detection/tools/command-code/detect.js +8 -50
  432. package/dist/server/src/lib/detection/tools/command-code/dialog.js +2 -18
  433. package/dist/server/src/lib/detection/tools/command-code/patterns.js +234 -0
  434. package/dist/server/src/lib/detection/tools/command-code/selection-shape.js +461 -0
  435. package/dist/server/src/lib/detection/tools/context-above.js +20 -0
  436. package/dist/server/src/lib/detection/tools/copilot/detect.js +10 -35
  437. package/dist/server/src/lib/detection/tools/copilot/patterns.js +640 -0
  438. package/dist/server/src/lib/detection/tools/copilot/prompt.js +2 -10
  439. package/dist/server/src/lib/detection/tools/gemini/patterns.js +29 -0
  440. package/dist/server/src/lib/detection/tools/live-region-specs.js +1 -1
  441. package/dist/server/src/lib/detection/tools/opencode/detect.js +8 -49
  442. package/dist/server/src/lib/detection/tools/opencode/patterns.js +508 -0
  443. package/dist/server/src/lib/detection/tools/opencode-v2/detect.js +7 -42
  444. package/dist/server/src/lib/detection/tools/opencode-v2/patterns.js +63 -0
  445. package/dist/server/src/lib/detection/tools/run-detection.js +6 -47
  446. package/dist/server/src/lib/detection/tools/verdicts.js +59 -0
  447. package/dist/server/src/lib/detection/tools/vibe-local/patterns.js +20 -0
  448. package/dist/server/src/lib/detection/truncate-raw-content.js +38 -0
  449. package/dist/server/src/lib/detection/turn-abandoned.js +66 -0
  450. package/dist/server/src/lib/detection/unclassified-frame-tracker.js +2 -2
  451. package/dist/server/src/lib/global-state.js +16 -0
  452. package/dist/server/src/lib/hooks/agent-session-telemetry.js +4 -6
  453. package/dist/server/src/lib/hooks/permission-decision-state.js +2 -2
  454. package/dist/server/src/lib/hooks/sources/antigravity/history.js +11 -76
  455. package/dist/server/src/lib/hooks/sources/antigravity/hooks-config.js +63 -1
  456. package/dist/server/src/lib/hooks/sources/antigravity/source.js +16 -0
  457. package/dist/server/src/lib/hooks/sources/antigravity/transcript.js +3 -12
  458. package/dist/server/src/lib/hooks/sources/claude/history.js +17 -156
  459. package/dist/server/src/lib/hooks/sources/claude/queued-notice.js +53 -0
  460. package/dist/server/src/lib/hooks/sources/claude/source.js +33 -3
  461. package/dist/server/src/lib/hooks/sources/claude/transcript.js +3 -13
  462. package/dist/server/src/lib/hooks/sources/codex/history.js +11 -74
  463. package/dist/server/src/lib/hooks/sources/codex/hooks-config.js +147 -11
  464. package/dist/server/src/lib/hooks/sources/codex/relay-install.js +64 -21
  465. package/dist/server/src/lib/hooks/sources/codex/transcript.js +5 -15
  466. package/dist/server/src/lib/hooks/sources/command-code/history.js +20 -121
  467. package/dist/server/src/lib/hooks/sources/command-code/transcript.js +3 -13
  468. package/dist/server/src/lib/hooks/sources/copilot/hook-settings.js +161 -31
  469. package/dist/server/src/lib/hooks/sources/define-source.js +40 -55
  470. package/dist/server/src/lib/hooks/sources/event-mapper.js +2 -1
  471. package/dist/server/src/lib/hooks/sources/opencode/diff.js +3 -4
  472. package/dist/server/src/lib/hooks/sources/opencode/history.js +2 -1
  473. package/dist/server/src/lib/hooks/sources/opencode/launch-settings.js +2 -1
  474. package/dist/server/src/lib/hooks/sources/opencode/payloads.js +2 -1
  475. package/dist/server/src/lib/hooks/sources/opencode/ports.js +2 -1
  476. package/dist/server/src/lib/hooks/sources/opencode/subscription.js +4 -3
  477. package/dist/server/src/lib/hooks/sources/opencode/transcript.js +3 -16
  478. package/dist/server/src/lib/hooks/sources/opencode-v2/history.js +2 -1
  479. package/dist/server/src/lib/hooks/sources/opencode-v2/mappers.js +5 -4
  480. package/dist/server/src/lib/hooks/sources/opencode-v2/ports.js +2 -1
  481. package/dist/server/src/lib/hooks/sources/opencode-v2/subscription.js +3 -7
  482. package/dist/server/src/lib/hooks/sources/opencode-v2/usage.js +2 -1
  483. package/dist/server/src/lib/hooks/sources/pending-decisions.js +2 -1
  484. package/dist/server/src/lib/hooks/sources/registry.js +3 -2
  485. package/dist/server/src/lib/hooks/sources/transcript-history.js +262 -0
  486. package/dist/server/src/lib/hooks/sources/turn-body.js +31 -0
  487. package/dist/server/src/lib/hooks/tool-input-normalization-state.js +2 -2
  488. package/dist/server/src/lib/polling/antigravity-permission-receipts.js +2 -2
  489. package/dist/server/src/lib/polling/auto-yes-enter-fallback-state.js +142 -0
  490. package/dist/server/src/lib/polling/auto-yes-enter-fallback.js +187 -0
  491. package/dist/server/src/lib/polling/auto-yes-resolver.js +9 -3
  492. package/dist/server/src/lib/polling/auto-yes-suppression-reason.js +2 -0
  493. package/dist/server/src/lib/polling/auto-yes-suppression-state.js +2 -2
  494. package/dist/server/src/lib/polling/pending-scraped-response.js +190 -0
  495. package/dist/server/src/lib/polling/prompt-dedup-state.js +2 -2
  496. package/dist/server/src/lib/polling/prompt-dedup.js +2 -2
  497. package/dist/server/src/lib/polling/response-checker-dialog-gate.js +95 -0
  498. package/dist/server/src/lib/polling/response-checker-extraction-result.js +50 -0
  499. package/dist/server/src/lib/polling/response-checker-extraction-steps.js +670 -0
  500. package/dist/server/src/lib/polling/response-checker.js +641 -1142
  501. package/dist/server/src/lib/polling/response-dedup.js +3 -4
  502. package/dist/server/src/lib/polling/response-poller-constants.js +17 -0
  503. package/dist/server/src/lib/polling/response-poller-core.js +54 -20
  504. package/dist/server/src/lib/polling/startup-screen.js +142 -0
  505. package/dist/server/src/lib/polling/structured-history-gate.js +3 -2
  506. package/dist/server/src/lib/prompt-answer-semantic.js +178 -0
  507. package/dist/server/src/lib/prompt-answer-sender.js +5 -4
  508. package/dist/server/src/lib/push/failure-episode-state.js +2 -2
  509. package/dist/server/src/lib/push/notification-dedup.js +3 -4
  510. package/dist/server/src/lib/push/prompt-card-state.js +2 -2
  511. package/dist/server/src/lib/push/waiting-push-notifier.js +3 -4
  512. package/dist/server/src/lib/realtime/publisher-registry.js +3 -2
  513. package/dist/server/src/lib/realtime/terminal-broadcast.js +38 -5
  514. package/dist/server/src/lib/realtime/terminal-session-ownership.js +45 -0
  515. package/dist/server/src/lib/relay/relay-delivery.js +3 -2
  516. package/dist/server/src/lib/relay/relay-readiness.js +38 -1
  517. package/dist/server/src/lib/response-cleaner.js +24 -1
  518. package/dist/server/src/lib/response-extractor.js +16 -0
  519. package/dist/server/src/lib/schedule-manager.js +8 -10
  520. package/dist/server/src/lib/session/agent-event-ask-user-question.js +168 -0
  521. package/dist/server/src/lib/session/agent-event-awaiting-instruction.js +104 -0
  522. package/dist/server/src/lib/session/agent-event-dedup.js +539 -0
  523. package/dist/server/src/lib/session/agent-event-model.js +562 -0
  524. package/dist/server/src/lib/session/agent-event-record.js +10 -0
  525. package/dist/server/src/lib/session/agent-event-state.js +106 -1854
  526. package/dist/server/src/lib/session/agent-event-structured-state.js +109 -0
  527. package/dist/server/src/lib/session/agent-event-turn.js +811 -0
  528. package/dist/server/src/lib/session/agent-session-lifecycle.js +11 -2
  529. package/dist/server/src/lib/session/chat-turn-progress.js +322 -0
  530. package/dist/server/src/lib/session/claude-executor.js +45 -5
  531. package/dist/server/src/lib/session/claude-session.js +21 -65
  532. package/dist/server/src/lib/session/cli-session.js +17 -0
  533. package/dist/server/src/lib/session/current-output-builder.js +450 -1103
  534. package/dist/server/src/lib/session/current-output-history-writers.js +255 -0
  535. package/dist/server/src/lib/session/current-output-types.js +9 -0
  536. package/dist/server/src/lib/session/detection-divergence.js +55 -0
  537. package/dist/server/src/lib/session/global-session-constants.js +2 -13
  538. package/dist/server/src/lib/session/hook-turn-hold.js +102 -0
  539. package/dist/server/src/lib/session/layer-disagreement.js +2 -2
  540. package/dist/server/src/lib/session/opencode-session-store.js +2 -1
  541. package/dist/server/src/lib/session/prompt-view.js +26 -3
  542. package/dist/server/src/lib/session/prompt-waiting-composition.js +3 -2
  543. package/dist/server/src/lib/session/provisional-turn.js +3 -1
  544. package/dist/server/src/lib/session/send-user-message.js +1 -1
  545. package/dist/server/src/lib/session/session-starting-state.js +4 -6
  546. package/dist/server/src/lib/session/status-evidence-type.js +2 -0
  547. package/dist/server/src/lib/session/status-evidence.js +2 -2
  548. package/dist/server/src/lib/session/structured-status-merge.js +335 -0
  549. package/dist/server/src/lib/session/waiting-episode-state.js +3 -4
  550. package/dist/server/src/lib/session-cleanup.js +1 -5
  551. package/dist/server/src/lib/skills/install-plan.js +2 -1
  552. package/dist/server/src/lib/skills/snapshot-store.js +2 -2
  553. package/dist/server/src/lib/skills/uninstall-plan.js +2 -2
  554. package/dist/server/src/lib/timer-manager.js +6 -8
  555. package/dist/server/src/lib/tmux/geometry-delegation.js +3 -4
  556. package/dist/server/src/lib/tmux/legacy-session-alias.js +2 -1
  557. package/dist/server/src/lib/tmux/session-hooks.js +2 -1
  558. package/dist/server/src/lib/tmux/session-status-options.js +3 -3
  559. package/dist/server/src/lib/tmux/tmux-capture-cache.js +3 -2
  560. package/dist/server/src/lib/tmux/tmux.js +33 -59
  561. package/dist/server/src/lib/tui-accumulator.js +2 -2
  562. package/dist/server/src/lib/version-checker.js +6 -6
  563. package/dist/server/src/lib/ws-server.js +47 -11
  564. package/docs/en/user-guide/webapp-guide.md +27 -3
  565. package/package.json +1 -1
  566. package/release-notes/0.44.3.json +82 -0
  567. package/scripts/hooks/cmate-agent-event.sh +18 -0
  568. package/.next/server/chunks/1068.js +0 -1
  569. package/.next/server/chunks/4372.js +0 -5
  570. package/.next/server/chunks/6474.js +0 -14
  571. package/.next/server/chunks/967.js +0 -1
  572. package/.next/server/chunks/9798.js +0 -2
  573. package/.next/server/chunks/9882.js +0 -25
  574. package/.next/static/chunks/591-539fec878c9dec5e.js +0 -1
  575. package/.next/static/chunks/app/sessions/page-049e06335187aa91.js +0 -1
  576. package/.next/static/chunks/app/worktrees/[id]/page-2a81397e60f17e63.js +0 -1
  577. package/.next/static/css/38070d879efa1371.css +0 -1
  578. package/dist/server/src/lib/cli-tools/index.js +0 -41
  579. package/dist/server/src/lib/polling/global-session-poller.js +0 -140
  580. /package/.next/static/{QlCqLjorauDDBXPa-C7TK → tWwHQzmvc-rv9KKUtDWfQ}/_buildManifest.js +0 -0
  581. /package/.next/static/{QlCqLjorauDDBXPa-C7TK → tWwHQzmvc-rv9KKUtDWfQ}/_ssgManifest.js +0 -0
@@ -44,6 +44,41 @@ const INERT_SUBSCRIPTION = {
44
44
  close: async () => { },
45
45
  liveness: { state: 'unknown' },
46
46
  };
47
+ /**
48
+ * The event normalization both factories share: their two bodies were identical.
49
+ */
50
+ function normalizeSpecEvent(spec, nativeEventNameFields, raw) {
51
+ const receivedAt = raw.receivedAt ?? Date.now();
52
+ const nativeEventName = nativeEventNameFields.length > 0
53
+ ? (0, event_mapper_1.readFirstStringField)(raw.payload, nativeEventNameFields)
54
+ : null;
55
+ // An event word the caller already resolved wins over the payload. This
56
+ // is the only channel antigravity has, and it is also how the relay
57
+ // script's `--event` reaches here for every other tool.
58
+ if (raw.event != null && (0, agent_event_types_1.isAgentEventType)(raw.event)) {
59
+ return (0, event_mapper_1.buildNormalizedEvent)({ event: raw.event }, raw.payload, receivedAt, {
60
+ detail: spec.extractDetail,
61
+ conversationId: spec.conversationIdFields,
62
+ toolCallId: spec.toolCallIdFields,
63
+ modelFields: spec.modelFields,
64
+ extractModel: spec.extractModel,
65
+ });
66
+ }
67
+ const mapping = (0, event_mapper_1.runEventMappers)(spec.mappers, nativeEventName, raw.payload);
68
+ if (!mapping) {
69
+ // C8. Not an error: a tool emits more events than CommandMate has words
70
+ // for, and it grows more of them between releases.
71
+ (0, event_mapper_1.recordUnknownEvent)(spec.cliToolId, nativeEventName);
72
+ return null;
73
+ }
74
+ return (0, event_mapper_1.buildNormalizedEvent)(mapping, raw.payload, receivedAt, {
75
+ detail: spec.extractDetail,
76
+ conversationId: spec.conversationIdFields,
77
+ toolCallId: spec.toolCallIdFields,
78
+ modelFields: spec.modelFields,
79
+ extractModel: spec.extractModel,
80
+ });
81
+ }
47
82
  /**
48
83
  * Build a push (hook) source from its differences.
49
84
  *
@@ -58,36 +93,7 @@ function definePushHookSource(spec) {
58
93
  noDecision: spec.noDecision,
59
94
  capabilities: spec.capabilities,
60
95
  normalizeEvent(raw) {
61
- const receivedAt = raw.receivedAt ?? Date.now();
62
- const nativeEventName = nativeEventNameFields.length > 0
63
- ? (0, event_mapper_1.readFirstStringField)(raw.payload, nativeEventNameFields)
64
- : null;
65
- // An event word the caller already resolved wins over the payload. This
66
- // is the only channel antigravity has, and it is also how the relay
67
- // script's `--event` reaches here for every other tool.
68
- if (raw.event != null && (0, agent_event_types_1.isAgentEventType)(raw.event)) {
69
- return (0, event_mapper_1.buildNormalizedEvent)({ event: raw.event }, raw.payload, receivedAt, {
70
- detail: spec.extractDetail,
71
- conversationId: spec.conversationIdFields,
72
- toolCallId: spec.toolCallIdFields,
73
- modelFields: spec.modelFields,
74
- extractModel: spec.extractModel,
75
- });
76
- }
77
- const mapping = (0, event_mapper_1.runEventMappers)(spec.mappers, nativeEventName, raw.payload);
78
- if (!mapping) {
79
- // C8. Not an error: a tool emits more events than CommandMate has words
80
- // for, and it grows more of them between releases.
81
- (0, event_mapper_1.recordUnknownEvent)(spec.cliToolId, nativeEventName);
82
- return null;
83
- }
84
- return (0, event_mapper_1.buildNormalizedEvent)(mapping, raw.payload, receivedAt, {
85
- detail: spec.extractDetail,
86
- conversationId: spec.conversationIdFields,
87
- toolCallId: spec.toolCallIdFields,
88
- modelFields: spec.modelFields,
89
- extractModel: spec.extractModel,
90
- });
96
+ return normalizeSpecEvent(spec, nativeEventNameFields, raw);
91
97
  },
92
98
  eventIdentityOf(payload) {
93
99
  // Issue #1899. Absent by default, because a push tool whose capability
@@ -96,6 +102,9 @@ function definePushHookSource(spec) {
96
102
  // applied to it.
97
103
  return spec.extractEventIdentity?.(payload) ?? null;
98
104
  },
105
+ promptJoinsOpenTurn(payload) {
106
+ return spec.promptJoinsOpenTurn?.(payload) ?? false;
107
+ },
99
108
  parsePermissionRequest: spec.parsePermissionRequest,
100
109
  parseQuestion: spec.parseQuestion,
101
110
  encodeVerdict(verdict) {
@@ -149,31 +158,7 @@ function definePullEventSource(spec) {
149
158
  noDecision: spec.noDecision,
150
159
  capabilities: spec.capabilities,
151
160
  normalizeEvent(raw) {
152
- const receivedAt = raw.receivedAt ?? Date.now();
153
- const nativeEventName = nativeEventNameFields.length > 0
154
- ? (0, event_mapper_1.readFirstStringField)(raw.payload, nativeEventNameFields)
155
- : null;
156
- if (raw.event != null && (0, agent_event_types_1.isAgentEventType)(raw.event)) {
157
- return (0, event_mapper_1.buildNormalizedEvent)({ event: raw.event }, raw.payload, receivedAt, {
158
- detail: spec.extractDetail,
159
- conversationId: spec.conversationIdFields,
160
- toolCallId: spec.toolCallIdFields,
161
- modelFields: spec.modelFields,
162
- extractModel: spec.extractModel,
163
- });
164
- }
165
- const mapping = (0, event_mapper_1.runEventMappers)(spec.mappers, nativeEventName, raw.payload);
166
- if (!mapping) {
167
- (0, event_mapper_1.recordUnknownEvent)(spec.cliToolId, nativeEventName);
168
- return null;
169
- }
170
- return (0, event_mapper_1.buildNormalizedEvent)(mapping, raw.payload, receivedAt, {
171
- detail: spec.extractDetail,
172
- conversationId: spec.conversationIdFields,
173
- toolCallId: spec.toolCallIdFields,
174
- modelFields: spec.modelFields,
175
- extractModel: spec.extractModel,
176
- });
161
+ return normalizeSpecEvent(spec, nativeEventNameFields, raw);
177
162
  },
178
163
  eventIdentityOf(payload) {
179
164
  // Issue #1899. See the push factory's copy — the difference is that a
@@ -39,6 +39,7 @@ exports.isPlainObject = isPlainObject;
39
39
  exports.readNestedString = readNestedString;
40
40
  exports.buildNormalizedEvent = buildNormalizedEvent;
41
41
  const agent_event_types_1 = require("../../../lib/hooks/agent-event-types");
42
+ const global_state_1 = require("../../global-state");
42
43
  /**
43
44
  * The commonest rule: this native name is always that word.
44
45
  *
@@ -69,7 +70,7 @@ function runEventMappers(mappers, nativeEventName, payload) {
69
70
  }
70
71
  /** Cap on remembered distinct names, so an unbounded vocabulary cannot grow this. */
71
72
  exports.MAX_UNKNOWN_EVENT_NAMES = 32;
72
- const unknownEvents = (globalThis.__agentSourceUnknownEvents ??= new Map());
73
+ const unknownEvents = (0, global_state_1.getOrInitGlobal)('__agentSourceUnknownEvents', () => new Map());
73
74
  /**
74
75
  * Record an event that mapped to nothing.
75
76
  *
@@ -51,15 +51,14 @@ const auto_yes_state_1 = require("../../../../lib/auto-yes-state");
51
51
  const tool_id_1 = require("./tool-id");
52
52
  const ports_1 = require("./ports");
53
53
  const client_1 = require("./client");
54
+ const global_state_1 = require("../../../global-state");
54
55
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode/diff');
55
56
  /** Cap on a stored session or message id, so a hostile frame cannot grow the map. */
56
57
  const MAX_OPENCODE_DIFF_ID_LENGTH = 128;
57
58
  /** compositeKey -> that instance's diff state. */
58
- const records = globalThis.__opencodeSessionDiff ??
59
- (globalThis.__opencodeSessionDiff = new Map());
59
+ const records = (0, global_state_1.getOrInitGlobal)('__opencodeSessionDiff', () => new Map());
60
60
  /** Keys with a `GET /diff` in flight, so a poll storm makes one request. */
61
- const refreshing = globalThis.__opencodeSessionDiffRefreshes ??
62
- (globalThis.__opencodeSessionDiffRefreshes = new Set());
61
+ const refreshing = (0, global_state_1.getOrInitGlobal)('__opencodeSessionDiffRefreshes', () => new Set());
63
62
  function keyOf(target) {
64
63
  return (0, auto_yes_state_1.buildCompositeKey)(target.worktreeId, target.cliToolId, target.instanceId);
65
64
  }
@@ -94,6 +94,7 @@ const agent_transcript_1 = require("../../../../types/agent-transcript");
94
94
  const event_mapper_1 = require("../event-mapper");
95
95
  const client_1 = require("./client");
96
96
  const transcript_1 = require("./transcript");
97
+ const global_state_1 = require("../../../global-state");
97
98
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode/history');
98
99
  /**
99
100
  * Cap on turns held in memory for one instance.
@@ -120,7 +121,7 @@ exports.MAX_OPENCODE_BACKFILLED_TURNS = 50;
120
121
  * otherwise each get a private copy, and the turn accumulated by one would be
121
122
  * invisible to the other.
122
123
  */
123
- const transcripts = (globalThis.__opencodeTranscripts ??= new Map());
124
+ const transcripts = (0, global_state_1.getOrInitGlobal)('__opencodeTranscripts', () => new Map());
124
125
  function keyOf(target) {
125
126
  return (0, auto_yes_state_1.buildCompositeKey)(target.worktreeId, target.cliToolId, target.instanceId);
126
127
  }
@@ -58,8 +58,9 @@ const auto_yes_state_1 = require("../../../../lib/auto-yes-state");
58
58
  const logger_1 = require("../../../../lib/logger");
59
59
  const hook_settings_generator_1 = require("../../../../lib/hooks/hook-settings-generator");
60
60
  const opencode_instance_settings_1 = require("../../../../types/opencode-instance-settings");
61
+ const global_state_1 = require("../../../global-state");
61
62
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode/launch-settings');
62
- const cache = (globalThis.__opencodeLaunchSettings ??= new Map());
63
+ const cache = (0, global_state_1.getOrInitGlobal)('__opencodeLaunchSettings', () => new Map());
63
64
  function keyOf(target) {
64
65
  return (0, auto_yes_state_1.buildCompositeKey)(target.worktreeId, target.cliToolId, target.instanceId);
65
66
  }
@@ -41,6 +41,7 @@ exports.readOpencodePermissionSubject = readOpencodePermissionSubject;
41
41
  exports.toOpencodePendingQuestion = toOpencodePendingQuestion;
42
42
  const ask_user_question_payload_1 = require("../../../../lib/hooks/ask-user-question-payload");
43
43
  const event_mapper_1 = require("../event-mapper");
44
+ const global_state_1 = require("../../../global-state");
44
45
  /**
45
46
  * Cap on remembered `callID -> tool name` pairs.
46
47
  *
@@ -49,7 +50,7 @@ const event_mapper_1 = require("../event-mapper");
49
50
  * approval, never a wrong one.
50
51
  */
51
52
  exports.MAX_TRACKED_TOOL_CALLS = 256;
52
- const toolCallNames = (globalThis.__opencodeToolCallNames ??= new Map());
53
+ const toolCallNames = (0, global_state_1.getOrInitGlobal)('__opencodeToolCallNames', () => new Map());
53
54
  /** Record that a tool call has a name, seen on a `message.part.updated` frame. */
54
55
  function rememberOpencodeToolCall(callId, toolName) {
55
56
  toolCallNames.delete(callId);
@@ -65,12 +65,13 @@ const auto_yes_state_1 = require("../../../../lib/auto-yes-state");
65
65
  const hook_settings_generator_1 = require("../../../../lib/hooks/hook-settings-generator");
66
66
  const logger_1 = require("../../../../lib/logger");
67
67
  const client_1 = require("./client");
68
+ const global_state_1 = require("../../../global-state");
68
69
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode/ports');
69
70
  /** The window opencode instances are placed in. 100 ports, one per instance. */
70
71
  exports.OPENCODE_PORT_RANGE = { min: 4200, max: 4299 };
71
72
  /** How many candidates a scan will try before giving up. */
72
73
  const PORT_SPAN = exports.OPENCODE_PORT_RANGE.max - exports.OPENCODE_PORT_RANGE.min + 1;
73
- const assignments = (globalThis.__opencodePortAssignments ??= new Map());
74
+ const assignments = (0, global_state_1.getOrInitGlobal)('__opencodePortAssignments', () => new Map());
74
75
  function keyOf(target) {
75
76
  return (0, auto_yes_state_1.buildCompositeKey)(target.worktreeId, target.cliToolId, target.instanceId);
76
77
  }
@@ -78,6 +78,7 @@ const payloads_1 = require("./payloads");
78
78
  const push_1 = require("./push");
79
79
  const ports_1 = require("./ports");
80
80
  const turn_gate_1 = require("./turn-gate");
81
+ const global_state_1 = require("../../../global-state");
81
82
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode/subscription');
82
83
  /**
83
84
  * How long a connection may be silent before it counts as dead.
@@ -102,7 +103,7 @@ const MAX_SEEN_DECISIONS = 256;
102
103
  * its overflow beats an unbounded one that does not.
103
104
  */
104
105
  exports.MAX_RESYNCED_DECISIONS = 50;
105
- const subscriptions = (globalThis.__opencodeSubscriptions ??= new Map());
106
+ const subscriptions = (0, global_state_1.getOrInitGlobal)('__opencodeSubscriptions', () => new Map());
106
107
  /**
107
108
  * The last liveness of a subscription that was **dropped rather than closed**
108
109
  * (Issue #2054).
@@ -124,7 +125,7 @@ const subscriptions = (globalThis.__opencodeSubscriptions ??= new Map());
124
125
  * Cleared when a new subscription opens on the key, and when the pane is closed:
125
126
  * a process that is gone has no degradation left to report.
126
127
  */
127
- const droppedLiveness = (globalThis.__opencodeDroppedLiveness ??= new Map());
128
+ const droppedLiveness = (0, global_state_1.getOrInitGlobal)('__opencodeDroppedLiveness', () => new Map());
128
129
  /**
129
130
  * What `AgentEventSource.probeActivity` said the last time a stream was
130
131
  * (re-)attached for this instance (Issue #2054).
@@ -134,7 +135,7 @@ const droppedLiveness = (globalThis.__opencodeDroppedLiveness ??= new Map());
134
135
  * that turn ends, so "is this pane working right now?" has no answer on the
135
136
  * stream and one `GET /session/status` is the whole of it.
136
137
  */
137
- const probedActivity = (globalThis.__opencodeProbedActivity ??= new Map());
138
+ const probedActivity = (0, global_state_1.getOrInitGlobal)('__opencodeProbedActivity', () => new Map());
138
139
  function keyOf(target) {
139
140
  return (0, auto_yes_state_1.buildCompositeKey)(target.worktreeId, target.cliToolId, target.instanceId);
140
141
  }
@@ -210,19 +210,10 @@ function renderToolPart(part) {
210
210
  const name = part.tool ?? 'tool';
211
211
  const detail = part.title ?? null;
212
212
  const failed = part.status === 'error';
213
- const head = `- \`${name}\`${detail ? ` — ${collapseToLine(detail)}` : ''}`;
213
+ const head = `- \`${name}\`${detail ? ` — ${(0, turn_body_1.collapseToLine)(detail)}` : ''}`;
214
214
  if (!failed)
215
215
  return head;
216
- return part.error ? `${head} _(error: ${collapseToLine(part.error)})_` : `${head} _(error)_`;
217
- }
218
- /**
219
- * A tool title on one line.
220
- *
221
- * A `bash` title is the command, and a heredoc puts newlines in it. Left alone
222
- * they would end the list item and turn the rest of the command into body text.
223
- */
224
- function collapseToLine(value) {
225
- return value.replace(/\s+/g, ' ').trim();
216
+ return part.error ? `${head} _(error: ${(0, turn_body_1.collapseToLine)(part.error)})_` : `${head} _(error)_`;
226
217
  }
227
218
  /**
228
219
  * Render one turn to Markdown.
@@ -280,11 +271,7 @@ function renderOpencodeTurn(turn) {
280
271
  // now sits behind the prose, so what a 200 kB turn loses is the tail of its
281
272
  // thinking rather than the answer (Issue #2272).
282
273
  let body = separated.body;
283
- if (body.length > exports.MAX_OPENCODE_TURN_BODY_LENGTH) {
284
- body =
285
- body.slice(0, exports.MAX_OPENCODE_TURN_BODY_LENGTH - exports.OPENCODE_TURN_TRUNCATION_MARKER.length) +
286
- exports.OPENCODE_TURN_TRUNCATION_MARKER;
287
- }
274
+ body = (0, turn_body_1.truncateTurnBody)(body, exports.MAX_OPENCODE_TURN_BODY_LENGTH, exports.OPENCODE_TURN_TRUNCATION_MARKER);
288
275
  return {
289
276
  sessionId: turn.sessionId,
290
277
  userMessageId: turn.userMessageId,
@@ -111,6 +111,7 @@ const transcript_1 = require("../opencode/transcript");
111
111
  const client_1 = require("./client");
112
112
  const secrets_1 = require("./secrets");
113
113
  const tool_id_1 = require("./tool-id");
114
+ const global_state_1 = require("../../../global-state");
114
115
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode-v2/history');
115
116
  /** The stream events after which a turn's reply is read (Issue #2940). */
116
117
  exports.OPENCODE_V2_TURN_END_EVENT_TYPES = [
@@ -271,7 +272,7 @@ function readLatestOpencodeV2AssistantModel(entries) {
271
272
  * ends close together would otherwise race the existence check and insert the
272
273
  * same turn twice.
273
274
  */
274
- const queue = (globalThis.__opencodeV2HistoryQueue ??= new Map());
275
+ const queue = (0, global_state_1.getOrInitGlobal)('__opencodeV2HistoryQueue', () => new Map());
275
276
  /** Forget queued syncs. Test seam. */
276
277
  function resetOpencodeV2HistoryQueue() {
277
278
  queue.clear();
@@ -125,10 +125,11 @@ function frameDecisionId(payload) {
125
125
  * The decision id ({@link frameDecisionId}) — the `per_…` / `frm_…` the reply
126
126
  * URL takes. An approval and the reply that settles it carry the SAME id, which
127
127
  * is why `classifyAgentEventDelivery` keys on `(event, detail, identity)`
128
- * rather than on the id alone. Every other frame (the `session.execution.*`
129
- * boundaries) answers null and keeps the time window, as v1's `session.idle`
130
- * does. The envelope's `evt_…` is not used, for v1's reason: nothing measured
131
- * says it is unique per frame.
128
+ * rather than on the id alone. Every other frame answers null. Of those only
129
+ * `session.execution.started` meets the time window (the `succeeded` /
130
+ * `failed` / `interrupted` boundaries are `stop`s, which it never suppresses —
131
+ * see `classifyAgentEventDelivery`). The envelope's `evt_…` is not used, for
132
+ * v1's reason: nothing measured says it is unique per frame.
132
133
  */
133
134
  function opencodeV2EventIdentity(payload) {
134
135
  return (0, event_mapper_1.readEventIdentity)(frameDecisionId(payload));
@@ -38,13 +38,14 @@ const path_1 = require("path");
38
38
  const logger_1 = require("../../../../lib/logger");
39
39
  const ports_1 = require("../opencode/ports");
40
40
  const secrets_1 = require("./secrets");
41
+ const global_state_1 = require("../../../global-state");
41
42
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode-v2/ports');
42
43
  /** Ports OpenCode V2 servers are started on. Disjoint from v1's 4200–4299. */
43
44
  exports.OPENCODE_V2_PORT_RANGE = { min: 4300, max: 4399 };
44
45
  const PORT_SPAN = exports.OPENCODE_V2_PORT_RANGE.max - exports.OPENCODE_V2_PORT_RANGE.min + 1;
45
46
  /** File name of the persisted assignments inside the state directory. */
46
47
  exports.OPENCODE_V2_PORT_FILE_NAME = 'ports.json';
47
- const assignments = (globalThis.__opencodeV2PortAssignments ??= new Map());
48
+ const assignments = (0, global_state_1.getOrInitGlobal)('__opencodeV2PortAssignments', () => new Map());
48
49
  /** Absolute path of the persisted assignments. */
49
50
  function getOpencodeV2PortFilePath() {
50
51
  return (0, path_1.join)((0, secrets_1.getOpencodeV2StateDir)(), exports.OPENCODE_V2_PORT_FILE_NAME);
@@ -37,7 +37,6 @@ exports.OPENCODE_V2_MAX_RESYNCED_DECISIONS = exports.OPENCODE_V2_MAX_REJECTED_PR
37
37
  exports.isOpencodeV2Subscribed = isOpencodeV2Subscribed;
38
38
  exports.getOpencodeV2Liveness = getOpencodeV2Liveness;
39
39
  exports.isOpencodeV2StructuredHistoryLive = isOpencodeV2StructuredHistoryLive;
40
- exports.getOpencodeV2SubscribedPort = getOpencodeV2SubscribedPort;
41
40
  exports.openOpencodeV2Subscription = openOpencodeV2Subscription;
42
41
  exports.closeOpencodeV2Subscription = closeOpencodeV2Subscription;
43
42
  exports.resetOpencodeV2Subscriptions = resetOpencodeV2Subscriptions;
@@ -45,6 +44,7 @@ exports.resyncOpencodeV2Pending = resyncOpencodeV2Pending;
45
44
  exports.deliverOpencodeV2Frame = deliverOpencodeV2Frame;
46
45
  exports.refreshOpencodeV2UsageOnFrame = refreshOpencodeV2UsageOnFrame;
47
46
  exports.recordOpencodeV2TurnEnd = recordOpencodeV2TurnEnd;
47
+ const global_state_1 = require("../../../../lib/global-state");
48
48
  const agent_session_telemetry_1 = require("../../../../lib/hooks/agent-session-telemetry");
49
49
  const logger_1 = require("../../../../lib/logger");
50
50
  const event_mapper_1 = require("../event-mapper");
@@ -72,9 +72,9 @@ exports.OPENCODE_V2_MAX_REJECTED_PROBES = 3;
72
72
  * off a server CommandMate does not police.
73
73
  */
74
74
  exports.OPENCODE_V2_MAX_RESYNCED_DECISIONS = 50;
75
- const subscriptions = (globalThis.__opencodeV2Subscriptions ??= new Map());
75
+ const subscriptions = (0, global_state_1.getOrInitGlobal)('__opencodeV2Subscriptions', () => new Map());
76
76
  /** The last liveness of a subscription that ended on its own, for `liveness()`. */
77
- const endedLiveness = (globalThis.__opencodeV2EndedLiveness ??= new Map());
77
+ const endedLiveness = (0, global_state_1.getOrInitGlobal)('__opencodeV2EndedLiveness', () => new Map());
78
78
  /** Whether a subscription is open for the instance. */
79
79
  function isOpencodeV2Subscribed(target) {
80
80
  return subscriptions.has((0, secrets_1.opencodeV2KeyOf)(target));
@@ -97,10 +97,6 @@ function getOpencodeV2Liveness(target) {
97
97
  function isOpencodeV2StructuredHistoryLive(target) {
98
98
  return getOpencodeV2Liveness(target).state === 'live';
99
99
  }
100
- /** The port an open subscription reads, or null. */
101
- function getOpencodeV2SubscribedPort(target) {
102
- return subscriptions.get((0, secrets_1.opencodeV2KeyOf)(target))?.port ?? null;
103
- }
104
100
  function handleFor(state) {
105
101
  return {
106
102
  close: async () => {
@@ -58,6 +58,7 @@ const event_mapper_1 = require("../event-mapper");
58
58
  const client_1 = require("./client");
59
59
  const history_1 = require("./history");
60
60
  const secrets_1 = require("./secrets");
61
+ const global_state_1 = require("../../../global-state");
61
62
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/opencode-v2/usage');
62
63
  /** The frame that says a session's running total moved. */
63
64
  exports.OPENCODE_V2_USAGE_EVENT_TYPE = 'session.usage.updated';
@@ -179,7 +180,7 @@ async function refreshOpencodeV2SessionUsage(target, port, sessionId, isCurrent
179
180
  }
180
181
  }
181
182
  /** One refresh in flight per instance, on `globalThis` for #1736's reason. */
182
- const slots = (globalThis.__opencodeV2UsageRefreshes ??= new Map());
183
+ const slots = (0, global_state_1.getOrInitGlobal)('__opencodeV2UsageRefreshes', () => new Map());
183
184
  /** Forget in-flight markers. Test seam. */
184
185
  function resetOpencodeV2UsageRefreshes() {
185
186
  slots.clear();
@@ -36,8 +36,9 @@ exports.answerPendingDecision = answerPendingDecision;
36
36
  exports.answerPendingDecisionWithReceipt = answerPendingDecisionWithReceipt;
37
37
  const auto_yes_state_1 = require("../../../lib/auto-yes-state");
38
38
  const logger_1 = require("../../../lib/logger");
39
+ const global_state_1 = require("../../global-state");
39
40
  const logger = (0, logger_1.createLogger)('lib/hooks/sources/pending-decisions');
40
- const pendingByInstance = (globalThis.__agentSourcePendingDecisions ??= new Map());
41
+ const pendingByInstance = (0, global_state_1.getOrInitGlobal)('__agentSourcePendingDecisions', () => new Map());
41
42
  /**
42
43
  * Cap on simultaneously open slots for one instance.
43
44
  *
@@ -42,9 +42,10 @@ const source_5 = require("./codex/source");
42
42
  const source_6 = require("./opencode/source");
43
43
  const source_7 = require("./command-code/source");
44
44
  const source_8 = require("./opencode-v2/source");
45
- const registered = (globalThis.__agentEventSources ??= new Map());
45
+ const global_state_1 = require("../../global-state");
46
+ const registered = (0, global_state_1.getOrInitGlobal)('__agentEventSources', () => new Map());
46
47
  /** Memoised compatibility sources, so repeated lookups return one object. */
47
- const legacy = (globalThis.__agentEventLegacySources ??= new Map());
48
+ const legacy = (0, global_state_1.getOrInitGlobal)('__agentEventLegacySources', () => new Map());
48
49
  /**
49
50
  * Add or replace a tool's source.
50
51
  *