commandmate 0.46.1 → 0.47.2

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 (999) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +587 -580
  3. package/.next/app-path-routes-manifest.json +31 -30
  4. package/.next/build-manifest.json +8 -8
  5. package/.next/diagnostics/framework.json +1 -1
  6. package/.next/next-minimal-server.js.nft.json +1 -1
  7. package/.next/next-server.js.nft.json +1 -1
  8. package/.next/prerender-manifest.json +12 -12
  9. package/.next/react-loadable-manifest.json +1 -1
  10. package/.next/required-server-files.json +1 -1
  11. package/.next/routes-manifest.json +8 -0
  12. package/.next/server/app/_not-found/page.js +2 -2
  13. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/agents/update/route.js +2 -2
  16. package/.next/server/app/api/agents/update/route.js.nft.json +1 -1
  17. package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/agents/versions/route.js +1 -1
  19. package/.next/server/app/api/agents/versions/route.js.nft.json +1 -1
  20. package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/app/release-notes/route.js +1 -1
  22. package/.next/server/app/api/app/release-notes/route.js.nft.json +1 -1
  23. package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/app/update/route.js +6 -4
  25. package/.next/server/app/api/app/update/route.js.nft.json +1 -1
  26. package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/app/update-check/route.js +1 -1
  28. package/.next/server/app/api/app/update-check/route.js.nft.json +1 -1
  29. package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/auth/login/route.js +1 -1
  31. package/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  32. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/auth/logout/route.js +1 -1
  34. package/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  35. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/auth/status/route.js +1 -1
  37. package/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  38. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/capabilities/route.js +1 -1
  40. package/.next/server/app/api/capabilities/route.js.nft.json +1 -1
  41. package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/daily-summary/route.js +1 -1
  43. package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
  44. package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/daily-summary/status/route.js +1 -1
  46. package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
  47. package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/external-apps/[id]/health/route.js +1 -1
  49. package/.next/server/app/api/external-apps/[id]/health/route.js.nft.json +1 -1
  50. package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/external-apps/[id]/route.js +1 -1
  52. package/.next/server/app/api/external-apps/[id]/route.js.nft.json +1 -1
  53. package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
  54. package/.next/server/app/api/external-apps/route.js +1 -1
  55. package/.next/server/app/api/external-apps/route.js.nft.json +1 -1
  56. package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/fs/browse/route.js +1 -1
  58. package/.next/server/app/api/fs/browse/route.js.nft.json +1 -1
  59. package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
  60. package/.next/server/app/api/fs/recent-paths/route.js +1 -1
  61. package/.next/server/app/api/fs/recent-paths/route.js.nft.json +1 -1
  62. package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/hooks/agent-event/route.js +2 -2
  64. package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
  65. package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
  66. package/.next/server/app/api/hooks/claude-done/route.js +2 -2
  67. package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
  68. package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/hooks/permission-request/route.js +1 -1
  70. package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
  71. package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
  72. package/.next/server/app/api/metrics/vibe/route.js +2 -2
  73. package/.next/server/app/api/metrics/vibe/route.js.nft.json +1 -1
  74. package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
  75. package/.next/server/app/api/ollama/models/route.js +1 -1
  76. package/.next/server/app/api/ollama/models/route.js.nft.json +1 -1
  77. package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
  78. package/.next/server/app/api/push/escalation/route.js +1 -7
  79. package/.next/server/app/api/push/escalation/route.js.nft.json +1 -1
  80. package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
  81. package/.next/server/app/api/push/subscriptions/route.js +1 -1
  82. package/.next/server/app/api/push/subscriptions/route.js.nft.json +1 -1
  83. package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
  84. package/.next/server/app/api/push/vapid/route.js +1 -7
  85. package/.next/server/app/api/push/vapid/route.js.nft.json +1 -1
  86. package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
  87. package/.next/server/app/api/relays/[relayId]/cancel/route.js +1 -1
  88. package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
  89. package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/api/relays/route.js +1 -1
  91. package/.next/server/app/api/relays/route.js.nft.json +1 -1
  92. package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/remote/pair/route.js +2 -2
  94. package/.next/server/app/api/remote/pair/route.js.nft.json +1 -1
  95. package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/api/repositories/[id]/route.js +1 -1
  97. package/.next/server/app/api/repositories/[id]/route.js.nft.json +1 -1
  98. package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
  100. package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
  101. package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/api/repositories/clone/route.js +1 -1
  103. package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
  104. package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/repositories/excluded/route.js +1 -1
  106. package/.next/server/app/api/repositories/excluded/route.js.nft.json +1 -1
  107. package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/repositories/restore/route.js +1 -1
  109. package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
  110. package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/repositories/route.js +1 -1
  112. package/.next/server/app/api/repositories/route.js.nft.json +1 -1
  113. package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/api/repositories/scan/route.js +1 -1
  115. package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
  116. package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
  117. package/.next/server/app/api/repositories/sync/route.js +1 -1
  118. package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
  119. package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
  120. package/.next/server/app/api/repositories/validate-path/route.js +1 -1
  121. package/.next/server/app/api/repositories/validate-path/route.js.nft.json +1 -1
  122. package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
  123. package/.next/server/app/api/settings/default-agents/route.js +1 -1
  124. package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
  125. package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
  126. package/.next/server/app/api/settings/default-surface-mode/route.js +1 -1
  127. package/.next/server/app/api/settings/default-surface-mode/route.js.nft.json +1 -1
  128. package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
  129. package/.next/server/app/api/sidebar/group-order/route.js +1 -1
  130. package/.next/server/app/api/sidebar/group-order/route.js.nft.json +1 -1
  131. package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
  132. package/.next/server/app/api/skills/[id]/route.js +1 -1
  133. package/.next/server/app/api/skills/[id]/route.js.nft.json +1 -1
  134. package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
  135. package/.next/server/app/api/skills/installations/route.js +1 -1
  136. package/.next/server/app/api/skills/installations/route.js.nft.json +1 -1
  137. package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
  138. package/.next/server/app/api/skills/operations/route.js +2 -2
  139. package/.next/server/app/api/skills/operations/route.js.nft.json +1 -1
  140. package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
  141. package/.next/server/app/api/skills/reindex/route.js +1 -1
  142. package/.next/server/app/api/skills/reindex/route.js.nft.json +1 -1
  143. package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
  144. package/.next/server/app/api/skills/route.js +1 -1
  145. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  146. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/api/slash-commands/route.js +1 -1
  148. package/.next/server/app/api/slash-commands/route.js.nft.json +1 -1
  149. package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  150. package/.next/server/app/api/tasks/[taskId]/cancel/route.js +1 -1
  151. package/.next/server/app/api/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  152. package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  153. package/.next/server/app/api/tasks/[taskId]/route.js +1 -1
  154. package/.next/server/app/api/tasks/[taskId]/route.js.nft.json +1 -1
  155. package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  156. package/.next/server/app/api/templates/[id]/route.js +1 -1
  157. package/.next/server/app/api/templates/[id]/route.js.nft.json +1 -1
  158. package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
  159. package/.next/server/app/api/templates/route.js +1 -1
  160. package/.next/server/app/api/templates/route.js.nft.json +1 -1
  161. package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/api/verification/runs/[runId]/route.js +1 -1
  163. package/.next/server/app/api/verification/runs/[runId]/route.js.nft.json +1 -1
  164. package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/api/verification/runs/route.js +1 -1
  166. package/.next/server/app/api/verification/runs/route.js.nft.json +1 -1
  167. package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
  169. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
  170. package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
  171. package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
  172. package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
  173. package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
  174. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
  175. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
  176. package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
  177. package/.next/server/app/api/worktrees/[id]/cli-reference/route.js +1 -1
  178. package/.next/server/app/api/worktrees/[id]/cli-reference/route.js.nft.json +1 -1
  179. package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
  181. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js.nft.json +1 -1
  182. package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
  183. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +7 -7
  184. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
  185. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
  186. package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
  187. package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
  188. package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
  189. package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
  190. package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
  191. package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
  192. package/.next/server/app/api/worktrees/[id]/env/route.js +2 -2
  193. package/.next/server/app/api/worktrees/[id]/env/route.js.nft.json +1 -1
  194. package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
  195. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js +1 -1
  196. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js.nft.json +1 -1
  197. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
  198. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +3 -3
  199. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
  200. package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
  201. package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js +1 -1
  202. package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js.nft.json +1 -1
  203. package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
  204. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
  205. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js.nft.json +1 -1
  206. package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
  207. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
  208. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js.nft.json +1 -1
  209. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
  210. package/.next/server/app/api/worktrees/[id]/git/branches/route.js +1 -1
  211. package/.next/server/app/api/worktrees/[id]/git/branches/route.js.nft.json +1 -1
  212. package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
  213. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
  214. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js.nft.json +1 -1
  215. package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
  216. package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
  217. package/.next/server/app/api/worktrees/[id]/git/commit/route.js.nft.json +1 -1
  218. package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
  219. package/.next/server/app/api/worktrees/[id]/git/diff/route.js +1 -1
  220. package/.next/server/app/api/worktrees/[id]/git/diff/route.js.nft.json +1 -1
  221. package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
  222. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
  223. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js.nft.json +1 -1
  224. package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
  225. package/.next/server/app/api/worktrees/[id]/git/log/route.js +1 -1
  226. package/.next/server/app/api/worktrees/[id]/git/log/route.js.nft.json +1 -1
  227. package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
  228. package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
  229. package/.next/server/app/api/worktrees/[id]/git/pull/route.js.nft.json +1 -1
  230. package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
  231. package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
  232. package/.next/server/app/api/worktrees/[id]/git/push/route.js.nft.json +1 -1
  233. package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
  234. package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
  235. package/.next/server/app/api/worktrees/[id]/git/reset/route.js.nft.json +1 -1
  236. package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
  237. package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
  238. package/.next/server/app/api/worktrees/[id]/git/revert/route.js.nft.json +1 -1
  239. package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
  240. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js +1 -1
  241. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js.nft.json +1 -1
  242. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
  243. package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
  244. package/.next/server/app/api/worktrees/[id]/git/stage/route.js.nft.json +1 -1
  245. package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
  246. package/.next/server/app/api/worktrees/[id]/git/staged/route.js +1 -1
  247. package/.next/server/app/api/worktrees/[id]/git/staged/route.js.nft.json +1 -1
  248. package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
  249. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js +1 -1
  250. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js.nft.json +1 -1
  251. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
  252. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
  253. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js.nft.json +1 -1
  254. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
  255. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
  256. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js.nft.json +1 -1
  257. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
  258. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
  259. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js.nft.json +1 -1
  260. package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
  261. package/.next/server/app/api/worktrees/[id]/git/stash/route.js +1 -1
  262. package/.next/server/app/api/worktrees/[id]/git/stash/route.js.nft.json +1 -1
  263. package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
  264. package/.next/server/app/api/worktrees/[id]/git/status/route.js +1 -1
  265. package/.next/server/app/api/worktrees/[id]/git/status/route.js.nft.json +1 -1
  266. package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
  267. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
  268. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js.nft.json +1 -1
  269. package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
  270. package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js +1 -1
  271. package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js.nft.json +1 -1
  272. package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
  273. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js +1 -1
  274. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js.nft.json +1 -1
  275. package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
  276. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
  277. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
  278. package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
  279. package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
  280. package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
  281. package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
  282. package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
  283. package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
  284. package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
  285. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js +1 -1
  286. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js.nft.json +1 -1
  287. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
  288. package/.next/server/app/api/worktrees/[id]/logs/route.js +1 -1
  289. package/.next/server/app/api/worktrees/[id]/logs/route.js.nft.json +1 -1
  290. package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
  291. package/.next/server/app/api/worktrees/[id]/marp-render/route.js +3 -3
  292. package/.next/server/app/api/worktrees/[id]/marp-render/route.js.nft.json +1 -1
  293. package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
  294. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
  295. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js.nft.json +1 -1
  296. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
  297. package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
  298. package/.next/server/app/api/worktrees/[id]/memos/route.js.nft.json +1 -1
  299. package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
  300. package/.next/server/app/api/worktrees/[id]/messages/route.js +1 -1
  301. package/.next/server/app/api/worktrees/[id]/messages/route.js.nft.json +1 -1
  302. package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
  303. package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js +1 -1
  304. package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js.nft.json +1 -1
  305. package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
  306. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
  307. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
  308. package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
  309. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
  310. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
  311. package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
  312. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
  313. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
  314. package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
  315. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route.js +1 -0
  316. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route.js.nft.json +1 -0
  317. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route_client-reference-manifest.js +1 -0
  318. package/.next/server/app/api/worktrees/[id]/resolve-target/route.js +1 -1
  319. package/.next/server/app/api/worktrees/[id]/resolve-target/route.js.nft.json +1 -1
  320. package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
  321. package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
  322. package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
  323. package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
  324. package/.next/server/app/api/worktrees/[id]/route.js +1 -1
  325. package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
  326. package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
  327. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +2 -2
  328. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
  329. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
  330. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +1 -1
  331. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
  332. package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
  333. package/.next/server/app/api/worktrees/[id]/schedules/route.js +3 -3
  334. package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
  335. package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
  336. package/.next/server/app/api/worktrees/[id]/search/route.js +1 -1
  337. package/.next/server/app/api/worktrees/[id]/search/route.js.nft.json +1 -1
  338. package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
  339. package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
  340. package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
  341. package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
  342. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +5 -5
  343. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
  344. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
  345. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js +1 -1
  346. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js.nft.json +1 -1
  347. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
  348. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
  349. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js.nft.json +1 -1
  350. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
  351. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js +1 -1
  352. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js.nft.json +1 -1
  353. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
  354. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js +1 -1
  355. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js.nft.json +1 -1
  356. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
  357. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js +1 -1
  358. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js.nft.json +1 -1
  359. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
  360. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
  361. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js.nft.json +1 -1
  362. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
  363. package/.next/server/app/api/worktrees/[id]/skills/route.js +1 -1
  364. package/.next/server/app/api/worktrees/[id]/skills/route.js.nft.json +1 -1
  365. package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
  366. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
  367. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js.nft.json +1 -1
  368. package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
  369. package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
  370. package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
  371. package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
  372. package/.next/server/app/api/worktrees/[id]/tasks/route.js +2 -2
  373. package/.next/server/app/api/worktrees/[id]/tasks/route.js.nft.json +1 -1
  374. package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
  375. package/.next/server/app/api/worktrees/[id]/terminal/route.js +2 -2
  376. package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
  377. package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
  378. package/.next/server/app/api/worktrees/[id]/timers/history/route.js +1 -1
  379. package/.next/server/app/api/worktrees/[id]/timers/history/route.js.nft.json +1 -1
  380. package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
  381. package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
  382. package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
  383. package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
  384. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js +1 -1
  385. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js.nft.json +1 -1
  386. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  387. package/.next/server/app/api/worktrees/[id]/todos/route.js +1 -1
  388. package/.next/server/app/api/worktrees/[id]/todos/route.js.nft.json +1 -1
  389. package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
  390. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js +1 -1
  391. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js.nft.json +1 -1
  392. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
  393. package/.next/server/app/api/worktrees/[id]/tree/route.js +1 -1
  394. package/.next/server/app/api/worktrees/[id]/tree/route.js.nft.json +1 -1
  395. package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
  396. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js +1 -1
  397. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js.nft.json +1 -1
  398. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
  399. package/.next/server/app/api/worktrees/[id]/verify/config/route.js +2 -2
  400. package/.next/server/app/api/worktrees/[id]/verify/config/route.js.nft.json +1 -1
  401. package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
  402. package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
  403. package/.next/server/app/api/worktrees/[id]/verify/route.js.nft.json +1 -1
  404. package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
  405. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
  406. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js.nft.json +1 -1
  407. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
  408. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js +1 -1
  409. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js.nft.json +1 -1
  410. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
  411. package/.next/server/app/api/worktrees/[id]/verify/runs/route.js +1 -1
  412. package/.next/server/app/api/worktrees/[id]/verify/runs/route.js.nft.json +1 -1
  413. package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
  414. package/.next/server/app/api/worktrees/[id]/viewed/route.js +1 -1
  415. package/.next/server/app/api/worktrees/[id]/viewed/route.js.nft.json +1 -1
  416. package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
  417. package/.next/server/app/api/worktrees/apply-default-agents/route.js +1 -1
  418. package/.next/server/app/api/worktrees/apply-default-agents/route.js.nft.json +1 -1
  419. package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
  420. package/.next/server/app/api/worktrees/route.js +1 -1
  421. package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
  422. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  423. package/.next/server/app/apple-icon.png/route.js +1 -1
  424. package/.next/server/app/apple-icon.png/route.js.nft.json +1 -1
  425. package/.next/server/app/apple-icon.png.meta +1 -1
  426. package/.next/server/app/icon.png/route.js +1 -1
  427. package/.next/server/app/icon.png/route.js.nft.json +1 -1
  428. package/.next/server/app/icon.png.meta +1 -1
  429. package/.next/server/app/icon1.png/route.js +1 -1
  430. package/.next/server/app/icon1.png/route.js.nft.json +1 -1
  431. package/.next/server/app/icon1.png.meta +1 -1
  432. package/.next/server/app/icon2.png/route.js +1 -1
  433. package/.next/server/app/icon2.png/route.js.nft.json +1 -1
  434. package/.next/server/app/icon2.png.meta +1 -1
  435. package/.next/server/app/login/page.js +2 -2
  436. package/.next/server/app/login/page.js.nft.json +1 -1
  437. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  438. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  439. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  440. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  441. package/.next/server/app/manifest.webmanifest.meta +1 -1
  442. package/.next/server/app/more/page.js +2 -2
  443. package/.next/server/app/more/page.js.nft.json +1 -1
  444. package/.next/server/app/more/page_client-reference-manifest.js +1 -1
  445. package/.next/server/app/offline/page.js +2 -2
  446. package/.next/server/app/offline/page.js.nft.json +1 -1
  447. package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  448. package/.next/server/app/page.js +2 -2
  449. package/.next/server/app/page.js.nft.json +1 -1
  450. package/.next/server/app/page_client-reference-manifest.js +1 -1
  451. package/.next/server/app/proxy/[...path]/route.js +1 -1
  452. package/.next/server/app/proxy/[...path]/route.js.nft.json +1 -1
  453. package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
  454. package/.next/server/app/repositories/page.js +2 -2
  455. package/.next/server/app/repositories/page.js.nft.json +1 -1
  456. package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
  457. package/.next/server/app/review/page.js +2 -2
  458. package/.next/server/app/review/page.js.nft.json +1 -1
  459. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  460. package/.next/server/app/sessions/page.js +2 -2
  461. package/.next/server/app/sessions/page.js.nft.json +1 -1
  462. package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  463. package/.next/server/app/skills/[skillId]/page.js +2 -2
  464. package/.next/server/app/skills/[skillId]/page.js.nft.json +1 -1
  465. package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
  466. package/.next/server/app/skills/installed/page.js +2 -2
  467. package/.next/server/app/skills/installed/page.js.nft.json +1 -1
  468. package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
  469. package/.next/server/app/skills/page.js +2 -2
  470. package/.next/server/app/skills/page.js.nft.json +1 -1
  471. package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  472. package/.next/server/app/worktrees/[id]/files/[...path]/page.js +2 -2
  473. package/.next/server/app/worktrees/[id]/files/[...path]/page.js.nft.json +1 -1
  474. package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
  475. package/.next/server/app/worktrees/[id]/page.js +12 -12
  476. package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
  477. package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
  478. package/.next/server/app/worktrees/[id]/terminal/page.js +3 -3
  479. package/.next/server/app/worktrees/[id]/terminal/page.js.nft.json +1 -1
  480. package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
  481. package/.next/server/app-paths-manifest.json +31 -30
  482. package/.next/server/chunks/{5048.js → 1185.js} +1 -1
  483. package/.next/server/chunks/1210.js +1 -1
  484. package/.next/server/chunks/1559.js +1 -1
  485. package/.next/server/chunks/1601.js +7 -0
  486. package/.next/server/chunks/1656.js +19 -0
  487. package/.next/server/chunks/1945.js +14 -0
  488. package/.next/server/chunks/2119.js +1 -1
  489. package/.next/server/chunks/2404.js +1 -1
  490. package/.next/server/chunks/2422.js +1 -0
  491. package/.next/server/chunks/2445.js +1 -1
  492. package/.next/server/chunks/2460.js +1 -1
  493. package/.next/server/chunks/2534.js +1 -1
  494. package/.next/server/chunks/255.js +1 -0
  495. package/.next/server/chunks/3241.js +1 -1
  496. package/.next/server/chunks/3505.js +7 -0
  497. package/.next/server/chunks/3897.js +22 -0
  498. package/.next/server/chunks/4072.js +5 -5
  499. package/.next/server/chunks/{3077.js → 4194.js} +12 -12
  500. package/.next/server/chunks/4207.js +1 -1
  501. package/.next/server/chunks/4248.js +1 -1
  502. package/.next/server/chunks/463.js +1 -0
  503. package/.next/server/chunks/5209.js +1 -1
  504. package/.next/server/chunks/5595.js +1 -1
  505. package/.next/server/chunks/5611.js +1 -1
  506. package/.next/server/chunks/5845.js +1 -1
  507. package/.next/server/chunks/610.js +1 -0
  508. package/.next/server/chunks/6119.js +1 -0
  509. package/.next/server/chunks/6130.js +1 -1
  510. package/.next/server/chunks/6345.js +1 -1
  511. package/.next/server/chunks/6401.js +1 -1
  512. package/.next/server/chunks/{2283.js → 6486.js} +7 -7
  513. package/.next/server/chunks/6722.js +1 -1
  514. package/.next/server/chunks/6781.js +1 -1
  515. package/.next/server/chunks/6784.js +1 -0
  516. package/.next/server/chunks/6793.js +2 -2
  517. package/.next/server/chunks/7905.js +1 -1
  518. package/.next/server/chunks/8581.js +10 -10
  519. package/.next/server/chunks/8728.js +2 -2
  520. package/.next/server/chunks/8791.js +1 -1
  521. package/.next/server/chunks/8918.js +4 -4
  522. package/.next/server/chunks/9130.js +1 -1
  523. package/.next/server/chunks/936.js +1 -0
  524. package/.next/server/chunks/9390.js +1 -1
  525. package/.next/server/chunks/9540.js +1 -0
  526. package/.next/server/chunks/9627.js +2 -2
  527. package/.next/server/chunks/9731.js +3 -3
  528. package/.next/server/middleware-build-manifest.js +1 -1
  529. package/.next/server/middleware-manifest.json +5 -5
  530. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  531. package/.next/server/pages/500.html +1 -1
  532. package/.next/server/pages/_document.js.nft.json +1 -1
  533. package/.next/server/pages/_error.js +3 -3
  534. package/.next/server/pages/_error.js.nft.json +1 -1
  535. package/.next/server/server-reference-manifest.json +1 -1
  536. package/.next/server/src/middleware.js.map +1 -1
  537. package/.next/static/chunks/{1111.5ab4f0ffb0d944e5.js → 1111.1b653d4a9816a0a7.js} +8 -8
  538. package/.next/static/chunks/{1255-7e5873f06b25e129.js → 1255-a85690d352f4f8fd.js} +1 -1
  539. package/.next/static/chunks/{2407-9703c569370b8a9d.js → 2407-a6533805a86d05bd.js} +1 -1
  540. package/.next/static/chunks/5371-a549a0d2c2044d41.js +1 -0
  541. package/.next/static/chunks/{5794-4eee51ff1e878aa6.js → 5794-80ac3f06f098ea29.js} +1 -1
  542. package/.next/static/chunks/602-1c1488959215e140.js +1 -0
  543. package/.next/static/chunks/9079-24f9fa549ed298f1.js +1 -0
  544. package/.next/static/chunks/9465-b59bb255b376c813.js +1 -0
  545. package/.next/static/chunks/app/api/agents/update/{route-0468c3c4baa46028.js → route-c81284a9d8b35304.js} +1 -1
  546. package/.next/static/chunks/app/api/agents/versions/{route-0468c3c4baa46028.js → route-c81284a9d8b35304.js} +1 -1
  547. package/.next/static/chunks/app/api/app/release-notes/{route-0468c3c4baa46028.js → route-c81284a9d8b35304.js} +1 -1
  548. package/.next/static/chunks/app/api/app/update/route-c81284a9d8b35304.js +1 -0
  549. package/.next/static/chunks/app/api/app/update-check/{route-0468c3c4baa46028.js → route-c81284a9d8b35304.js} +1 -1
  550. package/.next/static/chunks/app/api/auth/login/route-c81284a9d8b35304.js +1 -0
  551. package/.next/static/chunks/app/api/auth/logout/route-c81284a9d8b35304.js +1 -0
  552. package/.next/static/chunks/app/api/auth/status/route-c81284a9d8b35304.js +1 -0
  553. package/.next/static/chunks/app/api/capabilities/route-c81284a9d8b35304.js +1 -0
  554. package/.next/static/chunks/app/api/daily-summary/route-c81284a9d8b35304.js +1 -0
  555. package/.next/static/chunks/app/api/daily-summary/status/route-c81284a9d8b35304.js +1 -0
  556. package/.next/static/chunks/app/api/external-apps/[id]/health/route-c81284a9d8b35304.js +1 -0
  557. package/.next/static/chunks/app/api/external-apps/[id]/route-c81284a9d8b35304.js +1 -0
  558. package/.next/static/chunks/app/api/external-apps/route-c81284a9d8b35304.js +1 -0
  559. package/.next/static/chunks/app/api/fs/browse/route-c81284a9d8b35304.js +1 -0
  560. package/.next/static/chunks/app/api/fs/recent-paths/route-c81284a9d8b35304.js +1 -0
  561. package/.next/static/chunks/app/api/hooks/agent-event/route-c81284a9d8b35304.js +1 -0
  562. package/.next/static/chunks/app/api/hooks/claude-done/route-c81284a9d8b35304.js +1 -0
  563. package/.next/static/chunks/app/api/hooks/permission-request/route-c81284a9d8b35304.js +1 -0
  564. package/.next/static/chunks/app/api/metrics/vibe/route-c81284a9d8b35304.js +1 -0
  565. package/.next/static/chunks/app/api/ollama/models/route-c81284a9d8b35304.js +1 -0
  566. package/.next/static/chunks/app/api/push/escalation/route-c81284a9d8b35304.js +1 -0
  567. package/.next/static/chunks/app/api/push/subscriptions/route-c81284a9d8b35304.js +1 -0
  568. package/.next/static/chunks/app/api/push/vapid/route-c81284a9d8b35304.js +1 -0
  569. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-c81284a9d8b35304.js +1 -0
  570. package/.next/static/chunks/app/api/relays/route-c81284a9d8b35304.js +1 -0
  571. package/.next/static/chunks/app/api/remote/pair/route-c81284a9d8b35304.js +1 -0
  572. package/.next/static/chunks/app/api/repositories/[id]/route-c81284a9d8b35304.js +1 -0
  573. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-c81284a9d8b35304.js +1 -0
  574. package/.next/static/chunks/app/api/repositories/clone/route-c81284a9d8b35304.js +1 -0
  575. package/.next/static/chunks/app/api/repositories/excluded/route-c81284a9d8b35304.js +1 -0
  576. package/.next/static/chunks/app/api/repositories/restore/route-c81284a9d8b35304.js +1 -0
  577. package/.next/static/chunks/app/api/repositories/route-c81284a9d8b35304.js +1 -0
  578. package/.next/static/chunks/app/api/repositories/scan/route-c81284a9d8b35304.js +1 -0
  579. package/.next/static/chunks/app/api/repositories/sync/route-c81284a9d8b35304.js +1 -0
  580. package/.next/static/chunks/app/api/repositories/validate-path/route-c81284a9d8b35304.js +1 -0
  581. package/.next/static/chunks/app/api/settings/default-agents/route-c81284a9d8b35304.js +1 -0
  582. package/.next/static/chunks/app/api/settings/default-surface-mode/route-c81284a9d8b35304.js +1 -0
  583. package/.next/static/chunks/app/api/sidebar/group-order/route-c81284a9d8b35304.js +1 -0
  584. package/.next/static/chunks/app/api/skills/[id]/route-c81284a9d8b35304.js +1 -0
  585. package/.next/static/chunks/app/api/skills/installations/route-c81284a9d8b35304.js +1 -0
  586. package/.next/static/chunks/app/api/skills/operations/route-c81284a9d8b35304.js +1 -0
  587. package/.next/static/chunks/app/api/skills/reindex/route-c81284a9d8b35304.js +1 -0
  588. package/.next/static/chunks/app/api/skills/route-c81284a9d8b35304.js +1 -0
  589. package/.next/static/chunks/app/api/slash-commands/route-c81284a9d8b35304.js +1 -0
  590. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-c81284a9d8b35304.js +1 -0
  591. package/.next/static/chunks/app/api/tasks/[taskId]/route-c81284a9d8b35304.js +1 -0
  592. package/.next/static/chunks/app/api/templates/[id]/route-c81284a9d8b35304.js +1 -0
  593. package/.next/static/chunks/app/api/templates/route-c81284a9d8b35304.js +1 -0
  594. package/.next/static/chunks/app/api/verification/runs/[runId]/route-c81284a9d8b35304.js +1 -0
  595. package/.next/static/chunks/app/api/verification/runs/route-c81284a9d8b35304.js +1 -0
  596. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-c81284a9d8b35304.js +1 -0
  597. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-c81284a9d8b35304.js +1 -0
  598. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-c81284a9d8b35304.js +1 -0
  599. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-c81284a9d8b35304.js +1 -0
  600. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-c81284a9d8b35304.js +1 -0
  601. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-c81284a9d8b35304.js +1 -0
  602. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-c81284a9d8b35304.js +1 -0
  603. package/.next/static/chunks/app/api/worktrees/[id]/direct-input/route-c81284a9d8b35304.js +1 -0
  604. package/.next/static/chunks/app/api/worktrees/[id]/env/route-c81284a9d8b35304.js +1 -0
  605. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-c81284a9d8b35304.js +1 -0
  606. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-c81284a9d8b35304.js +1 -0
  607. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-c81284a9d8b35304.js +1 -0
  608. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-c81284a9d8b35304.js +1 -0
  609. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-c81284a9d8b35304.js +1 -0
  610. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-c81284a9d8b35304.js +1 -0
  611. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-c81284a9d8b35304.js +1 -0
  612. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-c81284a9d8b35304.js +1 -0
  613. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-c81284a9d8b35304.js +1 -0
  614. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-c81284a9d8b35304.js +1 -0
  615. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-c81284a9d8b35304.js +1 -0
  616. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-c81284a9d8b35304.js +1 -0
  617. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-c81284a9d8b35304.js +1 -0
  618. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-c81284a9d8b35304.js +1 -0
  619. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-c81284a9d8b35304.js +1 -0
  620. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-c81284a9d8b35304.js +1 -0
  621. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-c81284a9d8b35304.js +1 -0
  622. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-c81284a9d8b35304.js +1 -0
  623. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-c81284a9d8b35304.js +1 -0
  624. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-c81284a9d8b35304.js +1 -0
  625. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-c81284a9d8b35304.js +1 -0
  626. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-c81284a9d8b35304.js +1 -0
  627. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-c81284a9d8b35304.js +1 -0
  628. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-c81284a9d8b35304.js +1 -0
  629. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-c81284a9d8b35304.js +1 -0
  630. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-c81284a9d8b35304.js +1 -0
  631. package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-c81284a9d8b35304.js +1 -0
  632. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-c81284a9d8b35304.js +1 -0
  633. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-c81284a9d8b35304.js +1 -0
  634. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-c81284a9d8b35304.js +1 -0
  635. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-c81284a9d8b35304.js +1 -0
  636. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-c81284a9d8b35304.js +1 -0
  637. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-c81284a9d8b35304.js +1 -0
  638. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-c81284a9d8b35304.js +1 -0
  639. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-c81284a9d8b35304.js +1 -0
  640. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-c81284a9d8b35304.js +1 -0
  641. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-c81284a9d8b35304.js +1 -0
  642. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-c81284a9d8b35304.js +1 -0
  643. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-c81284a9d8b35304.js +1 -0
  644. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-c81284a9d8b35304.js +1 -0
  645. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/strict/route-c81284a9d8b35304.js +1 -0
  646. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-c81284a9d8b35304.js +1 -0
  647. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-c81284a9d8b35304.js +1 -0
  648. package/.next/static/chunks/app/api/worktrees/[id]/route-c81284a9d8b35304.js +1 -0
  649. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-c81284a9d8b35304.js +1 -0
  650. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-c81284a9d8b35304.js +1 -0
  651. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-c81284a9d8b35304.js +1 -0
  652. package/.next/static/chunks/app/api/worktrees/[id]/search/route-c81284a9d8b35304.js +1 -0
  653. package/.next/static/chunks/app/api/worktrees/[id]/send/route-c81284a9d8b35304.js +1 -0
  654. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-c81284a9d8b35304.js +1 -0
  655. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-c81284a9d8b35304.js +1 -0
  656. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-c81284a9d8b35304.js +1 -0
  657. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-c81284a9d8b35304.js +1 -0
  658. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-c81284a9d8b35304.js +1 -0
  659. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-c81284a9d8b35304.js +1 -0
  660. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-c81284a9d8b35304.js +1 -0
  661. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-c81284a9d8b35304.js +1 -0
  662. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-c81284a9d8b35304.js +1 -0
  663. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-c81284a9d8b35304.js +1 -0
  664. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-c81284a9d8b35304.js +1 -0
  665. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-c81284a9d8b35304.js +1 -0
  666. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-c81284a9d8b35304.js +1 -0
  667. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-c81284a9d8b35304.js +1 -0
  668. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-c81284a9d8b35304.js +1 -0
  669. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-c81284a9d8b35304.js +1 -0
  670. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-c81284a9d8b35304.js +1 -0
  671. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-c81284a9d8b35304.js +1 -0
  672. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-c81284a9d8b35304.js +1 -0
  673. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-c81284a9d8b35304.js +1 -0
  674. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-c81284a9d8b35304.js +1 -0
  675. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-c81284a9d8b35304.js +1 -0
  676. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-c81284a9d8b35304.js +1 -0
  677. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-c81284a9d8b35304.js +1 -0
  678. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-c81284a9d8b35304.js +1 -0
  679. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-c81284a9d8b35304.js +1 -0
  680. package/.next/static/chunks/app/api/worktrees/route-c81284a9d8b35304.js +1 -0
  681. package/.next/static/chunks/app/layout-538d8d2746ad1588.js +1 -0
  682. package/.next/static/chunks/app/manifest.webmanifest/route-c81284a9d8b35304.js +1 -0
  683. package/.next/static/chunks/app/proxy/[...path]/route-c81284a9d8b35304.js +1 -0
  684. package/.next/static/chunks/app/sessions/page-e02f1adb1d1c1ccc.js +1 -0
  685. package/.next/static/chunks/app/worktrees/[id]/layout-c81284a9d8b35304.js +1 -0
  686. package/.next/static/chunks/app/worktrees/[id]/page-46aced20b2b1c010.js +1 -0
  687. package/.next/static/chunks/main-37ca13e38030fe8b.js +1 -0
  688. package/.next/static/chunks/{webpack-468b7b33030234b3.js → webpack-838df0273b03af19.js} +1 -1
  689. package/.next/trace +13 -13
  690. package/.next/types/app/api/worktrees/[id]/prompt-response/strict/route.ts +347 -0
  691. package/.next/types/routes.d.ts +2 -1
  692. package/.next/types/validator.ts +9 -0
  693. package/dist/cli/commands/auto-yes.d.ts +19 -0
  694. package/dist/cli/commands/auto-yes.d.ts.map +1 -1
  695. package/dist/cli/commands/auto-yes.js +45 -0
  696. package/dist/cli/commands/instances.d.ts.map +1 -1
  697. package/dist/cli/commands/instances.js +23 -18
  698. package/dist/cli/commands/ls.d.ts +15 -1
  699. package/dist/cli/commands/ls.d.ts.map +1 -1
  700. package/dist/cli/commands/ls.js +39 -3
  701. package/dist/cli/commands/prompt.d.ts +42 -0
  702. package/dist/cli/commands/prompt.d.ts.map +1 -0
  703. package/dist/cli/commands/prompt.js +223 -0
  704. package/dist/cli/commands/relays.d.ts.map +1 -1
  705. package/dist/cli/commands/relays.js +13 -1
  706. package/dist/cli/commands/respond-strict.d.ts +31 -0
  707. package/dist/cli/commands/respond-strict.d.ts.map +1 -0
  708. package/dist/cli/commands/respond-strict.js +214 -0
  709. package/dist/cli/commands/respond.d.ts.map +1 -1
  710. package/dist/cli/commands/respond.js +38 -0
  711. package/dist/cli/commands/send.d.ts.map +1 -1
  712. package/dist/cli/commands/send.js +41 -5
  713. package/dist/cli/commands/start.d.ts.map +1 -1
  714. package/dist/cli/commands/start.js +2 -1
  715. package/dist/cli/commands/status.d.ts.map +1 -1
  716. package/dist/cli/commands/status.js +18 -0
  717. package/dist/cli/commands/wait.d.ts +21 -1
  718. package/dist/cli/commands/wait.d.ts.map +1 -1
  719. package/dist/cli/commands/wait.js +114 -12
  720. package/dist/cli/docs/agent-operations.d.ts +1 -1
  721. package/dist/cli/docs/agent-operations.d.ts.map +1 -1
  722. package/dist/cli/docs/agent-operations.js +63 -1
  723. package/dist/cli/program.d.ts.map +1 -1
  724. package/dist/cli/program.js +6 -2
  725. package/dist/cli/types/api-responses.d.ts +69 -2
  726. package/dist/cli/types/api-responses.d.ts.map +1 -1
  727. package/dist/cli/types/index.d.ts +30 -0
  728. package/dist/cli/types/index.d.ts.map +1 -1
  729. package/dist/cli/types/index.js +12 -1
  730. package/dist/cli/utils/api-client.d.ts +13 -1
  731. package/dist/cli/utils/api-client.d.ts.map +1 -1
  732. package/dist/cli/utils/api-client.js +10 -2
  733. package/dist/cli/utils/daemon-factory.d.ts.map +1 -1
  734. package/dist/cli/utils/daemon-factory.js +3 -1
  735. package/dist/cli/utils/daemon.d.ts +38 -1
  736. package/dist/cli/utils/daemon.d.ts.map +1 -1
  737. package/dist/cli/utils/daemon.js +161 -8
  738. package/dist/cli/utils/paths.d.ts +12 -0
  739. package/dist/cli/utils/paths.d.ts.map +1 -1
  740. package/dist/cli/utils/paths.js +17 -0
  741. package/dist/lib/polling/auto-yes-suppression-reason.d.ts +54 -1
  742. package/dist/lib/polling/auto-yes-suppression-reason.d.ts.map +1 -1
  743. package/dist/lib/polling/auto-yes-suppression-reason.js +21 -1
  744. package/dist/lib/prompt-observation/kinds.d.ts +101 -0
  745. package/dist/lib/prompt-observation/kinds.d.ts.map +1 -0
  746. package/dist/lib/prompt-observation/kinds.js +123 -0
  747. package/dist/lib/prompt-observation/types.d.ts +271 -0
  748. package/dist/lib/prompt-observation/types.d.ts.map +1 -0
  749. package/dist/lib/prompt-observation/types.js +14 -0
  750. package/dist/lib/session/send-attempt-types.d.ts +66 -0
  751. package/dist/lib/session/send-attempt-types.d.ts.map +1 -0
  752. package/dist/lib/session/send-attempt-types.js +17 -0
  753. package/dist/server/locales/en/worktree.json +4 -0
  754. package/dist/server/locales/ja/worktree.json +4 -0
  755. package/dist/server/server.js +20 -1
  756. package/dist/server/src/config/auto-yes-config.js +11 -0
  757. package/dist/server/src/lib/auto-yes-lifecycle.js +28 -2
  758. package/dist/server/src/lib/auto-yes-poller.js +401 -369
  759. package/dist/server/src/lib/auto-yes-shutdown-record.js +257 -0
  760. package/dist/server/src/lib/auto-yes-state.js +197 -4
  761. package/dist/server/src/lib/cli-tools/antigravity-startup-trust.js +135 -0
  762. package/dist/server/src/lib/cli-tools/antigravity.js +162 -29
  763. package/dist/server/src/lib/cli-tools/command-code.js +10 -2
  764. package/dist/server/src/lib/cli-tools/copilot.js +21 -10
  765. package/dist/server/src/lib/cli-tools/gemini.js +60 -13
  766. package/dist/server/src/lib/cli-tools/launch-dialog.js +203 -0
  767. package/dist/server/src/lib/cli-tools/launch-window.js +96 -0
  768. package/dist/server/src/lib/detection/prompt-detect-multiple-choice.js +88 -6
  769. package/dist/server/src/lib/detection/prompt-detector.js +1 -1
  770. package/dist/server/src/lib/detection/selection-shape.js +35 -1
  771. package/dist/server/src/lib/detection/tools/antigravity/detect.js +38 -9
  772. package/dist/server/src/lib/detection/tools/antigravity/dialog.js +89 -2
  773. package/dist/server/src/lib/detection/tools/antigravity/patterns.js +41 -1
  774. package/dist/server/src/lib/detection/tools/claude/detect.js +60 -0
  775. package/dist/server/src/lib/detection/tools/command-code/selection-shape.js +63 -13
  776. package/dist/server/src/lib/detection/tools/copilot/patterns.js +7 -1
  777. package/dist/server/src/lib/hooks/permission-adjudication.js +26 -0
  778. package/dist/server/src/lib/hooks/permission-decision-service.js +42 -4
  779. package/dist/server/src/lib/hooks/permission-request-payload.js +20 -0
  780. package/dist/server/src/lib/hooks/sources/antigravity/source.js +21 -0
  781. package/dist/server/src/lib/hooks/sources/claude/source.js +3 -0
  782. package/dist/server/src/lib/hooks/sources/codex/source.js +2 -0
  783. package/dist/server/src/lib/hooks/sources/command-code/source.js +2 -0
  784. package/dist/server/src/lib/hooks/sources/copilot/source.js +2 -0
  785. package/dist/server/src/lib/hooks/sources/gemini/source.js +2 -0
  786. package/dist/server/src/lib/hooks/sources/legacy-relay.js +2 -0
  787. package/dist/server/src/lib/hooks/sources/opencode/ingest.js +6 -0
  788. package/dist/server/src/lib/hooks/sources/opencode/source.js +2 -0
  789. package/dist/server/src/lib/hooks/sources/opencode-v2/history.js +11 -2
  790. package/dist/server/src/lib/hooks/sources/opencode-v2/ingest.js +6 -0
  791. package/dist/server/src/lib/hooks/sources/opencode-v2/source.js +2 -0
  792. package/dist/server/src/lib/hooks/sources/opencode-v2/subscription.js +5 -3
  793. package/dist/server/src/lib/hooks/sources/pending-decisions.js +14 -2
  794. package/dist/server/src/lib/polling/antigravity-permission-receipts.js +29 -3
  795. package/dist/server/src/lib/polling/antigravity-receipt-episodes.js +301 -0
  796. package/dist/server/src/lib/polling/auto-yes-confirm-page.js +56 -0
  797. package/dist/server/src/lib/polling/auto-yes-confirmation-ledger-types.js +114 -0
  798. package/dist/server/src/lib/polling/auto-yes-confirmation-ledger.js +1060 -0
  799. package/dist/server/src/lib/polling/auto-yes-dialog-gate.js +8 -1
  800. package/dist/server/src/lib/polling/auto-yes-ledger-records.js +143 -0
  801. package/dist/server/src/lib/polling/auto-yes-policy.js +96 -13
  802. package/dist/server/src/lib/polling/auto-yes-poller-capture.js +50 -0
  803. package/dist/server/src/lib/polling/auto-yes-poller-enter-fallback.js +37 -0
  804. package/dist/server/src/lib/polling/auto-yes-poller-generation.js +151 -0
  805. package/dist/server/src/lib/polling/auto-yes-poller-receipt-log.js +287 -0
  806. package/dist/server/src/lib/polling/auto-yes-poller-state.js +75 -6
  807. package/dist/server/src/lib/polling/auto-yes-poller-steps.js +109 -0
  808. package/dist/server/src/lib/polling/auto-yes-poller-stop-reason.js +50 -0
  809. package/dist/server/src/lib/polling/auto-yes-prompt-suppression.js +231 -5
  810. package/dist/server/src/lib/polling/auto-yes-resolver.js +21 -1
  811. package/dist/server/src/lib/polling/auto-yes-suppression-reason.js +21 -1
  812. package/dist/server/src/lib/polling/auto-yes-suppression-state.js +10 -0
  813. package/dist/server/src/lib/polling/response-checker-blank-response.js +30 -0
  814. package/dist/server/src/lib/polling/response-checker-dialog-gate.js +2 -2
  815. package/dist/server/src/lib/polling/response-checker.js +14 -10
  816. package/dist/server/src/lib/polling/response-poller-core.js +136 -104
  817. package/dist/server/src/lib/prompt-observation/appearance.js +165 -0
  818. package/dist/server/src/lib/prompt-observation/kinds.js +123 -0
  819. package/dist/server/src/lib/prompt-observation/types.js +14 -0
  820. package/dist/server/src/lib/push/prompt-push-gate.js +195 -3
  821. package/dist/server/src/lib/push/waiting-push-notifier.js +74 -7
  822. package/dist/server/src/lib/relay/relay-delivery-claims.js +46 -0
  823. package/dist/server/src/lib/relay/relay-delivery.js +76 -30
  824. package/dist/server/src/lib/schedule-manager.js +28 -0
  825. package/dist/server/src/lib/session/cli-session.js +38 -3
  826. package/dist/server/src/lib/session/send-attempt-state.js +155 -0
  827. package/dist/server/src/lib/session/send-attempt-types.js +17 -0
  828. package/dist/server/src/lib/session/send-user-message.js +46 -0
  829. package/dist/server/src/lib/session/worktree-session-reconcile.js +2 -1
  830. package/dist/server/src/lib/tmux/session-created-signal.js +76 -0
  831. package/dist/server/src/lib/tmux/tmux-capture-cache.js +58 -6
  832. package/dist/server/src/lib/tmux/tmux.js +4 -0
  833. package/dist/server/src/lib/verification/scope-gate-format.js +100 -0
  834. package/dist/server/src/lib/verification/scope-gate-glob.js +185 -0
  835. package/dist/server/src/lib/verification/scope-gate.js +19 -271
  836. package/dist/server/src/lib/ws-server.js +48 -6
  837. package/docs/en/user-guide/cli-setup-guide.md +12 -1
  838. package/docs/en/user-guide/webapp-guide.md +2 -0
  839. package/package.json +2 -2
  840. package/release-notes/0.47.0.json +118 -0
  841. package/release-notes/0.47.1.json +20 -0
  842. package/release-notes/0.47.2.json +20 -0
  843. package/scripts/hooks/cmate-agent-event.sh +22 -0
  844. package/.next/server/chunks/1331.js +0 -22
  845. package/.next/server/chunks/1789.js +0 -1
  846. package/.next/server/chunks/1944.js +0 -1
  847. package/.next/server/chunks/2328.js +0 -1
  848. package/.next/server/chunks/2908.js +0 -1
  849. package/.next/server/chunks/2984.js +0 -25
  850. package/.next/server/chunks/3718.js +0 -1
  851. package/.next/server/chunks/4837.js +0 -14
  852. package/.next/server/chunks/5292.js +0 -7
  853. package/.next/server/chunks/611.js +0 -1
  854. package/.next/server/chunks/850.js +0 -1
  855. package/.next/server/chunks/9051.js +0 -1
  856. package/.next/static/chunks/3201-c01f1feed69020e6.js +0 -1
  857. package/.next/static/chunks/5371-0dc947683e46e78c.js +0 -1
  858. package/.next/static/chunks/602-25e45a2422d2a3ea.js +0 -1
  859. package/.next/static/chunks/9465-e5a351baa941f31b.js +0 -1
  860. package/.next/static/chunks/app/api/app/update/route-0468c3c4baa46028.js +0 -1
  861. package/.next/static/chunks/app/api/auth/login/route-0468c3c4baa46028.js +0 -1
  862. package/.next/static/chunks/app/api/auth/logout/route-0468c3c4baa46028.js +0 -1
  863. package/.next/static/chunks/app/api/auth/status/route-0468c3c4baa46028.js +0 -1
  864. package/.next/static/chunks/app/api/capabilities/route-0468c3c4baa46028.js +0 -1
  865. package/.next/static/chunks/app/api/daily-summary/route-0468c3c4baa46028.js +0 -1
  866. package/.next/static/chunks/app/api/daily-summary/status/route-0468c3c4baa46028.js +0 -1
  867. package/.next/static/chunks/app/api/external-apps/[id]/health/route-0468c3c4baa46028.js +0 -1
  868. package/.next/static/chunks/app/api/external-apps/[id]/route-0468c3c4baa46028.js +0 -1
  869. package/.next/static/chunks/app/api/external-apps/route-0468c3c4baa46028.js +0 -1
  870. package/.next/static/chunks/app/api/fs/browse/route-0468c3c4baa46028.js +0 -1
  871. package/.next/static/chunks/app/api/fs/recent-paths/route-0468c3c4baa46028.js +0 -1
  872. package/.next/static/chunks/app/api/hooks/agent-event/route-0468c3c4baa46028.js +0 -1
  873. package/.next/static/chunks/app/api/hooks/claude-done/route-0468c3c4baa46028.js +0 -1
  874. package/.next/static/chunks/app/api/hooks/permission-request/route-0468c3c4baa46028.js +0 -1
  875. package/.next/static/chunks/app/api/metrics/vibe/route-0468c3c4baa46028.js +0 -1
  876. package/.next/static/chunks/app/api/ollama/models/route-0468c3c4baa46028.js +0 -1
  877. package/.next/static/chunks/app/api/push/escalation/route-0468c3c4baa46028.js +0 -1
  878. package/.next/static/chunks/app/api/push/subscriptions/route-0468c3c4baa46028.js +0 -1
  879. package/.next/static/chunks/app/api/push/vapid/route-0468c3c4baa46028.js +0 -1
  880. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-0468c3c4baa46028.js +0 -1
  881. package/.next/static/chunks/app/api/relays/route-0468c3c4baa46028.js +0 -1
  882. package/.next/static/chunks/app/api/remote/pair/route-0468c3c4baa46028.js +0 -1
  883. package/.next/static/chunks/app/api/repositories/[id]/route-0468c3c4baa46028.js +0 -1
  884. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-0468c3c4baa46028.js +0 -1
  885. package/.next/static/chunks/app/api/repositories/clone/route-0468c3c4baa46028.js +0 -1
  886. package/.next/static/chunks/app/api/repositories/excluded/route-0468c3c4baa46028.js +0 -1
  887. package/.next/static/chunks/app/api/repositories/restore/route-0468c3c4baa46028.js +0 -1
  888. package/.next/static/chunks/app/api/repositories/route-0468c3c4baa46028.js +0 -1
  889. package/.next/static/chunks/app/api/repositories/scan/route-0468c3c4baa46028.js +0 -1
  890. package/.next/static/chunks/app/api/repositories/sync/route-0468c3c4baa46028.js +0 -1
  891. package/.next/static/chunks/app/api/repositories/validate-path/route-0468c3c4baa46028.js +0 -1
  892. package/.next/static/chunks/app/api/settings/default-agents/route-0468c3c4baa46028.js +0 -1
  893. package/.next/static/chunks/app/api/settings/default-surface-mode/route-0468c3c4baa46028.js +0 -1
  894. package/.next/static/chunks/app/api/sidebar/group-order/route-0468c3c4baa46028.js +0 -1
  895. package/.next/static/chunks/app/api/skills/[id]/route-0468c3c4baa46028.js +0 -1
  896. package/.next/static/chunks/app/api/skills/installations/route-0468c3c4baa46028.js +0 -1
  897. package/.next/static/chunks/app/api/skills/operations/route-0468c3c4baa46028.js +0 -1
  898. package/.next/static/chunks/app/api/skills/reindex/route-0468c3c4baa46028.js +0 -1
  899. package/.next/static/chunks/app/api/skills/route-0468c3c4baa46028.js +0 -1
  900. package/.next/static/chunks/app/api/slash-commands/route-0468c3c4baa46028.js +0 -1
  901. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-0468c3c4baa46028.js +0 -1
  902. package/.next/static/chunks/app/api/tasks/[taskId]/route-0468c3c4baa46028.js +0 -1
  903. package/.next/static/chunks/app/api/templates/[id]/route-0468c3c4baa46028.js +0 -1
  904. package/.next/static/chunks/app/api/templates/route-0468c3c4baa46028.js +0 -1
  905. package/.next/static/chunks/app/api/verification/runs/[runId]/route-0468c3c4baa46028.js +0 -1
  906. package/.next/static/chunks/app/api/verification/runs/route-0468c3c4baa46028.js +0 -1
  907. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-0468c3c4baa46028.js +0 -1
  908. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-0468c3c4baa46028.js +0 -1
  909. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-0468c3c4baa46028.js +0 -1
  910. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-0468c3c4baa46028.js +0 -1
  911. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-0468c3c4baa46028.js +0 -1
  912. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-0468c3c4baa46028.js +0 -1
  913. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-0468c3c4baa46028.js +0 -1
  914. package/.next/static/chunks/app/api/worktrees/[id]/direct-input/route-0468c3c4baa46028.js +0 -1
  915. package/.next/static/chunks/app/api/worktrees/[id]/env/route-0468c3c4baa46028.js +0 -1
  916. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-0468c3c4baa46028.js +0 -1
  917. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-0468c3c4baa46028.js +0 -1
  918. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-0468c3c4baa46028.js +0 -1
  919. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-0468c3c4baa46028.js +0 -1
  920. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-0468c3c4baa46028.js +0 -1
  921. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-0468c3c4baa46028.js +0 -1
  922. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-0468c3c4baa46028.js +0 -1
  923. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-0468c3c4baa46028.js +0 -1
  924. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-0468c3c4baa46028.js +0 -1
  925. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-0468c3c4baa46028.js +0 -1
  926. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-0468c3c4baa46028.js +0 -1
  927. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-0468c3c4baa46028.js +0 -1
  928. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-0468c3c4baa46028.js +0 -1
  929. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-0468c3c4baa46028.js +0 -1
  930. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-0468c3c4baa46028.js +0 -1
  931. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-0468c3c4baa46028.js +0 -1
  932. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-0468c3c4baa46028.js +0 -1
  933. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-0468c3c4baa46028.js +0 -1
  934. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-0468c3c4baa46028.js +0 -1
  935. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-0468c3c4baa46028.js +0 -1
  936. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-0468c3c4baa46028.js +0 -1
  937. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-0468c3c4baa46028.js +0 -1
  938. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-0468c3c4baa46028.js +0 -1
  939. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-0468c3c4baa46028.js +0 -1
  940. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-0468c3c4baa46028.js +0 -1
  941. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-0468c3c4baa46028.js +0 -1
  942. package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-0468c3c4baa46028.js +0 -1
  943. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-0468c3c4baa46028.js +0 -1
  944. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-0468c3c4baa46028.js +0 -1
  945. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-0468c3c4baa46028.js +0 -1
  946. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-0468c3c4baa46028.js +0 -1
  947. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-0468c3c4baa46028.js +0 -1
  948. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-0468c3c4baa46028.js +0 -1
  949. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-0468c3c4baa46028.js +0 -1
  950. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-0468c3c4baa46028.js +0 -1
  951. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-0468c3c4baa46028.js +0 -1
  952. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-0468c3c4baa46028.js +0 -1
  953. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-0468c3c4baa46028.js +0 -1
  954. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-0468c3c4baa46028.js +0 -1
  955. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-0468c3c4baa46028.js +0 -1
  956. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-0468c3c4baa46028.js +0 -1
  957. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-0468c3c4baa46028.js +0 -1
  958. package/.next/static/chunks/app/api/worktrees/[id]/route-0468c3c4baa46028.js +0 -1
  959. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-0468c3c4baa46028.js +0 -1
  960. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-0468c3c4baa46028.js +0 -1
  961. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-0468c3c4baa46028.js +0 -1
  962. package/.next/static/chunks/app/api/worktrees/[id]/search/route-0468c3c4baa46028.js +0 -1
  963. package/.next/static/chunks/app/api/worktrees/[id]/send/route-0468c3c4baa46028.js +0 -1
  964. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-0468c3c4baa46028.js +0 -1
  965. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-0468c3c4baa46028.js +0 -1
  966. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-0468c3c4baa46028.js +0 -1
  967. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-0468c3c4baa46028.js +0 -1
  968. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-0468c3c4baa46028.js +0 -1
  969. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-0468c3c4baa46028.js +0 -1
  970. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-0468c3c4baa46028.js +0 -1
  971. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-0468c3c4baa46028.js +0 -1
  972. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-0468c3c4baa46028.js +0 -1
  973. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-0468c3c4baa46028.js +0 -1
  974. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-0468c3c4baa46028.js +0 -1
  975. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-0468c3c4baa46028.js +0 -1
  976. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-0468c3c4baa46028.js +0 -1
  977. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-0468c3c4baa46028.js +0 -1
  978. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-0468c3c4baa46028.js +0 -1
  979. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-0468c3c4baa46028.js +0 -1
  980. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-0468c3c4baa46028.js +0 -1
  981. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-0468c3c4baa46028.js +0 -1
  982. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-0468c3c4baa46028.js +0 -1
  983. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-0468c3c4baa46028.js +0 -1
  984. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-0468c3c4baa46028.js +0 -1
  985. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-0468c3c4baa46028.js +0 -1
  986. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-0468c3c4baa46028.js +0 -1
  987. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-0468c3c4baa46028.js +0 -1
  988. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-0468c3c4baa46028.js +0 -1
  989. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-0468c3c4baa46028.js +0 -1
  990. package/.next/static/chunks/app/api/worktrees/route-0468c3c4baa46028.js +0 -1
  991. package/.next/static/chunks/app/layout-3e357690446cd2da.js +0 -1
  992. package/.next/static/chunks/app/manifest.webmanifest/route-0468c3c4baa46028.js +0 -1
  993. package/.next/static/chunks/app/proxy/[...path]/route-0468c3c4baa46028.js +0 -1
  994. package/.next/static/chunks/app/sessions/page-9859ed61e93e6890.js +0 -1
  995. package/.next/static/chunks/app/worktrees/[id]/layout-0468c3c4baa46028.js +0 -1
  996. package/.next/static/chunks/app/worktrees/[id]/page-effbf0796881dd5a.js +0 -1
  997. package/.next/static/chunks/main-ac91ed6e71380841.js +0 -1
  998. /package/.next/static/{QxDf7lm-JJkWoj-TyWiSB → etorRtpxbQqqOzdUeXdw2}/_buildManifest.js +0 -0
  999. /package/.next/static/{QxDf7lm-JJkWoj-TyWiSB → etorRtpxbQqqOzdUeXdw2}/_ssgManifest.js +0 -0
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "/_not-found/page": "app/_not-found/page.js",
3
- "/api/auth/login/route": "app/api/auth/login/route.js",
4
3
  "/api/auth/logout/route": "app/api/auth/logout/route.js",
