commandmate 0.44.2 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (621) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +289 -289
  3. package/.next/app-path-routes-manifest.json +20 -20
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/next-server.js.nft.json +1 -1
  6. package/.next/prerender-manifest.json +12 -12
  7. package/.next/react-loadable-manifest.json +26 -32
  8. package/.next/required-server-files.json +1 -1
  9. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/api/agents/update/route.js +1 -1
  11. package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/agents/versions/route.js +1 -1
  13. package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/app/update/route.js +2 -2
  16. package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/auth/login/route.js +1 -1
  19. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  22. package/.next/server/app/api/capabilities/route.js +1 -1
  23. package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/daily-summary/route.js +1 -1
  25. package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
  26. package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/daily-summary/status/route.js +1 -1
  28. package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
  29. package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/external-apps/[id]/route.js +1 -1
  32. package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/external-apps/route.js +1 -1
  34. package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/hooks/agent-event/route.js +2 -2
  38. package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
  39. package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/hooks/claude-done/route.js +2 -2
  41. package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
  42. package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/hooks/permission-request/route.js +1 -1
  44. package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
  45. package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/push/escalation/route.js +1 -1
  49. package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/push/subscriptions/route.js +2 -2
  51. package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/push/vapid/route.js +1 -1
  53. package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
  54. package/.next/server/app/api/relays/[relayId]/cancel/route.js +1 -1
  55. package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
  56. package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/relays/route.js +1 -1
  58. package/.next/server/app/api/relays/route.js.nft.json +1 -1
  59. package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
  60. package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/repositories/[id]/route.js +1 -1
  62. package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
  64. package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
  65. package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
  66. package/.next/server/app/api/repositories/clone/route.js +1 -1
  67. package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
  68. package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
  70. package/.next/server/app/api/repositories/restore/route.js +1 -1
  71. package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
  72. package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/repositories/route.js +1 -1
  74. package/.next/server/app/api/repositories/route.js.nft.json +1 -1
  75. package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
  76. package/.next/server/app/api/repositories/scan/route.js +1 -1
  77. package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
  78. package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/api/repositories/sync/route.js +1 -1
  80. package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
  81. package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
  83. package/.next/server/app/api/settings/default-agents/route.js +1 -1
  84. package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
  85. package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
  87. package/.next/server/app/api/sidebar/group-order/route.js +1 -1
  88. package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
  89. package/.next/server/app/api/skills/[id]/route.js +1 -1
  90. package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
  91. package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
  94. package/.next/server/app/api/skills/route.js +1 -1
  95. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/api/templates/[id]/route.js +2 -2
  100. package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/templates/route.js +2 -2
  102. package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
  104. package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
  106. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
  107. package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
  109. package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
  110. package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
  112. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
  113. package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
  116. package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
  117. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +3 -3
  118. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
  119. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
  120. package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
  121. package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
  122. package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
  123. package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
  124. package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
  125. package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
  126. package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
  128. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +2 -2
  129. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
  130. package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
  131. package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js +1 -1
  132. package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
  133. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
  134. package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
  135. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
  136. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
  138. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
  139. package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
  140. package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
  141. package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
  142. package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
  143. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
  144. package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
  145. package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
  146. package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
  147. package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
  148. package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
  149. package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
  150. package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
  151. package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
  152. package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
  153. package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
  155. package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
  156. package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
  157. package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
  158. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
  159. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
  160. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
  161. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
  162. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
  163. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
  164. package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
  166. package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
  167. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
  168. package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
  169. package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
  170. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js +1 -1
  171. package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
  172. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
  173. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
  174. package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
  175. package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
  176. package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
  177. package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
  178. package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
  179. package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
  180. package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
  181. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
  182. package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
  183. package/.next/server/app/api/worktrees/[id]/marp-render/route.js +3 -3
  184. package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
  185. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
  186. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
  187. package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
  188. package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
  189. package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
  190. package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js +1 -1
  191. package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
  192. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
  193. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
  194. package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
  195. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
  196. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
  197. package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
  198. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
  199. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
  200. package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
  201. package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
  202. package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
  203. package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
  204. package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
  205. package/.next/server/app/api/worktrees/[id]/route.js +1 -1
  206. package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
  207. package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
  208. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +2 -2
  209. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
  210. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
  211. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +2 -2
  212. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
  213. package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
  214. package/.next/server/app/api/worktrees/[id]/schedules/route.js +3 -3
  215. package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
  216. package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
  217. package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
  218. package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
  219. package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
  220. package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
  221. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +2 -2
  222. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
  223. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
  224. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
  225. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
  226. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
  227. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
  228. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
  229. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
  230. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
  231. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
  232. package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
  233. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
  234. package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
  235. package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
  236. package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
  237. package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
  238. package/.next/server/app/api/worktrees/[id]/tasks/route.js +1 -1
  239. package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
  240. package/.next/server/app/api/worktrees/[id]/terminal/route.js +2 -2
  241. package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
  242. package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
  243. package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
  244. package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
  245. package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
  246. package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
  247. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js +1 -1
  248. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  249. package/.next/server/app/api/worktrees/[id]/todos/route.js +1 -1
  250. package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
  251. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
  252. package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
  253. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
  254. package/.next/server/app/api/worktrees/[id]/verify/config/route.js +1 -1
  255. package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
  256. package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
  257. package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
  258. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
  259. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
  260. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
  261. package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
  262. package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
  263. package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
  264. package/.next/server/app/api/worktrees/route.js +1 -1
  265. package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
  266. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  267. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  268. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  269. package/.next/server/app/more/page_client-reference-manifest.js +1 -1
  270. package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  271. package/.next/server/app/page_client-reference-manifest.js +1 -1
  272. package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
  273. package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
  274. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  275. package/.next/server/app/sessions/page.js +1 -1
  276. package/.next/server/app/sessions/page.js.nft.json +1 -1
  277. package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  278. package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
  279. package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
  280. package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  281. package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
  282. package/.next/server/app/worktrees/[id]/page.js +11 -11
  283. package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
  284. package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
  285. package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
  286. package/.next/server/app-paths-manifest.json +20 -20
  287. package/.next/server/chunks/1191.js +2 -2
  288. package/.next/server/chunks/1210.js +1 -1
  289. package/.next/server/chunks/1503.js +2 -2
  290. package/.next/server/chunks/1559.js +2 -0
  291. package/.next/server/chunks/1789.js +1 -0
  292. package/.next/server/chunks/1944.js +1 -1
  293. package/.next/server/chunks/2119.js +1 -1
  294. package/.next/server/chunks/22.js +1 -1
  295. package/.next/server/chunks/2404.js +1 -1
  296. package/.next/server/chunks/2445.js +1 -1
  297. package/.next/server/chunks/2460.js +1 -1
  298. package/.next/server/chunks/2710.js +2 -2
  299. package/.next/server/chunks/2908.js +1 -1
  300. package/.next/server/chunks/2980.js +1 -1
  301. package/.next/server/chunks/3241.js +1 -1
  302. package/.next/server/chunks/3480.js +1 -1
  303. package/.next/server/chunks/3718.js +1 -1
  304. package/.next/server/chunks/4207.js +2 -2
  305. package/.next/server/chunks/450.js +1 -1
  306. package/.next/server/chunks/{9353.js → 4718.js} +2 -2
  307. package/.next/server/chunks/4802.js +1 -1
  308. package/.next/server/chunks/4837.js +14 -0
  309. package/.next/server/chunks/5048.js +1 -1
  310. package/.next/server/chunks/5064.js +1 -1
  311. package/.next/server/chunks/5209.js +1 -0
  312. package/.next/server/chunks/5292.js +7 -0
  313. package/.next/server/chunks/5595.js +1 -1
  314. package/.next/server/chunks/5625.js +25 -0
  315. package/.next/server/chunks/5737.js +1 -1
  316. package/.next/server/chunks/6065.js +1 -1
  317. package/.next/server/chunks/611.js +1 -1
  318. package/.next/server/chunks/6130.js +1 -1
  319. package/.next/server/chunks/6401.js +1 -1
  320. package/.next/server/chunks/6781.js +1 -1
  321. package/.next/server/chunks/6793.js +3 -3
  322. package/.next/server/chunks/7491.js +2 -2
  323. package/.next/server/chunks/7905.js +1 -1
  324. package/.next/server/chunks/850.js +1 -1
  325. package/.next/server/chunks/8728.js +3 -3
  326. package/.next/server/chunks/8791.js +1 -1
  327. package/.next/server/chunks/8800.js +1 -1
  328. package/.next/server/chunks/8918.js +6 -8
  329. package/.next/server/chunks/9051.js +1 -1
  330. package/.next/server/chunks/9130.js +1 -1
  331. package/.next/server/chunks/9390.js +2 -2
  332. package/.next/server/chunks/9584.js +1 -1
  333. package/.next/server/chunks/9627.js +6 -6
  334. package/.next/server/chunks/9731.js +3 -3
  335. package/.next/server/middleware-build-manifest.js +1 -1
  336. package/.next/server/middleware-manifest.json +5 -5
  337. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  338. package/.next/server/pages/500.html +1 -1
  339. package/.next/server/server-reference-manifest.json +1 -1
  340. package/.next/static/chunks/1464.09cd37fee202ec4b.js +1 -0
  341. package/.next/static/chunks/{1642-fb2e176aaadbd137.js → 1642-767aed8e7c61ef7f.js} +1 -1
  342. package/.next/static/chunks/2053-390e77fce43b555c.js +1 -0
  343. package/.next/static/chunks/{2407-051f6f84226a9f2c.js → 2407-dd4a0f04f1349221.js} +1 -1
  344. package/.next/static/chunks/{2619-04bc32f026a0d946.js → 2619-a305ad4810f1393a.js} +1 -1
  345. package/.next/static/chunks/{2751-9ef0f4b450bd4ef0.js → 2751-5f0b2702accd164d.js} +1 -1
  346. package/.next/static/chunks/{282.6b6f2e31a96674dd.js → 282.a1013532fd9a61b4.js} +1 -1
  347. package/.next/static/chunks/3237.94c29281d9ec122e.js +1 -0
  348. package/.next/static/chunks/3480.2e21f62e5e9d3ba5.js +1 -0
  349. package/.next/static/chunks/4290.c06dbe243819fea0.js +66 -0
  350. package/.next/static/chunks/4727-5d695d71e3fdf97b.js +1 -0
  351. package/.next/static/chunks/{5222.305dc0ebba9c0784.js → 5222.39e2034d3fce233c.js} +1 -1
  352. package/.next/static/chunks/{7095.8c869e553133a40e.js → 7095.87323a4fdf426341.js} +1 -1
  353. package/.next/static/chunks/{7485.442b21101fca7257.js → 7485.8a2a9d7c5396aa26.js} +3 -3
  354. package/.next/static/chunks/{8165-3853772f6ae1299b.js → 8165-3525fb42f1b4976e.js} +1 -1
  355. package/.next/static/chunks/app/{layout-9da1ab602bcb3051.js → layout-07d040cb3d3ea657.js} +1 -1
  356. package/.next/static/chunks/app/sessions/page-2af68c63211c751f.js +1 -0
  357. package/.next/static/chunks/app/worktrees/[id]/page-35f0e31a725d1c89.js +1 -0
  358. package/.next/static/chunks/app/worktrees/[id]/terminal/{page-373ea37b16d930c7.js → page-c601f3b3ece6557e.js} +1 -1
  359. package/.next/static/chunks/{webpack-021f0741f22dd16a.js → webpack-165d8df9acd1c5d4.js} +1 -1
  360. package/.next/static/css/057f64a65726c439.css +1 -0
  361. package/.next/trace +13 -13
  362. package/dist/cli/commands/ask.d.ts.map +1 -1
  363. package/dist/cli/commands/ask.js +120 -119
  364. package/dist/cli/commands/attach.d.ts +94 -0
  365. package/dist/cli/commands/attach.d.ts.map +1 -1
  366. package/dist/cli/commands/attach.js +145 -7
  367. package/dist/cli/commands/auto-yes.js +1 -1
  368. package/dist/cli/commands/capture.d.ts.map +1 -1
  369. package/dist/cli/commands/capture.js +3 -5
  370. package/dist/cli/commands/command-target.d.ts +23 -0
  371. package/dist/cli/commands/command-target.d.ts.map +1 -0
  372. package/dist/cli/commands/command-target.js +25 -0
  373. package/dist/cli/commands/instances.d.ts.map +1 -1
  374. package/dist/cli/commands/instances.js +41 -2
  375. package/dist/cli/commands/message-dispatch.d.ts +36 -0
  376. package/dist/cli/commands/message-dispatch.d.ts.map +1 -0
  377. package/dist/cli/commands/message-dispatch.js +63 -0
  378. package/dist/cli/commands/reply.d.ts.map +1 -1
  379. package/dist/cli/commands/reply.js +2 -5
  380. package/dist/cli/commands/respond.d.ts.map +1 -1
  381. package/dist/cli/commands/respond.js +3 -6
  382. package/dist/cli/commands/send.d.ts.map +1 -1
  383. package/dist/cli/commands/send.js +149 -146
  384. package/dist/cli/commands/skill-format.d.ts +8 -0
  385. package/dist/cli/commands/skill-format.d.ts.map +1 -1
  386. package/dist/cli/commands/skill-format.js +13 -3
  387. package/dist/cli/commands/wait.d.ts.map +1 -1
  388. package/dist/cli/commands/wait.js +657 -431
  389. package/dist/cli/types/api-responses.d.ts +156 -27
  390. package/dist/cli/types/api-responses.d.ts.map +1 -1
  391. package/dist/cli/types/api-responses.js +4 -2
  392. package/dist/cli/utils/api-client.d.ts +25 -5
  393. package/dist/cli/utils/api-client.d.ts.map +1 -1
  394. package/dist/cli/utils/api-client.js +87 -55
  395. package/dist/cli/utils/server-url.d.ts +1 -0
  396. package/dist/cli/utils/server-url.d.ts.map +1 -1
  397. package/dist/cli/utils/server-url.js +7 -0
  398. package/dist/cli/utils/verify-runner.d.ts +21 -0
  399. package/dist/cli/utils/verify-runner.d.ts.map +1 -1
  400. package/dist/cli/utils/verify-runner.js +38 -1
  401. package/dist/config/uat-isolation.d.ts +140 -0
  402. package/dist/config/uat-isolation.d.ts.map +1 -0
  403. package/dist/config/uat-isolation.js +246 -0
  404. package/dist/lib/global-state.d.ts +12 -0
  405. package/dist/lib/global-state.d.ts.map +1 -0
  406. package/dist/lib/global-state.js +16 -0
  407. package/dist/lib/polling/auto-yes-suppression-reason.d.ts +33 -0
  408. package/dist/lib/polling/auto-yes-suppression-reason.d.ts.map +1 -0
  409. package/dist/lib/polling/auto-yes-suppression-reason.js +2 -0
  410. package/dist/lib/session/prompt-view.d.ts +26 -3
  411. package/dist/lib/session/prompt-view.d.ts.map +1 -1
  412. package/dist/lib/session/prompt-view.js +26 -3
  413. package/dist/lib/session/status-evidence-type.d.ts +16 -0
  414. package/dist/lib/session/status-evidence-type.d.ts.map +1 -0
  415. package/dist/lib/session/status-evidence-type.js +2 -0
  416. package/dist/lib/tmux/legacy-session-alias.d.ts.map +1 -1
  417. package/dist/lib/tmux/legacy-session-alias.js +2 -1
  418. package/dist/server/locales/en/worktree.json +8 -2
  419. package/dist/server/locales/ja/worktree.json +8 -2
  420. package/dist/server/src/cli/types/api-responses.js +4 -2
  421. package/dist/server/src/config/cli-tool-timing-config.js +1 -6
  422. package/dist/server/src/config/uat-isolation.js +246 -0
  423. package/dist/server/src/lib/assistant-response-saver.js +62 -3
  424. package/dist/server/src/lib/auto-yes-lifecycle.js +6 -0
  425. package/dist/server/src/lib/auto-yes-poller.js +450 -160
  426. package/dist/server/src/lib/auto-yes-state.js +2 -2
  427. package/dist/server/src/lib/cli-tools/antigravity.js +38 -79
  428. package/dist/server/src/lib/cli-tools/base.js +151 -0
  429. package/dist/server/src/lib/cli-tools/codex.js +44 -80
  430. package/dist/server/src/lib/cli-tools/command-code.js +24 -56
  431. package/dist/server/src/lib/cli-tools/copilot.js +25 -67
  432. package/dist/server/src/lib/cli-tools/direct-input.js +8 -0
  433. package/dist/server/src/lib/cli-tools/gemini.js +23 -73
  434. package/dist/server/src/lib/cli-tools/opencode-pane-width.js +53 -0
  435. package/dist/server/src/lib/cli-tools/opencode-v2.js +9 -7
  436. package/dist/server/src/lib/cli-tools/opencode.js +21 -85
  437. package/dist/server/src/lib/cli-tools/submit-verified-sender.js +127 -4
  438. package/dist/server/src/lib/cli-tools/vibe-local.js +21 -66
  439. package/dist/server/src/lib/detection/cli-patterns.js +374 -3065
  440. package/dist/server/src/lib/detection/idle-evidence-observation.js +2 -2
  441. package/dist/server/src/lib/detection/model-info-extractor.js +57 -3
  442. package/dist/server/src/lib/detection/prompt-detect-multiple-choice.js +7 -32
  443. package/dist/server/src/lib/detection/prompt-detector.js +2 -35
  444. package/dist/server/src/lib/detection/selection-shape-patterns.js +69 -0
  445. package/dist/server/src/lib/detection/selection-shape.js +32 -520
  446. package/dist/server/src/lib/detection/shared/pasted-text.js +41 -0
  447. package/dist/server/src/lib/detection/shared/shell-pane-command.js +16 -0
  448. package/dist/server/src/lib/detection/shared/strip-box-drawing.js +25 -0
  449. package/dist/server/src/lib/detection/status-detector.js +1 -1
  450. package/dist/server/src/lib/detection/tools/antigravity/detect.js +5 -29
  451. package/dist/server/src/lib/detection/tools/antigravity/dialog.js +2 -15
  452. package/dist/server/src/lib/detection/tools/antigravity/patterns.js +286 -0
  453. package/dist/server/src/lib/detection/tools/claude/detect.js +3 -14
  454. package/dist/server/src/lib/detection/tools/claude/patterns.js +264 -4
  455. package/dist/server/src/lib/detection/tools/claude/prompt.js +2 -10
  456. package/dist/server/src/lib/detection/tools/codex/detect.js +46 -85
  457. package/dist/server/src/lib/detection/tools/codex/live-region.js +33 -2
  458. package/dist/server/src/lib/detection/tools/codex/patterns.js +855 -0
  459. package/dist/server/src/lib/detection/tools/codex/prompt.js +2 -10
  460. package/dist/server/src/lib/detection/tools/command-code/detect.js +8 -50
  461. package/dist/server/src/lib/detection/tools/command-code/dialog.js +2 -18
  462. package/dist/server/src/lib/detection/tools/command-code/patterns.js +234 -0
  463. package/dist/server/src/lib/detection/tools/command-code/selection-shape.js +461 -0
  464. package/dist/server/src/lib/detection/tools/context-above.js +20 -0
  465. package/dist/server/src/lib/detection/tools/copilot/detect.js +10 -35
  466. package/dist/server/src/lib/detection/tools/copilot/patterns.js +640 -0
  467. package/dist/server/src/lib/detection/tools/copilot/prompt.js +2 -10
  468. package/dist/server/src/lib/detection/tools/gemini/patterns.js +29 -0
  469. package/dist/server/src/lib/detection/tools/live-region-specs.js +1 -1
  470. package/dist/server/src/lib/detection/tools/opencode/detect.js +8 -49
  471. package/dist/server/src/lib/detection/tools/opencode/patterns.js +508 -0
  472. package/dist/server/src/lib/detection/tools/opencode-v2/detect.js +7 -42
  473. package/dist/server/src/lib/detection/tools/opencode-v2/patterns.js +63 -0
  474. package/dist/server/src/lib/detection/tools/run-detection.js +6 -47
  475. package/dist/server/src/lib/detection/tools/verdicts.js +59 -0
  476. package/dist/server/src/lib/detection/tools/vibe-local/patterns.js +20 -0
  477. package/dist/server/src/lib/detection/truncate-raw-content.js +38 -0
  478. package/dist/server/src/lib/detection/turn-abandoned.js +66 -0
  479. package/dist/server/src/lib/detection/unclassified-frame-tracker.js +2 -2
  480. package/dist/server/src/lib/git/git-exec.js +23 -5
  481. package/dist/server/src/lib/global-state.js +16 -0
  482. package/dist/server/src/lib/hooks/agent-session-telemetry.js +4 -6
  483. package/dist/server/src/lib/hooks/permission-decision-state.js +2 -2
  484. package/dist/server/src/lib/hooks/sources/antigravity/history.js +11 -76
  485. package/dist/server/src/lib/hooks/sources/antigravity/hooks-config.js +63 -1
  486. package/dist/server/src/lib/hooks/sources/antigravity/source.js +16 -0
  487. package/dist/server/src/lib/hooks/sources/antigravity/transcript.js +3 -12
  488. package/dist/server/src/lib/hooks/sources/claude/history.js +17 -156
  489. package/dist/server/src/lib/hooks/sources/claude/queued-notice.js +53 -0
  490. package/dist/server/src/lib/hooks/sources/claude/self-resume.js +213 -0
  491. package/dist/server/src/lib/hooks/sources/claude/source.js +57 -10
  492. package/dist/server/src/lib/hooks/sources/claude/transcript.js +3 -13
  493. package/dist/server/src/lib/hooks/sources/codex/history.js +11 -74
  494. package/dist/server/src/lib/hooks/sources/codex/hooks-config.js +147 -11
  495. package/dist/server/src/lib/hooks/sources/codex/relay-install.js +64 -21
  496. package/dist/server/src/lib/hooks/sources/codex/transcript.js +5 -15
  497. package/dist/server/src/lib/hooks/sources/command-code/history.js +20 -121
  498. package/dist/server/src/lib/hooks/sources/command-code/transcript.js +3 -13
  499. package/dist/server/src/lib/hooks/sources/copilot/hook-settings.js +161 -31
  500. package/dist/server/src/lib/hooks/sources/define-source.js +40 -55
  501. package/dist/server/src/lib/hooks/sources/event-mapper.js +2 -1
  502. package/dist/server/src/lib/hooks/sources/opencode/diff.js +3 -4
  503. package/dist/server/src/lib/hooks/sources/opencode/history.js +2 -1
  504. package/dist/server/src/lib/hooks/sources/opencode/launch-settings.js +2 -1
  505. package/dist/server/src/lib/hooks/sources/opencode/payloads.js +2 -1
  506. package/dist/server/src/lib/hooks/sources/opencode/ports.js +2 -1
  507. package/dist/server/src/lib/hooks/sources/opencode/subscription.js +4 -3
  508. package/dist/server/src/lib/hooks/sources/opencode/transcript.js +3 -16
  509. package/dist/server/src/lib/hooks/sources/opencode-v2/history.js +2 -1
  510. package/dist/server/src/lib/hooks/sources/opencode-v2/mappers.js +5 -4
  511. package/dist/server/src/lib/hooks/sources/opencode-v2/ports.js +2 -1
  512. package/dist/server/src/lib/hooks/sources/opencode-v2/subscription.js +3 -7
  513. package/dist/server/src/lib/hooks/sources/opencode-v2/usage.js +2 -1
  514. package/dist/server/src/lib/hooks/sources/pending-decisions.js +2 -1
  515. package/dist/server/src/lib/hooks/sources/registry.js +3 -2
  516. package/dist/server/src/lib/hooks/sources/transcript-history.js +262 -0
  517. package/dist/server/src/lib/hooks/sources/turn-body.js +31 -0
  518. package/dist/server/src/lib/hooks/tool-input-normalization-state.js +2 -2
  519. package/dist/server/src/lib/polling/antigravity-permission-receipts.js +2 -2
  520. package/dist/server/src/lib/polling/auto-yes-enter-fallback-state.js +142 -0
  521. package/dist/server/src/lib/polling/auto-yes-enter-fallback.js +187 -0
  522. package/dist/server/src/lib/polling/auto-yes-resolver.js +9 -3
  523. package/dist/server/src/lib/polling/auto-yes-suppression-reason.js +2 -0
  524. package/dist/server/src/lib/polling/auto-yes-suppression-state.js +2 -2
  525. package/dist/server/src/lib/polling/pending-scraped-response.js +190 -0
  526. package/dist/server/src/lib/polling/prompt-dedup-state.js +2 -2
  527. package/dist/server/src/lib/polling/prompt-dedup.js +2 -2
  528. package/dist/server/src/lib/polling/response-checker-dialog-gate.js +95 -0
  529. package/dist/server/src/lib/polling/response-checker-extraction-result.js +50 -0
  530. package/dist/server/src/lib/polling/response-checker-extraction-steps.js +670 -0
  531. package/dist/server/src/lib/polling/response-checker.js +641 -1142
  532. package/dist/server/src/lib/polling/response-dedup.js +3 -4
  533. package/dist/server/src/lib/polling/response-poller-constants.js +17 -0
  534. package/dist/server/src/lib/polling/response-poller-core.js +54 -20
  535. package/dist/server/src/lib/polling/startup-screen.js +142 -0
  536. package/dist/server/src/lib/polling/structured-history-gate.js +3 -2
  537. package/dist/server/src/lib/prompt-answer-semantic.js +178 -0
  538. package/dist/server/src/lib/prompt-answer-sender.js +5 -4
  539. package/dist/server/src/lib/push/failure-episode-state.js +2 -2
  540. package/dist/server/src/lib/push/notification-dedup.js +3 -4
  541. package/dist/server/src/lib/push/prompt-card-state.js +2 -2
  542. package/dist/server/src/lib/push/waiting-push-notifier.js +3 -4
  543. package/dist/server/src/lib/realtime/publisher-registry.js +3 -2
  544. package/dist/server/src/lib/realtime/terminal-broadcast.js +38 -5
  545. package/dist/server/src/lib/realtime/terminal-session-ownership.js +45 -0
  546. package/dist/server/src/lib/relay/relay-delivery.js +3 -2
  547. package/dist/server/src/lib/relay/relay-readiness.js +38 -1
  548. package/dist/server/src/lib/response-cleaner.js +24 -1
  549. package/dist/server/src/lib/response-extractor.js +16 -0
  550. package/dist/server/src/lib/schedule-manager.js +8 -10
  551. package/dist/server/src/lib/session/agent-event-ask-user-question.js +168 -0
  552. package/dist/server/src/lib/session/agent-event-awaiting-instruction.js +104 -0
  553. package/dist/server/src/lib/session/agent-event-dedup.js +539 -0
  554. package/dist/server/src/lib/session/agent-event-model.js +562 -0
  555. package/dist/server/src/lib/session/agent-event-record.js +10 -0
  556. package/dist/server/src/lib/session/agent-event-state.js +107 -1854
  557. package/dist/server/src/lib/session/agent-event-structured-state.js +109 -0
  558. package/dist/server/src/lib/session/agent-event-turn.js +862 -0
  559. package/dist/server/src/lib/session/agent-session-lifecycle.js +11 -2
  560. package/dist/server/src/lib/session/chat-turn-progress.js +322 -0
  561. package/dist/server/src/lib/session/claude-executor.js +45 -5
  562. package/dist/server/src/lib/session/claude-session.js +21 -65
  563. package/dist/server/src/lib/session/cli-session.js +17 -0
  564. package/dist/server/src/lib/session/current-output-builder.js +449 -1107
  565. package/dist/server/src/lib/session/current-output-history-writers.js +255 -0
  566. package/dist/server/src/lib/session/current-output-types.js +9 -0
  567. package/dist/server/src/lib/session/detection-divergence.js +55 -0
  568. package/dist/server/src/lib/session/global-session-constants.js +2 -13
  569. package/dist/server/src/lib/session/hook-turn-hold.js +102 -0
  570. package/dist/server/src/lib/session/layer-disagreement.js +2 -2
  571. package/dist/server/src/lib/session/opencode-session-store.js +2 -1
  572. package/dist/server/src/lib/session/prompt-view.js +26 -3
  573. package/dist/server/src/lib/session/prompt-waiting-composition.js +3 -2
  574. package/dist/server/src/lib/session/provisional-turn.js +3 -1
  575. package/dist/server/src/lib/session/send-user-message.js +1 -1
  576. package/dist/server/src/lib/session/session-starting-state.js +4 -6
  577. package/dist/server/src/lib/session/status-evidence-type.js +2 -0
  578. package/dist/server/src/lib/session/status-evidence.js +2 -2
  579. package/dist/server/src/lib/session/structured-status-merge.js +335 -0
  580. package/dist/server/src/lib/session/waiting-episode-state.js +3 -4
  581. package/dist/server/src/lib/session-cleanup.js +1 -5
  582. package/dist/server/src/lib/skills/install-plan.js +3 -1
  583. package/dist/server/src/lib/skills/preview-diff.js +24 -3
  584. package/dist/server/src/lib/skills/snapshot-store.js +2 -2
  585. package/dist/server/src/lib/skills/uninstall-plan.js +3 -2
  586. package/dist/server/src/lib/timer-manager.js +6 -8
  587. package/dist/server/src/lib/tmux/geometry-delegation.js +3 -4
  588. package/dist/server/src/lib/tmux/legacy-session-alias.js +2 -1
  589. package/dist/server/src/lib/tmux/session-hooks.js +2 -1
  590. package/dist/server/src/lib/tmux/session-status-options.js +3 -3
  591. package/dist/server/src/lib/tmux/tmux-capture-cache.js +3 -2
  592. package/dist/server/src/lib/tmux/tmux.js +33 -59
  593. package/dist/server/src/lib/tui-accumulator.js +2 -2
  594. package/dist/server/src/lib/verification/env-clean-gate.js +6 -5
  595. package/dist/server/src/lib/version-checker.js +6 -6
  596. package/dist/server/src/lib/ws-server.js +47 -11
  597. package/docs/en/user-guide/commands-guide.md +0 -1
  598. package/docs/en/user-guide/webapp-guide.md +27 -3
  599. package/package.json +3 -2
  600. package/release-notes/0.44.3.json +82 -0
  601. package/release-notes/0.45.0.json +41 -0
  602. package/scripts/hooks/cmate-agent-event.sh +38 -0
  603. package/.next/server/chunks/1068.js +0 -1
  604. package/.next/server/chunks/4372.js +0 -5
  605. package/.next/server/chunks/6474.js +0 -14
  606. package/.next/server/chunks/967.js +0 -1
  607. package/.next/server/chunks/9798.js +0 -2
  608. package/.next/server/chunks/9882.js +0 -25
  609. package/.next/static/chunks/2053-85a974ddfe7498fe.js +0 -1
  610. package/.next/static/chunks/4290.6cf86f68d73b6e77.js +0 -82
  611. package/.next/static/chunks/4459.a94b52985a76509a.js +0 -1
  612. package/.next/static/chunks/591-539fec878c9dec5e.js +0 -1
  613. package/.next/static/chunks/5951.616956b6aa5df63f.js +0 -1
  614. package/.next/static/chunks/9856.15463dd58437e2ac.js +0 -1
  615. package/.next/static/chunks/app/sessions/page-049e06335187aa91.js +0 -1
  616. package/.next/static/chunks/app/worktrees/[id]/page-2a81397e60f17e63.js +0 -1
  617. package/.next/static/css/38070d879efa1371.css +0 -1
  618. package/dist/server/src/lib/cli-tools/index.js +0 -41
  619. package/dist/server/src/lib/polling/global-session-poller.js +0 -140
  620. /package/.next/static/{QlCqLjorauDDBXPa-C7TK → TPWbZB3zBp3Zv_eFEOlmt}/_buildManifest.js +0 -0
  621. /package/.next/static/{QlCqLjorauDDBXPa-C7TK → TPWbZB3zBp3Zv_eFEOlmt}/_ssgManifest.js +0 -0
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ /**
3
+ * `CM_UAT_ISOLATION=1` — the mode a UAT / daily-check server and its CLI run in
4
+ * (Issue #3360).
5
+ *
6
+ * A UAT server is isolated from production by its own port, DB, tmux socket and
7
+ * state directories (`.commandmate/uat.yaml`). Three paths were left that those
8
+ * do not cover, because they are keyed by the user's login rather than by
9
+ * anything the UAT can move:
10
+ *
11
+ * 1. **codex's shared files.** `$CODEX_HOME/hooks.json`, the relay under
12
+ * `$CODEX_HOME/commandmate/` and the hook trust in `config.toml` live beside
13
+ * codex's login (`auth.json`), so moving `CODEX_HOME` logs codex out. In this
14
+ * mode the server writes none of them: it reuses the shared file only when it
15
+ * is already byte-identical to what this build would write (the per-session
16
+ * URL travels in the environment, so the hooks then reach THIS server), and
17
+ * otherwise refuses the launch ({@link UatIsolationLaunchRefusedError}) —
18
+ * a bare codex would still read the shared file and run production's hooks.
19
+ * antigravity's `~/.gemini/config/hooks.json` and copilot's
20
+ * `~/.copilot/settings.json` (Issue #3391) are handled the same way. It
21
+ * also never answers the hook review with *trust*, which is codex writing
22
+ * `config.toml`.
23
+ * 2. **claude's user-level hooks.** `--settings` is added to
24
+ * `~/.claude/settings.json`, not substituted for it, so the user's own hooks
25
+ * (which post to production) would run in a UAT session too. Moving
26
+ * `CLAUDE_CONFIG_DIR` logs claude out (measured, `-p` and interactive). In
27
+ * this mode claude is launched with `--setting-sources project,local`, which
28
+ * drops the user source and keeps `--settings` (measured on 2.1.289) — the
29
+ * interactive launch and `claude -p` (Schedules, daily summary) alike.
30
+ * 3. **the CLI's `.env`.** A client in this mode reads no `.env` file at all and
31
+ * refuses to fall back to port 3000: it dials only the `CM_PORT` the caller
32
+ * exported.
33
+ *
34
+ * Unset (or any value other than `1` / `own-home`) changes nothing anywhere.
35
+ *
36
+ * ## `CM_UAT_ISOLATION=own-home` (Issue #3312)
37
+ *
38
+ * For a run under a dedicated OS user (the daily product-path check), whose
39
+ * HOME holds nobody else's CLI config. Everything above still holds — the
40
+ * launch is refused rather than started bare when hook setup fails, the
41
+ * receiver URL travels in the launch environment, headless `codex exec` /
42
+ * `agy -p` are refused, claude reads no user-level settings, the CLI reads no
43
+ * `.env` and never falls back to 3000 — with one difference: the shared hook
44
+ * files (codex's `hooks.json`, relay and trust, antigravity's and copilot's
45
+ * hook files, the claude settings under `CM_AGENT_HOOKS_DIR`) are WRITTEN by
46
+ * this build, instead of being reused read-only. Only after
47
+ * {@link assertUatOwnHomeWriteTargets} has checked, before each launch, that
48
+ * this process runs as `CM_UAT_DEDICATED_USER`, that HOME is that user's, and
49
+ * that every file it is about to write resolves (symlinks followed) to a place
50
+ * inside that HOME owned by that user. {@link sharedHookWritePolicy} is the one
51
+ * rule each tool's launch path calls.
52
+ *
53
+ * `docs/user-guide/uat-isolation.md` has the measurement table and the skip
54
+ * conditions for what cannot be isolated.
55
+ *
56
+ * @module config/uat-isolation
57
+ */
58
+ var __importDefault = (this && this.__importDefault) || function (mod) {
59
+ return (mod && mod.__esModule) ? mod : { "default": mod };
60
+ };
61
+ Object.defineProperty(exports, "__esModule", { value: true });
62
+ exports.UAT_OWN_HOME_FIX = exports.UAT_SAME_BUILD_FIX = exports.UatIsolationLaunchRefusedError = exports.CLAUDE_UAT_SETTING_SOURCES = exports.UAT_DEDICATED_USER_ENV_VAR = exports.UAT_ISOLATION_OWN_HOME = exports.UAT_ISOLATION_ENV_VAR = void 0;
63
+ exports.getUatIsolationMode = getUatIsolationMode;
64
+ exports.isUatIsolationEnabled = isUatIsolationEnabled;
65
+ exports.checkUatOwnHomeWriteTargets = checkUatOwnHomeWriteTargets;
66
+ exports.assertUatOwnHomeWriteTargets = assertUatOwnHomeWriteTargets;
67
+ exports.sharedHookWritePolicy = sharedHookWritePolicy;
68
+ const fs_1 = __importDefault(require("fs"));
69
+ const os_1 = __importDefault(require("os"));
70
+ const path_1 = __importDefault(require("path"));
71
+ /** The switch. Only the exact values `1` and `own-home` turn it on. */
72
+ exports.UAT_ISOLATION_ENV_VAR = 'CM_UAT_ISOLATION';
73
+ /** The value of {@link UAT_ISOLATION_ENV_VAR} for a run under a dedicated OS user (Issue #3312). */
74
+ exports.UAT_ISOLATION_OWN_HOME = 'own-home';
75
+ /** The login name `own-home` must run as (Issue #3312). Compared with `os.userInfo().username`. */
76
+ exports.UAT_DEDICATED_USER_ENV_VAR = 'CM_UAT_DEDICATED_USER';
77
+ /**
78
+ * `--setting-sources` for a claude session in this mode: the user source
79
+ * (`$CLAUDE_CONFIG_DIR/settings.json`, hooks and plugins included) is dropped;
80
+ * the repository's own `project` / `local` settings and `--settings` stay.
81
+ */
82
+ exports.CLAUDE_UAT_SETTING_SOURCES = 'project,local';
83
+ /** Which isolation mode this process runs in. */
84
+ function getUatIsolationMode(env = process.env) {
85
+ const value = env[exports.UAT_ISOLATION_ENV_VAR];
86
+ if (value === '1')
87
+ return 'shared-read-only';
88
+ if (value === exports.UAT_ISOLATION_OWN_HOME)
89
+ return 'own-home';
90
+ return 'off';
91
+ }
92
+ /**
93
+ * Whether this process runs in UAT isolation mode — `1` or `own-home`. Every
94
+ * protection except "never write the shared hook files" keys off this.
95
+ */
96
+ function isUatIsolationEnabled(env = process.env) {
97
+ return getUatIsolationMode(env) !== 'off';
98
+ }
99
+ /**
100
+ * Thrown by a launch that would otherwise start an agent which reads a shared
101
+ * hook config this server did not (and in this mode may not) write.
102
+ *
103
+ * Starting the agent "without hooks" is not an option for codex, antigravity
104
+ * or copilot: the shared file is read regardless of what this server passes,
105
+ * so the production server's hooks — already trusted — would run in the UAT
106
+ * session and post to production. So the launch is refused, and the message says what
107
+ * makes it start.
108
+ */
109
+ class UatIsolationLaunchRefusedError extends Error {
110
+ constructor(tool, reason, fix) {
111
+ super(getUatIsolationMode() === 'own-home'
112
+ ? `${exports.UAT_ISOLATION_ENV_VAR}=${exports.UAT_ISOLATION_OWN_HOME}: refusing to start ${tool}: ${reason}. ` +
113
+ `This server writes the hook config only inside the dedicated user's own HOME, and ${tool} ` +
114
+ `would otherwise start with hooks this server did not prepare. ${fix}`
115
+ : `${exports.UAT_ISOLATION_ENV_VAR}=1: refusing to start ${tool}: ${reason}. ` +
116
+ `This server does not write the shared hook config in UAT isolation, and ${tool} ` +
117
+ `would read it anyway and run the production hooks. ${fix}`);
118
+ this.name = 'UatIsolationLaunchRefusedError';
119
+ }
120
+ }
121
+ exports.UatIsolationLaunchRefusedError = UatIsolationLaunchRefusedError;
122
+ /** The fix for a shared hook config that does not match this build. */
123
+ exports.UAT_SAME_BUILD_FIX = 'Run the UAT with the same CommandMate build as the production server, so the shared file already matches what this build writes.';
124
+ /** The fix for an `own-home` launch whose user, HOME or write targets did not check out. */
125
+ exports.UAT_OWN_HOME_FIX = `Run ${exports.UAT_ISOLATION_ENV_VAR}=${exports.UAT_ISOLATION_OWN_HOME} as the user named by ${exports.UAT_DEDICATED_USER_ENV_VAR}, ` +
126
+ 'with HOME set to that user\'s home and every hook config path (CODEX_HOME, CM_AGENT_HOOKS_DIR, ...) inside it.';
127
+ function currentIdentity() {
128
+ const info = os_1.default.userInfo();
129
+ return { username: info.username, uid: info.uid, homedir: info.homedir };
130
+ }
131
+ /**
132
+ * Where a write to `target` would land, symlinks followed, and whose entry
133
+ * decides who may write there: the target itself when it exists, else its
134
+ * nearest existing ancestor (a file not yet created is judged by the directory
135
+ * it would be created in). A dangling symlink is refused: writing through it
136
+ * would create a file wherever it points.
137
+ */
138
+ function resolveWriteTarget(target) {
139
+ const absolute = path_1.default.resolve(target);
140
+ let existing = absolute;
141
+ const rest = [];
142
+ for (;;) {
143
+ let entryExists = false;
144
+ try {
145
+ fs_1.default.lstatSync(existing);
146
+ entryExists = true;
147
+ }
148
+ catch {
149
+ entryExists = false;
150
+ }
151
+ if (entryExists)
152
+ break;
153
+ const parent = path_1.default.dirname(existing);
154
+ if (parent === existing)
155
+ return `${target} has no existing ancestor`;
156
+ rest.unshift(path_1.default.basename(existing));
157
+ existing = parent;
158
+ }
159
+ let real;
160
+ try {
161
+ real = fs_1.default.realpathSync(existing);
162
+ }
163
+ catch {
164
+ return `${existing} is a symlink that points nowhere`;
165
+ }
166
+ return { real: path_1.default.join(real, ...rest), owner: fs_1.default.statSync(real).uid };
167
+ }
168
+ /**
169
+ * Why an `own-home` launch may not write `writeTargets`, or null when it may
170
+ * (Issue #3312). Checks, in this order: `CM_UAT_DEDICATED_USER` is set and is
171
+ * the user this process runs as; `HOME` resolves to that user's home directory
172
+ * (from the account database) and is owned by them; each target resolves —
173
+ * every symlink on the way followed — to a path inside that home, and the entry
174
+ * that decides the write (the target, or its nearest existing ancestor) is
175
+ * owned by that user.
176
+ */
177
+ function checkUatOwnHomeWriteTargets(writeTargets, env = process.env, identity = currentIdentity()) {
178
+ const dedicated = env[exports.UAT_DEDICATED_USER_ENV_VAR];
179
+ if (!dedicated)
180
+ return `${exports.UAT_DEDICATED_USER_ENV_VAR} is not set`;
181
+ if (identity.username !== dedicated) {
182
+ return `this process runs as ${identity.username}, not as the dedicated user ${dedicated}`;
183
+ }
184
+ const home = env.HOME;
185
+ if (!home || !path_1.default.isAbsolute(home))
186
+ return 'HOME is not set to an absolute path';
187
+ let homeReal;
188
+ let accountHomeReal;
189
+ try {
190
+ homeReal = fs_1.default.realpathSync(home);
191
+ accountHomeReal = fs_1.default.realpathSync(identity.homedir);
192
+ }
193
+ catch {
194
+ return `HOME (${home}) or ${dedicated}'s home directory (${identity.homedir}) does not exist`;
195
+ }
196
+ if (homeReal !== accountHomeReal) {
197
+ return `HOME (${home}) is not ${dedicated}'s home directory (${identity.homedir})`;
198
+ }
199
+ if (fs_1.default.statSync(homeReal).uid !== identity.uid)
200
+ return `HOME (${home}) is not owned by ${dedicated}`;
201
+ for (const target of writeTargets) {
202
+ const resolved = resolveWriteTarget(target);
203
+ if (typeof resolved === 'string')
204
+ return resolved;
205
+ if (resolved.real !== homeReal && !resolved.real.startsWith(`${homeReal}${path_1.default.sep}`)) {
206
+ return `${target} resolves to ${resolved.real}, outside ${dedicated}'s HOME (${homeReal})`;
207
+ }
208
+ if (resolved.owner !== identity.uid) {
209
+ return `${target} (${resolved.real}) is not owned by ${dedicated}`;
210
+ }
211
+ }
212
+ return null;
213
+ }
214
+ /**
215
+ * Under `own-home`, refuse the launch of `tool` unless
216
+ * {@link checkUatOwnHomeWriteTargets} passes for `writeTargets`. A no-op in
217
+ * every other mode.
218
+ *
219
+ * @throws {UatIsolationLaunchRefusedError}
220
+ */
221
+ function assertUatOwnHomeWriteTargets(tool, writeTargets, env = process.env) {
222
+ if (getUatIsolationMode(env) !== 'own-home')
223
+ return;
224
+ const problem = checkUatOwnHomeWriteTargets(writeTargets, env);
225
+ if (problem)
226
+ throw new UatIsolationLaunchRefusedError(tool, problem, exports.UAT_OWN_HOME_FIX);
227
+ }
228
+ /**
229
+ * The one rule for a hook file shared with the user's other CommandMate
230
+ * servers (codex, antigravity and copilot call it; Issue #3312):
231
+ *
232
+ * - not isolated: `write`
233
+ * - `CM_UAT_ISOLATION=1`: `read-only` — reuse it only when it already matches
234
+ * - `CM_UAT_ISOLATION=own-home`: `write`, once
235
+ * {@link assertUatOwnHomeWriteTargets} has passed for every path the write
236
+ * touches; otherwise the launch is refused
237
+ *
238
+ * @throws {UatIsolationLaunchRefusedError} Under `own-home` only
239
+ */
240
+ function sharedHookWritePolicy(tool, writeTargets, env = process.env) {
241
+ const mode = getUatIsolationMode(env);
242
+ if (mode === 'shared-read-only')
243
+ return 'read-only';
244
+ assertUatOwnHomeWriteTargets(tool, writeTargets, env);
245
+ return 'write';
246
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Process-wide state helper for the `globalThis.__*` cache pattern.
3
+ *
4
+ * Returns the value already stored on `globalThis[key]`, or runs `init` once and
5
+ * stores its result. `init` runs only when the slot is `null`/`undefined`, at the
6
+ * moment this function is called (so callers keep their own init timing).
7
+ *
8
+ * `key` and the initial value are typed from each file's `declare global`
9
+ * declaration. This module imports nothing so any layer (server, CLI) can use it.
10
+ */
11
+ export declare function getOrInitGlobal<K extends keyof typeof globalThis>(key: K, init: () => NonNullable<(typeof globalThis)[K]>): NonNullable<(typeof globalThis)[K]>;
12
+ //# sourceMappingURL=global-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-state.d.ts","sourceRoot":"","sources":["../../src/lib/global-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,OAAO,UAAU,EAC/D,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,MAAM,WAAW,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAC9C,WAAW,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAErC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrInitGlobal = getOrInitGlobal;
4
+ /**
5
+ * Process-wide state helper for the `globalThis.__*` cache pattern.
6
+ *
7
+ * Returns the value already stored on `globalThis[key]`, or runs `init` once and
8
+ * stores its result. `init` runs only when the slot is `null`/`undefined`, at the
9
+ * moment this function is called (so callers keep their own init timing).
10
+ *
11
+ * `key` and the initial value are typed from each file's `declare global`
12
+ * declaration. This module imports nothing so any layer (server, CLI) can use it.
13
+ */
14
+ function getOrInitGlobal(key, init) {
15
+ return (globalThis[key] ??= init());
16
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Why an auto-answer was withheld.
3
+ *
4
+ * `deny-pattern-unusable` is the fail-closed case: a deny pattern that cannot be
5
+ * evaluated (unsafe, unparseable, or over-long) suppresses instead of being
6
+ * skipped. Ignoring it would silently drop the protection the contract author
7
+ * asked for, which is the more dangerous of the two directions.
8
+ */
9
+ export type AutoYesSuppressionReason = 'mode-off' | 'deny-pattern' | 'deny-pattern-unusable' | 'type-not-allowed'
10
+ /**
11
+ * Issue #1829: not a policy verdict at all, but the same outcome recorded
12
+ * through the same channel. The prompt on screen is a CLI-lifecycle dialog
13
+ * whose answer belongs to the tool's own launch sequence, so the poller
14
+ * withheld one. Listed here so `capture --json` / `cmate wait` can name it
15
+ * instead of showing a session that has silently gone quiet.
16
+ */
17
+ | 'agent-launch-dialog'
18
+ /**
19
+ * Issue #1924 (§4 D1 decision 4): the generic estimator read a numbered list
20
+ * on the frame and the tool's own dialog detector did not vouch for it, so
21
+ * nothing was sent.
22
+ *
23
+ * Also not a policy verdict. It is the reason code for the one position that
24
+ * can stop #1896 — an agent quoting a numbered list in its *answer* and
25
+ * Auto-Yes replying `1` to the prose. `detectPrompt`'s generic estimate is
26
+ * true on that frame and the tool-specific `detectDialog` is false, and this
27
+ * names the gap instead of letting the session go quiet with no record.
28
+ *
29
+ * Declared in Phase 1 (Issue #1924) and recorded from Phase 3, when the
30
+ * tool-specific detectors that can disagree with the estimator exist.
31
+ */
32
+ | 'unclassified-frame';
33
+ //# sourceMappingURL=auto-yes-suppression-reason.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-yes-suppression-reason.d.ts","sourceRoot":"","sources":["../../../src/lib/polling/auto-yes-suppression-reason.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAChC,UAAU,GACV,cAAc,GACd,uBAAuB,GACvB,kBAAkB;AACpB;;;;;;GAMG;GACD,qBAAqB;AACvB;;;;;;;;;;;;;GAaG;GACD,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -134,9 +134,32 @@ export type PromptHeadingMessage = {
134
134
  };
135
135
  export declare function promptHeadingMessage(heading: PromptViewHeading): PromptHeadingMessage;
136
136
  /**
137
- * The option labels measured to be a text field on screen (Issue #2573).
138
- * Restated from `TYPED_TEXT_FIELD_LABEL_PATTERNS` in
139
- * `lib/detection/prompt-detect-multiple-choice`, whose graph reaches `fs`.
137
+ * Labels of the rows measured to BE a text field on screen (Issue #2573).
138
+ *
139
+ * `requiresTextInput` (from {@link TEXT_INPUT_PATTERNS}) reads the WORDS of a
140
+ * label — "tell … what to do differently", "custom", "enter …" — and says the
141
+ * option is about the user's own text. It does not say where typed characters
142
+ * land, and for two rows it flags alike the measured answer is opposite:
143
+ *
144
+ * | row | on screen | free text + Enter |
145
+ * |-----|-----------|-------------------|
146
+ * | Command Code `AskUserQuestion` `Type something...` (#2522) | a `TextInput` | lands in the field — the answer |
147
+ * | Command Code permission `No, tell Command Code what to do differently` | a menu row | ignored; the Enter confirms the highlighted `1. Yes` |
148
+ *
149
+ * The second is how a "No + reason" was delivered as an approval. The same
150
+ * words sit on codex's and copilot's approval rows (codex's also name letter
151
+ * hotkeys, `(y)` / `(p)`), and the generic patterns match inside the command an
152
+ * approval row quotes (`… commands that start with 'npm run custom'`).
153
+ *
154
+ * So this is an allowlist of what was measured, not a denylist of what went
155
+ * wrong: a flagged row is a field only when its label is one of these. Anchored
156
+ * at the start so Command Code's folded description (`Type something... Give me
157
+ * a branch name …`) still matches. Command Code's reader
158
+ * (`tools/command-code/dialog.ts`) marks the same rows with the same expression.
159
+ *
160
+ * The one definition since Issue #3218: `isTypedTextFieldOption` in
161
+ * `lib/detection/prompt-detect-multiple-choice`, whose graph reaches `fs`,
162
+ * reads it through `optionTakesTypedText` below.
140
163
  */
141
164
  export declare const TYPED_TEXT_FIELD_LABEL_PATTERNS: readonly RegExp[];
142
165
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-view.d.ts","sourceRoot":"","sources":["../../../src/lib/session/prompt-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-view.d.ts","sourceRoot":"","sources":["../../../src/lib/session/prompt-view.ts"],"names":[],"mappings":"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"}
@@ -65,9 +65,32 @@ function promptHeadingMessage(heading) {
65
65
  // Field readers (moved from components/worktree/prompt-decision-id, #1932/#2039/#3181)
66
66
  // =============================================================================
67
67
  /**
68
- * The option labels measured to be a text field on screen (Issue #2573).
69
- * Restated from `TYPED_TEXT_FIELD_LABEL_PATTERNS` in
70
- * `lib/detection/prompt-detect-multiple-choice`, whose graph reaches `fs`.
68
+ * Labels of the rows measured to BE a text field on screen (Issue #2573).
69
+ *
70
+ * `requiresTextInput` (from {@link TEXT_INPUT_PATTERNS}) reads the WORDS of a
71
+ * label — "tell … what to do differently", "custom", "enter …" — and says the
72
+ * option is about the user's own text. It does not say where typed characters
73
+ * land, and for two rows it flags alike the measured answer is opposite:
74
+ *
75
+ * | row | on screen | free text + Enter |
76
+ * |-----|-----------|-------------------|
77
+ * | Command Code `AskUserQuestion` `Type something...` (#2522) | a `TextInput` | lands in the field — the answer |
78
+ * | Command Code permission `No, tell Command Code what to do differently` | a menu row | ignored; the Enter confirms the highlighted `1. Yes` |
79
+ *
80
+ * The second is how a "No + reason" was delivered as an approval. The same
81
+ * words sit on codex's and copilot's approval rows (codex's also name letter
82
+ * hotkeys, `(y)` / `(p)`), and the generic patterns match inside the command an
83
+ * approval row quotes (`… commands that start with 'npm run custom'`).
84
+ *
85
+ * So this is an allowlist of what was measured, not a denylist of what went
86
+ * wrong: a flagged row is a field only when its label is one of these. Anchored
87
+ * at the start so Command Code's folded description (`Type something... Give me
88
+ * a branch name …`) still matches. Command Code's reader
89
+ * (`tools/command-code/dialog.ts`) marks the same rows with the same expression.
90
+ *
91
+ * The one definition since Issue #3218: `isTypedTextFieldOption` in
92
+ * `lib/detection/prompt-detect-multiple-choice`, whose graph reaches `fs`,
93
+ * reads it through `optionTakesTypedText` below.
71
94
  */
72
95
  exports.TYPED_TEXT_FIELD_LABEL_PATTERNS = [
73
96
  /^[^\S\n]*type\s+something\b/i,
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Whether a status rests on something positive, or on the absence of a negative
3
+ * (Issue #1924, §4 D1 決定 2).
4
+ *
5
+ * `'positive'` — a marker, a tool-specific idle-composer rule, or a structured
6
+ * event said so. `'none'` — nothing on the frame could be read either way, and
7
+ * the status is a fallback.
8
+ *
9
+ * The design policy adds this rather than a fifth `SessionStatus`: the value
10
+ * domain stays four wide, because `src/cli/types/api-responses.ts` enumerates it
11
+ * and a new member is a breaking change for every consumer older than the server
12
+ * — including `commandmate-skills`' `orchestrate-monitor`, which reads
13
+ * `capture --json` as its primary signal.
14
+ */
15
+ export type StatusEvidence = 'positive' | 'none';
16
+ //# sourceMappingURL=status-evidence-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status-evidence-type.d.ts","sourceRoot":"","sources":["../../../src/lib/session/status-evidence-type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-session-alias.d.ts","sourceRoot":"","sources":["../../../src/lib/tmux/legacy-session-alias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/D;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAE7E;AAED,6DAA6D;AAC7D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAUvE;AAED,wCAAwC;AACxC,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD"}
1
+ {"version":3,"file":"legacy-session-alias.d.ts","sourceRoot":"","sources":["../../../src/lib/tmux/legacy-session-alias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/D;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAE7E;AAED,6DAA6D;AAC7D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAUvE;AAED,wCAAwC;AACxC,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD"}
@@ -27,8 +27,9 @@ exports.registerLegacyAlias = registerLegacyAlias;
27
27
  exports.lookupLegacyAlias = lookupLegacyAlias;
28
28
  exports.dropLegacyAliasByLegacyName = dropLegacyAliasByLegacyName;
29
29
  exports.clearLegacyAliasesForTests = clearLegacyAliasesForTests;
30
+ const global_state_1 = require("../global-state");
30
31
  function aliases() {
31
- return (globalThis.__cmLegacySessionAliases ??= new Map());
32
+ return (0, global_state_1.getOrInitGlobal)('__cmLegacySessionAliases', () => new Map());
32
33
  }
33
34
  /**
34
35
  * Serve the new-format session name `newName` with the existing legacy session
@@ -415,7 +415,8 @@
415
415
  "artifact-diagramming": "Load guidance for drawing diagrams in artifacts that stay legible in light and dark themes",
416
416
  "claude-in-chrome": "Have Claude carry out a task in your browser through Claude in Chrome",
417
417
  "plugin-authoring": "Load the reference Claude uses to write a mod",
418
- "slides": "Make a new Claude Slides presentation from your brief"
418
+ "slides": "Make a new Claude Slides presentation from your brief",
419
+ "daybreak": "Turn Daybreak on or off"
419
420
  }
420
421
  },
421
422
  "session": {
@@ -876,6 +877,7 @@
876
877
  },
877
878
  "git": {
878
879
  "uncommittedChanges": "Uncommitted changes",
880
+ "statusUnknown": "Could not check for uncommitted changes (git status failed)",
879
881
  "askAi": "Ask AI",
880
882
  "askAiTooltip": "Draft the current state into the AI chat (nothing is sent automatically)",
881
883
  "advancedOperations": "Advanced operations",
@@ -971,6 +973,8 @@
971
973
  "refreshing": "Checking the remote...",
972
974
  "loading": "Loading git status...",
973
975
  "uncommitted": "uncommitted",
976
+ "statusUnknown": "changes unknown",
977
+ "statusUnknownTooltip": "git status could not be read, so whether there are uncommitted changes is unknown. Refresh to try again.",
974
978
  "aheadTooltip": "commits ahead of upstream as of the last fetch (the live remote may differ)",
975
979
  "behindTooltip": "commits behind upstream as of the last fetch (the live remote may differ)",
976
980
  "lastFetch": "Last fetch: {relative}",
@@ -1107,9 +1111,11 @@
1107
1111
  },
1108
1112
  "promptResponse": {
1109
1113
  "refused": "Your answer was not sent because the dialog has changed. Please check the screen.",
1114
+ "failed": "Could not send the answer. Please try again.",
1110
1115
  "stuckHint": "If sending does not work, operate the terminal in direct input mode.",
1111
1116
  "stuckHintLink": "Switch to direct input",
1112
- "unanswerable": "CommandMate cannot operate this screen. Use direct input mode instead."
1117
+ "unanswerable": "CommandMate cannot operate this screen. Use direct input mode instead.",
1118
+ "autoYesEnterSent": "Auto-Yes sent Enter."
1113
1119
  },
1114
1120
  "dismissPanelKeys": {
1115
1121
  "toolbarLabel": "Close this screen",
@@ -415,7 +415,8 @@
415
415
  "artifact-diagramming": "アーティファクトにライト・ダーク両方で読める図を描くためのガイダンスを読み込み",
416
416
  "claude-in-chrome": "Claude in Chrome 経由でブラウザ上の作業を Claude に依頼",
417
417
  "plugin-authoring": "mod を書くときに Claude が使うリファレンスを読み込み",
418
- "slides": "指示から Claude Slides のプレゼンテーションを作成"
418
+ "slides": "指示から Claude Slides のプレゼンテーションを作成",
419
+ "daybreak": "Daybreak のオン・オフを切り替え"
419
420
  }
420
421
  },
421
422
  "session": {
@@ -876,6 +877,7 @@
876
877
  },
877
878
  "git": {
878
879
  "uncommittedChanges": "未コミットの変更",
880
+ "statusUnknown": "変更の有無を確認できませんでした(git status が失敗)",
879
881
  "askAi": "AI に質問",
880
882
  "askAiTooltip": "現在の状況を AI チャットに下書きします(自動送信はされません)",
881
883
  "advancedOperations": "高度な操作",
@@ -971,6 +973,8 @@
971
973
  "refreshing": "リモートを確認中...",
972
974
  "loading": "Git ステータスを読み込み中...",
973
975
  "uncommitted": "未コミット",
976
+ "statusUnknown": "変更の有無が不明",
977
+ "statusUnknownTooltip": "git status を読めなかったため、未コミットの変更があるかどうか分かりません。更新すると再取得します。",
974
978
  "aheadTooltip": "最後に fetch した時点のアップストリームより先行しているコミット数(リモートの最新状態とは異なる場合があります)",
975
979
  "behindTooltip": "最後に fetch した時点のアップストリームより遅れているコミット数(リモートの最新状態とは異なる場合があります)",
976
980
  "lastFetch": "最終 fetch: {relative}",
@@ -1107,9 +1111,11 @@
1107
1111
  },
1108
1112
  "promptResponse": {
1109
1113
  "refused": "ダイアログの状態が変わったため送信できませんでした。画面を確認してください。",
1114
+ "failed": "送信に失敗しました。もう一度お試しください。",
1110
1115
  "stuckHint": "送信がうまくいかない場合は、直接入力モードで操作してください。",
1111
1116
  "stuckHintLink": "直接入力に切り替える",
1112
- "unanswerable": "この画面は CommandMate から操作できません。直接入力モードで操作してください。"
1117
+ "unanswerable": "この画面は CommandMate から操作できません。直接入力モードで操作してください。",
1118
+ "autoYesEnterSent": "Auto-Yes が Enter を送りました。"
1113
1119
  },
1114
1120
  "dismissPanelKeys": {
1115
1121
  "toolbarLabel": "この画面を閉じる",
@@ -3,7 +3,9 @@
3
3
  * CLI-side API Response Type Definitions
4
4
  * Issue #518: [DR1-06] All types include Mirrors comments for server-side traceability
5
5
  *
6
- * These types mirror server-side response shapes. Phase 2 will migrate to
7
- * shared types in src/types/api-contracts.ts.
6
+ * These types mirror server-side response shapes. Where a server module has no
7
+ * imports of its own (e.g. `lib/session/prompt-view`), it is imported here by
8
+ * relative path instead of restated, so the CLI build compiles it and there is
9
+ * no second definition to drift (see `promptView` below).
8
10
  */
9
11
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -20,7 +20,7 @@
20
20
  * All values are preserved from the original literals (no behavior change).
21
21
  */
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.LIVENESS_CONFIRM_DELAY_MS = exports.CLAUDE_RESTART_DELAY_MS = exports.CLAUDE_ENV_SANITIZE_WAIT_MS = exports.OPENCODE_V2_COMPOSER_WAIT_MS = exports.OPENCODE_V2_EXIT_WAIT_MS = exports.COMMAND_CODE_INIT_WAIT_MS = exports.VIBE_LOCAL_DOUBLE_ENTER_WAIT_MS = exports.COPILOT_EXIT_WAIT_MS = exports.OPENCODE_INTERRUPT_SECOND_ESCAPE_DELAY_MS = exports.OPENCODE_EXIT_WAIT_MS = exports.CODEX_DIALOG_SETTLE_MS = exports.TUI_EXIT_WAIT_MS = exports.TUI_INTERRUPT_SETTLE_MS = exports.TUI_MESSAGE_PROCESSED_WAIT_MS = exports.TUI_TEXT_INPUT_WAIT_MS = exports.TUI_SESSION_CREATE_WAIT_MS = void 0;
23
+ exports.LIVENESS_CONFIRM_DELAY_MS = exports.CLAUDE_ENV_SANITIZE_WAIT_MS = exports.OPENCODE_V2_COMPOSER_WAIT_MS = exports.OPENCODE_V2_EXIT_WAIT_MS = exports.COMMAND_CODE_INIT_WAIT_MS = exports.VIBE_LOCAL_DOUBLE_ENTER_WAIT_MS = exports.COPILOT_EXIT_WAIT_MS = exports.OPENCODE_INTERRUPT_SECOND_ESCAPE_DELAY_MS = exports.OPENCODE_EXIT_WAIT_MS = exports.CODEX_DIALOG_SETTLE_MS = exports.TUI_EXIT_WAIT_MS = exports.TUI_INTERRUPT_SETTLE_MS = exports.TUI_MESSAGE_PROCESSED_WAIT_MS = exports.TUI_TEXT_INPUT_WAIT_MS = exports.TUI_SESSION_CREATE_WAIT_MS = void 0;
24
24
  /**
25
25
  * Wait (ms) after `createSession()` before sending the first keys, giving tmux
26
26
  * time to spin up the session.
@@ -162,11 +162,6 @@ exports.OPENCODE_V2_COMPOSER_WAIT_MS = 15000;
162
162
  * Site: session-key-sender sanitizeSessionEnvironment().
163
163
  */
164
164
  exports.CLAUDE_ENV_SANITIZE_WAIT_MS = 100;
165
- /**
166
- * Wait (ms) before restarting a Claude session, after the old session is stopped.
167
- * Site: claude-session restartClaudeSession().
168
- */
169
- exports.CLAUDE_RESTART_DELAY_MS = 1000;
170
165
  /**
171
166
  * Wait (ms) between the two liveness readings that must agree before a reuse
172
167
  * path re-sends a launch command (Issue #2070).