commandmate 0.32.1 → 0.33.1

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 (567) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +277 -270
  3. package/.next/app-path-routes-manifest.json +39 -38
  4. package/.next/build-manifest.json +2 -2
  5. package/.next/prerender-manifest.json +12 -12
  6. package/.next/required-server-files.json +1 -1
  7. package/.next/routes-manifest.json +8 -0
  8. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
  10. package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
  11. package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/assistant/conversation/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/assistant/current-output/route_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/assistant/messages/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/assistant/session/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/assistant/start/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/assistant/terminal/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/assistant/tools/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  22. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/push/subscriptions/route.js +1 -1
  38. package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
  44. package/.next/server/app/api/repositories/[id]/todos/[todoId]/route.js +1 -1
  45. package/.next/server/app/api/repositories/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/repositories/[id]/todos/route.js +1 -1
  47. package/.next/server/app/api/repositories/[id]/todos/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
  54. package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
  56. package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
  60. package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
  62. package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  64. package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  66. package/.next/server/app/api/tasks/[taskId]/route.js +1 -1
  67. package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  68. package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  70. package/.next/server/app/api/todos/route.js +1 -1
  71. package/.next/server/app/api/todos/route_client-reference-manifest.js +1 -1
  72. package/.next/server/app/api/verification/runs/[runId]/route.js +1 -1
  73. package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
  74. package/.next/server/app/api/verification/runs/route.js +1 -1
  75. package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
  76. package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
  78. package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/api/worktrees/[id]/cli-reference/route.js +1 -1
  80. package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
  81. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
  82. package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
  83. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +1 -1
  84. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
  85. package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/worktrees/[id]/env/route.js +1 -1
  87. package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js +1 -1
  89. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +1 -1
  91. package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
  94. package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
  96. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/api/worktrees/[id]/git/branches/route.js +1 -1
  98. package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
  100. package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
  102. package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/worktrees/[id]/git/diff/route.js +1 -1
  104. package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
  106. package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
  107. package/.next/server/app/api/worktrees/[id]/git/log/route.js +1 -1
  108. package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
  109. package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
  110. package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
  112. package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
  113. package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
  114. package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
  116. package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
  117. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js +1 -1
  118. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
  119. package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
  120. package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
  121. package/.next/server/app/api/worktrees/[id]/git/staged/route.js +1 -1
  122. package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
  123. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js +1 -1
  124. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
  125. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
  126. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
  128. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
  129. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
  130. package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
  131. package/.next/server/app/api/worktrees/[id]/git/stash/route.js +1 -1
  132. package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
  133. package/.next/server/app/api/worktrees/[id]/git/status/route.js +1 -1
  134. package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
  135. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
  136. package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js +1 -1
  138. package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
  139. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js +1 -0
  140. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js.nft.json +1 -0
  141. package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
  143. package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
  144. package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
  145. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js +1 -1
  146. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/api/worktrees/[id]/logs/route.js +1 -1
  148. package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
  149. package/.next/server/app/api/worktrees/[id]/marp-render/route.js +1 -1
  150. package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
  151. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
  152. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
  153. package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
  154. package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
  155. package/.next/server/app/api/worktrees/[id]/messages/route.js +1 -1
  156. package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
  157. package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js +1 -1
  158. package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
  159. package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
  160. package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
  161. package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/api/worktrees/[id]/resolve-target/route.js +1 -1
  163. package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
  164. package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
  166. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +1 -1
  167. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +1 -1
  169. package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
  170. package/.next/server/app/api/worktrees/[id]/schedules/route.js +1 -1
  171. package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
  172. package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
  173. package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
  174. package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
  175. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
  176. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
  177. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
  178. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
  179. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
  181. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
  182. package/.next/server/app/api/worktrees/[id]/skills/route.js +1 -1
  183. package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
  184. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
  185. package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
  186. package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
  187. package/.next/server/app/api/worktrees/[id]/tasks/route.js +1 -1
  188. package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
  189. package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
  190. package/.next/server/app/api/worktrees/[id]/timers/history/route.js +1 -1
  191. package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
  192. package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
  193. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js +1 -1
  194. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  195. package/.next/server/app/api/worktrees/[id]/todos/route.js +1 -1
  196. package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
  197. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
  198. package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
  199. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
  200. package/.next/server/app/api/worktrees/[id]/verify/config/route.js +1 -1
  201. package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
  202. package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
  203. package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
  204. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
  205. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
  206. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js +1 -1
  207. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
  208. package/.next/server/app/api/worktrees/[id]/verify/runs/route.js +1 -1
  209. package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
  210. package/.next/server/app/api/worktrees/[id]/viewed/route.js +1 -1
  211. package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
  212. package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
  213. package/.next/server/app/api/worktrees/route.js +1 -1
  214. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  215. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  216. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  217. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  218. package/.next/server/app/more/page_client-reference-manifest.js +1 -1
  219. package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  220. package/.next/server/app/page.js +1 -1
  221. package/.next/server/app/page_client-reference-manifest.js +1 -1
  222. package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
  223. package/.next/server/app/repositories/page.js +1 -1
  224. package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
  225. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  226. package/.next/server/app/sessions/page.js +1 -1
  227. package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  228. package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
  229. package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
  230. package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  231. package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
  232. package/.next/server/app/worktrees/[id]/page.js +12 -12
  233. package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
  234. package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
  235. package/.next/server/app-paths-manifest.json +39 -38
  236. package/.next/server/chunks/1191.js +1 -1
  237. package/.next/server/chunks/1886.js +2 -2
  238. package/.next/server/chunks/2119.js +1 -1
  239. package/.next/server/chunks/2445.js +1 -1
  240. package/.next/server/chunks/5354.js +1 -1
  241. package/.next/server/chunks/6337.js +1 -1
  242. package/.next/server/chunks/6401.js +1 -1
  243. package/.next/server/chunks/6661.js +1 -1
  244. package/.next/server/chunks/6838.js +1 -1
  245. package/.next/server/chunks/7875.js +1 -1
  246. package/.next/server/chunks/8807.js +163 -131
  247. package/.next/server/chunks/8918.js +4 -4
  248. package/.next/server/chunks/9584.js +1 -1
  249. package/.next/server/middleware-manifest.json +5 -5
  250. package/.next/server/pages/500.html +1 -1
  251. package/.next/server/server-reference-manifest.json +1 -1
  252. package/.next/static/chunks/{4718-9d63107c612a065d.js → 4718-2bc5cdf06573bf54.js} +1 -1
  253. package/.next/static/chunks/app/api/agents/{versions/route-8bc5b680c5f3eae4.js → update/route-c4d2d5016c5f2a0a.js} +1 -1
  254. package/.next/static/chunks/app/api/{app/update-check/route-8bc5b680c5f3eae4.js → agents/versions/route-c4d2d5016c5f2a0a.js} +1 -1
  255. package/.next/static/chunks/app/api/{agents/update/route-8bc5b680c5f3eae4.js → app/update/route-c4d2d5016c5f2a0a.js} +1 -1
  256. package/.next/static/chunks/app/api/app/{update/route-8bc5b680c5f3eae4.js → update-check/route-c4d2d5016c5f2a0a.js} +1 -1
  257. package/.next/static/chunks/app/api/assistant/conversation/route-c4d2d5016c5f2a0a.js +1 -0
  258. package/.next/static/chunks/app/api/assistant/current-output/route-c4d2d5016c5f2a0a.js +1 -0
  259. package/.next/static/chunks/app/api/assistant/messages/route-c4d2d5016c5f2a0a.js +1 -0
  260. package/.next/static/chunks/app/api/assistant/session/route-c4d2d5016c5f2a0a.js +1 -0
  261. package/.next/static/chunks/app/api/assistant/start/route-c4d2d5016c5f2a0a.js +1 -0
  262. package/.next/static/chunks/app/api/assistant/terminal/route-c4d2d5016c5f2a0a.js +1 -0
  263. package/.next/static/chunks/app/api/assistant/tools/route-c4d2d5016c5f2a0a.js +1 -0
  264. package/.next/static/chunks/app/api/auth/login/route-c4d2d5016c5f2a0a.js +1 -0
  265. package/.next/static/chunks/app/api/auth/logout/route-c4d2d5016c5f2a0a.js +1 -0
  266. package/.next/static/chunks/app/api/auth/status/route-c4d2d5016c5f2a0a.js +1 -0
  267. package/.next/static/chunks/app/api/capabilities/route-c4d2d5016c5f2a0a.js +1 -0
  268. package/.next/static/chunks/app/api/daily-summary/route-c4d2d5016c5f2a0a.js +1 -0
  269. package/.next/static/chunks/app/api/daily-summary/status/route-c4d2d5016c5f2a0a.js +1 -0
  270. package/.next/static/chunks/app/api/external-apps/[id]/health/route-c4d2d5016c5f2a0a.js +1 -0
  271. package/.next/static/chunks/app/api/external-apps/[id]/route-c4d2d5016c5f2a0a.js +1 -0
  272. package/.next/static/chunks/app/api/external-apps/route-c4d2d5016c5f2a0a.js +1 -0
  273. package/.next/static/chunks/app/api/fs/browse/route-c4d2d5016c5f2a0a.js +1 -0
  274. package/.next/static/chunks/app/api/fs/recent-paths/route-c4d2d5016c5f2a0a.js +1 -0
  275. package/.next/static/chunks/app/api/hooks/agent-event/route-c4d2d5016c5f2a0a.js +1 -0
  276. package/.next/static/chunks/app/api/hooks/claude-done/route-c4d2d5016c5f2a0a.js +1 -0
  277. package/.next/static/chunks/app/api/hooks/permission-request/route-c4d2d5016c5f2a0a.js +1 -0
  278. package/.next/static/chunks/app/api/metrics/vibe/route-c4d2d5016c5f2a0a.js +1 -0
  279. package/.next/static/chunks/app/api/ollama/models/route-c4d2d5016c5f2a0a.js +1 -0
  280. package/.next/static/chunks/app/api/push/escalation/route-c4d2d5016c5f2a0a.js +1 -0
  281. package/.next/static/chunks/app/api/push/subscriptions/route-c4d2d5016c5f2a0a.js +1 -0
  282. package/.next/static/chunks/app/api/push/vapid/route-c4d2d5016c5f2a0a.js +1 -0
  283. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-c4d2d5016c5f2a0a.js +1 -0
  284. package/.next/static/chunks/app/api/relays/route-c4d2d5016c5f2a0a.js +1 -0
  285. package/.next/static/chunks/app/api/remote/pair/route-c4d2d5016c5f2a0a.js +1 -0
  286. package/.next/static/chunks/app/api/repositories/[id]/route-c4d2d5016c5f2a0a.js +1 -0
  287. package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-c4d2d5016c5f2a0a.js +1 -0
  288. package/.next/static/chunks/app/api/repositories/[id]/todos/route-c4d2d5016c5f2a0a.js +1 -0
  289. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-c4d2d5016c5f2a0a.js +1 -0
  290. package/.next/static/chunks/app/api/repositories/clone/route-c4d2d5016c5f2a0a.js +1 -0
  291. package/.next/static/chunks/app/api/repositories/excluded/route-c4d2d5016c5f2a0a.js +1 -0
  292. package/.next/static/chunks/app/api/repositories/restore/route-c4d2d5016c5f2a0a.js +1 -0
  293. package/.next/static/chunks/app/api/repositories/route-c4d2d5016c5f2a0a.js +1 -0
  294. package/.next/static/chunks/app/api/repositories/scan/route-c4d2d5016c5f2a0a.js +1 -0
  295. package/.next/static/chunks/app/api/repositories/sync/route-c4d2d5016c5f2a0a.js +1 -0
  296. package/.next/static/chunks/app/api/repositories/validate-path/route-c4d2d5016c5f2a0a.js +1 -0
  297. package/.next/static/chunks/app/api/settings/default-agents/route-c4d2d5016c5f2a0a.js +1 -0
  298. package/.next/static/chunks/app/api/settings/default-surface-mode/route-c4d2d5016c5f2a0a.js +1 -0
  299. package/.next/static/chunks/app/api/sidebar/group-order/route-c4d2d5016c5f2a0a.js +1 -0
  300. package/.next/static/chunks/app/api/skills/[id]/route-c4d2d5016c5f2a0a.js +1 -0
  301. package/.next/static/chunks/app/api/skills/installations/route-c4d2d5016c5f2a0a.js +1 -0
  302. package/.next/static/chunks/app/api/skills/operations/route-c4d2d5016c5f2a0a.js +1 -0
  303. package/.next/static/chunks/app/api/skills/reindex/route-c4d2d5016c5f2a0a.js +1 -0
  304. package/.next/static/chunks/app/api/skills/route-c4d2d5016c5f2a0a.js +1 -0
  305. package/.next/static/chunks/app/api/slash-commands/route-c4d2d5016c5f2a0a.js +1 -0
  306. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-c4d2d5016c5f2a0a.js +1 -0
  307. package/.next/static/chunks/app/api/tasks/[taskId]/route-c4d2d5016c5f2a0a.js +1 -0
  308. package/.next/static/chunks/app/api/templates/[id]/route-c4d2d5016c5f2a0a.js +1 -0
  309. package/.next/static/chunks/app/api/templates/route-c4d2d5016c5f2a0a.js +1 -0
  310. package/.next/static/chunks/app/api/todos/route-c4d2d5016c5f2a0a.js +1 -0
  311. package/.next/static/chunks/app/api/verification/runs/[runId]/route-c4d2d5016c5f2a0a.js +1 -0
  312. package/.next/static/chunks/app/api/verification/runs/route-c4d2d5016c5f2a0a.js +1 -0
  313. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-c4d2d5016c5f2a0a.js +1 -0
  314. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-c4d2d5016c5f2a0a.js +1 -0
  315. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-c4d2d5016c5f2a0a.js +1 -0
  316. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-c4d2d5016c5f2a0a.js +1 -0
  317. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-c4d2d5016c5f2a0a.js +1 -0
  318. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-c4d2d5016c5f2a0a.js +1 -0
  319. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-c4d2d5016c5f2a0a.js +1 -0
  320. package/.next/static/chunks/app/api/worktrees/[id]/env/route-c4d2d5016c5f2a0a.js +1 -0
  321. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-c4d2d5016c5f2a0a.js +1 -0
  322. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-c4d2d5016c5f2a0a.js +1 -0
  323. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-c4d2d5016c5f2a0a.js +1 -0
  324. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-c4d2d5016c5f2a0a.js +1 -0
  325. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-c4d2d5016c5f2a0a.js +1 -0
  326. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-c4d2d5016c5f2a0a.js +1 -0
  327. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-c4d2d5016c5f2a0a.js +1 -0
  328. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-c4d2d5016c5f2a0a.js +1 -0
  329. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-c4d2d5016c5f2a0a.js +1 -0
  330. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-c4d2d5016c5f2a0a.js +1 -0
  331. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-c4d2d5016c5f2a0a.js +1 -0
  332. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-c4d2d5016c5f2a0a.js +1 -0
  333. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-c4d2d5016c5f2a0a.js +1 -0
  334. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-c4d2d5016c5f2a0a.js +1 -0
  335. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-c4d2d5016c5f2a0a.js +1 -0
  336. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-c4d2d5016c5f2a0a.js +1 -0
  337. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-c4d2d5016c5f2a0a.js +1 -0
  338. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-c4d2d5016c5f2a0a.js +1 -0
  339. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-c4d2d5016c5f2a0a.js +1 -0
  340. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-c4d2d5016c5f2a0a.js +1 -0
  341. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-c4d2d5016c5f2a0a.js +1 -0
  342. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-c4d2d5016c5f2a0a.js +1 -0
  343. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-c4d2d5016c5f2a0a.js +1 -0
  344. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-c4d2d5016c5f2a0a.js +1 -0
  345. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-c4d2d5016c5f2a0a.js +1 -0
  346. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-c4d2d5016c5f2a0a.js +1 -0
  347. package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-c4d2d5016c5f2a0a.js +1 -0
  348. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-c4d2d5016c5f2a0a.js +1 -0
  349. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-c4d2d5016c5f2a0a.js +1 -0
  350. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-c4d2d5016c5f2a0a.js +1 -0
  351. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-c4d2d5016c5f2a0a.js +1 -0
  352. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-c4d2d5016c5f2a0a.js +1 -0
  353. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-c4d2d5016c5f2a0a.js +1 -0
  354. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-c4d2d5016c5f2a0a.js +1 -0
  355. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-c4d2d5016c5f2a0a.js +1 -0
  356. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-c4d2d5016c5f2a0a.js +1 -0
  357. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-c4d2d5016c5f2a0a.js +1 -0
  358. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-c4d2d5016c5f2a0a.js +1 -0
  359. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-c4d2d5016c5f2a0a.js +1 -0
  360. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-c4d2d5016c5f2a0a.js +1 -0
  361. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-c4d2d5016c5f2a0a.js +1 -0
  362. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-c4d2d5016c5f2a0a.js +1 -0
  363. package/.next/static/chunks/app/api/worktrees/[id]/route-c4d2d5016c5f2a0a.js +1 -0
  364. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-c4d2d5016c5f2a0a.js +1 -0
  365. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-c4d2d5016c5f2a0a.js +1 -0
  366. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-c4d2d5016c5f2a0a.js +1 -0
  367. package/.next/static/chunks/app/api/worktrees/[id]/search/route-c4d2d5016c5f2a0a.js +1 -0
  368. package/.next/static/chunks/app/api/worktrees/[id]/send/route-c4d2d5016c5f2a0a.js +1 -0
  369. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-c4d2d5016c5f2a0a.js +1 -0
  370. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-c4d2d5016c5f2a0a.js +1 -0
  371. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-c4d2d5016c5f2a0a.js +1 -0
  372. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-c4d2d5016c5f2a0a.js +1 -0
  373. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-c4d2d5016c5f2a0a.js +1 -0
  374. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-c4d2d5016c5f2a0a.js +1 -0
  375. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-c4d2d5016c5f2a0a.js +1 -0
  376. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-c4d2d5016c5f2a0a.js +1 -0
  377. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-c4d2d5016c5f2a0a.js +1 -0
  378. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-c4d2d5016c5f2a0a.js +1 -0
  379. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-c4d2d5016c5f2a0a.js +1 -0
  380. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-c4d2d5016c5f2a0a.js +1 -0
  381. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-c4d2d5016c5f2a0a.js +1 -0
  382. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-c4d2d5016c5f2a0a.js +1 -0
  383. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-c4d2d5016c5f2a0a.js +1 -0
  384. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-c4d2d5016c5f2a0a.js +1 -0
  385. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-c4d2d5016c5f2a0a.js +1 -0
  386. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-c4d2d5016c5f2a0a.js +1 -0
  387. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-c4d2d5016c5f2a0a.js +1 -0
  388. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-c4d2d5016c5f2a0a.js +1 -0
  389. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-c4d2d5016c5f2a0a.js +1 -0
  390. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-c4d2d5016c5f2a0a.js +1 -0
  391. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-c4d2d5016c5f2a0a.js +1 -0
  392. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-c4d2d5016c5f2a0a.js +1 -0
  393. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-c4d2d5016c5f2a0a.js +1 -0
  394. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-c4d2d5016c5f2a0a.js +1 -0
  395. package/.next/static/chunks/app/api/worktrees/route-c4d2d5016c5f2a0a.js +1 -0
  396. package/.next/static/chunks/app/manifest.webmanifest/route-c4d2d5016c5f2a0a.js +1 -0
  397. package/.next/static/chunks/app/{page-6871cca022b24807.js → page-022090bf6f932818.js} +1 -1
  398. package/.next/static/chunks/app/proxy/[...path]/route-c4d2d5016c5f2a0a.js +1 -0
  399. package/.next/static/chunks/app/repositories/{page-788ded1b72963d94.js → page-2576158c8420fda0.js} +1 -1
  400. package/.next/static/chunks/app/sessions/page-584adf11ae51df10.js +1 -0
  401. package/.next/static/chunks/app/worktrees/[id]/layout-c4d2d5016c5f2a0a.js +1 -0
  402. package/.next/static/chunks/app/worktrees/[id]/page-13ca0ba551fe5cfb.js +1 -0
  403. package/.next/static/css/acd46e25427a2080.css +1 -0
  404. package/.next/trace +14 -13
  405. package/.next/types/app/api/worktrees/[id]/instances/notes/route.ts +347 -0
  406. package/.next/types/routes.d.ts +2 -1
  407. package/.next/types/validator.ts +9 -0
  408. package/dist/server/locales/en/worktree.json +8 -0
  409. package/dist/server/locales/ja/worktree.json +8 -0
  410. package/dist/server/src/lib/cli-tools/base.js +311 -1
  411. package/dist/server/src/lib/cli-tools/start-availability.js +52 -0
  412. package/dist/server/src/lib/db/agent-instances-db.js +213 -1
  413. package/dist/server/src/lib/db/migrations/index.js +2 -0
  414. package/dist/server/src/lib/db/migrations/runner.js +1 -1
  415. package/dist/server/src/lib/db/migrations/v61-session-notes.js +85 -0
  416. package/dist/server/src/lib/hooks/sources/codex/transcript.js +88 -6
  417. package/dist/server/src/lib/hooks/sources/turn-body.js +3 -1
  418. package/dist/server/src/lib/push/failure-push-notifier.js +68 -1
  419. package/dist/server/src/lib/push/push-sender.js +16 -5
  420. package/dist/server/src/lib/session/current-output-builder.js +156 -4
  421. package/package.json +1 -1
  422. package/.next/static/chunks/app/api/assistant/conversation/route-8bc5b680c5f3eae4.js +0 -1
  423. package/.next/static/chunks/app/api/assistant/current-output/route-8bc5b680c5f3eae4.js +0 -1
  424. package/.next/static/chunks/app/api/assistant/messages/route-8bc5b680c5f3eae4.js +0 -1
  425. package/.next/static/chunks/app/api/assistant/session/route-8bc5b680c5f3eae4.js +0 -1
  426. package/.next/static/chunks/app/api/assistant/start/route-8bc5b680c5f3eae4.js +0 -1
  427. package/.next/static/chunks/app/api/assistant/terminal/route-8bc5b680c5f3eae4.js +0 -1
  428. package/.next/static/chunks/app/api/assistant/tools/route-8bc5b680c5f3eae4.js +0 -1
  429. package/.next/static/chunks/app/api/auth/login/route-8bc5b680c5f3eae4.js +0 -1
  430. package/.next/static/chunks/app/api/auth/logout/route-8bc5b680c5f3eae4.js +0 -1
  431. package/.next/static/chunks/app/api/auth/status/route-8bc5b680c5f3eae4.js +0 -1
  432. package/.next/static/chunks/app/api/capabilities/route-8bc5b680c5f3eae4.js +0 -1
  433. package/.next/static/chunks/app/api/daily-summary/route-8bc5b680c5f3eae4.js +0 -1
  434. package/.next/static/chunks/app/api/daily-summary/status/route-8bc5b680c5f3eae4.js +0 -1
  435. package/.next/static/chunks/app/api/external-apps/[id]/health/route-8bc5b680c5f3eae4.js +0 -1
  436. package/.next/static/chunks/app/api/external-apps/[id]/route-8bc5b680c5f3eae4.js +0 -1
  437. package/.next/static/chunks/app/api/external-apps/route-8bc5b680c5f3eae4.js +0 -1
  438. package/.next/static/chunks/app/api/fs/browse/route-8bc5b680c5f3eae4.js +0 -1
  439. package/.next/static/chunks/app/api/fs/recent-paths/route-8bc5b680c5f3eae4.js +0 -1
  440. package/.next/static/chunks/app/api/hooks/agent-event/route-8bc5b680c5f3eae4.js +0 -1
  441. package/.next/static/chunks/app/api/hooks/claude-done/route-8bc5b680c5f3eae4.js +0 -1
  442. package/.next/static/chunks/app/api/hooks/permission-request/route-8bc5b680c5f3eae4.js +0 -1
  443. package/.next/static/chunks/app/api/metrics/vibe/route-8bc5b680c5f3eae4.js +0 -1
  444. package/.next/static/chunks/app/api/ollama/models/route-8bc5b680c5f3eae4.js +0 -1
  445. package/.next/static/chunks/app/api/push/escalation/route-8bc5b680c5f3eae4.js +0 -1
  446. package/.next/static/chunks/app/api/push/subscriptions/route-8bc5b680c5f3eae4.js +0 -1
  447. package/.next/static/chunks/app/api/push/vapid/route-8bc5b680c5f3eae4.js +0 -1
  448. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-8bc5b680c5f3eae4.js +0 -1
  449. package/.next/static/chunks/app/api/relays/route-8bc5b680c5f3eae4.js +0 -1
  450. package/.next/static/chunks/app/api/remote/pair/route-8bc5b680c5f3eae4.js +0 -1
  451. package/.next/static/chunks/app/api/repositories/[id]/route-8bc5b680c5f3eae4.js +0 -1
  452. package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-8bc5b680c5f3eae4.js +0 -1
  453. package/.next/static/chunks/app/api/repositories/[id]/todos/route-8bc5b680c5f3eae4.js +0 -1
  454. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-8bc5b680c5f3eae4.js +0 -1
  455. package/.next/static/chunks/app/api/repositories/clone/route-8bc5b680c5f3eae4.js +0 -1
  456. package/.next/static/chunks/app/api/repositories/excluded/route-8bc5b680c5f3eae4.js +0 -1
  457. package/.next/static/chunks/app/api/repositories/restore/route-8bc5b680c5f3eae4.js +0 -1
  458. package/.next/static/chunks/app/api/repositories/route-8bc5b680c5f3eae4.js +0 -1
  459. package/.next/static/chunks/app/api/repositories/scan/route-8bc5b680c5f3eae4.js +0 -1
  460. package/.next/static/chunks/app/api/repositories/sync/route-8bc5b680c5f3eae4.js +0 -1
  461. package/.next/static/chunks/app/api/repositories/validate-path/route-8bc5b680c5f3eae4.js +0 -1
  462. package/.next/static/chunks/app/api/settings/default-agents/route-8bc5b680c5f3eae4.js +0 -1
  463. package/.next/static/chunks/app/api/settings/default-surface-mode/route-8bc5b680c5f3eae4.js +0 -1
  464. package/.next/static/chunks/app/api/sidebar/group-order/route-8bc5b680c5f3eae4.js +0 -1
  465. package/.next/static/chunks/app/api/skills/[id]/route-8bc5b680c5f3eae4.js +0 -1
  466. package/.next/static/chunks/app/api/skills/installations/route-8bc5b680c5f3eae4.js +0 -1
  467. package/.next/static/chunks/app/api/skills/operations/route-8bc5b680c5f3eae4.js +0 -1
  468. package/.next/static/chunks/app/api/skills/reindex/route-8bc5b680c5f3eae4.js +0 -1
  469. package/.next/static/chunks/app/api/skills/route-8bc5b680c5f3eae4.js +0 -1
  470. package/.next/static/chunks/app/api/slash-commands/route-8bc5b680c5f3eae4.js +0 -1
  471. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-8bc5b680c5f3eae4.js +0 -1
  472. package/.next/static/chunks/app/api/tasks/[taskId]/route-8bc5b680c5f3eae4.js +0 -1
  473. package/.next/static/chunks/app/api/templates/[id]/route-8bc5b680c5f3eae4.js +0 -1
  474. package/.next/static/chunks/app/api/templates/route-8bc5b680c5f3eae4.js +0 -1
  475. package/.next/static/chunks/app/api/todos/route-8bc5b680c5f3eae4.js +0 -1
  476. package/.next/static/chunks/app/api/verification/runs/[runId]/route-8bc5b680c5f3eae4.js +0 -1
  477. package/.next/static/chunks/app/api/verification/runs/route-8bc5b680c5f3eae4.js +0 -1
  478. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-8bc5b680c5f3eae4.js +0 -1
  479. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-8bc5b680c5f3eae4.js +0 -1
  480. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-8bc5b680c5f3eae4.js +0 -1
  481. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-8bc5b680c5f3eae4.js +0 -1
  482. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-8bc5b680c5f3eae4.js +0 -1
  483. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-8bc5b680c5f3eae4.js +0 -1
  484. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-8bc5b680c5f3eae4.js +0 -1
  485. package/.next/static/chunks/app/api/worktrees/[id]/env/route-8bc5b680c5f3eae4.js +0 -1
  486. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-8bc5b680c5f3eae4.js +0 -1
  487. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-8bc5b680c5f3eae4.js +0 -1
  488. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-8bc5b680c5f3eae4.js +0 -1
  489. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-8bc5b680c5f3eae4.js +0 -1
  490. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-8bc5b680c5f3eae4.js +0 -1
  491. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-8bc5b680c5f3eae4.js +0 -1
  492. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-8bc5b680c5f3eae4.js +0 -1
  493. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-8bc5b680c5f3eae4.js +0 -1
  494. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-8bc5b680c5f3eae4.js +0 -1
  495. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-8bc5b680c5f3eae4.js +0 -1
  496. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-8bc5b680c5f3eae4.js +0 -1
  497. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-8bc5b680c5f3eae4.js +0 -1
  498. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-8bc5b680c5f3eae4.js +0 -1
  499. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-8bc5b680c5f3eae4.js +0 -1
  500. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-8bc5b680c5f3eae4.js +0 -1
  501. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-8bc5b680c5f3eae4.js +0 -1
  502. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-8bc5b680c5f3eae4.js +0 -1
  503. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-8bc5b680c5f3eae4.js +0 -1
  504. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-8bc5b680c5f3eae4.js +0 -1
  505. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-8bc5b680c5f3eae4.js +0 -1
  506. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-8bc5b680c5f3eae4.js +0 -1
  507. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-8bc5b680c5f3eae4.js +0 -1
  508. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-8bc5b680c5f3eae4.js +0 -1
  509. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-8bc5b680c5f3eae4.js +0 -1
  510. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-8bc5b680c5f3eae4.js +0 -1
  511. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-8bc5b680c5f3eae4.js +0 -1
  512. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-8bc5b680c5f3eae4.js +0 -1
  513. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-8bc5b680c5f3eae4.js +0 -1
  514. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-8bc5b680c5f3eae4.js +0 -1
  515. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-8bc5b680c5f3eae4.js +0 -1
  516. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-8bc5b680c5f3eae4.js +0 -1
  517. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-8bc5b680c5f3eae4.js +0 -1
  518. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-8bc5b680c5f3eae4.js +0 -1
  519. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-8bc5b680c5f3eae4.js +0 -1
  520. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-8bc5b680c5f3eae4.js +0 -1
  521. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-8bc5b680c5f3eae4.js +0 -1
  522. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-8bc5b680c5f3eae4.js +0 -1
  523. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-8bc5b680c5f3eae4.js +0 -1
  524. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-8bc5b680c5f3eae4.js +0 -1
  525. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-8bc5b680c5f3eae4.js +0 -1
  526. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-8bc5b680c5f3eae4.js +0 -1
  527. package/.next/static/chunks/app/api/worktrees/[id]/route-8bc5b680c5f3eae4.js +0 -1
  528. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-8bc5b680c5f3eae4.js +0 -1
  529. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-8bc5b680c5f3eae4.js +0 -1
  530. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-8bc5b680c5f3eae4.js +0 -1
  531. package/.next/static/chunks/app/api/worktrees/[id]/search/route-8bc5b680c5f3eae4.js +0 -1
  532. package/.next/static/chunks/app/api/worktrees/[id]/send/route-8bc5b680c5f3eae4.js +0 -1
  533. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-8bc5b680c5f3eae4.js +0 -1
  534. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-8bc5b680c5f3eae4.js +0 -1
  535. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-8bc5b680c5f3eae4.js +0 -1
  536. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-8bc5b680c5f3eae4.js +0 -1
  537. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-8bc5b680c5f3eae4.js +0 -1
  538. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-8bc5b680c5f3eae4.js +0 -1
  539. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-8bc5b680c5f3eae4.js +0 -1
  540. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-8bc5b680c5f3eae4.js +0 -1
  541. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-8bc5b680c5f3eae4.js +0 -1
  542. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-8bc5b680c5f3eae4.js +0 -1
  543. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-8bc5b680c5f3eae4.js +0 -1
  544. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-8bc5b680c5f3eae4.js +0 -1
  545. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-8bc5b680c5f3eae4.js +0 -1
  546. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-8bc5b680c5f3eae4.js +0 -1
  547. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-8bc5b680c5f3eae4.js +0 -1
  548. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-8bc5b680c5f3eae4.js +0 -1
  549. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-8bc5b680c5f3eae4.js +0 -1
  550. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-8bc5b680c5f3eae4.js +0 -1
  551. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-8bc5b680c5f3eae4.js +0 -1
  552. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-8bc5b680c5f3eae4.js +0 -1
  553. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-8bc5b680c5f3eae4.js +0 -1
  554. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-8bc5b680c5f3eae4.js +0 -1
  555. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-8bc5b680c5f3eae4.js +0 -1
  556. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-8bc5b680c5f3eae4.js +0 -1
  557. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-8bc5b680c5f3eae4.js +0 -1
  558. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-8bc5b680c5f3eae4.js +0 -1
  559. package/.next/static/chunks/app/api/worktrees/route-8bc5b680c5f3eae4.js +0 -1
  560. package/.next/static/chunks/app/manifest.webmanifest/route-8bc5b680c5f3eae4.js +0 -1
  561. package/.next/static/chunks/app/proxy/[...path]/route-8bc5b680c5f3eae4.js +0 -1
  562. package/.next/static/chunks/app/sessions/page-fa2d62f3e8436c69.js +0 -1
  563. package/.next/static/chunks/app/worktrees/[id]/layout-8bc5b680c5f3eae4.js +0 -1
  564. package/.next/static/chunks/app/worktrees/[id]/page-3d82a9355d5612d9.js +0 -1
  565. package/.next/static/css/96d94a4ba771efc3.css +0 -1
  566. /package/.next/static/{Lno4w_zWXdGdlfXg06Vp8 → 9lgw9hA727UMyFhXryGWG}/_buildManifest.js +0 -0
  567. /package/.next/static/{Lno4w_zWXdGdlfXg06Vp8 → 9lgw9hA727UMyFhXryGWG}/_ssgManifest.js +0 -0