4
+ "/api/auth/login/route": "app/api/auth/login/route.js",
5
5
  "/api/daily-summary/route": "app/api/daily-summary/route.js",
6
6
  "/api/hooks/agent-event/route": "app/api/hooks/agent-event/route.js",
7
7
  "/api/hooks/claude-done/route": "app/api/hooks/claude-done/route.js",
8
8
  "/api/hooks/permission-request/route": "app/api/hooks/permission-request/route.js",
9
- "/api/metrics/vibe/route": "app/api/metrics/vibe/route.js",
10
9
  "/api/ollama/models/route": "app/api/ollama/models/route.js",
10
+ "/api/metrics/vibe/route": "app/api/metrics/vibe/route.js",
11
11
  "/api/relays/[relayId]/cancel/route": "app/api/relays/[relayId]/cancel/route.js",
12
12
  "/api/relays/route": "app/api/relays/route.js",
13
13
  "/api/repositories/[id]/route": "app/api/repositories/[id]/route.js",
@@ -25,25 +25,25 @@
25
25
  "/api/templates/route": "app/api/templates/route.js",
26
26
  "/api/verification/runs/[runId]/route": "app/api/verification/runs/[runId]/route.js",
27
27
  "/api/verification/runs/route": "app/api/verification/runs/route.js",
