agentroam-runtime-darwin-arm64 0.2.0-preview.46 → 0.2.0-preview.48

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 (208) hide show
  1. package/manifest.json +1 -1
  2. package/package.json +1 -1
  3. package/runtime/.next/BUILD_ID +1 -1
  4. package/runtime/.next/app-build-manifest.json +8 -8
  5. package/runtime/.next/app-path-routes-manifest.json +1 -1
  6. package/runtime/.next/build-manifest.json +5 -5
  7. package/runtime/.next/prerender-manifest.json +1 -1
  8. package/runtime/.next/required-server-files.json +1 -1
  9. package/runtime/.next/server/app/_not-found/page.js +1 -1
  10. package/runtime/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/runtime/.next/server/app/_not-found.html +1 -1
  12. package/runtime/.next/server/app/_not-found.rsc +1 -1
  13. package/runtime/.next/server/app/api/agent/abort/route.js +1 -1
  14. package/runtime/.next/server/app/api/agent/answer/route.js +1 -1
  15. package/runtime/.next/server/app/api/agent/codex-sharing/route.js +1 -0
  16. package/runtime/.next/server/app/api/agent/codex-sharing/route.js.nft.json +1 -0
  17. package/runtime/.next/server/app/api/agent/harness/status/route.js +1 -1
  18. package/runtime/.next/server/app/api/agent/model/route.js +1 -1
  19. package/runtime/.next/server/app/api/agent/models/route.js +1 -1
  20. package/runtime/.next/server/app/api/agent/run/route.js +2 -2
  21. package/runtime/.next/server/app/api/agent/runtime-health/route.js +1 -1
  22. package/runtime/.next/server/app/api/agent/steer/route.js +1 -1
  23. package/runtime/.next/server/app/api/agent/stream/route.js +3 -3
  24. package/runtime/.next/server/app/api/agent-workspaces/[workspaceId]/sessions/route.js +1 -1
  25. package/runtime/.next/server/app/api/agent-workspaces/route.js +1 -1
  26. package/runtime/.next/server/app/api/auth/verify/route.js +1 -1
  27. package/runtime/.next/server/app/api/business/route.js +1 -1
  28. package/runtime/.next/server/app/api/client-logs/route.js +1 -1
  29. package/runtime/.next/server/app/api/collaboration/route.js +1 -1
  30. package/runtime/.next/server/app/api/flow/v1/catalog/route.js +1 -1
  31. package/runtime/.next/server/app/api/flow/v1/runs/[runId]/cancel/route.js +1 -1
  32. package/runtime/.next/server/app/api/flow/v1/runs/[runId]/events/route.js +2 -2
  33. package/runtime/.next/server/app/api/flow/v1/runs/route.js +1 -1
  34. package/runtime/.next/server/app/api/flow-studio/config/route.js +1 -1
  35. package/runtime/.next/server/app/api/mcp/connect/route.js +1 -1
  36. package/runtime/.next/server/app/api/mcp/disconnect/route.js +1 -1
  37. package/runtime/.next/server/app/api/mcp/servers/route.js +1 -1
  38. package/runtime/.next/server/app/api/memory/[key]/route.js +1 -1
  39. package/runtime/.next/server/app/api/memory/route.js +1 -1
  40. package/runtime/.next/server/app/api/plugins/load/route.js +1 -1
  41. package/runtime/.next/server/app/api/projects/[id]/route.js +1 -1
  42. package/runtime/.next/server/app/api/projects/check/route.js +1 -1
  43. package/runtime/.next/server/app/api/projects/directories/route.js +1 -1
  44. package/runtime/.next/server/app/api/projects/roots/route.js +1 -1
  45. package/runtime/.next/server/app/api/projects/route.js +1 -1
  46. package/runtime/.next/server/app/api/push/subscribe/route.js +2 -2
  47. package/runtime/.next/server/app/api/push/unsubscribe/route.js +2 -2
  48. package/runtime/.next/server/app/api/push/vapid/route.js +2 -2
  49. package/runtime/.next/server/app/api/push/vapid.body +1 -1
  50. package/runtime/.next/server/app/api/remote-tools/register/route.js +1 -1
  51. package/runtime/.next/server/app/api/sessions/[id]/changes/route.js +2 -2
  52. package/runtime/.next/server/app/api/sessions/[id]/fork/route.js +1 -1
  53. package/runtime/.next/server/app/api/sessions/[id]/fork-at/route.js +1 -1
  54. package/runtime/.next/server/app/api/sessions/[id]/goals/route.js +1 -1
  55. package/runtime/.next/server/app/api/sessions/[id]/handoff/route.js +1 -1
  56. package/runtime/.next/server/app/api/sessions/[id]/native-goal/route.js +1 -1
  57. package/runtime/.next/server/app/api/sessions/[id]/query-index/route.js +1 -1
  58. package/runtime/.next/server/app/api/sessions/[id]/release/route.js +1 -1
  59. package/runtime/.next/server/app/api/sessions/[id]/route.js +1 -1
  60. package/runtime/.next/server/app/api/sessions/[id]/thread-goal/route.js +1 -1
  61. package/runtime/.next/server/app/api/sessions/[id]/tool-result/route.js +1 -1
  62. package/runtime/.next/server/app/api/sessions/route.js +1 -1
  63. package/runtime/.next/server/app/api/settings/route.js +1 -1
  64. package/runtime/.next/server/app/api/skills/route.js +1 -1
  65. package/runtime/.next/server/app/api/tool-policies/[policyId]/route.js +1 -1
  66. package/runtime/.next/server/app/api/tool-policies/route.js +1 -1
  67. package/runtime/.next/server/app/api/tools/route.js +1 -1
  68. package/runtime/.next/server/app/api/update/check/route.js +1 -1
  69. package/runtime/.next/server/app/api/update/install/route.js +1 -1
  70. package/runtime/.next/server/app/api/update/status/route.js +1 -1
  71. package/runtime/.next/server/app/api/web-auth/login/route.js +1 -1
  72. package/runtime/.next/server/app/api/web-auth/logout/route.js +1 -1
  73. package/runtime/.next/server/app/api/web-auth/revoke-all/route.js +1 -1
  74. package/runtime/.next/server/app/api/web-auth/setup/route.js +1 -1
  75. package/runtime/.next/server/app/api/web-auth/status/route.js +1 -1
  76. package/runtime/.next/server/app/api/web-console/bootstrap/route.js +1 -1
  77. package/runtime/.next/server/app/api/web-console/computer-settings/route.js +1 -1
  78. package/runtime/.next/server/app/api/web-console/computers/route.js +1 -0
  79. package/runtime/.next/server/app/api/web-console/computers/route.js.nft.json +1 -0
  80. package/runtime/.next/server/app/api/web-console/device-state/route.js +1 -1
  81. package/runtime/.next/server/app/api/web-console/history/route.js +1 -1
  82. package/runtime/.next/server/app/api/web-console/preferences/route.js +1 -1
  83. package/runtime/.next/server/app/web/page.js +18 -3
  84. package/runtime/.next/server/app/web/page_client-reference-manifest.js +1 -1
  85. package/runtime/.next/server/app-paths-manifest.json +34 -32
  86. package/runtime/.next/server/chunks/1322.js +92 -79
  87. package/runtime/.next/server/chunks/1773.js +51 -51
  88. package/runtime/.next/server/chunks/5303.js +2 -2
  89. package/runtime/.next/server/middleware-build-manifest.js +1 -1
  90. package/runtime/.next/server/pages/404.html +1 -1
  91. package/runtime/.next/server/pages/500.html +1 -1
  92. package/runtime/.next/server/server-reference-manifest.json +1 -1
  93. package/runtime/.next/static/chunks/app/web/{error-ea9738345723fb6c.js → error-c66f2c3664e334c6.js} +1 -1
  94. package/runtime/.next/static/chunks/app/web/layout-6382c87cac6de8d3.js +1 -0
  95. package/runtime/.next/static/chunks/app/web/page-3c2c3c087cadf41d.js +1 -0
  96. package/runtime/.next/static/chunks/{main-e716527431f6ee7e.js → main-0de4062ff39c4193.js} +1 -1
  97. package/runtime/.next/static/chunks/main-app-03cbfb0621bc469a.js +1 -0
  98. package/runtime/node_modules/.package-lock.json +126 -136
  99. package/runtime/node_modules/@agent/core/dist/index.js +66 -1
  100. package/runtime/node_modules/@agent/native-runtime/dist/index.js +27 -10
  101. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/bridge.mjs +78 -74
  102. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/browser-sdk.js +88 -98
  103. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/core-3fs8zete.mjs +35 -0
  104. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/core-5kpyasem.mjs +52 -0
  105. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/core.mjs +13 -13
  106. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/manifest.json +19 -20
  107. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/manifest.zst.json +23 -24
  108. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/package.json +12 -12
  109. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs +74 -67
  110. package/runtime/node_modules/sanitize-html/index.js +47 -10
  111. package/runtime/node_modules/sanitize-html/package.json +2 -3
  112. package/runtime/package-lock.json +159 -169
  113. package/runtime/server.js +1 -1
  114. package/runtime/webapp/dist/assets/App-w6e9nZ-Q.js +266 -0
  115. package/runtime/webapp/dist/assets/{BrowserLivePanel-f4VBnSRL.js → BrowserLivePanel-DEuXJ4vq.js} +1 -1
  116. package/runtime/webapp/dist/assets/{CollaborationDashboard-BcPj80K3.js → CollaborationDashboard-CijhO-vK.js} +1 -1
  117. package/runtime/webapp/dist/assets/CollaborationPage-Bg8j3u9c.js +31 -0
  118. package/runtime/webapp/dist/assets/{RemoteDesktopPage-CUTGrno3.js → RemoteDesktopPage-Cq9ApzsP.js} +1 -1
  119. package/runtime/webapp/dist/assets/{abnfDiagram-VCTEODGH-CobaiK9H.js → abnfDiagram-VCTEODGH-CB1fNkHO.js} +1 -1
  120. package/runtime/webapp/dist/assets/{arc-DvaTZ6-W.js → arc-DZuN4ixE.js} +1 -1
  121. package/runtime/webapp/dist/assets/{architectureDiagram-5GKGNRK7-SSn3B2Q4.js → architectureDiagram-5GKGNRK7-Csigcp2o.js} +1 -1
  122. package/runtime/webapp/dist/assets/{blockDiagram-I7D4REHJ-BSg6DXBP.js → blockDiagram-I7D4REHJ-BdsljUN8.js} +1 -1
  123. package/runtime/webapp/dist/assets/{c4Diagram-7LVT6UL2-VPX0N-V0.js → c4Diagram-7LVT6UL2-BNQhbN8R.js} +1 -1
  124. package/runtime/webapp/dist/assets/channel-DwbF84Ym.js +1 -0
  125. package/runtime/webapp/dist/assets/{chevron-down-XE2oQBd4.js → chevron-down-CysQ4M-3.js} +1 -1
  126. package/runtime/webapp/dist/assets/{chunk-2Q5K7J3B-BtlfOuc0.js → chunk-2Q5K7J3B-CIB6uwBd.js} +1 -1
  127. package/runtime/webapp/dist/assets/{chunk-5VM5RSS4-BF9yQJzd.js → chunk-5VM5RSS4-DG-dAGBX.js} +1 -1
  128. package/runtime/webapp/dist/assets/{chunk-F27PBJKO-pf-egmEh.js → chunk-F27PBJKO-Cz4FYtWI.js} +1 -1
  129. package/runtime/webapp/dist/assets/{chunk-IMKFNOWR-BfR5_VVQ.js → chunk-IMKFNOWR-Bk387_M1.js} +1 -1
  130. package/runtime/webapp/dist/assets/{chunk-JWPE2WC7-DbTyTFNP.js → chunk-JWPE2WC7-D1buI7qd.js} +1 -1
  131. package/runtime/webapp/dist/assets/{chunk-POPQ4Y6H-BT6_juZY.js → chunk-POPQ4Y6H-l81_q9Km.js} +1 -1
  132. package/runtime/webapp/dist/assets/{chunk-SVP7TREG-DY2tKcFY.js → chunk-SVP7TREG-2n3fQ3px.js} +1 -1
  133. package/runtime/webapp/dist/assets/{chunk-TICWLB2K-BPVO6ABs.js → chunk-TICWLB2K-NC_W5srW.js} +1 -1
  134. package/runtime/webapp/dist/assets/{chunk-XXDRQBXY-BBJZ1QYv.js → chunk-XXDRQBXY-Bn5fCkOc.js} +1 -1
  135. package/runtime/webapp/dist/assets/classDiagram-ZZMXUADV-DgDtTQpP.js +1 -0
  136. package/runtime/webapp/dist/assets/classDiagram-v2-VYDZK3BY-DgDtTQpP.js +1 -0
  137. package/runtime/webapp/dist/assets/{codeSyntax-xRnBffPx.js → codeSyntax-D9B2mCsG.js} +1 -1
  138. package/runtime/webapp/dist/assets/collaboration-C85istc_.css +1 -0
  139. package/runtime/webapp/dist/assets/{collaboration-Cs05dFqf.js → collaboration-D6LevPPr.js} +1 -1
  140. package/runtime/webapp/dist/assets/{cose-bilkent-JH36ORCC-ClSfa8QG.js → cose-bilkent-JH36ORCC-BczBbE9_.js} +1 -1
  141. package/runtime/webapp/dist/assets/{cynefin-OW5HDTMX-eaqJ1hh9.js → cynefin-OW5HDTMX-BtTRes43.js} +1 -1
  142. package/runtime/webapp/dist/assets/{cynefinDiagram-5FMLGOSQ-D6LCoxky.js → cynefinDiagram-5FMLGOSQ-DZPPcnLM.js} +1 -1
  143. package/runtime/webapp/dist/assets/{dagre-GXQ25YYZ-Dfhd14zz.js → dagre-GXQ25YYZ-D4Q4z3Tp.js} +1 -1
  144. package/runtime/webapp/dist/assets/{diagram-S7CK7UJ4-DJ-IP_47.js → diagram-S7CK7UJ4-Dq_78DD9.js} +1 -1
  145. package/runtime/webapp/dist/assets/{diagram-UQ7AKVKN-EGouAPlg.js → diagram-UQ7AKVKN-Df0rXRcJ.js} +1 -1
  146. package/runtime/webapp/dist/assets/{diagram-VSXAHHWV-Bs-OO7VR.js → diagram-VSXAHHWV-Dm580wSN.js} +1 -1
  147. package/runtime/webapp/dist/assets/{diagram-VX7I27RA-jZrRtFaX.js → diagram-VX7I27RA-RE2fdUPo.js} +1 -1
  148. package/runtime/webapp/dist/assets/{diagram-Z3DM3KII-Dh4qa87O.js → diagram-Z3DM3KII-DJaYB2on.js} +1 -1
  149. package/runtime/webapp/dist/assets/{ebnfDiagram-PWID7BFC-Erzm8SS4.js → ebnfDiagram-PWID7BFC-4yKff59X.js} +1 -1
  150. package/runtime/webapp/dist/assets/{erDiagram-RLTQ6QDP-Bm8taJK2.js → erDiagram-RLTQ6QDP-7Yc4S5JM.js} +1 -1
  151. package/runtime/webapp/dist/assets/{flowDiagram-HODETNUW-BreC9BhS.js → flowDiagram-HODETNUW-ArlsM9r6.js} +1 -1
  152. package/runtime/webapp/dist/assets/{ganttDiagram-EL5Y4UJY-BvRJ1YUF.js → ganttDiagram-EL5Y4UJY-Dvvo__aq.js} +1 -1
  153. package/runtime/webapp/dist/assets/{gitGraphDiagram-WWUBYQGX-CbQP1MtW.js → gitGraphDiagram-WWUBYQGX-DKj9atxo.js} +1 -1
  154. package/runtime/webapp/dist/assets/{index-Dix4bjYG.js → index-FmZ6gYce.js} +3 -3
  155. package/runtime/webapp/dist/assets/{infoDiagram-27XIBGKW-Rykgl8_a.js → infoDiagram-27XIBGKW-DA1CNgP1.js} +1 -1
  156. package/runtime/webapp/dist/assets/{ishikawaDiagram-5VMMS53U-sC8ufaqI.js → ishikawaDiagram-5VMMS53U-Bzz8x4Zy.js} +1 -1
  157. package/runtime/webapp/dist/assets/{journeyDiagram-3NMN7TZE-CNijGKux.js → journeyDiagram-3NMN7TZE-Y3BH_n1g.js} +1 -1
  158. package/runtime/webapp/dist/assets/{kanban-definition-UXKFOSKX-DBKMClh0.js → kanban-definition-UXKFOSKX-DS1Ve58t.js} +1 -1
  159. package/runtime/webapp/dist/assets/{layout-DS0bzI4O.js → layout-CfOWc3sQ.js} +1 -1
  160. package/runtime/webapp/dist/assets/{linear-DZevSj2n.js → linear-DkUd48rz.js} +1 -1
  161. package/runtime/webapp/dist/assets/{loader-circle-DFr0GIMV.js → loader-circle-dsSVZMYq.js} +1 -1
  162. package/runtime/webapp/dist/assets/{mermaid.core-DENHPAAp.js → mermaid.core-CddJhkVB.js} +5 -5
  163. package/runtime/webapp/dist/assets/{mindmap-definition-YA3MSWOX-CJCDUcbT.js → mindmap-definition-YA3MSWOX-DXx99HkU.js} +1 -1
  164. package/runtime/webapp/dist/assets/{pegDiagram-XKGWAZYB-BLX-5i4p.js → pegDiagram-XKGWAZYB-BwMLZ0tL.js} +1 -1
  165. package/runtime/webapp/dist/assets/{pieDiagram-E7YTZNPT-BIqAJdyz.js → pieDiagram-E7YTZNPT-C8gUFc23.js} +1 -1
  166. package/runtime/webapp/dist/assets/{quadrantDiagram-AXDQQJYC-DieNVnKe.js → quadrantDiagram-AXDQQJYC-C-PtyMFL.js} +1 -1
  167. package/runtime/webapp/dist/assets/{railroadDiagram-O6MQD6OU-BPiX7LAR.js → railroadDiagram-O6MQD6OU-nslThfxz.js} +1 -1
  168. package/runtime/webapp/dist/assets/{requirementDiagram-BXWQKSXE-DUc0NLZ6.js → requirementDiagram-BXWQKSXE-if0DUYf7.js} +1 -1
  169. package/runtime/webapp/dist/assets/{sankeyDiagram-P5KCCOFB-C7f3C-pP.js → sankeyDiagram-P5KCCOFB-CPb4_ZHM.js} +1 -1
  170. package/runtime/webapp/dist/assets/{sequenceDiagram-WJ2MYXX4-DaXzBFJr.js → sequenceDiagram-WJ2MYXX4-Dn-9ZqfF.js} +1 -1
  171. package/runtime/webapp/dist/assets/{sizeCapture-INFHLROL-T-GLRxIv.js → sizeCapture-INFHLROL-CjHPSk27.js} +1 -1
  172. package/runtime/webapp/dist/assets/{stateDiagram-D77RDMKH-BU2Gf9ox.js → stateDiagram-D77RDMKH-BL3baCEN.js} +1 -1
  173. package/runtime/webapp/dist/assets/stateDiagram-v2-MP3YSRHH-DOnqeVU9.js +1 -0
  174. package/runtime/webapp/dist/assets/{swimlanes-42K2YHIH-C1wWPmfp.js → swimlanes-42K2YHIH-BN09MBkx.js} +1 -1
  175. package/runtime/webapp/dist/assets/swimlanesDiagram-VR7AAH4N-TqEoufoH.js +8 -0
  176. package/runtime/webapp/dist/assets/{timeline-definition-24CTP7MA-Q3i4n3gS.js → timeline-definition-24CTP7MA-CgKAJKgu.js} +1 -1
  177. package/runtime/webapp/dist/assets/{vennDiagram-4TSXK5OY-BFM57R6n.js → vennDiagram-4TSXK5OY-DeEP3v2F.js} +1 -1
  178. package/runtime/webapp/dist/assets/{wardleyDiagram-VM6X3IG4-D2PueiKh.js → wardleyDiagram-VM6X3IG4-rTyuh5Av.js} +1 -1
  179. package/runtime/webapp/dist/assets/{web-BIDvb2mA.js → web-Cei097ms.js} +1 -1
  180. package/runtime/webapp/dist/assets/{web-7pGvb0-e.js → web-DG60RxuA.js} +1 -1
  181. package/runtime/webapp/dist/assets/{x-Iz4dGBMu.js → x-Brs7xU6O.js} +1 -1
  182. package/runtime/webapp/dist/assets/{xychartDiagram-S5SC5T6Z-BuvvDC1s.js → xychartDiagram-S5SC5T6Z-CjF5xx6A.js} +1 -1
  183. package/runtime/webapp/dist/index.html +1 -1
  184. package/runtime/.next/static/chunks/app/web/layout-64f8e0ed9f785fce.js +0 -1
  185. package/runtime/.next/static/chunks/app/web/page-85eeb13ae4f1dc7d.js +0 -1
  186. package/runtime/.next/static/chunks/main-app-81c96817a0fe0365.js +0 -1
  187. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/core-x6a2shyd.mjs +0 -35
  188. package/runtime/node_modules/@anthropic-ai/claude-agent-sdk/core-xcjrj654.mjs +0 -52
  189. package/runtime/node_modules/deepmerge/.editorconfig +0 -7
  190. package/runtime/node_modules/deepmerge/.eslintcache +0 -1
  191. package/runtime/node_modules/deepmerge/changelog.md +0 -167
  192. package/runtime/node_modules/deepmerge/dist/cjs.js +0 -133
  193. package/runtime/node_modules/deepmerge/dist/umd.js +0 -139
  194. package/runtime/node_modules/deepmerge/index.js +0 -106
  195. package/runtime/node_modules/deepmerge/license.txt +0 -21
  196. package/runtime/node_modules/deepmerge/package.json +0 -42
  197. package/runtime/node_modules/deepmerge/readme.md +0 -264
  198. package/runtime/node_modules/deepmerge/rollup.config.js +0 -22
  199. package/runtime/webapp/dist/assets/App-BRDBK6IZ.js +0 -266
  200. package/runtime/webapp/dist/assets/CollaborationPage-D-RA1EZC.js +0 -26
  201. package/runtime/webapp/dist/assets/channel-BXVfYROZ.js +0 -1
  202. package/runtime/webapp/dist/assets/classDiagram-ZZMXUADV-CQO_yH-s.js +0 -1
  203. package/runtime/webapp/dist/assets/classDiagram-v2-VYDZK3BY-CQO_yH-s.js +0 -1
  204. package/runtime/webapp/dist/assets/collaboration-CAXZdGJ2.css +0 -1
  205. package/runtime/webapp/dist/assets/stateDiagram-v2-MP3YSRHH-DSi-QN-m.js +0 -1
  206. package/runtime/webapp/dist/assets/swimlanesDiagram-VR7AAH4N-BBxsK2vI.js +0 -8
  207. /package/runtime/.next/static/{dyKXYeP5GzbBzXvcrg83P → i1_xTY2YavI2psYlT44Ps}/_buildManifest.js +0 -0
  208. /package/runtime/.next/static/{dyKXYeP5GzbBzXvcrg83P → i1_xTY2YavI2psYlT44Ps}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=7081,e.ids=[7081],e.modules={399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1819:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>l,routeModule:()=>u,serverHooks:()=>d,staticGenerationAsyncStorage:()=>c});var o={};r.r(o),r.d(o,{GET:()=>p,dynamic:()=>s});var n=r(7786),a=r(5042),i=r(2184);let s="force-dynamic";async function p(){let e=(process.env.AGENT_FLOW_STUDIO_ENTRY_URL||"").trim(),t=null;try{let r=new URL(e);t="http:"===r.protocol||"https:"===r.protocol?r.toString():null}catch{t=null}return Response.json({entryUrl:t},{headers:{"cache-control":"no-store"}})}let u=new n.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/flow-studio/config/route",pathname:"/api/flow-studio/config",filename:"route",bundlePath:"app/api/flow-studio/config/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/flow-studio/config/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:l,staticGenerationAsyncStorage:c,serverHooks:d}=u,f="/api/flow-studio/config/route";function g(){return(0,i.patchFetch)({serverHooks:d,staticGenerationAsyncStorage:c})}},7786:(e,t,r)=>{e.exports=r(517)}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),o=t.X(0,[8375],()=>r(1819));module.exports=o})();