@@ -1,4 +1,153 @@
1
- "use strict";exports.id=8807,exports.ids=[8807],exports.modules={23718:(a,b,c)=>{c.d(b,{a1:()=>j,ko:()=>i});var d=c(55511),e=c(33873),f=c.n(e);function g(a){return a.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")}let h="worktree";function i(a,b=[]){let c=b instanceof Set?b:new Set(b),e=g(f().basename(a))||h;if(!c.has(e))return e;let j=(0,d.createHash)("sha256").update(a).digest("hex");for(let a=8;a<=j.length;a+=8){let b=`${e}-${j.slice(0,a)}`;if(!c.has(b))return b}for(let a=2;;a++){let b=`${e}-${j}-${a}`;if(!c.has(b))return b}}function j(a,b){if(!a)return!1;let c=g(f().basename(b))||h;if(a===c)return!0;if(!a.startsWith(`${c}-`))return!1;let e=a.slice(c.length+1),i=(0,d.createHash)("sha256").update(b).digest("hex");return!!(e.length>0&&e.length%8==0&&e.length<=i.length&&i.startsWith(e))||/^-[0-9]+$/.test(e.slice(i.length))&&e.startsWith(i)}},28037:(a,b,c)=>{c.d(b,{FT:()=>f,Mj:()=>g,PS:()=>h,Wy:()=>ab,vI:()=>aa,i6:()=>i});var d=c(33873),e=c.n(d);let f=60;function g(a){try{let b=a.prepare("SELECT MAX(version) as version FROM schema_version").get();return b?.version??0}catch{return 0}}function h(a){try{return a.prepare(`
1
+ "use strict";exports.id=8807,exports.ids=[8807],exports.modules={23718:(a,b,c)=>{c.d(b,{a1:()=>j,ko:()=>i});var d=c(55511),e=c(33873),f=c.n(e);function g(a){return a.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")}let h="worktree";function i(a,b=[]){let c=b instanceof Set?b:new Set(b),e=g(f().basename(a))||h;if(!c.has(e))return e;let j=(0,d.createHash)("sha256").update(a).digest("hex");for(let a=8;a<=j.length;a+=8){let b=`${e}-${j.slice(0,a)}`;if(!c.has(b))return b}for(let a=2;;a++){let b=`${e}-${j}-${a}`;if(!c.has(b))return b}}function j(a,b){if(!a)return!1;let c=g(f().basename(b))||h;if(a===c)return!0;if(!a.startsWith(`${c}-`))return!1;let e=a.slice(c.length+1),i=(0,d.createHash)("sha256").update(b).digest("hex");return!!(e.length>0&&e.length%8==0&&e.length<=i.length&&i.startsWith(e))||/^-[0-9]+$/.test(e.slice(i.length))&&e.startsWith(i)}},28274:(a,b,c)=>{c.d(b,{AC:()=>f,BN:()=>k,Cs:()=>n,NU:()=>p,Oe:()=>q,Uq:()=>o,YN:()=>r,bK:()=>v,ds:()=>t,fs:()=>m,m0:()=>j,pq:()=>w,sB:()=>l,ug:()=>g,w$:()=>s,w_:()=>u});var d=c(79827),e=c(15194);class f extends Error{constructor(a,b=e.Ab){super(`Worktree ${a} cannot have more than ${b} agent instances`),this.name="AgentInstanceLimitError"}}class g extends Error{constructor(a){super(a),this.name="InvalidAgentInstanceError"}}function h(a){let b=a.cli_tool_id,c=a.alias&&a.alias.length>0?a.alias:(0,e.hR)(a.cli_tool_id)?(0,e.oo)(b):a.cli_tool_id;return{id:a.instance_id,cliTool:b,alias:c,order:a.sort_order}}function i(a){if(!(0,e.n6)(a.id))throw new g(`Invalid instance id: ${String(a.id)}`);if(!(0,e.hR)(a.cliTool))throw new g(`Invalid CLI tool: ${String(a.cliTool)}`);if("string"==typeof a.alias&&a.alias.length>e.pQ)throw new g(`Alias exceeds ${e.pQ} characters`)}function j(a,b){return a.prepare(`
2
+ SELECT worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at
3
+ FROM agent_instances
4
+ WHERE worktree_id = ?
5
+ ORDER BY sort_order ASC, instance_id ASC
6
+ `).all(b).map(h)}function k(a,b,c){let d=a.prepare(`
7
+ SELECT worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at
8
+ FROM agent_instances
9
+ WHERE worktree_id = ? AND instance_id = ?
10
+ `).get(b,c);return d?h(d):null}function l(a,b,c,d){if(!c)return{ok:!0,cliToolId:d??null};let f=k(a,b,c);return f&&(0,e.hR)(f.cliTool)?d&&d!==f.cliTool?{ok:!1,instanceId:c,rosterCliTool:f.cliTool,requestedCliTool:d}:{ok:!0,cliToolId:f.cliTool}:d?{ok:!0,cliToolId:d}:(0,e.hR)(c)?{ok:!0,cliToolId:c}:{ok:!0,cliToolId:null}}function m(a,b){return a.prepare(`
11
+ SELECT COUNT(*) as count FROM agent_instances WHERE worktree_id = ?
12
+ `).get(b).count}function n(a,b,c){if(c.length>e.Ab)throw new f(b);let d=new Set;for(let a of c){if(i(a),d.has(a.id))throw new g(`Duplicate instance id: ${a.id}`);d.add(a.id)}let h=Date.now();a.transaction(()=>{a.prepare("DELETE FROM agent_instances WHERE worktree_id = ?").run(b),function(a,b,c){if(0===c.length)return a.prepare(`
13
+ DELETE FROM opencode_instance_settings WHERE worktree_id = ?
14
+ `).run(b).changes;let d=c.map(()=>"?").join(", ");a.prepare(`
15
+ DELETE FROM opencode_instance_settings
16
+ WHERE worktree_id = ? AND instance_id NOT IN (${d})
17
+ `).run(b,...c).changes}(a,b,c.map(a=>a.id)),function(a,b,c){if(0===c.length)return a.prepare(`
18
+ DELETE FROM session_notes WHERE worktree_id = ?
19
+ `).run(b).changes;let d=c.map(()=>"?").join(", ");a.prepare(`
20
+ DELETE FROM session_notes
21
+ WHERE worktree_id = ? AND instance_id NOT IN (${d})
22
+ `).run(b,...c).changes}(a,b,c.map(a=>a.id));let d=a.prepare(`
23
+ INSERT INTO agent_instances
24
+ (worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at)
25
+ VALUES (?, ?, ?, ?, ?, ?)
26
+ `);c.forEach((a,c)=>{let e=a.alias??"",f=Number.isInteger(a.order)?a.order:c;d.run(b,a.id,a.cliTool,e,f,h)})})()}function o(a,b,c){i(c),a.transaction(()=>{let d=m(a,b);if(d>=e.Ab)throw new f(b);if(k(a,b,c.id))throw new g(`Instance ${c.id} already exists for worktree ${b}`);let h=Number.isInteger(c.order)?c.order:d;a.prepare(`
27
+ INSERT INTO agent_instances
28
+ (worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at)
29
+ VALUES (?, ?, ?, ?, ?, ?)
30
+ `).run(b,c.id,c.cliTool,c.alias??"",h,Date.now())})()}function p(a,b,c){let d=a.prepare(`
31
+ DELETE FROM agent_instances WHERE worktree_id = ? AND instance_id = ?
32
+ `).run(b,c);return a.prepare(`
33
+ DELETE FROM opencode_instance_settings WHERE worktree_id = ? AND instance_id = ?
34
+ `).run(b,c),a.prepare(`
35
+ DELETE FROM session_notes WHERE worktree_id = ? AND instance_id = ?
36
+ `).run(b,c),d.changes>0}function q(a,b){let c=a.prepare(`
37
+ SELECT instance_id, agent, provider_id, model_id, variant
38
+ FROM opencode_instance_settings
39
+ WHERE worktree_id = ?
40
+ `).all(b),e={};for(let a of c)e[a.instance_id]=(0,d.ZH)({agent:a.agent,providerId:a.provider_id,modelId:a.model_id,variant:a.variant});return e}function r(a,b,c,f,h=Date.now()){if(!(0,e.n6)(c))throw new g(`Invalid instance id: ${String(c)}`);let i=(0,d.ZH)(f);return(0,d.Mj)(i)?a.prepare(`
41
+ INSERT INTO opencode_instance_settings
42
+ (worktree_id, instance_id, agent, provider_id, model_id, variant, updated_at)
43
+ VALUES (?, ?, ?, ?, ?, ?, ?)
44
+ ON CONFLICT(worktree_id, instance_id) DO UPDATE SET
45
+ agent = excluded.agent,
46
+ provider_id = excluded.provider_id,
47
+ model_id = excluded.model_id,
48
+ variant = excluded.variant,
49
+ updated_at = excluded.updated_at
50
+ `).run(b,c,i.agent,i.providerId,i.modelId,i.variant,h):a.prepare(`
51
+ DELETE FROM opencode_instance_settings WHERE worktree_id = ? AND instance_id = ?
52
+ `).run(b,c),i}let s=100;class t extends Error{constructor(a=s){super(`Session note exceeds ${a} characters`),this.name="SessionNoteTooLongError"}}function u(a,b){let c=a.prepare(`
53
+ SELECT instance_id, note, updated_at
54
+ FROM session_notes
55
+ WHERE worktree_id = ?
56
+ `).all(b),d={};for(let a of c)d[a.instance_id]={text:a.note,updatedAt:a.updated_at};return d}function v(a){let b=a.prepare(`
57
+ SELECT worktree_id, instance_id, note, updated_at
58
+ FROM session_notes
59
+ `).all(),c={};for(let a of b)(c[a.worktree_id]??(c[a.worktree_id]={}))[a.instance_id]={text:a.note,updatedAt:a.updated_at};return c}function w(a,b,c,d,f=Date.now()){if(!(0,e.n6)(c))throw new g(`Invalid instance id: ${String(c)}`);let h=function(a){if("string"!=typeof a)return"";let b="";for(let c of a){let a=c.codePointAt(0)??0;b+=a<32||127===a?" ":c}return b.replace(/\s+/g," ").trim()}(d);if(Array.from(h).length>s)throw new t;return 0===h.length?(a.prepare(`
60
+ DELETE FROM session_notes WHERE worktree_id = ? AND instance_id = ?
61
+ `).run(b,c),null):(a.prepare(`
62
+ INSERT INTO session_notes (worktree_id, instance_id, note, updated_at)
63
+ VALUES (?, ?, ?, ?)
64
+ ON CONFLICT(worktree_id, instance_id) DO UPDATE SET
65
+ note = excluded.note,
66
+ updated_at = excluded.updated_at
67
+ `).run(b,c,h,f),{text:h,updatedAt:f})}},34129:(a,b,c)=>{c.d(b,{$$:()=>n,CR:()=>h,DP:()=>i,GF:()=>o,Ud:()=>m,Xm:()=>r,_O:()=>k,j2:()=>l,jf:()=>q,kx:()=>j,ul:()=>p});var d=c(55511),e=c(87374);let f="id, worktree_id, cli_tool_id, instance_id, message, delay_ms, scheduled_send_time, status, created_at, sent_at, error";function g(a){return{id:a.id,worktreeId:a.worktree_id,cliToolId:a.cli_tool_id,instanceId:a.instance_id??a.cli_tool_id,message:a.message,delayMs:a.delay_ms,scheduledSendTime:a.scheduled_send_time,status:a.status,createdAt:a.created_at,sentAt:a.sent_at,error:a.error??null}}function h(a,b){let c=(0,d.randomUUID)(),e=Date.now(),f=e+b.delayMs,g=b.instanceId??b.cliToolId;return a.prepare(`
68
+ INSERT INTO timer_messages (id, worktree_id, cli_tool_id, instance_id, message, delay_ms, scheduled_send_time, status, created_at, sent_at)
69
+ VALUES (?, ?, ?, ?, ?, ?, ?, 'pending', ?, NULL)
70
+ `).run(c,b.worktreeId,b.cliToolId,g,b.message,b.delayMs,f,e),{id:c,worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:g,message:b.message,delayMs:b.delayMs,scheduledSendTime:f,status:"pending",createdAt:e,sentAt:null,error:null}}function i(a,b,c){let{before:d,limit:h=e.XS}=c??{},i=`SELECT ${f} FROM timer_messages WHERE worktree_id = ?`,j=[b];return void 0!==d&&(i+=" AND created_at < ?",j.push(d)),i+=" ORDER BY created_at DESC LIMIT ?",j.push(h+1),a.prepare(i).all(...j).map(g)}function j(a,b){let c=a.prepare(`
71
+ SELECT ${f}
72
+ FROM timer_messages
73
+ WHERE id = ?
74
+ `).get(b);return c?g(c):void 0}function k(a){return a.prepare(`
75
+ SELECT ${f}
76
+ FROM timer_messages
77
+ WHERE status = 'pending'
78
+ ORDER BY scheduled_send_time ASC
79
+ `).all().map(g)}function l(a,b,c,d,e){let f=["status = ?"],g=[c];void 0!==d&&(f.push("sent_at = ?"),g.push(d)),void 0!==e&&(f.push("error = ?"),g.push(e)),g.push(b),a.prepare(`UPDATE timer_messages SET ${f.join(", ")} WHERE id = ?`).run(...g)}function m(a,b){return a.prepare(`
80
+ UPDATE timer_messages SET status = 'cancelled' WHERE id = ? AND status = 'pending'
81
+ `).run(b).changes>0}function n(a,b){return a.prepare(`
82
+ UPDATE timer_messages SET status = 'cancelled' WHERE worktree_id = ? AND status = 'pending'
83
+ `).run(b).changes}function o(a,b){return a.prepare(`
84
+ SELECT COUNT(*) as count FROM timer_messages WHERE worktree_id = ? AND status = 'pending'
85
+ `).get(b).count}function p(a,b){let c=Date.now()-24*b*36e5;return a.prepare(`
86
+ DELETE FROM timer_messages
87
+ WHERE status NOT IN ('pending', 'sending')
88
+ AND created_at < ?
89
+ `).run(c).changes}function q(a,b){return a.prepare(`
90
+ DELETE FROM timer_messages
91
+ WHERE worktree_id = ?
92
+ AND status NOT IN ('pending', 'sending')
93
+ `).run(b).changes}function r(a){return a.prepare(`
94
+ UPDATE timer_messages SET status = 'failed', error = ? WHERE status = 'sending'
95
+ `).run("Recovered from a stuck 'sending' state after a server restart.").changes}},43167:(a,b,c)=>{c.d(b,{CF:()=>k,Se:()=>l,VP:()=>g,Zj:()=>o,gn:()=>m,jA:()=>j,jJ:()=>p,rC:()=>n,s6:()=>f,th:()=>q});var d=c(55511);let e={prompt:"enabled_prompt",failure:"enabled_prompt",completion:"enabled_completion"},f={enabledPrompt:!0,enabledCompletion:!1},g=1;function h(a){return{id:a.id,endpoint:a.endpoint,keys:{p256dh:a.p256dh,auth:a.auth},deviceLabel:a.device_label,enabledPrompt:1===a.enabled_prompt,enabledCompletion:1===a.enabled_completion,locale:a.locale,defaultsVersion:a.defaults_version,createdAt:new Date(a.created_at),updatedAt:new Date(a.updated_at)}}let i=`
96
+ id, endpoint, p256dh, auth, device_label,
97
+ enabled_prompt, enabled_completion, locale, defaults_version, created_at, updated_at
98
+ `;function j(a,b){let c=Date.now(),e=b.deviceLabel??null,h=b.locale??null;a.prepare(`
99
+ INSERT INTO push_subscriptions (
100
+ id, endpoint, p256dh, auth, device_label,
101
+ enabled_prompt, enabled_completion, locale, defaults_version, created_at, updated_at
102
+ )
103
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
104
+ ON CONFLICT(endpoint) DO UPDATE SET
105
+ p256dh = excluded.p256dh,
106
+ auth = excluded.auth,
107
+ device_label = excluded.device_label,
108
+ locale = COALESCE(excluded.locale, push_subscriptions.locale),
109
+ updated_at = excluded.updated_at
110
+ `).run((0,d.randomUUID)(),b.endpoint,b.p256dh,b.auth,e,+!!f.enabledPrompt,+!!f.enabledCompletion,h,g,c,c);let i=k(a,b.endpoint);if(!i)throw Error("Failed to persist push subscription");return i}function k(a,b){let c=a.prepare(`SELECT ${i} FROM push_subscriptions WHERE endpoint = ?`).get(b);return c?h(c):null}function l(a){return a.prepare(`SELECT ${i} FROM push_subscriptions ORDER BY created_at ASC`).all().map(h)}function m(a,b){let c=e[b];return a.prepare(`SELECT ${i} FROM push_subscriptions WHERE ${c} = 1 ORDER BY created_at ASC`).all().map(h)}function n(a,b){let c=e[b];return a.prepare(`SELECT COUNT(*) AS total FROM push_subscriptions WHERE ${c} = 1`).get().total}function o(a){return a.defaultsVersion<g}function p(a,b,c){let d=["updated_at = ?"],e=[Date.now()];return void 0!==c.enabledPrompt&&(d.push("enabled_prompt = ?"),e.push(+!!c.enabledPrompt)),void 0!==c.enabledCompletion&&(d.push("enabled_completion = ?"),e.push(+!!c.enabledCompletion)),c.acknowledgeDefaultsNotice&&(d.push("defaults_version = ?"),e.push(g)),e.push(b),a.prepare(`UPDATE push_subscriptions SET ${d.join(", ")} WHERE endpoint = ?`).run(...e),k(a,b)}function q(a,b){return a.prepare("DELETE FROM push_subscriptions WHERE endpoint = ?").run(b).changes>0}},48524:(a,b,c)=>{c.d(b,{EL:()=>g,Hi:()=>e,MH:()=>r,UT:()=>l,Vk:()=>n,Zj:()=>q,__:()=>p,gg:()=>m,sA:()=>f,uB:()=>i,xZ:()=>o});var d=c(55511);let e=["pending","running","waiting_input","verifying","succeeded","failed","not_started","cancelled"],f=["succeeded","failed","not_started","cancelled"],g=["running","waiting_input","verifying"],h=[...g,"failed","not_started"];function i(a){return f.includes(a)}let j=`
111
+ id, worktree_id, cli_tool_id, instance_id, title, goal, contract_path, contract_json,
112
+ status, last_verification_run_id, created_at, updated_at, started_at, finished_at
113
+ `;function k(a){return{id:a.id,worktreeId:a.worktree_id,cliToolId:a.cli_tool_id,instanceId:a.instance_id,title:a.title,goal:a.goal,contractPath:a.contract_path,contract:JSON.parse(a.contract_json),status:a.status,lastVerificationRunId:a.last_verification_run_id,createdAt:new Date(a.created_at),updatedAt:new Date(a.updated_at),startedAt:null===a.started_at?null:new Date(a.started_at),finishedAt:null===a.finished_at?null:new Date(a.finished_at)}}function l(a,b){let c=Date.now(),e=(0,d.randomUUID)(),f=b.status??"pending";a.prepare(`
114
+ INSERT INTO tasks (
115
+ id, worktree_id, cli_tool_id, instance_id, title, goal, contract_path, contract_json,
116
+ status, last_verification_run_id, created_at, updated_at, started_at, finished_at
117
+ )
118
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, ?, ?, ?, NULL)
119
+ `).run(e,b.worktreeId,b.cliToolId,b.instanceId??null,b.contract.title,b.contract.goal,b.contractPath??null,JSON.stringify(b.contract),f,c,c,"pending"===f?null:c);let g=m(a,e);if(!g)throw Error("Failed to persist task");return g}function m(a,b){let c=a.prepare(`SELECT ${j} FROM tasks WHERE id = ?`).get(b);return c?k(c):null}function n(a,b,c=20){return a.prepare(`
120
+ SELECT ${j} FROM tasks
121
+ WHERE worktree_id = ?
122
+ ORDER BY created_at DESC, rowid DESC
123
+ LIMIT ?
124
+ `).all(b,c).map(k)}function o(a,b,c,d={}){let e=Date.now();if(0===a.prepare(`
125
+ UPDATE tasks
126
+ SET status = ?,
127
+ updated_at = ?,
128
+ started_at = CASE WHEN ? = 'pending' THEN started_at ELSE COALESCE(started_at, ?) END,
129
+ finished_at = CASE WHEN ? = 1 THEN ? ELSE finished_at END,
130
+ last_verification_run_id = COALESCE(?, last_verification_run_id)
131
+ WHERE id = ?
132
+ `).run(c,e,c,e,+!!i(c),e,d.lastVerificationRunId??null,b).changes)throw Error(`Task ${b} not found`);return m(a,b)}function p(a,b,c,d){let e=["worktree_id = ?"],f=[b];void 0!==c&&(e.push("cli_tool_id = ?"),f.push(c)),void 0!==d&&(e.push("instance_id = ?"),f.push(d));let h=g.map(()=>"?").join(", "),i=a.prepare(`
133
+ SELECT ${j} FROM tasks
134
+ WHERE ${e.join(" AND ")} AND status IN (${h})
135
+ ORDER BY updated_at DESC, created_at DESC, rowid DESC
136
+ LIMIT 1
137
+ `).get(...f,...g);return i?k(i):null}function q(a,b){let c=h.map(()=>"?").join(", "),d=a.prepare(`
138
+ SELECT ${j} FROM tasks
139
+ WHERE worktree_id = ? AND status IN (${c})
140
+ ORDER BY updated_at DESC, created_at DESC, rowid DESC
141
+ LIMIT 1
142
+ `).get(b,...h);return d?k(d):null}function r(a,b,c,d){let e=d===c,f=g.map(()=>"?").join(", "),h=a.prepare(`
143
+ SELECT ${j} FROM tasks
144
+ WHERE worktree_id = ?
145
+ AND cli_tool_id = ?
146
+ AND (instance_id = ? OR (instance_id IS NULL AND ?))
147
+ AND status IN (${f})
148
+ ORDER BY updated_at DESC, created_at DESC, rowid DESC
149
+ LIMIT 1
150
+ `).get(b,c,d,+!!e,...g);return h?k(h):null}},67469:(a,b,c)=>{c.d(b,{FT:()=>f,Mj:()=>g,PS:()=>h,Wy:()=>ab,vI:()=>aa,i6:()=>i});var d=c(33873),e=c.n(d);let f=61;function g(a){try{let b=a.prepare("SELECT MAX(version) as version FROM schema_version").get();return b?.version??0}catch{return 0}}function h(a){try{return a.prepare(`
2
151
  SELECT version, name, applied_at
3
152
  FROM schema_version
4
153
  ORDER BY version ASC
@@ -1123,7 +1272,17 @@
1123
1272
  `),a.exec(`
1124
1273
  CREATE INDEX IF NOT EXISTS idx_session_relays_open
1125
1274
  ON session_relays(state, expires_at);
1126
- `)},down:a=>{a.exec("DROP TABLE IF EXISTS session_relays;")}}];function aa(a){!function(a,b){a.exec(`
1275
+ `)},down:a=>{a.exec("DROP TABLE IF EXISTS session_relays;")}},{version:61,name:"session-notes",up:a=>{a.exec(`
1276
+ CREATE TABLE IF NOT EXISTS session_notes (
1277
+ worktree_id TEXT NOT NULL,
1278
+ instance_id TEXT NOT NULL,
1279
+ note TEXT NOT NULL,
1280
+ updated_at INTEGER NOT NULL,
1281
+
1282
+ PRIMARY KEY (worktree_id, instance_id),
1283
+ FOREIGN KEY (worktree_id) REFERENCES worktrees(id) ON DELETE CASCADE
1284
+ );
1285
+ `)},down:a=>{a.exec("DROP TABLE IF EXISTS session_notes;")}}];function aa(a){!function(a,b){a.exec(`
1127
1286
  CREATE TABLE IF NOT EXISTS schema_version (
1128
1287
  version INTEGER PRIMARY KEY,
1129
1288
  name TEXT NOT NULL,
@@ -1132,134 +1291,7 @@
1132
1291
  `);let c=g(a);if(console.log(`Current schema version: ${c}`),c>f)throw Error(`This database (schema v${c}) was created by a newer version of CommandMate (this build supports up to v${f}). Please update: commandmate update`);let d=b.filter(a=>a.version>c);if(0===d.length)return console.log("Schema is up to date");for(let b of(console.log(`Found ${d.length} pending migration(s)`),d)){console.log(`Applying migration ${b.version}: ${b.name}...`);try{a.transaction(()=>{b.up(a),a.prepare(`
1133
1292
  INSERT INTO schema_version (version, name, applied_at)
1134
1293
  VALUES (?, ?, ?)
1135
- `).run(b.version,b.name,Date.now())})(),console.log(`Migration ${b.version} applied successfully`)}catch(c){let a=c instanceof Error?c.message:String(c);throw console.error(`Migration ${b.version} failed:`,a),Error(`Migration ${b.version} (${b.name}) failed: ${a}`)}}console.log(`All migrations completed. Current version: ${g(a)}`)}(a,_)}function ab(a,b){!function(a,b,c){let d=g(a);if(c>=d)return console.log("No rollback needed");for(let e of(console.log(`Rolling back from version ${d} to ${c}...`),b.filter(a=>a.version>c&&a.version<=d).sort((a,b)=>b.version-a.version))){if(!e.down)throw Error(`Cannot rollback migration ${e.version} (${e.name}): no down() function defined`);console.log(`Rolling back migration ${e.version}: ${e.name}...`);try{a.transaction(()=>{e.down(a),a.prepare("DELETE FROM schema_version WHERE version = ?").run(e.version)})(),console.log(`Migration ${e.version} rolled back`)}catch(b){let a=b instanceof Error?b.message:String(b);throw console.error(`Rollback ${e.version} failed:`,a),Error(`Rollback of migration ${e.version} failed: ${a}`)}}console.log(`Rollback completed. Current version: ${g(a)}`)}(a,_,b)}},28274:(a,b,c)=>{c.d(b,{AC:()=>f,BN:()=>k,Cs:()=>n,NU:()=>p,Oe:()=>q,Uq:()=>o,YN:()=>r,fs:()=>m,m0:()=>j,sB:()=>l,ug:()=>g});var d=c(79827),e=c(15194);class f extends Error{constructor(a,b=e.Ab){super(`Worktree ${a} cannot have more than ${b} agent instances`),this.name="AgentInstanceLimitError"}}class g extends Error{constructor(a){super(a),this.name="InvalidAgentInstanceError"}}function h(a){let b=a.cli_tool_id,c=a.alias&&a.alias.length>0?a.alias:(0,e.hR)(a.cli_tool_id)?(0,e.oo)(b):a.cli_tool_id;return{id:a.instance_id,cliTool:b,alias:c,order:a.sort_order}}function i(a){if(!(0,e.n6)(a.id))throw new g(`Invalid instance id: ${String(a.id)}`);if(!(0,e.hR)(a.cliTool))throw new g(`Invalid CLI tool: ${String(a.cliTool)}`);if("string"==typeof a.alias&&a.alias.length>e.pQ)throw new g(`Alias exceeds ${e.pQ} characters`)}function j(a,b){return a.prepare(`
1136
- SELECT worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at
1137
- FROM agent_instances
1138
- WHERE worktree_id = ?
1139
- ORDER BY sort_order ASC, instance_id ASC
1140
- `).all(b).map(h)}function k(a,b,c){let d=a.prepare(`
1141
- SELECT worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at
1142
- FROM agent_instances
1143
- WHERE worktree_id = ? AND instance_id = ?
1144
- `).get(b,c);return d?h(d):null}function l(a,b,c,d){if(!c)return{ok:!0,cliToolId:d??null};let f=k(a,b,c);return f&&(0,e.hR)(f.cliTool)?d&&d!==f.cliTool?{ok:!1,instanceId:c,rosterCliTool:f.cliTool,requestedCliTool:d}:{ok:!0,cliToolId:f.cliTool}:d?{ok:!0,cliToolId:d}:(0,e.hR)(c)?{ok:!0,cliToolId:c}:{ok:!0,cliToolId:null}}function m(a,b){return a.prepare(`
1145
- SELECT COUNT(*) as count FROM agent_instances WHERE worktree_id = ?
1146
- `).get(b).count}function n(a,b,c){if(c.length>e.Ab)throw new f(b);let d=new Set;for(let a of c){if(i(a),d.has(a.id))throw new g(`Duplicate instance id: ${a.id}`);d.add(a.id)}let h=Date.now();a.transaction(()=>{a.prepare("DELETE FROM agent_instances WHERE worktree_id = ?").run(b),function(a,b,c){if(0===c.length)return a.prepare(`
1147
- DELETE FROM opencode_instance_settings WHERE worktree_id = ?
1148
- `).run(b).changes;let d=c.map(()=>"?").join(", ");a.prepare(`
1149
- DELETE FROM opencode_instance_settings
1150
- WHERE worktree_id = ? AND instance_id NOT IN (${d})
1151
- `).run(b,...c).changes}(a,b,c.map(a=>a.id));let d=a.prepare(`
1152
- INSERT INTO agent_instances
1153
- (worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at)
1154
- VALUES (?, ?, ?, ?, ?, ?)
1155
- `);c.forEach((a,c)=>{let e=a.alias??"",f=Number.isInteger(a.order)?a.order:c;d.run(b,a.id,a.cliTool,e,f,h)})})()}function o(a,b,c){i(c),a.transaction(()=>{let d=m(a,b);if(d>=e.Ab)throw new f(b);if(k(a,b,c.id))throw new g(`Instance ${c.id} already exists for worktree ${b}`);let h=Number.isInteger(c.order)?c.order:d;a.prepare(`
1156
- INSERT INTO agent_instances
1157
- (worktree_id, instance_id, cli_tool_id, alias, sort_order, created_at)
1158
- VALUES (?, ?, ?, ?, ?, ?)
1159
- `).run(b,c.id,c.cliTool,c.alias??"",h,Date.now())})()}function p(a,b,c){let d=a.prepare(`
1160
- DELETE FROM agent_instances WHERE worktree_id = ? AND instance_id = ?
1161
- `).run(b,c);return a.prepare(`
1162
- DELETE FROM opencode_instance_settings WHERE worktree_id = ? AND instance_id = ?
1163
- `).run(b,c),d.changes>0}function q(a,b){let c=a.prepare(`
1164
- SELECT instance_id, agent, provider_id, model_id, variant
1165
- FROM opencode_instance_settings
1166
- WHERE worktree_id = ?
1167
- `).all(b),e={};for(let a of c)e[a.instance_id]=(0,d.ZH)({agent:a.agent,providerId:a.provider_id,modelId:a.model_id,variant:a.variant});return e}function r(a,b,c,f,h=Date.now()){if(!(0,e.n6)(c))throw new g(`Invalid instance id: ${String(c)}`);let i=(0,d.ZH)(f);return(0,d.Mj)(i)?a.prepare(`
1168
- INSERT INTO opencode_instance_settings
1169
- (worktree_id, instance_id, agent, provider_id, model_id, variant, updated_at)
1170
- VALUES (?, ?, ?, ?, ?, ?, ?)
1171
- ON CONFLICT(worktree_id, instance_id) DO UPDATE SET
1172
- agent = excluded.agent,
1173
- provider_id = excluded.provider_id,
1174
- model_id = excluded.model_id,
1175
- variant = excluded.variant,
1176
- updated_at = excluded.updated_at
1177
- `).run(b,c,i.agent,i.providerId,i.modelId,i.variant,h):a.prepare(`
1178
- DELETE FROM opencode_instance_settings WHERE worktree_id = ? AND instance_id = ?
1179
- `).run(b,c),i}},34129:(a,b,c)=>{c.d(b,{$$:()=>n,CR:()=>h,DP:()=>i,GF:()=>o,Ud:()=>m,Xm:()=>r,_O:()=>k,j2:()=>l,jf:()=>q,kx:()=>j,ul:()=>p});var d=c(55511),e=c(87374);let f="id, worktree_id, cli_tool_id, instance_id, message, delay_ms, scheduled_send_time, status, created_at, sent_at, error";function g(a){return{id:a.id,worktreeId:a.worktree_id,cliToolId:a.cli_tool_id,instanceId:a.instance_id??a.cli_tool_id,message:a.message,delayMs:a.delay_ms,scheduledSendTime:a.scheduled_send_time,status:a.status,createdAt:a.created_at,sentAt:a.sent_at,error:a.error??null}}function h(a,b){let c=(0,d.randomUUID)(),e=Date.now(),f=e+b.delayMs,g=b.instanceId??b.cliToolId;return a.prepare(`
1180
- INSERT INTO timer_messages (id, worktree_id, cli_tool_id, instance_id, message, delay_ms, scheduled_send_time, status, created_at, sent_at)
1181
- VALUES (?, ?, ?, ?, ?, ?, ?, 'pending', ?, NULL)
1182
- `).run(c,b.worktreeId,b.cliToolId,g,b.message,b.delayMs,f,e),{id:c,worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:g,message:b.message,delayMs:b.delayMs,scheduledSendTime:f,status:"pending",createdAt:e,sentAt:null,error:null}}function i(a,b,c){let{before:d,limit:h=e.XS}=c??{},i=`SELECT ${f} FROM timer_messages WHERE worktree_id = ?`,j=[b];return void 0!==d&&(i+=" AND created_at < ?",j.push(d)),i+=" ORDER BY created_at DESC LIMIT ?",j.push(h+1),a.prepare(i).all(...j).map(g)}function j(a,b){let c=a.prepare(`
1183
- SELECT ${f}
1184
- FROM timer_messages
1185
- WHERE id = ?
1186
- `).get(b);return c?g(c):void 0}function k(a){return a.prepare(`
1187
- SELECT ${f}
1188
- FROM timer_messages
1189
- WHERE status = 'pending'
1190
- ORDER BY scheduled_send_time ASC
1191
- `).all().map(g)}function l(a,b,c,d,e){let f=["status = ?"],g=[c];void 0!==d&&(f.push("sent_at = ?"),g.push(d)),void 0!==e&&(f.push("error = ?"),g.push(e)),g.push(b),a.prepare(`UPDATE timer_messages SET ${f.join(", ")} WHERE id = ?`).run(...g)}function m(a,b){return a.prepare(`
1192
- UPDATE timer_messages SET status = 'cancelled' WHERE id = ? AND status = 'pending'
1193
- `).run(b).changes>0}function n(a,b){return a.prepare(`
1194
- UPDATE timer_messages SET status = 'cancelled' WHERE worktree_id = ? AND status = 'pending'
1195
- `).run(b).changes}function o(a,b){return a.prepare(`
1196
- SELECT COUNT(*) as count FROM timer_messages WHERE worktree_id = ? AND status = 'pending'
1197
- `).get(b).count}function p(a,b){let c=Date.now()-24*b*36e5;return a.prepare(`
1198
- DELETE FROM timer_messages
1199
- WHERE status NOT IN ('pending', 'sending')
1200
- AND created_at < ?
1201
- `).run(c).changes}function q(a,b){return a.prepare(`
1202
- DELETE FROM timer_messages
1203
- WHERE worktree_id = ?
1204
- AND status NOT IN ('pending', 'sending')
1205
- `).run(b).changes}function r(a){return a.prepare(`
1206
- UPDATE timer_messages SET status = 'failed', error = ? WHERE status = 'sending'
1207
- `).run("Recovered from a stuck 'sending' state after a server restart.").changes}},43167:(a,b,c)=>{c.d(b,{CF:()=>k,Se:()=>l,VP:()=>g,Zj:()=>o,gn:()=>m,jA:()=>j,jJ:()=>p,rC:()=>n,s6:()=>f,th:()=>q});var d=c(55511);let e={prompt:"enabled_prompt",failure:"enabled_prompt",completion:"enabled_completion"},f={enabledPrompt:!0,enabledCompletion:!1},g=1;function h(a){return{id:a.id,endpoint:a.endpoint,keys:{p256dh:a.p256dh,auth:a.auth},deviceLabel:a.device_label,enabledPrompt:1===a.enabled_prompt,enabledCompletion:1===a.enabled_completion,locale:a.locale,defaultsVersion:a.defaults_version,createdAt:new Date(a.created_at),updatedAt:new Date(a.updated_at)}}let i=`
1208
- id, endpoint, p256dh, auth, device_label,
1209
- enabled_prompt, enabled_completion, locale, defaults_version, created_at, updated_at
1210
- `;function j(a,b){let c=Date.now(),e=b.deviceLabel??null,h=b.locale??null;a.prepare(`
1211
- INSERT INTO push_subscriptions (
1212
- id, endpoint, p256dh, auth, device_label,
1213
- enabled_prompt, enabled_completion, locale, defaults_version, created_at, updated_at
1214
- )
1215
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
1216
- ON CONFLICT(endpoint) DO UPDATE SET
1217
- p256dh = excluded.p256dh,
1218
- auth = excluded.auth,
1219
- device_label = excluded.device_label,
1220
- locale = COALESCE(excluded.locale, push_subscriptions.locale),
1221
- updated_at = excluded.updated_at
1222
- `).run((0,d.randomUUID)(),b.endpoint,b.p256dh,b.auth,e,+!!f.enabledPrompt,+!!f.enabledCompletion,h,g,c,c);let i=k(a,b.endpoint);if(!i)throw Error("Failed to persist push subscription");return i}function k(a,b){let c=a.prepare(`SELECT ${i} FROM push_subscriptions WHERE endpoint = ?`).get(b);return c?h(c):null}function l(a){return a.prepare(`SELECT ${i} FROM push_subscriptions ORDER BY created_at ASC`).all().map(h)}function m(a,b){let c=e[b];return a.prepare(`SELECT ${i} FROM push_subscriptions WHERE ${c} = 1 ORDER BY created_at ASC`).all().map(h)}function n(a,b){let c=e[b];return a.prepare(`SELECT COUNT(*) AS total FROM push_subscriptions WHERE ${c} = 1`).get().total}function o(a){return a.defaultsVersion<g}function p(a,b,c){let d=["updated_at = ?"],e=[Date.now()];return void 0!==c.enabledPrompt&&(d.push("enabled_prompt = ?"),e.push(+!!c.enabledPrompt)),void 0!==c.enabledCompletion&&(d.push("enabled_completion = ?"),e.push(+!!c.enabledCompletion)),c.acknowledgeDefaultsNotice&&(d.push("defaults_version = ?"),e.push(g)),e.push(b),a.prepare(`UPDATE push_subscriptions SET ${d.join(", ")} WHERE endpoint = ?`).run(...e),k(a,b)}function q(a,b){return a.prepare("DELETE FROM push_subscriptions WHERE endpoint = ?").run(b).changes>0}},48524:(a,b,c)=>{c.d(b,{EL:()=>g,Hi:()=>e,MH:()=>r,UT:()=>l,Vk:()=>n,Zj:()=>q,__:()=>p,gg:()=>m,sA:()=>f,uB:()=>i,xZ:()=>o});var d=c(55511);let e=["pending","running","waiting_input","verifying","succeeded","failed","not_started","cancelled"],f=["succeeded","failed","not_started","cancelled"],g=["running","waiting_input","verifying"],h=[...g,"failed","not_started"];function i(a){return f.includes(a)}let j=`
1223
- id, worktree_id, cli_tool_id, instance_id, title, goal, contract_path, contract_json,
1224
- status, last_verification_run_id, created_at, updated_at, started_at, finished_at
1225
- `;function k(a){return{id:a.id,worktreeId:a.worktree_id,cliToolId:a.cli_tool_id,instanceId:a.instance_id,title:a.title,goal:a.goal,contractPath:a.contract_path,contract:JSON.parse(a.contract_json),status:a.status,lastVerificationRunId:a.last_verification_run_id,createdAt:new Date(a.created_at),updatedAt:new Date(a.updated_at),startedAt:null===a.started_at?null:new Date(a.started_at),finishedAt:null===a.finished_at?null:new Date(a.finished_at)}}function l(a,b){let c=Date.now(),e=(0,d.randomUUID)(),f=b.status??"pending";a.prepare(`
1226
- INSERT INTO tasks (
1227
- id, worktree_id, cli_tool_id, instance_id, title, goal, contract_path, contract_json,
1228
- status, last_verification_run_id, created_at, updated_at, started_at, finished_at
1229
- )
1230
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, ?, ?, ?, NULL)
1231
- `).run(e,b.worktreeId,b.cliToolId,b.instanceId??null,b.contract.title,b.contract.goal,b.contractPath??null,JSON.stringify(b.contract),f,c,c,"pending"===f?null:c);let g=m(a,e);if(!g)throw Error("Failed to persist task");return g}function m(a,b){let c=a.prepare(`SELECT ${j} FROM tasks WHERE id = ?`).get(b);return c?k(c):null}function n(a,b,c=20){return a.prepare(`
1232
- SELECT ${j} FROM tasks
1233
- WHERE worktree_id = ?
1234
- ORDER BY created_at DESC, rowid DESC
1235
- LIMIT ?
1236
- `).all(b,c).map(k)}function o(a,b,c,d={}){let e=Date.now();if(0===a.prepare(`
1237
- UPDATE tasks
1238
- SET status = ?,
1239
- updated_at = ?,
1240
- started_at = CASE WHEN ? = 'pending' THEN started_at ELSE COALESCE(started_at, ?) END,
1241
- finished_at = CASE WHEN ? = 1 THEN ? ELSE finished_at END,
1242
- last_verification_run_id = COALESCE(?, last_verification_run_id)
1243
- WHERE id = ?
1244
- `).run(c,e,c,e,+!!i(c),e,d.lastVerificationRunId??null,b).changes)throw Error(`Task ${b} not found`);return m(a,b)}function p(a,b,c,d){let e=["worktree_id = ?"],f=[b];void 0!==c&&(e.push("cli_tool_id = ?"),f.push(c)),void 0!==d&&(e.push("instance_id = ?"),f.push(d));let h=g.map(()=>"?").join(", "),i=a.prepare(`
1245
- SELECT ${j} FROM tasks
1246
- WHERE ${e.join(" AND ")} AND status IN (${h})
1247
- ORDER BY updated_at DESC, created_at DESC, rowid DESC
1248
- LIMIT 1
1249
- `).get(...f,...g);return i?k(i):null}function q(a,b){let c=h.map(()=>"?").join(", "),d=a.prepare(`
1250
- SELECT ${j} FROM tasks
1251
- WHERE worktree_id = ? AND status IN (${c})
1252
- ORDER BY updated_at DESC, created_at DESC, rowid DESC
1253
- LIMIT 1
1254
- `).get(b,...h);return d?k(d):null}function r(a,b,c,d){let e=d===c,f=g.map(()=>"?").join(", "),h=a.prepare(`
1255
- SELECT ${j} FROM tasks
1256
- WHERE worktree_id = ?
1257
- AND cli_tool_id = ?
1258
- AND (instance_id = ? OR (instance_id IS NULL AND ?))
1259
- AND status IN (${f})
1260
- ORDER BY updated_at DESC, created_at DESC, rowid DESC
1261
- LIMIT 1
1262
- `).get(b,c,d,+!!e,...g);return h?k(h):null}},79827:(a,b,c)=>{c.d(b,{Mj:()=>i,ZH:()=>k,gF:()=>h,qQ:()=>m,sw:()=>l});let d=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/,e=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/,f=/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/,g=/^[A-Za-z0-9][A-Za-z0-9._-]{0,31}$/,h=Object.freeze({agent:null,providerId:null,modelId:null,variant:null});function i(a){return!!a&&!!(a.agent||a.providerId||a.modelId||a.variant)}function j(a,b){if("string"!=typeof a)return null;let c=a.trim();return 0===c.length?null:b.test(c)?c:null}function k(a){if("object"!=typeof a||null===a)return{...h};let b=j(a.providerId,e),c=j(a.modelId,f),i=null!==b&&null!==c;return{agent:j(a.agent,d),providerId:i?b:null,modelId:i?c:null,variant:j(a.variant,g)}}function l(a){return a?.providerId&&a.modelId?`${a.providerId}/${a.modelId}`:null}let m={connected:!1,providers:[],agents:[]}},87009:(a,b,c)=>{function d(a){return{id:a.id,taskId:a.task_id,event:a.event,fromStatus:a.from_status,toStatus:a.to_status,payload:null===a.payload_json?null:JSON.parse(a.payload_json),createdAt:new Date(a.created_at)}}function e(a,b){let c=void 0===b.payload||0===Object.keys(b.payload).length?null:JSON.stringify(b.payload);return Number(a.prepare(`
1294
+ `).run(b.version,b.name,Date.now())})(),console.log(`Migration ${b.version} applied successfully`)}catch(c){let a=c instanceof Error?c.message:String(c);throw console.error(`Migration ${b.version} failed:`,a),Error(`Migration ${b.version} (${b.name}) failed: ${a}`)}}console.log(`All migrations completed. Current version: ${g(a)}`)}(a,_)}function ab(a,b){!function(a,b,c){let d=g(a);if(c>=d)return console.log("No rollback needed");for(let e of(console.log(`Rolling back from version ${d} to ${c}...`),b.filter(a=>a.version>c&&a.version<=d).sort((a,b)=>b.version-a.version))){if(!e.down)throw Error(`Cannot rollback migration ${e.version} (${e.name}): no down() function defined`);console.log(`Rolling back migration ${e.version}: ${e.name}...`);try{a.transaction(()=>{e.down(a),a.prepare("DELETE FROM schema_version WHERE version = ?").run(e.version)})(),console.log(`Migration ${e.version} rolled back`)}catch(b){let a=b instanceof Error?b.message:String(b);throw console.error(`Rollback ${e.version} failed:`,a),Error(`Rollback of migration ${e.version} failed: ${a}`)}}console.log(`Rollback completed. Current version: ${g(a)}`)}(a,_,b)}},79827:(a,b,c)=>{c.d(b,{Mj:()=>i,ZH:()=>k,gF:()=>h,qQ:()=>m,sw:()=>l});let d=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/,e=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/,f=/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/,g=/^[A-Za-z0-9][A-Za-z0-9._-]{0,31}$/,h=Object.freeze({agent:null,providerId:null,modelId:null,variant:null});function i(a){return!!a&&!!(a.agent||a.providerId||a.modelId||a.variant)}function j(a,b){if("string"!=typeof a)return null;let c=a.trim();return 0===c.length?null:b.test(c)?c:null}function k(a){if("object"!=typeof a||null===a)return{...h};let b=j(a.providerId,e),c=j(a.modelId,f),i=null!==b&&null!==c;return{agent:j(a.agent,d),providerId:i?b:null,modelId:i?c:null,variant:j(a.variant,g)}}function l(a){return a?.providerId&&a.modelId?`${a.providerId}/${a.modelId}`:null}let m={connected:!1,providers:[],agents:[]}},87009:(a,b,c)=>{function d(a){return{id:a.id,taskId:a.task_id,event:a.event,fromStatus:a.from_status,toStatus:a.to_status,payload:null===a.payload_json?null:JSON.parse(a.payload_json),createdAt:new Date(a.created_at)}}function e(a,b){let c=void 0===b.payload||0===Object.keys(b.payload).length?null:JSON.stringify(b.payload);return Number(a.prepare(`
1263
1295
  INSERT INTO task_events (task_id, event, from_status, to_status, payload_json, created_at)
1264
1296
  VALUES (?, ?, ?, ?, ?, ?)
1265
1297
  `).run(b.taskId,b.event,b.fromStatus,b.toStatus,c,b.createdAt).lastInsertRowid)}function f(a,b,c=200){return a.prepare(`
@@ -1268,7 +1300,7 @@
1268
1300
  WHERE task_id = ?
1269
1301
  ORDER BY created_at ASC, id ASC
1270
1302
  LIMIT ?
1271
- `).all(b,c).map(d)}c.d(b,{H:()=>f,P:()=>e})},87374:(a,b,c)=>{c.d(b,{Dr:()=>i,HR:()=>h,Ky:()=>f,XS:()=>e,ms:()=>g,u8:()=>d}),Array.from({length:Math.floor(104)+1},(a,b)=>3e5+3e5*b);let d=5,e=50,f=100,g=1e4,h={PENDING:"pending",SENDING:"sending",SENT:"sent",FAILED:"failed",CANCELLED:"cancelled",NO_SESSION:"no_session"};function i(a){return"number"==typeof a&&a>=3e5&&a<=315e5&&a%3e5==0}},88807:(a,b,c)=>{c.r(b),c.d(b,{closeDbInstance:()=>q,getDbInstance:()=>p});var d=c(33873),e=c.n(d),f=c(28037),g=c(79646),h=c(87550),i=c.n(h);let j=!1;function k(a){return a instanceof Error&&"ERR_DLOPEN_FAILED"===a.code&&a.message.includes("NODE_MODULE_VERSION")}function l(a,b){let c=["better-sqlite3 could not be loaded: it was built for a different Node.js version.","This usually happens after switching Node.js versions (nvm, fnm, Homebrew, ...).","",`Automatic recovery failed: ${a}`,"","How to fix it manually:"];return b?c.push(" The install directory is not writable by the current user, so the addon"," cannot be rebuilt in place. Do not re-run this with sudo — root-owned"," files there will break future installs and updates.",""," Either switch back to the Node.js version CommandMate was installed with:",` node -v (currently ${process.version}, NODE_MODULE_VERSION ${process.versions.modules})`,""," Or reinstall CommandMate under a Node.js version manager, which keeps"," global packages in a user-owned directory:"," nvm use <version> && npm install -g commandmate"):c.push(` 1. cd ${process.cwd()}`," 2. npm rebuild better-sqlite3"," 3. Start CommandMate again",""," If that fails, reinstalling picks up the current Node.js version:"," npm install -g commandmate"),c.join("\n")}var m=c(93636),n=c(87447);let o=null;function p(){if(!o){let a=(0,n._$)().CM_DB_PATH,b=c(29021),d=e().dirname(a);b.existsSync(d)||b.mkdirSync(d,{recursive:!0,mode:448});let h=function(a){try{return new(i())(a)}catch(c){if(!k(c))throw c;if(j)throw Error(l("a rebuild was already attempted in this process.",!1));j=!0,console.error("[commandmate] better-sqlite3 was built for a different Node.js version.\n[commandmate] Rebuilding it automatically — this can take a few minutes...");let b=function(){let a=(0,g.spawnSync)("npm",["rebuild","better-sqlite3"],{cwd:process.cwd(),encoding:"utf-8",timeout:3e5,env:{...process.env,PATH:`${e().dirname(process.execPath)}${e().delimiter}${process.env.PATH??""}`}}),b=`${a.stdout??""}${a.stderr??""}`;return a.error||0!==a.status?{success:!1,permissionDenied:/EACCES|permission denied/i.test(b),output:b}:{success:!0,permissionDenied:!1,output:b}}();if(!b.success)throw Error(l("npm rebuild better-sqlite3 failed.",b.permissionDenied));console.error("[commandmate] Rebuild succeeded. Continuing startup.");try{return new(i())(a)}catch(a){if(k(a))throw Error(l("the addon still reports a version mismatch after rebuilding.",!1));throw a}}}(a);h.pragma("foreign_keys = ON"),h.pragma("journal_mode = WAL"),h.pragma("busy_timeout = 5000");try{(0,f.vI)(h)}catch(a){throw h.close(),a}o=h,(0,m.fe)(h)}return o}function q(){o&&((0,m.zZ)(),o.close(),o=null)}},90444:(a,b,c)=>{function d(a){a.exec(`
1303
+ `).all(b,c).map(d)}c.d(b,{H:()=>f,P:()=>e})},87374:(a,b,c)=>{c.d(b,{Dr:()=>i,HR:()=>h,Ky:()=>f,XS:()=>e,ms:()=>g,u8:()=>d}),Array.from({length:Math.floor(104)+1},(a,b)=>3e5+3e5*b);let d=5,e=50,f=100,g=1e4,h={PENDING:"pending",SENDING:"sending",SENT:"sent",FAILED:"failed",CANCELLED:"cancelled",NO_SESSION:"no_session"};function i(a){return"number"==typeof a&&a>=3e5&&a<=315e5&&a%3e5==0}},88807:(a,b,c)=>{c.r(b),c.d(b,{closeDbInstance:()=>q,getDbInstance:()=>p});var d=c(33873),e=c.n(d),f=c(67469),g=c(79646),h=c(87550),i=c.n(h);let j=!1;function k(a){return a instanceof Error&&"ERR_DLOPEN_FAILED"===a.code&&a.message.includes("NODE_MODULE_VERSION")}function l(a,b){let c=["better-sqlite3 could not be loaded: it was built for a different Node.js version.","This usually happens after switching Node.js versions (nvm, fnm, Homebrew, ...).","",`Automatic recovery failed: ${a}`,"","How to fix it manually:"];return b?c.push(" The install directory is not writable by the current user, so the addon"," cannot be rebuilt in place. Do not re-run this with sudo — root-owned"," files there will break future installs and updates.",""," Either switch back to the Node.js version CommandMate was installed with:",` node -v (currently ${process.version}, NODE_MODULE_VERSION ${process.versions.modules})`,""," Or reinstall CommandMate under a Node.js version manager, which keeps"," global packages in a user-owned directory:"," nvm use <version> && npm install -g commandmate"):c.push(` 1. cd ${process.cwd()}`," 2. npm rebuild better-sqlite3"," 3. Start CommandMate again",""," If that fails, reinstalling picks up the current Node.js version:"," npm install -g commandmate"),c.join("\n")}var m=c(93636),n=c(87447);let o=null;function p(){if(!o){let a=(0,n._$)().CM_DB_PATH,b=c(29021),d=e().dirname(a);b.existsSync(d)||b.mkdirSync(d,{recursive:!0,mode:448});let h=function(a){try{return new(i())(a)}catch(c){if(!k(c))throw c;if(j)throw Error(l("a rebuild was already attempted in this process.",!1));j=!0,console.error("[commandmate] better-sqlite3 was built for a different Node.js version.\n[commandmate] Rebuilding it automatically — this can take a few minutes...");let b=function(){let a=(0,g.spawnSync)("npm",["rebuild","better-sqlite3"],{cwd:process.cwd(),encoding:"utf-8",timeout:3e5,env:{...process.env,PATH:`${e().dirname(process.execPath)}${e().delimiter}${process.env.PATH??""}`}}),b=`${a.stdout??""}${a.stderr??""}`;return a.error||0!==a.status?{success:!1,permissionDenied:/EACCES|permission denied/i.test(b),output:b}:{success:!0,permissionDenied:!1,output:b}}();if(!b.success)throw Error(l("npm rebuild better-sqlite3 failed.",b.permissionDenied));console.error("[commandmate] Rebuild succeeded. Continuing startup.");try{return new(i())(a)}catch(a){if(k(a))throw Error(l("the addon still reports a version mismatch after rebuilding.",!1));throw a}}}(a);h.pragma("foreign_keys = ON"),h.pragma("journal_mode = WAL"),h.pragma("busy_timeout = 5000");try{(0,f.vI)(h)}catch(a){throw h.close(),a}o=h,(0,m.fe)(h)}return o}function q(){o&&((0,m.zZ)(),o.close(),o=null)}},90444:(a,b,c)=>{function d(a){a.exec(`
1272
1304
  CREATE TABLE IF NOT EXISTS worktrees (
1273
1305
  id TEXT PRIMARY KEY,
1274
1306
  name TEXT NOT NULL,