28
- "/api/worktrees/[id]/auto-yes/route": "app/api/worktrees/[id]/auto-yes/route.js",
29
28
  "/api/worktrees/[id]/capture/route": "app/api/worktrees/[id]/capture/route.js",
30
29
  "/api/worktrees/[id]/clear-composer/route": "app/api/worktrees/[id]/clear-composer/route.js",
31
30
  "/api/worktrees/[id]/cli-reference/route": "app/api/worktrees/[id]/cli-reference/route.js",
31
+ "/api/worktrees/[id]/auto-yes/route": "app/api/worktrees/[id]/auto-yes/route.js",
32
32
  "/api/worktrees/[id]/cli-tool/route": "app/api/worktrees/[id]/cli-tool/route.js",
33
33
  "/api/worktrees/[id]/cmate/schedules/route": "app/api/worktrees/[id]/cmate/schedules/route.js",
34
34
  "/api/worktrees/[id]/current-output/route": "app/api/worktrees/[id]/current-output/route.js",
35
35
  "/api/worktrees/[id]/direct-input/route": "app/api/worktrees/[id]/direct-input/route.js",
36
- "/api/worktrees/[id]/execution-logs/[logId]/route": "app/api/worktrees/[id]/execution-logs/[logId]/route.js",
37
36
  "/api/worktrees/[id]/env/route": "app/api/worktrees/[id]/env/route.js",
37
+ "/api/worktrees/[id]/execution-logs/[logId]/route": "app/api/worktrees/[id]/execution-logs/[logId]/route.js",
38
38
  "/api/worktrees/[id]/execution-logs/route": "app/api/worktrees/[id]/execution-logs/route.js",
39
- "/api/worktrees/[id]/files/[...path]/route": "app/api/worktrees/[id]/files/[...path]/route.js",
40
- "/api/worktrees/[id]/git/branch/delete/route": "app/api/worktrees/[id]/git/branch/delete/route.js",
41
39
  "/api/worktrees/[id]/git/branch/create/route": "app/api/worktrees/[id]/git/branch/create/route.js",
42
40
  "/api/worktrees/[id]/git/branches/route": "app/api/worktrees/[id]/git/branches/route.js",
41
+ "/api/worktrees/[id]/git/branch/delete/route": "app/api/worktrees/[id]/git/branch/delete/route.js",
42
+ "/api/worktrees/[id]/files/[...path]/route": "app/api/worktrees/[id]/files/[...path]/route.js",
43
43
  "/api/worktrees/[id]/git/checkout/route": "app/api/worktrees/[id]/git/checkout/route.js",
44
- "/api/worktrees/[id]/git/commit/route": "app/api/worktrees/[id]/git/commit/route.js",
45
- "/api/worktrees/[id]/git/diff/route": "app/api/worktrees/[id]/git/diff/route.js",
46
44
  "/api/worktrees/[id]/git/fetch/route": "app/api/worktrees/[id]/git/fetch/route.js",
45
+ "/api/worktrees/[id]/git/diff/route": "app/api/worktrees/[id]/git/diff/route.js",
46
+ "/api/worktrees/[id]/git/commit/route": "app/api/worktrees/[id]/git/commit/route.js",
47
47
  "/api/worktrees/[id]/git/log/route": "app/api/worktrees/[id]/git/log/route.js",
48
48
  "/api/worktrees/[id]/git/pull/route": "app/api/worktrees/[id]/git/pull/route.js",
49
49
  "/api/worktrees/[id]/git/push/route": "app/api/worktrees/[id]/git/push/route.js",
@@ -52,45 +52,46 @@
52
52
  "/api/worktrees/[id]/git/show/[commitHash]/route": "app/api/worktrees/[id]/git/show/[commitHash]/route.js",
53
53
  "/api/worktrees/[id]/git/stage/route": "app/api/worktrees/[id]/git/stage/route.js",
54
54
  "/api/worktrees/[id]/git/staged/route": "app/api/worktrees/[id]/git/staged/route.js",
55
- "/api/worktrees/[id]/git/stash/[index]/route": "app/api/worktrees/[id]/git/stash/[index]/route.js",
56
55
  "/api/worktrees/[id]/git/stash/apply/route": "app/api/worktrees/[id]/git/stash/apply/route.js",
56
+ "/api/worktrees/[id]/git/stash/[index]/route": "app/api/worktrees/[id]/git/stash/[index]/route.js",
57
57
  "/api/worktrees/[id]/git/stash/pop/route": "app/api/worktrees/[id]/git/stash/pop/route.js",
58
58
  "/api/worktrees/[id]/git/stash/push/route": "app/api/worktrees/[id]/git/stash/push/route.js",
59
59
  "/api/worktrees/[id]/git/stash/route": "app/api/worktrees/[id]/git/stash/route.js",
60
60
  "/api/worktrees/[id]/git/status/route": "app/api/worktrees/[id]/git/status/route.js",
61
61
  "/api/worktrees/[id]/git/unstage/route": "app/api/worktrees/[id]/git/unstage/route.js",
62
62
  "/api/worktrees/[id]/git/working-diff/route": "app/api/worktrees/[id]/git/working-diff/route.js",
63
- "/api/worktrees/[id]/instances/notes/route": "app/api/worktrees/[id]/instances/notes/route.js",
64
63
  "/api/worktrees/[id]/instances/opencode/route": "app/api/worktrees/[id]/instances/opencode/route.js",
64
+ "/api/worktrees/[id]/instances/notes/route": "app/api/worktrees/[id]/instances/notes/route.js",
65
65
  "/api/worktrees/[id]/interrupt/route": "app/api/worktrees/[id]/interrupt/route.js",
66
66
  "/api/worktrees/[id]/kill-session/route": "app/api/worktrees/[id]/kill-session/route.js",
67
67
  "/api/worktrees/[id]/marp-render/route": "app/api/worktrees/[id]/marp-render/route.js",
68
68
  "/api/worktrees/[id]/memos/[memoId]/route": "app/api/worktrees/[id]/memos/[memoId]/route.js",
69
- "/api/worktrees/[id]/memos/route": "app/api/worktrees/[id]/memos/route.js",
70
69
  "/api/worktrees/[id]/messages/route": "app/api/worktrees/[id]/messages/route.js",
70
+ "/api/worktrees/[id]/memos/route": "app/api/worktrees/[id]/memos/route.js",
71
71
  "/api/worktrees/[id]/opencode/diff/route": "app/api/worktrees/[id]/opencode/diff/route.js",
72
72
  "/api/worktrees/[id]/opencode/session/route": "app/api/worktrees/[id]/opencode/session/route.js",
73
73
  "/api/worktrees/[id]/opencode/share/route": "app/api/worktrees/[id]/opencode/share/route.js",
74
74
  "/api/worktrees/[id]/prompt-response/route": "app/api/worktrees/[id]/prompt-response/route.js",
75
- "/api/worktrees/[id]/respond/route": "app/api/worktrees/[id]/respond/route.js",
75
+ "/api/worktrees/[id]/prompt-response/strict/route": "app/api/worktrees/[id]/prompt-response/strict/route.js",
76
76
  "/api/worktrees/[id]/route": "app/api/worktrees/[id]/route.js",
77
+ "/api/worktrees/[id]/respond/route": "app/api/worktrees/[id]/respond/route.js",
77
78
  "/api/worktrees/[id]/schedules/[scheduleId]/route": "app/api/worktrees/[id]/schedules/[scheduleId]/route.js",
78
79
  "/api/worktrees/[id]/schedules/active/route": "app/api/worktrees/[id]/schedules/active/route.js",
79
- "/api/worktrees/[id]/schedules/route": "app/api/worktrees/[id]/schedules/route.js",
80
80
  "/api/worktrees/[id]/search/route": "app/api/worktrees/[id]/search/route.js",
81
+ "/api/worktrees/[id]/schedules/route": "app/api/worktrees/[id]/schedules/route.js",
81
82
  "/api/worktrees/[id]/send/route": "app/api/worktrees/[id]/send/route.js",
82
83
  "/api/worktrees/[id]/slash-commands/route": "app/api/worktrees/[id]/slash-commands/route.js",
83
84
  "/api/worktrees/[id]/special-keys/route": "app/api/worktrees/[id]/special-keys/route.js",
84
85
  "/api/worktrees/[id]/tasks/route": "app/api/worktrees/[id]/tasks/route.js",
85
- "/api/worktrees/[id]/terminal/route": "app/api/worktrees/[id]/terminal/route.js",
86
86
  "/api/worktrees/[id]/timers/history/route": "app/api/worktrees/[id]/timers/history/route.js",
87
+ "/api/worktrees/[id]/terminal/route": "app/api/worktrees/[id]/terminal/route.js",
87
88
  "/api/worktrees/[id]/timers/route": "app/api/worktrees/[id]/timers/route.js",
88
- "/api/worktrees/[id]/todos/route": "app/api/worktrees/[id]/todos/route.js",
89
89
  "/api/worktrees/[id]/todos/[todoId]/route": "app/api/worktrees/[id]/todos/[todoId]/route.js",
90
+ "/api/worktrees/[id]/todos/route": "app/api/worktrees/[id]/todos/route.js",
90
91
  "/api/worktrees/[id]/tree/[...path]/route": "app/api/worktrees/[id]/tree/[...path]/route.js",
91
92
  "/api/worktrees/[id]/tree/route": "app/api/worktrees/[id]/tree/route.js",
92
- "/api/worktrees/[id]/upload/[...path]/route": "app/api/worktrees/[id]/upload/[...path]/route.js",
93
93
  "/api/worktrees/[id]/verify/config/route": "app/api/worktrees/[id]/verify/config/route.js",
94
+ "/api/worktrees/[id]/upload/[...path]/route": "app/api/worktrees/[id]/upload/[...path]/route.js",
94
95
  "/api/worktrees/[id]/verify/route": "app/api/worktrees/[id]/verify/route.js",
95
96
  "/api/worktrees/[id]/verify/runs/[runId]/cancel/route": "app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js",
96
97
  "/api/worktrees/[id]/verify/runs/[runId]/route": "app/api/worktrees/[id]/verify/runs/[runId]/route.js",
@@ -102,30 +103,30 @@
102
103
  "/icon2.png/route": "app/icon2.png/route.js",
103
104
  "/manifest.webmanifest/route": "app/manifest.webmanifest/route.js",
104
105
  "/api/agents/versions/route": "app/api/agents/versions/route.js",
105
- "/api/agents/update/route": "app/api/agents/update/route.js",
106
106
  "/api/app/release-notes/route": "app/api/app/release-notes/route.js",
107
+ "/api/agents/update/route": "app/api/agents/update/route.js",
107
108
  "/api/auth/status/route": "app/api/auth/status/route.js",
108
- "/api/app/update/route": "app/api/app/update/route.js",
109
- "/api/app/update-check/route": "app/api/app/update-check/route.js",
110
109
  "/api/capabilities/route": "app/api/capabilities/route.js",
110
+ "/api/app/update-check/route": "app/api/app/update-check/route.js",
111
+ "/api/app/update/route": "app/api/app/update/route.js",
111
112
  "/api/daily-summary/status/route": "app/api/daily-summary/status/route.js",
112
113
  "/api/external-apps/[id]/health/route": "app/api/external-apps/[id]/health/route.js",
113
114
  "/api/external-apps/route": "app/api/external-apps/route.js",
114
- "/api/fs/recent-paths/route": "app/api/fs/recent-paths/route.js",
115
115
  "/api/external-apps/[id]/route": "app/api/external-apps/[id]/route.js",
116
+ "/api/fs/recent-paths/route": "app/api/fs/recent-paths/route.js",
116
117
  "/api/fs/browse/route": "app/api/fs/browse/route.js",
117
118
  "/api/push/escalation/route": "app/api/push/escalation/route.js",
118
119
  "/api/push/vapid/route": "app/api/push/vapid/route.js",
119
120
  "/api/push/subscriptions/route": "app/api/push/subscriptions/route.js",
120
121
  "/api/remote/pair/route": "app/api/remote/pair/route.js",