1
+ "use strict";(()=>{var e={};e.id=7081,e.ids=[7081],e.modules={399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},4260:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>l,routeModule:()=>u,serverHooks:()=>d,staticGenerationAsyncStorage:()=>c});var o={};r.r(o),r.d(o,{GET:()=>p,dynamic:()=>s});var n=r(7786),a=r(5042),i=r(2184);let s="force-dynamic";async function p(){let e=(process.env.AGENT_FLOW_STUDIO_ENTRY_URL||"").trim(),t=null;try{let r=new URL(e);t="http:"===r.protocol||"https:"===r.protocol?r.toString():null}catch{t=null}return Response.json({entryUrl:t},{headers:{"cache-control":"no-store"}})}let u=new n.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/flow-studio/config/route",pathname:"/api/flow-studio/config",filename:"route",bundlePath:"app/api/flow-studio/config/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/flow-studio/config/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:l,staticGenerationAsyncStorage:c,serverHooks:d}=u,f="/api/flow-studio/config/route";function g(){return(0,i.patchFetch)({serverHooks:d,staticGenerationAsyncStorage:c})}},7786:(e,t,r)=>{e.exports=r(517)}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),o=t.X(0,[8375],()=>r(4260));module.exports=o})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=2210,e.ids=[2210],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},1611:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>x,patchFetch:()=>q,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{POST:()=>c});var n=t(7786),s=t(5042),i=t(2184),a=t(1890),p=t(1322),u=t(4621);async function c(e){try{let r=await e.json();if(!r.id||!r.command)return a.NextResponse.json({error:"id and command are required"},{status:400});let t=new p.KSK;try{await t.connectServer(r);let e=await t.discoverAllTools();return await (0,u.i)().mcp.save(r),await (0,u.i)().mcp.setEnabled(r.id,!0),a.NextResponse.json({status:"connected",tools:Object.fromEntries(e)})}finally{await t.disconnectServer(r.id)}}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Connection failed"},{status:500})}}let d=new n.AppRouteRouteModule({definition:{kind:s.x.APP_ROUTE,page:"/api/mcp/connect/route",pathname:"/api/mcp/connect",filename:"route",bundlePath:"app/api/mcp/connect/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/mcp/connect/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:l,staticGenerationAsyncStorage:m,serverHooks:v}=d,x="/api/mcp/connect/route";function q(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>i,sr:()=>p});var o=t(9411);let n=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function s(e=process.env,r=n){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return s()}function a(e=process.env,r=s(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let n=e.AGENTROAM_DATA_DIR?.trim();return n?(0,o.resolve)(n,"logs"):(0,o.join)(r,".agent-data","logs")}function p(){return function(e=process.env,r=n){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(1611));module.exports=o})();
1
+ "use strict";(()=>{var e={};e.id=2210,e.ids=[2210],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},3067:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>x,patchFetch:()=>q,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{POST:()=>c});var n=t(7786),s=t(5042),i=t(2184),a=t(1890),p=t(1322),u=t(4621);async function c(e){try{let r=await e.json();if(!r.id||!r.command)return a.NextResponse.json({error:"id and command are required"},{status:400});let t=new p.KSK;try{await t.connectServer(r);let e=await t.discoverAllTools();return await (0,u.i)().mcp.save(r),await (0,u.i)().mcp.setEnabled(r.id,!0),a.NextResponse.json({status:"connected",tools:Object.fromEntries(e)})}finally{await t.disconnectServer(r.id)}}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Connection failed"},{status:500})}}let d=new n.AppRouteRouteModule({definition:{kind:s.x.APP_ROUTE,page:"/api/mcp/connect/route",pathname:"/api/mcp/connect",filename:"route",bundlePath:"app/api/mcp/connect/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/mcp/connect/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:l,staticGenerationAsyncStorage:m,serverHooks:v}=d,x="/api/mcp/connect/route";function q(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>i,sr:()=>p});var o=t(9411);let n=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function s(e=process.env,r=n){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return s()}function a(e=process.env,r=s(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let n=e.AGENTROAM_DATA_DIR?.trim();return n?(0,o.resolve)(n,"logs"):(0,o.join)(r,".agent-data","logs")}function p(){return function(e=process.env,r=n){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(3067));module.exports=o})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=5585,e.ids=[5585],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},6542:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>x,requestAsyncStorage:()=>c,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>l});var o={};t.r(o),t.d(o,{DELETE:()=>a});var s=t(7786),n=t(5042),i=t(2184),p=t(1890),u=t(4621);async function a(e){let r=new URL(e.url).searchParams.get("serverId");return r?(await (0,u.i)().mcp.setEnabled(r,!1),p.NextResponse.json({status:"disconnected"})):p.NextResponse.json({error:"serverId is required"},{status:400})}let d=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/mcp/disconnect/route",pathname:"/api/mcp/disconnect",filename:"route",bundlePath:"app/api/mcp/disconnect/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/mcp/disconnect/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:l,serverHooks:v}=d,m="/api/mcp/disconnect/route";function x(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:l})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(6542));module.exports=o})();
1
+ "use strict";(()=>{var e={};e.id=5585,e.ids=[5585],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},3075:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>x,requestAsyncStorage:()=>c,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>l});var o={};t.r(o),t.d(o,{DELETE:()=>a});var s=t(7786),n=t(5042),i=t(2184),p=t(1890),u=t(4621);async function a(e){let r=new URL(e.url).searchParams.get("serverId");return r?(await (0,u.i)().mcp.setEnabled(r,!1),p.NextResponse.json({status:"disconnected"})):p.NextResponse.json({error:"serverId is required"},{status:400})}let d=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/mcp/disconnect/route",pathname:"/api/mcp/disconnect",filename:"route",bundlePath:"app/api/mcp/disconnect/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/mcp/disconnect/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:l,serverHooks:v}=d,m="/api/mcp/disconnect/route";function x(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:l})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(3075));module.exports=o})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=2935,e.ids=[2935],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},7790:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>x,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>c});var s={};t.r(s),t.d(s,{GET:()=>a});var o=t(7786),n=t(5042),i=t(2184),p=t(1890),u=t(4621);async function a(){let e=await (0,u.i)().mcp.listAll();return p.NextResponse.json(e)}let d=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/mcp/servers/route",pathname:"/api/mcp/servers",filename:"route",bundlePath:"app/api/mcp/servers/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/mcp/servers/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:l,staticGenerationAsyncStorage:c,serverHooks:v}=d,m="/api/mcp/servers/route";function x(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:c})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function n(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322,4621],()=>t(7790));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=2935,e.ids=[2935],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},7348:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>x,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>v,staticGenerationAsyncStorage:()=>c});var s={};t.r(s),t.d(s,{GET:()=>a});var o=t(7786),n=t(5042),i=t(2184),p=t(1890),u=t(4621);async function a(){let e=await (0,u.i)().mcp.listAll();return p.NextResponse.json(e)}let d=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/mcp/servers/route",pathname:"/api/mcp/servers",filename:"route",bundlePath:"app/api/mcp/servers/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/mcp/servers/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:l,staticGenerationAsyncStorage:c,serverHooks:v}=d,m="/api/mcp/servers/route";function x(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:c})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function n(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322,4621],()=>t(7348));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=6006,e.ids=[6006],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},1203:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>v,patchFetch:()=>q,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{DELETE:()=>d,GET:()=>a});var s=t(7786),n=t(5042),i=t(2184),p=t(1890);let u=(0,t(4621).i)().memory;async function a(e,{params:r}){let t=await u.get(r.key);return t?p.NextResponse.json(t):p.NextResponse.json({error:"Memory not found"},{status:404})}async function d(e,{params:r}){return await u.delete(r.key),p.NextResponse.json({status:"deleted"})}let l=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/memory/[key]/route",pathname:"/api/memory/[key]",filename:"route",bundlePath:"app/api/memory/[key]/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/memory/[key]/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:x}=l,v="/api/memory/[key]/route";function q(){return(0,i.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(1203));module.exports=o})();
1
+ "use strict";(()=>{var e={};e.id=6006,e.ids=[6006],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},7961:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>v,patchFetch:()=>q,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{DELETE:()=>d,GET:()=>a});var s=t(7786),n=t(5042),i=t(2184),p=t(1890);let u=(0,t(4621).i)().memory;async function a(e,{params:r}){let t=await u.get(r.key);return t?p.NextResponse.json(t):p.NextResponse.json({error:"Memory not found"},{status:404})}async function d(e,{params:r}){return await u.delete(r.key),p.NextResponse.json({status:"deleted"})}let l=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/memory/[key]/route",pathname:"/api/memory/[key]",filename:"route",bundlePath:"app/api/memory/[key]/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/memory/[key]/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:x}=l,v="/api/memory/[key]/route";function q(){return(0,i.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>p,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function p(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(7961));module.exports=o})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=3760,e.ids=[3760],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},4007:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>v,patchFetch:()=>q,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{GET:()=>p,POST:()=>d});var s=t(7786),n=t(5042),i=t(2184),a=t(1890);let u=(0,t(4621).i)().memory;async function p(e){let r=new URL(e.url).searchParams.get("q");if(r){let e=await u.search(r);return a.NextResponse.json(e)}let t=await u.list();return a.NextResponse.json(t)}async function d(e){try{let r=await e.json();if(!r.name||!r.content)return a.NextResponse.json({error:"name and content are required"},{status:400});return await u.set(r),a.NextResponse.json({status:"saved"},{status:201})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Save failed"},{status:500})}}let l=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/memory/route",pathname:"/api/memory",filename:"route",bundlePath:"app/api/memory/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/memory/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:x}=l,v="/api/memory/route";function q(){return(0,i.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function a(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(4007));module.exports=o})();
1
+ "use strict";(()=>{var e={};e.id=3760,e.ids=[3760],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},845:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>v,patchFetch:()=>q,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{GET:()=>p,POST:()=>d});var s=t(7786),n=t(5042),i=t(2184),a=t(1890);let u=(0,t(4621).i)().memory;async function p(e){let r=new URL(e.url).searchParams.get("q");if(r){let e=await u.search(r);return a.NextResponse.json(e)}let t=await u.list();return a.NextResponse.json(t)}async function d(e){try{let r=await e.json();if(!r.name||!r.content)return a.NextResponse.json({error:"name and content are required"},{status:400});return await u.set(r),a.NextResponse.json({status:"saved"},{status:201})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Save failed"},{status:500})}}let l=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/memory/route",pathname:"/api/memory",filename:"route",bundlePath:"app/api/memory/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/memory/route.ts",nextConfigOutput:"standalone",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:x}=l,v="/api/memory/route";function q(){return(0,i.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:m})}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>i,sr:()=>u});var o=t(9411);let s=function(){let e=process.argv[1];if(e){let r=(0,o.dirname)((0,o.resolve)(e)),t=`${o.sep}node_modules${o.sep}.bin`;return r.endsWith(t)?(0,o.resolve)(r,"..",".."):r}return(0,o.resolve)(process.cwd())}();function n(e=process.env,r=s){return(0,o.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function i(){return n()}function a(e=process.env,r=n(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,o.resolve)(t);let s=e.AGENTROAM_DATA_DIR?.trim();return s?(0,o.resolve)(s,"logs"):(0,o.join)(r,".agent-data","logs")}function u(){return function(e=process.env,r=s){return(0,o.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,i())}}};var r=require("../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8375,6703,1322,4621],()=>t(845));module.exports=o})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=2538,e.ids=[2538],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},3256:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>q,patchFetch:()=>m,requestAsyncStorage:()=>h,routeModule:()=>c,serverHooks:()=>x,staticGenerationAsyncStorage:()=>g});var s={};t.r(s),t.d(s,{POST:()=>l});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),u=t(1322),p=t(7519);let d=new u.Q$d(p.agentHost.getBuilder().getToolRegistry(),p.agentHost.getBuilder().getSkillRegistry(),process.cwd());async function l(e){try{let r=await e.json();if(!r.dirPath)return a.NextResponse.json({error:"dirPath is required"},{status:400});let t=await d.loadPlugin(r.dirPath);return await d.activatePlugin(t.manifest.name),a.NextResponse.json({status:"loaded",plugin:{name:t.manifest.name,version:t.manifest.version,description:t.manifest.description}})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Plugin load failed"},{status:500})}}let c=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/plugins/load/route",pathname:"/api/plugins/load",filename:"route",bundlePath:"app/api/plugins/load/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/plugins/load/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:h,staticGenerationAsyncStorage:g,serverHooks:x}=c,q="/api/plugins/load/route";function m(){return(0,n.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:g})}},1489:(e,r,t)=>{t.d(r,{N:()=>u});var s=t(1322),o=t(6279),i=t(785);class n{constructor(){this.tasks=new s.vo4((0,i.kO)()),this.scheduler=new o.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:r}=await t.e(7519).then(t.bind(t,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([t.e(7519),t.e(732)]).then(t.bind(t,732)),o=e.sessionId;o&&await r.getSessionStore().get(o)||(o=(await r.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:o})),await s().enqueue(o,e.prompt)}call(e,r){let t=String(r[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof r[0]||"string"!=typeof r[1]||!r[1].trim())throw Error("cron and prompt required");let e=r[2]&&"object"==typeof r[2]?r[2]:{};return this.tasks.create({cron:r[0],prompt:r[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(t);case"cronResume":return this.tasks.resume(t);case"cronDelete":return this.tasks.delete(t);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function u(){return a.__sharedCronService??=new n}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>t(3256));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=2538,e.ids=[2538],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},3715:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>q,patchFetch:()=>m,requestAsyncStorage:()=>h,routeModule:()=>c,serverHooks:()=>x,staticGenerationAsyncStorage:()=>g});var s={};t.r(s),t.d(s,{POST:()=>l});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),u=t(1322),p=t(7519);let d=new u.Q$d(p.agentHost.getBuilder().getToolRegistry(),p.agentHost.getBuilder().getSkillRegistry(),process.cwd());async function l(e){try{let r=await e.json();if(!r.dirPath)return a.NextResponse.json({error:"dirPath is required"},{status:400});let t=await d.loadPlugin(r.dirPath);return await d.activatePlugin(t.manifest.name),a.NextResponse.json({status:"loaded",plugin:{name:t.manifest.name,version:t.manifest.version,description:t.manifest.description}})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Plugin load failed"},{status:500})}}let c=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/plugins/load/route",pathname:"/api/plugins/load",filename:"route",bundlePath:"app/api/plugins/load/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/plugins/load/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:h,staticGenerationAsyncStorage:g,serverHooks:x}=c,q="/api/plugins/load/route";function m(){return(0,n.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:g})}},1489:(e,r,t)=>{t.d(r,{N:()=>u});var s=t(1322),o=t(6279),i=t(785);class n{constructor(){this.tasks=new s.vo4((0,i.kO)()),this.scheduler=new o.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:r}=await t.e(7519).then(t.bind(t,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([t.e(7519),t.e(732)]).then(t.bind(t,732)),o=e.sessionId;o&&await r.getSessionStore().get(o)||(o=(await r.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:o})),await s().enqueue(o,e.prompt)}call(e,r){let t=String(r[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof r[0]||"string"!=typeof r[1]||!r[1].trim())throw Error("cron and prompt required");let e=r[2]&&"object"==typeof r[2]?r[2]:{};return this.tasks.create({cron:r[0],prompt:r[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(t);case"cronResume":return this.tasks.resume(t);case"cronDelete":return this.tasks.delete(t);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function u(){return a.__sharedCronService??=new n}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>t(3715));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=7361,e.ids=[7361],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},1259:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>y,patchFetch:()=>f,requestAsyncStorage:()=>h,routeModule:()=>l,serverHooks:()=>v,staticGenerationAsyncStorage:()=>m});var s={};r.r(s),r.d(s,{DELETE:()=>d,GET:()=>u,PATCH:()=>p});var o=r(7786),n=r(5042),i=r(2184),a=r(1890),c=r(9142);async function u(e,{params:t}){try{return a.NextResponse.json(await c.a.get(t.id))}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}async function p(e,{params:t}){try{let r=await e.json();return a.NextResponse.json(await c.a.rename(t.id,r.name??""))}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}async function d(e,{params:t}){try{return await c.a.delete(t.id),a.NextResponse.json({deleted:!0,projectId:t.id})}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}let l=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/projects/[id]/route",pathname:"/api/projects/[id]",filename:"route",bundlePath:"app/api/projects/[id]/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/projects/[id]/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:h,staticGenerationAsyncStorage:m,serverHooks:v}=l,y="/api/projects/[id]/route";function f(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:m})}},9142:(e,t,r)=>{r.d(t,{r:()=>l,a:()=>d});var s=r(612),o=r(1322),n=r(785),i=r(7561),a=r(9411),c=r(6005);class u extends Error{constructor(e,t,r){super(e),this.code=t,this.status=r,this.name="WebProjectError"}}class p{constructor(e,t,r=t.roots[0]){this.store=e,this.paths=t,this.installationDirectory=r}list(){return this.store.list()}async get(e){let t=await this.store.get(e);if(!t)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return t}async create(e,t){let r=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===r)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:t?.trim()||(0,a.basename)(r)||r,description:r,created:s,updated:s})}async rename(e,t){await this.get(e);let r=t.trim();if(!r)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:r})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,n.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,t=process.env,r=(0,s.homedir)()){let o=t.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let n=(0,a.join)(r,".agentroam");try{if((0,i.statSync)(n).isDirectory())return n}catch{}return(0,a.resolve)(e)}((0,n.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,t,r)=>{r.d(t,{ME:()=>a,kO:()=>i,sr:()=>c});var s=r(9411);let o=function(){let e=process.argv[1];if(e){let t=(0,s.dirname)((0,s.resolve)(e)),r=`${s.sep}node_modules${s.sep}.bin`;return t.endsWith(r)?(0,s.resolve)(t,"..",".."):t}return(0,s.resolve)(process.cwd())}();function n(e=process.env,t=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||t)}function i(){return n()}function a(e=process.env,t=n(e)){let r=e.AGENT_LOG_DIR?.trim();if(r)return(0,s.resolve)(r);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(t,".agent-data","logs")}function c(){return function(e=process.env,t=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||t)}(process.env,i())}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,1322],()=>r(1259));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=7361,e.ids=[7361],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},857:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>y,patchFetch:()=>f,requestAsyncStorage:()=>h,routeModule:()=>l,serverHooks:()=>v,staticGenerationAsyncStorage:()=>m});var s={};r.r(s),r.d(s,{DELETE:()=>d,GET:()=>u,PATCH:()=>p});var o=r(7786),n=r(5042),i=r(2184),a=r(1890),c=r(9142);async function u(e,{params:t}){try{return a.NextResponse.json(await c.a.get(t.id))}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}async function p(e,{params:t}){try{let r=await e.json();return a.NextResponse.json(await c.a.rename(t.id,r.name??""))}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}async function d(e,{params:t}){try{return await c.a.delete(t.id),a.NextResponse.json({deleted:!0,projectId:t.id})}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}let l=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/projects/[id]/route",pathname:"/api/projects/[id]",filename:"route",bundlePath:"app/api/projects/[id]/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/projects/[id]/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:h,staticGenerationAsyncStorage:m,serverHooks:v}=l,y="/api/projects/[id]/route";function f(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:m})}},9142:(e,t,r)=>{r.d(t,{r:()=>l,a:()=>d});var s=r(612),o=r(1322),n=r(785),i=r(7561),a=r(9411),c=r(6005);class u extends Error{constructor(e,t,r){super(e),this.code=t,this.status=r,this.name="WebProjectError"}}class p{constructor(e,t,r=t.roots[0]){this.store=e,this.paths=t,this.installationDirectory=r}list(){return this.store.list()}async get(e){let t=await this.store.get(e);if(!t)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return t}async create(e,t){let r=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===r)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:t?.trim()||(0,a.basename)(r)||r,description:r,created:s,updated:s})}async rename(e,t){await this.get(e);let r=t.trim();if(!r)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:r})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,n.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,t=process.env,r=(0,s.homedir)()){let o=t.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let n=(0,a.join)(r,".agentroam");try{if((0,i.statSync)(n).isDirectory())return n}catch{}return(0,a.resolve)(e)}((0,n.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,t,r)=>{r.d(t,{ME:()=>a,kO:()=>i,sr:()=>c});var s=r(9411);let o=function(){let e=process.argv[1];if(e){let t=(0,s.dirname)((0,s.resolve)(e)),r=`${s.sep}node_modules${s.sep}.bin`;return t.endsWith(r)?(0,s.resolve)(t,"..",".."):t}return(0,s.resolve)(process.cwd())}();function n(e=process.env,t=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||t)}function i(){return n()}function a(e=process.env,t=n(e)){let r=e.AGENT_LOG_DIR?.trim();if(r)return(0,s.resolve)(r);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(t,".agent-data","logs")}function c(){return function(e=process.env,t=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||t)}(process.env,i())}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,1322],()=>r(857));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=6315,e.ids=[6315],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},8197:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>l,staticGenerationAsyncStorage:()=>h});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){let r=new URL(e.url).searchParams.get("path")??"";return a.NextResponse.json({valid:c.a.check(r)},{headers:{"Cache-Control":"no-store"}})}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/check/route",pathname:"/api/projects/check",filename:"route",bundlePath:"app/api/projects/check/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/projects/check/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:h,serverHooks:l}=p,m="/api/projects/check/route";function v(){return(0,n.patchFetch)({serverHooks:l,staticGenerationAsyncStorage:h})}},9142:(e,r,t)=>{t.d(r,{r:()=>h,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function h(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(8197));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=6315,e.ids=[6315],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},6609:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>l,staticGenerationAsyncStorage:()=>h});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){let r=new URL(e.url).searchParams.get("path")??"";return a.NextResponse.json({valid:c.a.check(r)},{headers:{"Cache-Control":"no-store"}})}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/check/route",pathname:"/api/projects/check",filename:"route",bundlePath:"app/api/projects/check/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/projects/check/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:h,serverHooks:l}=p,m="/api/projects/check/route";function v(){return(0,n.patchFetch)({serverHooks:l,staticGenerationAsyncStorage:h})}},9142:(e,r,t)=>{t.d(r,{r:()=>h,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function h(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(6609));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=4737,e.ids=[4737],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},1666:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>h,staticGenerationAsyncStorage:()=>l});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){try{let r=new URL(e.url).searchParams.get("path")??"";return a.NextResponse.json(c.a.directories(r))}catch(r){let e=(0,c.r)(r);return a.NextResponse.json(e.body,{status:e.status})}}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/directories/route",pathname:"/api/projects/directories",filename:"route",bundlePath:"app/api/projects/directories/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/projects/directories/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:l,serverHooks:h}=p,m="/api/projects/directories/route";function v(){return(0,n.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:l})}},9142:(e,r,t)=>{t.d(r,{r:()=>l,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(1666));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=4737,e.ids=[4737],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},6815:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>h,staticGenerationAsyncStorage:()=>l});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){try{let r=new URL(e.url).searchParams.get("path")??"";return a.NextResponse.json(c.a.directories(r))}catch(r){let e=(0,c.r)(r);return a.NextResponse.json(e.body,{status:e.status})}}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/directories/route",pathname:"/api/projects/directories",filename:"route",bundlePath:"app/api/projects/directories/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/projects/directories/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:l,serverHooks:h}=p,m="/api/projects/directories/route";function v(){return(0,n.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:l})}},9142:(e,r,t)=>{t.d(r,{r:()=>l,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(6815));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=1199,e.ids=[1199],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},8444:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>h,staticGenerationAsyncStorage:()=>l});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){try{return a.NextResponse.json(new URL(e.url).searchParams.has("picker")?c.a.pickerLocation():c.a.roots(),{headers:{"Cache-Control":"no-store"}})}catch(r){let e=(0,c.r)(r);return a.NextResponse.json(e.body,{status:e.status})}}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/roots/route",pathname:"/api/projects/roots",filename:"route",bundlePath:"app/api/projects/roots/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/projects/roots/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:l,serverHooks:h}=p,m="/api/projects/roots/route";function v(){return(0,n.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:l})}},9142:(e,r,t)=>{t.d(r,{r:()=>l,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(8444));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=1199,e.ids=[1199],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},4882:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>v,requestAsyncStorage:()=>d,routeModule:()=>p,serverHooks:()=>h,staticGenerationAsyncStorage:()=>l});var s={};t.r(s),t.d(s,{GET:()=>u});var o=t(7786),i=t(5042),n=t(2184),a=t(1890),c=t(9142);async function u(e){try{return a.NextResponse.json(new URL(e.url).searchParams.has("picker")?c.a.pickerLocation():c.a.roots(),{headers:{"Cache-Control":"no-store"}})}catch(r){let e=(0,c.r)(r);return a.NextResponse.json(e.body,{status:e.status})}}let p=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/roots/route",pathname:"/api/projects/roots",filename:"route",bundlePath:"app/api/projects/roots/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/projects/roots/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:l,serverHooks:h}=p,m="/api/projects/roots/route";function v(){return(0,n.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:l})}},9142:(e,r,t)=>{t.d(r,{r:()=>l,a:()=>d});var s=t(612),o=t(1322),i=t(785),n=t(7561),a=t(9411),c=t(6005);class u extends Error{constructor(e,r,t){super(e),this.code=r,this.status=t,this.name="WebProjectError"}}class p{constructor(e,r,t=r.roots[0]){this.store=e,this.paths=r,this.installationDirectory=t}list(){return this.store.list()}async get(e){let r=await this.store.get(e);if(!r)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return r}async create(e,r){let t=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===t)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:r?.trim()||(0,a.basename)(t)||t,description:t,created:s,updated:s})}async rename(e,r){await this.get(e);let t=r.trim();if(!t)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:t})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,r=process.env,t=(0,s.homedir)()){let o=r.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(t,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,r,t)=>{t.d(r,{ME:()=>a,kO:()=>n,sr:()=>c});var s=t(9411);let o=function(){let e=process.argv[1];if(e){let r=(0,s.dirname)((0,s.resolve)(e)),t=`${s.sep}node_modules${s.sep}.bin`;return r.endsWith(t)?(0,s.resolve)(r,"..",".."):r}return(0,s.resolve)(process.cwd())}();function i(e=process.env,r=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||r)}function n(){return i()}function a(e=process.env,r=i(e)){let t=e.AGENT_LOG_DIR?.trim();if(t)return(0,s.resolve)(t);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(r,".agent-data","logs")}function c(){return function(e=process.env,r=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||r)}(process.env,n())}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,1322],()=>t(4882));module.exports=s})();
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=4871,e.ids=[4871],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},6325:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>v,patchFetch:()=>f,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>m,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{GET:()=>u,POST:()=>p});var o=r(7786),i=r(5042),n=r(2184),a=r(1890),c=r(9142);async function u(){return a.NextResponse.json((await c.a.list()).filter(e=>!e.id.startsWith("collaboration-")))}async function p(e){try{let t=await e.json();return a.NextResponse.json(await c.a.create(t.path??"",t.name),{status:201})}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}let d=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/route",pathname:"/api/projects",filename:"route",bundlePath:"app/api/projects/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/projects/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:l,staticGenerationAsyncStorage:h,serverHooks:m}=d,v="/api/projects/route";function f(){return(0,n.patchFetch)({serverHooks:m,staticGenerationAsyncStorage:h})}},9142:(e,t,r)=>{r.d(t,{r:()=>l,a:()=>d});var s=r(612),o=r(1322),i=r(785),n=r(7561),a=r(9411),c=r(6005);class u extends Error{constructor(e,t,r){super(e),this.code=t,this.status=r,this.name="WebProjectError"}}class p{constructor(e,t,r=t.roots[0]){this.store=e,this.paths=t,this.installationDirectory=r}list(){return this.store.list()}async get(e){let t=await this.store.get(e);if(!t)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return t}async create(e,t){let r=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===r)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:t?.trim()||(0,a.basename)(r)||r,description:r,created:s,updated:s})}async rename(e,t){await this.get(e);let r=t.trim();if(!r)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:r})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,t=process.env,r=(0,s.homedir)()){let o=t.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(r,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,t,r)=>{r.d(t,{ME:()=>a,kO:()=>n,sr:()=>c});var s=r(9411);let o=function(){let e=process.argv[1];if(e){let t=(0,s.dirname)((0,s.resolve)(e)),r=`${s.sep}node_modules${s.sep}.bin`;return t.endsWith(r)?(0,s.resolve)(t,"..",".."):t}return(0,s.resolve)(process.cwd())}();function i(e=process.env,t=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||t)}function n(){return i()}function a(e=process.env,t=i(e)){let r=e.AGENT_LOG_DIR?.trim();if(r)return(0,s.resolve)(r);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(t,".agent-data","logs")}function c(){return function(e=process.env,t=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||t)}(process.env,n())}}};var t=require("../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,1322],()=>r(6325));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=4871,e.ids=[4871],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},9801:e=>{e.exports=require("os")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},1041:e=>{e.exports=require("node:url")},1374:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>v,patchFetch:()=>f,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>m,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{GET:()=>u,POST:()=>p});var o=r(7786),i=r(5042),n=r(2184),a=r(1890),c=r(9142);async function u(){return a.NextResponse.json((await c.a.list()).filter(e=>!e.id.startsWith("collaboration-")))}async function p(e){try{let t=await e.json();return a.NextResponse.json(await c.a.create(t.path??"",t.name),{status:201})}catch(t){let e=(0,c.r)(t);return a.NextResponse.json(e.body,{status:e.status})}}let d=new o.AppRouteRouteModule({definition:{kind:i.x.APP_ROUTE,page:"/api/projects/route",pathname:"/api/projects",filename:"route",bundlePath:"app/api/projects/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/projects/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:l,staticGenerationAsyncStorage:h,serverHooks:m}=d,v="/api/projects/route";function f(){return(0,n.patchFetch)({serverHooks:m,staticGenerationAsyncStorage:h})}},9142:(e,t,r)=>{r.d(t,{r:()=>l,a:()=>d});var s=r(612),o=r(1322),i=r(785),n=r(7561),a=r(9411),c=r(6005);class u extends Error{constructor(e,t,r){super(e),this.code=t,this.status=r,this.name="WebProjectError"}}class p{constructor(e,t,r=t.roots[0]){this.store=e,this.paths=t,this.installationDirectory=r}list(){return this.store.list()}async get(e){let t=await this.store.get(e);if(!t)throw new u("项目不存在","PROJECT_NOT_FOUND",404);return t}async create(e,t){let r=this.paths.assertDirectory(e);for(let e of(await this.store.list()))if(!e.id.startsWith("collaboration-"))try{if(this.paths.assertDirectory(e.description)===r)return e}catch{}let s=new Date().toISOString();return this.store.create({id:(0,c.randomUUID)(),name:t?.trim()||(0,a.basename)(r)||r,description:r,created:s,updated:s})}async rename(e,t){await this.get(e);let r=t.trim();if(!r)throw new u("项目名称不能为空","PROJECT_NAME_REQUIRED",400);return this.store.update(e,{name:r})}async delete(e){await this.get(e),await this.store.delete(e)}roots(){return this.paths.roots}pickerLocation(){return{roots:this.paths.roots,initialPath:this.paths.assertDirectory(this.installationDirectory)}}directories(e){return this.paths.listDirectories(e)}check(e){try{return this.paths.assertDirectory(e),!0}catch{return!1}}canonicalDirectory(e){return this.paths.assertDirectory(e)}}let d=new p(new o.XWE((0,i.kO)()),o.Tpv.fromEnvironment(process.env.AGENT_WEB_ROOTS,(0,s.homedir)()),function(e,t=process.env,r=(0,s.homedir)()){let o=t.AGENTROAM_DATA_DIR?.trim();if(o)return(0,a.resolve)(o);let i=(0,a.join)(r,".agentroam");try{if((0,n.statSync)(i).isDirectory())return i}catch{}return(0,a.resolve)(e)}((0,i.kO)()));function l(e){return e instanceof u?{status:e.status,body:{error:e.message,code:e.code}}:e instanceof o.TLe?{status:400,body:{error:e.message,code:e.code}}:{status:500,body:{error:e instanceof Error?e.message:"项目操作失败",code:"PROJECT_OPERATION_FAILED"}}}},785:(e,t,r)=>{r.d(t,{ME:()=>a,kO:()=>n,sr:()=>c});var s=r(9411);let o=function(){let e=process.argv[1];if(e){let t=(0,s.dirname)((0,s.resolve)(e)),r=`${s.sep}node_modules${s.sep}.bin`;return t.endsWith(r)?(0,s.resolve)(t,"..",".."):t}return(0,s.resolve)(process.cwd())}();function i(e=process.env,t=o){return(0,s.resolve)(e.AGENT_DATA_DIR?.trim()||t)}function n(){return i()}function a(e=process.env,t=i(e)){let r=e.AGENT_LOG_DIR?.trim();if(r)return(0,s.resolve)(r);let o=e.AGENTROAM_DATA_DIR?.trim();return o?(0,s.resolve)(o,"logs"):(0,s.join)(t,".agent-data","logs")}function c(){return function(e=process.env,t=o){return(0,s.resolve)(e.AGENT_WORKING_DIRECTORY?.trim()||t)}(process.env,n())}}};var t=require("../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,1322],()=>r(1374));module.exports=s})();
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var e={};e.id=3611,e.ids=[3611],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},1775:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>b,patchFetch:()=>f,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>y,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{POST:()=>d});var i=r(7786),o=r(5042),n=r(2184),a=r(1890),p=r(3931),u=r(1079);async function d(e){try{(0,u.j)();let t=await e.json(),r=e.headers.get("x-agentroam-device-id"),s=(0,p.i)().saveSubscription(r,{endpoint:t?.endpoint,keys:{p256dh:t?.keys?.p256dh,auth:t?.keys?.auth}});return a.NextResponse.json(s)}catch(t){let e=t?.status;return a.NextResponse.json({error:t instanceof Error?t.message:"Unable to save push subscription"},{status:e&&e>=400&&e<500?e:500})}}let l=new i.AppRouteRouteModule({definition:{kind:o.x.APP_ROUTE,page:"/api/push/subscribe/route",pathname:"/api/push/subscribe",filename:"route",bundlePath:"app/api/push/subscribe/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/push/subscribe/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:c,staticGenerationAsyncStorage:h,serverHooks:y}=l,b="/api/push/subscribe/route";function f(){return(0,n.patchFetch)({serverHooks:y,staticGenerationAsyncStorage:h})}},1079:(e,t,r)=>{r.d(t,{j:()=>d});var s=r(7519),i=r(3931),o=r(535),n=r(1322),a=r(1982);let p=!1,u=new n.sSf;function d(){p||(p=!0,s.agentHost.setGlobalEventObserver((e,t,r)=>{try{if("ask_user"===t.type){(0,i.i)().notifySession({notificationId:`${e}:${t.questionId}:approval`,sessionId:e,kind:"approval",title:"需要你的审批",body:"string"==typeof t.question&&t.question.trim()?t.question.trim().slice(0,160):"会话正在等待确认",url:"/app/"});return}if("done"===t.type){if("goal"===r.source)return;let s=(0,n.mDL)((0,a.dp)().read().taskNotifications),o=r.runId?(0,n.DXW)({sessionId:e,runId:r.runId,title:"任务已完成",finalText:t.finalText,outcome:"completed",source:"user"},s):null;o&&u.accept(o.notificationId)&&(0,i.i)().notifySession({...o,url:`/app/?session=${encodeURIComponent(e)}`});return}if("goal_updated"===t.type&&"complete"===t.goal.status){let r=(0,n.mDL)((0,a.dp)().read().taskNotifications),s=(0,n.DXW)({sessionId:e,runId:`goal:${t.goal.createdAt}`,title:"目标已完成",finalText:t.goal.objective,outcome:"completed",source:"goal",goalFinished:!0},r);s&&u.accept(s.notificationId)&&(0,i.i)().notifySession({...s,url:`/app/?session=${encodeURIComponent(e)}`});return}"error"===t.type&&(0,i.i)().notifySession({notificationId:`${e}:${r.runId??"unknown"}:error`,sessionId:e,kind:"error",title:"会话出错",body:"string"==typeof t.message&&t.message.trim()?t.message.trim().slice(0,160):"运行失败",url:"/app/"})}catch(t){(0,o.L)().warn("web push notify failed",{sessionId:e,error:t instanceof Error?t.message:String(t)})}}))}},1489:(e,t,r)=>{r.d(t,{N:()=>p});var s=r(1322),i=r(6279),o=r(785);class n{constructor(){this.tasks=new s.vo4((0,o.kO)()),this.scheduler=new i.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:t}=await r.e(7519).then(r.bind(r,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([r.e(7519),r.e(732)]).then(r.bind(r,732)),i=e.sessionId;i&&await t.getSessionStore().get(i)||(i=(await t.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:i})),await s().enqueue(i,e.prompt)}call(e,t){let r=String(t[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof t[0]||"string"!=typeof t[1]||!t[1].trim())throw Error("cron and prompt required");let e=t[2]&&"object"==typeof t[2]?t[2]:{};return this.tasks.create({cron:t[0],prompt:t[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(r);case"cronResume":return this.tasks.resume(r);case"cronDelete":return this.tasks.delete(r);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function p(){return a.__sharedCronService??=new n}},3931:(e,t,r)=>{r.d(t,{i:()=>c});var s=r(6005),i=r(7561),o=r(9411),n=r(5890);let a=require("web-push"),p=e=>JSON.stringify(e??null);class u{constructor(e,t=Date.now){this.now=t;let r=(0,o.resolve)(e,".agentroam-auth");(0,i.mkdirSync)(r,{recursive:!0,mode:448});let s=(0,o.join)(r,"push.sqlite");this.db=new n(s),(0,i.chmodSync)(s,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
1
+ "use strict";(()=>{var e={};e.id=3611,e.ids=[3611],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},52:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>b,patchFetch:()=>f,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>y,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{POST:()=>d});var i=r(7786),o=r(5042),n=r(2184),a=r(1890),p=r(3931),u=r(1079);async function d(e){try{(0,u.j)();let t=await e.json(),r=e.headers.get("x-agentroam-device-id"),s=(0,p.i)().saveSubscription(r,{endpoint:t?.endpoint,keys:{p256dh:t?.keys?.p256dh,auth:t?.keys?.auth}});return a.NextResponse.json(s)}catch(t){let e=t?.status;return a.NextResponse.json({error:t instanceof Error?t.message:"Unable to save push subscription"},{status:e&&e>=400&&e<500?e:500})}}let l=new i.AppRouteRouteModule({definition:{kind:o.x.APP_ROUTE,page:"/api/push/subscribe/route",pathname:"/api/push/subscribe",filename:"route",bundlePath:"app/api/push/subscribe/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/push/subscribe/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:c,staticGenerationAsyncStorage:h,serverHooks:y}=l,b="/api/push/subscribe/route";function f(){return(0,n.patchFetch)({serverHooks:y,staticGenerationAsyncStorage:h})}},1079:(e,t,r)=>{r.d(t,{j:()=>d});var s=r(7519),i=r(3931),o=r(535),n=r(1322),a=r(1982);let p=!1,u=new n.sSf;function d(){p||(p=!0,s.agentHost.setGlobalEventObserver((e,t,r)=>{try{if("ask_user"===t.type){(0,i.i)().notifySession({notificationId:`${e}:${t.questionId}:approval`,sessionId:e,kind:"approval",title:"需要你的审批",body:"string"==typeof t.question&&t.question.trim()?t.question.trim().slice(0,160):"会话正在等待确认",url:"/app/"});return}if("done"===t.type){if("goal"===r.source)return;let s=(0,n.mDL)((0,a.dp)().read().taskNotifications),o=r.runId?(0,n.DXW)({sessionId:e,runId:r.runId,title:"任务已完成",finalText:t.finalText,outcome:"completed",source:"user"},s):null;o&&u.accept(o.notificationId)&&(0,i.i)().notifySession({...o,url:`/app/?session=${encodeURIComponent(e)}`});return}if("goal_updated"===t.type&&"complete"===t.goal.status){let r=(0,n.mDL)((0,a.dp)().read().taskNotifications),s=(0,n.DXW)({sessionId:e,runId:`goal:${t.goal.createdAt}`,title:"目标已完成",finalText:t.goal.objective,outcome:"completed",source:"goal",goalFinished:!0},r);s&&u.accept(s.notificationId)&&(0,i.i)().notifySession({...s,url:`/app/?session=${encodeURIComponent(e)}`});return}"error"===t.type&&(0,i.i)().notifySession({notificationId:`${e}:${r.runId??"unknown"}:error`,sessionId:e,kind:"error",title:"会话出错",body:"string"==typeof t.message&&t.message.trim()?t.message.trim().slice(0,160):"运行失败",url:"/app/"})}catch(t){(0,o.L)().warn("web push notify failed",{sessionId:e,error:t instanceof Error?t.message:String(t)})}}))}},1489:(e,t,r)=>{r.d(t,{N:()=>p});var s=r(1322),i=r(6279),o=r(785);class n{constructor(){this.tasks=new s.vo4((0,o.kO)()),this.scheduler=new i.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:t}=await r.e(7519).then(r.bind(r,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([r.e(7519),r.e(732)]).then(r.bind(r,732)),i=e.sessionId;i&&await t.getSessionStore().get(i)||(i=(await t.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:i})),await s().enqueue(i,e.prompt)}call(e,t){let r=String(t[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof t[0]||"string"!=typeof t[1]||!t[1].trim())throw Error("cron and prompt required");let e=t[2]&&"object"==typeof t[2]?t[2]:{};return this.tasks.create({cron:t[0],prompt:t[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(r);case"cronResume":return this.tasks.resume(r);case"cronDelete":return this.tasks.delete(r);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function p(){return a.__sharedCronService??=new n}},3931:(e,t,r)=>{r.d(t,{i:()=>c});var s=r(6005),i=r(7561),o=r(9411),n=r(5890);let a=require("web-push"),p=e=>JSON.stringify(e??null);class u{constructor(e,t=Date.now){this.now=t;let r=(0,o.resolve)(e,".agentroam-auth");(0,i.mkdirSync)(r,{recursive:!0,mode:448});let s=(0,o.join)(r,"push.sqlite");this.db=new n(s),(0,i.chmodSync)(s,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
2
2
  CREATE TABLE IF NOT EXISTS push_keys (id INTEGER PRIMARY KEY CHECK(id=1), public_key TEXT NOT NULL, private_key TEXT NOT NULL);
3
3
  CREATE TABLE IF NOT EXISTS push_subscriptions (
4
4
  endpoint_hash TEXT PRIMARY KEY,
@@ -12,4 +12,4 @@
12
12
  INSERT INTO push_subscriptions (endpoint_hash, endpoint, p256dh, auth, device_id, created)
13
13
  VALUES (?, ?, ?, ?, ?, ?)
14
14
  ON CONFLICT(endpoint_hash) DO UPDATE SET p256dh=excluded.p256dh, auth=excluded.auth, device_id=excluded.device_id
15
- `).run(d(r),r,s,i,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:r,body:s,url:i}){let o=e||`${t}:notification`;if(!this.delivered.has(o)){for(this.delivered.add(o);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:o,sessionId:t,title:r,body:s,tag:o,url:i})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,p(t),{TTL:3600})}catch(r){let t=r?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e.endpoint))}}close(){this.db.close()}}function d(e){return(0,s.createHash)("sha256").update(e).digest("hex")}let l=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return l??=new u(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>r(1775));module.exports=s})();
15
+ `).run(d(r),r,s,i,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:r,body:s,url:i}){let o=e||`${t}:notification`;if(!this.delivered.has(o)){for(this.delivered.add(o);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:o,sessionId:t,title:r,body:s,tag:o,url:i})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,p(t),{TTL:3600})}catch(r){let t=r?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e.endpoint))}}close(){this.db.close()}}function d(e){return(0,s.createHash)("sha256").update(e).digest("hex")}let l=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return l??=new u(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>r(52));module.exports=s})();
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var e={};e.id=6163,e.ids=[6163],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},6005:e=>{e.exports=require("node:crypto")},7561:e=>{e.exports=require("node:fs")},9411:e=>{e.exports=require("node:path")},1867:(e,t,s)=>{s.r(t),s.d(t,{originalPathname:()=>b,patchFetch:()=>y,requestAsyncStorage:()=>h,routeModule:()=>d,serverHooks:()=>l,staticGenerationAsyncStorage:()=>c});var i={};s.r(i),s.d(i,{POST:()=>u});var r=s(7786),n=s(5042),p=s(2184),a=s(1890),o=s(3931);async function u(e){try{let t=await e.json();return a.NextResponse.json((0,o.i)().deleteSubscription(t?.endpoint))}catch(t){let e=t?.status;return a.NextResponse.json({error:t instanceof Error?t.message:"Unable to remove push subscription"},{status:e&&e>=400&&e<500?e:500})}}let d=new r.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/push/unsubscribe/route",pathname:"/api/push/unsubscribe",filename:"route",bundlePath:"app/api/push/unsubscribe/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/push/unsubscribe/route.ts",nextConfigOutput:"standalone",userland:i}),{requestAsyncStorage:h,staticGenerationAsyncStorage:c,serverHooks:l}=d,b="/api/push/unsubscribe/route";function y(){return(0,p.patchFetch)({serverHooks:l,staticGenerationAsyncStorage:c})}},3931:(e,t,s)=>{s.d(t,{i:()=>c});var i=s(6005),r=s(7561),n=s(9411),p=s(5890);let a=require("web-push"),o=e=>JSON.stringify(e??null);class u{constructor(e,t=Date.now){this.now=t;let s=(0,n.resolve)(e,".agentroam-auth");(0,r.mkdirSync)(s,{recursive:!0,mode:448});let i=(0,n.join)(s,"push.sqlite");this.db=new p(i),(0,r.chmodSync)(i,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
1
+ "use strict";(()=>{var e={};e.id=6163,e.ids=[6163],e.modules={5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},6005:e=>{e.exports=require("node:crypto")},7561:e=>{e.exports=require("node:fs")},9411:e=>{e.exports=require("node:path")},1905:(e,t,s)=>{s.r(t),s.d(t,{originalPathname:()=>b,patchFetch:()=>y,requestAsyncStorage:()=>h,routeModule:()=>d,serverHooks:()=>l,staticGenerationAsyncStorage:()=>c});var i={};s.r(i),s.d(i,{POST:()=>u});var r=s(7786),n=s(5042),p=s(2184),a=s(1890),o=s(3931);async function u(e){try{let t=await e.json();return a.NextResponse.json((0,o.i)().deleteSubscription(t?.endpoint))}catch(t){let e=t?.status;return a.NextResponse.json({error:t instanceof Error?t.message:"Unable to remove push subscription"},{status:e&&e>=400&&e<500?e:500})}}let d=new r.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/push/unsubscribe/route",pathname:"/api/push/unsubscribe",filename:"route",bundlePath:"app/api/push/unsubscribe/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/push/unsubscribe/route.ts",nextConfigOutput:"standalone",userland:i}),{requestAsyncStorage:h,staticGenerationAsyncStorage:c,serverHooks:l}=d,b="/api/push/unsubscribe/route";function y(){return(0,p.patchFetch)({serverHooks:l,staticGenerationAsyncStorage:c})}},3931:(e,t,s)=>{s.d(t,{i:()=>c});var i=s(6005),r=s(7561),n=s(9411),p=s(5890);let a=require("web-push"),o=e=>JSON.stringify(e??null);class u{constructor(e,t=Date.now){this.now=t;let s=(0,n.resolve)(e,".agentroam-auth");(0,r.mkdirSync)(s,{recursive:!0,mode:448});let i=(0,n.join)(s,"push.sqlite");this.db=new p(i),(0,r.chmodSync)(i,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
2
2
  CREATE TABLE IF NOT EXISTS push_keys (id INTEGER PRIMARY KEY CHECK(id=1), public_key TEXT NOT NULL, private_key TEXT NOT NULL);
3
3
  CREATE TABLE IF NOT EXISTS push_subscriptions (
4
4
  endpoint_hash TEXT PRIMARY KEY,
@@ -12,4 +12,4 @@
12
12
  INSERT INTO push_subscriptions (endpoint_hash, endpoint, p256dh, auth, device_id, created)
13
13
  VALUES (?, ?, ?, ?, ?, ?)
14
14
  ON CONFLICT(endpoint_hash) DO UPDATE SET p256dh=excluded.p256dh, auth=excluded.auth, device_id=excluded.device_id
15
- `).run(d(s),s,i,r,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:s,body:i,url:r}){let n=e||`${t}:notification`;if(!this.delivered.has(n)){for(this.delivered.add(n);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:n,sessionId:t,title:s,body:i,tag:n,url:r})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,o(t),{TTL:3600})}catch(s){let t=s?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e.endpoint))}}close(){this.db.close()}}function d(e){return(0,i.createHash)("sha256").update(e).digest("hex")}let h=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return h??=new u(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),i=t.X(0,[8375,6703],()=>s(1867));module.exports=i})();
15
+ `).run(d(s),s,i,r,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:s,body:i,url:r}){let n=e||`${t}:notification`;if(!this.delivered.has(n)){for(this.delivered.add(n);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:n,sessionId:t,title:s,body:i,tag:n,url:r})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,o(t),{TTL:3600})}catch(s){let t=s?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(d(e.endpoint))}}close(){this.db.close()}}function d(e){return(0,i.createHash)("sha256").update(e).digest("hex")}let h=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return h??=new u(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),i=t.X(0,[8375,6703],()=>s(1905));module.exports=i})();
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var e={};e.id=3807,e.ids=[3807],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},7669:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>b,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>y,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{GET:()=>u});var i=r(7786),o=r(5042),n=r(2184),a=r(1890),p=r(3931),d=r(1079);async function u(){try{return(0,d.j)(),a.NextResponse.json({publicKey:(0,p.i)().getPublicKey()})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Push is unavailable"},{status:500})}}let l=new i.AppRouteRouteModule({definition:{kind:o.x.APP_ROUTE,page:"/api/push/vapid/route",pathname:"/api/push/vapid",filename:"route",bundlePath:"app/api/push/vapid/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/push/vapid/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:c,staticGenerationAsyncStorage:h,serverHooks:y}=l,f="/api/push/vapid/route";function b(){return(0,n.patchFetch)({serverHooks:y,staticGenerationAsyncStorage:h})}},1079:(e,t,r)=>{r.d(t,{j:()=>u});var s=r(7519),i=r(3931),o=r(535),n=r(1322),a=r(1982);let p=!1,d=new n.sSf;function u(){p||(p=!0,s.agentHost.setGlobalEventObserver((e,t,r)=>{try{if("ask_user"===t.type){(0,i.i)().notifySession({notificationId:`${e}:${t.questionId}:approval`,sessionId:e,kind:"approval",title:"需要你的审批",body:"string"==typeof t.question&&t.question.trim()?t.question.trim().slice(0,160):"会话正在等待确认",url:"/app/"});return}if("done"===t.type){if("goal"===r.source)return;let s=(0,n.mDL)((0,a.dp)().read().taskNotifications),o=r.runId?(0,n.DXW)({sessionId:e,runId:r.runId,title:"任务已完成",finalText:t.finalText,outcome:"completed",source:"user"},s):null;o&&d.accept(o.notificationId)&&(0,i.i)().notifySession({...o,url:`/app/?session=${encodeURIComponent(e)}`});return}if("goal_updated"===t.type&&"complete"===t.goal.status){let r=(0,n.mDL)((0,a.dp)().read().taskNotifications),s=(0,n.DXW)({sessionId:e,runId:`goal:${t.goal.createdAt}`,title:"目标已完成",finalText:t.goal.objective,outcome:"completed",source:"goal",goalFinished:!0},r);s&&d.accept(s.notificationId)&&(0,i.i)().notifySession({...s,url:`/app/?session=${encodeURIComponent(e)}`});return}"error"===t.type&&(0,i.i)().notifySession({notificationId:`${e}:${r.runId??"unknown"}:error`,sessionId:e,kind:"error",title:"会话出错",body:"string"==typeof t.message&&t.message.trim()?t.message.trim().slice(0,160):"运行失败",url:"/app/"})}catch(t){(0,o.L)().warn("web push notify failed",{sessionId:e,error:t instanceof Error?t.message:String(t)})}}))}},1489:(e,t,r)=>{r.d(t,{N:()=>p});var s=r(1322),i=r(6279),o=r(785);class n{constructor(){this.tasks=new s.vo4((0,o.kO)()),this.scheduler=new i.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:t}=await r.e(7519).then(r.bind(r,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([r.e(7519),r.e(732)]).then(r.bind(r,732)),i=e.sessionId;i&&await t.getSessionStore().get(i)||(i=(await t.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:i})),await s().enqueue(i,e.prompt)}call(e,t){let r=String(t[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof t[0]||"string"!=typeof t[1]||!t[1].trim())throw Error("cron and prompt required");let e=t[2]&&"object"==typeof t[2]?t[2]:{};return this.tasks.create({cron:t[0],prompt:t[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(r);case"cronResume":return this.tasks.resume(r);case"cronDelete":return this.tasks.delete(r);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function p(){return a.__sharedCronService??=new n}},3931:(e,t,r)=>{r.d(t,{i:()=>c});var s=r(6005),i=r(7561),o=r(9411),n=r(5890);let a=require("web-push"),p=e=>JSON.stringify(e??null);class d{constructor(e,t=Date.now){this.now=t;let r=(0,o.resolve)(e,".agentroam-auth");(0,i.mkdirSync)(r,{recursive:!0,mode:448});let s=(0,o.join)(r,"push.sqlite");this.db=new n(s),(0,i.chmodSync)(s,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
1
+ "use strict";(()=>{var e={};e.id=3807,e.ids=[3807],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},6873:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>b,requestAsyncStorage:()=>c,routeModule:()=>l,serverHooks:()=>y,staticGenerationAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{GET:()=>u});var i=r(7786),o=r(5042),n=r(2184),a=r(1890),p=r(3931),d=r(1079);async function u(){try{return(0,d.j)(),a.NextResponse.json({publicKey:(0,p.i)().getPublicKey()})}catch(e){return a.NextResponse.json({error:e instanceof Error?e.message:"Push is unavailable"},{status:500})}}let l=new i.AppRouteRouteModule({definition:{kind:o.x.APP_ROUTE,page:"/api/push/vapid/route",pathname:"/api/push/vapid",filename:"route",bundlePath:"app/api/push/vapid/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/push/vapid/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:c,staticGenerationAsyncStorage:h,serverHooks:y}=l,f="/api/push/vapid/route";function b(){return(0,n.patchFetch)({serverHooks:y,staticGenerationAsyncStorage:h})}},1079:(e,t,r)=>{r.d(t,{j:()=>u});var s=r(7519),i=r(3931),o=r(535),n=r(1322),a=r(1982);let p=!1,d=new n.sSf;function u(){p||(p=!0,s.agentHost.setGlobalEventObserver((e,t,r)=>{try{if("ask_user"===t.type){(0,i.i)().notifySession({notificationId:`${e}:${t.questionId}:approval`,sessionId:e,kind:"approval",title:"需要你的审批",body:"string"==typeof t.question&&t.question.trim()?t.question.trim().slice(0,160):"会话正在等待确认",url:"/app/"});return}if("done"===t.type){if("goal"===r.source)return;let s=(0,n.mDL)((0,a.dp)().read().taskNotifications),o=r.runId?(0,n.DXW)({sessionId:e,runId:r.runId,title:"任务已完成",finalText:t.finalText,outcome:"completed",source:"user"},s):null;o&&d.accept(o.notificationId)&&(0,i.i)().notifySession({...o,url:`/app/?session=${encodeURIComponent(e)}`});return}if("goal_updated"===t.type&&"complete"===t.goal.status){let r=(0,n.mDL)((0,a.dp)().read().taskNotifications),s=(0,n.DXW)({sessionId:e,runId:`goal:${t.goal.createdAt}`,title:"目标已完成",finalText:t.goal.objective,outcome:"completed",source:"goal",goalFinished:!0},r);s&&d.accept(s.notificationId)&&(0,i.i)().notifySession({...s,url:`/app/?session=${encodeURIComponent(e)}`});return}"error"===t.type&&(0,i.i)().notifySession({notificationId:`${e}:${r.runId??"unknown"}:error`,sessionId:e,kind:"error",title:"会话出错",body:"string"==typeof t.message&&t.message.trim()?t.message.trim().slice(0,160):"运行失败",url:"/app/"})}catch(t){(0,o.L)().warn("web push notify failed",{sessionId:e,error:t instanceof Error?t.message:String(t)})}}))}},1489:(e,t,r)=>{r.d(t,{N:()=>p});var s=r(1322),i=r(6279),o=r(785);class n{constructor(){this.tasks=new s.vo4((0,o.kO)()),this.scheduler=new i.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:t}=await r.e(7519).then(r.bind(r,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([r.e(7519),r.e(732)]).then(r.bind(r,732)),i=e.sessionId;i&&await t.getSessionStore().get(i)||(i=(await t.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:i})),await s().enqueue(i,e.prompt)}call(e,t){let r=String(t[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof t[0]||"string"!=typeof t[1]||!t[1].trim())throw Error("cron and prompt required");let e=t[2]&&"object"==typeof t[2]?t[2]:{};return this.tasks.create({cron:t[0],prompt:t[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(r);case"cronResume":return this.tasks.resume(r);case"cronDelete":return this.tasks.delete(r);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let a=globalThis;function p(){return a.__sharedCronService??=new n}},3931:(e,t,r)=>{r.d(t,{i:()=>c});var s=r(6005),i=r(7561),o=r(9411),n=r(5890);let a=require("web-push"),p=e=>JSON.stringify(e??null);class d{constructor(e,t=Date.now){this.now=t;let r=(0,o.resolve)(e,".agentroam-auth");(0,i.mkdirSync)(r,{recursive:!0,mode:448});let s=(0,o.join)(r,"push.sqlite");this.db=new n(s),(0,i.chmodSync)(s,384),this.db.pragma("busy_timeout = 5000"),this.db.exec(`
2
2
  CREATE TABLE IF NOT EXISTS push_keys (id INTEGER PRIMARY KEY CHECK(id=1), public_key TEXT NOT NULL, private_key TEXT NOT NULL);
3
3
  CREATE TABLE IF NOT EXISTS push_subscriptions (
4
4
  endpoint_hash TEXT PRIMARY KEY,
@@ -12,4 +12,4 @@
12
12
  INSERT INTO push_subscriptions (endpoint_hash, endpoint, p256dh, auth, device_id, created)
13
13
  VALUES (?, ?, ?, ?, ?, ?)
14
14
  ON CONFLICT(endpoint_hash) DO UPDATE SET p256dh=excluded.p256dh, auth=excluded.auth, device_id=excluded.device_id
15
- `).run(u(r),r,s,i,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(u(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:r,body:s,url:i}){let o=e||`${t}:notification`;if(!this.delivered.has(o)){for(this.delivered.add(o);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:o,sessionId:t,title:r,body:s,tag:o,url:i})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,p(t),{TTL:3600})}catch(r){let t=r?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(u(e.endpoint))}}close(){this.db.close()}}function u(e){return(0,s.createHash)("sha256").update(e).digest("hex")}let l=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return l??=new d(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>r(7669));module.exports=s})();
15
+ `).run(u(r),r,s,i,"string"==typeof e?e:null,this.now()),{ok:!0}}deleteSubscription(e){if("string"!=typeof e||!e)throw Object.assign(Error("Endpoint required"),{status:400});return this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(u(e)),{ok:!0}}listSubscriptions(){return this.db.prepare("SELECT endpoint, p256dh, auth, device_id FROM push_subscriptions").all().map(e=>({endpoint:e.endpoint,keys:{p256dh:e.p256dh,auth:e.auth},deviceId:e.device_id}))}notifySession({notificationId:e,sessionId:t,title:r,body:s,url:i}){let o=e||`${t}:notification`;if(!this.delivered.has(o)){for(this.delivered.add(o);this.delivered.size>500;)this.delivered.delete(this.delivered.values().next().value);this.sendToAll({notificationId:o,sessionId:t,title:r,body:s,tag:o,url:i})}}async sendToAll(e){let t=this.listSubscriptions();await Promise.allSettled(t.map(t=>this.send(t,e)))}async send(e,t){try{a.setVapidDetails("mailto:agentroam@localhost",this.keys.publicKey,this.keys.privateKey),await a.sendNotification(e,p(t),{TTL:3600})}catch(r){let t=r?.statusCode;(404===t||410===t)&&this.db.prepare("DELETE FROM push_subscriptions WHERE endpoint_hash=?").run(u(e.endpoint))}}close(){this.db.close()}}function u(e){return(0,s.createHash)("sha256").update(e).digest("hex")}let l=null;function c(e=process.env.AGENT_DATA_DIR?.trim()||process.cwd()){return l??=new d(e)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>r(6873));module.exports=s})();
@@ -1 +1 @@
1
- {"publicKey":"BPR1k0nKoo5cb3n6e_Woiehc7zCrL3GqMdkYohSgREP2_CshA7nJkRKuE4I8PGthe1GxdvXkbnN7lNqj3-eePjA"}
1
+ {"publicKey":"BLy0r6u2GcUDgcZPpNgwXoLEM4cX0WkrZe0yIHhz3dkIHquXwwewLPFbj90k1m3RN8nyfH0tr_5yB2mRoMEahA4"}
@@ -1 +1 @@
1
- "use strict";(()=>{var e={};e.id=2166,e.ids=[2166],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},6046:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>d,routeModule:()=>l,serverHooks:()=>m,staticGenerationAsyncStorage:()=>h});var s={};t.r(s),t.d(s,{POST:()=>p});var o=t(7786),n=t(5042),u=t(2184),i=t(1890),a=t(7519);function c(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}async function p(e){let r;try{r=await e.json()}catch{return i.NextResponse.json({error:"Invalid JSON"},{status:400})}let t=function(e){if(!c(e))return{success:!1,error:"Request body must be an object"};if("string"!=typeof e.projectId||0===e.projectId.length)return{success:!1,error:"projectId is required"};if(!Array.isArray(e.tools)||0===e.tools.length)return{success:!1,error:"tools must contain at least one tool"};let r=[];for(let o of e.tools){var t,s;if(!c(o))return{success:!1,error:"tool must be an object"};if("string"!=typeof o.scheme||0===o.scheme.length)return{success:!1,error:"tool.scheme is required"};if("string"!=typeof o.purpose||0===o.purpose.length)return{success:!1,error:"tool.purpose is required"};if("string"!=typeof o.url)return{success:!1,error:"tool.url is required"};try{new URL(o.url)}catch{return{success:!1,error:"tool.url must be a valid URL"}}if(void 0!==o.method&&"POST"!==o.method)return{success:!1,error:"tool.method must be POST"};let e=void 0===o.headers?{}:c(t=o.headers)&&Object.values(t).every(e=>"string"==typeof e)?t:null,n=void 0===o.inputSchema?{}:o.inputSchema,u=void 0===o.outputSchema?{}:o.outputSchema,i=void 0===o.examples?[]:Array.isArray(s=o.examples)&&s.every(c)?s:null,a=void 0===o.auth?{}:o.auth;if(!e)return{success:!1,error:"tool.headers must be a string record"};if(!c(n))return{success:!1,error:"tool.inputSchema must be an object"};if(!c(u))return{success:!1,error:"tool.outputSchema must be an object"};if(!i)return{success:!1,error:"tool.examples must be an array of objects"};if(!c(a))return{success:!1,error:"tool.auth must be an object"};r.push({scheme:o.scheme,purpose:o.purpose,url:o.url,method:"POST",headers:e,inputSchema:n,outputSchema:u,examples:i,auth:a})}return{success:!0,data:{projectId:e.projectId,tools:r}}}(r);if(!t.success)return i.NextResponse.json({error:t.error},{status:400});if(!function(e,r){let t=e.headers.get("authorization");if([process.env.AGENT_REMOTE_TOOLS_REGISTER_TOKEN,process.env.AGENT_SDK_REGISTRATION_TOKEN].filter(e=>!!e).some(e=>t===`Bearer ${e}`))return!0;let s=process.env.AGENT_SDK_TOKEN;return!!s&&t===`Bearer ${s}`&&function(e,r){var t;let s;if(!process.env.AGENT_PROJECT_ID)return!1;let o=e.headers.get("origin");if(!o)return!1;try{s=new URL(o).origin}catch{return!1}let n=(t=r.projectId,process.env.AGENT_PROJECT_ID&&t===process.env.AGENT_PROJECT_ID?process.env.AGENT_SDK_ALLOWED_ORIGIN??process.env.AGENT_BROWSER_ORIGIN??null:null);if(n)try{if(new URL(n).origin!==s)return!1}catch{return!1}else if(process.env.AGENT_PROJECT_ID)return!1;return r.tools.every(e=>{try{return new URL(e.url).origin===s}catch{return!1}})}(e,r)}(e,t.data))return i.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let s=a.agentHost.registerRemoteTools(t.data.projectId,t.data.tools);return i.NextResponse.json({ok:!0,tools:s.map(e=>({scheme:e.scheme,purpose:e.purpose}))})}let l=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/remote-tools/register/route",pathname:"/api/remote-tools/register",filename:"route",bundlePath:"app/api/remote-tools/register/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release46-ky7L12/repository/packages/server/app/api/remote-tools/register/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:h,serverHooks:m}=l,f="/api/remote-tools/register/route";function g(){return(0,u.patchFetch)({serverHooks:m,staticGenerationAsyncStorage:h})}},1489:(e,r,t)=>{t.d(r,{N:()=>a});var s=t(1322),o=t(6279),n=t(785);class u{constructor(){this.tasks=new s.vo4((0,n.kO)()),this.scheduler=new o.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:r}=await t.e(7519).then(t.bind(t,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([t.e(7519),t.e(732)]).then(t.bind(t,732)),o=e.sessionId;o&&await r.getSessionStore().get(o)||(o=(await r.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:o})),await s().enqueue(o,e.prompt)}call(e,r){let t=String(r[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof r[0]||"string"!=typeof r[1]||!r[1].trim())throw Error("cron and prompt required");let e=r[2]&&"object"==typeof r[2]?r[2]:{};return this.tasks.create({cron:r[0],prompt:r[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(t);case"cronResume":return this.tasks.resume(t);case"cronDelete":return this.tasks.delete(t);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let i=globalThis;function a(){return i.__sharedCronService??=new u}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>t(6046));module.exports=s})();
1
+ "use strict";(()=>{var e={};e.id=2166,e.ids=[2166],e.modules={7728:e=>{e.exports=require("@anthropic-ai/claude-agent-sdk")},5890:e=>{e.exports=require("better-sqlite3")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},9801:e=>{e.exports=require("os")},5315:e=>{e.exports=require("path")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},5673:e=>{e.exports=require("node:events")},7561:e=>{e.exports=require("node:fs")},3977:e=>{e.exports=require("node:fs/promises")},8849:e=>{e.exports=require("node:http")},2286:e=>{e.exports=require("node:https")},2033:e=>{e.exports=require("node:module")},7503:e=>{e.exports=require("node:net")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},1747:e=>{e.exports=require("node:readline")},4492:e=>{e.exports=require("node:stream")},6915:e=>{e.exports=require("node:string_decoder")},1041:e=>{e.exports=require("node:url")},7261:e=>{e.exports=require("node:util")},5897:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>d,routeModule:()=>l,serverHooks:()=>m,staticGenerationAsyncStorage:()=>h});var s={};t.r(s),t.d(s,{POST:()=>p});var o=t(7786),n=t(5042),i=t(2184),u=t(1890),a=t(7519);function c(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}async function p(e){let r;try{r=await e.json()}catch{return u.NextResponse.json({error:"Invalid JSON"},{status:400})}let t=function(e){if(!c(e))return{success:!1,error:"Request body must be an object"};if("string"!=typeof e.projectId||0===e.projectId.length)return{success:!1,error:"projectId is required"};if(!Array.isArray(e.tools)||0===e.tools.length)return{success:!1,error:"tools must contain at least one tool"};let r=[];for(let o of e.tools){var t,s;if(!c(o))return{success:!1,error:"tool must be an object"};if("string"!=typeof o.scheme||0===o.scheme.length)return{success:!1,error:"tool.scheme is required"};if("string"!=typeof o.purpose||0===o.purpose.length)return{success:!1,error:"tool.purpose is required"};if("string"!=typeof o.url)return{success:!1,error:"tool.url is required"};try{new URL(o.url)}catch{return{success:!1,error:"tool.url must be a valid URL"}}if(void 0!==o.method&&"POST"!==o.method)return{success:!1,error:"tool.method must be POST"};let e=void 0===o.headers?{}:c(t=o.headers)&&Object.values(t).every(e=>"string"==typeof e)?t:null,n=void 0===o.inputSchema?{}:o.inputSchema,i=void 0===o.outputSchema?{}:o.outputSchema,u=void 0===o.examples?[]:Array.isArray(s=o.examples)&&s.every(c)?s:null,a=void 0===o.auth?{}:o.auth;if(!e)return{success:!1,error:"tool.headers must be a string record"};if(!c(n))return{success:!1,error:"tool.inputSchema must be an object"};if(!c(i))return{success:!1,error:"tool.outputSchema must be an object"};if(!u)return{success:!1,error:"tool.examples must be an array of objects"};if(!c(a))return{success:!1,error:"tool.auth must be an object"};r.push({scheme:o.scheme,purpose:o.purpose,url:o.url,method:"POST",headers:e,inputSchema:n,outputSchema:i,examples:u,auth:a})}return{success:!0,data:{projectId:e.projectId,tools:r}}}(r);if(!t.success)return u.NextResponse.json({error:t.error},{status:400});if(!function(e,r){let t=e.headers.get("authorization");if([process.env.AGENT_REMOTE_TOOLS_REGISTER_TOKEN,process.env.AGENT_SDK_REGISTRATION_TOKEN].filter(e=>!!e).some(e=>t===`Bearer ${e}`))return!0;let s=process.env.AGENT_SDK_TOKEN;return!!s&&t===`Bearer ${s}`&&function(e,r){var t;let s;if(!process.env.AGENT_PROJECT_ID)return!1;let o=e.headers.get("origin");if(!o)return!1;try{s=new URL(o).origin}catch{return!1}let n=(t=r.projectId,process.env.AGENT_PROJECT_ID&&t===process.env.AGENT_PROJECT_ID?process.env.AGENT_SDK_ALLOWED_ORIGIN??process.env.AGENT_BROWSER_ORIGIN??null:null);if(n)try{if(new URL(n).origin!==s)return!1}catch{return!1}else if(process.env.AGENT_PROJECT_ID)return!1;return r.tools.every(e=>{try{return new URL(e.url).origin===s}catch{return!1}})}(e,r)}(e,t.data))return u.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let s=a.agentHost.registerRemoteTools(t.data.projectId,t.data.tools);return u.NextResponse.json({ok:!0,tools:s.map(e=>({scheme:e.scheme,purpose:e.purpose}))})}let l=new o.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/remote-tools/register/route",pathname:"/api/remote-tools/register",filename:"route",bundlePath:"app/api/remote-tools/register/route"},resolvedPagePath:"/private/var/folders/6r/m9bbktwj1pvbr6hbzpxqkq3h0000gn/T/agentroam-release48-WLi1lw/repository/packages/server/app/api/remote-tools/register/route.ts",nextConfigOutput:"standalone",userland:s}),{requestAsyncStorage:d,staticGenerationAsyncStorage:h,serverHooks:m}=l,f="/api/remote-tools/register/route";function g(){return(0,i.patchFetch)({serverHooks:m,staticGenerationAsyncStorage:h})}},1489:(e,r,t)=>{t.d(r,{N:()=>a});var s=t(1322),o=t(6279),n=t(785);class i{constructor(){this.tasks=new s.vo4((0,n.kO)()),this.scheduler=new o.ST(this.tasks,e=>{this.fire(e).catch(e=>console.error("Scheduled Customer Agent run failed",e))},()=>{}),this.scheduler.start()}async fire(e){let{agentHost:r}=await t.e(7519).then(t.bind(t,7519)),{getCustomerGoalCoordinator:s}=await Promise.all([t.e(7519),t.e(732)]).then(t.bind(t,732)),o=e.sessionId;o&&await r.getSessionStore().get(o)||(o=(await r.createSession(e.label||"定时任务")).id,this.tasks.update(e.id,{sessionId:o})),await s().enqueue(o,e.prompt)}call(e,r){let t=String(r[0]||"");switch(e){case"cronList":return this.tasks.list();case"cronCreate":{if("string"!=typeof r[0]||"string"!=typeof r[1]||!r[1].trim())throw Error("cron and prompt required");let e=r[2]&&"object"==typeof r[2]?r[2]:{};return this.tasks.create({cron:r[0],prompt:r[1],recurring:!1!==e.recurring,enabled:!0,durable:!0,..."string"==typeof e.sessionId?{sessionId:e.sessionId}:{},..."string"==typeof e.label?{label:e.label}:{}})}case"cronPause":return this.tasks.pause(t);case"cronResume":return this.tasks.resume(t);case"cronDelete":return this.tasks.delete(t);case"cronDeleteAll":return this.tasks.deleteAll(),{ok:!0};default:throw Error("Unsupported schedule operation")}}}let u=globalThis;function a(){return u.__sharedCronService??=new i}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[8375,6703,6244,1322,1773,4621,7519],()=>t(5897));module.exports=s})();