tower-studio 0.2.18 → 0.2.19

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 (361) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +3 -100
  4. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  5. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_not-found/page/next-font-manifest.json +1 -1
  12. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -1
  13. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +40 -28
  14. package/.next/standalone/.next/server/app/_not-found/page.js +5 -4
  15. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/api/adapters/test/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/browse-fs/route.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/internal/assets/reveal/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/internal/assistant/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/internal/backup/import/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/missions/page/next-font-manifest.json +1 -1
  39. package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +1 -1
  40. package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +87 -63
  41. package/.next/standalone/.next/server/app/missions/page.js +8 -6
  42. package/.next/standalone/.next/server/app/missions/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/onboarding/page/next-font-manifest.json +1 -1
  45. package/.next/standalone/.next/server/app/onboarding/page/react-loadable-manifest.json +1 -1
  46. package/.next/standalone/.next/server/app/onboarding/page/server-reference-manifest.json +40 -28
  47. package/.next/standalone/.next/server/app/onboarding/page.js +5 -4
  48. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/page/next-font-manifest.json +1 -1
  51. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +1 -1
  52. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +40 -28
  53. package/.next/standalone/.next/server/app/page.js +5 -4
  54. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/settings/page/next-font-manifest.json +1 -1
  57. package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +1 -1
  58. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +56 -44
  59. package/.next/standalone/.next/server/app/settings/page.js +5 -4
  60. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/next-font-manifest.json +1 -1
  63. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +1 -1
  64. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +95 -83
  65. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js +7 -5
  66. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +1 -1
  67. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/next-font-manifest.json +1 -1
  69. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +1 -1
  70. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +89 -77
  71. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js +7 -5
  72. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +1 -1
  73. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/next-font-manifest.json +1 -1
  75. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +1 -1
  76. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +78 -66
  77. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js +5 -4
  78. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/next-font-manifest.json +1 -1
  81. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +1 -1
  82. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +87 -63
  83. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js +8 -6
  84. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +1 -1
  85. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/next-font-manifest.json +1 -1
  87. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +1 -1
  88. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +40 -28
  89. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +6 -5
  90. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +1 -1
  91. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/next-font-manifest.json +1 -1
  93. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/react-loadable-manifest.json +1 -1
  94. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/server-reference-manifest.json +81 -69
  95. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js +7 -5
  96. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/next-font-manifest.json +1 -1
  99. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +2 -2
  100. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +100 -76
  101. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +8 -6
  102. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/workspaces/page/next-font-manifest.json +1 -1
  105. package/.next/standalone/.next/server/app/workspaces/page/react-loadable-manifest.json +1 -1
  106. package/.next/standalone/.next/server/app/workspaces/page/server-reference-manifest.json +60 -48
  107. package/.next/standalone/.next/server/app/workspaces/page.js +5 -4
  108. package/.next/standalone/.next/server/app/workspaces/page.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/workspaces/page_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0hrprmi.js +2 -2
  111. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-0gs-6._.js +1 -1
  112. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03j20vp._.js +2 -2
  113. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05se6yk._.js +1 -1
  114. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06m1r8x._.js +1 -1
  115. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09p152b._.js +1 -1
  116. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_6swdz._.js +2 -2
  117. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b-ib~7._.js +1 -1
  118. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gmwjkc._.js +1 -1
  119. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o3ggen._.js +1 -1
  120. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wuzc5o._.js +1 -1
  121. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12c9noi._.js +1 -1
  122. package/.next/standalone/.next/server/chunks/src_0bkvm8c._.js +1 -1
  123. package/.next/standalone/.next/server/chunks/src_lib_0aowbzy._.js +1 -1
  124. package/.next/standalone/.next/server/chunks/ssr/0iu._[workspaceId]_projects_[projectId]_versions_version-timeline-client_tsx_07o_kyi._.js +1 -1
  125. package/.next/standalone/.next/server/chunks/ssr/[externals]_@vscode_ripgrep_0m7itqb._.js +3 -0
  126. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0b~c--d._.js → [root-of-the-server]__01evhhc._.js} +1 -1
  127. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0p4-t7d._.js → [root-of-the-server]__0261~vp._.js} +1 -1
  128. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0313pct._.js +3 -0
  129. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0eql-bn._.js → [root-of-the-server]__07ns1z8._.js} +2 -2
  130. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08xomvf._.js +47 -0
  131. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__01vzmbg._.js → [root-of-the-server]__09rts_e._.js} +1 -1
  132. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b.ej5q._.js +1 -1
  133. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0jg4u05._.js → [root-of-the-server]__0c7x0o9._.js} +2 -2
  134. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0e82_jw._.js +3 -0
  135. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0p_3kgh._.js → [root-of-the-server]__0eea3ta._.js} +1 -1
  136. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0_0box3._.js → [root-of-the-server]__0la1659._.js} +1 -1
  137. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0jvh8f3._.js → [root-of-the-server]__0m1tg3c._.js} +1 -1
  138. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0t46zla._.js → [root-of-the-server]__0oqhxfb._.js} +1 -1
  139. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0lxcgi4._.js → [root-of-the-server]__0qy0o3-._.js} +1 -1
  140. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0sc_a_d._.js +30 -0
  141. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__06lecy.._.js → [root-of-the-server]__0sdd0qu._.js} +1 -1
  142. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0sdt1y5._.js +3 -0
  143. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0ad6qqx._.js → [root-of-the-server]__0sk.itb._.js} +2 -2
  144. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__10t-oa1._.js → [root-of-the-server]__0th0_fo._.js} +4 -4
  145. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0edxb4j._.js → [root-of-the-server]__0ty1ao1._.js} +2 -2
  146. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__11_h9vs._.js → [root-of-the-server]__0v7p~3.._.js} +2 -2
  147. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0wjuu0z._.js +3 -0
  148. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0wt83kv._.js +1 -1
  149. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y.s5ax._.js +3 -0
  150. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y5wu~l._.js +3 -0
  151. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0y.2qv_._.js → [root-of-the-server]__0z7je5_._.js} +3 -3
  152. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zq.n2w._.js +30 -0
  153. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11zjs~k._.js +1 -1
  154. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0zhkbm~._.js → [root-of-the-server]__12ktvsa._.js} +1 -1
  155. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0fvk61p._.js → [root-of-the-server]__13374-3._.js} +1 -1
  156. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__134_xv.._.js +3 -0
  157. package/.next/standalone/.next/server/chunks/ssr/{_0-m6pij._.js → _0-ez10.._.js} +1 -1
  158. package/.next/standalone/.next/server/chunks/ssr/_01e47s2._.js +4 -0
  159. package/.next/standalone/.next/server/chunks/ssr/_01yg50d._.js +3 -0
  160. package/.next/standalone/.next/server/chunks/ssr/{_0r2el9k._.js → _0574rlr._.js} +1 -1
  161. package/.next/standalone/.next/server/chunks/ssr/_05l656y._.js +3 -0
  162. package/.next/standalone/.next/server/chunks/ssr/_06-jig2._.js +3 -0
  163. package/.next/standalone/.next/server/chunks/ssr/{_0wk5s-y._.js → _08z-g~5._.js} +4 -4
  164. package/.next/standalone/.next/server/chunks/ssr/_09qgmwg._.js +3 -0
  165. package/.next/standalone/.next/server/chunks/ssr/_0_7d5_7._.js +7 -0
  166. package/.next/standalone/.next/server/chunks/ssr/{_05qfznq._.js → _0_vjay8._.js} +4 -4
  167. package/.next/standalone/.next/server/chunks/ssr/_0_zfpwh._.js +3 -0
  168. package/.next/standalone/.next/server/chunks/ssr/_0cj9a7y._.js +2 -2
  169. package/.next/standalone/.next/server/chunks/ssr/_0djgo-u._.js +3 -0
  170. package/.next/standalone/.next/server/chunks/ssr/_0dvltcf._.js +3 -0
  171. package/.next/standalone/.next/server/chunks/ssr/_0gv9sv3._.js +3 -0
  172. package/.next/standalone/.next/server/chunks/ssr/_0jg.s-g._.js +1 -1
  173. package/.next/standalone/.next/server/chunks/ssr/_0jz8fv8._.js +3 -0
  174. package/.next/standalone/.next/server/chunks/ssr/{_0~dc49z._.js → _0kef0v6._.js} +1 -1
  175. package/.next/standalone/.next/server/chunks/ssr/_0n.xiu5._.js +7 -0
  176. package/.next/standalone/.next/server/chunks/ssr/{_0gy-1oc._.js → _0nbufo.._.js} +1 -1
  177. package/.next/standalone/.next/server/chunks/ssr/_0ng0eku._.js +1 -1
  178. package/.next/standalone/.next/server/chunks/ssr/{_0f2quba._.js → _0qkxdkn._.js} +1 -1
  179. package/.next/standalone/.next/server/chunks/ssr/{_00vtpb1._.js → _0r6gweb._.js} +4 -4
  180. package/.next/standalone/.next/server/chunks/ssr/_0rdyrfd._.js +1 -1
  181. package/.next/standalone/.next/server/chunks/ssr/{_0mg_44.._.js → _0rqf5w7._.js} +1 -1
  182. package/.next/standalone/.next/server/chunks/ssr/{_0lgx4c3._.js → _0rt8jf_._.js} +4 -4
  183. package/.next/standalone/.next/server/chunks/ssr/{_0s58zbp._.js → _0sbxdnc._.js} +1 -1
  184. package/.next/standalone/.next/server/chunks/ssr/_0ueyys5._.js +1 -1
  185. package/.next/standalone/.next/server/chunks/ssr/_0unw1fq._.js +2 -2
  186. package/.next/standalone/.next/server/chunks/ssr/{_0y3bnq6._.js → _0uuzh5m._.js} +4 -4
  187. package/.next/standalone/.next/server/chunks/ssr/{_0m2o_3.._.js → _0~aon4t._.js} +4 -4
  188. package/.next/standalone/.next/server/chunks/ssr/_10ogq8w._.js +3 -0
  189. package/.next/standalone/.next/server/chunks/ssr/_13esy08._.js +3 -0
  190. package/.next/standalone/.next/server/chunks/ssr/_13kwp85._.js +7 -0
  191. package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_0hhlpw6._.js +3 -0
  192. package/.next/standalone/.next/server/chunks/ssr/src_075s.rk._.js +3 -0
  193. package/.next/standalone/.next/server/chunks/ssr/src_0djxlqx._.js +3 -0
  194. package/.next/standalone/.next/server/chunks/ssr/src_0eufeyj._.js +1 -1
  195. package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +1 -1
  196. package/.next/standalone/.next/server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js +1 -1
  197. package/.next/standalone/.next/server/chunks/ssr/src_app_missions_missions-client_tsx_11429lj._.js +1 -1
  198. package/.next/standalone/.next/server/chunks/ssr/src_app_onboarding_page_tsx_0xf7hpz._.js +1 -1
  199. package/.next/standalone/.next/server/chunks/ssr/src_app_settings_page_tsx_0h9v7dr._.js +1 -1
  200. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0wyzpam._.js +1 -1
  201. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_board-page-client_tsx_0gips66._.js +1 -1
  202. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_02t7blt._.js +1 -1
  203. package/.next/standalone/.next/server/chunks/ssr/{src_lib_0.e1lk4._.js → src_lib_00tdjs9._.js} +1 -1
  204. package/.next/standalone/.next/server/chunks/ssr/{src_lib_08rw1cx._.js → src_lib_0153vha._.js} +1 -1
  205. package/.next/standalone/.next/server/chunks/ssr/{src_lib_0a3sg-k._.js → src_lib_07bxr4y._.js} +1 -1
  206. package/.next/standalone/.next/server/chunks/ssr/{src_lib_0hddinr._.js → src_lib_0dnn~ft._.js} +1 -1
  207. package/.next/standalone/.next/server/chunks/ssr/src_lib_0e.v07~._.js +3 -0
  208. package/.next/standalone/.next/server/chunks/ssr/src_lib_0haj7_-._.js +3 -0
  209. package/.next/standalone/.next/server/chunks/ssr/src_lib_0vp4mgz._.js +3 -0
  210. package/.next/standalone/.next/server/chunks/ssr/src_lib_0wd-1.k._.js +3 -0
  211. package/.next/standalone/.next/server/chunks/ssr/src_lib_0yvdojq._.js +3 -0
  212. package/.next/standalone/.next/server/chunks/ssr/src_lib_0zfjhu1._.js +3 -0
  213. package/.next/standalone/.next/server/chunks/ssr/src_lib_0~cwhiw._.js +3 -0
  214. package/.next/standalone/.next/server/chunks/ssr/src_lib_127qa83._.js +3 -0
  215. package/.next/standalone/.next/server/chunks/ssr/src_lib_12h5txa._.js +3 -0
  216. package/.next/standalone/.next/server/chunks/ssr/src_lib_worktree_ts_06cucy3._.js +1 -1
  217. package/.next/standalone/.next/server/functions-config-manifest.json +10 -1
  218. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  219. package/.next/standalone/.next/server/next-font-manifest.js +1 -1
  220. package/.next/standalone/.next/server/next-font-manifest.json +13 -13
  221. package/.next/standalone/.next/server/pages/500.html +1 -1
  222. package/.next/standalone/.next/server/pages-manifest.json +0 -1
  223. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  224. package/.next/standalone/.next/server/server-reference-manifest.json +382 -274
  225. package/.next/standalone/.next/static/chunks/0._824vjqa-9k.js +5 -0
  226. package/.next/standalone/.next/static/chunks/03og02bu96n.e.js +1 -0
  227. package/.next/standalone/.next/static/chunks/{1634ulzz-40pw.js → 04wsku4m5~s1q.js} +1 -1
  228. package/.next/standalone/.next/static/chunks/{123doanyjnwwq.css → 066jf0nk75nic.css} +1 -1
  229. package/.next/standalone/.next/static/chunks/06qwj~g0qwhey.js +5 -0
  230. package/.next/standalone/.next/static/chunks/08rokhw7bg_zn.js +1 -0
  231. package/.next/standalone/.next/static/chunks/08~85j56saf6q.js +1 -0
  232. package/.next/standalone/.next/static/chunks/096ysbmoa9qsb.js +1 -0
  233. package/.next/standalone/.next/static/chunks/0b6zhezopdbs2.js +1 -0
  234. package/.next/standalone/.next/static/chunks/0c7b_.6i4jef8.js +1 -0
  235. package/.next/standalone/.next/static/chunks/0esvyij44lvt6.js +1 -0
  236. package/.next/standalone/.next/static/chunks/0hniqlgz6waea.js +2 -0
  237. package/.next/standalone/.next/static/chunks/0hseznii2u-4n.js +5 -0
  238. package/.next/standalone/.next/static/chunks/0izukvmui9f8m.js +1 -0
  239. package/.next/standalone/.next/static/chunks/0kycb80.t-7_-.js +1 -0
  240. package/.next/standalone/.next/static/chunks/0lv0zqg.f66eu.js +1 -0
  241. package/.next/standalone/.next/static/chunks/{0_we-0tskn.or.js → 0njf5husn6ovd.js} +1 -1
  242. package/.next/standalone/.next/static/chunks/0okjtk-a.5lz0.css +1 -0
  243. package/.next/standalone/.next/static/chunks/0p7hamd-yspky.js +2 -0
  244. package/.next/standalone/.next/static/chunks/0s6ygn-alcm2d.js +1 -0
  245. package/.next/standalone/.next/static/chunks/0v66~34w9t3gz.js +5 -0
  246. package/.next/standalone/.next/static/chunks/0v_nmghra_n2q.js +1 -0
  247. package/.next/standalone/.next/static/chunks/{0gs_-avkejs0n.js → 0vu_cifxk7vfu.js} +1 -1
  248. package/.next/standalone/.next/static/chunks/0zf35xwv.l3l7.js +1 -0
  249. package/.next/standalone/.next/static/chunks/{15ugy0vmnfdus.js → 10ght~j9wl9ab.js} +1 -1
  250. package/.next/standalone/.next/static/chunks/11.t9_o8cox8t.js +1 -0
  251. package/.next/standalone/.next/static/chunks/1124-9qfcr70v.js +1 -0
  252. package/.next/standalone/.next/static/chunks/116ssnh5k8ad9.js +1 -0
  253. package/.next/standalone/.next/static/chunks/162ec9.32dj73.js +1 -0
  254. package/.next/standalone/.next/static/media/4fa387ec64143e14-s.0wkzw~je483f-.woff2 +0 -0
  255. package/.next/standalone/.next/static/media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2 +0 -0
  256. package/.next/standalone/.next/static/media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2 +0 -0
  257. package/.next/standalone/.next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2 +0 -0
  258. package/.next/standalone/.next/static/media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2 +0 -0
  259. package/.next/standalone/.next/static/media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2 +0 -0
  260. package/.next/standalone/package.json +2 -1
  261. package/dist/mcp-server.cjs +80 -27
  262. package/package.json +2 -1
  263. package/prisma/schema.prisma +1 -0
  264. package/scripts/fix-native-permissions.js +7 -0
  265. package/skills/tower/SKILL.md +12 -5
  266. package/.next/standalone/.next/server/app/_not-found.html +0 -1
  267. package/.next/standalone/.next/server/app/_not-found.meta +0 -16
  268. package/.next/standalone/.next/server/app/_not-found.rsc +0 -25
  269. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +0 -25
  270. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
  271. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +0 -13
  272. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +0 -5
  273. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
  274. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +0 -4
  275. package/.next/standalone/.next/server/app/index.html +0 -1
  276. package/.next/standalone/.next/server/app/index.meta +0 -16
  277. package/.next/standalone/.next/server/app/index.rsc +0 -26
  278. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +0 -6
  279. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +0 -26
  280. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +0 -6
  281. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +0 -13
  282. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +0 -6
  283. package/.next/standalone/.next/server/app/onboarding.html +0 -1
  284. package/.next/standalone/.next/server/app/onboarding.meta +0 -15
  285. package/.next/standalone/.next/server/app/onboarding.rsc +0 -31
  286. package/.next/standalone/.next/server/app/onboarding.segments/_full.segment.rsc +0 -31
  287. package/.next/standalone/.next/server/app/onboarding.segments/_head.segment.rsc +0 -6
  288. package/.next/standalone/.next/server/app/onboarding.segments/_index.segment.rsc +0 -13
  289. package/.next/standalone/.next/server/app/onboarding.segments/_tree.segment.rsc +0 -6
  290. package/.next/standalone/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +0 -9
  291. package/.next/standalone/.next/server/app/onboarding.segments/onboarding.segment.rsc +0 -5
  292. package/.next/standalone/.next/server/app/settings.html +0 -1
  293. package/.next/standalone/.next/server/app/settings.meta +0 -15
  294. package/.next/standalone/.next/server/app/settings.rsc +0 -31
  295. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +0 -31
  296. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +0 -6
  297. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +0 -13
  298. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +0 -6
  299. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +0 -9
  300. package/.next/standalone/.next/server/app/settings.segments/settings.segment.rsc +0 -5
  301. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__06.muv_._.js +0 -3
  302. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__083ia54._.js +0 -3
  303. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cylhkc._.js +0 -3
  304. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hv-2bi._.js +0 -3
  305. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hvqdy.._.js +0 -47
  306. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0k.hmw2._.js +0 -3
  307. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ugi0gk._.js +0 -3
  308. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0z50.82._.js +0 -30
  309. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12so59v._.js +0 -30
  310. package/.next/standalone/.next/server/chunks/ssr/_0.3p35c._.js +0 -3
  311. package/.next/standalone/.next/server/chunks/ssr/_059-b~p._.js +0 -3
  312. package/.next/standalone/.next/server/chunks/ssr/_0_z.pz4._.js +0 -3
  313. package/.next/standalone/.next/server/chunks/ssr/_0acdkk1._.js +0 -4
  314. package/.next/standalone/.next/server/chunks/ssr/_0i8t39l._.js +0 -3
  315. package/.next/standalone/.next/server/chunks/ssr/_0j7t3m6._.js +0 -7
  316. package/.next/standalone/.next/server/chunks/ssr/_0lwcwkm._.js +0 -3
  317. package/.next/standalone/.next/server/chunks/ssr/_0rb.w9u._.js +0 -7
  318. package/.next/standalone/.next/server/chunks/ssr/_0tr1l6m._.js +0 -3
  319. package/.next/standalone/.next/server/chunks/ssr/_0uj61lm._.js +0 -3
  320. package/.next/standalone/.next/server/chunks/ssr/_0yt~8-p._.js +0 -7
  321. package/.next/standalone/.next/server/chunks/ssr/_112.xs5._.js +0 -3
  322. package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_0lqfvhm._.js +0 -3
  323. package/.next/standalone/.next/server/chunks/ssr/src_lib_0hysyqq._.js +0 -3
  324. package/.next/standalone/.next/server/chunks/ssr/src_lib_0mre0hs._.js +0 -3
  325. package/.next/standalone/.next/server/chunks/ssr/src_lib_0nokg1l._.js +0 -3
  326. package/.next/standalone/.next/server/chunks/ssr/src_lib_0occbql._.js +0 -3
  327. package/.next/standalone/.next/server/chunks/ssr/src_lib_0q1is-3._.js +0 -3
  328. package/.next/standalone/.next/server/chunks/ssr/src_lib_0s.1_50._.js +0 -3
  329. package/.next/standalone/.next/server/chunks/ssr/src_lib_0uof9w0._.js +0 -3
  330. package/.next/standalone/.next/server/chunks/ssr/src_lib_0y99vkm._.js +0 -3
  331. package/.next/standalone/.next/server/chunks/ssr/src_lib_119inue._.js +0 -3
  332. package/.next/standalone/.next/server/pages/404.html +0 -1
  333. package/.next/standalone/.next/static/chunks/0-7jzlr9x_qsk.js +0 -5
  334. package/.next/standalone/.next/static/chunks/0.rmtqo0qf0kf.js +0 -1
  335. package/.next/standalone/.next/static/chunks/00nc85hwc2xj-.js +0 -1
  336. package/.next/standalone/.next/static/chunks/02rmsyvjctps8.js +0 -1
  337. package/.next/standalone/.next/static/chunks/03pleaq9wzi71.js +0 -1
  338. package/.next/standalone/.next/static/chunks/053~sxv8~uet5.js +0 -1
  339. package/.next/standalone/.next/static/chunks/0_._lea4kj-kf.js +0 -1
  340. package/.next/standalone/.next/static/chunks/0k65.io~ia9.a.js +0 -2
  341. package/.next/standalone/.next/static/chunks/0m-4oc7p23~5d.js +0 -5
  342. package/.next/standalone/.next/static/chunks/0o11wn9vopcqg.js +0 -1
  343. package/.next/standalone/.next/static/chunks/0qc~i8~pr2lr_.js +0 -2
  344. package/.next/standalone/.next/static/chunks/0v_-pz~6z5kwy.js +0 -1
  345. package/.next/standalone/.next/static/chunks/0y42pxoc9pqth.js +0 -1
  346. package/.next/standalone/.next/static/chunks/0y4t-yk9428ag.js +0 -1
  347. package/.next/standalone/.next/static/chunks/0z.p-s6d729o-.js +0 -1
  348. package/.next/standalone/.next/static/chunks/0~8mebeyo5uub.css +0 -1
  349. package/.next/standalone/.next/static/chunks/10_jn899omgp~.js +0 -1
  350. package/.next/standalone/.next/static/chunks/142u31.7x80ux.js +0 -5
  351. package/.next/standalone/.next/static/chunks/14ffa1fe.zktf.js +0 -5
  352. package/.next/standalone/.next/static/chunks/187ga_8mny0dq.js +0 -1
  353. package/.next/standalone/.next/static/media/4fa387ec64143e14-s.0.qu-9752pffj.woff2 +0 -0
  354. package/.next/standalone/.next/static/media/5ce348bf30bf5439-s.0ee55_hj9qcer.woff2 +0 -0
  355. package/.next/standalone/.next/static/media/6306c77e7c8268e4-s.0mao5jbfbduzp.woff2 +0 -0
  356. package/.next/standalone/.next/static/media/797e433ab948586e-s.p.09zddjkbdep5a.woff2 +0 -0
  357. package/.next/standalone/.next/static/media/7d817b4c03b0c5f1-s.0uzt.a6d44yda.woff2 +0 -0
  358. package/.next/standalone/.next/static/media/bbc41e54d2fcbd21-s.0mvwgmnhv29no.woff2 +0 -0
  359. /package/.next/standalone/.next/static/{dUfkElN2NF1kYx7TqxHtX → mLQP8o4ghKE2DGln7fL34}/_buildManifest.js +0 -0
  360. /package/.next/standalone/.next/static/{dUfkElN2NF1kYx7TqxHtX → mLQP8o4ghKE2DGln7fL34}/_clientMiddlewareManifest.js +0 -0
  361. /package/.next/standalone/.next/static/{dUfkElN2NF1kYx7TqxHtX → mLQP8o4ghKE2DGln7fL34}/_ssgManifest.js +0 -0