121
122
  "/api/repositories/validate-path/route": "app/api/repositories/validate-path/route.js",
122
- "/api/settings/default-surface-mode/route": "app/api/settings/default-surface-mode/route.js",
123
123
  "/api/settings/default-agents/route": "app/api/settings/default-agents/route.js",
124
+ "/api/settings/default-surface-mode/route": "app/api/settings/default-surface-mode/route.js",
124
125
  "/api/sidebar/group-order/route": "app/api/sidebar/group-order/route.js",
125
126
  "/api/skills/[id]/route": "app/api/skills/[id]/route.js",
126
127
  "/api/skills/reindex/route": "app/api/skills/reindex/route.js",
127
- "/api/skills/installations/route": "app/api/skills/installations/route.js",
128
128
  "/api/skills/route": "app/api/skills/route.js",
129
+ "/api/skills/installations/route": "app/api/skills/installations/route.js",
129
130
  "/api/skills/operations/route": "app/api/skills/operations/route.js",
130
131
  "/api/worktrees/[id]/logs/route": "app/api/worktrees/[id]/logs/route.js",
131
132
  "/api/worktrees/[id]/logs/[filename]/route": "app/api/worktrees/[id]/logs/[filename]/route.js",
@@ -133,25 +134,25 @@
133
134
  "/api/worktrees/[id]/skills/[skillId]/git-workflow/route": "app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js",
134
135
  "/api/worktrees/[id]/skills/[skillId]/plan/route": "app/api/worktrees/[id]/skills/[skillId]/plan/route.js",
135
136
  "/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route": "app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js",
136
- "/api/worktrees/[id]/skills/[skillId]/install/route": "app/api/worktrees/[id]/skills/[skillId]/install/route.js",
137
- "/api/worktrees/[id]/skills/route": "app/api/worktrees/[id]/skills/route.js",
138
137
  "/api/worktrees/[id]/skills/[skillId]/update-plan/route": "app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js",
139
- "/api/worktrees/[id]/skills/[skillId]/uninstall/route": "app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js",
138
+ "/api/worktrees/[id]/skills/route": "app/api/worktrees/[id]/skills/route.js",
140
139
  "/api/worktrees/apply-default-agents/route": "app/api/worktrees/apply-default-agents/route.js",
140
+ "/api/worktrees/[id]/skills/[skillId]/uninstall/route": "app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js",
141
+ "/api/worktrees/[id]/skills/[skillId]/install/route": "app/api/worktrees/[id]/skills/[skillId]/install/route.js",
142
+ "/api/worktrees/[id]/skills/[skillId]/update/route": "app/api/worktrees/[id]/skills/[skillId]/update/route.js",
141
143
  "/api/worktrees/route": "app/api/worktrees/route.js",
142
144
  "/proxy/[...path]/route": "app/proxy/[...path]/route.js",
143
- "/api/worktrees/[id]/skills/[skillId]/update/route": "app/api/worktrees/[id]/skills/[skillId]/update/route.js",
144
145
  "/login/page": "app/login/page.js",
145
- "/more/page": "app/more/page.js",
146
146
  "/offline/page": "app/offline/page.js",
147
147
  "/page": "app/page.js",
148
+ "/more/page": "app/more/page.js",
149
+ "/skills/[skillId]/page": "app/skills/[skillId]/page.js",
148
150
  "/repositories/page": "app/repositories/page.js",
151
+ "/skills/installed/page": "app/skills/installed/page.js",
149
152
  "/review/page": "app/review/page.js",
150
153
  "/sessions/page": "app/sessions/page.js",
151
- "/skills/[skillId]/page": "app/skills/[skillId]/page.js",
152
- "/skills/installed/page": "app/skills/installed/page.js",
153
154
  "/skills/page": "app/skills/page.js",
154
- "/worktrees/[id]/page": "app/worktrees/[id]/page.js",
155
155
  "/worktrees/[id]/files/[...path]/page": "app/worktrees/[id]/files/[...path]/page.js",
156
+ "/worktrees/[id]/page": "app/worktrees/[id]/page.js",
156
157
  "/worktrees/[id]/terminal/page": "app/worktrees/[id]/terminal/page.js"
157
158
  }
@@ -1 +1 @@
1
- "use strict";exports.id=5048,exports.ids=[5048],exports.modules={1185:(a,b,c)=>{c.d(b,{II:()=>q,_t:()=>m,hN:()=>y,jb:()=>l,kq:()=>u,l6:()=>w,lB:()=>x,oY:()=>z,sJ:()=>j});var d=c(55511),e=c(96210),f=c(93356),g=c(52710),h=c(33095),i=c(36925);let j={MANAGED_UNCHANGED:"SKILL_UNINSTALL_MANAGED_UNCHANGED",LOCAL_MODIFICATION:"SKILL_UNINSTALL_LOCAL_MODIFICATION",RECEIPT_ORPHAN:"SKILL_UNINSTALL_RECEIPT_ORPHAN",UNMANAGED_FILE:"SKILL_UNINSTALL_UNMANAGED_FILE",NOT_A_REGULAR_FILE:"SKILL_UNINSTALL_NOT_A_REGULAR_FILE",NOT_INSTALLED:"SKILL_UNINSTALL_NOT_INSTALLED",RECEIPT_MISSING:"SKILL_UNINSTALL_RECEIPT_MISSING",RECEIPT_UNREADABLE:"SKILL_UNINSTALL_RECEIPT_UNREADABLE",RECEIPT_FOREIGN:"SKILL_UNINSTALL_RECEIPT_FOREIGN",TREE_SCAN_TRUNCATED:"SKILL_UNINSTALL_TREE_SCAN_TRUNCATED"},k={[j.MANAGED_UNCHANGED]:"skills.uninstall.reason.managedUnchanged",[j.LOCAL_MODIFICATION]:"skills.uninstall.reason.localModification",[j.RECEIPT_ORPHAN]:"skills.uninstall.reason.receiptOrphan",[j.UNMANAGED_FILE]:"skills.uninstall.reason.unmanagedFile",[j.NOT_A_REGULAR_FILE]:"skills.uninstall.reason.notARegularFile",[j.NOT_INSTALLED]:"skills.uninstall.reason.notInstalled",[j.RECEIPT_MISSING]:"skills.uninstall.reason.receiptMissing",[j.RECEIPT_UNREADABLE]:"skills.uninstall.reason.receiptUnreadable",[j.RECEIPT_FOREIGN]:"skills.uninstall.reason.receiptForeign",[j.TREE_SCAN_TRUNCATED]:"skills.uninstall.reason.treeScanTruncated"},l={removable:"skills.uninstall.nextAction.removable",blocked:"skills.uninstall.nextAction.blocked",succeeded:"skills.uninstall.nextAction.succeeded",committedReconciling:"skills.uninstall.nextAction.committedReconciling",failed:"skills.uninstall.nextAction.failed"},m={native:"skills.uninstall.reload.native",commandmate_runtime:"skills.uninstall.reload.commandmateRuntime",unsupported:"skills.uninstall.reload.unsupported",unknown:"skills.uninstall.reload.unknown"};function n(a,b){return{code:a,path:b,messageKey:k[a]}}let o={remove:j.MANAGED_UNCHANGED,modified:j.LOCAL_MODIFICATION,missing:j.RECEIPT_ORPHAN,unknown:j.UNMANAGED_FILE},p={remove:"removable",modified:"modified",missing:"missing",unknown:"unknown"};function q(a,b,c={}){let d=(0,h.QL)(c.rootPrefix??e.Co,b),i=c.existing??(0,h.bh)(a),k=(0,h.Hg)(i.files),l={installRoot:d,present:i.present,receipt:null,receiptDigest:null,entries:[],blockers:[],removable:!1,currentTreeHash:k,stats:{removable:0,modified:0,missing:0,unknown:0,irregular:0}};if(!i.present)return{...l,blockers:[n(j.NOT_INSTALLED,d)]};let m=[];i.truncated&&m.push(n(j.TREE_SCAN_TRUNCATED,d));let r=i.files.find(a=>a.path===g.zi),s=r?(0,g.q$)(r.bytes):null;r?null===s?m.push(n(j.RECEIPT_UNREADABLE,`${d}/${g.zi}`)):s.skill_id!==b&&m.push(n(j.RECEIPT_FOREIGN,`${d}/${g.zi}`)):m.push(n(j.RECEIPT_MISSING,`${d}/${g.zi}`));let t=r&&null!==s&&s.skill_id===b?s:null,u=new Map;if(t&&r){for(let a of t.files)u.set(a.path,{sha256:a.sha256,executable:a.executable,size:a.size});u.set(g.zi,{sha256:r.sha256,executable:!1,size:r.size})}let v=new Map(i.files.map(a=>[a.path,a])),w=[],x={removable:0,modified:0,missing:0,unknown:0,irregular:0};for(let a of[...new Set([...u.keys(),...v.keys()])].sort()){let b,c=u.get(a)??null,e=v.get(a)??null,h=o[b=null===c?"unknown":null===e?"missing":(0,f.U2)(e.sha256,c.sha256)&&e.executable===c.executable?"remove":"modified"];w.push({path:`${d}/${a}`,relativePath:a,disposition:b,reason:h,generated:a===g.zi,recordedSha256:c?.sha256??null,currentSha256:e?.sha256??null,size:e?.size??c?.size??null,executable:e?.executable??c?.executable??!1}),x[p[b]]+=1,"remove"!==b&&m.push(n(h,`${d}/${a}`))}for(let a of i.irregularPaths){let b=a?`${d}/${a}`:d;w.push({path:b,relativePath:a,disposition:"irregular",reason:j.NOT_A_REGULAR_FILE,generated:!1,recordedSha256:u.get(a)?.sha256??null,currentSha256:null,size:null,executable:!1}),x.irregular+=1,m.push(n(j.NOT_A_REGULAR_FILE,b))}return{installRoot:d,present:!0,receipt:t,receiptDigest:r?.sha256??null,entries:w.sort((a,b)=>a.path<b.path?-1:+(a.path>b.path)),blockers:m,removable:null!==t&&0===m.length,currentTreeHash:k,stats:x}}let r=(0,i.v)("__skillUninstallPlans",()=>({records:new Map})),s=/^[0-9a-f]{48}$/;function t(a,b){let c=0;for(let d of[...r.records.values()])d.token!==b&&a>=d.expiresAt&&(r.records.delete(d.token),c+=1);return c}function u(a={}){return t(a.now??Date.now())}function v(a,b){if(!s.test(a))throw new g.nf(g.ER.NOT_FOUND);let c=r.records.get(a);if(t(b,a),!c)throw new g.nf(g.ER.NOT_FOUND);let e=Buffer.from(a,"utf-8"),f=Buffer.from(c.token,"utf-8");if(e.length!==f.length||!(0,d.timingSafeEqual)(e,f))throw new g.nf(g.ER.NOT_FOUND);if(b>=c.expiresAt)throw r.records.delete(c.token),new g.nf(g.ER.EXPIRED);if(null!==c.consumedAt)throw new g.nf(g.ER.CONSUMED);return c}function w(a,b={}){return v(a,b.now??Date.now())}function x(a,b,c,d={}){let e=d.now??Date.now(),h=v(a,e),{binding:i}=h;if(i.actor.type!==b.actor.type||i.actor.id!==b.actor.id||i.worktreeId!==b.worktreeId||i.skillId!==b.skillId)throw new g.nf(g.ER.BINDING_MISMATCH);if(!h.dto.removable)throw new g.nf(g.ER.NOT_INSTALLABLE);if(c.branch!==i.branch||c.headCommit!==i.headCommit||c.currentTreeHash!==i.currentTreeHash||null===c.receiptDigest||!(0,f.U2)(c.receiptDigest,i.receiptDigest))throw new g.nf(g.ER.STALE);return h.consumedAt=e,h}function y(a){if(!e.X0.test(a.skillId)||a.skillId.length>e.cj)throw new g.nf(g.ER.TARGET_UNSAFE);let b=a.now??Date.now(),c=q(a.installRootAbs,a.skillId);if(!c.present)throw new g.nf(g.ER.NOT_FOUND);let f=(0,d.randomBytes)(24).toString("hex"),h=b+g.c$,i=c.receipt,j=c.entries.find(a=>a.generated)??null,k={actor:a.actor,operation:"uninstall",worktreeId:a.worktree.id,skillId:a.skillId,version:i?.version??"",receiptDigest:c.receiptDigest??"",branch:a.git.branch,headCommit:a.git.headCommit,currentTreeHash:c.currentTreeHash},n={token:f,expiresAt:new Date(h).toISOString().replace(/\.\d{3}Z$/,"Z"),removable:c.removable,blockers:c.blockers,nextActionKey:c.removable?l.removable:l.blocked,target:{worktreeId:a.worktree.id,worktreeName:a.worktree.name,repositoryName:a.worktree.repositoryName,branch:a.git.branch,headState:a.git.headState,headCommit:a.git.headCommit,workingTreeDirty:a.git.dirty,...a.git.dirtyUnknown?{workingTreeUnknown:!0}:{},installRoot:c.installRoot,currentTreeHash:c.currentTreeHash},skill:{id:a.skillId,version:i?.version??"",source:i?{...i.source}:{repository:"",ref:"",commit:""},artifact:{assetName:i?.artifact.asset_name??"",sha256:i?.artifact.sha256??""},effectiveRisk:i?.effective_risk??"low",agents:(i?.agent_compatibility??[]).map(a=>({agent:a.agent,support:a.support,messageKey:m[a.support]}))},receipt:{path:`${c.installRoot}/${g.zi}`,sha256:c.receiptDigest??"",size:j?.size??0},removals:c.entries.filter(a=>"remove"===a.disposition),retained:c.entries.filter(a=>"remove"!==a.disposition),stats:c.stats},o={token:f,binding:k,bindingHash:(0,d.createHash)("sha256").update(function a(b){if(null===b||"object"!=typeof b)return JSON.stringify(b)??"null";if(Array.isArray(b))return`[${b.map(a).join(",")}]`;let c=Object.entries(b).filter(([,a])=>void 0!==a).sort(([a],[b])=>a<b?-1:+(a>b));return`{${c.map(([b,c])=>`${JSON.stringify(b)}:${a(c)}`).join(",")}}`}(k)).digest("hex"),createdAt:b,expiresAt:h,consumedAt:null,worktreePath:a.worktree.path,receipt:i??{},assessment:c,dto:n};for(t(b);r.records.size>=g.sK;){let a=[...r.records.values()].sort((a,b)=>a.createdAt-b.createdAt)[0];if(!a)break;r.records.delete(a.token)}return r.records.set(f,o),o}function z(a){let b=a.files.find(a=>a.path===g.zi);return b?null===(0,g.q$)(b.bytes)?null:(0,f.Q_)(b.bytes):null}},3421:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(71237),e=c(55088),f=c(17679);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},95736:(a,b,c)=>{a.exports=c(44870)}};
1
+ "use strict";exports.id=1185,exports.ids=[1185],exports.modules={1185:(a,b,c)=>{c.d(b,{II:()=>q,_t:()=>m,hN:()=>y,jb:()=>l,kq:()=>u,l6:()=>w,lB:()=>x,oY:()=>z,sJ:()=>j});var d=c(55511),e=c(96210),f=c(93356),g=c(52710),h=c(33095),i=c(36925);let j={MANAGED_UNCHANGED:"SKILL_UNINSTALL_MANAGED_UNCHANGED",LOCAL_MODIFICATION:"SKILL_UNINSTALL_LOCAL_MODIFICATION",RECEIPT_ORPHAN:"SKILL_UNINSTALL_RECEIPT_ORPHAN",UNMANAGED_FILE:"SKILL_UNINSTALL_UNMANAGED_FILE",NOT_A_REGULAR_FILE:"SKILL_UNINSTALL_NOT_A_REGULAR_FILE",NOT_INSTALLED:"SKILL_UNINSTALL_NOT_INSTALLED",RECEIPT_MISSING:"SKILL_UNINSTALL_RECEIPT_MISSING",RECEIPT_UNREADABLE:"SKILL_UNINSTALL_RECEIPT_UNREADABLE",RECEIPT_FOREIGN:"SKILL_UNINSTALL_RECEIPT_FOREIGN",TREE_SCAN_TRUNCATED:"SKILL_UNINSTALL_TREE_SCAN_TRUNCATED"},k={[j.MANAGED_UNCHANGED]:"skills.uninstall.reason.managedUnchanged",[j.LOCAL_MODIFICATION]:"skills.uninstall.reason.localModification",[j.RECEIPT_ORPHAN]:"skills.uninstall.reason.receiptOrphan",[j.UNMANAGED_FILE]:"skills.uninstall.reason.unmanagedFile",[j.NOT_A_REGULAR_FILE]:"skills.uninstall.reason.notARegularFile",[j.NOT_INSTALLED]:"skills.uninstall.reason.notInstalled",[j.RECEIPT_MISSING]:"skills.uninstall.reason.receiptMissing",[j.RECEIPT_UNREADABLE]:"skills.uninstall.reason.receiptUnreadable",[j.RECEIPT_FOREIGN]:"skills.uninstall.reason.receiptForeign",[j.TREE_SCAN_TRUNCATED]:"skills.uninstall.reason.treeScanTruncated"},l={removable:"skills.uninstall.nextAction.removable",blocked:"skills.uninstall.nextAction.blocked",succeeded:"skills.uninstall.nextAction.succeeded",committedReconciling:"skills.uninstall.nextAction.committedReconciling",failed:"skills.uninstall.nextAction.failed"},m={native:"skills.uninstall.reload.native",commandmate_runtime:"skills.uninstall.reload.commandmateRuntime",unsupported:"skills.uninstall.reload.unsupported",unknown:"skills.uninstall.reload.unknown"};function n(a,b){return{code:a,path:b,messageKey:k[a]}}let o={remove:j.MANAGED_UNCHANGED,modified:j.LOCAL_MODIFICATION,missing:j.RECEIPT_ORPHAN,unknown:j.UNMANAGED_FILE},p={remove:"removable",modified:"modified",missing:"missing",unknown:"unknown"};function q(a,b,c={}){let d=(0,h.QL)(c.rootPrefix??e.Co,b),i=c.existing??(0,h.bh)(a),k=(0,h.Hg)(i.files),l={installRoot:d,present:i.present,receipt:null,receiptDigest:null,entries:[],blockers:[],removable:!1,currentTreeHash:k,stats:{removable:0,modified:0,missing:0,unknown:0,irregular:0}};if(!i.present)return{...l,blockers:[n(j.NOT_INSTALLED,d)]};let m=[];i.truncated&&m.push(n(j.TREE_SCAN_TRUNCATED,d));let r=i.files.find(a=>a.path===g.zi),s=r?(0,g.q$)(r.bytes):null;r?null===s?m.push(n(j.RECEIPT_UNREADABLE,`${d}/${g.zi}`)):s.skill_id!==b&&m.push(n(j.RECEIPT_FOREIGN,`${d}/${g.zi}`)):m.push(n(j.RECEIPT_MISSING,`${d}/${g.zi}`));let t=r&&null!==s&&s.skill_id===b?s:null,u=new Map;if(t&&r){for(let a of t.files)u.set(a.path,{sha256:a.sha256,executable:a.executable,size:a.size});u.set(g.zi,{sha256:r.sha256,executable:!1,size:r.size})}let v=new Map(i.files.map(a=>[a.path,a])),w=[],x={removable:0,modified:0,missing:0,unknown:0,irregular:0};for(let a of[...new Set([...u.keys(),...v.keys()])].sort()){let b,c=u.get(a)??null,e=v.get(a)??null,h=o[b=null===c?"unknown":null===e?"missing":(0,f.U2)(e.sha256,c.sha256)&&e.executable===c.executable?"remove":"modified"];w.push({path:`${d}/${a}`,relativePath:a,disposition:b,reason:h,generated:a===g.zi,recordedSha256:c?.sha256??null,currentSha256:e?.sha256??null,size:e?.size??c?.size??null,executable:e?.executable??c?.executable??!1}),x[p[b]]+=1,"remove"!==b&&m.push(n(h,`${d}/${a}`))}for(let a of i.irregularPaths){let b=a?`${d}/${a}`:d;w.push({path:b,relativePath:a,disposition:"irregular",reason:j.NOT_A_REGULAR_FILE,generated:!1,recordedSha256:u.get(a)?.sha256??null,currentSha256:null,size:null,executable:!1}),x.irregular+=1,m.push(n(j.NOT_A_REGULAR_FILE,b))}return{installRoot:d,present:!0,receipt:t,receiptDigest:r?.sha256??null,entries:w.sort((a,b)=>a.path<b.path?-1:+(a.path>b.path)),blockers:m,removable:null!==t&&0===m.length,currentTreeHash:k,stats:x}}let r=(0,i.v)("__skillUninstallPlans",()=>({records:new Map})),s=/^[0-9a-f]{48}$/;function t(a,b){let c=0;for(let d of[...r.records.values()])d.token!==b&&a>=d.expiresAt&&(r.records.delete(d.token),c+=1);return c}function u(a={}){return t(a.now??Date.now())}function v(a,b){if(!s.test(a))throw new g.nf(g.ER.NOT_FOUND);let c=r.records.get(a);if(t(b,a),!c)throw new g.nf(g.ER.NOT_FOUND);let e=Buffer.from(a,"utf-8"),f=Buffer.from(c.token,"utf-8");if(e.length!==f.length||!(0,d.timingSafeEqual)(e,f))throw new g.nf(g.ER.NOT_FOUND);if(b>=c.expiresAt)throw r.records.delete(c.token),new g.nf(g.ER.EXPIRED);if(null!==c.consumedAt)throw new g.nf(g.ER.CONSUMED);return c}function w(a,b={}){return v(a,b.now??Date.now())}function x(a,b,c,d={}){let e=d.now??Date.now(),h=v(a,e),{binding:i}=h;if(i.actor.type!==b.actor.type||i.actor.id!==b.actor.id||i.worktreeId!==b.worktreeId||i.skillId!==b.skillId)throw new g.nf(g.ER.BINDING_MISMATCH);if(!h.dto.removable)throw new g.nf(g.ER.NOT_INSTALLABLE);if(c.branch!==i.branch||c.headCommit!==i.headCommit||c.currentTreeHash!==i.currentTreeHash||null===c.receiptDigest||!(0,f.U2)(c.receiptDigest,i.receiptDigest))throw new g.nf(g.ER.STALE);return h.consumedAt=e,h}function y(a){if(!e.X0.test(a.skillId)||a.skillId.length>e.cj)throw new g.nf(g.ER.TARGET_UNSAFE);let b=a.now??Date.now(),c=q(a.installRootAbs,a.skillId);if(!c.present)throw new g.nf(g.ER.NOT_FOUND);let f=(0,d.randomBytes)(24).toString("hex"),h=b+g.c$,i=c.receipt,j=c.entries.find(a=>a.generated)??null,k={actor:a.actor,operation:"uninstall",worktreeId:a.worktree.id,skillId:a.skillId,version:i?.version??"",receiptDigest:c.receiptDigest??"",branch:a.git.branch,headCommit:a.git.headCommit,currentTreeHash:c.currentTreeHash},n={token:f,expiresAt:new Date(h).toISOString().replace(/\.\d{3}Z$/,"Z"),removable:c.removable,blockers:c.blockers,nextActionKey:c.removable?l.removable:l.blocked,target:{worktreeId:a.worktree.id,worktreeName:a.worktree.name,repositoryName:a.worktree.repositoryName,branch:a.git.branch,headState:a.git.headState,headCommit:a.git.headCommit,workingTreeDirty:a.git.dirty,...a.git.dirtyUnknown?{workingTreeUnknown:!0}:{},installRoot:c.installRoot,currentTreeHash:c.currentTreeHash},skill:{id:a.skillId,version:i?.version??"",source:i?{...i.source}:{repository:"",ref:"",commit:""},artifact:{assetName:i?.artifact.asset_name??"",sha256:i?.artifact.sha256??""},effectiveRisk:i?.effective_risk??"low",agents:(i?.agent_compatibility??[]).map(a=>({agent:a.agent,support:a.support,messageKey:m[a.support]}))},receipt:{path:`${c.installRoot}/${g.zi}`,sha256:c.receiptDigest??"",size:j?.size??0},removals:c.entries.filter(a=>"remove"===a.disposition),retained:c.entries.filter(a=>"remove"!==a.disposition),stats:c.stats},o={token:f,binding:k,bindingHash:(0,d.createHash)("sha256").update(function a(b){if(null===b||"object"!=typeof b)return JSON.stringify(b)??"null";if(Array.isArray(b))return`[${b.map(a).join(",")}]`;let c=Object.entries(b).filter(([,a])=>void 0!==a).sort(([a],[b])=>a<b?-1:+(a>b));return`{${c.map(([b,c])=>`${JSON.stringify(b)}:${a(c)}`).join(",")}}`}(k)).digest("hex"),createdAt:b,expiresAt:h,consumedAt:null,worktreePath:a.worktree.path,receipt:i??{},assessment:c,dto:n};for(t(b);r.records.size>=g.sK;){let a=[...r.records.values()].sort((a,b)=>a.createdAt-b.createdAt)[0];if(!a)break;r.records.delete(a.token)}return r.records.set(f,o),o}function z(a){let b=a.files.find(a=>a.path===g.zi);return b?null===(0,g.q$)(b.bytes)?null:(0,f.Q_)(b.bytes):null}}};
@@ -1 +1 @@
1
- "use strict";exports.id=1210,exports.ids=[1210,2839,5220],exports.modules={39687:(a,b,c)=>{c.d(b,{d:()=>t});var d=c(56791),e=c(8360),f=c(15194),g=c(95220),h=c(12462),i=c(43015),j=c(54325),k=c(72626),l=c(34331),m=c(40964),n=c(58707),o=c(2669),p=c(49319);let q=(0,k.h)("session/send-user-message");function r(a){return a instanceof Error?a.message:String(a)}async function s(a,b){let c=`${a}:${b}`,d=Date.now()+5e3;for(;(0,g.getActivePollers)().includes(c);){if(Date.now()>=d)return!1;await new Promise(a=>setTimeout(a,100))}return!0}async function t(a,b){let{worktreeId:c,content:k,cliToolId:t,instanceId:u,absoluteImagePath:v,copilotModel:w}=b,x=b.messageType??"normal",y=u??t,z=e.CLIToolManager.getInstance().getTool(t),A=(0,m.mf)(t,c,u),B=await (0,l.L)(c,A,a);if(null===B||"foreign"===B.verdict)return q.warn("send-refused-foreign-session",{worktreeId:c,cliToolId:t,instanceId:y,sessionName:A,sessionPath:B?.sessionPath??null,reason:B?"foreign":"worktree_not_found"}),{ok:!1,stage:"foreign_session",error:B?`tmux session "${A}" belongs to another CommandMate server`:`Worktree '${c}' not found; cannot confirm tmux session "${A}" is this server's`};let C=await (0,n.a3)(c,t,u,{ignoreStructured:b.ignoreStructuredPromptGuard});if(C.waiting)return q.info("send-refused-prompt-waiting",{worktreeId:c,cliToolId:t,reason:C.reason,blockedBy:C.blockedBy}),{ok:!1,stage:"prompt_waiting",error:(0,n.br)(c,C.blockedBy)};if(w&&"copilot"===t){try{await z.sendModelCommand(c,w,u),q.info("copilot-model-command-sent",{model:w})}catch(a){return q.error("failed-to-send-model-command:",{error:r(a)}),{ok:!1,stage:"model",error:r(a)}}await s(c,y)||q.warn("previous-turn-poller-still-running",{worktreeId:c,instanceId:y,waitedMs:5e3})}let D=new Date;try{await (0,h.o4)(a,c,t,D,u)}catch(a){q.error("failed-to-save-pending-assistant-response:",{error:r(a)})}let E=null;try{let b=(0,d.getMessages)(a,c,{limit:1,cliToolId:t,instanceId:y,matchResolvedInstance:!0});b.length>0&&"user"===b[0].role&&b[0].content===k&&(E=b[0].id)}catch(a){q.error("failed-to-detect-orphaned-messages:",{error:r(a)})}try{v?(0,f._J)(z)?await z.sendMessageWithImage(c,k,v,u):await z.sendMessage(c,(0,p.TZ)(k,v),u):await z.sendMessage(c,k,u)}catch(a){if(q.error("failed-to-send-message-to:",{error:r(a)}),(0,o.wQ)(a))return{ok:!1,stage:"send",error:a.message,code:o.M7};return{ok:!1,stage:"send",error:r(a)}}let F=(0,d.createMessage)(a,{worktreeId:c,role:"user",content:k,messageType:x,timestamp:D,cliToolId:t,instanceId:u,requestId:b.requestId});try{(0,i.broadcastMessage)("message",{worktreeId:c,message:{...F,cliToolId:t,instanceId:y}})}catch(a){q.warn("user-message-broadcast-failed",{error:r(a)})}if(E)try{if((0,d.deleteMessageById)(a,E)){q.info("cleaned-up-orphaned-user");try{(0,i.broadcastMessage)(j.dz,{worktreeId:c,cliToolId:t,instanceId:y,reason:"orphan_cleanup"})}catch(a){q.warn("orphan-cleanup-broadcast-failed",{error:r(a)})}}}catch(a){q.error("failed-to-clean-up-orphaned-message:",{error:r(a)})}return(0,d.updateLastUserMessage)(a,c,k,D),(0,d.clearInProgressMessageId)(a,c,t,u),q.info("cleared-in-progress-message"),(0,g.startPolling)(c,t,u),{ok:!0,message:F}}},71210:(a,b,c)=>{c.d(b,{notifyRelayPromptWaiting:()=>J,notifyRelayTurnCompleted:()=>I,runRelayMaintenanceTick:()=>M});var d=c(88807),e=c(90787),f=c(52660),g=c(81254),h=c(55233),i=c(39687),j=c(640),k=c(23854),l=c(8360),m=c(40964),n=c(34331),o=c(31990),p=c(95595),q=c(64501),r=c(34405),s=c(72626);let t=(0,s.h)("relay-readiness");async function u(a,b,c,d){try{let e=(0,m.mf)(b,a,c),f=await (0,n.L)(a,e,d);if(null===f||"foreign"===f.verdict)return"foreign_session";if("absent"===f.verdict)return"session_stopped";let g=l.CLIToolManager.getInstance().getTool(b);if(!await g.isRunning(a,c))return"session_stopped";let h=await (0,o.Wh)(a,b,r._,c);if((0,q.NV)(a,b,c,h))return"generating";let i=(0,p.WC)(h,b);return"running"===i.status?"generating":null}catch(d){return t.warn("relay-readiness-check-failed",{worktreeId:a,cliToolId:b,instanceId:c,error:d instanceof Error?d.message:String(d)}),null}}var v=c(49798),w=c(67164),x=c(36925);let y=(0,s.h)("relay-delivery"),z=/-turn:/,A=[f.RELAY_SYSTEM_REQUEST_ID_PREFIX,f.MODEL_CHANGE_REQUEST_ID_PREFIX],B={claude:!0,codex:!0,antigravity:!0,"command-code":!0,opencode:!0,copilot:!1,gemini:!1,"vibe-local":!1,"opencode-v2":!0},C=(0,x.v)("__relayDeliveryInFlight",()=>new Set);function D(a,b){let c=(0,v.S)(a,b.to);return{alias:c.alias,worktreeId:c.worktreeId}}function E(a,b,c){let d=(0,f.getMessages)(a,b.worktreeId,{limit:40,cliToolId:b.cliToolId,instanceId:b.instanceId,matchResolvedInstance:!0}),e=!0===B[b.cliToolId];for(let a of d){var g;if(!("assistant"!==a.role||"prompt"===a.messageType||function(a){return"string"==typeof a&&A.some(b=>a.startsWith(b))}(a.requestId))){if((!e||"string"==typeof(g=a.requestId)&&z.test(g))&&""!==a.content.trim())return a.timestamp.getTime()<c?null:a}}return null}function F(a,b,c){let d=(0,e.ix)(a,{worktreeId:b.worktreeId,instanceId:b.instanceId});if(0===d.length)return 0;let f=0;for(let g of d){let d=E(a,b,g.createdAt);if(!d)continue;let h=(0,j.z0)(D(a,g),d.content);(0,e.be)(a,g.id,"reply",h,c)&&(f+=1)}return f}function G(a){return new Promise(b=>{setTimeout(b,a)})}async function H(a,b){let c=Date.now()+15e3;for(;;){if(F(a,b,Date.now())>0)return void L();if(Date.now()>=c)break;await G(1e3)}y.info("relay-scrape-row-not-transcript-backed",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,graceMs:15e3})}async function I(a,b){try{var c;let f=(0,d.getDbInstance)(),g=(0,e.ix)(f,{worktreeId:a.worktreeId,instanceId:a.instanceId});if(0===g.length)return;if(b.settled){F(f,a,Date.now())>0&&L();return}if(c=a.cliToolId,!0===B[c])return void await H(f,a);let h=null;for(let b=0;b<3;b+=1){let b=E(f,a,0);h=b?.id??null,await G(k.DZ);let c=E(f,a,0);if((c?.id??null)===h){F(f,a,Date.now())>0&&L();return}}y.info("relay-scrape-never-settled",{worktreeId:a.worktreeId,instanceId:a.instanceId,attempts:3})}catch(b){y.warn("relay-turn-completed-failed",{worktreeId:a.worktreeId,instanceId:a.instanceId,error:b instanceof Error?b.message:String(b)})}}function J(a){try{let b=(0,d.getDbInstance)(),c=(0,e.ix)(b,{worktreeId:a.worktreeId,instanceId:a.instanceId});if(0===c.length)return;let i=(0,f.getLatestOpenPromptMessage)(b,a.worktreeId,a.cliToolId,a.instanceId);if(!i)return;let k=(0,h.dV)(b),l=function(a){let b=a.promptData;return(0,g.XF)(b)?"yes_no"===b.type?b.options.map(a=>({key:a,label:a})):b.options.map(a=>({key:String(a.number),label:a.label})):[]}(i),m=(0,g.XF)(i.promptData)?i.promptData.question:i.promptData?.question??i.content,n=0;for(let a of c){if((0,e.GC)(b,a.id)===i.id)continue;let c=(0,j.Hr)(k,D(b,a),{question:m,options:l});(0,e.be)(b,a.id,"prompt",c)&&((0,e.UC)(b,a.id,i.id),n+=1)}n>0&&L()}catch(b){y.warn("relay-prompt-notify-failed",{worktreeId:a.worktreeId,instanceId:a.instanceId,error:b instanceof Error?b.message:String(b)})}}async function K(a,b,c,d){let g=(0,e.Ip)(a,b);if(!g)return"skipped";let h=(0,v.S)(a,g.from),j=await u(h.worktreeId,h.cliToolId,h.instanceId,a);if(j)return y.debug("relay-delivery-held",{relayId:b,kind:c,reason:j}),"held";let k=await (0,i.d)(a,{worktreeId:h.worktreeId,content:d,cliToolId:h.cliToolId,instanceId:h.instanceId,messageType:"relay",requestId:"reply"===c?(0,f.relayRequestId)(g.id):void 0});if(!k.ok)return y.info("relay-delivery-refused",{relayId:b,kind:c,stage:k.stage}),"prompt_waiting"===k.stage?"held":"failed";let l=Date.now();return"reply"===c?((0,e.Bf)(a,g.id,(0,f.relayRequestId)(g.id),l)||y.info("relay-already-closed-on-deliver",{relayId:b}),(0,w._)(a,g.id,"replied",h,(0,v.S)(a,g.to),l)):"prompt"===c&&(0,w._)(a,g.id,"waiting",h,(0,v.S)(a,g.to),l),(0,e.uJ)(a,g.id,l),y.info("relay-delivered",{relayId:b,kind:c,to:`${h.worktreeId}/${h.instanceId}`}),"delivered"}async function L(){if(!globalThis.__relayPumpRunning){globalThis.__relayPumpRunning=!0;try{let a=(0,d.getDbInstance)();for(let b of(0,e.uG)(a))if(!C.has(b.relay.id)){C.add(b.relay.id);try{await K(a,b.relay.id,b.kind,b.body)}catch(a){y.warn("relay-delivery-failed",{relayId:b.relay.id,error:a instanceof Error?a.message:String(a)})}finally{C.delete(b.relay.id)}}}catch(a){y.warn("relay-pump-failed",{error:a instanceof Error?a.message:String(a)})}finally{globalThis.__relayPumpRunning=!1}}}async function M(){try{!function(a,b=Date.now()){for(let c of(0,e.s7)(a,b))try{let d=(0,h.dV)(a);(0,e.uJ)(a,c.id,b);let f=(0,j.KA)(d,D(a,c),c.expiresAt-c.createdAt),g=(0,e.be)(a,c.id,"expired",f,b);if(!(0,e.Cz)(a,c.id,b)){g&&(0,e.uJ)(a,c.id,b);continue}(0,w._)(a,c.id,"expired",(0,v.S)(a,c.from),(0,v.S)(a,c.to),b)}catch(a){y.warn("relay-expire-failed",{relayId:c.id,error:a instanceof Error?a.message:String(a)})}}((0,d.getDbInstance)())}catch(a){y.warn("relay-sweep-failed",{error:a instanceof Error?a.message:String(a)})}await L()}},95220:(a,b,c)=>{c.r(b),c.d(b,{accumulateTuiContent:()=>g.IZ,cleanClaudeResponse:()=>f.NN,cleanCopilotResponse:()=>f.LH,cleanGeminiResponse:()=>f.IS,cleanOpenCodeResponse:()=>f.aW,clearPromptHashCache:()=>h.iX,clearTuiAccumulator:()=>g.q1,extractCopilotContentLines:()=>g.o0,extractTuiContentLines:()=>g.K0,findOverlapIndex:()=>g.vQ,getAccumulatedContent:()=>g.Uz,getActivePollers:()=>d.KQ,initTuiAccumulator:()=>g.tb,isDuplicatePrompt:()=>h.gv,isOpenCodeComplete:()=>e.bE,migrateResponsePollerWorktreeIds:()=>d.sR,normalizeCopilotLine:()=>g.IW,normalizePromptForDedup:()=>h.zm,renamePromptHashCacheKey:()=>h.i2,resolveExtractionStartIndex:()=>e.QM,startPolling:()=>d.g8,stopAllPolling:()=>d.fq,stopPolling:()=>d.Et,truncateMessage:()=>f.Sj});var d=c(45146),e=c(60),f=c(82450),g=c(13033),h=c(72457)}};
1
+ "use strict";exports.id=1210,exports.ids=[1210],exports.modules={71210:(a,b,c)=>{c.d(b,{notifyRelayPromptWaiting:()=>L,notifyRelayTurnCompleted:()=>K,runRelayMaintenanceTick:()=>O});var d=c(88807),e=c(64049),f=c(52660),g=c(81254),h=c(55233),i=c(39687),j=c(640),k=c(23854),l=c(8360),m=c(40964),n=c(34331),o=c(31990),p=c(95595),q=c(64501),r=c(34405),s=c(72626);let t=(0,s.h)("relay-readiness");async function u(a,b,c,d){try{let e=(0,m.mf)(b,a,c),f=await (0,n.L)(a,e,d);if(null===f||"foreign"===f.verdict)return"foreign_session";if("absent"===f.verdict)return"session_stopped";let g=l.CLIToolManager.getInstance().getTool(b);if(!await g.isRunning(a,c))return"session_stopped";let h=await (0,o.Wh)(a,b,r._,c);if((0,q.NV)(a,b,c,h))return"generating";let i=(0,p.WC)(h,b);return"running"===i.status?"generating":null}catch(d){return t.warn("relay-readiness-check-failed",{worktreeId:a,cliToolId:b,instanceId:c,error:d instanceof Error?d.message:String(d)}),null}}var v=c(49798),w=c(67164),x=c(85016),y=c(25539),z=c(36925);let A=(0,s.h)("relay-delivery"),B=/-turn:/,C=[f.RELAY_SYSTEM_REQUEST_ID_PREFIX,f.MODEL_CHANGE_REQUEST_ID_PREFIX],D={claude:!0,codex:!0,antigravity:!0,"command-code":!0,opencode:!0,copilot:!1,gemini:!1,"vibe-local":!1,"opencode-v2":!0},E=(0,z.v)("__relayDeliveryInFlight",()=>new Set);function F(a,b){let c=(0,v.S)(a,b.to);return{alias:c.alias,worktreeId:c.worktreeId}}function G(a,b,c){let d=(0,f.getMessages)(a,b.worktreeId,{limit:40,cliToolId:b.cliToolId,instanceId:b.instanceId,matchResolvedInstance:!0}),e=!0===D[b.cliToolId];for(let a of d){var g;if(!("assistant"!==a.role||"prompt"===a.messageType||function(a){return"string"==typeof a&&C.some(b=>a.startsWith(b))}(a.requestId))){if((!e||"string"==typeof(g=a.requestId)&&B.test(g))&&""!==a.content.trim())return a.timestamp.getTime()<c?null:a}}return null}function H(a,b,c){let d=(0,e.ix)(a,{worktreeId:b.worktreeId,instanceId:b.instanceId});if(0===d.length)return 0;let f=0;for(let g of d){let d=G(a,b,g.createdAt);if(!d)continue;let h=(0,j.z0)(F(a,g),d.content);(0,e.be)(a,g.id,"reply",h,c)&&(f+=1)}return f}function I(a){return new Promise(b=>{setTimeout(b,a)})}async function J(a,b){let c=Date.now()+15e3;for(;;){if(H(a,b,Date.now())>0)return void N();if(Date.now()>=c)break;await I(1e3)}A.info("relay-scrape-row-not-transcript-backed",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,graceMs:15e3})}async function K(a,b){try{var c;let f=(0,d.getDbInstance)(),g=(0,e.ix)(f,{worktreeId:a.worktreeId,instanceId:a.instanceId});if(0===g.length)return;if(b.settled){H(f,a,Date.now())>0&&N();return}if(c=a.cliToolId,!0===D[c])return void await J(f,a);let h=null;for(let b=0;b<3;b+=1){let b=G(f,a,0);h=b?.id??null,await I(k.DZ);let c=G(f,a,0);if((c?.id??null)===h){H(f,a,Date.now())>0&&N();return}}A.info("relay-scrape-never-settled",{worktreeId:a.worktreeId,instanceId:a.instanceId,attempts:3})}catch(b){A.warn("relay-turn-completed-failed",{worktreeId:a.worktreeId,instanceId:a.instanceId,error:b instanceof Error?b.message:String(b)})}}function L(a){try{let b=(0,d.getDbInstance)(),c=(0,e.ix)(b,{worktreeId:a.worktreeId,instanceId:a.instanceId});if(0===c.length)return;let i=(0,f.getLatestOpenPromptMessage)(b,a.worktreeId,a.cliToolId,a.instanceId);if(!i)return;let k=(0,h.dV)(b),l=function(a){let b=a.promptData;return(0,g.XF)(b)?"yes_no"===b.type?b.options.map(a=>({key:a,label:a})):b.options.map(a=>({key:String(a.number),label:a.label})):[]}(i),m=(0,g.XF)(i.promptData)?i.promptData.question:i.promptData?.question??i.content,n=0;for(let a of c){if((0,e.GC)(b,a.id)===i.id)continue;let c=(0,j.Hr)(k,F(b,a),{question:m,options:l});(0,e.be)(b,a.id,"prompt",c)&&((0,e.UC)(b,a.id,i.id),n+=1)}n>0&&N()}catch(b){A.warn("relay-prompt-notify-failed",{worktreeId:a.worktreeId,instanceId:a.instanceId,error:b instanceof Error?b.message:String(b)})}}async function M(a,b,c,d){var g,h;let j=(0,e.Ip)(a,b);if(!j)return"skipped";let k=(0,v.S)(a,j.from),l=await u(k.worktreeId,k.cliToolId,k.instanceId,a);if(l)return A.debug("relay-delivery-held",{relayId:b,kind:c,reason:l}),"held";let m=(g=a,h=b,(0,e.uG)(g).find(a=>a.relay.id===h)??null);if(!m||m.kind!==c||m.body!==d)return A.info("relay-delivery-superseded",{relayId:b,kind:c}),"skipped";if("expired"!==c&&!(0,y.Lo)(m.relay.state))return A.info("relay-delivery-closed",{relayId:b,kind:c,state:m.relay.state}),"skipped";let n=m.relay,o=(0,v.S)(a,n.from);(0,x.o5)(b);try{let g=await (0,i.d)(a,{worktreeId:o.worktreeId,content:d,cliToolId:o.cliToolId,instanceId:o.instanceId,messageType:"relay",requestId:"reply"===c?(0,f.relayRequestId)(n.id):void 0});if(!g.ok)return A.info("relay-delivery-refused",{relayId:b,kind:c,stage:g.stage}),"prompt_waiting"===g.stage?"held":"failed";let h=Date.now();return"reply"===c?((0,e.Bf)(a,n.id,(0,f.relayRequestId)(n.id),h)||A.info("relay-already-closed-on-deliver",{relayId:b}),(0,w._)(a,n.id,"replied",o,(0,v.S)(a,n.to),h)):"prompt"===c&&(0,w._)(a,n.id,"waiting",o,(0,v.S)(a,n.to),h),(0,e.uJ)(a,n.id,h),A.info("relay-delivered",{relayId:b,kind:c,to:`${o.worktreeId}/${o.instanceId}`}),"delivered"}finally{(0,x.dJ)(b)}}async function N(){if(!globalThis.__relayPumpRunning){globalThis.__relayPumpRunning=!0;try{let a=(0,d.getDbInstance)();for(let b of(0,e.uG)(a))if(!E.has(b.relay.id)){E.add(b.relay.id);try{await M(a,b.relay.id,b.kind,b.body)}catch(a){A.warn("relay-delivery-failed",{relayId:b.relay.id,error:a instanceof Error?a.message:String(a)})}finally{E.delete(b.relay.id)}}}catch(a){A.warn("relay-pump-failed",{error:a instanceof Error?a.message:String(a)})}finally{globalThis.__relayPumpRunning=!1}}}async function O(){try{!function(a,b=Date.now()){for(let c of(0,e.s7)(a,b))if(!(0,x.p5)(c.id))try{let d=(0,h.dV)(a);(0,e.uJ)(a,c.id,b);let f=(0,j.KA)(d,F(a,c),c.expiresAt-c.createdAt),g=(0,e.be)(a,c.id,"expired",f,b);if(!(0,e.Cz)(a,c.id,b)){g&&(0,e.uJ)(a,c.id,b);continue}(0,w._)(a,c.id,"expired",(0,v.S)(a,c.from),(0,v.S)(a,c.to),b)}catch(a){A.warn("relay-expire-failed",{relayId:c.id,error:a instanceof Error?a.message:String(a)})}}((0,d.getDbInstance)())}catch(a){A.warn("relay-sweep-failed",{error:a instanceof Error?a.message:String(a)})}await N()}}};
@@ -1,2 +1,2 @@
1
- "use strict";exports.id=1559,exports.ids=[1559],exports.modules={24581:(a,b,c)=>{c.d(b,{Cb:()=>f,Mu:()=>g,RY:()=>j,Tt:()=>i,Ui:()=>q,Xq:()=>m,ZV:()=>t,h_:()=>h,jF:()=>r,kT:()=>p,nY:()=>l,qX:()=>s,wt:()=>o});var d=c(62887),e=c(27870);let f=new Set(["user_prompt_submit","pre_tool_use","post_tool_use"]),g=18e5,h={predicted:2e4,confirmed:18e5},i=3,j=16,k={turnId:null,openedAt:null,closedAt:null,closedBy:null};function l(a){return null===a?k:{turnId:a.turnId,openedAt:a.openedAt,closedAt:a.closedAt,closedBy:a.closedBy}}function m(a){if("string"!=typeof a||0===a.length||a.length>128)return null;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c)return null}return a}function n(a,b){return"string"!=typeof a||""===a?null:a.slice(0,b)}function o(a){return n(a,e.lY)}function p(a){return n(a,d.h9)}function q(a){if(!Array.isArray(a))return null;let b=[];for(let c of a)if("string"==typeof c&&""!==c&&(b.push(c.slice(0,200)),b.length>=8))break;return b.length>0?b:null}function r(a,b){let c=null===a.confirmedAt?h.predicted:h.confirmed;return b-a.at<c}function s(a,b,c){return null!==b&&c-a.at>=1e3*b}function t(a,b){return null===a.sessionId||null===b||a.sessionId===b}},26547:(a,b,c)=>{c.d(b,{Yz:()=>L,jw:()=>J});var d=c(51297),e=c(61789);let f=["minimal","low","medium","high","xhigh","max","ultra","persistent"];function g(){return{model:null,effort:null}}let h=/^[A-Za-z0-9][A-Za-z0-9._:@/-]*$/,i=/^[A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*$/;function j(a){return a.length>0&&a.length<=64&&h.test(a)}function k(a){return a.length>0&&a.length<=64&&i.test(a)}function l(a,b={}){let c=a.trim().toLowerCase();if(""===c)return null;if(f.includes(c))return c;if(!b.allowTruncated||c.length<2)return null;let d=f.filter(a=>a.length===c.length+1&&a.startsWith(c));return 1===d.length?d[0]:null}let m=/^\s*([^\s·]+)(?:\s+(minimal|low|medium|high|xhigh|max|ultra|persistent)\b)?/i,n=/^\s*[^\s·]+\s+[A-Za-z][A-Za-z_-]*(?=\s|$)/,o=/^\s*\S[^·]*·\s*~?\/\S*(?:\s*·[^\n]*|[^\S\n]{2,}\S[^\n]*)$/;function p(a){if(!e.aW.test(a)&&!o.test(a))return null;let b=a.indexOf("\xb7");if(b<0)return null;let c=a.slice(0,b),d=m.exec(c);if(!d)return null;let f=d[1];if(!j(f))return null;let g=d[2]?l(d[2]):null;return null!==g||/\d/.test(f)?null===g&&n.test(c)?{model:f,effort:null,effortUnreadable:!0}:{model:f,effort:g}:null}let q=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+with\s+(minimal|low|medium|high|xhigh)\s+effort\b/i,r=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F·]*?)\s+·\s+Claude\s+[A-Za-z]+\b/,s=/^\s*\S\s+([A-Za-z]+)\s+·\s+\/effort\s*$/;function t(a){let b=q.exec(a);if(b){let a=b[1].trim();return k(a)?{model:a,effort:l(b[2])}:null}let c=r.exec(a);if(!c)return null;let d=c[1].trim();return/\swith\s/i.test(d)||!k(d)?null:{model:d,effort:null}}function u(a){let b=s.exec(a);if(!b)return null;let c=l(b[1]);return null===c?null:{model:null,effort:c}}let v=/^\s*⎿\s+(?:Set model to|Kept model as)\s+(?!(?:and saved as your default|for this session only)\b)([A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*?)(?:\s+(?:and saved as your default for new sessions|for this session only))?(?:\s+with\s+([A-Za-z]+)\s+effort\b[^·]*)?\s*(?:·.*)?$/;function w(a){let b=v.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let x=/^\s*(?:\?\s+for\s+shortcuts|esc\s+to\s+cancel)\b/i,y=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+\((minimal|low|medium|high|xhigh)\)\s*$/i;function z(a){if(!x.test(a))return null;let b=a.lastIndexOf("\xb7");if(b<0)return null;let c=l(a.slice(b+1),{allowTruncated:!0});if(!c)return null;let d=a.slice(0,b).trimEnd().split(/\s{2,}/),e=(d[d.length-1]??"").trim();return{model:k(e)?e:null,effort:c}}function A(a){let b=y.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:l(b[2])}:null}let B=/^\s*[●◉◎○]\s+Model\s+changed\s+from\s+\S+(?:\s+\([^)]*\))?\s+to\s+(\S+)(?:\s+\((minimal|low|medium|high|xhigh)\))?\s+for\s+this\s+session\b/i;function C(a){let b=B.exec(a);if(!b)return null;let c=b[1];return j(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let D=/^\s*▣\s+[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)(?:\s+·\s+[\d.]+\s?m?s)?\s*$/,E=/^\s*[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)\s+·\s+[\d.]+\s?m?s\s*$/,F=/^\s*[┃╹]/,G=/^\s*#\s+models:\s*([^·]+?)(?:\s+with\s+([A-Za-z]+)\s+effort)?\s*(?:·|$)/i;function H(a){let b=G.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}function I(a,b){let c=a.split("\n");for(let a=c.length-1;a>=0;a--){let e=b((0,d.aJ)(c[a]));if(e)return e}return null}function J(a,b){if(!b)return g();switch(a){case"codex":return I(b,p)??g();case"claude":return function(a){let b=I(a,t);if(!b||null!==b.effort)return b;let c=I(a,u);return c?{model:b.model,effort:c.effort}:b}(b)??I(b,w)??g();case"antigravity":return I(b,z)??I(b,A)??g();case"copilot":{let a=function(a){let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c=(0,d.aJ)(b[a]);if(""!==c.trim()){if(!e.Ub.test(c)&&!e.tJ.test(c))return null;let a=c.trim().split(/\s{2,}/);if(a.length<2)return null;let b=a[a.length-1].split("\xb7").map(a=>a.trim());if(b.length>2)return null;let d=b[0];if(!k(d))return null;if(1===b.length)return{model:d,effort:null};let f=l(b[1]);return null===f?null:{model:d,effort:f}}}return null}(b),c=I(b,C);if(!a)return c??g();if(null!==a.effort||null===c||null===c.effort)return a;return!function(a,b){let c=a=>a.toLowerCase().replace(/[^a-z0-9]/g,"");return c(a)===c(b)}(a.model,c.model)?a:{model:a.model,effort:c.effort}}case"opencode":case"opencode-v2":return function(a){let b=a.split("\n").map(a=>(0,d.aJ)(a));for(let a=b.length-1;a>=0;a--){let c=function(a){let b=D.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:null}:null}(b[a])??function(a,b){let c=E.exec(a[b]);if(!c)return null;let d=c[1].trim();if(!k(d))return null;for(let c=b+1;c<a.length;c++)if(""!==a[c].trim())return F.test(a[c])?{model:d,effort:null}:null;return null}(b,a);if(c)return c}return null}(b)??g();case"command-code":return I(b,H)??g();default:return g()}}let K=/-(low|medium|high)$/i;function L(a,b,c,d){let e=(b||null)??c?.model??null,f=c?.effort??null,g="antigravity"===a?function(a){if(!a)return null;let b=K.exec(a);return b?b[1].toLowerCase():null}(e)??f:f;return{model:e,effort:(d||null)??g}}},27675:(a,b,c)=>{c.d(b,{GR:()=>g,MR:()=>m,NR:()=>o,Wl:()=>i,YN:()=>l,cr:()=>r,eZ:()=>q,gq:()=>j,li:()=>k,vR:()=>n});var d=c(85726),e=c(24455),f=c(36925);function g(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.number}.${a.label}`):a.options;return[(0,d.J)(a),...b].join("\0")}let h=(0,f.v)("__autoYesEnterFallbacks",()=>new Map);function i(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),j=r(g),{epoch:k=j,...l}=d;return k===j&&(h.set(g,{outcome:"sent",...l,sentAt:f,at:f,epoch:k}),!0)}function j(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),i=h.get(g);i&&i.screenKey===d&&h.set(g,{...i,outcome:"no-effect",at:f})}function k(a,b,c){let d=(0,e.v7)(a,b,c),f=h.get(d);return f&&f.epoch===r(d)?f:null}function l(a,b){return null===a?null:{outcome:a.outcome,promptType:a.promptType,refusalReason:a.refusalReason,sentAt:a.sentAt,at:a.at,currentPrompt:null!=b&&g(b)===a.screenKey}}function m(a){h.delete(a)}function n(a){for(let b of(0,e._9)([...h.keys()],a))h.delete(b)}function o(){h.clear()}let p=(0,f.v)("__autoYesEnterFallbackEpochs",()=>new Map);function q(a,b,c){let d=(0,e.v7)(a,b,c);h.delete(d),p.set(d,(p.get(d)??0)+1)}function r(a){return p.get(a)??0}},27870:(a,b,c)=>{c.d(b,{lY:()=>h,QB:()=>e,Yo:()=>m,fO:()=>n,LF:()=>j,PP:()=>i,T5:()=>g});var d=c(81254);let e=[{number:1,label:"Allow once",reply:"once"},{number:2,label:"Allow always",reply:"always"},{number:3,label:"Reject",reply:"reject"}],f={"opencode-v2":{once:"Allow once",always:"Always allow",reject:"Reject"}};function g(a){let b=f[a];return b?e.map(a=>b[a.reply]?{...a,label:b[a.reply]}:a):e}let h=500;function i(a){return"string"==typeof a&&""!==a}function j(a,b){return"permission-id"===a&&b.some(a=>i(a.id)&&!a.deliveryExpired)}let k={notification:"Notification(permission_prompt)","permission-request":"PermissionRequest (no decision)"};function l(a,b){let c=[`A dialog is open in ${a}: the agent reported it via ${k[b.source]}${b.toolName?` for ${b.toolName}`:""}, but the detection layer published no options for it.`];if(b.decisionOptions&&b.decisionOptions.length>0?c.push(`Answer it with \`commandmate respond ${a} <number>\`: `+b.decisionOptions.map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+". The reply goes to the agent's own API, so no keys are sent to the terminal "+`and the label works too (\`respond ${a} "Allow once"\`).`):c.push(`Answer it in the terminal, or send the option NUMBER with \`commandmate respond ${a} <number>\` — yes/no is not resolved on a numbered dialog (Issue #1681).`),b.message&&c.push(`Agent message: "${b.message}"`),b.askUserQuestion){let{question:d,labels:e,questionCount:f}=b.askUserQuestion,g=i(b.decisionId)&&1===f&&!(b.decisionOptions&&b.decisionOptions.length>0);c.push(`The agent asked${f>1?` ${f} questions, the first being`:""}: "${d}" — offering: ${e.join(" / ")}. `+(g?`Answer it with \`commandmate respond ${a} <number>\`: `+e.map((a,b)=>`${b+1} = ${a}`).join(", ")+". The number is this list's own position and the reply goes to the agent's own API, so no keys are sent to the terminal (the label works too).":"The picker renumbers and adds its own entries, so read the option NUMBER off the terminal rather than counting this list."))}return c.join(" ")}function m(a,b){return{type:d.LT,status:"pending",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{},...b.decisionOptions&&b.decisionOptions.length>0?{decisionOptions:b.decisionOptions}:{},decisionId:i(b.decisionId)?b.decisionId:null,...b.patterns&&b.patterns.length>0?{patterns:[...b.patterns]}:{}}}function n(a,b){return{type:d.LT,status:"unclassified",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{}}}},27939:(a,b,c)=>{c.d(b,{F_:()=>t,KA:()=>u,XO:()=>x,Y2:()=>n,jp:()=>m,lr:()=>v,pr:()=>w});var d=c(29021),e=c(21820),f=c(33873),g=c(8004),h=c(24455),i=c(72626),j=c(36925);let k=(0,i.h)("lib/session/opencode-session-store"),l=/^ses[A-Za-z0-9_-]{1,128}$/;function m(a){return"string"==typeof a&&l.test(a)}let n=200,o=(0,j.v)("__opencodeSessionMemories",()=>new Map);function p(a){return(0,h.v7)(a.worktreeId,a.cliToolId,a.instanceId)}function q(){let a=(0,f.join)((0,e.homedir)(),".commandmate","opencode-sessions.json");return(0,g.T)(process.env.CM_OPENCODE_SESSION_FILE,a,"CM_OPENCODE_SESSION_FILE")}function r(){try{let a=JSON.parse((0,d.readFileSync)(q(),"utf8"));if("object"!=typeof a||null===a||Array.isArray(a))return{};let b={};for(let[c,d]of Object.entries(a))!("object"!=typeof d||null===d||Array.isArray(d))&&m(d.sessionId)&&"string"==typeof d.worktreePath&&d.worktreePath.length>0&&(b[c]={sessionId:d.sessionId,title:"string"==typeof d.title?d.title:null,worktreePath:d.worktreePath,updatedAt:"number"==typeof d.updatedAt?d.updatedAt:0});return b}catch{return{}}}function s(a){let b=q();try{(0,d.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,d.writeFileSync)(b,`${JSON.stringify(a,null,2)}
1
+ "use strict";exports.id=1559,exports.ids=[1559],exports.modules={24581:(a,b,c)=>{c.d(b,{Cb:()=>f,Mu:()=>g,RY:()=>j,Tt:()=>i,Ui:()=>q,Xq:()=>m,ZV:()=>t,h_:()=>h,jF:()=>r,kT:()=>p,nY:()=>l,qX:()=>s,wt:()=>o});var d=c(62887),e=c(27870);let f=new Set(["user_prompt_submit","pre_tool_use","post_tool_use"]),g=18e5,h={predicted:2e4,confirmed:18e5},i=3,j=16,k={turnId:null,openedAt:null,closedAt:null,closedBy:null};function l(a){return null===a?k:{turnId:a.turnId,openedAt:a.openedAt,closedAt:a.closedAt,closedBy:a.closedBy}}function m(a){if("string"!=typeof a||0===a.length||a.length>128)return null;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c)return null}return a}function n(a,b){return"string"!=typeof a||""===a?null:a.slice(0,b)}function o(a){return n(a,e.lY)}function p(a){return n(a,d.h9)}function q(a){if(!Array.isArray(a))return null;let b=[];for(let c of a)if("string"==typeof c&&""!==c&&(b.push(c.slice(0,200)),b.length>=8))break;return b.length>0?b:null}function r(a,b){let c=null===a.confirmedAt?h.predicted:h.confirmed;return b-a.at<c}function s(a,b,c){return null!==b&&c-a.at>=1e3*b}function t(a,b){return null===a.sessionId||null===b||a.sessionId===b}},26547:(a,b,c)=>{c.d(b,{Yz:()=>L,jw:()=>J});var d=c(51297),e=c(42422);let f=["minimal","low","medium","high","xhigh","max","ultra","persistent"];function g(){return{model:null,effort:null}}let h=/^[A-Za-z0-9][A-Za-z0-9._:@/-]*$/,i=/^[A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*$/;function j(a){return a.length>0&&a.length<=64&&h.test(a)}function k(a){return a.length>0&&a.length<=64&&i.test(a)}function l(a,b={}){let c=a.trim().toLowerCase();if(""===c)return null;if(f.includes(c))return c;if(!b.allowTruncated||c.length<2)return null;let d=f.filter(a=>a.length===c.length+1&&a.startsWith(c));return 1===d.length?d[0]:null}let m=/^\s*([^\s·]+)(?:\s+(minimal|low|medium|high|xhigh|max|ultra|persistent)\b)?/i,n=/^\s*[^\s·]+\s+[A-Za-z][A-Za-z_-]*(?=\s|$)/,o=/^\s*\S[^·]*·\s*~?\/\S*(?:\s*·[^\n]*|[^\S\n]{2,}\S[^\n]*)$/;function p(a){if(!e.aW.test(a)&&!o.test(a))return null;let b=a.indexOf("\xb7");if(b<0)return null;let c=a.slice(0,b),d=m.exec(c);if(!d)return null;let f=d[1];if(!j(f))return null;let g=d[2]?l(d[2]):null;return null!==g||/\d/.test(f)?null===g&&n.test(c)?{model:f,effort:null,effortUnreadable:!0}:{model:f,effort:g}:null}let q=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+with\s+(minimal|low|medium|high|xhigh)\s+effort\b/i,r=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F·]*?)\s+·\s+Claude\s+[A-Za-z]+\b/,s=/^\s*\S\s+([A-Za-z]+)\s+·\s+\/effort\s*$/;function t(a){let b=q.exec(a);if(b){let a=b[1].trim();return k(a)?{model:a,effort:l(b[2])}:null}let c=r.exec(a);if(!c)return null;let d=c[1].trim();return/\swith\s/i.test(d)||!k(d)?null:{model:d,effort:null}}function u(a){let b=s.exec(a);if(!b)return null;let c=l(b[1]);return null===c?null:{model:null,effort:c}}let v=/^\s*⎿\s+(?:Set model to|Kept model as)\s+(?!(?:and saved as your default|for this session only)\b)([A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*?)(?:\s+(?:and saved as your default for new sessions|for this session only))?(?:\s+with\s+([A-Za-z]+)\s+effort\b[^·]*)?\s*(?:·.*)?$/;function w(a){let b=v.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let x=/^\s*(?:\?\s+for\s+shortcuts|esc\s+to\s+cancel)\b/i,y=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+\((minimal|low|medium|high|xhigh)\)\s*$/i;function z(a){if(!x.test(a))return null;let b=a.lastIndexOf("\xb7");if(b<0)return null;let c=l(a.slice(b+1),{allowTruncated:!0});if(!c)return null;let d=a.slice(0,b).trimEnd().split(/\s{2,}/),e=(d[d.length-1]??"").trim();return{model:k(e)?e:null,effort:c}}function A(a){let b=y.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:l(b[2])}:null}let B=/^\s*[●◉◎○]\s+Model\s+changed\s+from\s+\S+(?:\s+\([^)]*\))?\s+to\s+(\S+)(?:\s+\((minimal|low|medium|high|xhigh)\))?\s+for\s+this\s+session\b/i;function C(a){let b=B.exec(a);if(!b)return null;let c=b[1];return j(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let D=/^\s*▣\s+[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)(?:\s+·\s+[\d.]+\s?m?s)?\s*$/,E=/^\s*[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)\s+·\s+[\d.]+\s?m?s\s*$/,F=/^\s*[┃╹]/,G=/^\s*#\s+models:\s*([^·]+?)(?:\s+with\s+([A-Za-z]+)\s+effort)?\s*(?:·|$)/i;function H(a){let b=G.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}function I(a,b){let c=a.split("\n");for(let a=c.length-1;a>=0;a--){let e=b((0,d.aJ)(c[a]));if(e)return e}return null}function J(a,b){if(!b)return g();switch(a){case"codex":return I(b,p)??g();case"claude":return function(a){let b=I(a,t);if(!b||null!==b.effort)return b;let c=I(a,u);return c?{model:b.model,effort:c.effort}:b}(b)??I(b,w)??g();case"antigravity":return I(b,z)??I(b,A)??g();case"copilot":{let a=function(a){let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c=(0,d.aJ)(b[a]);if(""!==c.trim()){if(!e.Ub.test(c)&&!e.tJ.test(c))return null;let a=c.trim().split(/\s{2,}/);if(a.length<2)return null;let b=a[a.length-1].split("\xb7").map(a=>a.trim());if(b.length>2)return null;let d=b[0];if(!k(d))return null;if(1===b.length)return{model:d,effort:null};let f=l(b[1]);return null===f?null:{model:d,effort:f}}}return null}(b),c=I(b,C);if(!a)return c??g();if(null!==a.effort||null===c||null===c.effort)return a;return!function(a,b){let c=a=>a.toLowerCase().replace(/[^a-z0-9]/g,"");return c(a)===c(b)}(a.model,c.model)?a:{model:a.model,effort:c.effort}}case"opencode":case"opencode-v2":return function(a){let b=a.split("\n").map(a=>(0,d.aJ)(a));for(let a=b.length-1;a>=0;a--){let c=function(a){let b=D.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:null}:null}(b[a])??function(a,b){let c=E.exec(a[b]);if(!c)return null;let d=c[1].trim();if(!k(d))return null;for(let c=b+1;c<a.length;c++)if(""!==a[c].trim())return F.test(a[c])?{model:d,effort:null}:null;return null}(b,a);if(c)return c}return null}(b)??g();case"command-code":return I(b,H)??g();default:return g()}}let K=/-(low|medium|high)$/i;function L(a,b,c,d){let e=(b||null)??c?.model??null,f=c?.effort??null,g="antigravity"===a?function(a){if(!a)return null;let b=K.exec(a);return b?b[1].toLowerCase():null}(e)??f:f;return{model:e,effort:(d||null)??g}}},27675:(a,b,c)=>{c.d(b,{GR:()=>g,MR:()=>m,NR:()=>o,Wl:()=>i,YN:()=>l,cr:()=>r,eZ:()=>q,gq:()=>j,li:()=>k,vR:()=>n});var d=c(85726),e=c(24455),f=c(36925);function g(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.number}.${a.label}`):a.options;return[(0,d.J)(a),...b].join("\0")}let h=(0,f.v)("__autoYesEnterFallbacks",()=>new Map);function i(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),j=r(g),{epoch:k=j,...l}=d;return k===j&&(h.set(g,{outcome:"sent",...l,sentAt:f,at:f,epoch:k}),!0)}function j(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),i=h.get(g);i&&i.screenKey===d&&h.set(g,{...i,outcome:"no-effect",at:f})}function k(a,b,c){let d=(0,e.v7)(a,b,c),f=h.get(d);return f&&f.epoch===r(d)?f:null}function l(a,b){return null===a?null:{outcome:a.outcome,promptType:a.promptType,refusalReason:a.refusalReason,sentAt:a.sentAt,at:a.at,currentPrompt:null!=b&&g(b)===a.screenKey}}function m(a){h.delete(a)}function n(a){for(let b of(0,e._9)([...h.keys()],a))h.delete(b)}function o(){h.clear()}let p=(0,f.v)("__autoYesEnterFallbackEpochs",()=>new Map);function q(a,b,c){let d=(0,e.v7)(a,b,c);h.delete(d),p.set(d,(p.get(d)??0)+1)}function r(a){return p.get(a)??0}},27870:(a,b,c)=>{c.d(b,{lY:()=>h,QB:()=>e,Yo:()=>m,fO:()=>n,LF:()=>j,PP:()=>i,T5:()=>g});var d=c(81254);let e=[{number:1,label:"Allow once",reply:"once"},{number:2,label:"Allow always",reply:"always"},{number:3,label:"Reject",reply:"reject"}],f={"opencode-v2":{once:"Allow once",always:"Always allow",reject:"Reject"}};function g(a){let b=f[a];return b?e.map(a=>b[a.reply]?{...a,label:b[a.reply]}:a):e}let h=500;function i(a){return"string"==typeof a&&""!==a}function j(a,b){return"permission-id"===a&&b.some(a=>i(a.id)&&!a.deliveryExpired)}let k={notification:"Notification(permission_prompt)","permission-request":"PermissionRequest (no decision)"};function l(a,b){let c=[`A dialog is open in ${a}: the agent reported it via ${k[b.source]}${b.toolName?` for ${b.toolName}`:""}, but the detection layer published no options for it.`];if(b.decisionOptions&&b.decisionOptions.length>0?c.push(`Answer it with \`commandmate respond ${a} <number>\`: `+b.decisionOptions.map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+". The reply goes to the agent's own API, so no keys are sent to the terminal "+`and the label works too (\`respond ${a} "Allow once"\`).`):c.push(`Answer it in the terminal, or send the option NUMBER with \`commandmate respond ${a} <number>\` — yes/no is not resolved on a numbered dialog (Issue #1681).`),b.message&&c.push(`Agent message: "${b.message}"`),b.askUserQuestion){let{question:d,labels:e,questionCount:f}=b.askUserQuestion,g=i(b.decisionId)&&1===f&&!(b.decisionOptions&&b.decisionOptions.length>0);c.push(`The agent asked${f>1?` ${f} questions, the first being`:""}: "${d}" — offering: ${e.join(" / ")}. `+(g?`Answer it with \`commandmate respond ${a} <number>\`: `+e.map((a,b)=>`${b+1} = ${a}`).join(", ")+". The number is this list's own position and the reply goes to the agent's own API, so no keys are sent to the terminal (the label works too).":"The picker renumbers and adds its own entries, so read the option NUMBER off the terminal rather than counting this list."))}return c.join(" ")}function m(a,b){return{type:d.LT,status:"pending",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{},...b.decisionOptions&&b.decisionOptions.length>0?{decisionOptions:b.decisionOptions}:{},decisionId:i(b.decisionId)?b.decisionId:null,...b.patterns&&b.patterns.length>0?{patterns:[...b.patterns]}:{}}}function n(a,b){return{type:d.LT,status:"unclassified",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{}}}},27939:(a,b,c)=>{c.d(b,{F_:()=>t,KA:()=>u,XO:()=>x,Y2:()=>n,jp:()=>m,lr:()=>v,pr:()=>w});var d=c(29021),e=c(21820),f=c(33873),g=c(8004),h=c(24455),i=c(72626),j=c(36925);let k=(0,i.h)("lib/session/opencode-session-store"),l=/^ses[A-Za-z0-9_-]{1,128}$/;function m(a){return"string"==typeof a&&l.test(a)}let n=200,o=(0,j.v)("__opencodeSessionMemories",()=>new Map);function p(a){return(0,h.v7)(a.worktreeId,a.cliToolId,a.instanceId)}function q(){let a=(0,f.join)((0,e.homedir)(),".commandmate","opencode-sessions.json");return(0,g.T)(process.env.CM_OPENCODE_SESSION_FILE,a,"CM_OPENCODE_SESSION_FILE")}function r(){try{let a=JSON.parse((0,d.readFileSync)(q(),"utf8"));if("object"!=typeof a||null===a||Array.isArray(a))return{};let b={};for(let[c,d]of Object.entries(a))!("object"!=typeof d||null===d||Array.isArray(d))&&m(d.sessionId)&&"string"==typeof d.worktreePath&&d.worktreePath.length>0&&(b[c]={sessionId:d.sessionId,title:"string"==typeof d.title?d.title:null,worktreePath:d.worktreePath,updatedAt:"number"==typeof d.updatedAt?d.updatedAt:0});return b}catch{return{}}}function s(a){let b=q();try{(0,d.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,d.writeFileSync)(b,`${JSON.stringify(a,null,2)}
2
2
  `,{mode:384})}catch(a){k.warn("opencode-session-file-write-failed",{path:b,error:a instanceof Error?a.message:String(a)})}}function t(a,b,c=Date.now()){if(!m(b.sessionId))return k.warn("opencode-session-id-rejected",{worktreeId:a.worktreeId,instanceId:a.instanceId??a.cliToolId}),!1;if(0===b.worktreePath.length)return!1;let d={sessionId:b.sessionId,title:"string"==typeof b.title?b.title.slice(0,n):null,worktreePath:b.worktreePath,updatedAt:c},e=p(a);o.set(e,d);let f=r();return f[e]=d,s(f),!0}function u(a){let b=p(a),c=o.get(b);if(c)return c;let d=r()[b];return d?(o.set(b,d),d):null}function v(a){let b=p(a);o.delete(b);let c=r();b in c&&(delete c[b],s(c))}function w(a,b){let c=u(a);return c?c.worktreePath!==b?(k.info("opencode-session-recovery-path-mismatch",{worktreeId:a.worktreeId,instanceId:a.instanceId??a.cliToolId,recorded:c.worktreePath}),null):m(c.sessionId)?c.sessionId:null:null}function x(a,b){return m(b)?`${a} -s ${b}`:a}},33294:(a,b,c)=>{c.r(b),c.d(b,{AGENT_EVENT_DEDUP_WINDOW_MS:()=>l,AGENT_MODEL_EFFORT_SUFFIX_PATTERN:()=>H,LIFECYCLE_AGENT_EVENT_TYPES:()=>v,STRUCTURED_PROMPT_PROVISIONAL_MAX_AGE_MS:()=>aQ,STRUCTURED_STATE_MAX_AGE_MS:()=>aw,agentEventKeyClaimedAt:()=>r,beginAgentEventGeneration:()=>aN,classifyAgentEventDelivery:()=>w,clearAgentStopEvents:()=>aX,clearAskUserQuestion:()=>aF,clearStructuredPromptWaiting:()=>aW,closeAgentTurn:()=>aj,corroborateStructuredPromptWaiting:()=>aU,discardAgentEventState:()=>aP,getAgentEventDropCounts:()=>o,getAgentEventGenerationStartedAt:()=>aO,getAgentModelBaseline:()=>M,getAgentTurn:()=>ah,getAskUserQuestion:()=>aE,getAwaitingInstruction:()=>az,getLastAgentEvent:()=>aM,getLastCapturedModelInfo:()=>S,getLastKnownAgentEffort:()=>Y,getLastKnownAgentModel:()=>P,getLastReportedAgentEffort:()=>X,getLastStopEventAt:()=>aJ,getPendingDecisions:()=>ag,getPublishedAgentTurn:()=>ai,getRecentEventIdentityCount:()=>y,getRecentEventKeyCount:()=>u,getResolvedAgentModelInfo:()=>T,getStructuredPromptWaiting:()=>aT,getStructuredSessionState:()=>ax,isAwaitingInstruction:()=>aA,isDuplicateAgentEvent:()=>p,isPreToolUseOutsideTurn:()=>an,isSameAgentModelName:()=>K,joinOpenTurnFromDuplicate:()=>aq,markStructuredPromptRecorded:()=>aV,observeScraperCompletionEvidence:()=>ak,onAgentModelChange:()=>L,recordAgentEvent:()=>aL,recordAgentReportedEffort:()=>W,recordAgentReportedModel:()=>Q,recordAgentStopEvent:()=>aI,recordAskUserQuestion:()=>aD,recordCapturedModelInfo:()=>R,reportPermissionRequestPending:()=>aR,reportQuestionPending:()=>aS,shortSessionTag:()=>s});var d=c(24455),e=c(27675),f=c(55511),g=c(24581),h=c(36925);let i=(0,h.v)("__agentEventDrops",()=>new Map),j=(0,h.v)("__agentEventRecentKeys",()=>new Map),k=(0,h.v)("__agentEventRecentIdentities",()=>new Map),l=3e3;function m(){return{dedupDropped:{identity:0,timeWindow:0},decisionEvicted:0,idsDiscarded:0,dialogTimedOut:0,decisionOverflow:0}}function n(a){let b=i.get(a);return b||(b=m(),i.set(a,b),x(i,512)),b}function o(a,b,c){let e=i.get((0,d.v7)(a,b,c));return e?{...e,dedupDropped:{...e.dedupDropped}}:m()}function p(a,b,c,e,f,h=Date.now(),i=null){var k,m;if(!f)return!1;let n=(0,d.v7)(a,b,c),o=q(n,e,i,f),r=j.get(o);return void 0!==r&&h-r<l||(j.set(o,h),g.Cb.has(e)?t(n,["stop"],f):"stop"===e&&(k=n,m=f,t(k,g.Cb,m)),function(a){for(let[b,c]of j)a-c>=l&&j.delete(b);for(;j.size>512;){let a=j.keys().next();if(a.done)break;j.delete(a.value)}}(h),!1)}function q(a,b,c,d){return[a,b,c??"",d].join(" ")}function r(a,b,c,e,f,g=null){if(!f)return null;let h=(0,d.v7)(a,b,c);return j.get(q(h,e,g,f))??null}function s(a){return(0,f.createHash)("sha256").update(a).digest("hex").slice(0,8)}function t(a,b,c){let d=Array.from(b,b=>`${a} ${b} `),e=` ${c}`,f=(a,b)=>a.length>=b.length+e.length&&a.startsWith(b);for(let a of j.keys())a.endsWith(e)&&d.some(b=>f(a,b))&&j.delete(a)}function u(){return j.size}let v=["stop","session_end"];function w(a){let b=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId);if(null!==a.identityKind){let e=null===a.identity?null:(0,g.Xq)(a.identity);if(null!==a.identity&&null===e&&(n(b).idsDiscarded+=1),null!==e)return!function(a,b){let c=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId),e=k.get(c);e||(e=new Map,k.set(c,e),x(k,512));let f=[a.event,a.detail??"",b].join(" ");return!!e.has(f)||(e.set(f,a.at),x(e,512),!1)}(a,e)?{duplicate:!1}:(n(b).dedupDropped.identity+=1,{duplicate:!0,by:"identity"});if(v.includes(a.event)){var c;return"stop"===a.event&&a.sessionId&&(c=a.sessionId,t(b,g.Cb,c)),{duplicate:!1}}}return p(a.worktreeId,a.cliToolId,a.instanceId,a.event,a.sessionId,a.at,a.detail)?(n(b).dedupDropped.timeWindow+=1,{duplicate:!0,by:"time-window"}):{duplicate:!1}}function x(a,b){for(;a.size>b;){let b=a.keys().next();if(b.done)break;a.delete(b.value)}}function y(a,b,c){if(void 0===a||void 0===b){let a=0;for(let b of k.values())a+=b.size;return a}return k.get((0,d.v7)(a,b,c))?.size??0}var z=c(62887),A=c(26547);let B=(0,h.v)("__agentEventLastModel",()=>new Map),C=(0,h.v)("__agentEventLastModelAt",()=>new Map),D=(0,h.v)("__agentCapturedModelInfo",()=>new Map),E=(0,h.v)("__agentEventLastEffort",()=>new Map),F=(0,h.v)("__agentModelBaseline",()=>new Map),G=(0,h.v)("__agentModelChangeListeners",()=>new Set),H=/[-_ ](?:minimal|low|medium|high|xhigh)$/i,I=/\bcontext\b/gi;function J(a){return a.replace(H,"").replace(I,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function K(a,b,c={}){let d=J(a),e=J(b);return d===e||!!c.crossSource&&0!==d.length&&0!==e.length&&(d.includes(e)||e.includes(d))}function L(a){return G.add(a),()=>{G.delete(a)}}function M(a,b,c){return F.get((0,d.v7)(a,b,c))??null}function N(a,b,c,e,f){let g=(0,d.v7)(a,b,c),{info:h,source:i}=V(g,b),j=h.model;if(null===j||null===i)return;let k=F.get(g),l={model:j,source:i};if(void 0===k){F.set(g,l),x(F,512);return}if(K(k.model,j,{crossSource:k.source!==i}))return void F.set(g,l);F.set(g,l);var m={worktreeId:a,cliToolId:b,instanceId:c??b,from:k.model,to:j,source:e,at:f};for(let a of G)try{a(m)}catch{}}function O(a,b){"string"==typeof b.model&&""!==b.model&&(B.set(a,b.model.slice(0,z.h9)),C.set(a,b.at))}function P(a,b,c){return B.get((0,d.v7)(a,b,c))??null}function Q(a,b,c,e,f=Date.now()){if("string"!=typeof e||""===e)return;let g=(0,d.v7)(a,b,c);B.set(g,e.slice(0,z.h9)),C.set(g,f),N(a,b,c,"hook",f)}function R(a,b,c,e,f=Date.now()){if(!e.model&&!e.effort)return;let g=(0,d.v7)(a,b,c),h=D.get(g),i=e.model?e.model.slice(0,z.h9):h?.model??null;D.set(g,{model:i,effort:e.effortUnreadable?null:e.effort??h?.effort??null,modelChangedAt:null===i?null:i===(h?.model??null)?h?.modelChangedAt??f:f}),e.model&&N(a,b,c,"frame",f)}function S(a,b,c){let e=D.get((0,d.v7)(a,b,c));return{model:e?.model??null,effort:e?.effort??null}}function T(a,b,c){return V((0,d.v7)(a,b,c),b).info}let U=new Set(["claude"]);function V(a,b){let c=B.get(a)??null,d=D.get(a),e={model:d?.model??null,effort:d?.effort??null},f=E.get(a)??null,g=d?.modelChangedAt??null,h=null!==c&&null!==e.model&&null!==g&&U.has(b)&&g>(C.get(a)??0)&&!K(c,e.model,{crossSource:!0}),i=(0,A.Yz)(b,h?null:c,e,f);return null===i.model?{info:i,source:null}:{info:i,source:null===c||h?"frame":"hook"}}function W(a,b,c,e){"string"==typeof e&&""!==e&&E.set((0,d.v7)(a,b,c),e.slice(0,z.h9))}function X(a,b,c){return E.get((0,d.v7)(a,b,c))??null}function Y(a,b,c){return T(a,b,c).effort}let Z=(0,h.v)("__agentEventGenerationStartedAt",()=>new Map),$=(0,h.v)("__agentEventTurns",()=>new Map),_=(0,h.v)("__agentEventReopenedTurns",()=>new Map),aa=(0,h.v)("__agentEventTurnSeq",()=>({value:0}));function ab(a){return Z.get(a)??null}function ac(a){let b=$.get(a);return b&&b.generationAt===ab(a)?b:null}function ad(a,b){let c=ac(a);return null===c?null:(null===c.closedAt&&b-c.displayEvent.at>=g.Mu&&(c.closedAt=c.displayEvent.at+g.Mu,c.closedBy="stale"),c)}function ae(a){return aa.value+=1,`turn-${a}-${aa.value}`}function af(a,b,c){let d=b.pendingDecisions.filter(a=>(0,g.jF)(a,c)),e=b.pendingDecisions.length-d.length;return e>0&&(n(a).dialogTimedOut+=e,b.pendingDecisions=d),d}function ag(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=ad(f,e);return null===g?[]:af(f,g,e)}function ah(a,b,c,e=Date.now()){return ad((0,d.v7)(a,b,c),e)}function ai(a,b,c,d=Date.now()){return(0,g.nY)(ah(a,b,c,d))}function aj(a,b,c,e,f=Date.now()){let g=ac((0,d.v7)(a,b,c));return null!==g&&null===g.closedAt&&(g.closedAt=f,g.closedBy=e,!0)}function ak(a,b,c,e,f=Date.now(),h=!0){let i=ac((0,d.v7)(a,b,c));return null!==i&&null===i.closedAt&&(e?(i.scraperCompletionPolls+=1,!(i.scraperCompletionPolls<g.Tt)&&!!h&&(i.closedAt=f,i.closedBy="scraper_evidence",!0)):(i.scraperCompletionPolls=0,!1))}function al(a,b){let c=$.get(a);c&&(0!==c.pendingDecisions.length&&(n(a).decisionEvicted+=c.pendingDecisions.length,c.pendingDecisions=[]),null===c.closedAt&&(c.closedAt=b,c.closedBy="generation",c.generationAt=b))}function am(a){let b=ac(a);return null!==b&&null!==b.closedAt&&"stop"===b.closedBy}function an(a,b,c,e){return e&&am((0,d.v7)(a,b,c))}function ao(a){return{event:a.event,at:a.at,detail:a.detail}}function ap(a,b,c,{continueOpen:d}){let e=ac(a),f=null!==e&&null===e.closedAt&&null!==e.openedAt&&(0,g.ZV)(e,b.sessionId);if(d&&f){e.displayEvent=ao(b),e.sessionId??=b.sessionId,e.scraperCompletionPolls=0;return}let h=null!==e&&null===e.openedAt&&null===e.closedAt?e.pendingDecisions:[],i={turnId:ae(b.at),sessionId:b.sessionId,openedAt:b.at,closedAt:null,closedBy:null,generationAt:c,displayEvent:ao(b),pendingDecisions:h,scraperCompletionPolls:0};$.set(a,i),au(),"user_prompt_submit"===b.event&&f&&(_.set(a,{turnId:i.turnId,replaced:e}),x(_,512))}function aq(a,b,c,e){if("user_prompt_submit"!==e.event||!0!==e.joinsOpenTurn)return!1;let f=(0,d.v7)(a,b,c),h=_.get(f),i=ac(f);if(!h||null===i||i.turnId!==h.turnId||null!==i.closedAt||!(0,g.ZV)(i,e.sessionId))return!1;let{replaced:j}=h;return j.generationAt===i.generationAt&&($.set(f,{...j,closedAt:null,closedBy:null,displayEvent:i.displayEvent,pendingDecisions:i.pendingDecisions,scraperCompletionPolls:0}),_.delete(f),!0)}function ar(a,b,c){let d=ac(a);null===d?(d={turnId:ae(c.at),sessionId:null,openedAt:null,closedAt:null,closedBy:null,generationAt:b,displayEvent:c.bootstrapDisplay,pendingDecisions:[],scraperCompletionPolls:0},$.set(a,d),au()):null!==d.closedAt&&(d={turnId:ae(c.at),sessionId:null,openedAt:null,closedAt:null,closedBy:null,generationAt:b,displayEvent:c.bootstrapDisplay,pendingDecisions:[],scraperCompletionPolls:0},$.set(a,d),au());let e=null===c.decisionId?null:(0,g.Xq)(c.decisionId);null!==c.decisionId&&null===e&&(n(a).idsDiscarded+=1);let f="notification"===c.source,h=null!==e?d.pendingDecisions.find(a=>a.decisionId===e)??d.pendingDecisions.find(a=>null===a.decisionId&&"permission-request"===a.source):d.pendingDecisions.find(a=>null===a.decisionId);if(h){h.message=(0,g.wt)(c.message)??h.message,h.toolName=(0,g.kT)(c.toolName)??h.toolName,h.patterns=(0,g.Ui)(c.patterns)??h.patterns,h.decisionId??=e,f&&(h.source="notification",h.confirmedAt??=c.at);return}if(d.pendingDecisions.length>=g.RY){n(a).decisionOverflow+=1;return}d.pendingDecisions.push({decisionId:e,at:c.at,source:c.source,message:(0,g.wt)(c.message),toolName:(0,g.kT)(c.toolName),patterns:(0,g.Ui)(c.patterns),confirmedAt:f?c.at:null,scraperCorroborated:!1,recorded:!1})}function as(a){let b=ac(a);null!==b&&(b.pendingDecisions=[])}function at(a,b){let c=ac(a);if(null===c||0===c.pendingDecisions.length)return;let d=null===b.decisionId||void 0===b.decisionId?null:(0,g.Xq)(b.decisionId);if(null===d){c.pendingDecisions=[];return}c.pendingDecisions=c.pendingDecisions.filter(a=>null!==a.decisionId&&a.decisionId!==d)}function au(){x($,512)}var av=c(67882);let aw=g.Mu;function ax(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=ad(f,e);if(null===g)return null;let h=g.displayEvent;if(e-h.at>=aw)return null;let i={event:h.event,at:h.at,detail:h.detail},j=af(f,g,e);if(j.length>0)return{status:"waiting",reason:"notification"===j[0].source?av.Oh.PERMISSION_PROMPT:av.Oh.PERMISSION_REQUEST,...i};if(null!==g.closedAt)return"stop"===g.closedBy?{status:"ready",reason:av.Oh.STOP,...i}:null;let k=(0,av.DA)(h.event,h.detail);return null===k||"waiting"===k.status?null===g.openedAt?null:{status:"running",reason:av.Oh.PROMPT_SUBMIT,...i}:{...k,...i}}let ay=(0,h.v)("__agentEventAwaitingInstruction",()=>new Map);function az(a,b,c){let e=(0,d.v7)(a,b,c),f=ay.get(e);if(!f)return null;let g=Z.get(e);return void 0!==g&&f.at<g?null:f}function aA(a,b,c){return null!==az(a,b,c)}var aB=c(49154);let aC=(0,h.v)("__agentEventAskUserQuestion",()=>new Map);function aD(a,b,c,e,f=Date.now()){aC.set((0,d.v7)(a,b,c),{at:f,spec:e})}function aE(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=aC.get(f);if(!g)return null;let h=Z.get(f);return void 0!==h&&g.at<h||e-g.at>=aw?null:g}function aF(a,b,c){aC.delete((0,d.v7)(a,b,c))}let aG=(0,h.v)("__agentEventLastStopAt",()=>new Map),aH=(0,h.v)("__agentEventLast",()=>new Map);function aI(a,b,c,e=Date.now()){aG.set((0,d.v7)(a,b,c),e)}function aJ(a,b,c){return aG.get((0,d.v7)(a,b,c))??null}let aK=["running","waiting"];function aL(a,b,c,f,h={}){let i=(0,d.v7)(a,b,c);return!function(a,b,c,e,f){if("session_start"!==e.event||!0!==f.sessionStartMayArriveLate)return!1;let g=ax(a,b,c,e.at);if(null===g||!aK.includes(g.status))return!1;let h=aH.get((0,d.v7)(a,b,c))?.sessionId??null;return null===h||null==e.sessionId||e.sessionId===h}(a,b,c,f,h)?(aH.set(i,f),"session_start"===f.event&&F.delete(i),O(i,f),N(a,b,c,"hook",f.at),!function(a,b){switch(b.event){case"pre_tool_use":aB.mW.includes(b.detail??"")||aC.delete(a);return;case"notification":"idle_prompt"===b.detail&&aC.delete(a);return;case"post_tool_use":case"stop":case"user_prompt_submit":case"session_start":case"session_end":aC.delete(a);return;default:b.event;return}}(i,f),"session_start"===f.event&&(Z.set(i,f.at),(0,e.eZ)(a,b,c),al(i,f.at)),!function(a,b){let c=ab(a);if(null===c||!(b.at<c))switch(b.event){case"user_prompt_submit":ap(a,b,c,{continueOpen:!0===b.joinsOpenTurn}),as(a);return;case"post_tool_use":ap(a,b,c,{continueOpen:!0}),as(a);return;case"pre_tool_use":if(!0===b.promptOpensTurns&&am(a))return;ap(a,b,c,{continueOpen:!0});return;case"stop":!function(a,b,c){let d=ac(a);if(null!==d&&null===d.closedAt&&null!==d.openedAt){if(!(0,g.ZV)(d,b.sessionId))return;d.closedAt=b.at,d.closedBy="stop",d.displayEvent=ao(b),as(a);return}$.set(a,{turnId:ae(b.at),sessionId:b.sessionId,openedAt:null,closedAt:b.at,closedBy:"stop",generationAt:c,displayEvent:ao(b),pendingDecisions:[],scraperCompletionPolls:0}),au()}(a,b,c);return;case"session_end":(function(a,b){let c=ac(a);null!==c&&(0,g.ZV)(c,b.sessionId)&&(c.closedAt=b.at,c.closedBy="session_end")})(a,b),as(a);return;case"session_start":return;case"notification":!function(a,b,c){if("permission_prompt"===b.detail)return!0===b.promptSettled?at(a,b):ar(a,c,{source:"notification",at:b.at,message:b.message??null,toolName:b.toolName??null,patterns:b.decisionPatterns??null,decisionId:b.decisionId??null,bootstrapDisplay:ao(b)});if(b.detail===z.KC){!0===b.promptSettled&&at(a,b);return}if("idle_prompt"===b.detail){as(a);let d=ac(a);if(null!==d&&null===d.closedAt){d.displayEvent=ao(b);return}if(null!==d)return;$.set(a,{turnId:ae(b.at),sessionId:b.sessionId,openedAt:null,closedAt:null,closedBy:null,generationAt:c,displayEvent:ao(b),pendingDecisions:[],scraperCompletionPolls:0}),au()}}(a,b,c);return;default:b.event;return}}(i,f),!function(a,b){switch(b.event){case"notification":"idle_prompt"===b.detail&&ay.set(a,{at:b.at,message:b.message??null});return;case"user_prompt_submit":case"session_start":case"session_end":ay.delete(a);return;case"stop":case"pre_tool_use":case"post_tool_use":return;default:b.event;return}}(i,f),{recorded:!0}):(O(i,f),N(a,b,c,"hook",f.at),{recorded:!1,skipped:"late-session-start"})}function aM(a,b,c){return aH.get((0,d.v7)(a,b,c))??null}function aN(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c);Z.set(f,e),al(f,e),aC.delete(f),ay.delete(f),B.delete(f),C.delete(f),D.delete(f),E.delete(f),F.delete(f),k.delete(f)}function aO(a,b,c){return Z.get((0,d.v7)(a,b,c))??null}function aP(a,b,c){let e=(0,d.v7)(a,b,c);aH.delete(e),Z.delete(e),$.delete(e),i.delete(e),aC.delete(e),ay.delete(e),B.delete(e),C.delete(e),D.delete(e),E.delete(e),F.delete(e),k.delete(e)}let aQ=g.h_.predicted;function aR(a,b,c,e,f=Date.now()){let g=(0,d.v7)(a,b,c);ar(g,ab(g),{source:"permission-request",at:f,message:null,toolName:e,patterns:null,decisionId:null,bootstrapDisplay:{event:"notification",at:f,detail:"permission_prompt"}})}function aS(a,b,c,e,f=Date.now()){let g=(0,d.v7)(a,b,c);ar(g,ab(g),{source:"notification",at:f,message:null,toolName:e.toolName,patterns:null,decisionId:e.decisionId,bootstrapDisplay:{event:"notification",at:f,detail:e.detail}})}function aT(a,b,c,d=Date.now()){return ag(a,b,c,d)[0]??null}function aU(a,b,c,d=Date.now()){let e=aT(a,b,c,d);e&&(e.scraperCorroborated=!0,e.confirmedAt??=d)}function aV(a,b,c){let d=aT(a,b,c);d&&(d.recorded=!0)}function aW(a,b,c){as((0,d.v7)(a,b,c))}function aX(){aG.clear(),aH.clear(),j.clear(),k.clear(),Z.clear(),$.clear(),_.clear(),i.clear(),aC.clear(),ay.clear(),B.clear(),C.clear(),D.clear(),E.clear(),F.clear()}},49154:(a,b,c)=>{c.d(b,{GF:()=>e,Wk:()=>g,mW:()=>f});var d=c(13287);let e="question",f=[d.k$,e];function g(a){return null!==a&&f.includes(a)?"question":"permission"}},56791:(a,b,c)=>{c.r(b),c.d(b,{ACTIVE_FILTER:()=>d.ks,ACTIVE_TASK_STATUSES:()=>d.EL,AgentInstanceLimitError:()=>d.AC,CURRENT_SCHEMA_VERSION:()=>f.FT,DEFAULT_RUN_HISTORY_LIMIT:()=>d.Tu,InvalidAgentInstanceError:()=>d.ug,MAX_DISABLED_REPOSITORIES:()=>h.nc,MAX_RUN_HISTORY_DAYS:()=>d.eP,MAX_RUN_HISTORY_LIMIT:()=>d.mg,MemoDbError:()=>d.lm,NEW_SUBSCRIPTION_DEFAULTS:()=>d.s6,PUSH_DEFAULTS_VERSION:()=>d.VP,RepositoryDbError:()=>h.j8,TASK_STATUSES:()=>d.Hi,TERMINAL_TASK_STATUSES:()=>d.sA,VERIFICATION_GATE_SOURCES:()=>d.Dx,VERIFICATION_TRIGGERS:()=>d.af,WORKTREE_TODO_STATUSES:()=>d.KG,addAgentInstance:()=>d.Uq,cancelTimer:()=>d.Ud,cancelTimersByWorktree:()=>d.$$,cleanupOldTimers:()=>d.ul,clearInProgressMessageId:()=>d.YX,clearLastUserMessage:()=>d.cf,clearTimerHistory:()=>d.jf,closeDbInstance:()=>e.closeDbInstance,countAgentInstances:()=>d.fs,countDisabledRepositories:()=>h.QJ,countPushSubscriptionsForKind:()=>d.rC,countWorktreesByRepositoryPath:()=>h.kp,createCloneJob:()=>h.tw,createGateResult:()=>d.hl,createMemo:()=>d.To,createMessage:()=>d.oH,createRepository:()=>h.vB,createTask:()=>d.UT,createTimer:()=>d.CR,createVerificationRun:()=>d.rY,createWorktreeTodo:()=>d.yy,deleteAllMessages:()=>d.pE,deleteMemo:()=>d.cP,deleteMessageById:()=>d.DF,deleteMessagesByCliTool:()=>d.lA,deleteMessagesByInstance:()=>d.Qp,deletePushSubscriptionByEndpoint:()=>d.th,deleteRepository:()=>h.oG,deleteRepositoryWorktrees:()=>d.oZ,deleteSessionState:()=>d.ZP,deleteWorktreeTodo:()=>d.vg,deleteWorktreesByIds:()=>d.Rm,disableExistingRepository:()=>h.eP,disableRepository:()=>h.l$,ensureEnvRepositoriesRegistered:()=>h.ES,filterExcludedPaths:()=>h.Ho,findMessageByRequestId:()=>d.Ow,finishGateResult:()=>d.C8,finishVerificationRun:()=>d.u$,getActiveCloneJobByUrl:()=>h.fD,getActiveTask:()=>d.__,getActiveTaskForInstance:()=>d.MH,getAgentInstance:()=>d.BN,getAgentInstances:()=>d.m0,getAliasedWorktreeIds:()=>d.r3,getAllPushSubscriptions:()=>d.Se,getAllRepositories:()=>h.Yg,getAllRepositoriesWithWorktreeCount:()=>h._D,getAllWorktreeAliases:()=>d.fX,getAllWorktreeIds:()=>d.nO,getAllWorktreePathIds:()=>d.Sj,getCloneJob:()=>h.bM,getCloneJobsByStatus:()=>h.n_,getCurrentVersion:()=>f.Mj,getDailyReport:()=>d.ap,getDbInstance:()=>e.getDbInstance,getDefaultDbPath:()=>g.$b,getExcludedRepositories:()=>h.lS,getExcludedRepositoryPaths:()=>h.pr,getInitialBranch:()=>d.p4,getIssueDbPath:()=>g.zm,getLastAssistantMessageAt:()=>d.nP,getLastMessage:()=>d.sy,getLastUserMessage:()=>d.r8,getLegacyDbPaths:()=>q,getMemoById:()=>d.DN,getMemosByWorktreeId:()=>d.pZ,getMessageById:()=>d.kA,getMessages:()=>d.VL,getMessagesByDateRange:()=>d.lr,getMigrationHistory:()=>f.PS,getPendingTimerCountByWorktree:()=>d.GF,getPendingTimers:()=>d._O,getPushSubscriptionByEndpoint:()=>d.CF,getPushSubscriptionsForKind:()=>d.gn,getRepositories:()=>d.NV,getRepositoryById:()=>h.r,getRepositoryByNormalizedUrl:()=>h.Uj,getRepositoryByPath:()=>h.Dp,getRunningVerificationRun:()=>d.WZ,getSessionState:()=>d.y1,getTask:()=>d.gg,getTimerById:()=>d.kx,getTimersByWorktree:()=>d.DP,getTodosByWorktreeId:()=>d.fr,getVerificationRun:()=>d.J6,getWorktreeAliases:()=>d.Q2,getWorktreeById:()=>d.Ui,getWorktreeIdsByRepository:()=>d.P9,getWorktreeTodoById:()=>d.eN,getWorktrees:()=>d.vi,getWorktreesByRepository:()=>d.uJ,initDatabase:()=>d.s4,isTerminalTaskStatus:()=>d.uB,isWorktreeTodoStatus:()=>d.yT,listRunningVerificationRuns:()=>d.Fi,listTaskEvents:()=>d.HB,listTasks:()=>d.Vk,listVerificationRuns:()=>d.Mt,listVerificationRunsForPeriod:()=>d.UE,markPendingPromptsAsAnswered:()=>d.PL,migrateDbIfNeeded:()=>r,migrateWorktreeIdPreservingChildren:()=>d._h,pushSubscriptionNeedsDefaultsNotice:()=>d.Zj,recomputeLastUserMessage:()=>d.jp,recordAnsweredPrompt:()=>d.pG,recordWorktreeAlias:()=>d.xJ,recoverStuckSendingTimers:()=>d.Xm,registerAndFilterRepositories:()=>h.$G,removeAgentInstance:()=>d.NU,reorderMemos:()=>d.nQ,reorderWorktreeTodos:()=>d.yb,resolveAndValidatePath:()=>p,resolveRepositoryPath:()=>h.mE,resolveWorktreeIdWithAlias:()=>d.l0,restoreRepository:()=>h.RS,rollbackMigrations:()=>f.Wy,runMigrations:()=>f.vI,saveDailyReport:()=>d.tt,saveInitialBranch:()=>d.GA,setAgentInstances:()=>d.Cs,setInProgressMessageId:()=>d.OF,setRepositoryEnabled:()=>h.iQ,updateCliToolId:()=>d.WU,updateCloneJob:()=>h.k5,updateDailyReportContent:()=>d.IF,updateFavorite:()=>d.O,updateLastUserMessage:()=>d.EU,updateLastViewedAt:()=>d.HZ,updateMemo:()=>d.UY,updateMessageContent:()=>d.e8,updatePromptData:()=>d.cw,updatePushSubscriptionPreferences:()=>d.jJ,updateRepository:()=>h.Ir,updateSelectedAgents:()=>d.DC,updateSessionState:()=>d.PP,updateStatus:()=>d.yB,updateTimerStatus:()=>d.j2,updateVibeLocalContextWindow:()=>d.s,updateVibeLocalModel:()=>d.iu,updateWorktreeDescription:()=>d.hq,updateWorktreeLink:()=>d.z1,updateWorktreeTodo:()=>d.bl,upsertPushSubscription:()=>d.jA,upsertWorktree:()=>d.ZL,validateDbPath:()=>g.Sv,validateRepositoryPath:()=>h.Ux,validateSchema:()=>f.i6});var d=c(683),e=c(88807),f=c(67469),g=c(20416),h=c(10406),i=c(29021),j=c.n(i),k=c(33873),l=c.n(k),m=c(21820),n=c(7956);let o=(0,c(72626).h)("db-migration-path");function p(a,b){try{if(!j().existsSync(a))return null;let c=j().realpathSync(a);if((0,n.fW)(c))return o.warn(`[Security] ${b} points to system directory, skipping: ${c}`),null;return c}catch{return o.warn(`[Security] Failed to resolve ${b}: ${a}`),null}}function q(){let a=[];a.push(l().join(process.cwd(),"data","db.sqlite")),a.push(l().join(process.cwd(),"data","cm.db")),a.push(l().join((0,m.homedir)(),".commandmate","data","db.sqlite"));let b=process.env.DATABASE_PATH;if(b)try{let c=l().resolve(b);(0,n.fW)(c)?o.warn(`[Security] Skipping DATABASE_PATH in system directory: ${c}`):a.push(b)}catch{o.warn(`[Security] Invalid DATABASE_PATH: ${b}`)}return a}function r(a){let b=l().resolve(a);if((0,n.fW)(b))throw Error(`Security error: Target path cannot be in system directory: ${b}`);if(j().existsSync(a)){let b=p(a,"target path");if(b)return{migrated:!1,targetPath:b}}for(let a of q()){let c=p(a,"legacy path");if(!c)continue;let d=`${c}.bak`;j().copyFileSync(c,d),j().chmodSync(d,384);let e=l().dirname(b);return j().existsSync(e)||j().mkdirSync(e,{recursive:!0,mode:448}),j().copyFileSync(c,b),o.info(`[Migration] Database migrated from ${c} to ${b}`),o.info(`[Migration] Backup created at ${d}`),{migrated:!0,sourcePath:c,targetPath:b,backupPath:d}}return{migrated:!1,targetPath:b}}},67882:(a,b,c)=>{c.d(b,{DA:()=>e,O_:()=>f,Oh:()=>d,_K:()=>i,kA:()=>g,px:()=>h});let d={PROMPT_SUBMIT:"hook_prompt_submit",STOP:"hook_stop",PERMISSION_PROMPT:"hook_permission_prompt",PERMISSION_REQUEST:"hook_permission_request",IDLE_PROMPT:"hook_idle_prompt",PRE_TOOL_USE:"hook_pre_tool_use",POST_TOOL_USE:"hook_post_tool_use"};function e(a,b){switch(a){case"user_prompt_submit":return{status:"running",reason:d.PROMPT_SUBMIT};case"pre_tool_use":return{status:"running",reason:d.PRE_TOOL_USE};case"post_tool_use":return{status:"running",reason:d.POST_TOOL_USE};case"stop":return{status:"ready",reason:d.STOP};case"notification":if("permission_prompt"===b)return{status:"waiting",reason:d.PERMISSION_PROMPT};if("idle_prompt"===b)return{status:"ready",reason:d.IDLE_PROMPT};return null;default:return null}}function f(a,b=!1){switch(a){case"waiting":return{isWaitingForResponse:!0,isProcessing:!1};case"running":return{isWaitingForResponse:!1,isProcessing:!b};default:return{isWaitingForResponse:!1,isProcessing:!1}}}function g(a){return a?a.isWaitingForResponse?"waiting":a.isProcessing?"running":a.isRunning?"ready":"idle":"idle"}function h(a){return a?.isUnclassified===!0&&"ready"===g(a)}function i(a){return a.isSessionRunning?a.isWaitingForResponse?"waiting":a.isProcessing?"running":"ready":null}},81254:(a,b,c)=>{function d(a){return"answer_only"===a||"answer_then_enter"===a}c.d(b,{LT:()=>e,MI:()=>d,XF:()=>f});let e="unclassified";function f(a){return null!=a&&a.type!==e}},85322:(a,b,c)=>{c.d(b,{k:()=>d});let d="opencode"},85726:(a,b,c)=>{c.d(b,{J:()=>d});function d(a){return`${a.type}:${a.question}`}}};
@@ -0,0 +1,7 @@
1
+ "use strict";exports.id=1601,exports.ids=[1601],exports.modules={50779:(a,b,c)=>{c.d(b,{GT:()=>m});var d=c(88807),e=c(43167),f=c(73753),g=c(72626),h=c(57836),i=c(4806),j=c(61191),k=c(27519);let l=(0,g.h)("push/resolution");async function m(a){let{worktreeId:b,agentName:c,at:g=Date.now()}=a,m=function(a,b=Date.now()){let c;if(!(0,k.lU)())return{send:!1,reason:"push-unconfigured"};if(!(0,i.r0)(a,b))return{send:!1,reason:"no-card"};if((0,h.Te)(a))return{send:!1,reason:"still-waiting"};try{c=(0,e.rC)((0,d.getDbInstance)(),"prompt")}catch{return{send:!1,reason:"single-device",deviceCount:0}}return c<2?{send:!1,reason:"single-device",deviceCount:c}:{send:!0,reason:"cross-device-clear",deviceCount:c}}(b,g),n={worktreeId:b,instanceId:c,reason:m.reason,...void 0!==m.deviceCount?{deviceCount:m.deviceCount}:{}};if("still-waiting"!==m.reason&&(0,i._P)(b),!m.send)return void("single-device"===m.reason?l.info("resolution-push-skipped",n):l.debug("resolution-push-skipped",n));try{await (0,j.notifyPushSubscribers)({worktreeId:b,worktreeName:function(a){try{return(0,f.getWorktreeById)((0,d.getDbInstance)(),a)?.name??a}catch{return a}}(b),kind:"prompt",agentName:c,resolved:!0},g),l.info("resolution-push-sent",n)}catch(a){l.warn("resolution-push-failed",{...n,error:a instanceof Error?a.message:String(a)})}}},52277:(a,b,c)=>{c.d(b,{FA:()=>h,ZS:()=>f,gb:()=>g});var d=c(24455);let e=(0,c(36925).v)("__autoYesPolicySuppressions",()=>new Map);function f(a,b,c,g,h=Date.now()){e.set((0,d.v7)(a,b,c),{...g,at:h})}function g(a,b,c){return e.get((0,d.v7)(a,b,c))??null}function h(a,b,c){e.delete((0,d.v7)(a,b,c))}},73478:(a,b,c)=>{c.d(b,{I7:()=>w});var d=c(24455),e=c(88807),f=c(73753),g=c(72626),h=c(57836),i=c(80544),j=c(92010),k=c(61191),l=c(50779),m=c(27519),n=c(36925);let o=(0,g.h)("push/waiting-notifier"),p=(0,n.v)("__waitingPushPending",()=>new Map),q=(0,n.v)("__waitingPushGraceTimers",()=>new Map),r=(0,n.v)("__waitingPushAnswerGraceTimers",()=>new Map);async function s(a,b,c){let d=a.instanceId??a.cliToolId;try{await (0,k.notifyPushSubscribers)({worktreeId:a.worktreeId,worktreeName:function(a){try{return(0,f.getWorktreeById)((0,e.getDbInstance)(),a)?.name??a}catch{return a}}(a.worktreeId),kind:"prompt",agentName:d,instanceId:d,waitingKind:a.kind,waitingSince:a.since,escalated:b},c)}catch(c){o.warn("waiting-push-failed",{worktreeId:a.worktreeId,instanceId:d,escalated:b,error:c instanceof Error?c.message:String(c)})}}function t(a){let b=q.get(a);void 0!==b&&(clearTimeout(b),q.delete(a));let c=r.get(a);void 0!==c&&(clearTimeout(c),r.delete(a))}function u(a,b,c=!1){let e=(0,j.W3)({worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,waitingSince:a.since,now:b},{recheck:c});if(e.suppress){"auto-yes-answering"===e.reason&&function(a,b){let c=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId),e=r.get(c);void 0!==e&&clearTimeout(e);let f=(0,j.D6)({worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,waitingSince:a.since},b),g=setTimeout(()=>{r.delete(c),function(a,b){let c=p.get(a);if(void 0===c||c.since!==b)return;let d=(0,h.Jp)(c.worktreeId,c.cliToolId,c.instanceId);if(null===d||d.since!==c.since){p.delete(a),(0,j.Vf)(a,c.since),v();return}let e={...c,kind:d.kind};p.set(a,e),u(e,Date.now(),!0)}(c,a.since)},Math.min(j.Zj,Math.max(0,f-b)));g.unref?.(),r.set(c,g)}(a,b);return}s(a,!1,b)}function v(){if(p.size>0)return;let a=globalThis.__waitingPushEscalationTimer;void 0!==a&&(clearInterval(a),globalThis.__waitingPushEscalationTimer=void 0)}function w(){let a=globalThis.__waitingPushUnsubscribe;for(let b of(a&&(a(),globalThis.__waitingPushUnsubscribe=void 0),q.values()))clearTimeout(b);for(let a of(q.clear(),r.values()))clearTimeout(a);r.clear(),p.clear(),v();let b=(0,h.wN)(a=>{!function(a){var b;if(!(0,m.lU)())return;let c=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId);if(!a.waiting||null===a.since){t(c),p.delete(c),v(),(0,l.GT)({worktreeId:a.worktreeId,agentName:a.instanceId??a.cliToolId,at:a.at});return}let e={worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,since:a.since,kind:a.kind};if(p.set(c,e),!function(){if(void 0!==globalThis.__waitingPushEscalationTimer)return;let a=setInterval(()=>{!function(a=Date.now()){if(0===p.size)return v();let b=(0,i.rS)(),c=6e4*b.thresholdMinutes;for(let[d,e]of Array.from(p)){let f=(0,h.Jp)(e.worktreeId,e.cliToolId,e.instanceId);if(null===f||f.since!==e.since){p.delete(d);continue}b.enabled&&!(a-e.since<c)&&((0,j.R4)({worktreeId:e.worktreeId,cliToolId:e.cliToolId,instanceId:e.instanceId,waitingSince:e.since,escalated:!0})||(p.delete(d),s({...e,kind:f.kind??e.kind},!0,a)))}v()}()},6e4);a.unref?.(),globalThis.__waitingPushEscalationTimer=a}(),null==(b=e.kind)||"unclassified"===b){t(c);let a=setTimeout(()=>{!function(a){q.delete(a);let b=p.get(a);if(void 0===b)return;let c=(0,h.Jp)(b.worktreeId,b.cliToolId,b.instanceId);if(null===c||c.since!==b.since){p.delete(a),v();return}let d={...b,kind:c.kind};p.set(a,d),u(d,Date.now())}(c)},8e3);a.unref?.(),q.set(c,a);return}u(e,a.at)}(a)});return globalThis.__waitingPushUnsubscribe=b,b}},80544:(a,b,c)=>{c.d(b,{Di:()=>h,O$:()=>g,d7:()=>k,rS:()=>j});var d=c(88807);let e=(0,c(72626).h)("push/escalation-settings"),f="push_escalation",g={enabled:!0,thresholdMinutes:10},h=[5,10,30,60];function i(a){if("object"!=typeof a||null===a)return{...g};let b="boolean"==typeof a.enabled?a.enabled:g.enabled,c=a.thresholdMinutes;return{enabled:b,thresholdMinutes:"number"==typeof c&&Number.isFinite(c)&&c>=1&&c<=1440?Math.round(c):g.thresholdMinutes}}function j(){try{let a=(0,d.getDbInstance)().prepare("SELECT value FROM app_settings WHERE key = ?").get(f);if(!a)return{...g};return i(JSON.parse(a.value))}catch(a){return e.warn("escalation-settings-read-failed",{error:a instanceof Error?a.message:String(a)}),{...g}}}function k(a){let b=i(a),c=Date.now();return(0,d.getDbInstance)().prepare(`
2
+ INSERT INTO app_settings (key, value, created_at, updated_at)
3
+ VALUES (?, ?, ?, ?)
4
+ ON CONFLICT(key) DO UPDATE SET
5
+ value = excluded.value,
6
+ updated_at = excluded.updated_at
7
+ `).run(f,JSON.stringify(b),c,c),b}},91601:(a,b,c)=>{c.d(b,{Di:()=>f.Di,HR:()=>d.HR,J$:()=>e.notifyPushSubscribers,O$:()=>f.O$,d7:()=>f.d7,rS:()=>f.rS});var d=c(27519);c(8532);var e=c(61191);c(3915),c(92010),c(81099),c(77703),c(73478);var f=c(80544);c(50779),c(4806),c(55233)},92010:(a,b,c)=>{c.d(b,{D6:()=>l,R4:()=>o,Vf:()=>m,W3:()=>p,Zj:()=>i});var d=c(24455),e=c(72626),f=c(52277),g=c(36925);let h=(0,e.h)("push/prompt-gate"),i=Math.max(3*d.ps,d.ZO+2*d.ps),j=(0,g.v)("__promptPushAutoYesHolds",()=>new Map),k=2*d.ps;function l(a,b){let c=function(a,b){let c=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId);var e=b;for(let[a,b]of j)e-b.firstHeldAt>=36e5&&j.delete(a);let f=j.get(c);(void 0===f||f.since!==a.waitingSince)&&(f={since:a.waitingSince,firstHeldAt:b,sessionWaitTick:function(a,b){let c=globalThis.__autoYesPollerStates?.get(a),e=c?.sessionWaitTickAt;if(void 0!==c&&void 0!==e&&!(e<=b))return{at:Math.min(e,b+d.BT),poller:c,heldAt:b}}(c,b)},j.set(c,f));let g=(0,d.aq)(a.worktreeId,a.cliToolId,a.instanceId)?.enabledAt;void 0!==g&&g>f.firstHeldAt&&g<=b&&(f.firstHeldAt=g);let h=globalThis.__autoYesPollerStates?.get(c)?.lastServerResponseTimestamp??null;return null!==h?Math.max(f.firstHeldAt,h):f.firstHeldAt}(a,b),e=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId),f=j.get(e)?.sessionWaitTick,g=c+i;return void 0===f||globalThis.__autoYesPollerStates?.get(e)!==f.poller?g:(f.at=function(a){let b=a.at;for(let c of[a.poller.sessionWaitTickAt,a.poller.sessionWaitTickRanAt,a.poller.sessionAppearedAt])void 0!==c&&c>=a.heldAt&&c<b&&(b=c);return b}(f),Math.max(g,f.at+k))}function m(a,b){(void 0===b||j.get(a)?.since===b)&&j.delete(a)}function n(a){let{worktreeId:b,cliToolId:c,instanceId:e,waitingSince:g}=a,h=(0,d.aq)(b,c,e);if(null===h||!h.enabled)return{suppress:!1,reason:"auto-yes-inactive",stopReason:h?.stopReason};let j=(0,f.gb)(b,c,e);if(null!==j&&j.at>=g)return{suppress:!1,reason:"policy-withheld",suppressedBy:j.reason};if(!0===a.escalated)return{suppress:!1,reason:"escalation-reminder"};let k=a.holdEndsAt??(void 0!==a.holdStartedAt?a.holdStartedAt+i:void 0);return void 0!==k&&(a.now??Date.now())>=k?{suppress:!1,reason:"auto-yes-not-answered"}:{suppress:!0,reason:"auto-yes-answering"}}function o(a){return p(a).suppress}function p(a,b={}){let c=n(a);if("auto-yes-inactive"===c.reason&&m((0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId)),"auto-yes-answering"===c.reason&&void 0===a.holdStartedAt&&void 0===a.holdEndsAt){let b=a.now??Date.now();c=n({...a,now:b,holdEndsAt:l(a,b)})}let e={worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId??a.cliToolId,waitingSince:a.waitingSince,escalated:!0===a.escalated,reason:c.reason,...void 0!==c.stopReason?{stopReason:c.stopReason}:{},...void 0!==c.suppressedBy?{suppressedBy:c.suppressedBy}:{}};return c.suppress&&!0===b.recheck?h.debug("prompt-push-suppressed",e):c.suppress?h.info("prompt-push-suppressed",e):"auto-yes-not-answered"===c.reason?h.info("prompt-push-allowed",e):h.debug("prompt-push-allowed",e),c}}};