@@ -1,3 +0,0 @@
1
- module.exports=[924868,(a,b,c)=>{b.exports=a.x("fs/promises",()=>require("fs/promises"))},989927,a=>{"use strict";var b=a.i(446786),c=a.i(814747);function d(a){return a.startsWith("~/")?c.default.join(b.default.homedir(),a.slice(2)):a}function e(a){let b,c=a.match(/^git@([^:]+):(.+)$/);if(c)return{host:c[1],pathSegments:f(c[2]).split("/").filter(Boolean)};try{b=new URL(a)}catch{return null}return{host:b.hostname,pathSegments:f(decodeURIComponent(b.pathname)).split("/").filter(Boolean)}}function f(a){return a.replace(/\.git\/?$/,"")}a.s(["expandHome",0,d,"gitUrlToLocalPath",0,function(a){let b=a.trim();if(!b)return"";try{let a=e(b);if(!a)return"";let{host:f,pathSegments:g}=a;if("code.iflytek.com"===f){let a,b;return d((a=[...g],"osc"===a[0]&&"_source"===a[1]&&(a=a.slice(2)),((b=a.indexOf("-"))>0&&(a=a.slice(0,b)),0===a.length)?"":`~/company/${a.join("/")}`))}if("github.com"===f){var c;let a,b;return d((a=(c=g)[0],b=c[1],a&&b?`${"jp-liu"===a?"~/project/i":"~/project/f"}/${b}`:""))}let h=g[g.length-1];return h?d(`~/project/f/${h}`):""}catch{return""}},"matchGitPathRule",0,function(a,b){if(!b.length)return"";let c=a.trim();if(!c)return"";let f=e(c);if(!f)return"";let{host:g,pathSegments:h}=f,i=h[0]??"",j=h[h.length-1]??"",k=[...b].sort((a,b)=>{let c=+("*"===a.ownerMatch),d=+("*"===b.ownerMatch);return c!==d?c-d:a.priority-b.priority}),l=h.join("/");for(let a of k){if(a.host!==g||"*"!==a.ownerMatch&&a.ownerMatch!==i)continue;let b=a.localPathTemplate;if(b.includes("{path}"))return d(b.replace("{path}",l).replace("{owner}",i).replace("{repo}",j).replace(/\/+$/,""));let c=b.replace("{owner}",i).replace("{repo}","").replace(/\/+$/,"");return d(`${c}/${j}`)}return""}])},292380,742978,a=>{"use strict";var b=a.i(912714),c=a.i(902157),d=a.i(750227);function e(a,b){let c=function(a){if(!a)return null;try{return JSON.parse(a)}catch{return null}}(a.files["package.json"]);return!!c&&b in{...c.dependencies,...c.devDependencies}}let f=[{id:"next",name:"Next.js",icon:"simple-icons:nextdotjs",detect:a=>e(a,"next"),command:"pnpm dev",port:3e3,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/Ready in \d+/i,urlExtractRegex:/(https?:\/\/[^\s]+)/,docUrl:"https://nextjs.org/docs"},{id:"nuxt",name:"Nuxt",icon:"simple-icons:nuxtdotjs",detect:a=>e(a,"nuxt"),command:"pnpm dev",port:3e3,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/Nuxt .* ready in/i,urlExtractRegex:/(https?:\/\/[^\s]+)/},{id:"uniapp",name:"uni-app",icon:"simple-icons:vuedotjs",detect:a=>e(a,"@dcloudio/uni-app"),command:"pnpm dev:h5",port:9e3,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/ready in|App running at|Network:/i,urlExtractRegex:/Local:\s+(https?:\/\/[^\s]+)/,docUrl:"https://uniapp.dcloud.net.cn/"},{id:"vue-cli",name:"Vue (CLI)",icon:"simple-icons:vuedotjs",detect:a=>e(a,"@vue/cli-service"),command:"pnpm serve",port:8080,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/App running at|DONE\s+Compiled successfully/i,urlExtractRegex:/Local:\s+(https?:\/\/[^\s]+)/,docUrl:"https://cli.vuejs.org/"},{id:"cra",name:"Create React App",icon:"simple-icons:react",detect:a=>e(a,"react-scripts"),command:"pnpm start",port:3e3,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/Compiled successfully|webpack compiled/i,urlExtractRegex:/Local:\s+(https?:\/\/[^\s]+)/,docUrl:"https://create-react-app.dev/"},{id:"vite",name:"Vite",icon:"simple-icons:vite",detect:a=>e(a,"vite"),command:"pnpm dev",port:5173,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/ready in \d+\s*ms/i,urlExtractRegex:/Local:\s+(https?:\/\/[^\s]+)/},{id:"angular",name:"Angular",icon:"simple-icons:angular",detect:a=>e(a,"@angular/core"),command:"pnpm start",port:4200,installCommand:"pnpm install",installMarker:["node_modules"],readyRegex:/Compiled successfully|Application bundle generation complete/i,urlExtractRegex:/(https?:\/\/[^\s]+)/},{id:"spring-boot-maven",name:"Spring Boot (Maven)",icon:"simple-icons:springboot",detect:a=>{let b=a.files["pom.xml"];return!!(b&&/spring-boot-starter/.test(b))},command:"./mvnw spring-boot:run",port:8080,installCommand:"./mvnw dependency:resolve",installMarker:["target"],readyRegex:/Started \w+Application in [\d.]+ seconds/i,urlExtractRegex:null,startTimeoutMs:12e4},{id:"spring-boot-gradle",name:"Spring Boot (Gradle)",icon:"simple-icons:springboot",detect:a=>{let b=a.files["build.gradle"]??a.files["build.gradle.kts"];return!!(b&&/spring-boot/.test(b))},command:"./gradlew bootRun",port:8080,installCommand:"./gradlew --refresh-dependencies",installMarker:[".gradle"],readyRegex:/Started \w+Application in [\d.]+ seconds/i,urlExtractRegex:null,startTimeoutMs:12e4},{id:"django",name:"Django",icon:"simple-icons:django",detect:a=>null!==a.files["manage.py"]&&void 0!==a.files["manage.py"],command:"python manage.py runserver",port:8e3,installCommand:"pip install -r requirements.txt",installMarker:[".venv","venv"],readyRegex:/Starting development server at/i,urlExtractRegex:/at\s+(https?:\/\/[^\s]+)/},{id:"fastapi",name:"FastAPI",icon:"simple-icons:fastapi",detect:a=>{let b=a.files["requirements.txt"]??"",c=a.files["pyproject.toml"]??"";return/fastapi/i.test((b??"")+(c??""))},command:"uvicorn main:app --reload",port:8e3,installCommand:"pip install -r requirements.txt",installMarker:[".venv","venv"],readyRegex:/Application startup complete|Uvicorn running on/i,urlExtractRegex:/running on\s+(https?:\/\/[^\s]+)/},{id:"flask",name:"Flask",icon:"simple-icons:flask",detect:a=>{let b=a.files["requirements.txt"]??"";return/^flask/im.test(b??"")},command:"flask --app app run",port:5e3,installCommand:"pip install -r requirements.txt",installMarker:[".venv","venv"],readyRegex:/Running on\s+http/i,urlExtractRegex:/Running on\s+(https?:\/\/[^\s]+)/},{id:"go-generic",name:"Go",icon:"simple-icons:go",detect:a=>null!==a.files["go.mod"]&&void 0!==a.files["go.mod"],command:"go run .",port:8080,installCommand:"go mod download",installMarker:["go.sum"],readyRegex:null,urlExtractRegex:/(https?:\/\/[^\s]+)/},{id:"static",name:"Static HTML",icon:"simple-icons:html5",detect:a=>null!==a.files["index.html"]&&void 0!==a.files["index.html"]&&!a.files["package.json"]&&!a.files["pom.xml"],command:"npx serve -l {port} .",port:3e3,installCommand:null,installMarker:null,readyRegex:/Accepting connections at/i,urlExtractRegex:/(https?:\/\/[^\s]+)/}];a.s(["PRESETS",0,f],742978);let g=["package.json","pom.xml","build.gradle","build.gradle.kts","manage.py","requirements.txt","pyproject.toml","go.mod","index.html"];async function h(a){return Object.fromEntries(await Promise.all(g.map(async c=>{try{let e=await (0,b.readFile)((0,d.join)(a,c),"utf-8");return[c,e]}catch{return[c,null]}})))}async function i(a){return{files:await h(a),hasDir:()=>!1}}async function j(a){try{await (0,b.access)(a,c.constants.R_OK)}catch{return null}let d=await i(a);for(let a of f)try{if(a.detect(d))return a}catch{}return null}a.s(["detectPreset",0,j],292380)},244256,a=>{"use strict";var b=a.i(815429),c=a.i(924868),d=a.i(912714),e=a.i(814747),f=a.i(761469),g=a.i(188139),h=a.i(496877),i=a.i(989927),j=a.i(292380);async function k(){return f.db.workspace.findMany({select:{id:!0,name:!0,projects:{select:{id:!0,name:!0,alias:!0},orderBy:{createdAt:"asc"}}},orderBy:{updatedAt:"desc"}})}async function l(a){return f.db.workspace.findUnique({where:{id:a},include:{projects:{include:{tasks:{orderBy:[{order:"asc"},{createdAt:"desc"}]},repositories:!0}}}})}async function m(a){let b=h.createWorkspaceSchema.parse(a),c=await f.db.workspace.create({data:b});return(0,g.revalidatePath)("/workspaces"),c}async function n(a,b){let c=h.updateWorkspaceSchema.parse(b),d=await f.db.workspace.update({where:{id:a},data:c});return(0,g.revalidatePath)("/workspaces"),d}async function o(a){if(await f.db.workspace.count()<=1)throw Error("Cannot delete the last workspace");await f.db.workspace.delete({where:{id:a}}),(0,g.revalidatePath)("/workspaces")}async function p(b){let k=h.createProjectSchema.parse(b),l=k.localPath?(0,i.expandHome)(k.localPath):void 0;if(l&&!k.gitUrl&&e.default.isAbsolute(l))try{await (0,c.mkdir)(l,{recursive:!0})}catch(a){throw Error(`无法创建项目目录 ${l}: ${a.message}`)}let m=await f.db.project.create({data:{name:k.name,alias:k.alias,description:k.description,type:k.gitUrl?"GIT":"NORMAL",gitUrl:k.gitUrl||void 0,localPath:l,projectType:k.projectType,previewCommand:k.previewCommand,workspaceId:k.workspaceId}});try{let{ensureTowerTask:b}=await a.A(76052);await b(m.id,k.name)}catch(a){console.warn("Failed to auto-create Tower task",a)}if(l)try{if((await (0,d.readdir)(l).catch(()=>[])).length>0){let a=await (0,j.detectPreset)(l);a&&await f.db.project.update({where:{id:m.id},data:{previewPreset:a.id}})}}catch{}return(0,g.revalidatePath)("/workspaces"),m}async function q(a,b){let c={...h.updateProjectSchema.parse(b)};c.localPath&&(c.localPath=(0,i.expandHome)(c.localPath));let e=await f.db.project.update({where:{id:a},data:c});if(void 0!==b.localPath){let c=b.localPath?(0,i.expandHome)(b.localPath):null;if(c)try{if((await (0,d.readdir)(c).catch(()=>[])).length>0){let b=await (0,j.detectPreset)(c);await f.db.project.update({where:{id:a},data:{previewPreset:b?.id??null}})}}catch{}}return(0,g.revalidatePath)("/workspaces"),e}async function r(b){let c=await f.db.task.findMany({where:{projectId:b},include:{project:{select:{localPath:!0}}}}),{destroySession:d}=await a.A(98813),{removeWorktree:e}=await a.A(507502);for(let a of c){try{d(a.id)}catch{}if(await f.db.taskExecution.updateMany({where:{taskId:a.id,status:{in:["PENDING","RUNNING","PAUSED"]}},data:{status:"FAILED",endedAt:new Date}}),a.project?.localPath)try{await e(a.project.localPath,a.id)}catch{}["DONE","CANCELLED"].includes(a.status)||await f.db.task.update({where:{id:a.id},data:{status:"CANCELLED"}})}await f.db.project.delete({where:{id:b}}),(0,g.revalidatePath)("/workspaces")}async function s(a){return f.db.project.findFirst({where:{localPath:a},include:{workspace:!0}})}async function t(a=3){return f.db.workspace.findMany({select:{id:!0,name:!0,projects:{select:{id:!0,name:!0,alias:!0,tasks:{where:{status:{in:["TODO","IN_PROGRESS","IN_REVIEW"]},NOT:{labels:{some:{label:{name:"Tower",isBuiltin:!0}}}}},select:{id:!0,title:!0,status:!0,priority:!0,executions:{where:{sessionId:{not:null}},select:{sessionId:!0},orderBy:{createdAt:"desc"},take:1}},orderBy:{updatedAt:"desc"},take:a},_count:{select:{tasks:{where:{status:{in:["TODO","IN_PROGRESS","IN_REVIEW"]},NOT:{labels:{some:{label:{name:"Tower",isBuiltin:!0}}}}}}}}},orderBy:{createdAt:"asc"}}},orderBy:{updatedAt:"desc"}})}async function u(a=10){return f.db.project.findMany({where:{localPath:{not:null}},select:{id:!0,name:!0,alias:!0,localPath:!0,workspaceId:!0,type:!0,updatedAt:!0},orderBy:{updatedAt:"desc"},take:a})}async function v(b){let c=await f.db.project.findUnique({where:{id:b},select:{id:!0,name:!0}});if(!c)throw Error("Project not found");let{ensureTowerTask:d}=await a.A(76052);return d(c.id,c.name)}(0,a.i(630048).ensureServerEntryExports)([k,l,m,n,o,p,q,r,s,t,u,v]),(0,b.registerServerReference)(k,"00a0c2f0493007da3b4d658714a64769691a7ba87f",null),(0,b.registerServerReference)(l,"4080c50afcfdd644bb7d1f875100026a9e474eb4e5",null),(0,b.registerServerReference)(m,"409a19381f180bb7fa11f45630a25c91220e078312",null),(0,b.registerServerReference)(n,"6025b7144382d8dcdc588d40ad313291c66d131568",null),(0,b.registerServerReference)(o,"40f70ef4f9d5d190fabdbef44782203a2587eb624e",null),(0,b.registerServerReference)(p,"406c81a506462c1215b524bced549d92dc2401e365",null),(0,b.registerServerReference)(q,"60b872dfb3f2ccf6c78b0aa637c5ce1e35de4d89a0",null),(0,b.registerServerReference)(r,"4056f09d41a4ad3141eea2d2f98dbb6d5c1e076221",null),(0,b.registerServerReference)(s,"406ecb5e3577c006d5cdb09e92808e91483e36933b",null),(0,b.registerServerReference)(t,"40f3e527405d2712c2a4ac24561fc473dca8c32f55",null),(0,b.registerServerReference)(u,"40cb90f43d42e2224910ee4d9d6efd15fce014e82a",null),(0,b.registerServerReference)(v,"40475d77e4f50c3febca2b1b076b96b8741d82bc1b",null),a.s(["createProject",0,p,"createWorkspace",0,m,"deleteProject",0,r,"deleteWorkspace",0,o,"getOrCreateTowerTaskId",0,v,"getProjectByLocalPath",0,s,"getRecentLocalProjects",0,u,"getWorkspaceById",0,l,"getWorkspacesWithProjects",0,k,"getWorkspacesWithRecentTasks",0,t,"updateProject",0,q,"updateWorkspace",0,n])},874533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},980738,(a,b,c)=>{b.exports=a.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},433541,a=>a.a(async(b,c)=>{try{let b=await a.y("ws-4df7fc762dfa9a52");a.n(b),c()}catch(a){c(a)}},!0),504446,(a,b,c)=>{b.exports=a.x("net",()=>require("net"))},163812,a=>{"use strict";var b=a.i(902157),c=a.i(874533),d=a.i(750227);function e(a=process.platform){return"win32"===a}function f(a){let b=a.replace(/\r\n|\r|\n/g," ");if(!b.length)return'""';let c=b.replace(/"/g,'""');return/[\s"&<>|^()]/.test(c)?`"${c}"`:c}let g=["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE_SESSION","CLAUDE_CODE_PARENT_SESSION"];async function h(a,b={}){let c=b.cwd??process.cwd(),f=b.env??process.env,g=b.platform??process.platform;if(a.includes("/")||a.includes("\\")){let b=d.default.isAbsolute(a)?a:d.default.resolve(c,a);return await m(b,g)?b:null}let i=f.PATH??f.Path??"",j=e(g)?";":":",k=i.split(j).filter(Boolean),l=e(g)?(f.PATHEXT??".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean):[""],n=e(g)&&d.default.extname(a).length>0;for(let b of k)for(let c of e(g)?n?[d.default.join(b,a)]:l.map(c=>d.default.join(b,`${a}${c}`)):[d.default.join(b,a)])if(await m(c,g))return c;return null}let i=a=>(0,c.execSync)(a,{encoding:"utf-8",timeout:5e3});function j(a,b=process.platform,f=i){if(d.default.extname(a)||a.includes("/")||a.includes("\\"))return a;if(!e(b)){try{let b=(0,c.execFileSync)("which",[a],{encoding:"utf-8",timeout:5e3}).trim();if(b)return b}catch{}return a}try{let b=f(`where ${a}`).trim().split("\n").map(a=>a.trim()).filter(Boolean),c=b.find(a=>/\.(cmd|bat|exe)$/i.test(a));if(c)return c;if(b.length>0)return b[0]}catch{}return a}async function k(a,b,c={}){let d=c.env??process.env,e=c.platform??process.platform;return l(await h(a,c)??a,b,d,e)}function l(a,b,c,g){if(!e(g))return{command:a,args:b};let h=d.default.extname(a).toLowerCase();return".cmd"===h||".bat"===h||".com"===h?{command:c.ComSpec||"cmd.exe",args:["/d","/s","/c",[f(a),...b.map(f)].join(" ")]}:{command:a,args:b}}async function m(a,c=process.platform){try{return await b.promises.access(a,e(c)?b.constants.F_OK:b.constants.X_OK),!0}catch{return!1}}async function n(a=process.platform){return e(a)?p():o()}async function o(){try{let a=await b.promises.readFile("/etc/shells","utf-8"),c=[],e=new Map;for(let b of a.split("\n")){let a=b.replace(/#.*/,"").trim();if(!a||!a.startsWith("/")||!await m(a))continue;let f=d.default.basename(a),g=e.get(f)??0;e.set(f,g+1),g>0&&(f=`${f} (${g+1})`),c.push({name:f,path:a})}return c}catch{let a=[];for(let b of["/bin/zsh","/bin/bash","/bin/sh"])await m(b)&&a.push({name:d.default.basename(b),path:b});return a}}async function p(){let a=[],b=[],c=await h("git",{platform:"win32"});if(c){let a=d.default.resolve(d.default.dirname(c),"..","..");b.push(d.default.join(a,"bin","bash.exe"),d.default.join(a,"usr","bin","bash.exe"))}for(let a of[process.env.ProgramW6432,process.env.ProgramFiles,process.env["ProgramFiles(x86)"],process.env.LocalAppData?d.default.join(process.env.LocalAppData,"Programs"):null].filter(Boolean))b.push(d.default.join(a,"Git","bin","bash.exe"),d.default.join(a,"Git","usr","bin","bash.exe"));let e=process.env.USERPROFILE??"";for(let c of(e&&b.push(d.default.join(e,"scoop","apps","git","current","bin","bash.exe")),process.env.CLAUDE_CODE_GIT_BASH_PATH&&b.unshift(process.env.CLAUDE_CODE_GIT_BASH_PATH),b))if(await m(c,"win32")){a.push({name:"Git Bash",path:c});break}let f=await h("pwsh",{platform:"win32"});f&&a.push({name:"PowerShell",path:f});let g=process.env.windir??"C:\\WINDOWS",i=d.default.join(g,"System32","WindowsPowerShell","v1.0","powershell.exe");await m(i,"win32")&&a.push({name:"Windows PowerShell",path:i});let j=process.env.ComSpec??d.default.join(g,"System32","cmd.exe");return await m(j,"win32")&&a.push({name:"Command Prompt",path:j}),a}let q=[{name:"Terminal",bundleName:"Terminal"},{name:"iTerm2",bundleName:"iTerm"},{name:"Warp",bundleName:"Warp"},{name:"Alacritty",bundleName:"Alacritty"},{name:"WezTerm",bundleName:"WezTerm"},{name:"kitty",bundleName:"kitty"},{name:"Hyper",bundleName:"Hyper"}];async function r(a=process.platform){if("darwin"===a){let b=[];for(let c of q)await m(`/Applications/${c.bundleName}.app`,a)&&b.push({name:c.name,value:c.bundleName});return b}if(e(a)){let b=[],c=await h("wt",{platform:a});return c&&b.push({name:"Windows Terminal",value:c}),b}return[]}let s=[{name:"VS Code",command:"code"},{name:"VS Code Insiders",command:"code-insiders"},{name:"Cursor",command:"cursor"},{name:"Windsurf",command:"windsurf"},{name:"Zed",command:"zed"},{name:"Sublime Text",command:"subl"},{name:"IntelliJ IDEA",command:"idea"},{name:"WebStorm",command:"webstorm"},{name:"PyCharm",command:"pycharm"},{name:"GoLand",command:"goland"},{name:"RubyMine",command:"rubymine"},{name:"PhpStorm",command:"phpstorm"},{name:"CLion",command:"clion"},{name:"Rider",command:"rider"}];async function t(a=process.platform){let b=[];for(let c of s)await h(c.command,{platform:a})&&b.push({name:c.name,command:c.command});return b}a.s(["detectEditors",0,t,"detectShells",0,n,"detectTerminalApps",0,r,"ensurePathInEnv",0,function(a,b=process.platform){let c=e(b)?"Path":"PATH";return(a.PATH??a.Path??"").length>0?a:{...a,[c]:function(a=process.platform){return e(a)?"C:\\Windows\\System32;C:\\Windows;C:\\Windows\\System32\\Wbem":"/usr/local/bin:/opt/homebrew/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin"}(b)}},"resolveCommandPath",0,h,"resolveCommandPathSync",0,j,"resolveSpawnTarget",0,k,"resolveSpawnTargetSync",0,function(a,b,c=process.platform,d){return l(j(a,c,d),b,process.env,c)},"stripClaudeNestingEnv",0,function(a){let b={...a};for(let a of g)delete b[a];return b}])},42847,a=>{"use strict";var b=a.i(980738),c=a.i(163812);class d{taskId;_pty;killed=!1;disconnectTimer=null;_buffer="";static BUFFER_MAX=51200;_onData;_exitListeners=[];_idleTimer=null;_idleThresholdMs;_onIdle;_idleFired=!1;constructor(a,e,f,g,h,i,j,k,l){this.taskId=a,this._onData=h,this._onIdle=k??null,this._idleThresholdMs=Math.max(l??18e4,18e4);const m={...(0,c.stripClaudeNestingEnv)((0,c.ensurePathInEnv)(process.env)),TERM:"xterm-color",...j};try{this._pty=b.spawn(e,f,{name:"xterm-color",cols:80,rows:24,cwd:g,env:m})}catch(a){throw console.error(`[pty] spawn failed: command="${e}", cwd="${g}", PATH="${m.PATH?.slice(0,200)}"`),a}this._pty.onData(a=>{this._buffer+=a,this._buffer.length>d.BUFFER_MAX&&(this._buffer=this._buffer.slice(this._buffer.length-d.BUFFER_MAX)),this._resetIdleTimer(),this._onData(a)}),this._pty.onExit(({exitCode:a,signal:b})=>{for(let c of(this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),i(a,b),this._exitListeners))c(a)}),this._resetIdleTimer()}_resetIdleTimer(){this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),null===this._onIdle||this.killed||this._idleFired||(this._idleTimer=setTimeout(()=>{this._idleFired=!0,this._onIdle?.()},this._idleThresholdMs))}setDataListener(a){this._onData=a}setExitListener(a){this._exitListeners=[a]}write(a){this.killed||(this._resetIdleTimer(),this._pty.write(a))}resize(a,b){this.killed||this._pty.resize(a,b)}getBuffer(){return this._buffer}get isIdle(){return this._idleFired}kill(a){if(!this.killed){this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null);try{this._pty.kill(a)}catch{}}}forceKill(){try{this._pty.kill("SIGKILL")}catch{}this.killed=!0}}a.s(["PtySession",0,d])},962620,a=>{"use strict";var b=a.i(42847),c=a.i(163812);let d=globalThis;d.__ptySessions||(d.__ptySessions=new Map);let e=d.__ptySessions;function f(a){let b=e.get(a);b&&(e.delete(a),b.disconnectTimer&&(clearTimeout(b.disconnectTimer),b.disconnectTimer=null),b.kill())}function g(){for(let a of e.keys())f(a)}let h=globalThis;"phase-production-build"===process.env.NEXT_PHASE||h.__ptySignalHandlersRegistered||(h.__ptySignalHandlersRegistered=!0,process.once("SIGTERM",()=>{console.error("[session-store] SIGTERM received — cleaning up PTY sessions"),g()}),process.once("SIGINT",()=>{console.error("[session-store] SIGINT received — cleaning up PTY sessions"),g()})),a.s(["createSession",0,function(a,d,g,h,i,j,k,l,m){f(a);let{command:n,args:o}=(0,c.resolveSpawnTargetSync)(d,g),p=new b.PtySession(a,n,o,h,i,j,k,l,m);return e.set(a,p),p},"destroyAllSessions",0,g,"destroySession",0,f,"getSession",0,function(a){return e.get(a)}])},312369,a=>{"use strict";var b=a.i(761469);async function c(a,c){let d=await b.db.systemConfig.findUnique({where:{key:a}});if(!d)return c;try{return JSON.parse(d.value)}catch{return c}}a.s(["readConfigValue",0,c])},830296,a=>{"use strict";a.s(["CONFIG_DEFAULTS",0,{"git.pathMappingRules":{defaultValue:[],type:"object",label:"Git Path Mapping Rules"},"system.maxUploadBytes":{defaultValue:0x3200000,type:"number",label:"Max Upload Size (bytes)"},"system.maxConcurrentExecutions":{defaultValue:20,type:"number",label:"Max Concurrent Executions"},"system.maxReadableFileBytes":{defaultValue:5242880,type:"number",label:"Max Readable File Size (bytes)"},"system.backupDir":{defaultValue:"",type:"string",label:"Backup Directory"},"git.timeoutSec":{defaultValue:30,type:"number",label:"Git Operation Timeout (seconds)"},"search.resultLimit":{defaultValue:20,type:"number",label:"Search Result Limit"},"search.allModeCap":{defaultValue:5,type:"number",label:"All-Mode Per-Type Cap"},"search.debounceMs":{defaultValue:250,type:"number",label:"Search Debounce (ms)"},"search.snippetLength":{defaultValue:80,type:"number",label:"Snippet Length (characters)"},"search.codeTimeoutSec":{defaultValue:30,type:"number",label:"Code Search Timeout (seconds)"},"missions.grid.minCols":{defaultValue:1,type:"number",label:"Grid Min Columns"},"missions.grid.maxCols":{defaultValue:5,type:"number",label:"Grid Max Columns"},"missions.grid.minRows":{defaultValue:1,type:"number",label:"Grid Min Rows"},"missions.grid.maxRows":{defaultValue:5,type:"number",label:"Grid Max Rows"},"terminal.app":{defaultValue:"Terminal",type:"string",label:"Default Terminal App"},"editor.command":{defaultValue:"",type:"string",label:"Default Editor Command"},"terminal.wsPort":{defaultValue:3001,type:"number",label:"WebSocket Port"},"terminal.idleTimeoutSec":{defaultValue:180,type:"number",label:"Idle Timeout (seconds)"},"assistant.systemPrompt":{defaultValue:'You are Tower Assistant — the built-in AI operator for the Tower task management platform.\n\n## Identity\n- You are a task management operator, NOT a coding assistant.\n- You can ONLY use Tower MCP tools. You CANNOT read files, edit code, run shell commands, or search the web.\n- Always respond in the same language the user uses.\n\n## Capabilities\nWhen users ask what you can do, respond with EXACTLY these 6 groups. Translate to the user\'s language.\n\n1. **Workspace & Project** — View, create, update, delete workspaces and projects. Search projects and repositories.\n2. **Task Management** — Create tasks (priority, labels, worktree branch isolation, sub-path, auto-start). Move task status (TODO → IN_PROGRESS → IN_REVIEW → DONE / CANCELLED). Update task info and labels.\n3. **Execution Monitor** — Start task execution, check execution status, get terminal output, send commands to running terminals.\n4. **Daily Report & Todo** — Generate daily work summary (completed + in-progress). View pending task list sorted by priority.\n5. **Labels & Notes & Assets** — Manage workspace labels, project notes, and file attachments.\n6. **Global Search** — Search tasks, projects, repositories, notes, and assets by keyword.\n\nDo NOT list any capabilities beyond the above. Do NOT mention code editing, debugging, testing, git operations, or any development capabilities.\n\n## Scope Boundary\nIf the user asks you to write code, explain code, debug, search the web, read/write files, or anything outside Tower task management, reply:\n"抱歉,我只能帮你管理工作区、项目和任务。编码、调试等操作请在任务终端中完成。"',type:"string",label:"Assistant System Prompt"},"assistant.displayMode":{defaultValue:"sidebar",type:"string",label:"Assistant Display Mode"},"assistant.communicationMode":{defaultValue:"chat",type:"string",label:"Assistant Communication Mode"},"task.defaultUseWorktree":{defaultValue:!0,type:"boolean",label:"Default: Use Worktree"},"task.defaultAutoStart":{defaultValue:!1,type:"boolean",label:"Default: Auto-start Execution"}}])},980999,a=>a.a(async(b,c)=>{try{var d=a.i(815429),e=a.i(761469),f=a.i(830296),g=a.i(989927),h=a.i(163812),i=a.i(823615),j=a.i(630048),k=b([i]);async function l(a,b){let c=await e.db.systemConfig.findUnique({where:{key:a}});if(!c)return b;try{return JSON.parse(c.value)}catch{return b}}async function m(a,b){await e.db.systemConfig.upsert({where:{key:a},create:{key:a,value:JSON.stringify(b)},update:{value:JSON.stringify(b)}})}async function n(a){let b=a.trim();if(!b)return"";try{let a=await l("git.pathMappingRules",[]),c=(0,g.matchGitPathRule)(b,a);if(c)return c;return(0,g.gitUrlToLocalPath)(b)}catch{return(0,g.gitUrlToLocalPath)(b)}}async function o(a){let b=await e.db.systemConfig.findMany({where:{key:{in:a}}}),c=Object.fromEntries(b.map(a=>{try{return[a.key,JSON.parse(a.value)]}catch{return[a.key,null]}})),d={};for(let b of a)d[b]=b in c?c[b]:f.CONFIG_DEFAULTS[b]?.defaultValue??null;return d}async function p(){return(0,h.detectShells)()}async function q(){return(0,h.detectTerminalApps)()}async function r(){return(0,h.detectEditors)()}async function s(){return{platform:process.platform}}async function t(){let a=(0,i.getActiveWsPort)();if(null!==a)return a;let b=parseInt(process.env.PORT||"3000",10);return l("terminal.wsPort",b+1)}[i]=k.then?(await k)():k,(0,j.ensureServerEntryExports)([l,m,n,o,p,q,r,s,t]),(0,d.registerServerReference)(l,"60a892aba24899d6d09d025c221b521af050aaf0ac",null),(0,d.registerServerReference)(m,"60136b445be5eb4a1a141186cfc9507f0ac236c615",null),(0,d.registerServerReference)(n,"40e8c57143d99167afa80e2ce1362554bb7e151149",null),(0,d.registerServerReference)(o,"4011f2b8a420d565b4e614611bf6c9b8c4bbcb956c",null),(0,d.registerServerReference)(p,"0086a3612bffcce4b502188c596bd5a521cacd2368",null),(0,d.registerServerReference)(q,"0069f5b2d346fcdd2ea23f5185718b53c7cb21052f",null),(0,d.registerServerReference)(r,"0008624d1706a8b7d75c9c495d813ef5ed53c801be",null),(0,d.registerServerReference)(s,"00f49ea124ee6c218319495a608732c61c4549f86f",null),(0,d.registerServerReference)(t,"0019330867114f3628692ddd25399c65c0056fbc47",null),a.s(["getActualWsPort",0,t,"getAvailableEditors",0,r,"getAvailableShells",0,p,"getAvailableTerminalApps",0,q,"getConfigValue",0,l,"getConfigValues",0,o,"getPlatformInfo",0,s,"resolveGitLocalPath",0,n,"setConfigValue",0,m]),c()}catch(a){c(a)}},!1)];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0k.hmw2._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},161664,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],161664)},579834,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",g),children:[a&&(0,b.jsx)(a,{className:"h-10 w-10 text-muted-foreground/40"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:d}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:e}),f&&(0,b.jsx)("div",{className:"mt-2",children:f})]})}])},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},324954,a=>{"use strict";let b=(0,a.i(711796).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);a.s(["Upload",0,b],324954)},912868,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],912868)},389993,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40dbca40ce2c8dfb5933699083322e592b153ad2ee",b.callServer,void 0,b.findSourceMapURL,"deleteAsset");a.s(["deleteAsset",0,c])},597282,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40f3b291bd8de49b5e12902c1584055fa6021588fd",b.callServer,void 0,b.findSourceMapURL,"uploadAsset");a.s(["uploadAsset",0,c])},865011,a=>{"use strict";var b=a.i(728778),c=a.i(634910),d=a.i(553798),e=a.i(269280),f=a.i(350739),g=a.i(347165),h=a.i(607219),i=a.i(951192);let j=[{key:"notes",icon:f.FileText},{key:"assets",icon:g.FolderOpen},{key:"archive",icon:h.Archive}];a.s(["SubPageNav",0,function({workspaceId:a}){let{t:f}=(0,i.useI18n)(),g=(0,d.usePathname)(),h=j.find(a=>g.includes(`/${a.key}`))?.key;return(0,b.jsxs)("div",{className:"header-sm flex items-center gap-1 px-4",children:[(0,b.jsxs)(c.default,{href:`/workspaces/${a}`,className:"mr-2 inline-flex h-8 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[(0,b.jsx)(e.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f("archive.backToBoard")})]}),(0,b.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),j.map(d=>{let e=d.icon,g=h===d.key;return(0,b.jsxs)(c.default,{href:`/workspaces/${a}/${d.key}`,className:`inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-medium transition-colors ${g?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`,children:[(0,b.jsx)(e,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f(`sidebar.${d.key}`)})]},d.key)})]})}])},757942,950314,a=>{"use strict";var b=a.i(90393);a.s([],757942),a.s(["Streamdown",()=>b.C],950314)},574046,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_highlighted-body-OFNGDK62_0dm8t_v.js"].map(b=>a.l(b))).then(()=>b(514138)))},170967,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_mermaid-GHXKKRXX_0oxtju0.js"].map(b=>a.l(b))).then(()=>b(729004)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0ugi0gk._.js.map
@@ -1,30 +0,0 @@
1
- module.exports=[52350,562278,a=>{"use strict";var b=a.i(902157),c=a.i(660526),d=a.i(750227),e=a.i(163812);function f(){return process.env.TOWER_PACKAGE_ROOT||process.cwd()}a.s(["getPackageRoot",0,f],562278);let g=["sonnet","opus","haiku","claude-sonnet-4-6","claude-opus-4-6","claude-haiku-4-5-20251001"];a.s(["ClaudeCliAdapter",0,class{buildSpawnArgs(a){let b=["--dangerously-skip-permissions"];a.extraArgs?.length&&b.push(...a.extraArgs),a.resumeSessionId?b.push("--resume",a.resumeSessionId):a.continueLatest?b.push("--continue"):a.prompt&&b.push(a.prompt);let c={...a.envOverrides??{}};return{command:this.resolveCommand(),args:b,env:c}}buildEnvOverrides(a){let b={TOWER_TASK_ID:a.taskId,TOWER_TASK_TITLE:a.taskTitle,TOWER_STARTED_AT:new Date().toISOString(),TOWER_API_URL:a.apiUrl};return a.callbackUrl&&(b.CALLBACK_URL=a.callbackUrl),b}async installHooks(a){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=d.join(c,"scripts","session-start-hook.js").replace(/\\/g,"/"),g=d.join(c,"scripts","post-tool-hook.js").replace(/\\/g,"/"),h=d.join(c,"scripts","stop-hook.js").replace(/\\/g,"/"),i=!1;return i=this.upsertHook(b,"SessionStart","session-start-hook.js",{hooks:[{command:`node "${e}"`,timeout:5,type:"command"}]})||i,i=this.upsertHook(b,"PostToolUse","post-tool-hook.js",{hooks:[{command:`node "${g}"`,timeout:10,type:"command"}],matcher:"Write|Edit|MultiEdit"})||i,(i=this.upsertHook(b,"Stop","stop-hook.js",{hooks:[{command:`node "${h}"`,timeout:5,type:"command"}]})||i)&&(a.hooks=b,this.writeSettings(a)),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async repairHookPaths(){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=!1;for(let[a,f]of[["SessionStart","session-start-hook.js"],["PostToolUse","post-tool-hook.js"],["Stop","stop-hook.js"]]){let g=this.getHookArray(b,a),h=g.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(f)));if(h<0)continue;let i=d.join(c,"scripts",f).replace(/\\/g,"/"),j=`node "${i}"`,k=g[h]?.hooks?.[0];k&&k.command!==j&&(k.command=j,b[a]=g,e=!0)}e&&(a.hooks=b,this.writeSettings(a))}catch{}}upsertHook(a,b,c,d){let e=this.getHookArray(a,b),f=d?.hooks?.[0]?.command,g=e.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(c)));if(g>=0){if(e[g]?.hooks?.[0]?.command===f)return!1;e.splice(g,1)}return e.push(d),a[b]=e,!0}async uninstallHooks(){try{let a=this.readSettings(),b=a.hooks??{},c=["session-start-hook.js","post-tool-hook.js","stop-hook.js"];for(let a of["SessionStart","PostToolUse","Stop"]){let d=this.getHookArray(b,a);b[a]=d.filter(a=>!a.hooks?.some(a=>c.some(b=>a.command?.includes(b))))}return a.hooks=b,this.writeSettings(a),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async isHooksInstalled(){let a=this.readSettings().hooks??{},b=this.getHookArray(a,"PostToolUse");return this.hasHook(b,"post-tool-hook.js")}async installMcp(a,b={}){let c=b.scope??"user",d={command:a.command,args:a.args};a.env&&Object.keys(a.env).length>0&&(d.env=a.env);let e=this.resolveCommand(),f=["mcp","add-json","-s",c,a.name,JSON.stringify(d)];try{return await this.runCli(e,["mcp","remove","-s",c,a.name],b.cwd).catch(()=>{}),await this.runCli(e,f,b.cwd),{ok:!0,method:"cli",detail:`${e} ${f.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${e} ${f.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async uninstallMcp(a,b={}){let c=b.scope??"user",d=this.resolveCommand(),e=["mcp","remove","-s",c,a];try{return await this.runCli(d,e,b.cwd),{ok:!0,method:"cli",detail:`${d} ${e.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${d} ${e.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async isMcpInstalled(a,b={}){let c=this.resolveCommand();try{return await this.runCli(c,["mcp","get",a],b.cwd,5e3),!0}catch{return!1}}async installSkill(a,c){let e=d.join(this.getConfigDir(),"skills",a);try{if(!b.existsSync(c))return{ok:!1,method:"symlink",detail:e,error:`Source skill dir does not exist: ${c}`};b.mkdirSync(d.dirname(e),{recursive:!0});let a=await b.promises.lstat(e).catch(()=>null);if(a)if(!(a.isSymbolicLink()||"win32"===process.platform&&a.isDirectory()))return{ok:!1,method:"symlink",detail:e,error:`Refusing to overwrite non-symlink at ${e}`};else try{let a=await b.promises.readlink(e);if(d.resolve(a)===d.resolve(c))return{ok:!0,method:"symlink",detail:`${e} → ${c} (already)`};await b.promises.unlink(e)}catch{if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:e,error:`Refusing to overwrite non-symlink at ${e}`}}return await b.promises.symlink(c,e,"dir"),{ok:!0,method:"symlink",detail:`${e} → ${c}`}}catch(a){return{ok:!1,method:"symlink",detail:e,error:a instanceof Error?a.message:String(a)}}}async uninstallSkill(a){let c=d.join(this.getConfigDir(),"skills",a);try{let a=await b.promises.lstat(c).catch(()=>null);if(!a)return{ok:!0,method:"symlink",detail:`${c} (already absent)`};if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:c,error:`Refusing to remove non-symlink at ${c}`};return await b.promises.unlink(c),{ok:!0,method:"symlink",detail:c}}catch(a){return{ok:!1,method:"symlink",detail:c,error:a instanceof Error?a.message:String(a)}}}async isSkillInstalled(a,c){let e=d.join(this.getConfigDir(),"skills",a);try{if(!(await b.promises.lstat(e)).isSymbolicLink())return!1;if(!c)return!0;let a=await b.promises.readlink(e),f=d.isAbsolute(a)?a:d.resolve(d.dirname(e),a);return d.resolve(f)===d.resolve(c)}catch{return!1}}async runCli(b,c,d,e=1e4){let{execFile:f}=await a.A(482848),{promisify:g}=await a.A(268548),h=g(f),{stdout:i}=await h(b,c,{cwd:d,timeout:e});return i}async isAvailable(){return null!==await this.getVersion()}async getVersion(){try{let{execFile:b}=await a.A(144264),{promisify:c}=await a.A(534777),{resolveSpawnTarget:d}=await a.A(889618),e=c(b),f=await d(this.resolveCommand(),["--version"]),{stdout:g}=await e(f.command,f.args,{timeout:5e3});return g.trim()||null}catch{return null}}async getModels(){return g}getConfigDir(){return d.join(c.homedir(),".claude")}getSettingsPath(){return d.join(this.getConfigDir(),"settings.json")}getSessionsDir(){return d.join(this.getConfigDir(),"projects")}getApiKeyInfo(){return{envVar:"ANTHROPIC_API_KEY",required:!1}}buildHelloProbeArgs(a){return{command:this.resolveCommand(),args:["--print",a,"--output-format","stream-json","--verbose"]}}resolveCommand(){return process.env.CLAUDE_CODE_PATH?process.env.CLAUDE_CODE_PATH:(0,e.resolveCommandPathSync)("claude")}readSettings(){try{return JSON.parse(b.readFileSync(this.getSettingsPath(),"utf-8"))}catch{return{}}}writeSettings(a){let c=this.getConfigDir();b.existsSync(c)||b.mkdirSync(c,{recursive:!0}),b.writeFileSync(this.getSettingsPath(),JSON.stringify(a,null,2),"utf-8")}getHookArray(a,b){let c=a[b];return Array.isArray(c)?c:[]}hasHook(a,b){return a.some(a=>a.hooks?.some(a=>a.command?.includes(b)))}}],52350)},897667,a=>{"use strict";let b=new(a.i(52350)).ClaudeCliAdapter;async function c(d,e,f={}){let g="";try{let{query:c}=await a.A(719041),h=b.resolveCommand();for await(let a of c({prompt:d,options:{tools:f.tools??[],allowedTools:f.allowedTools??[],maxTurns:f.maxTurns??1,cwd:e,pathToClaudeCodeExecutable:h,sessionPersistence:!1}}))if("assistant"===a.type){let b=a.message.content.filter(a=>"text"===a.type);g+=b.map(a=>a.text??"").join("")}else if("result"===a.type){let b="string"==typeof a.result?a.result:"";b&&!g&&(g=b)}return g.trim()||null}catch(a){if(a.message?.includes("maximum number of turns")&&g.trim())return g.trim();return console.error("[aiQuery] Failed:",a.message,a.stack?.slice(0,300)),null}}async function d(a,b){let d=`以下是一次AI编程助手的终端会话记录。请用一句简短的中文总结这次会话做了什么(不超过50字,只回答总结内容,不要加引号或前缀):
2
-
3
- \`\`\`
4
- ${a.slice(-5e3)}
5
- \`\`\``,e=await c(d,b);return e&&e.replace(/^[#*\->"'\s]+/,"").trim()||null}async function e(a,b,d){let e=a.slice(-8e3),f=d?`
6
- Session summary: ${d}`:"",g=`You are analyzing a completed AI coding session. Extract reusable insights.
7
- ${f}
8
-
9
- Terminal log (last 8000 chars):
10
- \`\`\`
11
- ${e}
12
- \`\`\`
13
-
14
- Respond ONLY with valid JSON matching this schema (no markdown, no explanation):
15
- {
16
- "summary": "one-sentence summary of what was accomplished",
17
- "insights": [
18
- { "type": "pattern|pitfall|decision|tool|reference", "content": "description" }
19
- ],
20
- "shouldCreateNote": true/false,
21
- "noteTitle": "short title for the note (only if shouldCreateNote is true)"
22
- }
23
-
24
- Rules:
25
- - Set shouldCreateNote=true ONLY if there are genuinely reusable insights (architectural decisions, non-obvious pitfalls, useful patterns, important tool discoveries)
26
- - Trivial sessions (simple formatting, single-line edits, routine commits) should have shouldCreateNote=false
27
- - insights array can be empty if nothing notable
28
- - Keep each insight concise (1-2 sentences)`,h=await c(g,b);if(!h)return null;try{let a=h,b=a.match(/\{[\s\S]*\}/);b&&(a=b[0]);let c=JSON.parse(a);if("string"!=typeof c.summary||"boolean"!=typeof c.shouldCreateNote)return console.error("[generateDreamingInsight] Invalid response structure"),null;return c}catch(a){return console.error("[generateDreamingInsight] JSON parse failed:",a.message),null}}a.s(["aiQuery",0,c,"generateDreamingInsight",0,e,"generateSummaryFromLog",0,d])},482848,a=>{a.v(a=>Promise.resolve().then(()=>a(874533)))},268548,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_node_util_0xr.y7p._.js"].map(b=>a.l(b))).then(()=>b(812057)))},144264,a=>{a.v(a=>Promise.resolve().then(()=>a(233405)))},534777,a=>{a.v(a=>Promise.resolve().then(()=>a(224361)))},889618,a=>{a.v(a=>Promise.resolve().then(()=>a(163812)))},719041,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__0ti8vng._.js","server/chunks/ssr/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0myippv._.js"].map(b=>a.l(b))).then(()=>b(845454)))}];
29
-
30
- //# sourceMappingURL=%5Broot-of-the-server%5D__0z50.82._.js.map
@@ -1,30 +0,0 @@
1
- module.exports=[52350,562278,a=>{"use strict";var b=a.i(902157),c=a.i(660526),d=a.i(750227),e=a.i(163812);function f(){return process.env.TOWER_PACKAGE_ROOT||process.cwd()}a.s(["getPackageRoot",0,f],562278);let g=["sonnet","opus","haiku","claude-sonnet-4-6","claude-opus-4-6","claude-haiku-4-5-20251001"];a.s(["ClaudeCliAdapter",0,class{buildSpawnArgs(a){let b=["--dangerously-skip-permissions"];a.extraArgs?.length&&b.push(...a.extraArgs),a.resumeSessionId?b.push("--resume",a.resumeSessionId):a.continueLatest?b.push("--continue"):a.prompt&&b.push(a.prompt);let c={...a.envOverrides??{}};return{command:this.resolveCommand(),args:b,env:c}}buildEnvOverrides(a){let b={TOWER_TASK_ID:a.taskId,TOWER_TASK_TITLE:a.taskTitle,TOWER_STARTED_AT:new Date().toISOString(),TOWER_API_URL:a.apiUrl};return a.callbackUrl&&(b.CALLBACK_URL=a.callbackUrl),b}async installHooks(a){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=d.join(c,"scripts","session-start-hook.js").replace(/\\/g,"/"),g=d.join(c,"scripts","post-tool-hook.js").replace(/\\/g,"/"),h=d.join(c,"scripts","stop-hook.js").replace(/\\/g,"/"),i=!1;return i=this.upsertHook(b,"SessionStart","session-start-hook.js",{hooks:[{command:`node "${e}"`,timeout:5,type:"command"}]})||i,i=this.upsertHook(b,"PostToolUse","post-tool-hook.js",{hooks:[{command:`node "${g}"`,timeout:10,type:"command"}],matcher:"Write|Edit|MultiEdit"})||i,(i=this.upsertHook(b,"Stop","stop-hook.js",{hooks:[{command:`node "${h}"`,timeout:5,type:"command"}]})||i)&&(a.hooks=b,this.writeSettings(a)),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async repairHookPaths(){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=!1;for(let[a,f]of[["SessionStart","session-start-hook.js"],["PostToolUse","post-tool-hook.js"],["Stop","stop-hook.js"]]){let g=this.getHookArray(b,a),h=g.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(f)));if(h<0)continue;let i=d.join(c,"scripts",f).replace(/\\/g,"/"),j=`node "${i}"`,k=g[h]?.hooks?.[0];k&&k.command!==j&&(k.command=j,b[a]=g,e=!0)}e&&(a.hooks=b,this.writeSettings(a))}catch{}}upsertHook(a,b,c,d){let e=this.getHookArray(a,b),f=d?.hooks?.[0]?.command,g=e.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(c)));if(g>=0){if(e[g]?.hooks?.[0]?.command===f)return!1;e.splice(g,1)}return e.push(d),a[b]=e,!0}async uninstallHooks(){try{let a=this.readSettings(),b=a.hooks??{},c=["session-start-hook.js","post-tool-hook.js","stop-hook.js"];for(let a of["SessionStart","PostToolUse","Stop"]){let d=this.getHookArray(b,a);b[a]=d.filter(a=>!a.hooks?.some(a=>c.some(b=>a.command?.includes(b))))}return a.hooks=b,this.writeSettings(a),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async isHooksInstalled(){let a=this.readSettings().hooks??{},b=this.getHookArray(a,"PostToolUse");return this.hasHook(b,"post-tool-hook.js")}async installMcp(a,b={}){let c=b.scope??"user",d={command:a.command,args:a.args};a.env&&Object.keys(a.env).length>0&&(d.env=a.env);let e=this.resolveCommand(),f=["mcp","add-json","-s",c,a.name,JSON.stringify(d)];try{return await this.runCli(e,["mcp","remove","-s",c,a.name],b.cwd).catch(()=>{}),await this.runCli(e,f,b.cwd),{ok:!0,method:"cli",detail:`${e} ${f.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${e} ${f.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async uninstallMcp(a,b={}){let c=b.scope??"user",d=this.resolveCommand(),e=["mcp","remove","-s",c,a];try{return await this.runCli(d,e,b.cwd),{ok:!0,method:"cli",detail:`${d} ${e.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${d} ${e.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async isMcpInstalled(a,b={}){let c=this.resolveCommand();try{return await this.runCli(c,["mcp","get",a],b.cwd,5e3),!0}catch{return!1}}async installSkill(a,c){let e=d.join(this.getConfigDir(),"skills",a);try{if(!b.existsSync(c))return{ok:!1,method:"symlink",detail:e,error:`Source skill dir does not exist: ${c}`};b.mkdirSync(d.dirname(e),{recursive:!0});let a=await b.promises.lstat(e).catch(()=>null);if(a)if(!(a.isSymbolicLink()||"win32"===process.platform&&a.isDirectory()))return{ok:!1,method:"symlink",detail:e,error:`Refusing to overwrite non-symlink at ${e}`};else try{let a=await b.promises.readlink(e);if(d.resolve(a)===d.resolve(c))return{ok:!0,method:"symlink",detail:`${e} → ${c} (already)`};await b.promises.unlink(e)}catch{if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:e,error:`Refusing to overwrite non-symlink at ${e}`}}return await b.promises.symlink(c,e,"dir"),{ok:!0,method:"symlink",detail:`${e} → ${c}`}}catch(a){return{ok:!1,method:"symlink",detail:e,error:a instanceof Error?a.message:String(a)}}}async uninstallSkill(a){let c=d.join(this.getConfigDir(),"skills",a);try{let a=await b.promises.lstat(c).catch(()=>null);if(!a)return{ok:!0,method:"symlink",detail:`${c} (already absent)`};if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:c,error:`Refusing to remove non-symlink at ${c}`};return await b.promises.unlink(c),{ok:!0,method:"symlink",detail:c}}catch(a){return{ok:!1,method:"symlink",detail:c,error:a instanceof Error?a.message:String(a)}}}async isSkillInstalled(a,c){let e=d.join(this.getConfigDir(),"skills",a);try{if(!(await b.promises.lstat(e)).isSymbolicLink())return!1;if(!c)return!0;let a=await b.promises.readlink(e),f=d.isAbsolute(a)?a:d.resolve(d.dirname(e),a);return d.resolve(f)===d.resolve(c)}catch{return!1}}async runCli(b,c,d,e=1e4){let{execFile:f}=await a.A(482848),{promisify:g}=await a.A(268548),h=g(f),{stdout:i}=await h(b,c,{cwd:d,timeout:e});return i}async isAvailable(){return null!==await this.getVersion()}async getVersion(){try{let{execFile:b}=await a.A(144264),{promisify:c}=await a.A(534777),{resolveSpawnTarget:d}=await a.A(889618),e=c(b),f=await d(this.resolveCommand(),["--version"]),{stdout:g}=await e(f.command,f.args,{timeout:5e3});return g.trim()||null}catch{return null}}async getModels(){return g}getConfigDir(){return d.join(c.homedir(),".claude")}getSettingsPath(){return d.join(this.getConfigDir(),"settings.json")}getSessionsDir(){return d.join(this.getConfigDir(),"projects")}getApiKeyInfo(){return{envVar:"ANTHROPIC_API_KEY",required:!1}}buildHelloProbeArgs(a){return{command:this.resolveCommand(),args:["--print",a,"--output-format","stream-json","--verbose"]}}resolveCommand(){return process.env.CLAUDE_CODE_PATH?process.env.CLAUDE_CODE_PATH:(0,e.resolveCommandPathSync)("claude")}readSettings(){try{return JSON.parse(b.readFileSync(this.getSettingsPath(),"utf-8"))}catch{return{}}}writeSettings(a){let c=this.getConfigDir();b.existsSync(c)||b.mkdirSync(c,{recursive:!0}),b.writeFileSync(this.getSettingsPath(),JSON.stringify(a,null,2),"utf-8")}getHookArray(a,b){let c=a[b];return Array.isArray(c)?c:[]}hasHook(a,b){return a.some(a=>a.hooks?.some(a=>a.command?.includes(b)))}}],52350)},897667,a=>{"use strict";let b=new(a.i(52350)).ClaudeCliAdapter;async function c(d,e,f={}){let g="";try{let{query:c}=await a.A(719041),h=b.resolveCommand();for await(let a of c({prompt:d,options:{tools:f.tools??[],allowedTools:f.allowedTools??[],maxTurns:f.maxTurns??1,cwd:e,pathToClaudeCodeExecutable:h,sessionPersistence:!1}}))if("assistant"===a.type){let b=a.message.content.filter(a=>"text"===a.type);g+=b.map(a=>a.text??"").join("")}else if("result"===a.type){let b="string"==typeof a.result?a.result:"";b&&!g&&(g=b)}return g.trim()||null}catch(a){if(a.message?.includes("maximum number of turns")&&g.trim())return g.trim();return console.error("[aiQuery] Failed:",a.message,a.stack?.slice(0,300)),null}}async function d(a,b){let d=`以下是一次AI编程助手的终端会话记录。请用一句简短的中文总结这次会话做了什么(不超过50字,只回答总结内容,不要加引号或前缀):
2
-
3
- \`\`\`
4
- ${a.slice(-5e3)}
5
- \`\`\``,e=await c(d,b);return e&&e.replace(/^[#*\->"'\s]+/,"").trim()||null}async function e(a,b,d){let e=a.slice(-8e3),f=d?`
6
- Session summary: ${d}`:"",g=`You are analyzing a completed AI coding session. Extract reusable insights.
7
- ${f}
8
-
9
- Terminal log (last 8000 chars):
10
- \`\`\`
11
- ${e}
12
- \`\`\`
13
-
14
- Respond ONLY with valid JSON matching this schema (no markdown, no explanation):
15
- {
16
- "summary": "one-sentence summary of what was accomplished",
17
- "insights": [
18
- { "type": "pattern|pitfall|decision|tool|reference", "content": "description" }
19
- ],
20
- "shouldCreateNote": true/false,
21
- "noteTitle": "short title for the note (only if shouldCreateNote is true)"
22
- }
23
-
24
- Rules:
25
- - Set shouldCreateNote=true ONLY if there are genuinely reusable insights (architectural decisions, non-obvious pitfalls, useful patterns, important tool discoveries)
26
- - Trivial sessions (simple formatting, single-line edits, routine commits) should have shouldCreateNote=false
27
- - insights array can be empty if nothing notable
28
- - Keep each insight concise (1-2 sentences)`,h=await c(g,b);if(!h)return null;try{let a=h,b=a.match(/\{[\s\S]*\}/);b&&(a=b[0]);let c=JSON.parse(a);if("string"!=typeof c.summary||"boolean"!=typeof c.shouldCreateNote)return console.error("[generateDreamingInsight] Invalid response structure"),null;return c}catch(a){return console.error("[generateDreamingInsight] JSON parse failed:",a.message),null}}a.s(["aiQuery",0,c,"generateDreamingInsight",0,e,"generateSummaryFromLog",0,d])},482848,a=>{a.v(a=>Promise.resolve().then(()=>a(874533)))},268548,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_node_util_0xr.y7p._.js"].map(b=>a.l(b))).then(()=>b(812057)))},144264,a=>{a.v(a=>Promise.resolve().then(()=>a(233405)))},534777,a=>{a.v(a=>Promise.resolve().then(()=>a(224361)))},889618,a=>{a.v(a=>Promise.resolve().then(()=>a(163812)))},719041,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__0ti8vng._.js","server/chunks/ssr/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0myippv._.js"].map(b=>a.l(b))).then(()=>b(845454)))}];
29
-
30
- //# sourceMappingURL=%5Broot-of-the-server%5D__12so59v._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},521007,a=>{"use strict";a.s(["BOARD_COLUMNS",0,[{id:"TODO",label:"To Do",color:"bg-slate-400"},{id:"IN_PROGRESS",label:"In Progress",color:"bg-amber-400"},{id:"IN_REVIEW",label:"In Review",color:"bg-sky-400"},{id:"DONE",label:"Done",color:"bg-emerald-400"},{id:"CANCELLED",label:"Cancelled",color:"bg-rose-400"}],"NOTE_CATEGORIES_PRESET",0,["账号","环境","需求","备忘"],"PRIORITY_CONFIG",0,{LOW:{label:"低",color:"bg-slate-500/20 text-slate-300 border border-slate-500/30"},MEDIUM:{label:"中",color:"bg-amber-500/20 text-amber-300 border border-amber-500/30"},HIGH:{label:"高",color:"bg-orange-500/20 text-orange-300 border border-orange-500/30"},CRITICAL:{label:"紧急",color:"bg-rose-500/20 text-rose-300 border border-rose-500/30"}},"TOWER_LABEL_NAME",0,"Tower"])},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},454835,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40440adf3dd8ccc8e058a09ab80ef012fef1b3918c",b.callServer,void 0,b.findSourceMapURL,"openInTerminal");a.s(["openInTerminal",0,c])},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},938518,924117,165614,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("405dfc43cd11ae435ef60de537636f1ad4e1b6d324",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],938518);let d=(0,b.createServerReference)("405d38c1dfe222d25c80e82e946d93bfdbdf42de9d",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],924117);let e=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,e],165614)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},264589,a=>{"use strict";let b=(0,a.i(711796).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);a.s(["Package",0,b],264589)},700925,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("4011f2b8a420d565b4e614611bf6c9b8c4bbcb956c",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},412783,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}])},157551,a=>{"use strict";let b=(0,a.i(711796).default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);a.s(["Calendar",0,b],157551)},757061,893014,a=>{"use strict";var b=a.i(728778),c=a.i(432949),d=a.i(368114),e=a.i(699570),f=a.i(14906);function g({...a}){return(0,b.jsx)(c.Dialog.Portal,{"data-slot":"sheet-portal",...a})}function h({className:a,...e}){return(0,b.jsx)(c.Dialog.Backdrop,{"data-slot":"sheet-overlay",className:(0,d.cn)("fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs",a),...e})}a.s(["Sheet",0,function({...a}){return(0,b.jsx)(c.Dialog.Root,{"data-slot":"sheet",...a})},"SheetContent",0,function({className:a,children:i,side:j="right",showCloseButton:k=!0,...l}){return(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{}),(0,b.jsxs)(c.Dialog.Popup,{"data-slot":"sheet-content","data-side":j,className:(0,d.cn)("fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",a),...l,children:[i,k&&(0,b.jsxs)(c.Dialog.Close,{"data-slot":"sheet-close",render:(0,b.jsx)(e.Button,{variant:"ghost",className:"absolute top-3 right-3",size:"icon-sm"}),children:[(0,b.jsx)(f.XIcon,{}),(0,b.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"SheetDescription",0,function({className:a,...e}){return(0,b.jsx)(c.Dialog.Description,{"data-slot":"sheet-description",className:(0,d.cn)("text-sm text-muted-foreground",a),...e})},"SheetHeader",0,function({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sheet-header",className:(0,d.cn)("flex flex-col gap-0.5 p-4",a),...c})},"SheetTitle",0,function({className:a,...e}){return(0,b.jsx)(c.Dialog.Title,{"data-slot":"sheet-title",className:(0,d.cn)("font-heading text-base font-medium text-foreground",a),...e})}],757061);var i=a.i(780410);let j=(0,i.createServerReference)("40e4dfe6a3b899cdd4196ae7070a035d81655e1385",i.callServer,void 0,i.findSourceMapURL,"getTaskOverview");a.s(["getTaskOverview",0,j],893014)},972420,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(757061),e=a.i(269876),f=a.i(786304),g=a.i(699570),h=a.i(951192),i=a.i(667869),j=a.i(893014),k=a.i(577373),l=a.i(938518),m=a.i(924117),n=a.i(454835),o=a.i(445798),p=a.i(521007),q=a.i(157551),r=a.i(22761),s=a.i(264589),t=a.i(165614),u=a.i(625892),v=a.i(939859),w=a.i(648512);function x({added:a,removed:c}){let{t:d}=(0,h.useI18n)();return(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-gray-500",children:[(0,b.jsx)("span",{children:d("diff.filesChanged",{count:String(a+c)})}),a>0&&(0,b.jsxs)("span",{className:"text-green-500",children:["+",a]}),c>0&&(0,b.jsxs)("span",{className:"text-red-500",children:["-",c]})]})}var y=a.i(952313);a.s(["TaskOverviewDrawer",0,function({open:a,onOpenChange:z,taskId:A}){let{t:B}=(0,h.useI18n)(),[C,D]=(0,c.useState)(null),[E,F]=(0,c.useTransition)(),[G,H]=(0,c.useState)(!1),[I,J]=(0,c.useState)([]);(0,c.useEffect)(()=>{A&&a?F(async()=>{let a=await (0,j.getTaskOverview)(A);a&&(D(a),a.project?.workspaceId&&(0,k.getLabelsForWorkspace)(a.project.workspaceId).then(a=>{J(a.map(a=>({id:a.id,name:a.name,color:a.color,isBuiltin:a.isBuiltin})))}).catch(()=>J([])))}):D(null)},[A,a]);let K=C?p.BOARD_COLUMNS.find(a=>a.id===C.status):null,L=C?p.PRIORITY_CONFIG[C.priority]:null,M=C?.executions?.[0]??null,N=(()=>{if(M?.worktreePath)return M.worktreePath;let a=C?.project?.localPath;return a?C?.subPath?`${a}/${C.subPath}`:a:null})(),O=(()=>{let a=M?.gitStats;if(!a)return null;try{let b=JSON.parse(a);return{added:b.insertions??0,removed:b.deletions??0}}catch{return null}})(),P=async a=>{if(C?.project)try{let{autoStart:b,...c}=a;await (0,i.createTask)({...c,projectId:C.project.id}),y.toast.success(B("taskDrawer.duplicateSuccess")),H(!1),z(!1)}catch{y.toast.error(B("taskDrawer.duplicateFailed"))}};return(0,b.jsxs)(d.Sheet,{open:a,onOpenChange:z,children:[(0,b.jsxs)(d.SheetContent,{side:"right",className:"w-[380px] sm:max-w-[380px] p-0",children:[(0,b.jsxs)(d.SheetHeader,{className:"px-4 pt-4 pb-3 border-b border-border",children:[(0,b.jsx)(d.SheetTitle,{className:"text-base font-semibold leading-tight pr-8",children:C?.title??""}),(0,b.jsx)(d.SheetDescription,{className:"sr-only",children:B("taskDrawer.title")}),C&&(0,b.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[K&&(0,b.jsxs)(f.Badge,{variant:"secondary",className:"text-xs",children:[(0,b.jsx)("span",{className:`inline-block w-2 h-2 rounded-full mr-1.5 ${K.color}`}),K.label]}),L&&(0,b.jsx)(f.Badge,{variant:"secondary",className:`text-xs ${L.color}`,children:L.label})]})]}),(0,b.jsx)(e.ScrollArea,{className:"flex-1 h-[calc(100%-80px)]",children:E&&!C?(0,b.jsx)("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:B("assets.loading")}):C?(0,b.jsxs)("div",{className:"p-4 space-y-4",children:[(0,b.jsxs)("section",{children:[(0,b.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1",children:B("taskDrawer.description")}),(0,b.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap",children:C.description||B("taskDrawer.noDescription")})]}),C.labels.length>0&&(0,b.jsxs)("section",{children:[(0,b.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:B("taskDrawer.labels")}),(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:C.labels.map(a=>(0,b.jsx)(f.Badge,{variant:"secondary",className:"text-xs",style:{backgroundColor:`${a.label.color}20`,color:a.label.color,borderColor:`${a.label.color}40`},children:a.label.name},a.label.id))})]}),(0,b.jsxs)("section",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,b.jsx)(q.Calendar,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:B("taskDrawer.createdAt")}),(0,b.jsx)("span",{className:"text-foreground",children:new Date(C.createdAt).toLocaleDateString()})]}),(0,b.jsxs)("section",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,b.jsx)(s.Package,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:B("taskDrawer.resources")}),(0,b.jsx)("span",{className:"text-foreground",children:C._count.assets})]}),(0,b.jsxs)("section",{children:[(0,b.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:B("taskDrawer.fileChanges")}),O?(0,b.jsx)(x,{added:O.added,removed:O.removed}):(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:B("taskDrawer.noFileChanges")})]}),(0,b.jsxs)("section",{children:[(0,b.jsxs)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5 flex items-center gap-1.5",children:[(0,b.jsx)(t.PlayCircle,{className:"h-3.5 w-3.5"}),B("taskDrawer.lastExecution")]}),M?(0,b.jsxs)("div",{className:"rounded-md border border-border p-2.5 text-sm",children:[(0,b.jsx)(f.Badge,{variant:"secondary",className:"text-xs mb-1.5",children:M.status}),M.summary&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-4",children:M.summary.slice(0,200)})]}):(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:B("taskDrawer.noExecution")})]}),N&&(0,b.jsxs)("section",{className:"flex flex-col",children:[(0,b.jsxs)(g.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,l.openInFileManager)(N)}catch(a){console.error("openInFileManager failed:",a),y.toast.error(B("git.openInFileManagerFailed"))}},children:[(0,b.jsx)(u.FolderSearch,{className:"h-3.5 w-3.5 shrink-0"}),B("git.openInFileManager")]}),(0,b.jsxs)(g.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,m.openInEditor)(N)}catch(a){console.error("openInEditor failed:",a),y.toast.error(B("git.openInEditorFailed"))}},children:[(0,b.jsx)(v.Code,{className:"h-3.5 w-3.5 shrink-0"}),B("git.openInEditor")]}),(0,b.jsxs)(g.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,n.openInTerminal)(N)}catch(a){console.error("openInTerminal failed:",a),y.toast.error(B("git.openInTerminalFailed"))}},children:[(0,b.jsx)(w.Terminal,{className:"h-3.5 w-3.5 shrink-0"}),B("git.openInTerminal")]})]}),(0,b.jsx)("section",{children:(0,b.jsxs)(g.Button,{variant:"default",className:"w-full",onClick:()=>{C&&H(!0)},disabled:!C,children:[(0,b.jsx)(r.Copy,{className:"h-4 w-4"}),B("taskDrawer.duplicate")]})})]}):null})]}),C?.project&&(0,b.jsx)(o.CreateTaskDialog,{open:G,onOpenChange:H,onSubmit:P,labels:I,projectType:C.project.type,projectLocalPath:C.project.localPath,prefillFromTask:{title:C.title,description:C.description,priority:C.priority,subPath:C.subPath,labelIds:C.labels.map(a=>a.label.id),baseBranch:C.baseBranch}})]})}],972420)}];
2
-
3
- //# sourceMappingURL=_0.3p35c._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[300141,639138,88757,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);a.s(["Square",0,c],300141);var d=a.i(728778),e=a.i(374637),f=a.i(10390),g=a.i(442620),h=a.i(811344),i=a.i(394869),j=a.i(207339),k=a.i(704494),l=a.i(699570),m=a.i(579834),n=a.i(786304),o=a.i(814574),p=a.i(429246),q=a.i(951192);function r({patchState:a,isLargeFold:b,onLoad:c}){let{t:e}=(0,q.useI18n)();return b?(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center gap-1 py-6",children:[(0,d.jsx)(l.Button,{variant:"link",onClick:c,className:"h-auto p-0 text-sm",children:e("diff.loadDiff")}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:e("diff.foldedLarge")})]}):a&&"loading"!==a.kind?"error"===a.kind?(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-6 text-sm text-muted-foreground",children:[(0,d.jsx)("span",{children:e("diff.loadFailed")}),(0,d.jsx)(l.Button,{variant:"ghost",onClick:c,children:e("diff.retry")})]}):"binary"===a.kind?(0,d.jsx)("div",{className:"flex items-center justify-center py-6 text-sm text-muted-foreground",children:e("diff.binaryNotShown")}):"empty"===a.kind?(0,d.jsx)("div",{className:"flex items-center justify-center py-6 text-sm text-muted-foreground",children:e("diff.noChanges")}):(0,d.jsx)(s,{patch:a.patch??""}):(0,d.jsx)("div",{className:"flex items-center justify-center py-6",children:(0,d.jsx)(k.Loader2,{className:"h-5 w-5 animate-spin text-muted-foreground"})})}function s({patch:a}){let{t:b}=(0,q.useI18n)(),c=a.split("\n"),e=c.length>500,f=e?c.slice(0,500):c;return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("pre",{className:"overflow-x-auto p-0 text-xs font-mono leading-5",children:f.map((a,b)=>{let c=a.startsWith("+++")||a.startsWith("---")?"px-4 block text-muted-foreground":a.startsWith("+")?"px-4 block bg-green-500/10 text-green-400":a.startsWith("-")?"px-4 block bg-red-500/10 text-red-400":a.startsWith("@@")?"px-4 block bg-blue-500/10 text-blue-300":"px-4 block text-muted-foreground";return(0,d.jsx)("span",{className:c,children:a||" "},b)})}),e&&(0,d.jsx)("div",{className:"px-4 py-2 text-xs text-muted-foreground border-t border-border",children:b("diff.patchTruncated",{n:String(500),total:String(c.length)})})]})}a.s(["TaskDiffView",0,function({taskId:a,files:b,totalAdded:c,totalRemoved:k,hasConflicts:s,conflictFiles:t,onCommit:u,hasUncommitted:v}){let{t:w}=(0,q.useI18n)(),[x,y]=(0,e.useState)(new Set),[z,A]=(0,e.useState)(new Map),[B,C]=(0,e.useState)(!1),[D,E]=(0,e.useState)(""),[F,G]=(0,e.useState)(!1),H=b=>{A(a=>new Map(a).set(b,{kind:"loading"})),fetch(`/api/tasks/${a}/diff-patch?file=${encodeURIComponent(b)}`).then(a=>a.ok?a.json():Promise.reject(Error(`HTTP ${a.status}`))).then(a=>{A(c=>{let d=new Map(c);return"binary"===a.kind?d.set(b,{kind:"binary"}):"empty"===a.kind?d.set(b,{kind:"empty"}):d.set(b,{kind:"ready",patch:a.patch??""}),d})}).catch(()=>{A(a=>new Map(a).set(b,{kind:"error"}))})};return(0,d.jsxs)("div",{className:"flex flex-col h-full",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-border px-4 py-3 flex-shrink-0",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3 text-sm text-muted-foreground",children:[(0,d.jsxs)("span",{className:"font-medium text-foreground",children:[b.length," files changed"]}),(0,d.jsxs)("span",{className:"text-green-400 font-mono text-xs",children:["+",c]}),(0,d.jsxs)("span",{className:"text-red-400 font-mono text-xs",children:["-",k]})]}),(0,d.jsx)("div",{className:"flex items-center gap-2",children:v&&u&&(0,d.jsxs)(l.Button,{variant:"outline",onClick:()=>C(!0),className:"gap-2",children:[(0,d.jsx)(j.GitCommitHorizontal,{className:"h-4 w-4"}),w("diff.commit")]})})]}),s&&(0,d.jsxs)("div",{className:"flex flex-col gap-2 border-b border-border bg-amber-500/5 px-4 py-3 flex-shrink-0",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-amber-400",children:[(0,d.jsx)(h.AlertTriangle,{className:"h-4 w-4 flex-shrink-0"}),(0,d.jsxs)("span",{className:"text-sm font-medium",children:["Merge blocked: ",t.length," conflicting file",1!==t.length?"s":""]})]}),(0,d.jsx)("ul",{className:"ml-6 space-y-1",children:t.map(a=>(0,d.jsx)("li",{className:"text-xs font-mono text-amber-300/80",children:a},a))})]}),(0,d.jsx)("div",{className:"flex-1 overflow-auto",children:0===b.length?(0,d.jsx)(m.EmptyState,{icon:i.GitCompare,title:w("diff.noChanges"),className:"h-full"}):(0,d.jsx)("div",{className:"divide-y divide-border",children:b.map(a=>{let b=x.has(a.filename),c=z.get(a.filename),e=a.added+a.removed;return(0,d.jsxs)("div",{children:[(0,d.jsxs)(l.Button,{variant:"ghost",type:"button",onClick:()=>{let b;return b=x.has(a.filename),void(y(b=>{let c=new Set(b);return c.has(a.filename)?c.delete(a.filename):c.add(a.filename),c}),b||a.isBinary||z.has(a.filename)||a.added+a.removed<=200&&H(a.filename))},className:"flex w-full items-center gap-2 px-4 py-2.5 text-left hover:bg-accent/50 transition-colors rounded-none h-auto",children:[b?(0,d.jsx)(g.ChevronDown,{className:"h-3.5 w-3.5 flex-shrink-0 text-muted-foreground"}):(0,d.jsx)(f.ChevronRight,{className:"h-3.5 w-3.5 flex-shrink-0 text-muted-foreground"}),(0,d.jsx)("span",{className:"flex-1 truncate text-sm font-mono text-foreground",children:a.filename}),a.isBinary?(0,d.jsx)(n.Badge,{variant:"secondary",className:"text-[10px] bg-muted text-muted-foreground border border-border",children:w("diff.binary")}):(0,d.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,d.jsxs)("span",{className:"text-xs font-mono text-green-400",children:["+",a.added]}),(0,d.jsxs)("span",{className:"text-xs font-mono text-red-400",children:["-",a.removed]})]})]}),b&&!a.isBinary&&(0,d.jsx)("div",{className:"border-t border-border bg-background",children:(0,d.jsx)(r,{filename:a.filename,patchState:c,isLargeFold:!c&&e>200,onLoad:()=>H(a.filename)})})]},a.filename)})})}),(0,d.jsx)(o.Dialog,{open:B,onOpenChange:C,children:(0,d.jsxs)(o.DialogContent,{className:"max-w-md",children:[(0,d.jsx)(o.DialogHeader,{children:(0,d.jsx)(o.DialogTitle,{children:w("diff.commitChanges")})}),(0,d.jsx)("div",{className:"flex flex-col gap-3",children:(0,d.jsx)(p.Textarea,{value:D,onChange:a=>E(a.target.value),placeholder:w("diff.commitMessagePlaceholder"),rows:5,className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none resize-y min-h-[80px]"})}),(0,d.jsxs)(o.DialogFooter,{children:[(0,d.jsx)(l.Button,{variant:"ghost",onClick:()=>C(!1),children:w("common.cancel")}),(0,d.jsx)(l.Button,{onClick:async()=>{if(D.trim()&&u){G(!0);try{await u(D.trim()),E(""),C(!1)}finally{G(!1)}}},disabled:!D.trim()||F,children:F?"...":w("diff.commit")})]})]})})]})}],639138);var t=a.i(553798);let u=(0,b.default)("git-merge",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]]);a.s(["TaskMergeConfirmDialog",0,function({open:a,onOpenChange:b,taskId:c,taskTitle:f,baseBranch:g,fileCount:h,commitCount:i,commitLog:j=[],onMergeComplete:m}){let n=(0,t.useRouter)(),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(null),v=async()=>{q(!0),s(null);try{let a=await fetch(`/api/tasks/${c}/merge`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(a.ok){b(!1),m(),n.refresh();return}let d=await a.json().catch(()=>({error:"Merge failed"}));409===a.status?s(`Merge conflicts detected: ${Array.isArray(d.conflictFiles)?d.conflictFiles.join(", "):"unknown files"}`):s(d.error??"Merge failed")}catch{s("Network error — merge failed")}finally{q(!1)}};return(0,d.jsx)(o.Dialog,{open:a,onOpenChange:b,children:(0,d.jsxs)(o.DialogContent,{showCloseButton:!0,className:"sm:max-w-md",children:[(0,d.jsx)(o.DialogHeader,{children:(0,d.jsxs)(o.DialogTitle,{className:"flex items-center gap-2",children:[(0,d.jsx)(u,{className:"h-4 w-4 text-emerald-400"}),"Confirm Merge"]})}),(0,d.jsxs)("div",{className:"space-y-3 py-2",children:[(0,d.jsxs)("div",{className:"rounded-lg border border-border bg-muted/30 p-3 space-y-2.5",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:"Target branch"}),(0,d.jsx)("code",{className:"text-xs font-mono bg-muted px-2 py-0.5 rounded text-foreground",children:g})]}),(0,d.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:"Changed files"}),(0,d.jsx)("span",{className:"text-xs font-medium text-foreground",children:h})]}),(0,d.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:"Commits"}),(0,d.jsx)("span",{className:"text-xs font-medium text-foreground",children:i})]})]}),j.length>0&&(0,d.jsxs)("div",{children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground mb-1 block",children:"Commits"}),(0,d.jsx)("div",{className:"rounded-md border border-border bg-muted/30 p-2 space-y-1 max-h-32 overflow-y-auto",children:j.map((a,b)=>(0,d.jsx)("div",{className:"text-xs font-mono text-foreground/80",children:a},b))})]}),r&&(0,d.jsx)("div",{className:"rounded-lg border border-red-500/20 bg-red-500/10 px-3 py-2",children:(0,d.jsx)("p",{className:"text-xs text-red-400",children:r})})]}),(0,d.jsxs)(o.DialogFooter,{children:[(0,d.jsx)(l.Button,{variant:"outline",onClick:()=>b(!1),disabled:p,children:"Cancel"}),(0,d.jsx)(l.Button,{onClick:v,disabled:p,className:"gap-2",children:p?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(k.Loader2,{className:"h-4 w-4 animate-spin"}),"Merging..."]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(u,{className:"h-4 w-4"}),"Confirm Merge"]})})]})]})})}],88757)},970535,359948,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);a.s(["Clock",0,c],970535);let d=(0,b.default)("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);a.s(["History",0,d],359948)},7285,a=>{"use strict";async function b(a,c,d={}){let e=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:c,path:a,...d})});if(!e.ok)throw Error((await e.json()).error||`${c} failed`);return e.json()}a.s(["gitAction",0,b])},324263,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-up-from-line",[["path",{d:"m18 9-6-6-6 6",key:"kcunyi"}],["path",{d:"M12 3v14",key:"7cf3v8"}],["path",{d:"M5 21h14",key:"11awu3"}]]);a.s(["ArrowUpFromLine",0,b],324263)},791717,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(577565),e=a.i(442620),f=a.i(573242),g=a.i(668116),h=a.i(704494),i=a.i(814574),j=a.i(699570),k=a.i(866718),l=a.i(429246),m=a.i(951192);a.s(["CreateBranchDialog",0,function({open:a,onOpenChange:n,branches:o,currentBranch:p,localPath:q,onCreated:r,onError:s}){let{t}=(0,m.useI18n)(),[u,v]=(0,c.useState)(""),[w,x]=(0,c.useState)(p),[y,z]=(0,c.useState)(""),[A,B]=(0,c.useState)(!1),[C,D]=(0,c.useState)(""),[E,F]=(0,c.useState)(!1);(0,c.useEffect)(()=>{a&&(v(""),x(p),z(""),D(""))},[a,p]);let G=[...new Set(o)].filter(a=>a.toLowerCase().includes(C.toLowerCase())),H=async()=>{if(u.trim()){B(!0);try{let a=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"create-branch",path:q,branch:u.trim(),baseBranch:w})});if(a.ok)n(!1),r();else{let b=await a.json();s(b.error||"Unknown error")}}catch{s("Network error")}finally{B(!1)}}};return(0,b.jsx)(i.Dialog,{open:a,onOpenChange:n,children:(0,b.jsxs)(i.DialogContent,{className:"sm:max-w-sm",children:[(0,b.jsx)(i.DialogHeader,{children:(0,b.jsx)(i.DialogTitle,{children:t("git.createBranch")})}),(0,b.jsxs)("div",{className:"space-y-3 py-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:t("git.branchName")}),(0,b.jsx)(k.Input,{value:u,onChange:a=>v(a.target.value),placeholder:t("git.branchNamePlaceholder"),className:"mt-1.5 font-mono text-xs",onKeyDown:a=>"Enter"===a.key&&H()})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:t("git.baseBranch")}),(0,b.jsxs)("div",{className:"relative mt-1.5",children:[(0,b.jsxs)("button",{onClick:()=>F(!E),className:"flex w-full items-center justify-between rounded-lg border border-border bg-muted/50 px-3 py-2 text-left transition-colors hover:bg-accent",children:[(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)(d.GitBranch,{className:"h-3 w-3 shrink-0 text-emerald-400"}),(0,b.jsx)("span",{className:"truncate font-mono text-xs text-foreground",title:w,children:w})]}),(0,b.jsx)(e.ChevronDown,{className:`h-3 w-3 text-muted-foreground transition-transform ${E?"rotate-180":""}`})]}),E&&(0,b.jsxs)("div",{className:"absolute left-0 right-0 top-full z-20 mt-1 rounded-lg border border-border bg-popover shadow-xl",children:[(0,b.jsx)("div",{className:"border-b border-border p-1.5",children:(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(f.Search,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-3 w-3 text-muted-foreground"}),(0,b.jsx)("input",{value:C,onChange:a=>D(a.target.value),placeholder:"Filter...",autoFocus:!0,className:"h-7 w-full rounded-md bg-muted/50 pl-7 pr-2 text-xs text-foreground placeholder-muted-foreground outline-none focus:ring-1 focus:ring-ring"})]})}),(0,b.jsx)("div",{className:"max-h-40 overflow-auto py-1",children:G.map(a=>(0,b.jsxs)("button",{onClick:()=>{x(a),F(!1)},className:`flex w-full items-center gap-2 px-3 py-1.5 text-left transition-colors ${a===w?"bg-emerald-500/10 text-emerald-400":"text-secondary-foreground hover:bg-accent"}`,children:[(0,b.jsx)(d.GitBranch,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate font-mono text-xs",title:a,children:a}),a===w&&(0,b.jsx)(g.Check,{className:"h-3 w-3 ml-auto shrink-0"})]},a))})]})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:t("git.branchDesc")}),(0,b.jsx)(l.Textarea,{value:y,onChange:a=>z(a.target.value),placeholder:t("git.branchDescPlaceholder"),rows:2,className:"mt-1.5 w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none transition-colors focus:border-ring focus:ring-1 focus:ring-ring resize-none"})]})]}),(0,b.jsxs)(i.DialogFooter,{children:[(0,b.jsx)(j.Button,{variant:"outline",onClick:()=>n(!1),children:t("common.cancel")}),(0,b.jsxs)(j.Button,{onClick:H,disabled:!u.trim()||A,className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:[A?(0,b.jsx)(h.Loader2,{className:"h-3 w-3 animate-spin mr-1"}):null,t("common.create")]})]})]})})}])},6602,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60a974d42632a6c3d556e9d0dab58c3c3b649f3e08",b.callServer,void 0,b.findSourceMapURL,"updateTask");a.s(["updateTask",0,c])},323542,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("407c04426c5f6a3262e498498881031dea0955108a",b.callServer,void 0,b.findSourceMapURL,"continueLatestPtyExecution");a.s(["continueLatestPtyExecution",0,c])},14551,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40099495f31a0f997a6f5e97887f14d51636007a97",b.callServer,void 0,b.findSourceMapURL,"getTaskExecutions");a.s(["getTaskExecutions",0,c])},534449,793323,295035,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("601e34b8f82176c938bcff8f4b913460970f4b4046",b.callServer,void 0,b.findSourceMapURL,"updateTaskStatus");a.s(["updateTaskStatus",0,c],534449);let d=(0,b.createServerReference)("404d3a5a18e7ff3ca13a4a749d576559e04d10ddb9",b.callServer,void 0,b.findSourceMapURL,"checkWorktreeClean");a.s(["checkWorktreeClean",0,d],793323);let e=(0,b.createServerReference)("60ea0297c5a8dc01a84067cc562680bf647f4e3d27",b.callServer,void 0,b.findSourceMapURL,"commitWorktreeChanges");a.s(["commitWorktreeChanges",0,e],295035)},283857,a=>{"use strict";let b=(0,a.i(711796).default)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);a.s(["Lightbulb",0,b],283857)},715525,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(442620),e=a.i(745539),f=a.i(913284),g=a.i(468862),h=a.i(704494),i=a.i(970535),j=a.i(165614),k=a.i(161664),l=a.i(283857),m=a.i(359948),n=a.i(699570),o=a.i(579834),p=a.i(951192);function q({status:a}){switch(a){case"COMPLETED":return(0,b.jsx)(f.CheckCircle2,{className:"h-4 w-4 text-emerald-400"});case"FAILED":return(0,b.jsx)(g.XCircle,{className:"h-4 w-4 text-red-400"});case"RUNNING":return(0,b.jsx)(h.Loader2,{className:"h-4 w-4 text-blue-400 animate-spin"});default:return(0,b.jsx)(i.Clock,{className:"h-4 w-4 text-neutral-500"})}}a.s(["ExecutionTimeline",0,function({executions:a,onResume:f,onContinueLatest:g}){let{t:h,locale:i}=(0,p.useI18n)(),[r,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(null);return 0===a.length?(0,b.jsx)(o.EmptyState,{icon:m.History,title:h("execution.noHistory")}):(0,b.jsxs)("div",{className:"space-y-2 p-3",children:[(0,b.jsx)("p",{className:"px-1 text-[11px] font-semibold uppercase tracking-wider text-muted-foreground",children:h("execution.history")}),a.map(c=>{let m=function(a){if(!a)return null;try{return JSON.parse(a)}catch{return null}}(c.gitStats??null),o=function(a,b){if(!a||!b)return"";let c=new Date(b).getTime()-new Date(a).getTime();if(c<0)return"";let d=Math.floor(c/1e3);if(d<60)return`${d}s`;let e=Math.floor(d/60);if(e<60)return`${e}m ${d%60}s`;let f=Math.floor(e/60);return`${f}h ${e%60}m`}(c.startedAt??null,c.endedAt??null),p=r===c.id;return(0,b.jsxs)("div",{className:"rounded-lg border border-border bg-background/50 overflow-hidden",children:[(0,b.jsxs)("div",{className:"p-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(q,{status:c.status}),(0,b.jsx)("span",{className:`font-medium ${function(a){switch(a){case"COMPLETED":return"text-emerald-400";case"FAILED":return"text-red-400";case"RUNNING":return"text-blue-400";default:return"text-neutral-400"}}(c.status)}`,children:function(a,b){switch(a){case"COMPLETED":return b("execution.success");case"FAILED":return b("execution.failed");case"RUNNING":return b("execution.running");default:return a}}(c.status,h)}),(0,b.jsx)("span",{className:"text-muted-foreground",children:function(a,b="zh"){if(!a)return"";let c=new Date(a),d=Math.floor((new Date().getTime()-c.getTime())/864e5),e="zh"===b?"zh-CN":"en-US",f=c.toLocaleTimeString(e,{hour:"2-digit",minute:"2-digit"});return 0===d?f:1===d?"zh"===b?`昨天 ${f}`:`Yesterday ${f}`:d<7?"zh"===b?`${d}天前 ${f}`:`${d}d ago ${f}`:c.toLocaleDateString(e,{month:"2-digit",day:"2-digit"})+" "+f}(c.startedAt??null,i)}),o&&(0,b.jsxs)("span",{className:"text-muted-foreground/60",children:["(",o,")"]})]}),(0,b.jsx)("p",{className:"mt-1.5 text-sm text-foreground/80 line-clamp-2",children:c.summary||h("execution.noSummary")}),m&&(m.commits||m.filesChanged)&&(0,b.jsxs)("div",{className:"mt-1.5 flex items-center gap-2 text-[11px] text-muted-foreground font-mono",children:[m.commits?(0,b.jsxs)("span",{children:[m.commits," ",h("execution.commits")]}):null,m.filesChanged?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"·"}),(0,b.jsxs)("span",{children:[m.filesChanged," ",h("execution.files")]})]}):null,m.insertions||m.deletions?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"·"}),m.insertions?(0,b.jsxs)("span",{className:"text-emerald-500",children:["+",m.insertions]}):null,m.deletions?(0,b.jsxs)("span",{className:"text-red-400",children:["-",m.deletions]}):null]}):null]}),c.insightNote&&(0,b.jsxs)("div",{className:"mt-2",children:[(0,b.jsxs)("button",{onClick:()=>u(t===c.id?null:c.id),className:"flex items-center gap-1.5 text-xs text-primary/90 hover:text-primary transition-colors",children:[(0,b.jsx)(l.Lightbulb,{className:"h-3.5 w-3.5"}),(0,b.jsxs)("span",{className:"font-medium",children:[h("execution.insight"),":"]}),(0,b.jsx)("span",{className:"text-foreground/70 truncate max-w-[200px]",children:c.insightNote.title}),t===c.id?(0,b.jsx)(e.ChevronUp,{className:"h-3 w-3"}):(0,b.jsx)(d.ChevronDown,{className:"h-3 w-3"})]}),t===c.id&&(0,b.jsx)("div",{className:"mt-2 rounded-md bg-primary/[0.06] border border-primary/10 p-3 text-xs text-foreground/80 whitespace-pre-wrap",children:c.insightNote.content})]}),(0,b.jsxs)("div",{className:"mt-2.5 flex items-center gap-2",children:[c.sessionId&&f?(0,b.jsxs)(n.Button,{size:"sm",onClick:()=>f(c.sessionId),className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:[(0,b.jsx)(j.PlayCircle,{className:"h-3.5 w-3.5"}),h("execution.resume")]}):!c.sessionId&&"FAILED"===c.status&&c.id===a[0]?.id&&g?(0,b.jsxs)(n.Button,{size:"sm",onClick:g,className:"bg-blue-500/15 text-blue-300 ring-1 ring-blue-500/20 hover:bg-blue-500/25",children:[(0,b.jsx)(k.RotateCcw,{className:"h-3.5 w-3.5"}),h("execution.tryRecover")]}):null,(0,b.jsxs)(n.Button,{variant:"ghost",size:"sm",onClick:()=>s(p?null:c.id),className:"bg-muted text-muted-foreground",children:[p?(0,b.jsx)(e.ChevronUp,{className:"h-3.5 w-3.5"}):(0,b.jsx)(d.ChevronDown,{className:"h-3.5 w-3.5"}),p?h("execution.collapse"):h("execution.details")]})]})]}),p&&(0,b.jsxs)("div",{className:"border-t border-border px-3 pb-3 space-y-3",children:[c.gitLog&&(0,b.jsxs)("div",{className:"mt-3",children:[(0,b.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted-foreground mb-1.5",children:h("execution.gitLog")}),(0,b.jsx)("pre",{className:"rounded-md bg-muted/50 p-2.5 text-xs font-mono text-foreground/70 overflow-x-auto whitespace-pre-wrap",children:c.gitLog.split("\n").slice(0,3).join("\n")})]}),c.terminalLog&&(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted-foreground mb-1.5",children:h("execution.terminalOutput")}),(0,b.jsx)("pre",{className:"rounded-md bg-[#0f1419] p-2.5 text-xs font-mono text-neutral-300 overflow-x-auto max-h-48 overflow-y-auto whitespace-pre-wrap",children:c.terminalLog})]}),"FAILED"===c.status&&null!=c.exitCode&&(0,b.jsxs)("p",{className:"text-xs text-red-400/70",children:["Exit code: ",c.exitCode]})]})]},c.id)})]})}])}];
2
-
3
- //# sourceMappingURL=_059-b~p._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[700925,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("4011f2b8a420d565b4e614611bf6c9b8c4bbcb956c",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},454835,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40440adf3dd8ccc8e058a09ab80ef012fef1b3918c",b.callServer,void 0,b.findSourceMapURL,"openInTerminal");a.s(["openInTerminal",0,c])},161664,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],161664)},579834,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",g),children:[a&&(0,b.jsx)(a,{className:"h-10 w-10 text-muted-foreground/40"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:d}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:e}),f&&(0,b.jsx)("div",{className:"mt-2",children:f})]})}])},641699,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40b7b8b2cbef88b304d3b9cfc4821bd8151139b07c",b.callServer,void 0,b.findSourceMapURL,"stopPtyExecution");a.s(["stopPtyExecution",0,c])},390474,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("7cced4d6bbbc0361ac95456e1084d9fbeac9dcf643",b.callServer,void 0,b.findSourceMapURL,"startPtyExecution");a.s(["startPtyExecution",0,c])},85005,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60e5cfd3f1474bccccfb4d683c94275923cb38e8f0",b.callServer,void 0,b.findSourceMapURL,"resumePtyExecution");a.s(["resumePtyExecution",0,c])}];
2
-
3
- //# sourceMappingURL=_0_z.pz4._.js.map
@@ -1,4 +0,0 @@
1
- module.exports=[10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},161664,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],161664)},579834,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",g),children:[a&&(0,b.jsx)(a,{className:"h-10 w-10 text-muted-foreground/40"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:d}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:e}),f&&(0,b.jsx)("div",{className:"mt-2",children:f})]})}])},390474,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("7cced4d6bbbc0361ac95456e1084d9fbeac9dcf643",b.callServer,void 0,b.findSourceMapURL,"startPtyExecution");a.s(["startPtyExecution",0,c])},641699,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40b7b8b2cbef88b304d3b9cfc4821bd8151139b07c",b.callServer,void 0,b.findSourceMapURL,"stopPtyExecution");a.s(["stopPtyExecution",0,c])},85005,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60e5cfd3f1474bccccfb4d683c94275923cb38e8f0",b.callServer,void 0,b.findSourceMapURL,"resumePtyExecution");a.s(["resumePtyExecution",0,c])},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},913284,468862,a=>{"use strict";var b=a.i(884664);a.s(["CheckCircle2",()=>b.default],913284);let c=(0,a.i(711796).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,c],468862)},811344,a=>{"use strict";var b=a.i(622945);a.s(["AlertTriangle",()=>b.default])},912772,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40ffd9131a2b0bee3d54dc50b284c1f786f35cf26d",b.callServer,void 0,b.findSourceMapURL,"getPrompts");a.s(["getPrompts",0,c])},627141,a=>{"use strict";var b=a.i(374637),c=a.i(87309);a.s(["useExtension",0,function(a){let d=(0,b.useContext)(c.ExtensionContext);if(!d)throw Error("useExtension must be used inside <ExtensionProvider>");return{status:d.statusMap[a],loading:d.loading,isInstalling:d.installing.has(a),install:()=>d.install(a),uninstall:()=>d.uninstall(a),refresh:()=>d.refresh(a)}}])},674407,964293,740087,364060,413540,210385,360572,328126,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("609115122fc80f9cfa311aac68607ed75f9e200183",b.callServer,void 0,b.findSourceMapURL,"listDirectory");a.s(["listDirectory",0,c],674407);let d=(0,b.createServerReference)("70ccc35bd29cf530a0fe79bae4ed49330dbac8891a",b.callServer,void 0,b.findSourceMapURL,"getGitStatus");a.s(["getGitStatus",0,d],964293);let e=(0,b.createServerReference)("60867649df18e7137e73e018436049a8d98beeb210",b.callServer,void 0,b.findSourceMapURL,"createFile");a.s(["createFile",0,e],740087);let f=(0,b.createServerReference)("60d169213c2468edfef3afcf0970578225b197bfbd",b.callServer,void 0,b.findSourceMapURL,"createDirectory");a.s(["createDirectory",0,f],364060);let g=(0,b.createServerReference)("708e7d82ed5beeb64a1009e32441db06648e3cbe1c",b.callServer,void 0,b.findSourceMapURL,"renameEntry");a.s(["renameEntry",0,g],413540);let h=(0,b.createServerReference)("6079cb7c754adf0e463430f7e47d7d8375bb59a5f7",b.callServer,void 0,b.findSourceMapURL,"deleteEntry");a.s(["deleteEntry",0,h],210385);let i=(0,b.createServerReference)("40b9ec81ef4294cb7831fda668db8db39a9e5f940f",b.callServer,void 0,b.findSourceMapURL,"listAllFiles");a.s(["listAllFiles",0,i],360572);let j=(0,b.createServerReference)("60f6049ae3375aa9b605213448371fc9173e1e9e9b",b.callServer,void 0,b.findSourceMapURL,"readFileContent");a.s(["readFileContent",0,j],328126)},196185,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("70dd68d681bec6b61c38cc57892786beacb60d5655",b.callServer,void 0,b.findSourceMapURL,"writeFileContent");a.s(["writeFileContent",0,c])},360765,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("6000acffe05a8a6381bcba95805ac640fa64d3d9d9",b.callServer,void 0,b.findSourceMapURL,"readFileContentForce");a.s(["readFileContentForce",0,c])},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},454835,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40440adf3dd8ccc8e058a09ab80ef012fef1b3918c",b.callServer,void 0,b.findSourceMapURL,"openInTerminal");a.s(["openInTerminal",0,c])},269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},938518,924117,165614,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("405dfc43cd11ae435ef60de537636f1ad4e1b6d324",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],938518);let d=(0,b.createServerReference)("405d38c1dfe222d25c80e82e946d93bfdbdf42de9d",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],924117);let e=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,e],165614)},394869,a=>{"use strict";let b=(0,a.i(711796).default)("git-compare",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["path",{d:"M11 18H8a2 2 0 0 1-2-2V9",key:"19pyzm"}]]);a.s(["GitCompare",0,b],394869)},207339,a=>{"use strict";let b=(0,a.i(711796).default)("git-commit-horizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["GitCommitHorizontal",0,b],207339)},945513,(a,b,c)=>{b.exports=a=>{if(!a||"string"!=typeof a||a.match(/^\s+$/))return[];let b=a.split(`
2
- `);if(0===b.length)return[];let c=[],d=null,e=null,g=0,i=0,j=null,k=a=>{let[b,e]=f(a)??[];d={chunks:[],deletions:0,additions:0,from:b,to:e},c.push(d)},l=()=>{(!d||d.chunks.length)&&k()},m=a=>{if(!e)return;let[b]=e.changes.slice(-1);e.changes.push({type:b.type,[b.type]:!0,ln1:b.ln1,ln2:b.ln2,ln:b.ln,content:a})},n=[[/^diff\s/,k],[/^new file mode (\d+)$/,(a,b)=>{l(),d.new=!0,d.newMode=b[1],d.from="/dev/null"}],[/^deleted file mode (\d+)$/,(a,b)=>{l(),d.deleted=!0,d.oldMode=b[1],d.to="/dev/null"}],[/^old mode (\d+)$/,(a,b)=>{l(),d.oldMode=b[1]}],[/^new mode (\d+)$/,(a,b)=>{l(),d.newMode=b[1]}],[/^index\s[\da-zA-Z]+\.\.[\da-zA-Z]+(\s(\d+))?$/,(a,b)=>{l(),d.index=a.split(" ").slice(1),b[1]&&(d.oldMode=d.newMode=b[1].trim())}],[/^---\s/,a=>{l(),d.from=h(a)}],[/^\+\+\+\s/,a=>{l(),d.to=h(a)}],[/^@@\s+-(\d+),?(\d+)?\s+\+(\d+),?(\d+)?\s@@/,(a,b)=>{d||k(a);let[c,f,h,l]=b.slice(1);g=+c,i=+h,e={content:a,changes:[],oldStart:+c,oldLines:+(f||1),newStart:+h,newLines:+(l||1)},j={oldLines:+(f||1),newLines:+(l||1)},d.chunks.push(e)}],[/^\$/,m]],o=[[/^\$/,m],[/^-/,a=>{e&&(e.changes.push({type:"del",del:!0,ln:g++,content:a}),d.deletions++,j.oldLines--)}],[/^\+/,a=>{e&&(e.changes.push({type:"add",add:!0,ln:i++,content:a}),d.additions++,j.newLines--)}],[/^\s*/,a=>{e?.changes.push({type:"normal",normal:!0,ln1:g++,ln2:i++,content:a}),j.oldLines--,j.newLines--}]],p=a=>{j?(a=>{for(let[b,c]of o){let d=a.match(b);if(d){c(a,d);break}}0===j.oldLines&&0===j.newLines&&(j=null)})(a):(a=>{for(let[b,c]of n){let d=a.match(b);if(d){c(a,d);break}}})(a)};for(let a of b)p(a);return c};let d=/(a|i|w|c|o|1|2)\/.*(?=["']? ["']?(b|i|w|c|o|1|2)\/)|(b|i|w|c|o|1|2)\/.*$/g,e=/^(a|b|i|w|c|o|1|2)\//,f=a=>a?.match(d)?.map(a=>a.replace(e,"").replace(/("|')$/,"")),g=/^\\?['"]|\\?['"]$/g,h=a=>{let b=i(a,"-+").trim();return(b=k(b)).replace(g,"").replace(e,"")},i=(a,b)=>{if(a=m(a),!b&&String.prototype.trimLeft)return a.trimLeft();let c=l(b);return a.replace(RegExp(`^${c}+`),"")},j=/\t.*|\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d(.\d+)?\s(\+|-)\d\d\d\d/,k=a=>{let b=j.exec(a);return b&&(a=a.substring(0,b.index).trim()),a},l=a=>null==a?"\\s":a instanceof RegExp?a.source:`[${m(a).replace(/([.*+?^=!:${}()|[\]/\\])/g,"\\$1")}]`,m=a=>`${a??""}`},514872,a=>{"use strict";var b=a.i(945513);function c(a){return a.replace(/\r\n/g,"\n")}a.s(["normalizeLF",0,c,"parseUnifiedDiff",0,function(a){return(0,b.default)(c(a))}])},742231,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js"].map(b=>a.l(b))).then(()=>b(610024)))},672257,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0pb0_@monaco-editor_react_dist_index_mjs_0dkxa~o._.js"].map(b=>a.l(b))).then(()=>b(566310)))}];
3
-
4
- //# sourceMappingURL=_0acdkk1._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[421992,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["default",0,b])},342796,(a,b,c)=>{"use strict";b.exports=a.r(918622)},374637,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].React},728778,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactJsxRuntime},986099,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactDOM},499636,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactServerDOMTurbopackClient},838928,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.AppRouterContext},806795,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.HooksClientContext},257172,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.ServerInsertedHtml},499425,a=>{"use strict";a.s(["mergeClasses",0,(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim()])},748939,539153,a=>{"use strict";a.s(["default",0,{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}],748939),a.s(["hasA11yProp",0,a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1}],539153)},392223,a=>{"use strict";var b=a.i(374637),c=a.i(748939),d=a.i(539153),e=a.i(499425);let f=(0,b.createContext)({}),g=(0,b.forwardRef)(({color:a,size:g,strokeWidth:h,absoluteStrokeWidth:i,className:j="",children:k,iconNode:l,...m},n)=>{let{size:o=24,strokeWidth:p=2,absoluteStrokeWidth:q=!1,color:r="currentColor",className:s=""}=(0,b.useContext)(f)??{},t=i??q?24*Number(h??p)/Number(g??o):h??p;return(0,b.createElement)("svg",{ref:n,...c.default,width:g??o??c.default.width,height:g??o??c.default.height,stroke:a??r,strokeWidth:t,className:(0,e.mergeClasses)("lucide",s,j),...!k&&!(0,d.hasA11yProp)(m)&&{"aria-hidden":"true"},...m},[...l.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(k)?k:[k]])});a.s(["default",0,g],392223)},403988,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},884864,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e,f={ACTION_HMR_REFRESH:function(){return l},ACTION_NAVIGATE:function(){return i},ACTION_REFRESH:function(){return h},ACTION_RESTORE:function(){return j},ACTION_SERVER_ACTION:function(){return m},ACTION_SERVER_PATCH:function(){return k},PrefetchKind:function(){return n},ScrollBehavior:function(){return o}};for(var g in f)Object.defineProperty(c,g,{enumerable:!0,get:f[g]});let h="refresh",i="navigate",j="restore",k="server-patch",l="hmr-refresh",m="server-action";var n=((d={}).AUTO="auto",d.FULL="full",d),o=((e={})[e.Default=0]="Default",e[e.NoScroll=1]="NoScroll",e);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},66417,(a,b,c)=>{"use strict";function d(a){return null!==a&&"object"==typeof a&&"then"in a&&"function"==typeof a.then}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isThenable",{enumerable:!0,get:function(){return d}})},239624,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={dispatchAppRouterAction:function(){return i},dispatchGestureState:function(){return j},refreshOnInstantNavigationUnlock:function(){return h},useActionQueue:function(){return k}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(403988)._(a.r(374637)),g=a.r(66417);a.r(884864);function h(){}function i(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function j(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function k(a){let[b,c]=f.default.useState(a.state),[d,e]=(0,f.useOptimistic)(b),h=(0,f.useMemo)(()=>d,[d]);return(0,g.isThenable)(h)?(0,f.use)(h):h}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},998029,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"callServer",{enumerable:!0,get:function(){return g}});let d=a.r(374637),e=a.r(884864),f=a.r(239624);async function g(a,b){return new Promise((c,g)=>{(0,d.startTransition)(()=>{(0,f.dispatchAppRouterAction)({type:e.ACTION_SERVER_ACTION,actionId:a,actionArgs:b,resolve:c,reject:g})})})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},186592,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findSourceMapURL",{enumerable:!0,get:function(){return d}});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},780410,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={callServer:function(){return f.callServer},createServerReference:function(){return h.createServerReference},findSourceMapURL:function(){return g.findSourceMapURL}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(998029),g=a.r(186592),h=a.r(499636)},347165,a=>{"use strict";let b=(0,a.i(711796).default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);a.s(["FolderOpen",0,b],347165)},663513,a=>{"use strict";let b=(0,a.i(711796).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["default",0,b])},704494,a=>{"use strict";var b=a.i(663513);a.s(["Loader2",()=>b.default])},668116,a=>{"use strict";var b=a.i(29715);a.s(["Check",()=>b.default])},577565,a=>{"use strict";let b=(0,a.i(711796).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);a.s(["GitBranch",0,b],577565)},26134,949481,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);a.s(["FolderGit2",0,c],26134);let d=(0,b.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);a.s(["Home",0,d],949481)},705594,a=>{"use strict";let b=(0,a.i(711796).default)("hard-drive",[["path",{d:"M10 16h.01",key:"1bzywj"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"18tbho"}],["path",{d:"M21.946 12.013H2.054",key:"zqlbp7"}],["path",{d:"M6 16h.01",key:"1pmjb7"}]]);a.s(["HardDrive",0,b],705594)},43775,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(146758),e=a.i(26134),f=a.i(949481),g=a.i(745539),h=a.i(573242),i=a.i(705594);let j=(0,a.i(711796).default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);var k=a.i(668116),l=a.i(54384),m=a.i(814574),n=a.i(699570),o=a.i(866718),p=a.i(785259),q=a.i(951192),r=a.i(269876);a.s(["FolderBrowserDialog",0,function({open:a,onOpenChange:s,onSelect:t,gitOnly:u=!1}){let{t:v}=(0,q.useI18n)(),[w,x]=(0,c.useState)(null),[y,z]=(0,c.useState)(!1),[A,B]=(0,c.useState)(null),[C,D]=(0,c.useState)(""),[E,F]=(0,c.useState)(""),[G,H]=(0,c.useState)(!1),I=(0,c.useRef)(null),[J,K]=(0,c.useState)(!1),[L,M]=(0,c.useState)(""),N=(0,c.useRef)(null),O=(0,c.useCallback)(async a=>{z(!0),B(null),F(""),H(!1);try{let b=a?`/api/browse-fs?path=${encodeURIComponent(a)}`:"/api/browse-fs",c=await fetch(b);if(!c.ok){let a=await c.json();B(a.error||"Failed");return}let d=await c.json();x(d),D(d.currentPath)}catch{B("Failed to browse filesystem")}finally{z(!1)}},[]);(0,c.useEffect)(()=>{a&&(O(),setTimeout(()=>I.current?.focus(),200))},[a,O]);let P=()=>{C.trim()&&O(C.trim())},Q=async()=>{let a=L.trim();if(a&&w?.currentPath)try{let b=await fetch("/api/browse-fs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parentPath:w.currentPath,name:a})});if(!b.ok){let a=await b.json();B(a.error||v("folder.newFolderError"));return}K(!1),M(""),O(w.currentPath)}catch{B(v("folder.newFolderError"))}},R=()=>{K(!1),M("")},S=w?.folders.filter(a=>a.name.toLowerCase().includes(E.toLowerCase()))??[];return(0,b.jsx)(m.Dialog,{open:a,onOpenChange:s,children:(0,b.jsx)(m.DialogContent,{className:"p-0 gap-0",style:{maxWidth:"36rem",overflow:"hidden"},children:(0,b.jsxs)("div",{className:"flex flex-col max-h-[60vh] overflow-hidden",children:[(0,b.jsxs)("div",{className:"px-5 pt-5 pb-3 shrink-0",children:[(0,b.jsx)(m.DialogTitle,{children:u?v("folder.selectGitRepo"):v("folder.selectFolder")}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:v("folder.hint")})]}),(0,b.jsxs)("div",{className:"border-t border-border px-4 pt-3 pb-2 shrink-0",children:[(0,b.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:v("folder.manualInput")}),(0,b.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,b.jsx)(o.Input,{ref:I,value:C,onChange:a=>D(a.target.value),onKeyDown:a=>"Enter"===a.key&&P(),placeholder:"/path/to/your/project",title:C,className:"flex-1 min-w-0"}),(0,b.jsx)(n.Button,{variant:"outline",onClick:P,className:"h-8 px-3 shrink-0",children:v("folder.goTo")})]})]}),(0,b.jsxs)("div",{className:"px-4 py-2 shrink-0",children:[(0,b.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:v("folder.searchDir")}),(0,b.jsxs)("div",{className:"relative mt-1.5",children:[(0,b.jsx)(h.Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-muted-foreground"}),(0,b.jsx)("input",{value:E,onChange:a=>F(a.target.value),placeholder:"Filter folders and files...",className:"h-8 w-full rounded-md border border-border bg-background pl-8 pr-3 text-sm text-foreground placeholder-muted-foreground outline-none focus:border-ring focus:ring-1 focus:ring-ring"})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5 border-y border-border px-4 py-2 shrink-0 min-w-0",children:[(0,b.jsxs)(p.Tooltip,{children:[(0,b.jsx)(p.TooltipTrigger,{render:(0,b.jsx)(n.Button,{variant:"outline",size:"icon-sm",onClick:()=>w?.homePath&&O(w.homePath),className:"shrink-0 text-muted-foreground"}),children:(0,b.jsx)(f.Home,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(p.TooltipContent,{side:"bottom",sideOffset:4,children:"Home"})]}),(0,b.jsxs)(p.Tooltip,{children:[(0,b.jsx)(p.TooltipTrigger,{render:(0,b.jsx)(n.Button,{variant:"outline",size:"icon-sm",onClick:()=>{w&&("__DRIVES__"===w.parentPath?H(!0):(H(!1),O(w.parentPath)))},className:"shrink-0 text-muted-foreground"}),children:(0,b.jsx)(g.ChevronUp,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(p.TooltipContent,{side:"bottom",sideOffset:4,children:"Parent"})]}),w?.drives&&w.drives.length>0&&(0,b.jsxs)(p.Tooltip,{children:[(0,b.jsx)(p.TooltipTrigger,{render:(0,b.jsx)(n.Button,{variant:G?"default":"outline",size:"icon-sm",onClick:()=>H(a=>!a),className:"shrink-0 text-muted-foreground"}),children:(0,b.jsx)(i.HardDrive,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(p.TooltipContent,{side:"bottom",sideOffset:4,children:"Drives"})]}),(0,b.jsxs)(p.Tooltip,{children:[(0,b.jsx)(p.TooltipTrigger,{render:(0,b.jsx)(n.Button,{variant:"outline",size:"icon-sm",onClick:()=>{K(!0),M(""),setTimeout(()=>N.current?.focus(),50)},className:"shrink-0 text-muted-foreground"}),children:(0,b.jsx)(j,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(p.TooltipContent,{side:"bottom",sideOffset:4,children:v("folder.newFolder")})]}),(0,b.jsx)("div",{className:"min-w-0 flex-1 truncate text-sm text-foreground font-mono",title:w?.currentPath??"",children:w?.currentPath??"..."})]}),(0,b.jsxs)(r.ScrollArea,{className:"min-h-0 flex-1",children:[J&&(0,b.jsxs)("div",{className:"flex items-center gap-2 border-b border-border/30 px-4 py-2",children:[(0,b.jsx)(d.Folder,{className:"h-4 w-4 text-primary/70 shrink-0"}),(0,b.jsx)("input",{ref:N,value:L,onChange:a=>M(a.target.value),onKeyDown:a=>{"Enter"===a.key&&Q(),"Escape"===a.key&&R()},placeholder:v("folder.newFolderPlaceholder"),className:"h-7 flex-1 rounded-md border border-border bg-background px-2 text-sm text-foreground placeholder-muted-foreground outline-none focus:border-ring focus:ring-1 focus:ring-ring"}),(0,b.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:Q,disabled:!L.trim(),className:"text-emerald-400 hover:text-emerald-300",children:(0,b.jsx)(k.Check,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:R,className:"text-muted-foreground",children:(0,b.jsx)(l.X,{className:"h-3.5 w-3.5"})})]}),y&&(0,b.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"Loading..."}),A&&(0,b.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-rose-400",children:A}),G&&w?.drives&&w.drives.map(a=>(0,b.jsxs)("button",{onClick:()=>{var b;return b=a.path,void(H(!1),O(b))},className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-2.5 text-left transition-colors hover:bg-accent last:border-b-0",children:[(0,b.jsx)(i.HardDrive,{className:"h-4 w-4 text-blue-400 shrink-0"}),(0,b.jsx)("span",{className:"flex-1 text-sm text-foreground truncate",children:a.name}),(0,b.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:a.path})]},a.path)),!G&&!y&&!A&&0===S.length&&(0,b.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:v("folder.empty")}),!G&&!y&&!A&&S.map(a=>(0,b.jsxs)("button",{onClick:()=>{a.isGit||u?(t(a.path),s(!1)):O(a.path)},onDoubleClick:()=>O(a.path),className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-2.5 text-left transition-colors hover:bg-accent last:border-b-0",children:[a.isGit?(0,b.jsx)(e.FolderGit2,{className:"h-4 w-4 text-emerald-400 shrink-0"}):(0,b.jsx)(d.Folder,{className:"h-4 w-4 text-primary/70 shrink-0"}),(0,b.jsx)("span",{className:"flex-1 text-sm text-foreground truncate",children:a.name}),a.isGit&&(0,b.jsx)("span",{className:"shrink-0 rounded-md bg-emerald-500/10 px-2 py-0.5 text-[10px] font-medium text-emerald-400 ring-1 ring-emerald-500/20",children:"git"})]},a.path))]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 px-5 py-3 shrink-0 border-t border-border",children:[(0,b.jsx)(n.Button,{variant:"outline",onClick:()=>s(!1),children:v("common.cancel")}),(0,b.jsx)(n.Button,{onClick:()=>{w?.currentPath&&(t(w.currentPath),s(!1))},className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:v("folder.selectPath")})]})]})})})}],43775)},487410,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["SegmentedControl",0,function({options:a,value:d,onChange:e,className:f}){return(0,b.jsx)("div",{className:(0,c.cn)("inline-flex rounded-md border border-border bg-muted p-1 gap-1",f),children:a.map(a=>(0,b.jsx)("button",{type:"button",onClick:()=>e(a.value),className:(0,c.cn)("rounded px-3 py-1 text-sm transition-colors",d===a.value?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:a.label},a.value))})}])}];
2
-
3
- //# sourceMappingURL=_0i8t39l._.js.map