ompgui 0.6.5 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +10 -4
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +31 -3
  5. package/.next/react-loadable-manifest.json +16 -9
  6. package/.next/required-server-files.js +2 -2
  7. package/.next/required-server-files.json +2 -2
  8. package/.next/routes-manifest.json +40 -2
  9. package/.next/server/app/_global-error/page.js +1 -1
  10. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_global-error.html +1 -1
  12. package/.next/server/app/_global-error.rsc +2 -2
  13. package/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
  14. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +2 -2
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page.js +1 -1
  17. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/server/app/_not-found.html +1 -1
  19. package/.next/server/app/_not-found.rsc +3 -3
  20. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  21. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  22. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  23. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  24. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  25. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
  26. package/.next/server/app/api/agent/[id]/route.js +1 -1
  27. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
  28. package/.next/server/app/api/agent/new/route.js +1 -1
  29. package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
  30. package/.next/server/app/api/agent/running/events/route.js +2 -2
  31. package/.next/server/app/api/agent/running/events/route.js.nft.json +1 -1
  32. package/.next/server/app/api/agents/[name]/route.js +1 -1
  33. package/.next/server/app/api/agents/route.js +1 -1
  34. package/.next/server/app/api/agents/unpack/route.js +1 -1
  35. package/.next/server/app/api/app-update/route.js +1 -1
  36. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  37. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  38. package/.next/server/app/api/auth/login/[provider]/route.js +1 -1
  39. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/providers/route.js +1 -1
  41. package/.next/server/app/api/cwd/browse/route.js +1 -1
  42. package/.next/server/app/api/cwd/validate/route.js +2 -1
  43. package/.next/server/app/api/daemon/route.js +1 -0
  44. package/.next/server/app/api/daemon/route.js.nft.json +1 -0
  45. package/.next/server/app/api/daemon/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/default-cwd/route.js +1 -1
  47. package/.next/server/app/api/file-index/route.js +1 -1
  48. package/.next/server/app/api/files/[...path]/route.js +5 -5
  49. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
  50. package/.next/server/app/api/git/diff/route.js +2 -2
  51. package/.next/server/app/api/git/status/route.js +2 -2
  52. package/.next/server/app/api/home/route.js +1 -1
  53. package/.next/server/app/api/mcp/route.js +3 -3
  54. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  55. package/.next/server/app/api/model-roles/route.js +1 -1
  56. package/.next/server/app/api/models/route.js +1 -1
  57. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  58. package/.next/server/app/api/models-config/route.js +1 -1
  59. package/.next/server/app/api/models-config/test/route.js +1 -1
  60. package/.next/server/app/api/omp-settings/route.js +1 -1
  61. package/.next/server/app/api/omp-update/route.js +2 -2
  62. package/.next/server/app/api/omp-update/route.js.nft.json +1 -1
  63. package/.next/server/app/api/omp-version/route.js +1 -1
  64. package/.next/server/app/api/plugins/route.js +1 -1
  65. package/.next/server/app/api/projects/route.js +2 -2
  66. package/.next/server/app/api/providers/enable/route.js +1 -1
  67. package/.next/server/app/api/relay/devices/[id]/route.js +1 -0
  68. package/.next/server/app/api/relay/devices/[id]/route.js.nft.json +1 -0
  69. package/.next/server/app/api/relay/devices/[id]/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/relay/devices/route.js +1 -0
  71. package/.next/server/app/api/relay/devices/route.js.nft.json +1 -0
  72. package/.next/server/app/api/relay/devices/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/relay/pair/route.js +1 -0
  74. package/.next/server/app/api/relay/pair/route.js.nft.json +1 -0
  75. package/.next/server/app/api/relay/pair/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
  77. package/.next/server/app/api/sessions/[id]/archive/route.js.nft.json +1 -1
  78. package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
  79. package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -1
  80. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  81. package/.next/server/app/api/sessions/[id]/entries/[entryId]/media/route.js +1 -1
  82. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  83. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  85. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  86. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  87. package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -1
  88. package/.next/server/app/api/sessions/[id]/subagents/[subagentId]/route.js +1 -1
  89. package/.next/server/app/api/sessions/[id]/subagents/route.js +1 -1
  90. package/.next/server/app/api/sessions/[id]/subagents/route.js.nft.json +1 -1
  91. package/.next/server/app/api/sessions/archive/route.js +1 -1
  92. package/.next/server/app/api/sessions/import/route.js +1 -1
  93. package/.next/server/app/api/sessions/route.js +1 -1
  94. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  95. package/.next/server/app/api/skills/check/route.js +1 -1
  96. package/.next/server/app/api/skills/check/route.js.nft.json +1 -1
  97. package/.next/server/app/api/skills/install/route.js +1 -1
  98. package/.next/server/app/api/skills/route.js +2 -2
  99. package/.next/server/app/api/skills/search/route.js +1 -1
  100. package/.next/server/app/api/skills/update/route.js +1 -1
  101. package/.next/server/app/api/skills/update/route.js.nft.json +1 -1
  102. package/.next/server/app/api/usage/route.js +1 -1
  103. package/.next/server/app/api/web-auth/session/route.js +1 -1
  104. package/.next/server/app/api/worktrees/route.js +1 -1
  105. package/.next/server/app/apple-icon.png/route.js +1 -1
  106. package/.next/server/app/favicon.ico/route.js +1 -1
  107. package/.next/server/app/icon.svg/route.js +1 -1
  108. package/.next/server/app/index.html +1 -1
  109. package/.next/server/app/index.rsc +4 -4
  110. package/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  111. package/.next/server/app/index.segments/_full.segment.rsc +4 -4
  112. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  113. package/.next/server/app/login/page.js +1 -1
  114. package/.next/server/app/login/page.js.nft.json +1 -1
  115. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  116. package/.next/server/app/login.html +1 -1
  117. package/.next/server/app/login.rsc +3 -3
  118. package/.next/server/app/login.segments/_full.segment.rsc +3 -3
  119. package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  120. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +3 -3
  121. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  122. package/.next/server/app/page.js +2 -2
  123. package/.next/server/app/page.js.nft.json +1 -1
  124. package/.next/server/app/page_client-reference-manifest.js +1 -1
  125. package/.next/server/app/pair/page.js +1 -0
  126. package/.next/server/app/pair/page.js.nft.json +1 -0
  127. package/.next/server/app/pair/page_client-reference-manifest.js +1 -0
  128. package/.next/server/app/pair.html +1 -0
  129. package/.next/server/app/pair.meta +26 -0
  130. package/.next/server/app/pair.rsc +23 -0
  131. package/.next/server/app/pair.segments/_full.segment.rsc +23 -0
  132. package/.next/server/app/pair.segments/_tree.segment.rsc +4 -0
  133. package/.next/server/app/pair.segments/pair/__PAGE__.segment.rsc +25 -0
  134. package/.next/server/app/relay/route.js +1 -0
  135. package/.next/server/app/relay/route.js.nft.json +1 -0
  136. package/.next/server/app/relay/route_client-reference-manifest.js +1 -0
  137. package/.next/server/app-paths-manifest.json +10 -4
  138. package/.next/server/chunks/1448.js +1 -1
  139. package/.next/server/chunks/1671.js +1 -1
  140. package/.next/server/chunks/2043.js +12 -0
  141. package/.next/server/chunks/2676.js +4 -0
  142. package/.next/server/chunks/2865.js +1 -1
  143. package/.next/server/chunks/3100.js +2 -2
  144. package/.next/server/chunks/3798.js +4 -5
  145. package/.next/server/chunks/5318.js +1 -1
  146. package/.next/server/chunks/6209.js +4 -4
  147. package/.next/server/chunks/{8353.js → 6332.js} +2 -2
  148. package/.next/server/chunks/7077.js +1 -0
  149. package/.next/server/chunks/714.js +1 -1
  150. package/.next/server/chunks/7779.js +1 -0
  151. package/.next/server/chunks/795.js +105 -0
  152. package/.next/server/chunks/8501.js +1 -1
  153. package/.next/server/chunks/8672.js +1 -0
  154. package/.next/server/chunks/8834.js +18 -0
  155. package/.next/server/chunks/9145.js +2 -0
  156. package/.next/server/chunks/933.js +1 -1
  157. package/.next/server/functions-config-manifest.json +1 -0
  158. package/.next/server/instrumentation.js +1 -1
  159. package/.next/server/instrumentation.js.nft.json +1 -1
  160. package/.next/server/middleware-build-manifest.js +1 -1
  161. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  162. package/.next/server/middleware.js +2 -2
  163. package/.next/server/pages/404.html +1 -1
  164. package/.next/server/pages/500.html +1 -1
  165. package/.next/server/prefetch-hints.json +14 -0
  166. package/.next/server/server-reference-manifest.json +1 -1
  167. package/.next/static/Na7qed083WBP3X-plluRO/_buildManifest.js +1 -0
  168. package/.next/static/chunks/1012.477e42e5184b6aaa.js +17 -0
  169. package/.next/static/chunks/1941.66c3a0942c0c3e5d.js +1 -0
  170. package/.next/static/chunks/3944.6215b78f025077b3.js +1 -0
  171. package/.next/static/chunks/4315-142781649334beb2.js +1 -0
  172. package/.next/static/chunks/484.761e1ff01f663fb2.js +1 -0
  173. package/.next/static/chunks/5658.0fe2642c815aea9a.js +1 -0
  174. package/.next/static/chunks/587-c973123b3c9a5b80.js +1 -0
  175. package/.next/static/chunks/9448.b6c5eb8f1356d5fd.js +2 -0
  176. package/.next/static/chunks/9668.b62ea9e45077f781.js +1 -0
  177. package/.next/static/chunks/app/_global-error/page-710453b8adcf7d31.js +1 -0
  178. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-710453b8adcf7d31.js +1 -0
  179. package/.next/static/chunks/app/api/agent/[id]/events/route-710453b8adcf7d31.js +1 -0
  180. package/.next/static/chunks/app/api/agent/[id]/route-710453b8adcf7d31.js +1 -0
  181. package/.next/static/chunks/app/api/agent/new/route-710453b8adcf7d31.js +1 -0
  182. package/.next/static/chunks/app/api/agent/running/events/route-710453b8adcf7d31.js +1 -0
  183. package/.next/static/chunks/app/api/agents/[name]/route-710453b8adcf7d31.js +1 -0
  184. package/.next/static/chunks/app/api/agents/route-710453b8adcf7d31.js +1 -0
  185. package/.next/static/chunks/app/api/agents/unpack/route-710453b8adcf7d31.js +1 -0
  186. package/.next/static/chunks/app/api/app-update/route-710453b8adcf7d31.js +1 -0
  187. package/.next/static/chunks/app/api/auth/all-providers/route-710453b8adcf7d31.js +1 -0
  188. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-710453b8adcf7d31.js +1 -0
  189. package/.next/static/chunks/app/api/auth/login/[provider]/route-710453b8adcf7d31.js +1 -0
  190. package/.next/static/chunks/app/api/auth/logout/[provider]/route-710453b8adcf7d31.js +1 -0
  191. package/.next/static/chunks/app/api/auth/providers/route-710453b8adcf7d31.js +1 -0
  192. package/.next/static/chunks/app/api/cwd/browse/route-710453b8adcf7d31.js +1 -0
  193. package/.next/static/chunks/app/api/cwd/validate/route-710453b8adcf7d31.js +1 -0
  194. package/.next/static/chunks/app/api/daemon/route-710453b8adcf7d31.js +1 -0
  195. package/.next/static/chunks/app/api/default-cwd/route-710453b8adcf7d31.js +1 -0
  196. package/.next/static/chunks/app/api/file-index/route-710453b8adcf7d31.js +1 -0
  197. package/.next/static/chunks/app/api/files/[...path]/route-710453b8adcf7d31.js +1 -0
  198. package/.next/static/chunks/app/api/git/diff/route-710453b8adcf7d31.js +1 -0
  199. package/.next/static/chunks/app/api/git/status/route-710453b8adcf7d31.js +1 -0
  200. package/.next/static/chunks/app/api/home/route-710453b8adcf7d31.js +1 -0
  201. package/.next/static/chunks/app/api/mcp/route-710453b8adcf7d31.js +1 -0
  202. package/.next/static/chunks/app/api/model-roles/route-710453b8adcf7d31.js +1 -0
  203. package/.next/static/chunks/app/api/models/route-710453b8adcf7d31.js +1 -0
  204. package/.next/static/chunks/app/api/models-config/catalog/route-710453b8adcf7d31.js +1 -0
  205. package/.next/static/chunks/app/api/models-config/route-710453b8adcf7d31.js +1 -0
  206. package/.next/static/chunks/app/api/models-config/test/route-710453b8adcf7d31.js +1 -0
  207. package/.next/static/chunks/app/api/omp-settings/route-710453b8adcf7d31.js +1 -0
  208. package/.next/static/chunks/app/api/omp-update/route-710453b8adcf7d31.js +1 -0
  209. package/.next/static/chunks/app/api/omp-version/route-710453b8adcf7d31.js +1 -0
  210. package/.next/static/chunks/app/api/plugins/route-710453b8adcf7d31.js +1 -0
  211. package/.next/static/chunks/app/api/projects/route-710453b8adcf7d31.js +1 -0
  212. package/.next/static/chunks/app/api/providers/enable/route-710453b8adcf7d31.js +1 -0
  213. package/.next/static/chunks/app/api/relay/devices/[id]/route-710453b8adcf7d31.js +1 -0
  214. package/.next/static/chunks/app/api/relay/devices/route-710453b8adcf7d31.js +1 -0
  215. package/.next/static/chunks/app/api/relay/pair/route-710453b8adcf7d31.js +1 -0
  216. package/.next/static/chunks/app/api/sessions/[id]/archive/route-710453b8adcf7d31.js +1 -0
  217. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-710453b8adcf7d31.js +1 -0
  218. package/.next/static/chunks/app/api/sessions/[id]/context/route-710453b8adcf7d31.js +1 -0
  219. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/media/route-710453b8adcf7d31.js +1 -0
  220. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-710453b8adcf7d31.js +1 -0
  221. package/.next/static/chunks/app/api/sessions/[id]/export/route-710453b8adcf7d31.js +1 -0
  222. package/.next/static/chunks/app/api/sessions/[id]/route-710453b8adcf7d31.js +1 -0
  223. package/.next/static/chunks/app/api/sessions/[id]/state/route-710453b8adcf7d31.js +1 -0
  224. package/.next/static/chunks/app/api/sessions/[id]/subagents/[subagentId]/route-710453b8adcf7d31.js +1 -0
  225. package/.next/static/chunks/app/api/sessions/[id]/subagents/route-710453b8adcf7d31.js +1 -0
  226. package/.next/static/chunks/app/api/sessions/archive/route-710453b8adcf7d31.js +1 -0
  227. package/.next/static/chunks/app/api/sessions/import/route-710453b8adcf7d31.js +1 -0
  228. package/.next/static/chunks/app/api/sessions/route-710453b8adcf7d31.js +1 -0
  229. package/.next/static/chunks/app/api/skills/check/route-710453b8adcf7d31.js +1 -0
  230. package/.next/static/chunks/app/api/skills/install/route-710453b8adcf7d31.js +1 -0
  231. package/.next/static/chunks/app/api/skills/route-710453b8adcf7d31.js +1 -0
  232. package/.next/static/chunks/app/api/skills/search/route-710453b8adcf7d31.js +1 -0
  233. package/.next/static/chunks/app/api/skills/update/route-710453b8adcf7d31.js +1 -0
  234. package/.next/static/chunks/app/api/usage/route-710453b8adcf7d31.js +1 -0
  235. package/.next/static/chunks/app/api/web-auth/session/route-710453b8adcf7d31.js +1 -0
  236. package/.next/static/chunks/app/api/worktrees/route-710453b8adcf7d31.js +1 -0
  237. package/.next/static/chunks/app/manifest.webmanifest/route-710453b8adcf7d31.js +1 -0
  238. package/.next/static/chunks/app/{page-2845a463e3b265c2.js → page-f53564bcb292e1e5.js} +2 -2
  239. package/.next/static/chunks/app/pair/page-d72423ffc5654e29.js +1 -0
  240. package/.next/static/chunks/app/relay/route-710453b8adcf7d31.js +1 -0
  241. package/.next/static/chunks/next/dist/client/components/builtin/app-error-710453b8adcf7d31.js +1 -0
  242. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-710453b8adcf7d31.js +1 -0
  243. package/.next/static/chunks/next/dist/client/components/builtin/not-found-710453b8adcf7d31.js +1 -0
  244. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-710453b8adcf7d31.js +1 -0
  245. package/.next/static/chunks/webpack-4e02c722bd171663.js +1 -0
  246. package/.next/static/css/63b622301ba107de.css +3 -0
  247. package/README.ja.md +32 -1
  248. package/README.ko.md +34 -1
  249. package/README.md +35 -2
  250. package/README.zh-CN.md +32 -1
  251. package/bin/ompgui-options.js +18 -3
  252. package/bin/ompgui-pair.js +108 -0
  253. package/bin/ompgui-service.js +223 -0
  254. package/bin/ompgui-update.js +85 -22
  255. package/bin/ompgui.js +30 -11
  256. package/next.config.ts +3 -1
  257. package/package.json +9 -5
  258. package/.next/server/chunks/2118.js +0 -1
  259. package/.next/server/chunks/3379.js +0 -1
  260. package/.next/server/chunks/6777.js +0 -1
  261. package/.next/server/chunks/7834.js +0 -5
  262. package/.next/server/chunks/8816.js +0 -18
  263. package/.next/static/chunks/4315-6b59cc5d91fe9083.js +0 -1
  264. package/.next/static/chunks/484.3215a9f03ff865da.js +0 -1
  265. package/.next/static/chunks/5658.eb16997c19c2372b.js +0 -1
  266. package/.next/static/chunks/6139.8971a8cbb6c07ac8.js +0 -17
  267. package/.next/static/chunks/7194.651566324b8fac6f.js +0 -1
  268. package/.next/static/chunks/9448.3ded6700334581bd.js +0 -2
  269. package/.next/static/chunks/9668.5e681bc0055ed4d0.js +0 -1
  270. package/.next/static/chunks/app/_global-error/page-129e1f8238bd66db.js +0 -1
  271. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-129e1f8238bd66db.js +0 -1
  272. package/.next/static/chunks/app/api/agent/[id]/events/route-129e1f8238bd66db.js +0 -1
  273. package/.next/static/chunks/app/api/agent/[id]/route-129e1f8238bd66db.js +0 -1
  274. package/.next/static/chunks/app/api/agent/new/route-129e1f8238bd66db.js +0 -1
  275. package/.next/static/chunks/app/api/agent/running/events/route-129e1f8238bd66db.js +0 -1
  276. package/.next/static/chunks/app/api/agents/[name]/route-129e1f8238bd66db.js +0 -1
  277. package/.next/static/chunks/app/api/agents/route-129e1f8238bd66db.js +0 -1
  278. package/.next/static/chunks/app/api/agents/unpack/route-129e1f8238bd66db.js +0 -1
  279. package/.next/static/chunks/app/api/app-update/route-129e1f8238bd66db.js +0 -1
  280. package/.next/static/chunks/app/api/auth/all-providers/route-129e1f8238bd66db.js +0 -1
  281. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-129e1f8238bd66db.js +0 -1
  282. package/.next/static/chunks/app/api/auth/login/[provider]/route-129e1f8238bd66db.js +0 -1
  283. package/.next/static/chunks/app/api/auth/logout/[provider]/route-129e1f8238bd66db.js +0 -1
  284. package/.next/static/chunks/app/api/auth/providers/route-129e1f8238bd66db.js +0 -1
  285. package/.next/static/chunks/app/api/cwd/browse/route-129e1f8238bd66db.js +0 -1
  286. package/.next/static/chunks/app/api/cwd/validate/route-129e1f8238bd66db.js +0 -1
  287. package/.next/static/chunks/app/api/default-cwd/route-129e1f8238bd66db.js +0 -1
  288. package/.next/static/chunks/app/api/file-index/route-129e1f8238bd66db.js +0 -1
  289. package/.next/static/chunks/app/api/files/[...path]/route-129e1f8238bd66db.js +0 -1
  290. package/.next/static/chunks/app/api/git/diff/route-129e1f8238bd66db.js +0 -1
  291. package/.next/static/chunks/app/api/git/status/route-129e1f8238bd66db.js +0 -1
  292. package/.next/static/chunks/app/api/home/route-129e1f8238bd66db.js +0 -1
  293. package/.next/static/chunks/app/api/mcp/route-129e1f8238bd66db.js +0 -1
  294. package/.next/static/chunks/app/api/model-roles/route-129e1f8238bd66db.js +0 -1
  295. package/.next/static/chunks/app/api/models/route-129e1f8238bd66db.js +0 -1
  296. package/.next/static/chunks/app/api/models-config/catalog/route-129e1f8238bd66db.js +0 -1
  297. package/.next/static/chunks/app/api/models-config/route-129e1f8238bd66db.js +0 -1
  298. package/.next/static/chunks/app/api/models-config/test/route-129e1f8238bd66db.js +0 -1
  299. package/.next/static/chunks/app/api/omp-settings/route-129e1f8238bd66db.js +0 -1
  300. package/.next/static/chunks/app/api/omp-update/route-129e1f8238bd66db.js +0 -1
  301. package/.next/static/chunks/app/api/omp-version/route-129e1f8238bd66db.js +0 -1
  302. package/.next/static/chunks/app/api/plugins/route-129e1f8238bd66db.js +0 -1
  303. package/.next/static/chunks/app/api/projects/route-129e1f8238bd66db.js +0 -1
  304. package/.next/static/chunks/app/api/providers/enable/route-129e1f8238bd66db.js +0 -1
  305. package/.next/static/chunks/app/api/sessions/[id]/archive/route-129e1f8238bd66db.js +0 -1
  306. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-129e1f8238bd66db.js +0 -1
  307. package/.next/static/chunks/app/api/sessions/[id]/context/route-129e1f8238bd66db.js +0 -1
  308. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/media/route-129e1f8238bd66db.js +0 -1
  309. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-129e1f8238bd66db.js +0 -1
  310. package/.next/static/chunks/app/api/sessions/[id]/export/route-129e1f8238bd66db.js +0 -1
  311. package/.next/static/chunks/app/api/sessions/[id]/route-129e1f8238bd66db.js +0 -1
  312. package/.next/static/chunks/app/api/sessions/[id]/state/route-129e1f8238bd66db.js +0 -1
  313. package/.next/static/chunks/app/api/sessions/[id]/subagents/[subagentId]/route-129e1f8238bd66db.js +0 -1
  314. package/.next/static/chunks/app/api/sessions/[id]/subagents/route-129e1f8238bd66db.js +0 -1
  315. package/.next/static/chunks/app/api/sessions/archive/route-129e1f8238bd66db.js +0 -1
  316. package/.next/static/chunks/app/api/sessions/import/route-129e1f8238bd66db.js +0 -1
  317. package/.next/static/chunks/app/api/sessions/route-129e1f8238bd66db.js +0 -1
  318. package/.next/static/chunks/app/api/skills/check/route-129e1f8238bd66db.js +0 -1
  319. package/.next/static/chunks/app/api/skills/install/route-129e1f8238bd66db.js +0 -1
  320. package/.next/static/chunks/app/api/skills/route-129e1f8238bd66db.js +0 -1
  321. package/.next/static/chunks/app/api/skills/search/route-129e1f8238bd66db.js +0 -1
  322. package/.next/static/chunks/app/api/skills/update/route-129e1f8238bd66db.js +0 -1
  323. package/.next/static/chunks/app/api/usage/route-129e1f8238bd66db.js +0 -1
  324. package/.next/static/chunks/app/api/web-auth/session/route-129e1f8238bd66db.js +0 -1
  325. package/.next/static/chunks/app/api/worktrees/route-129e1f8238bd66db.js +0 -1
  326. package/.next/static/chunks/app/manifest.webmanifest/route-129e1f8238bd66db.js +0 -1
  327. package/.next/static/chunks/next/dist/client/components/builtin/app-error-129e1f8238bd66db.js +0 -1
  328. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-129e1f8238bd66db.js +0 -1
  329. package/.next/static/chunks/next/dist/client/components/builtin/not-found-129e1f8238bd66db.js +0 -1
  330. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-129e1f8238bd66db.js +0 -1
  331. package/.next/static/chunks/webpack-9c013878cb300763.js +0 -1
  332. package/.next/static/css/dd19cac539e3e218.css +0 -3
  333. package/.next/static/wMrrM4WHr4pqT7Bavv79j/_buildManifest.js +0 -1
  334. /package/.next/static/{wMrrM4WHr4pqT7Bavv79j → Na7qed083WBP3X-plluRO}/_ssgManifest.js +0 -0
@@ -1,5 +1,5 @@
1
- exports.id=6209,exports.ids=[6209],exports.modules={20565:(a,b,c)=>{"use strict";function d(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function e(a){return"string"==typeof a?a:void 0}function f(a){return"number"==typeof a&&Number.isFinite(a)?a:void 0}c.d(b,{i:()=>f,oJ:()=>e,u4:()=>d})},24923:(a,b,c)=>{"use strict";c.d(b,{IL:()=>t,KI:()=>n,P9:()=>p,l:()=>s,xw:()=>r});var d=c(79646),e=c(29021),f=c(33873),g=c(28354),h=c(25252),i=c(58864);let j=(0,g.promisify)(d.execFile);function k(a){try{return(0,e.realpathSync)(a)}catch{return a}}function l(){globalThis.__piProjectCache?.clear()}async function m(a,b){let{stdout:c}=await j("git",["-C",a,...b],{timeout:1e4,maxBuffer:1048576,env:{...process.env,LC_ALL:"C"}});return c.trim()}async function n(a){let b,c=(globalThis.__piProjectCache||(globalThis.__piProjectCache=new Map),globalThis.__piProjectCache),d=c.get(a);if(d&&d.expiresAt>Date.now())return d.info;try{if(!(0,e.existsSync)(a))return b=function(a){let b=(0,f.dirname)(a);if(!b.endsWith("-worktrees"))return null;let c=b.slice(0,-10);return c&&(0,e.existsSync)((0,f.join)(c,".git"))?{projectRoot:k(c),branch:(0,f.basename)(a),isWorktree:!0,isTopLevel:!0}:null}(a)??{projectRoot:a,branch:null,isWorktree:!1,isTopLevel:!1},c.set(a,{info:b,expiresAt:Date.now()+6e4}),b;let[d,g,h,j]=(await m(a,["rev-parse","--path-format=absolute","--git-common-dir","--git-dir","--show-toplevel","--abbrev-ref","HEAD"])).split("\n").map(a=>a.trim()),[l,n,o]=[d,g,h].map(i.gB),p=k(a),q=(0,i.Eb)(o,p),r=!(0,i.Eb)(n,l)&&q,s=r?(0,f.dirname)(l):o;b={projectRoot:q?k(s):k(a),branch:j&&"HEAD"!==j?j:null,isWorktree:r,isTopLevel:q}}catch{b={projectRoot:a,branch:null,isWorktree:!1,isTopLevel:!1}}return c.set(a,{info:b,expiresAt:Date.now()+6e4}),b}async function o(a){let b=await m(a,["rev-parse","--path-format=absolute","--git-common-dir"]);return k((0,f.dirname)((0,i.gB)(b)))}async function p(a){let b=await m(a,["worktree","list","--porcelain"]),c=[],d=null,g=()=>{if(d?.path){let a=(0,f.resolve)(d.path);!d.prunable&&(0,e.existsSync)(a)&&c.push({path:a,branch:d.branch??null,isMain:0===c.length})}d=null};for(let a of b.split("\n"))a.startsWith("worktree ")?(g(),d={path:(0,i.gB)(a.slice(9).trim())}):a.startsWith("branch ")&&d?d.branch=a.slice(7).trim().replace(/^refs\/heads\//,""):a.startsWith("prunable")&&d?d.prunable=!0:""===a.trim()&&g();return g(),c}function q(a,b){return a.find(a=>(0,i.Eb)(a.path,b))}function r(a,b){return q(a,k(b))?.path??null}async function s(a,b){let c=b.trim();if(!c)throw Error("Branch name is required");let d=c.replace(/[\/\\:*?"<>|\s]+/g,"-").replace(/^-+|-+$/g,"");if(!d)throw Error(`Invalid branch name: ${b}`);let g=await o(a),i=`${(0,f.resolve)(g)}-worktrees`,j=(0,f.join)(i,d);if((0,e.existsSync)(j))throw Error(`Directory already exists: ${j}`);(0,e.mkdirSync)(i,{recursive:!0});let k=!1;try{await m(g,["rev-parse","--verify","--quiet",`refs/heads/${c}`]),k=!0}catch{k=!1}try{k?await m(g,["worktree","add","--",j,c]):await m(g,["worktree","add","-b",c,"--",j])}catch(a){throw Error(u(a))}return(0,h.wz)(j),l(),{path:j,branch:c}}async function t(a,b,c=!1){let d=q(await p(a),b);if(!d)throw Error(`Not a worktree of this repository: ${b}`);if(d.isMain)throw Error("Cannot remove the main worktree");try{await m(a,["worktree","remove",...c?["--force"]:[],d.path])}catch(a){throw Error(u(a))}l()}function u(a){let b=a.stderr;return"string"==typeof b&&b.trim()?b.trim():a instanceof Error?a.message:String(a)}},25252:(a,b,c)=>{"use strict";function d(a){return a.replace(/\\/g,"/")}function e(){return globalThis.__piAdditionalAllowedRoots||(globalThis.__piAdditionalAllowedRoots=new Set),globalThis.__piAdditionalAllowedRoots}function f(a){if(!a)return;let b=d(a);e().add(b),globalThis.__piAllowedRootsCache?.roots.add(b)}c.d(b,{HM:()=>e,Nw:()=>d,wz:()=>f})},45902:(a,b,c)=>{"use strict";c.d(b,{$:()=>f});var d=c(76760),e=c.n(d);function f(a,b=process.platform){let c="win32"===b?e().win32.normalize(a):e().posix.normalize(a);return"win32"===b?c.toLowerCase():c}},57050:(a,b,c)=>{"use strict";c.d(b,{D$:()=>f,bA:()=>g,tw:()=>e});var d=c(20565);function e(a){if(!(0,d.u4)(a))return;let b=(0,d.u4)(a.cost)?a.cost:void 0;if(!b)return;let c=(0,d.i)(b.total);if(void 0!==c)return c;let e=(0,d.i)(b.input),f=(0,d.i)(b.output);if(void 0!==e&&void 0!==f)return e+f}function f(a,b){if(!(0,d.u4)(a))return;let c=(0,d.i)(a.attempt),e=(0,d.oJ)(a.errorMessage);if(void 0!==c&&void 0!==e)return{attempt:c,errorMessage:b?b(e):e}}function g(a,b){if(!(0,d.u4)(a))return;let c={};for(let e of["source","mode","status","error"]){let f=(0,d.oJ)(a[e]);void 0!==f&&(c[e]=b?b(f):f)}return Object.keys(c).length>0?c:void 0}},58864:(a,b,c)=>{"use strict";c.d(b,{Eb:()=>j,gB:()=>h,uK:()=>g,w:()=>i});var d=c(33873),e=c.n(d);let f=/^[a-zA-Z]:[\\/]/;function g(a){return f.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function h(a){return a&&"win32"===process.platform?(0,d.normalize)(a):a}function i(a,b=process.platform){if(!a)return a;let c="win32"===b?e().win32:e().posix,d="win32"===b?c.normalize(h(a)):a,f=c.normalize(d),g=c.parse(f).root.length,j=f.length;for(;j>g&&f[j-1]===c.sep;)j--;let k=f.slice(0,j);return"win32"===b?k.toLowerCase():k}function j(a,b){return a===b||!!a&&!!b&&i(a)===i(b)}},63945:(a,b,c)=>{"use strict";c.d(b,{Bm:()=>P,De:()=>S,Ee:()=>C,Fy:()=>D,G:()=>t,Hb:()=>F,I3:()=>N,I8:()=>v,L1:()=>M,O0:()=>X,U1:()=>n,Uk:()=>W,XS:()=>Y,a8:()=>R,kT:()=>H,lc:()=>G,mk:()=>L,ni:()=>A,nr:()=>p,qd:()=>z,sv:()=>Q,zW:()=>s});var d=c(55511),e=c(29021),f=c(33873),g=c(41204),h=c(77725),i=c(74075),j=c(20565),k=c(85887);let l=Reflect.get(e,"readdirSync");function m(a,b,c,d){return`${JSON.stringify(b?{type:"title",v:1,title:a,source:b,updatedAt:c,pad:d}:{type:"title",v:1,title:a,updatedAt:c,pad:d})}
2
- `}function n(a){var b;let c;try{c=JSON.parse(a)}catch{return}if("object"!=typeof c||null===c)return;let d=c;if("title"!==d.type||1!==d.v||"string"!=typeof d.title||"string"!=typeof d.updatedAt||"string"!=typeof d.pad||void 0!==d.source&&"auto"!==(b=d.source)&&"user"!==b)return;let e={type:"title",v:1,title:d.title,updatedAt:d.updatedAt,pad:d.pad};return d.source&&(e.source=d.source),e}function o(a){let b=function(a,b,c){let d=[...a],e=0,f=d.length,g="";for(;e<=f;){let a=e+f>>>1,h=d.slice(0,a).join("");256>=Buffer.byteLength(m(h,b,c,""),"utf8")?(g=h,e=a+1):f=a-1}return g}(a.title??"",a.source,a.updatedAt),c=m(b,a.source,a.updatedAt,""),d=256-Buffer.byteLength(c,"utf8");if(d<0)throw Error("Session title slot metadata exceeds fixed slot size");let e=m(b,a.source,a.updatedAt," ".repeat(d));if(256!==Buffer.byteLength(e,"utf8"))throw Error("Session title slot serialization failed to produce fixed-width output");return e}function p(a){let b=[];for(let c of a.split("\n")){let a=c.trim();if(a)try{b.push(JSON.parse(a))}catch{}}return b}let q="blob:sha256:",r=/^[a-f0-9]{64}$/;function s(a){return a.startsWith(q)}function t(a){if(!a.startsWith(q))return null;let b=a.slice(q.length);return r.test(b)?b:null}function u(a){try{return(0,e.readFileSync)(f.join((0,k.yG)(),a))}catch{return null}}function v(a){try{return(0,e.statSync)(f.join((0,k.yG)(),a)).size}catch{return null}}function w(a){return(0,j.u4)(a)&&"image"===a.type&&"string"==typeof a.data}function x(a,b){if(Array.isArray(a)){for(let c of a)x(c,b);return}if((0,j.u4)(a)){if((0,j.u4)(a)&&"string"==typeof a.data&&(w(a)||"string"==typeof a.mimeType&&a.mimeType.toLowerCase().startsWith("image/"))&&s(a.data)&&("content"===b&&w(a)||"images"===b)){let b=t(a.data);if(!b)return;let c=u(b);c?a.data=c.toString("base64"):(a.type="text",a.text=`[image unavailable: blob ${b.slice(0,12)}… not found]`,delete a.data,delete a.mimeType,delete a.source);return}if("image_generation_call"===a.type&&"string"==typeof a.result&&s(a.result)){let b=t(a.result),c=b?u(b):null;c&&(a.result=c.toString("base64"))}if("string"==typeof a.image_url&&s(a.image_url)){let b=t(a.image_url),c=b?u(b):null;c&&(a.image_url=c.toString("utf8"))}for(let[b,c]of Object.entries(a))x(c,b)}}function y(a){if("string"==typeof a)return s(a);if(Array.isArray(a)){for(let b of a)if(y(b))return!0;return!1}if(!(0,j.u4)(a))return!1;for(let b in a)if(y(a[b]))return!0;return!1}function z(a,b={}){return a.map(a=>{if(b.skipToolResultImages&&"message"===a.type&&"toolResult"===a.message.role||!y(a))return a;let c=structuredClone(a);return x(c,void 0),c})}let A=0x40000000;function B(a,b){let c=(0,e.openSync)(a,"r");try{let a=Buffer.allocUnsafe(1048576),d=new g.StringDecoder("utf8"),f=[],h=!1;for(;;){let g=(0,e.readSync)(c,a,0,a.length,null);if(0===g)break;let i=d.write(a.subarray(0,g));if(h=h||i.includes("\n"),f.push(i),!h)continue;let j=f.join("");f.length=0,h=!1;let k=0,l=j.indexOf("\n",k);for(;-1!==l;){if(!1===b(j.slice(k,l)))return;k=l+1,l=j.indexOf("\n",k)}k<j.length&&f.push(j.slice(k))}let i=d.end();i&&f.push(i),f.length>0&&b(f.join(""))}finally{(0,e.closeSync)(c)}}function C(a,b){let c=!0,d=!1,e=!1,f=!1,g=null;try{B(a,a=>{let h;if(c&&(c=!1,n(a)))return;let i=a.trim();if(i){try{h=JSON.parse(i)}catch{return}if(!d)return"session"!==h.type||"string"!=typeof h.id?(f=!0,!1):(d=!0,!(e="number"!=typeof h.version||h.version<3)&&void 0);if("session"!==h.type&&h.id===b)return g=h,!1}})}catch{return null}return f||!d?null:e?D(a).entries.find(a=>a.id===b)??null:g}function D(a,b={}){let c,f,g;try{c=(0,e.statSync)(a).size}catch{return{header:null,entries:[],titleSlot:void 0}}if(c>A)return{header:null,entries:[],titleSlot:void 0,error:"too_large"};let h=[],i=!0;try{B(a,a=>{if(i&&(i=!1,f=n(a)))return;let b=a.trim();if(b)try{h.push(JSON.parse(b))}catch{}})}catch(b){let a=b instanceof RangeError;return{header:null,entries:[],titleSlot:f,...a?{error:"too_large"}:{}}}let j=h[0];if(!j||"session"!==j.type||"string"!=typeof j.id)return{header:null,entries:[],titleSlot:f};let k=h.slice(1).filter(a=>"session"!==a.type);return!((g=j.version??1)>=3)&&(g<2&&function(a,b){a.version=2;let c=new Set,e=null;for(let a of b)if(a.id=function(a){for(let b=0;b<100;b++){let b=(0,d.randomUUID)().slice(-8);if(!a.has(b))return b}return(0,d.randomUUID)()}(c),c.add(a.id),a.parentId=e,e=a.id,"compaction"===a.type&&"number"==typeof a.firstKeptEntryIndex){let c=a.firstKeptEntryIndex>=1?b[a.firstKeptEntryIndex-1]:void 0;c&&(a.firstKeptEntryId=c.id),delete a.firstKeptEntryIndex}}(j,k),g<3&&function(a,b){for(let c of(a.version=3,b))if("message"===c.type){let a=c.message;"hookMessage"===a.role&&(a.role="custom")}}(j,k)),f&&(f.title?(j.title=f.title,f.source?j.titleSource=f.source:delete j.titleSource):(delete j.title,delete j.titleSource)),b.resolveBlobs&&function(a,b={}){for(let c of a)(!b.skipToolResultImages||"message"!==c.type||"toolResult"!==c.message.role)&&y(c)&&x(c,void 0)}(k,{skipToolResultImages:b.skipToolResultImages}),{header:j,entries:k,titleSlot:f}}function E(a,b){let c,d,e=a.indexOf("\n");if(-1===e){if(Buffer.byteLength(a,"utf8")>=b)return null;e=a.length}let f=a.slice(0,e).trim();if(!f)return null;let g=n(f);if(g){let d=a.slice(e+1),f=d.indexOf("\n");if(-1===f&&Buffer.byteLength(d,"utf8")+e>=b)return null;c=(-1===f?d:d.slice(0,f)).trim()}else c=f;if(!c)return null;try{d=JSON.parse(c)}catch{return null}return"session"!==d.type?null:(g?.title?(d.title=g.title,g.source&&(d.titleSource=g.source)):g&&(delete d.title,delete d.titleSource),d)}function F(a){let b,c;try{b=(0,e.openSync)(a,"r")}catch{return null}try{let a=Buffer.allocUnsafe(65792),d=(0,e.readSync)(b,a,0,a.length,0);c=a.subarray(0,d).toString("utf8")}finally{(0,e.closeSync)(b)}return E(c,65792)}function G(a){let b=new Map;for(let c of a)"label"===c.type&&(c.label?b.set(c.targetId,c.label):b.delete(c.targetId));let c=new Map,d=[];for(let d of a)c.set(d.id,{entry:d,children:[],label:b.get(d.id)});for(let b of a){let a=c.get(b.id);if(null===b.parentId||b.parentId===b.id){d.push(a);continue}let e=c.get(b.parentId);e?e.children.push(a):d.push(a)}let e=(a,b)=>new Date(a.entry.timestamp).getTime()-new Date(b.entry.timestamp).getTime(),f=[...d];for(;f.length>0;){let a=f.pop();a.children.sort(e),f.push(...a.children)}return d}function H(a){return a.length>0?a[a.length-1].id:null}function I(a){let b=a.endsWith("\\")?a.slice(0,-1):a;try{return JSON.parse(`"${b}"`)}catch{return b.replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function J(a,b,c=0){let d=a.indexOf(`"${b}"`,c);if(-1===d)return;let e=a.indexOf(":",d+b.length+2);if(-1===e)return;let f=e+1;for(;f<a.length;){let b=a.charCodeAt(f);if(32!==b&&9!==b&&10!==b&&13!==b)break;f++}if(34!==a.charCodeAt(f))return;let g=f+1,h=!1;for(let b=g;b<a.length;b++){let c=a.charCodeAt(b);if(h){h=!1;continue}if(92===c){h=!0;continue}if(34===c)return I(a.slice(g,b))}return I(a.slice(g))}function K(a){if(void 0!==a)return a.trim()?a:null}function L(a,b=!0){try{let c,[d,f,g,h]=function(a,b){let c=(0,e.statSync)(a),d=(0,e.openSync)(a,"r");try{let a=Math.min(4096,c.size),f=Buffer.allocUnsafe(a),g=a>0?(0,e.readSync)(d,f,0,a,0):0,h=f.subarray(0,g).toString("utf8"),i="";if(b>0&&c.size>0){let a=Math.min(b,c.size),f=Buffer.allocUnsafe(a),g=(0,e.readSync)(d,f,0,a,c.size-a);i=f.subarray(0,g).toString("utf8")}return[h,i,c.size,c.mtime]}finally{(0,e.closeSync)(d)}}(a,32768*!!b),i=p(d),k=function(a,b){let c,d=b[0],e=K(d?.type==="title"&&"string"==typeof d.title?d.title:void 0),f=function(a,b){if(a?.type==="session"&&"string"==typeof a.id)return{id:a.id,cwd:"string"==typeof a.cwd?a.cwd:void 0,title:null===b?void 0:b??("string"==typeof a.title?a.title:void 0),parentSession:"string"==typeof a.parentSession?a.parentSession:void 0,timestamp:"string"==typeof a.timestamp?a.timestamp:void 0}}(b[+(d?.type==="title")],e);if(f)return f;let g=!0;for(let b of a.split(/\r?\n/)){let a=b.trim();if(a){if(g&&"title"===J(a,"type")){c=K(J(a,"title")),g=!1;continue}return function(a,b){if("session"!==J(a,"type"))return;let c=J(a,"id");if(c)return{id:c,cwd:J(a,"cwd"),title:null===b?void 0:b??J(a,"title"),parentSession:J(a,"parentSession"),timestamp:J(a,"timestamp")}}(a,c)}}}(d,i);if(!k)return;let l=0,m="";for(let a=1;a<i.length;a++){let b=i[a];"compaction"===b.type&&"string"==typeof b.shortSummary&&(c=b.shortSummary),"message"===b.type&&b.message&&(l++,"user"!==b.message.role||m||(m=function(a){if("string"==typeof a)return a;if(!Array.isArray(a))return"";let b=[];for(let c of a)(0,j.u4)(c)&&"text"===c.type&&"string"==typeof c.text&&b.push(c.text);return b.join(" ")}(b.message.content)))}m||=function(a){let b,c=a.indexOf('"role"');for(;-1!==c;){let d=J(a,"role",c),e=J(a,"content",c)??J(a,"text",c);if(e){if("user"===d)return e;b||"developer"!==d&&"assistant"!==d||(b=e)}c=a.indexOf('"role"',c+6)}return b}(d)??"";let n=Math.max(l,function(a){let b=0,c=0;for(;c<a.length;){let d=a.indexOf('"type"',c);if(-1===d)break;let e=a.indexOf(":",d+6);if(-1===e)break;"message"===J(a,"type",d)&&b++,c=e+1}return b}(d));return{path:a,id:k.id,cwd:k.cwd??"",title:k.title??c,parentSessionPath:k.parentSession,created:new Date(k.timestamp??""),modified:h,messageCount:n,size:g,firstMessage:m||"(no messages)",status:b?function(a){if(!a)return"unknown";let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c,d=b[a];if(123===d.charCodeAt(0)){try{c=JSON.parse(d)}catch{continue}if("message"===c.type&&c.message)return function(a){switch(a.role){case"assistant":{switch(a.stopReason){case"error":return"error";case"aborted":return"aborted";case"length":return"interrupted"}let b=a.content;if(Array.isArray(b)&&b.some(a=>(0,j.u4)(a)&&"toolCall"===a.type))return"interrupted";return"complete"}case"toolResult":return"interrupted";case"user":return"pending";default:return"unknown"}}(c.message)}}return"unknown"}(f):void 0}}catch{return}}async function M(){let a=(0,k.tE)(),b=await O(a),c=[];for(let a of b){let b=function(a){let b;try{b=(0,e.statSync)(a)}catch{return}let c=(globalThis.__ompSessionScanCache||(globalThis.__ompSessionScanCache=new Map),globalThis.__ompSessionScanCache),d=c.get(a);if(d&&d.size===b.size&&d.mtimeMs===b.mtimeMs)return c.delete(a),c.set(a,d),d.info;d&&c.delete(a);let f=L(a,!1);if(f)for(c.set(a,{size:b.size,mtimeMs:b.mtimeMs,info:f});c.size>2048;){let a=c.keys().next().value;if(void 0===a)break;c.delete(a)}return f}(a);b&&c.push(b)}return c.sort((a,b)=>b.modified.getTime()-a.modified.getTime()),c}function N(){globalThis.__ompSessionFileListCache?.clear()}async function O(a){let b;try{b=(0,e.statSync)(a)}catch{return[]}globalThis.__ompSessionFileListCache||(globalThis.__ompSessionFileListCache=new Map);let c=globalThis.__ompSessionFileListCache,d=c.get(a);if(d&&d.rootMtimeMs===b.mtimeMs){let b=!1;try{for(let c of l(a,{withFileTypes:!0})){if(!c.isDirectory())continue;let g=f.join(a,c.name);if((0,e.statSync)(g).mtimeMs>d.subMaxMtimeMs){b=!0;break}}}catch{b=!0}if(!b)return d.files}let g=function(a){let b=[];try{for(let c of l(a,{withFileTypes:!0})){let d;if(!c.isDirectory())continue;let e=f.join(a,c.name);try{d=l(e,{withFileTypes:!0})}catch{continue}for(let a of d)a.isFile()&&a.name.endsWith(".jsonl")&&b.push(f.join(e,a.name))}}catch{return[]}return b}(a),h=0;try{for(let b of l(a,{withFileTypes:!0}))b.isDirectory()&&(h=Math.max(h,(0,e.statSync)(f.join(a,b.name)).mtimeMs))}catch{}return c.set(a,{rootMtimeMs:b.mtimeMs,subMaxMtimeMs:h,files:g}),g}function P(a,b,c){let d,f,g=b.replace(/[\u0000-\u001f\u007f-\u009f]/g," ").replace(/ +/g," ").trim();if(!g)return!1;let h={title:g,source:c,updatedAt:new Date().toISOString()};if(function(a){let b;try{b=(0,e.openSync)(a,"r")}catch{return}try{let a=Buffer.allocUnsafe(256),c=(0,e.readSync)(b,a,0,a.length,0),d=a.subarray(0,c).toString("utf8"),f=d.indexOf("\n");if(f<0)return;return n(d.slice(0,f))}finally{(0,e.closeSync)(b)}}(a)){let b=Buffer.from(o(h),"utf8"),c=(0,e.openSync)(a,"r+");try{let a=0;for(;a<b.length;){let d=(0,e.writeSync)(c,b,a,b.length-a,a);if(0===d)throw Error("Short write while updating session title slot");a+=d}}finally{(0,e.closeSync)(c)}return!0}try{d=(0,e.statSync)(a).size}catch{return!1}if(d>A)return!1;let i=(0,e.readFileSync)(a,"utf8").split("\n"),j=i.findIndex(a=>a.trim().length>0);if(-1===j)throw Error("Cannot rename an empty session file");try{f=JSON.parse(i[j])}catch{throw Error("Cannot rename a session file with a malformed header")}if("session"!==f.type)throw Error("Not a session file");return f.title=g,f.titleSource=c,i[j]=JSON.stringify(f),Q(a,o(h)+i.join("\n"),"title"),!0}function Q(a,b,c="rewrite"){let d=f.dirname(a),g=(0,e.mkdtempSync)(f.join(d,`.ompgui-${c}-`)),h=f.join(g,f.basename(a));try{(0,e.writeFileSync)(h,b,"utf8"),(0,e.renameSync)(h,a)}finally{try{(0,e.rmdirSync)(g)}catch{(0,e.rmSync)(g,{recursive:!0,force:!0})}}}function R(a,b={}){let c=f.resolve(b.sessionsRoot??(0,k.tE)()),d=f.resolve(a),g=f.relative(c,d);if(!g||g.startsWith(".."+f.sep)||f.isAbsolute(g)||!g.endsWith(".jsonl"))throw Error("Session path is outside the active OMP sessions directory");if(!(0,e.lstatSync)(d).isFile())throw Error("Session path is not a regular file");let h=f.resolve(b.archiveRoot??(0,k.ny)()),j=f.join(h,`${g}.gz`),l=j.slice(0,-3);if((0,e.existsSync)(j)||(0,e.existsSync)(l))throw Error("Archived session destination already exists");let m=d.slice(0,-6),n=j.slice(0,-3);(0,e.mkdirSync)(f.dirname(j),{recursive:!0});let o=(0,e.mkdtempSync)(f.join(f.dirname(j),".ompgui-archive-")),p=f.join(o,f.basename(j)),q=f.join(o,f.basename(d)),r=!1,s=!1,t=!1;try{if((0,e.writeFileSync)(p,(0,i.gzipSync)((0,e.readFileSync)(d),{level:9})),(0,e.renameSync)(p,j),r=!0,(0,e.unlinkSync)(d),s=!0,(0,e.existsSync)(m)){if((0,e.existsSync)(n))throw Error("Archived session artifacts destination already exists");(0,e.mkdirSync)(f.dirname(n),{recursive:!0}),(0,e.renameSync)(m,n),t=!0}return j}catch(b){if(t)try{(0,e.renameSync)(n,m)}catch{}let a=!0;if(s&&r){a=!1;try{(0,e.writeFileSync)(q,(0,i.gunzipSync)((0,e.readFileSync)(j))),(0,e.mkdirSync)(f.dirname(d),{recursive:!0}),(0,e.renameSync)(q,d),a=!0}catch{}}if(r&&a)try{(0,e.unlinkSync)(j)}catch{}throw b}finally{try{(0,e.rmSync)(o,{recursive:!0,force:!0})}catch{}}}class S extends Error{constructor(a,b){super(b),this.name="SessionArchiveError",this.code=a}}function T(a){try{return(0,e.lstatSync)(a),!0}catch{return!1}}function U(a,b){let c=f.relative(a,b),d=a;for(let a of c.split(f.sep))if(a){d=f.join(d,a);try{if((0,e.lstatSync)(d).isSymbolicLink())throw new S("invalid_key","Archive path contains a symbolic-link escape")}catch(a){if(a instanceof S)throw a;break}}}async function V(a,b){return new Promise((c,d)=>{let f=(0,e.createReadStream)(a),g=(0,i.createGunzip)(),h=[],j=0,k=!1,l=a=>{k||(k=!0,f.destroy(),g.destroy(),d(a))},m=()=>{k||(k=!0,f.destroy(),g.destroy(),c(Buffer.concat(h,j)))};f.on("error",l),g.on("error",l),g.on("data",a=>{if(k)return;let c=b-j;if(c<=0)return void m();let d=a.subarray(0,c);h.push(d),(j+=d.length)>=b&&m()}),g.on("end",m),f.pipe(g)})}async function W(a={}){let b=f.resolve(a.archiveRoot??(0,k.ny)()),c=function(a){let b,c=[];try{b=l(a,{withFileTypes:!0})}catch{return c}for(let d of b){let b;if(c.length>=500)break;let e=f.join(a,d.name);if(d.isFile()&&d.name.endsWith(".jsonl.gz")){c.push(e);continue}if(d.isDirectory()){try{b=l(e,{withFileTypes:!0})}catch{continue}for(let a of b){if(c.length>=500)break;a.isFile()&&a.name.endsWith(".jsonl.gz")&&c.push(f.join(e,a.name))}}}return c}(b);return(await Promise.all(c.map(async a=>{let c;try{if(!(0,e.lstatSync)(a).isFile())return;c=(0,e.statSync)(a);let d=await V(a,65792),g=E(d.toString("utf8"),65792);if(!g||"string"!=typeof g.id||0===g.id.length)return;let h=f.relative(b,a),i=a.slice(0,-3);return{key:h.split(f.sep).join("/"),id:g.id,..."string"==typeof g.title&&g.title?{name:g.title}:{},..."string"==typeof g.cwd&&g.cwd?{cwd:g.cwd}:{},created:function(a,b){if("string"==typeof a){let b=new Date(a);if(!Number.isNaN(b.getTime()))return b.toISOString()}return b.toISOString()}(g.timestamp,c.mtime),modified:c.mtime.toISOString(),size:c.size,hasArtifacts:T(i)&&(0,e.lstatSync)(i).isDirectory()}}catch{return}}))).filter(a=>!!a).sort((a,b)=>b.modified.localeCompare(a.modified))}async function X(a,b={}){let c,d=f.resolve(b.archiveRoot??(0,k.ny)()),g=f.resolve(b.sessionsRoot??(0,k.tE)()),j=function(a,b){if("string"!=typeof a||0===a.length||a.length>1024||a.includes("\\")||a.includes("\0")||a.startsWith("/")||f.isAbsolute(a)||f.win32.isAbsolute(a)||/^[A-Za-z]:/.test(a)||!a.endsWith(".jsonl.gz"))throw new S("invalid_key","Invalid archived session key");let c=a.split("/");if(c.some(a=>0===a.length||"."===a||".."===a))throw new S("invalid_key","Invalid archived session key");let d=f.resolve(b,...c),e=f.relative(b,d);if(!e||e.startsWith(".."+f.sep)||f.isAbsolute(e))throw new S("invalid_key","Invalid archived session key");return U(b,d),d}(a,d);try{c=(0,e.lstatSync)(j)}catch{throw new S("not_found","Archived session was not found")}if(!c.isFile())throw new S("not_found","Archived session was not found");let l=f.relative(d,j).slice(0,-3),m=f.resolve(g,l);U(g,m);let n=j.slice(0,-3),o=m.slice(0,-6);if(T(m)||T(o))throw new S("destination_conflict","Active session destination already exists");if(T(n)&&!(0,e.lstatSync)(n).isDirectory())throw new S("invalid_archive","Archived session artifacts are not a directory");(0,e.mkdirSync)(f.dirname(m),{recursive:!0});let p=(0,e.mkdtempSync)(f.join(f.dirname(m),".ompgui-restore-")),q=f.join(p,f.basename(m)),r=!1,s=!1,t=null;try{if(await (0,h.pipeline)((0,e.createReadStream)(j),(0,i.createGunzip)(),(0,e.createWriteStream)(q,{flags:"wx"})),!(t=F(q))||"string"!=typeof t.id||0===t.id.length)throw new S("invalid_session_header","Restored archive has an invalid session header");if((0,e.renameSync)(q,m),r=!0,T(n)){if(T(o))throw new S("destination_conflict","Active session artifacts destination already exists");(0,e.renameSync)(n,o),s=!0}return(0,e.unlinkSync)(j),{path:m,id:t.id,header:t}}catch(a){if(s)try{(0,e.renameSync)(o,n)}catch{}if(r)try{(0,e.unlinkSync)(m)}catch{}if(a instanceof S)throw a;throw new S("restore_failed",a instanceof Error?a.message:String(a))}finally{try{(0,e.rmSync)(p,{recursive:!0,force:!0})}catch{}}}function Y(a){if((0,e.unlinkSync)(a),!a.endsWith(".jsonl"))return;let b=a.slice(0,-6);try{(0,e.rmSync)(b,{recursive:!0,force:!0})}catch{}}},74244:(a,b,c)=>{"use strict";c.d(b,{z:()=>e});var d=c(58864);function e(a,b=process.platform){return(0,d.w)(a,b)}},78335:()=>{},78573:(a,b,c)=>{"use strict";c.d(b,{Uv:()=>I,O8:()=>x,HA:()=>O,cr:()=>D,DK:()=>E,td:()=>F,mD:()=>r,BR:()=>y,dQ:()=>p,eP:()=>z,UB:()=>w,u1:()=>v,os:()=>u});var d=c(55511),e=c(29021),f=c(33873);c(85887);var g=c(63945),h=c(78970),i=c(20565);function j(a){if("assistant"!==a.role)return a;let b=a.content;if(!Array.isArray(b))return a;let c=b.map(a=>((0,i.u4)(a)&&"toolCall"===a.type?{type:"toolCall",toolCallId:"string"==typeof a.toolCallId?a.toolCallId:"string"==typeof a.id?a.id:"",toolName:"string"==typeof a.toolName?a.toolName:"string"==typeof a.name?a.name:"",input:"object"!=typeof a.input||null===a.input||Array.isArray(a.input)?"object"!=typeof a.arguments||null===a.arguments||Array.isArray(a.arguments)?{}:a.arguments:a.input}:null)??a);return{...a,content:c}}var k=c(57050),l=c(45902),m=c(24923),n=c(74244);async function o(){let a=await (0,g.L1)(),b=new Map,c=new Set;for(let d of a)b.set((0,l.$)(d.path),d.id),c.add(d.id);let d=[...new Set(a.map(a=>a.cwd).filter(Boolean))],e=new Map;for(let a=0;a<d.length;a+=6){let b=d.slice(a,a+6);await Promise.all(b.map(async a=>{e.set(a,await (0,m.KI)(a))}))}return a.map(a=>{var d;let f;x(a.id,a.path);let g=a.cwd?e.get(a.cwd):void 0;return{path:a.path,id:a.id,cwd:a.cwd,name:a.title,created:a.created instanceof Date&&!Number.isNaN(a.created.getTime())?a.created.toISOString():a.modified.toISOString(),modified:a.modified.toISOString(),messageCount:a.messageCount,firstMessage:a.firstMessage||"(no messages)",parentSessionId:a.parentSessionPath?(d=a.parentSessionPath,(f=b.get((0,l.$)(d)))||(c.has(d)?d:void 0)):void 0,projectRoot:g?.projectRoot??a.cwd,projectKey:(0,n.z)(g?.projectRoot??a.cwd),...g?.isWorktree&&g.branch?{worktreeBranch:g.branch}:{}}})}async function p(){let a=globalThis.__piSessionListGeneration??0;if(globalThis.__piSessionListCache&&Date.now()-globalThis.__piSessionListCache.ts<q)return globalThis.__piSessionListCache.data;if(globalThis.__piSessionListPromise&&globalThis.__piSessionListPromiseGeneration===a)return globalThis.__piSessionListPromise;let b=o().then(b=>((globalThis.__piSessionListGeneration??0)===a&&(globalThis.__piSessionListCache={data:b,ts:Date.now()}),b)).finally(()=>{globalThis.__piSessionListPromise===b&&(globalThis.__piSessionListPromise=void 0,globalThis.__piSessionListPromiseGeneration=void 0)});return globalThis.__piSessionListPromise=b,globalThis.__piSessionListPromiseGeneration=a,b}let q=3e4;function r(){globalThis.__piSessionListGeneration=(globalThis.__piSessionListGeneration??0)+1,globalThis.__piSessionListCache=void 0,(0,g.I3)(),globalThis.__ompSessionDocumentCache?.clear()}function s(){return globalThis.__piSessionPathCache||(globalThis.__piSessionPathCache=new Map),globalThis.__piSessionPathCache}function t(){return globalThis.__piPathToSessionIdCache||(globalThis.__piPathToSessionIdCache=new Map),globalThis.__piPathToSessionIdCache}async function u(a){let b=s().get(a);if(b){if((0,e.existsSync)(b))return b;y(a),r()}await p();let c=s().get(a);return c?(0,e.existsSync)(c)?c:(y(a),null):null}async function v(a){let b=(0,l.$)(a),c=t().get(b);return c||(await p(),t().get(b))}async function w(a){if(!a)return;let b=await v(a);return b||(await u(a)?a:void 0)}function x(a,b){let c=(0,f.normalize)(b),d=(0,l.$)(c),e=s(),g=t(),h=e.get(a),i=h?(0,l.$)(h):void 0,j=g.get(d),k=j?e.get(j):void 0;i&&i!==d&&g.get(i)===a&&g.delete(i),j&&j!==a&&k&&(0,l.$)(k)===d&&e.delete(j),e.set(a,c),g.set(d,a)}function y(a){let b=s(),c=t(),d=b.get(a);b.delete(a);let e=d?(0,l.$)(d):void 0;e&&c.get(e)===a&&c.delete(e)}function z(a){return(0,g.Hb)(a)}function A(a){try{let b=(0,e.statSync)(a);return{dev:b.dev,ino:b.ino,size:b.size,mtimeMs:b.mtimeMs,ctimeMs:b.ctimeMs}}catch{return null}}function B(a,b){return a.dev===b.dev&&a.ino===b.ino&&a.size===b.size&&a.mtimeMs===b.mtimeMs&&a.ctimeMs===b.ctimeMs}function C(a){let b=[a];for(;b.length>0;){let a=b.pop();if(!(!a||Object.isFrozen(a))){for(let c of Object.values(a))"object"!=typeof c||null===c||Object.isFrozen(c)||b.push(c);Object.freeze(a)}}return a}function D(a){let b;try{b=e.realpathSync.native(a)}catch{return C((0,g.Fy)(a))}let c=A(b);if(!c)return C((0,g.Fy)(b));let d=(globalThis.__ompSessionDocumentCache||(globalThis.__ompSessionDocumentCache=new Map),globalThis.__ompSessionDocumentCache),f=d.get(b);if(f&&B(f.identity,c))return d.delete(b),d.set(b,f),f.document;let h=C((0,g.Fy)(b)),i=A(b);if(i&&B(c,i)&&i.size<=0x4000000){d.set(b,{identity:i,sourceBytes:i.size,document:h});let a=0;for(let b of d.values())a+=b.sourceBytes;for(;d.size>32||a>0x4000000;){let b=d.keys().next().value;if(void 0===b)break;let c=d.get(b);d.delete(b),a-=c?.sourceBytes??0}}return h}function E(a){return D(a).entries}function F(a,b){let c=(0,g.Ee)(a,b);if(!c||"message"!==c.type||!(0,i.u4)(c.message))return null;let e=c.message;if("toolResult"!==e.role)return null;let f="content"in e?e.content:void 0,j="details"in e?e.details:void 0,k=function(a,b){let c=new Set,e=[],f=!1,i=(a,b)=>{f=!0;let g=(0,h.Si)(a),i=null===g?null:(0,d.createHash)("sha256").update(a,"base64").digest("hex"),j=null===i?`inline:${b}\0${a}`:`image:${b}\0${i}`;c.has(j)||(c.add(j),e.push(g??(0,h.x)(a)))},j=(a,b)=>{f=!0;let d=`image:${b}\0${a}`;c.has(d)||(c.add(d),e.push((0,g.I8)(a)??0))},k=(a,b)=>{if("object"!=typeof a||null===a||Array.isArray(a)||b&&"image"!==a.type)return;let c=a.source;if("object"==typeof c&&null!==c&&!Array.isArray(c)&&"base64"===c.type&&"string"==typeof c.data){let a="string"==typeof c.media_type?c.media_type:"";if(!a.toLowerCase().startsWith("image/"))return;let b=c.data;if("string"!=typeof b)return;if((0,g.zW)(b)){let c=(0,g.G)(b);c&&j(c,a);return}i(b,a);return}if("string"==typeof a.data&&"string"==typeof a.mimeType){if(!a.mimeType.toLowerCase().startsWith("image/"))return;if((0,g.zW)(a.data)){let b=(0,g.G)(a.data);b&&j(b,a.mimeType);return}i(a.data,a.mimeType)}};try{if(Array.isArray(a))for(let b of a)k(b,!0);if("object"==typeof b&&null!==b&&!Array.isArray(b)){let a=b.images;if(Array.isArray(a))for(let b of a)k(b,!1)}}catch{}return f?e:null}(f,j);if(!k)return null;(0,h.gy)(k);let l=Array.isArray(f)?f.filter(a=>(0,i.u4)(a)&&"image"===a.type):[],m={type:"message",id:c.id,parentId:c.parentId,timestamp:c.timestamp,message:{role:"toolResult",toolCallId:"media",content:l,details:(0,i.u4)(j)&&Array.isArray(j.images)?{images:j.images}:void 0}},n=(0,g.qd)([m])[0],o=n?.type==="message"&&(0,i.u4)(n.message)?n.message:null;if(!o||"toolResult"!==o.role)return null;let p=(0,h.K8)({content:"content"in o?o.content:void 0,details:"details"in o?o.details:void 0}),q=Math.max(0,k.length-p.length);return p.length>0||q>0?{images:p,missingCount:q}:null}function G(a){if("message"!==a.type||!(0,i.u4)(a.message)||"string"!=typeof a.message.role)return null;let b=a.message;return"assistant"!==b.role||(void 0===b.provider||"string"==typeof b.provider)&&(void 0===b.model||"string"==typeof b.model)&&("string"==typeof b.content||Array.isArray(b.content))?b:null}function H(a){if(!Array.isArray(a))return null;let b=new Set(["pending","in_progress","completed","blocked","abandoned"]),c=[];for(let d of a){if(!(0,i.u4)(d)||"string"!=typeof d.name||!Array.isArray(d.tasks))return null;let a=[];for(let c of d.tasks){if(!(0,i.u4)(c)||"string"!=typeof c.content||"string"!=typeof c.status||!b.has(c.status)||void 0!==c.blocker&&"string"!=typeof c.blocker)return null;a.push({content:c.content,status:c.status,..."string"==typeof c.blocker?{blocker:c.blocker}:{}})}c.push({name:d.name,tasks:a})}return c}function I(a,b,c={}){let d,e={messages:[],entryIds:[],thinkingLevel:"off",model:null,todoPhases:[]},f=new Map;for(let b of a)f.set(b.id,b);if(null===b||(b&&(d=f.get(b)),d||(d=a[a.length-1]),!d))return e;let g=[],h=new Set,j=d;for(;j&&!h.has(j.id);)h.add(j.id),g.push(j),j=j.parentId?f.get(j.parentId):void 0;g.reverse();let k="off",l={},m=!1,n=null;for(let a of g)if("thinking_level_change"===a.type)k=a.configured??a.thinkingLevel??"off";else if("model_change"===a.type)if(a.model){let b=a.role??"default";l[b]=a.model,"default"===b&&(m=!0)}else a.provider&&a.modelId&&(l.default=`${a.provider}/${a.modelId}`,m=!0);else if("message"===a.type){let b=G(a);b?.role==="assistant"&&!m&&"string"==typeof b.provider&&b.provider.length>0&&"string"==typeof b.model&&b.model.length>0&&(l.default=`${b.provider}/${b.model}`)}else"compaction"===a.type&&(n=a);let o=[],p=[],q=a=>{var b;let d="compaction"===a.type?(b=a,{role:"custom",customType:"compaction",content:a.id===n?.id?b.summary:"[Superseded compaction summary elided after a newer compaction]",display:!0,details:{tokensBefore:b.tokensBefore,firstKeptEntryId:b.firstKeptEntryId},timestamp:J(b.timestamp)}):O(a,c);d&&(o.push(d),p.push(a.id))};if(n){let a=n;q(a);let b=g.findIndex(b=>"compaction"===b.type&&b.id===a.id),c=!1;for(let d=0;d<b;d++){let b=g[d];b.id===a.firstKeptEntryId&&(c=!0),c&&q(b)}for(let a=b+1;a<g.length;a++)q(g[a])}else for(let a of g)q(a);let r=null,s=l.default;if(s){let a=s.indexOf("/");r=a>0?{provider:s.slice(0,a),modelId:s.slice(a+1)}:{provider:"",modelId:s}}return{messages:o,entryIds:p,thinkingLevel:k,model:r,todoPhases:function(a,b){if(null===b||0===a.length)return[];let c=new Map(a.map(a=>[a.id,a])),d=b?c.get(b):a[a.length-1],e=[],f=new Set;for(;d&&!f.has(d.id);)f.add(d.id),e.push(d),d=d.parentId?c.get(d.parentId):void 0;for(let a=e.length-1;a>=0;a--){let b=e[a];if("custom"===b.type&&"user_todo_edit"===b.customType){let a=(0,i.u4)(b.data)?H(b.data.phases):null;if(a)return a}let c=G(b);if(c?.role==="toolResult"){if("todo"!==c.toolName||c.isError)continue;let a=(0,i.u4)(c.details)?H(c.details.phases):null;if(a)return a}}return[]}(a,b)}}function J(a){let b=Date.parse(a);return Number.isNaN(b)?void 0:b}function K(a){return a.length<=240?a:`${[...a].slice(0,240).join("")}…`}let L=["index","id","agent","agentSource","status","task","assignment","lastIntent","toolCount","requests","tokens","contextTokens","contextWindow","cost","durationMs","modelRole","resolvedModel","resolvedModelIsFallback","retryFailure"],M=["index","id","agent","agentSource","status","task","assignment","exitCode","truncated","structuredOutput","durationMs","tokens","requests","contextTokens","contextWindow","modelRole","resolvedModel","resolvedModelIsFallback","error","aborted","abortReason","outputPath","patchPath","branchName","retryFailure"];function N(a,b=!1){if("toolResult"!==a.role||void 0===a.details)return a;let{details:c,...d}=a;if((0,i.u4)(c)){let d=b?(0,h.K8)({content:[],details:c}):[],e={};if("string"==typeof c.patch&&(e.patch=c.patch),"string"==typeof c.diff&&(e.diff=c.diff),"task"===a.toolName){let a=function(a){let b={},c=Array.isArray(a.results)?a.results:[],d=Array.isArray(a.progress)?a.progress:[];if(0===c.length&&0===d.length&&!(0,i.u4)(a.async))return null;if("number"==typeof a.totalDurationMs&&(b.totalDurationMs=a.totalDurationMs),(0,i.u4)(a.async)){let c=function(a){if(!(0,i.u4)(a))return;let b={};for(let c of["state","jobId","type"])"string"==typeof a[c]&&(b[c]=K(a[c]));return Object.keys(b).length>0?b:void 0}(a.async);c&&(b.async=c)}let e=(a,b)=>{if(!(0,i.u4)(a))return null;let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);for(let a of["task","assignment","error","abortReason","lastIntent","agent","modelRole","resolvedModel","outputPath","patchPath","branchName"])"string"==typeof c[a]&&(c[a]=K(c[a]));if("number"!=typeof c.cost){let b=(0,k.tw)(a.usage);void 0!==b&&(c.cost=b)}if(void 0!==a.retryFailure){let b=(0,k.D$)(a.retryFailure,K);b?c.retryFailure=b:delete c.retryFailure}if(void 0!==a.structuredOutput){let b=(0,k.bA)(a.structuredOutput,K);b?c.structuredOutput=b:delete c.structuredOutput}return c};return d.length>0&&(b.progress=d.slice(0,50).map(a=>e(a,L)).filter(a=>null!==a)),c.length>0&&(b.results=c.slice(0,50).map(a=>e(a,M)).filter(a=>null!==a)),Object.keys(b).length>0?b:null}(c);a&&Object.assign(e,a)}let f=a;if(d.length>0&&Array.isArray(a.content)&&(f=function(a,b){if(!Array.isArray(a.content))return a;let c=new Set;for(let b of a.content){if(!(0,i.u4)(b)||"image"!==b.type)continue;let a=(0,h.K8)({content:[b],details:{}})[0];a&&"string"==typeof a.data&&"string"==typeof a.mimeType&&c.add(`${a.mimeType}\0${a.data}`)}let d=b.filter(a=>{if("string"!=typeof a.data||"string"!=typeof a.mimeType)return!1;let b=`${a.mimeType}\0${a.data}`;return!c.has(b)&&(c.add(b),!0)});return 0===d.length?a:{...a,content:[...a.content,...d]}}(a,d)),Object.keys(e).length>0)return{...f,details:e};let{details:g,...j}=f;return j}return d}function O(a,b){switch(a.type){case"message":{let c=G(a);if(!c)return null;if("developer"===c.role)return{role:"custom",customType:"developer",content:c.content,display:!0,timestamp:c.timestamp};if("pythonExecution"===c.role){let a=c.output?`
1
+ exports.id=6209,exports.ids=[6209],exports.modules={20565:(a,b,c)=>{"use strict";function d(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function e(a){return"string"==typeof a?a:void 0}function f(a){return"number"==typeof a&&Number.isFinite(a)?a:void 0}c.d(b,{i:()=>f,oJ:()=>e,u4:()=>d})},24923:(a,b,c)=>{"use strict";c.d(b,{IL:()=>t,KI:()=>n,P9:()=>p,l:()=>s,xw:()=>r});var d=c(79646),e=c(29021),f=c(33873),g=c(28354),h=c(25252),i=c(58864);let j=(0,g.promisify)(d.execFile);function k(a){try{return(0,e.realpathSync)(a)}catch{return a}}function l(){globalThis.__piProjectCache?.clear()}async function m(a,b){let{stdout:c}=await j("git",["-C",a,...b],{timeout:1e4,maxBuffer:1048576,env:{...process.env,LC_ALL:"C"}});return c.trim()}async function n(a){let b,c=(globalThis.__piProjectCache||(globalThis.__piProjectCache=new Map),globalThis.__piProjectCache),d=c.get(a);if(d&&d.expiresAt>Date.now())return d.info;try{if(!(0,e.existsSync)(a))return b=function(a){let b=(0,f.dirname)(a);if(!b.endsWith("-worktrees"))return null;let c=b.slice(0,-10);return c&&(0,e.existsSync)((0,f.join)(c,".git"))?{projectRoot:k(c),branch:(0,f.basename)(a),isWorktree:!0,isTopLevel:!0}:null}(a)??{projectRoot:a,branch:null,isWorktree:!1,isTopLevel:!1},c.set(a,{info:b,expiresAt:Date.now()+6e4}),b;let[d,g,h,j]=(await m(a,["rev-parse","--path-format=absolute","--git-common-dir","--git-dir","--show-toplevel","--abbrev-ref","HEAD"])).split("\n").map(a=>a.trim()),[l,n,o]=[d,g,h].map(i.gB),p=k(a),q=(0,i.Eb)(o,p),r=!(0,i.Eb)(n,l)&&q,s=r?(0,f.dirname)(l):o;b={projectRoot:q?k(s):k(a),branch:j&&"HEAD"!==j?j:null,isWorktree:r,isTopLevel:q}}catch{b={projectRoot:k(a),branch:null,isWorktree:!1,isTopLevel:!1}}return c.set(a,{info:b,expiresAt:Date.now()+6e4}),b}async function o(a){let b=await m(a,["rev-parse","--path-format=absolute","--git-common-dir"]);return k((0,f.dirname)((0,i.gB)(b)))}async function p(a){let b=await m(a,["worktree","list","--porcelain"]),c=[],d=null,g=()=>{if(d?.path){let a=(0,f.resolve)(d.path);!d.prunable&&(0,e.existsSync)(a)&&c.push({path:a,branch:d.branch??null,isMain:0===c.length})}d=null};for(let a of b.split("\n"))a.startsWith("worktree ")?(g(),d={path:(0,i.gB)(a.slice(9).trim())}):a.startsWith("branch ")&&d?d.branch=a.slice(7).trim().replace(/^refs\/heads\//,""):a.startsWith("prunable")&&d?d.prunable=!0:""===a.trim()&&g();return g(),c}function q(a,b){return a.find(a=>(0,i.Eb)(a.path,b))}function r(a,b){return q(a,k(b))?.path??null}async function s(a,b){let c=b.trim();if(!c)throw Error("Branch name is required");let d=c.replace(/[\/\\:*?"<>|\s]+/g,"-").replace(/^-+|-+$/g,"");if(!d)throw Error(`Invalid branch name: ${b}`);let g=await o(a),i=`${(0,f.resolve)(g)}-worktrees`,j=(0,f.join)(i,d);if((0,e.existsSync)(j))throw Error(`Directory already exists: ${j}`);(0,e.mkdirSync)(i,{recursive:!0});let k=!1;try{await m(g,["rev-parse","--verify","--quiet",`refs/heads/${c}`]),k=!0}catch{k=!1}try{k?await m(g,["worktree","add","--",j,c]):await m(g,["worktree","add","-b",c,"--",j])}catch(a){throw Error(u(a))}return(0,h.wz)(j),l(),{path:j,branch:c}}async function t(a,b,c=!1){let d=q(await p(a),b);if(!d)throw Error(`Not a worktree of this repository: ${b}`);if(d.isMain)throw Error("Cannot remove the main worktree");try{await m(a,["worktree","remove",...c?["--force"]:[],d.path])}catch(a){throw Error(u(a))}l()}function u(a){let b=a.stderr;return"string"==typeof b&&b.trim()?b.trim():a instanceof Error?a.message:String(a)}},25252:(a,b,c)=>{"use strict";function d(a){return a.replace(/\\/g,"/")}function e(){return globalThis.__piAdditionalAllowedRoots||(globalThis.__piAdditionalAllowedRoots=new Set),globalThis.__piAdditionalAllowedRoots}function f(a){if(!a)return;let b=d(a);e().add(b),globalThis.__piAllowedRootsCache?.roots.add(b)}c.d(b,{HM:()=>e,Nw:()=>d,wz:()=>f})},45902:(a,b,c)=>{"use strict";c.d(b,{$:()=>f});var d=c(76760),e=c.n(d);function f(a,b=process.platform){let c="win32"===b?e().win32.normalize(a):e().posix.normalize(a);return"win32"===b?c.toLowerCase():c}},57050:(a,b,c)=>{"use strict";c.d(b,{D$:()=>f,bA:()=>g,tw:()=>e});var d=c(20565);function e(a){if(!(0,d.u4)(a))return;let b=(0,d.u4)(a.cost)?a.cost:void 0;if(!b)return;let c=(0,d.i)(b.total);if(void 0!==c)return c;let e=(0,d.i)(b.input),f=(0,d.i)(b.output);if(void 0!==e&&void 0!==f)return e+f}function f(a,b){if(!(0,d.u4)(a))return;let c=(0,d.i)(a.attempt),e=(0,d.oJ)(a.errorMessage);if(void 0!==c&&void 0!==e)return{attempt:c,errorMessage:b?b(e):e}}function g(a,b){if(!(0,d.u4)(a))return;let c={};for(let e of["source","mode","status","error"]){let f=(0,d.oJ)(a[e]);void 0!==f&&(c[e]=b?b(f):f)}return Object.keys(c).length>0?c:void 0}},58864:(a,b,c)=>{"use strict";c.d(b,{Eb:()=>j,gB:()=>h,uK:()=>g,w:()=>i});var d=c(33873),e=c.n(d);let f=/^[a-zA-Z]:[\\/]/;function g(a){return f.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function h(a){return a&&"win32"===process.platform?(0,d.normalize)(a):a}function i(a,b=process.platform){if(!a)return a;let c="win32"===b?e().win32:e().posix,d="win32"===b?c.normalize(h(a)):a,f=c.normalize(d),g=c.parse(f).root.length,j=f.length;for(;j>g&&f[j-1]===c.sep;)j--;let k=f.slice(0,j);return"win32"===b?k.toLowerCase():k}function j(a,b){return a===b||!!a&&!!b&&i(a)===i(b)}},63945:(a,b,c)=>{"use strict";c.d(b,{Bm:()=>P,De:()=>S,Ee:()=>C,Fy:()=>D,G:()=>t,Hb:()=>F,I3:()=>N,I8:()=>v,L1:()=>M,O0:()=>X,U1:()=>n,Uk:()=>W,XS:()=>Y,a8:()=>R,kT:()=>H,lc:()=>G,mk:()=>L,ni:()=>A,nr:()=>p,qd:()=>z,sv:()=>Q,zW:()=>s});var d=c(55511),e=c(29021),f=c(33873),g=c(41204),h=c(77725),i=c(74075),j=c(20565),k=c(85887);let l=Reflect.get(e,"readdirSync");function m(a,b,c,d){return`${JSON.stringify(b?{type:"title",v:1,title:a,source:b,updatedAt:c,pad:d}:{type:"title",v:1,title:a,updatedAt:c,pad:d})}
2
+ `}function n(a){var b;let c;try{c=JSON.parse(a)}catch{return}if("object"!=typeof c||null===c)return;let d=c;if("title"!==d.type||1!==d.v||"string"!=typeof d.title||"string"!=typeof d.updatedAt||"string"!=typeof d.pad||void 0!==d.source&&"auto"!==(b=d.source)&&"user"!==b)return;let e={type:"title",v:1,title:d.title,updatedAt:d.updatedAt,pad:d.pad};return d.source&&(e.source=d.source),e}function o(a){let b=function(a,b,c){let d=[...a],e=0,f=d.length,g="";for(;e<=f;){let a=e+f>>>1,h=d.slice(0,a).join("");256>=Buffer.byteLength(m(h,b,c,""),"utf8")?(g=h,e=a+1):f=a-1}return g}(a.title??"",a.source,a.updatedAt),c=m(b,a.source,a.updatedAt,""),d=256-Buffer.byteLength(c,"utf8");if(d<0)throw Error("Session title slot metadata exceeds fixed slot size");let e=m(b,a.source,a.updatedAt," ".repeat(d));if(256!==Buffer.byteLength(e,"utf8"))throw Error("Session title slot serialization failed to produce fixed-width output");return e}function p(a){let b=[];for(let c of a.split("\n")){let a=c.trim();if(a)try{let c=JSON.parse(a);(0,j.u4)(c)&&b.push(c)}catch{}}return b}let q="blob:sha256:",r=/^[a-f0-9]{64}$/;function s(a){return a.startsWith(q)}function t(a){if(!a.startsWith(q))return null;let b=a.slice(q.length);return r.test(b)?b:null}function u(a){try{return(0,e.readFileSync)(f.join((0,k.yG)(),a))}catch{return null}}function v(a){try{return(0,e.statSync)(f.join((0,k.yG)(),a)).size}catch{return null}}function w(a){return(0,j.u4)(a)&&"image"===a.type&&"string"==typeof a.data}function x(a,b){if(Array.isArray(a)){for(let c of a)x(c,b);return}if((0,j.u4)(a)){if((0,j.u4)(a)&&"string"==typeof a.data&&(w(a)||"string"==typeof a.mimeType&&a.mimeType.toLowerCase().startsWith("image/"))&&s(a.data)&&("content"===b&&w(a)||"images"===b)){let b=t(a.data);if(!b)return;let c=u(b);c?a.data=c.toString("base64"):(a.type="text",a.text=`[image unavailable: blob ${b.slice(0,12)}… not found]`,delete a.data,delete a.mimeType,delete a.source);return}if("image_generation_call"===a.type&&"string"==typeof a.result&&s(a.result)){let b=t(a.result),c=b?u(b):null;c&&(a.result=c.toString("base64"))}if("string"==typeof a.image_url&&s(a.image_url)){let b=t(a.image_url),c=b?u(b):null;c&&(a.image_url=c.toString("utf8"))}for(let[b,c]of Object.entries(a))x(c,b)}}function y(a){if("string"==typeof a)return s(a);if(Array.isArray(a)){for(let b of a)if(y(b))return!0;return!1}if(!(0,j.u4)(a))return!1;for(let b in a)if(y(a[b]))return!0;return!1}function z(a,b={}){return a.map(a=>{if(b.skipToolResultImages&&"message"===a.type&&"toolResult"===a.message.role||!y(a))return a;let c=structuredClone(a);return x(c,void 0),c})}let A=0x40000000;function B(a,b){let c=(0,e.openSync)(a,"r");try{let a=Buffer.allocUnsafe(1048576),d=new g.StringDecoder("utf8"),f=[],h=!1;for(;;){let g=(0,e.readSync)(c,a,0,a.length,null);if(0===g)break;let i=d.write(a.subarray(0,g));if(h=h||i.includes("\n"),f.push(i),!h)continue;let j=f.join("");f.length=0,h=!1;let k=0,l=j.indexOf("\n",k);for(;-1!==l;){if(!1===b(j.slice(k,l)))return;k=l+1,l=j.indexOf("\n",k)}k<j.length&&f.push(j.slice(k))}let i=d.end();i&&f.push(i),f.length>0&&b(f.join(""))}finally{(0,e.closeSync)(c)}}function C(a,b){let c=!0,d=!1,e=!1,f=!1,g=null;try{B(a,a=>{let h;if(c&&(c=!1,n(a)))return;let i=a.trim();if(i){try{h=JSON.parse(i)}catch{return}if((0,j.u4)(h)){if(!d)return"session"!==h.type||"string"!=typeof h.id?(f=!0,!1):(d=!0,!(e="number"!=typeof h.version||h.version<3)&&void 0);if("session"!==h.type&&h.id===b)return g=h,!1}}})}catch{return null}return f||!d?null:e?D(a).entries.find(a=>a.id===b)??null:g}function D(a,b={}){let c,f,g;try{c=(0,e.statSync)(a).size}catch{return{header:null,entries:[],titleSlot:void 0}}if(c>A)return{header:null,entries:[],titleSlot:void 0,error:"too_large"};let h=[],i=!0;try{B(a,a=>{if(i&&(i=!1,f=n(a)))return;let b=a.trim();if(b)try{let a=JSON.parse(b);(0,j.u4)(a)&&h.push(a)}catch{}})}catch(b){let a=b instanceof RangeError;return{header:null,entries:[],titleSlot:f,...a?{error:"too_large"}:{}}}let k=h[0];if(!k||"session"!==k.type||"string"!=typeof k.id)return{header:null,entries:[],titleSlot:f};let l=h.slice(1).filter(a=>"session"!==a.type);return!((g=k.version??1)>=3)&&(g<2&&function(a,b){a.version=2;let c=new Set,e=null;for(let a of b)if(a.id=function(a){for(let b=0;b<100;b++){let b=(0,d.randomUUID)().slice(-8);if(!a.has(b))return b}return(0,d.randomUUID)()}(c),c.add(a.id),a.parentId=e,e=a.id,"compaction"===a.type&&"number"==typeof a.firstKeptEntryIndex){let c=a.firstKeptEntryIndex>=1?b[a.firstKeptEntryIndex-1]:void 0;c&&(a.firstKeptEntryId=c.id),delete a.firstKeptEntryIndex}}(k,l),g<3&&function(a,b){for(let c of(a.version=3,b))if("message"===c.type){let a=c.message;"hookMessage"===a.role&&(a.role="custom")}}(k,l)),f&&(f.title?(k.title=f.title,f.source?k.titleSource=f.source:delete k.titleSource):(delete k.title,delete k.titleSource)),b.resolveBlobs&&function(a,b={}){for(let c of a)(!b.skipToolResultImages||"message"!==c.type||"toolResult"!==c.message.role)&&y(c)&&x(c,void 0)}(l,{skipToolResultImages:b.skipToolResultImages}),{header:k,entries:l,titleSlot:f}}function E(a,b){let c,d,e=a.indexOf("\n");if(-1===e){if(Buffer.byteLength(a,"utf8")>=b)return null;e=a.length}let f=a.slice(0,e).trim();if(!f)return null;let g=n(f);if(g){let d=a.slice(e+1),f=d.indexOf("\n");if(-1===f&&Buffer.byteLength(d,"utf8")+e>=b)return null;c=(-1===f?d:d.slice(0,f)).trim()}else c=f;if(!c)return null;try{d=JSON.parse(c)}catch{return null}return(0,j.u4)(d)&&"session"===d.type?(g?.title?(d.title=g.title,g.source&&(d.titleSource=g.source)):g&&(delete d.title,delete d.titleSource),d):null}function F(a){let b,c;try{b=(0,e.openSync)(a,"r")}catch{return null}try{let a=Buffer.allocUnsafe(65792),d=(0,e.readSync)(b,a,0,a.length,0);c=a.subarray(0,d).toString("utf8")}finally{(0,e.closeSync)(b)}return E(c,65792)}function G(a){let b=new Map;for(let c of a)"label"===c.type&&(c.label?b.set(c.targetId,c.label):b.delete(c.targetId));let c=new Map,d=[];for(let d of a)c.set(d.id,{entry:d,children:[],label:b.get(d.id)});for(let b of a){let a=c.get(b.id);if(null===b.parentId||b.parentId===b.id){d.push(a);continue}let e=c.get(b.parentId);e?e.children.push(a):d.push(a)}let e=(a,b)=>new Date(a.entry.timestamp).getTime()-new Date(b.entry.timestamp).getTime(),f=[...d];for(;f.length>0;){let a=f.pop();a.children.sort(e),f.push(...a.children)}return d}function H(a){return a.length>0?a[a.length-1].id:null}function I(a){let b=a.endsWith("\\")?a.slice(0,-1):a;try{return JSON.parse(`"${b}"`)}catch{return b.replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function J(a,b,c=0){let d=a.indexOf(`"${b}"`,c);if(-1===d)return;let e=a.indexOf(":",d+b.length+2);if(-1===e)return;let f=e+1;for(;f<a.length;){let b=a.charCodeAt(f);if(32!==b&&9!==b&&10!==b&&13!==b)break;f++}if(34!==a.charCodeAt(f))return;let g=f+1,h=!1;for(let b=g;b<a.length;b++){let c=a.charCodeAt(b);if(h){h=!1;continue}if(92===c){h=!0;continue}if(34===c)return I(a.slice(g,b))}return I(a.slice(g))}function K(a){if(void 0!==a)return a.trim()?a:null}function L(a,b=!0){try{let c,[d,f,g,h]=function(a,b){let c=(0,e.statSync)(a),d=(0,e.openSync)(a,"r");try{let a=Math.min(4096,c.size),f=Buffer.allocUnsafe(a),g=a>0?(0,e.readSync)(d,f,0,a,0):0,h=f.subarray(0,g).toString("utf8"),i="";if(b>0&&c.size>0){let a=Math.min(b,c.size),f=Buffer.allocUnsafe(a),g=(0,e.readSync)(d,f,0,a,c.size-a);i=f.subarray(0,g).toString("utf8")}return[h,i,c.size,c.mtime]}finally{(0,e.closeSync)(d)}}(a,32768*!!b),i=p(d),k=function(a,b){let c,d=b[0],e=K(d?.type==="title"&&"string"==typeof d.title?d.title:void 0),f=function(a,b){if(a?.type==="session"&&"string"==typeof a.id)return{id:a.id,cwd:"string"==typeof a.cwd?a.cwd:void 0,title:null===b?void 0:b??("string"==typeof a.title?a.title:void 0),parentSession:"string"==typeof a.parentSession?a.parentSession:void 0,timestamp:"string"==typeof a.timestamp?a.timestamp:void 0}}(b[+(d?.type==="title")],e);if(f)return f;let g=!0;for(let b of a.split(/\r?\n/)){let a=b.trim();if(a){if(g&&"title"===J(a,"type")){c=K(J(a,"title")),g=!1;continue}return function(a,b){if("session"!==J(a,"type"))return;let c=J(a,"id");if(c)return{id:c,cwd:J(a,"cwd"),title:null===b?void 0:b??J(a,"title"),parentSession:J(a,"parentSession"),timestamp:J(a,"timestamp")}}(a,c)}}}(d,i);if(!k)return;let l=0,m="";for(let a=1;a<i.length;a++){let b=i[a];"compaction"===b.type&&"string"==typeof b.shortSummary&&(c=b.shortSummary),"message"===b.type&&b.message&&(l++,"user"!==b.message.role||m||(m=function(a){if("string"==typeof a)return a;if(!Array.isArray(a))return"";let b=[];for(let c of a)(0,j.u4)(c)&&"text"===c.type&&"string"==typeof c.text&&b.push(c.text);return b.join(" ")}(b.message.content)))}m||=function(a){let b,c=a.indexOf('"role"');for(;-1!==c;){let d=J(a,"role",c),e=J(a,"content",c)??J(a,"text",c);if(e){if("user"===d)return e;b||"developer"!==d&&"assistant"!==d||(b=e)}c=a.indexOf('"role"',c+6)}return b}(d)??"";let n=Math.max(l,function(a){let b=0,c=0;for(;c<a.length;){let d=a.indexOf('"type"',c);if(-1===d)break;let e=a.indexOf(":",d+6);if(-1===e)break;"message"===J(a,"type",d)&&b++,c=e+1}return b}(d));return{path:a,id:k.id,cwd:k.cwd??"",title:k.title??c,parentSessionPath:k.parentSession,created:new Date(k.timestamp??""),modified:h,messageCount:n,size:g,firstMessage:m||"(no messages)",status:b?function(a){if(!a)return"unknown";let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c,d=b[a];if(123===d.charCodeAt(0)){try{c=JSON.parse(d)}catch{continue}if("message"===c.type&&c.message)return function(a){switch(a.role){case"assistant":{switch(a.stopReason){case"error":return"error";case"aborted":return"aborted";case"length":return"interrupted"}let b=a.content;if(Array.isArray(b)&&b.some(a=>(0,j.u4)(a)&&"toolCall"===a.type))return"interrupted";return"complete"}case"toolResult":return"interrupted";case"user":return"pending";default:return"unknown"}}(c.message)}}return"unknown"}(f):void 0}}catch{return}}async function M(){let a=(0,k.tE)(),b=await O(a),c=[];for(let a of b){let b=function(a){let b;try{b=(0,e.statSync)(a)}catch{return}let c=(globalThis.__ompSessionScanCache||(globalThis.__ompSessionScanCache=new Map),globalThis.__ompSessionScanCache),d=c.get(a);if(d&&d.size===b.size&&d.mtimeMs===b.mtimeMs)return c.delete(a),c.set(a,d),d.info;d&&c.delete(a);let f=L(a,!1);if(f)for(c.set(a,{size:b.size,mtimeMs:b.mtimeMs,info:f});c.size>2048;){let a=c.keys().next().value;if(void 0===a)break;c.delete(a)}return f}(a);b&&c.push(b)}return c.sort((a,b)=>b.modified.getTime()-a.modified.getTime()),c}function N(){globalThis.__ompSessionFileListCache?.clear()}async function O(a){let b;try{b=(0,e.statSync)(a)}catch{return[]}globalThis.__ompSessionFileListCache||(globalThis.__ompSessionFileListCache=new Map);let c=globalThis.__ompSessionFileListCache,d=c.get(a);if(d&&d.rootMtimeMs===b.mtimeMs){let b=!1;try{for(let c of l(a,{withFileTypes:!0})){if(!c.isDirectory())continue;let g=f.join(a,c.name);if((0,e.statSync)(g).mtimeMs>d.subMaxMtimeMs){b=!0;break}}}catch{b=!0}if(!b)return d.files}let g=function(a){let b=[];try{for(let c of l(a,{withFileTypes:!0})){let d;if(!c.isDirectory())continue;let e=f.join(a,c.name);try{d=l(e,{withFileTypes:!0})}catch{continue}for(let a of d)a.isFile()&&a.name.endsWith(".jsonl")&&b.push(f.join(e,a.name))}}catch{return[]}return b}(a),h=0;try{for(let b of l(a,{withFileTypes:!0}))b.isDirectory()&&(h=Math.max(h,(0,e.statSync)(f.join(a,b.name)).mtimeMs))}catch{}return c.set(a,{rootMtimeMs:b.mtimeMs,subMaxMtimeMs:h,files:g}),g}function P(a,b,c){let d,f,g=b.replace(/[\u0000-\u001f\u007f-\u009f]/g," ").replace(/ +/g," ").trim();if(!g)return!1;let h={title:g,source:c,updatedAt:new Date().toISOString()};if(function(a){let b;try{b=(0,e.openSync)(a,"r")}catch{return}try{let a=Buffer.allocUnsafe(256),c=(0,e.readSync)(b,a,0,a.length,0),d=a.subarray(0,c).toString("utf8"),f=d.indexOf("\n");if(f<0)return;return n(d.slice(0,f))}finally{(0,e.closeSync)(b)}}(a)){let b=Buffer.from(o(h),"utf8"),c=(0,e.openSync)(a,"r+");try{let a=0;for(;a<b.length;){let d=(0,e.writeSync)(c,b,a,b.length-a,a);if(0===d)throw Error("Short write while updating session title slot");a+=d}}finally{(0,e.closeSync)(c)}return!0}try{d=(0,e.statSync)(a).size}catch{return!1}if(d>A)return!1;let i=(0,e.readFileSync)(a,"utf8").split("\n"),j=i.findIndex(a=>a.trim().length>0);if(-1===j)throw Error("Cannot rename an empty session file");try{f=JSON.parse(i[j])}catch{throw Error("Cannot rename a session file with a malformed header")}if("session"!==f.type)throw Error("Not a session file");return f.title=g,f.titleSource=c,i[j]=JSON.stringify(f),Q(a,o(h)+i.join("\n"),"title"),!0}function Q(a,b,c="rewrite"){let d=f.dirname(a),g=(0,e.mkdtempSync)(f.join(d,`.ompgui-${c}-`)),h=f.join(g,f.basename(a));try{(0,e.writeFileSync)(h,b,"utf8"),(0,e.renameSync)(h,a)}finally{try{(0,e.rmdirSync)(g)}catch{(0,e.rmSync)(g,{recursive:!0,force:!0})}}}function R(a,b={}){let c=f.resolve(b.sessionsRoot??(0,k.tE)()),d=f.resolve(a),g=f.relative(c,d);if(!g||g.startsWith(".."+f.sep)||f.isAbsolute(g)||!g.endsWith(".jsonl"))throw Error("Session path is outside the active OMP sessions directory");if(!(0,e.lstatSync)(d).isFile())throw Error("Session path is not a regular file");let h=f.resolve(b.archiveRoot??(0,k.ny)()),j=f.join(h,`${g}.gz`),l=j.slice(0,-3);if((0,e.existsSync)(j)||(0,e.existsSync)(l))throw Error("Archived session destination already exists");let m=d.slice(0,-6),n=j.slice(0,-3);(0,e.mkdirSync)(f.dirname(j),{recursive:!0});let o=(0,e.mkdtempSync)(f.join(f.dirname(j),".ompgui-archive-")),p=f.join(o,f.basename(j)),q=f.join(o,f.basename(d)),r=!1,s=!1,t=!1;try{if((0,e.writeFileSync)(p,(0,i.gzipSync)((0,e.readFileSync)(d),{level:9})),(0,e.renameSync)(p,j),r=!0,(0,e.unlinkSync)(d),s=!0,(0,e.existsSync)(m)){if((0,e.existsSync)(n))throw Error("Archived session artifacts destination already exists");(0,e.mkdirSync)(f.dirname(n),{recursive:!0}),(0,e.renameSync)(m,n),t=!0}return j}catch(b){if(t)try{(0,e.renameSync)(n,m)}catch{}let a=!0;if(s&&r){a=!1;try{(0,e.writeFileSync)(q,(0,i.gunzipSync)((0,e.readFileSync)(j))),(0,e.mkdirSync)(f.dirname(d),{recursive:!0}),(0,e.renameSync)(q,d),a=!0}catch{}}if(r&&a)try{(0,e.unlinkSync)(j)}catch{}throw b}finally{try{(0,e.rmSync)(o,{recursive:!0,force:!0})}catch{}}}class S extends Error{constructor(a,b){super(b),this.name="SessionArchiveError",this.code=a}}function T(a){try{return(0,e.lstatSync)(a),!0}catch{return!1}}function U(a,b){let c=f.relative(a,b),d=a;for(let a of c.split(f.sep))if(a){d=f.join(d,a);try{if((0,e.lstatSync)(d).isSymbolicLink())throw new S("invalid_key","Archive path contains a symbolic-link escape")}catch(a){if(a instanceof S)throw a;break}}}async function V(a,b){return new Promise((c,d)=>{let f=(0,e.createReadStream)(a),g=(0,i.createGunzip)(),h=[],j=0,k=!1,l=a=>{k||(k=!0,f.destroy(),g.destroy(),d(a))},m=()=>{k||(k=!0,f.destroy(),g.destroy(),c(Buffer.concat(h,j)))};f.on("error",l),g.on("error",l),g.on("data",a=>{if(k)return;let c=b-j;if(c<=0)return void m();let d=a.subarray(0,c);h.push(d),(j+=d.length)>=b&&m()}),g.on("end",m),f.pipe(g)})}async function W(a={}){let b=f.resolve(a.archiveRoot??(0,k.ny)()),c=function(a){let b,c=[];try{b=l(a,{withFileTypes:!0})}catch{return c}for(let d of b){let b;if(c.length>=500)break;let e=f.join(a,d.name);if(d.isFile()&&d.name.endsWith(".jsonl.gz")){c.push(e);continue}if(d.isDirectory()){try{b=l(e,{withFileTypes:!0})}catch{continue}for(let a of b){if(c.length>=500)break;a.isFile()&&a.name.endsWith(".jsonl.gz")&&c.push(f.join(e,a.name))}}}return c}(b);return(await Promise.all(c.map(async a=>{let c;try{if(!(0,e.lstatSync)(a).isFile())return;c=(0,e.statSync)(a);let d=await V(a,65792),g=E(d.toString("utf8"),65792);if(!g||"string"!=typeof g.id||0===g.id.length)return;let h=f.relative(b,a),i=a.slice(0,-3);return{key:h.split(f.sep).join("/"),id:g.id,..."string"==typeof g.title&&g.title?{name:g.title}:{},..."string"==typeof g.cwd&&g.cwd?{cwd:g.cwd}:{},created:function(a,b){if("string"==typeof a){let b=new Date(a);if(!Number.isNaN(b.getTime()))return b.toISOString()}return b.toISOString()}(g.timestamp,c.mtime),modified:c.mtime.toISOString(),size:c.size,hasArtifacts:T(i)&&(0,e.lstatSync)(i).isDirectory()}}catch{return}}))).filter(a=>!!a).sort((a,b)=>b.modified.localeCompare(a.modified))}async function X(a,b={}){let c,d=f.resolve(b.archiveRoot??(0,k.ny)()),g=f.resolve(b.sessionsRoot??(0,k.tE)()),j=function(a,b){if("string"!=typeof a||0===a.length||a.length>1024||a.includes("\\")||a.includes("\0")||a.startsWith("/")||f.isAbsolute(a)||f.win32.isAbsolute(a)||/^[A-Za-z]:/.test(a)||!a.endsWith(".jsonl.gz"))throw new S("invalid_key","Invalid archived session key");let c=a.split("/");if(c.some(a=>0===a.length||"."===a||".."===a))throw new S("invalid_key","Invalid archived session key");let d=f.resolve(b,...c),e=f.relative(b,d);if(!e||e.startsWith(".."+f.sep)||f.isAbsolute(e))throw new S("invalid_key","Invalid archived session key");return U(b,d),d}(a,d);try{c=(0,e.lstatSync)(j)}catch{throw new S("not_found","Archived session was not found")}if(!c.isFile())throw new S("not_found","Archived session was not found");let l=f.relative(d,j).slice(0,-3),m=f.resolve(g,l);U(g,m);let n=j.slice(0,-3),o=m.slice(0,-6);if(T(m)||T(o))throw new S("destination_conflict","Active session destination already exists");if(T(n)&&!(0,e.lstatSync)(n).isDirectory())throw new S("invalid_archive","Archived session artifacts are not a directory");(0,e.mkdirSync)(f.dirname(m),{recursive:!0});let p=(0,e.mkdtempSync)(f.join(f.dirname(m),".ompgui-restore-")),q=f.join(p,f.basename(m)),r=!1,s=!1,t=null;try{if(await (0,h.pipeline)((0,e.createReadStream)(j),(0,i.createGunzip)(),(0,e.createWriteStream)(q,{flags:"wx"})),!(t=F(q))||"string"!=typeof t.id||0===t.id.length)throw new S("invalid_session_header","Restored archive has an invalid session header");if((0,e.renameSync)(q,m),r=!0,T(n)){if(T(o))throw new S("destination_conflict","Active session artifacts destination already exists");(0,e.renameSync)(n,o),s=!0}return(0,e.unlinkSync)(j),{path:m,id:t.id,header:t}}catch(a){if(s)try{(0,e.renameSync)(o,n)}catch{}if(r)try{(0,e.unlinkSync)(m)}catch{}if(a instanceof S)throw a;throw new S("restore_failed",a instanceof Error?a.message:String(a))}finally{try{(0,e.rmSync)(p,{recursive:!0,force:!0})}catch{}}}function Y(a){if((0,e.unlinkSync)(a),!a.endsWith(".jsonl"))return;let b=a.slice(0,-6);try{(0,e.rmSync)(b,{recursive:!0,force:!0})}catch{}}},74244:(a,b,c)=>{"use strict";c.d(b,{z:()=>e});var d=c(58864);function e(a,b=process.platform){return(0,d.w)(a,b)}},78335:()=>{},78573:(a,b,c)=>{"use strict";c.d(b,{Uv:()=>H,O8:()=>w,HA:()=>N,cr:()=>C,DK:()=>D,td:()=>E,mD:()=>q,BR:()=>x,dQ:()=>o,eP:()=>y,UB:()=>v,u1:()=>u,os:()=>t});var d=c(55511),e=c(29021),f=c(33873);c(85887);var g=c(63945),h=c(78970),i=c(20565),j=c(57050),k=c(45902),l=c(24923),m=c(74244);async function n(){let a=await (0,g.L1)(),b=new Map,c=new Set;for(let d of a)b.set((0,k.$)(d.path),d.id),c.add(d.id);let d=[...new Set(a.map(a=>a.cwd).filter(Boolean))],e=new Map;for(let a=0;a<d.length;a+=6){let b=d.slice(a,a+6);await Promise.all(b.map(async a=>{e.set(a,await (0,l.KI)(a))}))}return a.map(a=>{var d;let f;w(a.id,a.path);let g=a.cwd?e.get(a.cwd):void 0;return{path:a.path,id:a.id,cwd:a.cwd,name:a.title,created:a.created instanceof Date&&!Number.isNaN(a.created.getTime())?a.created.toISOString():a.modified.toISOString(),modified:a.modified.toISOString(),messageCount:a.messageCount,firstMessage:a.firstMessage||"(no messages)",parentSessionId:a.parentSessionPath?(d=a.parentSessionPath,(f=b.get((0,k.$)(d)))||(c.has(d)?d:void 0)):void 0,projectRoot:g?.projectRoot??a.cwd,projectKey:(0,m.z)(g?.projectRoot??a.cwd),...g?.isWorktree&&g.branch?{worktreeBranch:g.branch}:{}}})}async function o(){let a=globalThis.__piSessionListGeneration??0;if(globalThis.__piSessionListCache&&Date.now()-globalThis.__piSessionListCache.ts<p)return globalThis.__piSessionListCache.data;if(globalThis.__piSessionListPromise&&globalThis.__piSessionListPromiseGeneration===a)return globalThis.__piSessionListPromise;let b=n().then(b=>((globalThis.__piSessionListGeneration??0)===a&&(globalThis.__piSessionListCache={data:b,ts:Date.now()}),b)).finally(()=>{globalThis.__piSessionListPromise===b&&(globalThis.__piSessionListPromise=void 0,globalThis.__piSessionListPromiseGeneration=void 0)});return globalThis.__piSessionListPromise=b,globalThis.__piSessionListPromiseGeneration=a,b}let p=3e4;function q(){globalThis.__piSessionListGeneration=(globalThis.__piSessionListGeneration??0)+1,globalThis.__piSessionListCache=void 0,(0,g.I3)(),globalThis.__ompSessionDocumentCache?.clear()}function r(){return globalThis.__piSessionPathCache||(globalThis.__piSessionPathCache=new Map),globalThis.__piSessionPathCache}function s(){return globalThis.__piPathToSessionIdCache||(globalThis.__piPathToSessionIdCache=new Map),globalThis.__piPathToSessionIdCache}async function t(a){let b=r().get(a);if(b){if((0,e.existsSync)(b))return b;x(a),q()}await o();let c=r().get(a);return c?(0,e.existsSync)(c)?c:(x(a),null):null}async function u(a){let b=(0,k.$)(a),c=s().get(b);return c||(await o(),s().get(b))}async function v(a){if(!a)return;let b=await u(a);return b||(await t(a)?a:void 0)}function w(a,b){let c=(0,f.normalize)(b),d=(0,k.$)(c),e=r(),g=s(),h=e.get(a),i=h?(0,k.$)(h):void 0,j=g.get(d),l=j?e.get(j):void 0;i&&i!==d&&g.get(i)===a&&g.delete(i),j&&j!==a&&l&&(0,k.$)(l)===d&&e.delete(j),e.set(a,c),g.set(d,a)}function x(a){let b=r(),c=s(),d=b.get(a);b.delete(a);let e=d?(0,k.$)(d):void 0;e&&c.get(e)===a&&c.delete(e)}function y(a){return(0,g.Hb)(a)}function z(a){try{let b=(0,e.statSync)(a);return{dev:b.dev,ino:b.ino,size:b.size,mtimeMs:b.mtimeMs,ctimeMs:b.ctimeMs}}catch{return null}}function A(a,b){return a.dev===b.dev&&a.ino===b.ino&&a.size===b.size&&a.mtimeMs===b.mtimeMs&&a.ctimeMs===b.ctimeMs}function B(a){let b=[a];for(;b.length>0;){let a=b.pop();if(!(!a||Object.isFrozen(a))){for(let c of Object.values(a))"object"!=typeof c||null===c||Object.isFrozen(c)||b.push(c);Object.freeze(a)}}return a}function C(a){let b;try{b=e.realpathSync.native(a)}catch{return B((0,g.Fy)(a))}let c=z(b);if(!c)return B((0,g.Fy)(b));let d=(globalThis.__ompSessionDocumentCache||(globalThis.__ompSessionDocumentCache=new Map),globalThis.__ompSessionDocumentCache),f=d.get(b);if(f&&A(f.identity,c))return d.delete(b),d.set(b,f),f.document;let h=B((0,g.Fy)(b)),i=z(b);if(i&&A(c,i)&&i.size<=0x4000000){d.set(b,{identity:i,sourceBytes:i.size,document:h});let a=0;for(let b of d.values())a+=b.sourceBytes;for(;d.size>32||a>0x4000000;){let b=d.keys().next().value;if(void 0===b)break;let c=d.get(b);d.delete(b),a-=c?.sourceBytes??0}}return h}function D(a){return C(a).entries}function E(a,b){let c=(0,g.Ee)(a,b);if(!c||"message"!==c.type||!(0,i.u4)(c.message))return null;let e=c.message;if("toolResult"!==e.role)return null;let f="content"in e?e.content:void 0,j="details"in e?e.details:void 0,k=function(a,b){let c=new Set,e=[],f=!1,i=(a,b)=>{f=!0;let g=(0,h.Si)(a),i=null===g?null:(0,d.createHash)("sha256").update(a,"base64").digest("hex"),j=null===i?`inline:${b}\0${a}`:`image:${b}\0${i}`;c.has(j)||(c.add(j),e.push(g??(0,h.x)(a)))},j=(a,b)=>{f=!0;let d=`image:${b}\0${a}`;c.has(d)||(c.add(d),e.push((0,g.I8)(a)??0))},k=(a,b)=>{if("object"!=typeof a||null===a||Array.isArray(a)||b&&"image"!==a.type)return;let c=a.source;if("object"==typeof c&&null!==c&&!Array.isArray(c)&&"base64"===c.type&&"string"==typeof c.data){let a="string"==typeof c.media_type?c.media_type:"";if(!a.toLowerCase().startsWith("image/"))return;let b=c.data;if("string"!=typeof b)return;if((0,g.zW)(b)){let c=(0,g.G)(b);c&&j(c,a);return}i(b,a);return}if("string"==typeof a.data&&"string"==typeof a.mimeType){if(!a.mimeType.toLowerCase().startsWith("image/"))return;if((0,g.zW)(a.data)){let b=(0,g.G)(a.data);b&&j(b,a.mimeType);return}i(a.data,a.mimeType)}};try{if(Array.isArray(a))for(let b of a)k(b,!0);if("object"==typeof b&&null!==b&&!Array.isArray(b)){let a=b.images;if(Array.isArray(a))for(let b of a)k(b,!1)}}catch{}return f?e:null}(f,j);if(!k)return null;(0,h.gy)(k);let l=Array.isArray(f)?f.filter(a=>(0,i.u4)(a)&&"image"===a.type):[],m={type:"message",id:c.id,parentId:c.parentId,timestamp:c.timestamp,message:{role:"toolResult",toolCallId:"media",content:l,details:(0,i.u4)(j)&&Array.isArray(j.images)?{images:j.images}:void 0}},n=(0,g.qd)([m])[0],o=n?.type==="message"&&(0,i.u4)(n.message)?n.message:null;if(!o||"toolResult"!==o.role)return null;let p=(0,h.K8)({content:"content"in o?o.content:void 0,details:"details"in o?o.details:void 0}),q=Math.max(0,k.length-p.length);return p.length>0||q>0?{images:p,missingCount:q}:null}function F(a){if("message"!==a.type||!(0,i.u4)(a.message)||"string"!=typeof a.message.role)return null;let b=a.message;return"assistant"!==b.role||(void 0===b.provider||"string"==typeof b.provider)&&(void 0===b.model||"string"==typeof b.model)&&("string"==typeof b.content||Array.isArray(b.content))?b:null}function G(a){if(!Array.isArray(a))return null;let b=new Set(["pending","in_progress","completed","blocked","abandoned"]),c=[];for(let d of a){if(!(0,i.u4)(d)||"string"!=typeof d.name||!Array.isArray(d.tasks))return null;let a=[];for(let c of d.tasks){if(!(0,i.u4)(c)||"string"!=typeof c.content||"string"!=typeof c.status||!b.has(c.status)||void 0!==c.blocker&&"string"!=typeof c.blocker)return null;a.push({content:c.content,status:c.status,..."string"==typeof c.blocker?{blocker:c.blocker}:{}})}c.push({name:d.name,tasks:a})}return c}function H(a,b,c={}){let d,e={messages:[],entryIds:[],thinkingLevel:"off",model:null,todoPhases:[]},f=new Map;for(let b of a)f.set(b.id,b);if(null===b||(b&&(d=f.get(b)),d||(d=a[a.length-1]),!d))return e;let g=[],h=new Set,j=d;for(;j&&!h.has(j.id);)h.add(j.id),g.push(j),j=j.parentId?f.get(j.parentId):void 0;g.reverse();let k="off",l={},m=!1,n=null;for(let a of g)if("thinking_level_change"===a.type)k=a.configured??a.thinkingLevel??"off";else if("model_change"===a.type)if(a.model){let b=a.role??"default";l[b]=a.model,"default"===b&&(m=!0)}else a.provider&&a.modelId&&(l.default=`${a.provider}/${a.modelId}`,m=!0);else if("message"===a.type){let b=F(a);b?.role==="assistant"&&!m&&"string"==typeof b.provider&&b.provider.length>0&&"string"==typeof b.model&&b.model.length>0&&(l.default=`${b.provider}/${b.model}`)}else"compaction"===a.type&&(n=a);let o=[],p=[],q=a=>{var b;let d="compaction"===a.type?(b=a,{role:"custom",customType:"compaction",content:a.id===n?.id?b.summary:"[Superseded compaction summary elided after a newer compaction]",display:!0,details:{tokensBefore:b.tokensBefore,firstKeptEntryId:b.firstKeptEntryId},timestamp:I(b.timestamp)}):N(a,c);d&&(o.push(d),p.push(a.id))};if(n){let a=n;q(a);let b=g.findIndex(b=>"compaction"===b.type&&b.id===a.id),c=!1;for(let d=0;d<b;d++){let b=g[d];b.id===a.firstKeptEntryId&&(c=!0),c&&q(b)}for(let a=b+1;a<g.length;a++)q(g[a])}else for(let a of g)q(a);let r=null,s=l.default;if(s){let a=s.indexOf("/");r=a>0?{provider:s.slice(0,a),modelId:s.slice(a+1)}:{provider:"",modelId:s}}return{messages:o,entryIds:p,thinkingLevel:k,model:r,todoPhases:function(a,b){if(null===b||0===a.length)return[];let c=new Map(a.map(a=>[a.id,a])),d=b?c.get(b):a[a.length-1],e=new Set;for(;d&&!e.has(d.id);){let a=d;if(e.add(a.id),d=a.parentId?c.get(a.parentId):void 0,"custom"===a.type&&"user_todo_edit"===a.customType){let b=(0,i.u4)(a.data)?G(a.data.phases):null;if(b)return b}let b=F(a);if(b?.role==="toolResult"){if("todo"!==b.toolName||b.isError)continue;let a=(0,i.u4)(b.details)?G(b.details.phases):null;if(a)return a}}return[]}(a,b)}}function I(a){let b=Date.parse(a);return Number.isNaN(b)?void 0:b}function J(a){return a.length<=240?a:`${[...a].slice(0,240).join("")}…`}let K=["index","id","agent","agentSource","status","task","assignment","lastIntent","toolCount","requests","tokens","contextTokens","contextWindow","cost","durationMs","modelRole","resolvedModel","resolvedModelIsFallback","retryFailure"],L=["index","id","agent","agentSource","status","task","assignment","exitCode","truncated","structuredOutput","durationMs","tokens","requests","contextTokens","contextWindow","modelRole","resolvedModel","resolvedModelIsFallback","error","aborted","abortReason","outputPath","patchPath","branchName","retryFailure"];function M(a,b=!1){if("toolResult"!==a.role||void 0===a.details)return a;let{details:c,...d}=a;if((0,i.u4)(c)){let d=b?(0,h.K8)({content:[],details:c}):[],e={};if("string"==typeof c.patch&&(e.patch=c.patch),"string"==typeof c.diff&&(e.diff=c.diff),"task"===a.toolName){let a=function(a){let b={},c=Array.isArray(a.results)?a.results:[],d=Array.isArray(a.progress)?a.progress:[];if(0===c.length&&0===d.length&&!(0,i.u4)(a.async))return null;if("number"==typeof a.totalDurationMs&&(b.totalDurationMs=a.totalDurationMs),(0,i.u4)(a.async)){let c=function(a){if(!(0,i.u4)(a))return;let b={};for(let c of["state","jobId","type"])"string"==typeof a[c]&&(b[c]=J(a[c]));return Object.keys(b).length>0?b:void 0}(a.async);c&&(b.async=c)}let e=(a,b)=>{if(!(0,i.u4)(a))return null;let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);for(let a of["task","assignment","error","abortReason","lastIntent","agent","modelRole","resolvedModel","outputPath","patchPath","branchName"])"string"==typeof c[a]&&(c[a]=J(c[a]));if("number"!=typeof c.cost){let b=(0,j.tw)(a.usage);void 0!==b&&(c.cost=b)}if(void 0!==a.retryFailure){let b=(0,j.D$)(a.retryFailure,J);b?c.retryFailure=b:delete c.retryFailure}if(void 0!==a.structuredOutput){let b=(0,j.bA)(a.structuredOutput,J);b?c.structuredOutput=b:delete c.structuredOutput}return c};return d.length>0&&(b.progress=d.slice(0,50).map(a=>e(a,K)).filter(a=>null!==a)),c.length>0&&(b.results=c.slice(0,50).map(a=>e(a,L)).filter(a=>null!==a)),Object.keys(b).length>0?b:null}(c);a&&Object.assign(e,a)}let f=a;if(d.length>0&&Array.isArray(a.content)&&(f=function(a,b){if(!Array.isArray(a.content))return a;let c=new Set;for(let b of a.content){if(!(0,i.u4)(b)||"image"!==b.type)continue;let a=(0,h.K8)({content:[b],details:{}})[0];a&&"string"==typeof a.data&&"string"==typeof a.mimeType&&c.add(`${a.mimeType}\0${a.data}`)}let d=b.filter(a=>{if("string"!=typeof a.data||"string"!=typeof a.mimeType)return!1;let b=`${a.mimeType}\0${a.data}`;return!c.has(b)&&(c.add(b),!0)});return 0===d.length?a:{...a,content:[...a.content,...d]}}(a,d)),Object.keys(e).length>0)return{...f,details:e};let{details:g,...k}=f;return k}return d}function N(a,b){switch(a.type){case"message":{let c=F(a);if(!c)return null;if("developer"===c.role)return{role:"custom",customType:"developer",content:c.content,display:!0,timestamp:c.timestamp};if("pythonExecution"===c.role){let a=c.output?`
3
3
  \`\`\`
4
4
  ${c.output}
5
5
  \`\`\``:"\n(no output)",b=c.cancelled?"\n(execution cancelled)":c.exitCode?`
@@ -7,6 +7,6 @@ Execution failed with code ${c.exitCode}`:"";return{role:"custom",customType:"py
7
7
  \`\`\`python
8
8
  ${c.code}
9
9
  \`\`\`${a}${b}`,display:!0,timestamp:c.timestamp}}if("fileMention"===c.role){let a=Array.isArray(c.files)?c.files.filter(a=>!!a&&"object"==typeof a&&"string"==typeof a.path):[];return{role:"custom",customType:"file-mention",content:`Attached file${1===a.length?"":"s"}:
10
- ${a.map(a=>`- ${a.path}`).join("\n")}`,display:!0,timestamp:c.timestamp}}if("toolResult"===c.role){let d=!0===b.deferToolResultImages,e=j(c);if("toolResult"!==e.role)return e;let f=(0,i.u4)(e.details)?e.details:void 0,g=(0,h.K8)({content:e.content,details:f}).length;if(d){let b=N(function(a){if("toolResult"!==a.role||!Array.isArray(a.content))return a;let b=0,c=0,d=new Set,e=a.content.filter(a=>{let e=function(a){let b,c;if(!(0,i.u4)(a)||"image"!==a.type||("string"==typeof a.data?(b=a.data,c="string"==typeof a.mimeType?a.mimeType:void 0):(0,i.u4)(a.source)&&"base64"===a.source.type&&"string"==typeof a.source.data&&(b=a.source.data,c="string"==typeof a.source.media_type?a.source.media_type:void 0),!b))return null;let d=b.endsWith("==")?2:+!!b.endsWith("=");return{bytes:Math.max(0,Math.floor(3*b.length/4)-d),mime:c}}(a);return!e||(b+=1,c+=e.bytes,e.mime&&d.add(e.mime),!1)});if(0===b)return a;let f=d.size>0?`: ${[...d].join(", ")}`:"";return e.push({type:"text",text:`[${b} tool result image${1===b?"":"s"} omitted from initial history payload${f}, ~${c} bytes]`}),{...a,content:e}}(e));return g>0&&"toolResult"===b.role?{...b,deferredImages:{entryId:a.id,count:g}}:b}let k=N(e,!0);if(!b.deferThinking||"assistant"!==k.role||!Array.isArray(k.content))return k;return{...k,content:k.content.map(a=>"thinking"===a.type&&"string"==typeof a.thinking&&""!==a.thinking.trim()?{...a,thinking:"",deferred:!0}:a)}}let d=N(j(c));if(!b.deferThinking||"assistant"!==d.role||!Array.isArray(d.content))return d;return{...d,content:d.content.map(a=>"thinking"===a.type&&"string"==typeof a.thinking&&""!==a.thinking.trim()?{...a,thinking:"",deferred:!0}:a)}}case"branch_summary":if(!a.summary)return null;return{role:"user",content:`*The conversation briefly explored another branch and returned with this summary:*
10
+ ${a.map(a=>`- ${a.path}`).join("\n")}`,display:!0,timestamp:c.timestamp}}if("toolResult"===c.role){let d=!0===b.deferToolResultImages,e=(0,i.u4)(c.details)?c.details:void 0,f=(0,h.K8)({content:c.content,details:e}).length;if(d){let b=M(function(a){if("toolResult"!==a.role||!Array.isArray(a.content))return a;let b=0,c=0,d=new Set,e=a.content.filter(a=>{let e=function(a){let b,c;if(!(0,i.u4)(a)||"image"!==a.type||("string"==typeof a.data?(b=a.data,c="string"==typeof a.mimeType?a.mimeType:void 0):(0,i.u4)(a.source)&&"base64"===a.source.type&&"string"==typeof a.source.data&&(b=a.source.data,c="string"==typeof a.source.media_type?a.source.media_type:void 0),!b))return null;let d=b.endsWith("==")?2:+!!b.endsWith("=");return{bytes:Math.max(0,Math.floor(3*b.length/4)-d),mime:c}}(a);return!e||(b+=1,c+=e.bytes,e.mime&&d.add(e.mime),!1)});if(0===b)return a;let f=d.size>0?`: ${[...d].join(", ")}`:"";return e.push({type:"text",text:`[${b} tool result image${1===b?"":"s"} omitted from initial history payload${f}, ~${c} bytes]`}),{...a,content:e}}(c));return f>0&&"toolResult"===b.role?{...b,deferredImages:{entryId:a.id,count:f}}:b}return M(c,!0)}let d=M(function(a){if("assistant"!==a.role)return a;let b=a.content;if(!Array.isArray(b))return a;let c=b.map(a=>((0,i.u4)(a)&&"toolCall"===a.type?{type:"toolCall",toolCallId:"string"==typeof a.toolCallId?a.toolCallId:"string"==typeof a.id?a.id:"",toolName:"string"==typeof a.toolName?a.toolName:"string"==typeof a.name?a.name:"",input:"object"!=typeof a.input||null===a.input||Array.isArray(a.input)?"object"!=typeof a.arguments||null===a.arguments||Array.isArray(a.arguments)?{}:a.arguments:a.input}:null)??a);return{...a,content:c}}(c));if(!b.deferThinking||"assistant"!==d.role||!Array.isArray(d.content))return d;return{...d,content:d.content.map(a=>"thinking"===a.type&&"string"==typeof a.thinking&&""!==a.thinking.trim()?{...a,thinking:"",deferred:!0}:a)}}case"branch_summary":if(!a.summary)return null;return{role:"user",content:`*The conversation briefly explored another branch and returned with this summary:*
11
11
 
12
- ${a.summary}`,timestamp:J(a.timestamp)};case"custom_message":return{role:"custom",customType:a.customType,content:a.content,display:a.display,details:a.details,timestamp:J(a.timestamp)};default:return null}}},78970:(a,b,c)=>{"use strict";function d(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}function e(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=d(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}function f(a){if("object"!=typeof a||null===a||Array.isArray(a))return null;let b=a.source;if("object"==typeof b&&null!==b&&!Array.isArray(b)&&"base64"===b.type&&"string"==typeof b.data){let a="string"==typeof b.media_type?b.media_type:"";return a.toLowerCase().startsWith("image/")?{type:"image",data:b.data,mimeType:a}:null}return"string"==typeof a.data&&"string"==typeof a.mimeType?a.mimeType.toLowerCase().startsWith("image/")?{type:"image",data:a.data,mimeType:a.mimeType}:null:null}c.d(b,{K8:()=>j,Si:()=>d,gy:()=>i,kc:()=>e,x:()=>h,zJ:()=>g});class g extends Error{constructor(a){super("count"===a?"Tool result images exceed the limit of 10 images":"per_image"===a?"Tool result image exceeds the per-image limit of 10MB":"Tool result images exceed the total limit of 25MB"),this.code="tool_result_images_too_large",this.name="ToolResultImagesTooLargeError",this.reason=a}}function h(a){return d(a)??Math.floor(3*a.length/4)}function i(a){if(a.length>10)throw new g("count");for(let b of a)if(b>0xa00000)throw new g("per_image");let b=0;for(let c of a)b+=c;if(b>0x1900000)throw new g("total")}function j(a){let b=new Set,c=[],d=a=>{if(!a||"string"!=typeof a.data||"string"!=typeof a.mimeType)return;let d=`${a.mimeType}\0${a.data}`;b.has(d)||(b.add(d),c.push(a))};try{if(a&&"object"==typeof a&&Array.isArray(a.content))for(let b of a.content)"object"!=typeof b||null===b||Array.isArray(b)||"image"===b.type&&d(f(b));let b=a&&"object"==typeof a?a.details:void 0;if("object"==typeof b&&null!==b&&!Array.isArray(b)){let a=b.images;if(Array.isArray(a))for(let b of a)d(f(b))}}catch{}return c}},85887:(a,b,c)=>{"use strict";c.d(b,{$M:()=>l,OK:()=>r,_8:()=>u,ny:()=>o,pA:()=>q,tE:()=>n,yG:()=>p});var d=c(29021),e=c(21820),f=c(33873);let g=/^[a-z0-9][a-z0-9._-]{0,63}$/,h=/^(?:CON|PRN|AUX|NUL|COM[0-9]|LPT[0-9])(?:\..*)?$/i;function i(a){let b=a?.trim();if(b&&"default"!==b){if("."===b||".."===b||b.endsWith(".")||!g.test(b)||h.test(b))throw Error(`Invalid OMP profile "${a}". Profile names must match ${g.source}, cannot be "." or "..", cannot end with ".", and cannot be a Windows reserved device name (CON, PRN, AUX, NUL, COM0-9, LPT0-9, or any of those with an extension).`);return b}}function j(){return void 0!==process.env.OMP_PROFILE?i(process.env.OMP_PROFILE):i(process.env.PI_PROFILE)}function k(){let a=f.join((0,e.homedir)(),process.env.PI_CONFIG_DIR||".omp"),b=j();return b?f.join(a,"profiles",b):a}function l(){let a=j(),b=process.env.PI_CODING_AGENT_DIR;return b&&!a?f.resolve(b):f.join(k(),"agent")}function m(a){let b=function(){let a,b;if("linux"!==process.platform&&"darwin"!==process.platform||(a=j(),(b=process.env.PI_CODING_AGENT_DIR)&&!a&&f.resolve(b)!==f.join(k(),"agent")))return;let c=process.env.XDG_DATA_HOME;if(c)try{let a=f.join(c,"omp"),b=j();if(b){let c=f.join(a,"profiles",b);return(0,d.existsSync)(c)?c:void 0}return(0,d.existsSync)(a)?a:void 0}catch{return}}();return f.join(b??l(),a)}function n(){return m("sessions")}function o(){return f.join(f.dirname(n()),"archive","sessions")}function p(){return m("blobs")}function q(){let a=l(),b=f.join(a,"config.yml");if((0,d.existsSync)(b))return b;let c=f.join(a,"config.yaml");return(0,d.existsSync)(c)?c:b}function r(){let a=l(),b=f.join(a,"models.yml");if((0,d.existsSync)(b))return b;let c=f.join(a,"models.yaml");return(0,d.existsSync)(c)?c:b}function s(a){try{return d.realpathSync.native(a)}catch{return a}}function t(a,b){let c=b.replace(/[/\\:]/g,"-");return c?a.endsWith("-")?`${a}${c}`:`${a}-${c}`:a}function u(a){let b,c=s(f.resolve(a)),d=s((0,e.homedir)()),g=s((0,e.tmpdir)()),h=f.relative(d,c),i=f.relative(g,c);return""!==h&&(h.startsWith("..")||f.isAbsolute(h))?""!==i&&(i.startsWith("..")||f.isAbsolute(i))?(b=f.resolve(c),`--${b.replace(/^[/\\]/,"").replace(/[/\\:]/g,"-")}--`):t("-tmp",i):t("-",h)}},96487:()=>{}};
12
+ ${a.summary}`,timestamp:I(a.timestamp)};case"custom_message":return{role:"custom",customType:a.customType,content:a.content,display:a.display,details:a.details,timestamp:I(a.timestamp)};default:return null}}},78970:(a,b,c)=>{"use strict";function d(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}function e(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=d(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}function f(a){if("object"!=typeof a||null===a||Array.isArray(a))return null;let b=a.source;if("object"==typeof b&&null!==b&&!Array.isArray(b)&&"base64"===b.type&&"string"==typeof b.data){let a="string"==typeof b.media_type?b.media_type:"";return a.toLowerCase().startsWith("image/")?{type:"image",data:b.data,mimeType:a}:null}return"string"==typeof a.data&&"string"==typeof a.mimeType?a.mimeType.toLowerCase().startsWith("image/")?{type:"image",data:a.data,mimeType:a.mimeType}:null:null}c.d(b,{K8:()=>j,Si:()=>d,gy:()=>i,kc:()=>e,x:()=>h,zJ:()=>g});class g extends Error{constructor(a){super("count"===a?"Tool result images exceed the limit of 10 images":"per_image"===a?"Tool result image exceeds the per-image limit of 10MB":"Tool result images exceed the total limit of 25MB"),this.code="tool_result_images_too_large",this.name="ToolResultImagesTooLargeError",this.reason=a}}function h(a){return d(a)??Math.floor(3*a.length/4)}function i(a){if(a.length>10)throw new g("count");for(let b of a)if(b>0xa00000)throw new g("per_image");let b=0;for(let c of a)b+=c;if(b>0x1900000)throw new g("total")}function j(a){let b=new Set,c=[],d=a=>{if(!a||"string"!=typeof a.data||"string"!=typeof a.mimeType)return;let d=`${a.mimeType}\0${a.data}`;b.has(d)||(b.add(d),c.push(a))};try{if(a&&"object"==typeof a&&Array.isArray(a.content))for(let b of a.content)"object"!=typeof b||null===b||Array.isArray(b)||"image"===b.type&&d(f(b));let b=a&&"object"==typeof a?a.details:void 0;if("object"==typeof b&&null!==b&&!Array.isArray(b)){let a=b.images;if(Array.isArray(a))for(let b of a)d(f(b))}}catch{}return c}},85887:(a,b,c)=>{"use strict";c.d(b,{$M:()=>l,OK:()=>r,_8:()=>u,ny:()=>o,pA:()=>q,tE:()=>n,yG:()=>p});var d=c(29021),e=c(21820),f=c(33873);let g=/^[a-z0-9][a-z0-9._-]{0,63}$/,h=/^(?:CON|PRN|AUX|NUL|COM[0-9]|LPT[0-9])(?:\..*)?$/i;function i(a){let b=a?.trim();if(b&&"default"!==b){if("."===b||".."===b||b.endsWith(".")||!g.test(b)||h.test(b))throw Error(`Invalid OMP profile "${a}". Profile names must match ${g.source}, cannot be "." or "..", cannot end with ".", and cannot be a Windows reserved device name (CON, PRN, AUX, NUL, COM0-9, LPT0-9, or any of those with an extension).`);return b}}function j(){return void 0!==process.env.OMP_PROFILE?i(process.env.OMP_PROFILE):i(process.env.PI_PROFILE)}function k(){let a=f.join((0,e.homedir)(),process.env.PI_CONFIG_DIR||".omp"),b=j();return b?f.join(a,"profiles",b):a}function l(){let a=j(),b=process.env.PI_CODING_AGENT_DIR;return b&&!a?f.resolve(b):f.join(k(),"agent")}function m(a){let b=function(){let a,b;if("linux"!==process.platform&&"darwin"!==process.platform||(a=j(),(b=process.env.PI_CODING_AGENT_DIR)&&!a&&f.resolve(b)!==f.join(k(),"agent")))return;let c=process.env.XDG_DATA_HOME;if(c)try{let a=f.join(c,"omp"),b=j();if(b){let c=f.join(a,"profiles",b);return(0,d.existsSync)(c)?c:void 0}return(0,d.existsSync)(a)?a:void 0}catch{return}}();return f.join(b??l(),a)}function n(){return m("sessions")}function o(){return f.join(f.dirname(n()),"archive","sessions")}function p(){return m("blobs")}function q(){let a=l(),b=f.join(a,"config.yml");if((0,d.existsSync)(b))return b;let c=f.join(a,"config.yaml");return(0,d.existsSync)(c)?c:b}function r(){let a=l(),b=f.join(a,"models.yml");if((0,d.existsSync)(b))return b;let c=f.join(a,"models.yaml");return(0,d.existsSync)(c)?c:b}function s(a){try{return d.realpathSync.native(a)}catch{return a}}function t(a,b){let c=b.replace(/[/\\:]/g,"-");return c?a.endsWith("-")?`${a}${c}`:`${a}-${c}`:a}function u(a){let b,c=s(f.resolve(a)),d=s((0,e.homedir)()),g=s((0,e.tmpdir)()),h=f.relative(d,c),i=f.relative(g,c);return""!==h&&(h.startsWith("..")||f.isAbsolute(h))?""!==i&&(i.startsWith("..")||f.isAbsolute(i))?(b=f.resolve(c),`--${b.replace(/^[/\\]/,"").replace(/[/\\:]/g,"-")}--`):t("-tmp",i):t("-",h)}},96487:()=>{}};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=8353,exports.ids=[8353],exports.modules={10229:(a,b,c)=>{c.d(b,{Jw:()=>n,y9:()=>w,pM:()=>l,Sb:()=>q,Ss:()=>t});var d=c(29021),e=c(21820),f=c(33873),g=c(63294),h=c(85887);function i(a){try{let b=JSON.parse((0,d.readFileSync)(a,"utf8"));return b.skills&&"object"==typeof b.skills?b.skills:{}}catch{return{}}}function j(a,b){let c=(0,f.relative)((0,f.resolve)(b),(0,f.resolve)(a));return""!==c&&".."!==c&&!c.startsWith(`..${f.sep}`)&&!(0,f.isAbsolute)(c)}function k(a,b,c){var d;let e=function(a,b){if(a[b])return a[b];let c=b.toLowerCase(),d=Object.keys(a).find(a=>a.toLowerCase()===c);return d?a[d]:void 0}(a,b);if(!e||"string"!=typeof e.source||!e.source.trim())return;let f="string"==typeof e.sourceType?e.sourceType:void 0,g=(d=e.source.trim(),"github"!==f?d.replace(/\/$/,""):d.replace(/^git\+/,"").replace(/^https?:\/\/github\.com\//,"").replace(/^git@github\.com:/,"").replace(/\.git$/,"").replace(/\/$/,""));if(!g)return;let h="string"==typeof e.skillPath?e.skillPath:void 0,i="string"==typeof e.ref?e.ref:void 0,j="global"===c?e.skillFolderHash:e.computedHash,k="string"==typeof j&&j?j:void 0,l="github"===f&&/^[\w.-]+\/[\w.-]+$/.test(g);return{package:`${g}@${b}`,scope:c,source:g,sourceType:f,skillsShUrl:"local"===f?void 0:function(a,b){if(!a||a.includes("://")||a.startsWith("git@"))return;let c=a.split("/").filter(Boolean).map(encodeURIComponent).join("/");if(c)return`https://skills.sh/${c}/${encodeURIComponent(b)}`}(g,b),...h&&{skillPath:h},...i&&{ref:i},...k&&{versionHash:k},canCheckForUpdates:!!(l&&h&&k&&("global"===c||!i))}}function l(a){let b=/^---\r?\n([\s\S]*?)\r?\n---\r?\n?/.exec(a);if(!b)return{frontmatter:{},body:a};try{let c=(0,g.qg)(b[1]);return{frontmatter:c&&"object"==typeof c&&!Array.isArray(c)?c:{},body:a.slice(b[0].length)}}catch{return{frontmatter:{},body:a.slice(b[0].length)}}}function m(a){let b=(0,e.homedir)(),c=(0,h.$M)(),g=function(a){let b=(0,e.homedir)(),c=[],g=f.resolve(a);for(;c.push(g),!(0,d.existsSync)(f.join(g,".git"))&&g!==b;){let a=f.dirname(g);if(a===g)break;g=a}return c}(a),i=g.filter(a=>a!==b),j=[];for(let a of i)j.push({dir:f.join(a,".omp","skills"),source:".omp",scope:"project",requireDescription:!0});j.push({dir:f.join(c,"skills"),source:".omp",scope:"user",requireDescription:!0});let k=process.env.CLAUDE_CONFIG_DIR||f.join(b,".claude");for(let a of(j.push({dir:f.join(k,"skills"),source:".claude",scope:"user"}),i))j.push({dir:f.join(a,".claude","skills"),source:".claude",scope:"project"});for(let a of i)j.push({dir:f.join(a,".agent","skills"),source:".agents",scope:"project"}),j.push({dir:f.join(a,".agents","skills"),source:".agents",scope:"project"});j.push({dir:f.join(b,".agent","skills"),source:".agents",scope:"user"}),j.push({dir:f.join(b,".agents","skills"),source:".agents",scope:"user"}),j.push({dir:f.join(b,".codex","skills"),source:".codex",scope:"user"}),j.push({dir:f.join(a,".codex","skills"),source:".codex",scope:"project"});let l=g[g.length-1];return j.push({dir:f.join(l,".github","skills"),source:".github",scope:"project",requireDescription:!0}),j.push({dir:f.join(c,"managed-skills"),source:"managed",scope:"user",requireDescription:!0}),j}function n(a){return m(a??(0,e.homedir)()).map(a=>a.dir)}let o=["disable-model-invocation","disableModelInvocation","hide"],p=o[0];function q(a){return o.some(b=>{var c;return!0===(c=a[b])||"true"===c})}let r=/^---\r?\n([\s\S]*?)\r?\n---(\r?\n|$)/,s=RegExp(`^(?:${o.join("|")})[ \\t]*:.*$`);function t(a,b){let c,d=r.exec(a);if(!d)return b?`---
1
+ "use strict";exports.id=6332,exports.ids=[6332],exports.modules={10229:(a,b,c)=>{c.d(b,{Jw:()=>n,y9:()=>w,pM:()=>l,Sb:()=>q,Ss:()=>t});var d=c(29021),e=c(21820),f=c(33873),g=c(63294),h=c(85887);function i(a){try{let b=JSON.parse((0,d.readFileSync)(a,"utf8"));return b.skills&&"object"==typeof b.skills?b.skills:{}}catch{return{}}}function j(a,b){let c=(0,f.relative)((0,f.resolve)(b),(0,f.resolve)(a));return""!==c&&".."!==c&&!c.startsWith(`..${f.sep}`)&&!(0,f.isAbsolute)(c)}function k(a,b,c){var d;let e=function(a,b){if(a[b])return a[b];let c=b.toLowerCase(),d=Object.keys(a).find(a=>a.toLowerCase()===c);return d?a[d]:void 0}(a,b);if(!e||"string"!=typeof e.source||!e.source.trim())return;let f="string"==typeof e.sourceType?e.sourceType:void 0,g=(d=e.source.trim(),"github"!==f?d.replace(/\/$/,""):d.replace(/^git\+/,"").replace(/^https?:\/\/github\.com\//,"").replace(/^git@github\.com:/,"").replace(/\.git$/,"").replace(/\/$/,""));if(!g)return;let h="string"==typeof e.skillPath?e.skillPath:void 0,i="string"==typeof e.ref?e.ref:void 0,j="global"===c?e.skillFolderHash:e.computedHash,k="string"==typeof j&&j?j:void 0,l="github"===f&&/^[\w.-]+\/[\w.-]+$/.test(g);return{package:`${g}@${b}`,scope:c,source:g,sourceType:f,skillsShUrl:"local"===f?void 0:function(a,b){if(!a||a.includes("://")||a.startsWith("git@"))return;let c=a.split("/").filter(Boolean).map(encodeURIComponent).join("/");if(c)return`https://skills.sh/${c}/${encodeURIComponent(b)}`}(g,b),...h&&{skillPath:h},...i&&{ref:i},...k&&{versionHash:k},canCheckForUpdates:!!(l&&h&&k&&("global"===c||!i))}}function l(a){let b=/^---\r?\n([\s\S]*?)\r?\n---\r?\n?/.exec(a);if(!b)return{frontmatter:{},body:a};try{let c=(0,g.qg)(b[1]);return{frontmatter:c&&"object"==typeof c&&!Array.isArray(c)?c:{},body:a.slice(b[0].length)}}catch{return{frontmatter:{},body:a.slice(b[0].length)}}}function m(a){let b=(0,e.homedir)(),c=(0,h.$M)(),g=function(a){let b=(0,e.homedir)(),c=[],g=f.resolve(a);for(;c.push(g),!(0,d.existsSync)(f.join(g,".git"))&&g!==b;){let a=f.dirname(g);if(a===g)break;g=a}return c}(a),i=g.filter(a=>a!==b),j=[];for(let a of i)j.push({dir:f.join(a,".omp","skills"),source:".omp",scope:"project",requireDescription:!0});j.push({dir:f.join(c,"skills"),source:".omp",scope:"user",requireDescription:!0});let k=process.env.CLAUDE_CONFIG_DIR||f.join(b,".claude");for(let a of(j.push({dir:f.join(k,"skills"),source:".claude",scope:"user"}),i))j.push({dir:f.join(a,".claude","skills"),source:".claude",scope:"project"});for(let a of i)j.push({dir:f.join(a,".agent","skills"),source:".agents",scope:"project"}),j.push({dir:f.join(a,".agents","skills"),source:".agents",scope:"project"});j.push({dir:f.join(b,".agent","skills"),source:".agents",scope:"user"}),j.push({dir:f.join(b,".agents","skills"),source:".agents",scope:"user"}),j.push({dir:f.join(b,".codex","skills"),source:".codex",scope:"user"}),j.push({dir:f.join(a,".codex","skills"),source:".codex",scope:"project"});let l=g[g.length-1];return j.push({dir:f.join(l,".github","skills"),source:".github",scope:"project",requireDescription:!0}),j.push({dir:f.join(c,"managed-skills"),source:"managed",scope:"user",requireDescription:!0}),j}function n(a){return m(a??(0,e.homedir)()).map(a=>a.dir)}let o=["disable-model-invocation","disableModelInvocation","hide"],p=o[0];function q(a){return o.some(b=>{var c;return!0===(c=a[b])||"true"===c})}let r=/^---\r?\n([\s\S]*?)\r?\n---(\r?\n|$)/,s=RegExp(`^(?:${o.join("|")})[ \\t]*:.*$`);function t(a,b){let c,d=r.exec(a);if(!d)return b?`---
2
2
  ${p}: true
3
3
  ---
4
- ${a}`:a;let e=d[0].includes("\r\n")?"\r\n":"\n",f=d[1].split(/\r?\n/),g=f.reduce((a,b,c)=>(s.test(b)&&a.push(c),a),[]);if(b)if(0===g.length)c=[`${p}: true`,...f];else{let a=g[0],b=/^([\w-]+)/.exec(f[a])?.[1]??p;c=f.map((c,d)=>d===a?`${b}: true`:c).filter((b,c)=>c===a||!g.includes(c))}else{if(0===g.length)return a;c=f.filter((a,b)=>!g.includes(b))}return`---${e}${c.join(e)}${e}---${d[2]}`+a.slice(d[0].length)}async function u(a,b){let c;try{let b=Reflect.get(d.promises,"readdir");c=await b(a.dir,{withFileTypes:!0})}catch(c){return"ENOENT"!==c.code&&b.push({type:"warning",message:`Failed to read skills directory: ${String(c)}`,path:a.dir}),[]}let e=[];return await Promise.all(c.map(async c=>{let g;if(c.name.startsWith(".")||!c.isDirectory()&&!c.isSymbolicLink())return;let h=f.join(a.dir,c.name,"SKILL.md");try{g=await d.promises.readFile(h,"utf8")}catch(a){"ENOENT"!==a.code&&b.push({type:"warning",message:"Failed to read skill file",path:h});return}let{frontmatter:i}=l(g);if(!1===i.enabled)return;let j="string"==typeof i.description?i.description:"";if(a.requireDescription&&!j)return;let k=i.name,m="string"==typeof k&&k.trim()?k.trim():c.name;e.push({name:m,description:j,filePath:h,baseDir:f.join(a.dir,c.name),disableModelInvocation:q(i),sourceInfo:{source:a.source,scope:a.scope}})})),e}async function v(a){let b=[],c=new Map;for(let d of m(a))for(let a of(await u(d,b)))c.has(a.name)||c.set(a.name,a);return{skills:[...c.values()].sort((a,b)=>{let c=a.name.toLowerCase().localeCompare(b.name.toLowerCase());return 0!==c?c:a.filePath.localeCompare(b.filePath)}),diagnostics:b}}async function w(a){let{skills:b,diagnostics:c}=await v(a);return{skills:function(a,{cwd:b,agentDir:c,globalLockPath:g=function(a={}){let b=a.homeDir??(0,e.homedir)(),c=a.xdgStateHome??(void 0===a.homeDir?process.env.XDG_STATE_HOME:void 0);return c?(0,f.join)(c,"skills",".skill-lock.json"):(0,f.join)(b,".agents",".skill-lock.json")}(),projectLockPath:h=(0,f.join)(b,"skills-lock.json")}){let l=i(g),m=i(h),n=[(0,f.join)(c,"skills"),(0,f.join)((0,e.homedir)(),".agents","skills")],o=[(0,f.join)(b,".omp","skills"),(0,f.join)(b,".agents","skills")];return a.map(a=>{if(!(0,d.existsSync)(a.filePath))return a;let b=n.some(b=>j(a.filePath,b))?k(l,a.name,"global"):o.some(b=>j(a.filePath,b))?k(m,a.name,"project"):void 0;return b?{...a,install:b}:a})}(b,{cwd:a,agentDir:(0,h.$M)()}),diagnostics:c}}},19038:(a,b,c)=>{c.d(b,{CU:()=>l,S7:()=>u});var d=c(79646),e=c(79748),f=c(21820),g=c(33873),h=c(28354);let i=process.env.SKILLS_API_URL||"https://skills.sh",j=(0,h.promisify)(d.execFile);class k extends Error{constructor(a){super(`HTTP ${a}`),this.status=a}}function l(a){let b=n(a.skillPath??""),c=b?`${a.source}/${b}`:a.source,d=a.ref?`#${encodeURIComponent(a.ref)}`:"",e=["skills","add",`${c}${d}`,"--skill",m(a.package),"-y","--agent","universal"];return"global"===a.scope&&e.push("-g"),e}function m(a){let b=a.lastIndexOf("@");return b>=0?a.slice(b+1):a}function n(a){let b=a.replace(/\\/g,"/");return b.toLowerCase().endsWith("/skill.md")?b=b.slice(0,-9):b.toLowerCase().endsWith("skill.md")&&(b=b.slice(0,-8)),b.replace(/\/$/,"")}function o(a,b,c,d){return{package:a.package,scope:a.scope,state:b,currentVersion:a.versionHash,latestVersion:c,message:d}}async function p(a,b,c){let d=await b(a,{cache:"no-store",headers:c,signal:AbortSignal.timeout(15e3)});if(!d.ok)throw new k(d.status);return d.json()}async function q(a){let b=`https://github.com/${a.source}.git`,c=a.ref||"HEAD",d=n(a.skillPath),h=await (0,e.mkdtemp)((0,g.join)((0,f.tmpdir)(),"omp-web-skill-check-"));try{await j("git",["init","--bare",h],{timeout:3e4}),await j("git",[`--git-dir=${h}`,"fetch","--depth=1","--filter=blob:none","--no-tags",b,c],{timeout:3e4});let a=d?`FETCH_HEAD:${d}`:"FETCH_HEAD^{tree}",{stdout:e}=await j("git",[`--git-dir=${h}`,"rev-parse",a],{timeout:3e4}),f=e.trim();if(!/^[0-9a-f]{40}$/i.test(f))throw Error("Invalid Git tree hash");return f}finally{await (0,e.rm)(h,{recursive:!0,force:!0})}}async function r(a,b){let c,d=a.ref||"HEAD",e=`https://api.github.com/repos/${a.source}/git/trees/${encodeURIComponent(d)}?recursive=1`,f={Accept:"application/vnd.github.v3+json","User-Agent":"omp-web"};b.githubToken&&(f.Authorization=`Bearer ${b.githubToken}`);let g=n(a.skillPath);try{let a=await p(e,b.fetcher,f);if(c="string"!=typeof a.sha||g?void 0:a.sha,g&&Array.isArray(a.tree)){let b=a.tree.find(a=>"tree"===a.type&&a.path===g);b&&"string"==typeof b.sha&&(c=b.sha)}}catch(d){if(!(d instanceof k)||![401,403,429].includes(d.status))throw d;c=await b.resolveGitTreeHash(a)}return c?o(a,c===a.versionHash?"up-to-date":"update-available",c):o(a,"error",void 0,"Remote skill path was not found.")}async function s(a,b){let[c,d]=a.source.split("/"),e=m(a.package).toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,""),f=`${b.skillsApiBase}/api/download/${encodeURIComponent(c)}/${encodeURIComponent(d)}/${encodeURIComponent(e)}`,g=await p(f,b.fetcher),h="string"==typeof g.hash?g.hash:void 0;return h?o(a,h===a.versionHash?"up-to-date":"update-available",h):o(a,"error",void 0,"skills.sh did not return a version hash.")}async function t(a,b={}){if(!a.canCheckForUpdates||!a.versionHash||!a.skillPath)return o(a,"unsupported",void 0,"This lock entry cannot be checked automatically.");let c={...b,fetcher:b.fetcher??fetch,skillsApiBase:b.skillsApiBase??i,resolveGitTreeHash:b.resolveGitTreeHash??q};try{return"global"===a.scope?await r(a,c):await s(a,c)}catch(b){return o(a,"error",void 0,b instanceof Error?b.message:String(b))}}async function u(a,b={}){let c=b.fetcher??fetch,d=new Map,e=async(a,b)=>{let e=d.get(a);return e||(e=c(a,b),d.set(a,e)),(await e).clone()};return Promise.all(a.map(a=>t(a,{...b,fetcher:e})))}},71354:(a,b,c)=>{c.d(b,{wz:()=>f.wz,mc:()=>j,B7:()=>l,A$:()=>k,uK:()=>h.uK,Nw:()=>f.Nw});var d=c(33873),e=c.n(d),f=c(25252),g=c(29021),h=c(58864),i=c(78573);async function j(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,i.dQ)(),d=new Set;for(let a of c)a.cwd&&d.add((0,f.Nw)(a.cwd)),a.projectRoot&&d.add((0,f.Nw)(a.projectRoot));for(let a of(0,f.HM)())d.add(a);return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function k(a,b){for(let c of b){let b=(0,h.uK)(a)||(0,h.uK)(c),d=b?e().win32:e(),f=b?"\\":e().sep,g=d.resolve(a),i=d.resolve(c),j=b?g.toLowerCase():g,k=b?i.toLowerCase():i,l=k.endsWith(f)?k:k+f;if(j===k||j.startsWith(l))return!0}return!1}function l(a,b){let c;try{c=(0,g.realpathSync)(a)}catch{return!1}let d=new Set;for(let a of b)try{d.add((0,g.realpathSync)(a))}catch{}return function(a,b){for(let c of b){let b=(0,h.uK)(a)||(0,h.uK)(c),d=b?e().win32:e(),f=b?"\\":e().sep,g=d.resolve(a),i=d.resolve(c),j=b?g.toLowerCase():g,k=b?i.toLowerCase():i,l=k.endsWith(f)?k:k+f;if(j===k||j.startsWith(l))return!0}return!1}(c,d)}}};
4
+ ${a}`:a;let e=d[0].includes("\r\n")?"\r\n":"\n",f=d[1].split(/\r?\n/),g=f.reduce((a,b,c)=>(s.test(b)&&a.push(c),a),[]);if(b)if(0===g.length)c=[`${p}: true`,...f];else{let a=g[0],b=/^([\w-]+)/.exec(f[a])?.[1]??p;c=f.map((c,d)=>d===a?`${b}: true`:c).filter((b,c)=>c===a||!g.includes(c))}else{if(0===g.length)return a;c=f.filter((a,b)=>!g.includes(b))}return`---${e}${c.join(e)}${e}---${d[2]}`+a.slice(d[0].length)}async function u(a,b){let c;try{let b=Reflect.get(d.promises,"readdir");c=await b(a.dir,{withFileTypes:!0})}catch(c){return"ENOENT"!==c.code&&b.push({type:"warning",message:`Failed to read skills directory: ${String(c)}`,path:a.dir}),[]}let e=[];return await Promise.all(c.map(async c=>{let g;if(c.name.startsWith(".")||!c.isDirectory()&&!c.isSymbolicLink())return;let h=f.join(a.dir,c.name,"SKILL.md");try{g=await d.promises.readFile(h,"utf8")}catch(a){"ENOENT"!==a.code&&b.push({type:"warning",message:"Failed to read skill file",path:h});return}let{frontmatter:i}=l(g);if(!1===i.enabled)return;let j="string"==typeof i.description?i.description:"";if(a.requireDescription&&!j)return;let k=i.name,m="string"==typeof k&&k.trim()?k.trim():c.name;e.push({name:m,description:j,filePath:h,baseDir:f.join(a.dir,c.name),disableModelInvocation:q(i),sourceInfo:{source:a.source,scope:a.scope}})})),e}async function v(a){let b=[],c=new Map;for(let d of m(a))for(let a of(await u(d,b)))c.has(a.name)||c.set(a.name,a);return{skills:[...c.values()].sort((a,b)=>{let c=a.name.toLowerCase().localeCompare(b.name.toLowerCase());return 0!==c?c:a.filePath.localeCompare(b.filePath)}),diagnostics:b}}async function w(a){let{skills:b,diagnostics:c}=await v(a);return{skills:function(a,{cwd:b,agentDir:c,globalLockPath:g=function(a={}){let b=a.homeDir??(0,e.homedir)(),c=a.xdgStateHome??(void 0===a.homeDir?process.env.XDG_STATE_HOME:void 0);return c?(0,f.join)(c,"skills",".skill-lock.json"):(0,f.join)(b,".agents",".skill-lock.json")}(),projectLockPath:h=(0,f.join)(b,"skills-lock.json")}){let l=i(g),m=i(h),n=[(0,f.join)(c,"skills"),(0,f.join)((0,e.homedir)(),".agents","skills")],o=[(0,f.join)(b,".omp","skills"),(0,f.join)(b,".agents","skills")];return a.map(a=>{if(!(0,d.existsSync)(a.filePath))return a;let b=n.some(b=>j(a.filePath,b))?k(l,a.name,"global"):o.some(b=>j(a.filePath,b))?k(m,a.name,"project"):void 0;return b?{...a,install:b}:a})}(b,{cwd:a,agentDir:(0,h.$M)()}),diagnostics:c}}},19038:(a,b,c)=>{c.d(b,{CU:()=>l,S7:()=>u});var d=c(79646),e=c(79748),f=c(21820),g=c(33873),h=c(28354);let i=process.env.SKILLS_API_URL||"https://skills.sh",j=(0,h.promisify)(d.execFile);class k extends Error{constructor(a){super(`HTTP ${a}`),this.status=a}}function l(a){let b=n(a.skillPath??""),c=b?`${a.source}/${b}`:a.source,d=a.ref?`#${encodeURIComponent(a.ref)}`:"",e=["skills","add",`${c}${d}`,"--skill",m(a.package),"-y","--agent","universal"];return"global"===a.scope&&e.push("-g"),e}function m(a){let b=a.lastIndexOf("@");return b>=0?a.slice(b+1):a}function n(a){let b=a.replace(/\\/g,"/");return b.toLowerCase().endsWith("/skill.md")?b=b.slice(0,-9):b.toLowerCase().endsWith("skill.md")&&(b=b.slice(0,-8)),b.replace(/\/$/,"")}function o(a,b,c,d){return{package:a.package,scope:a.scope,state:b,currentVersion:a.versionHash,latestVersion:c,message:d}}async function p(a,b,c){let d=await b(a,{cache:"no-store",headers:c,signal:AbortSignal.timeout(15e3)});if(!d.ok)throw new k(d.status);return d.json()}async function q(a){let b=`https://github.com/${a.source}.git`,c=a.ref||"HEAD",d=n(a.skillPath),h=await (0,e.mkdtemp)((0,g.join)((0,f.tmpdir)(),"omp-web-skill-check-"));try{await j("git",["init","--bare",h],{timeout:3e4}),await j("git",[`--git-dir=${h}`,"fetch","--depth=1","--filter=blob:none","--no-tags",b,c],{timeout:3e4});let a=d?`FETCH_HEAD:${d}`:"FETCH_HEAD^{tree}",{stdout:e}=await j("git",[`--git-dir=${h}`,"rev-parse",a],{timeout:3e4}),f=e.trim();if(!/^[0-9a-f]{40}$/i.test(f))throw Error("Invalid Git tree hash");return f}finally{await (0,e.rm)(h,{recursive:!0,force:!0})}}async function r(a,b){let c,d=a.ref||"HEAD",e=`https://api.github.com/repos/${a.source}/git/trees/${encodeURIComponent(d)}?recursive=1`,f={Accept:"application/vnd.github.v3+json","User-Agent":"omp-web"};b.githubToken&&(f.Authorization=`Bearer ${b.githubToken}`);let g=n(a.skillPath);try{let a=await p(e,b.fetcher,f);if(c="string"!=typeof a.sha||g?void 0:a.sha,g&&Array.isArray(a.tree)){let b=a.tree.find(a=>"tree"===a.type&&a.path===g);b&&"string"==typeof b.sha&&(c=b.sha)}}catch(d){if(!(d instanceof k)||![401,403,429].includes(d.status))throw d;c=await b.resolveGitTreeHash(a)}return c?o(a,c===a.versionHash?"up-to-date":"update-available",c):o(a,"error",void 0,"Remote skill path was not found.")}async function s(a,b){let[c,d]=a.source.split("/"),e=m(a.package).toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,""),f=`${b.skillsApiBase}/api/download/${encodeURIComponent(c)}/${encodeURIComponent(d)}/${encodeURIComponent(e)}`,g=await p(f,b.fetcher),h="string"==typeof g.hash?g.hash:void 0;return h?o(a,h===a.versionHash?"up-to-date":"update-available",h):o(a,"error",void 0,"skills.sh did not return a version hash.")}async function t(a,b={}){if(!a.canCheckForUpdates||!a.versionHash||!a.skillPath)return o(a,"unsupported",void 0,"This lock entry cannot be checked automatically.");let c={...b,fetcher:b.fetcher??fetch,skillsApiBase:b.skillsApiBase??i,resolveGitTreeHash:b.resolveGitTreeHash??q};try{return"global"===a.scope?await r(a,c):await s(a,c)}catch(b){return o(a,"error",void 0,b instanceof Error?b.message:String(b))}}async function u(a,b={}){let c=b.fetcher??fetch,d=new Map,e=async(a,b)=>{let e=d.get(a);return e||(e=c(a,b),d.set(a,e)),(await e).clone()};return Promise.all(a.map(a=>t(a,{...b,fetcher:e})))}},80547:(a,b,c)=>{c.d(b,{B7:()=>i,Nw:()=>d.Nw,mc:()=>h,uK:()=>g.uK,wz:()=>d.wz});var d=c(25252),e=c(82536),f=c(78573),g=c(58864);async function h(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,f.dQ)(),e=new Set;for(let a of c)a.cwd&&e.add((0,d.Nw)(a.cwd)),a.projectRoot&&e.add((0,d.Nw)(a.projectRoot));for(let a of(0,d.HM)())e.add(a);return globalThis.__piAllowedRootsCache={roots:e,expiresAt:a+5e3},e}function i(a,b){return(0,e.xk)(a,b)}},82536:(a,b,c)=>{c.d(b,{SW:()=>i,o4:()=>h,xk:()=>j});var d=c(29021),e=c(33873),f=c.n(e),g=c(58864);function h(a,b){for(let c of b){let b=(0,g.uK)(a)||(0,g.uK)(c),d=b?f().win32:f(),e=b?"\\":f().sep,h=d.resolve(a),i=d.resolve(c),j=b?h.toLowerCase():h,k=b?i.toLowerCase():i,l=k.endsWith(e)?k:k+e;if(j===k||j.startsWith(l))return!0}return!1}function i(a){let b=f().resolve(a),c=[];for(;;)try{(0,d.lstatSync)(b);break}catch(d){if(!(d instanceof Error&&"code"in d&&"ENOENT"===d.code))throw d;let a=f().dirname(b);if(a===b)throw d;c.unshift(f().basename(b)),b=a}return f().join((0,d.realpathSync)(b),...c)}function j(a,b){let c;try{c=(0,d.realpathSync)(a)}catch{return!1}let e=new Set;for(let a of b)try{e.add((0,d.realpathSync)(a))}catch{}return h(c,e)}}};
@@ -0,0 +1 @@
1
+ exports.id=7077,exports.ids=[7077],exports.modules={7667:(a,b,c)=>{"use strict";function d(){return[{type:"image/png",sizes:"180x180",url:"/apple-icon.png?63fa7d229f475de6"}]}c.r(b),c.d(b,{default:()=>d})},9290:(a,b,c)=>{"use strict";c.d(b,{Cf:()=>y,HM:()=>A,L3:()=>z,Nt:()=>F,R6:()=>G,je:()=>H,lG:()=>x,m_:()=>E});var d=c(48249),e=c(69137),f=c(1503),g=c(44107),h=c(43988),i=c(26829),j=c(17193),k=c(93789),l=c(20214),m=c(75547),n=c(12009),o=c(14360),p=c(85179),q=c(95911),r=c(25745),s=c(19731),t=c(67484),u=c.n(t),v=c(65092);function w({open:a,onOpenChange:b}){return(0,v.LG)(a,()=>b(!1)),null}function x({open:a,onOpenChange:b,children:c}){return(0,d.jsxs)(e.D,{open:a,onOpenChange:b,children:[(0,d.jsx)(w,{open:a,onOpenChange:b}),c]})}function y({children:a,className:b,style:c,ariaLabel:e}){return(0,d.jsxs)(f.Z,{children:[(0,d.jsx)(g.X,{style:{position:"fixed",inset:0,background:"var(--overlay-backdrop)",backdropFilter:"blur(2px)",zIndex:"var(--z-dialog-backdrop)"}}),(0,d.jsx)(h.h,{"aria-label":e,className:b,style:{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",animation:"dialog-pop-in var(--dur-med) var(--ease-out-warm) both",zIndex:"var(--z-dialog)",background:"var(--bg)",color:"var(--text)",border:"1px solid var(--border)",borderRadius:"var(--radius-modal)",boxShadow:"var(--shadow-modal)",padding:"calc(var(--space-6) + var(--space-2))",maxWidth:"min(92vw, 560px)",maxHeight:"85dvh",overflow:"auto",...c},children:a})]})}function z({children:a,style:b}){return(0,d.jsx)(i.L,{className:"display-serif",style:{fontSize:"calc(var(--text-xl) + var(--space-3) / 2)",margin:"0 0 var(--space-5)",...b},children:a})}let A=j.H;function B(a){return()=>{}}function C(){return!1}function D(){return!1}function E({content:a,children:b,side:c="top"}){let e=(0,t.useSyncExternalStore)(B,C,D),f=b.props,g=!e||"string"!=typeof a||f["aria-label"]||f["aria-labelledby"]?b:u().cloneElement(b,{"aria-label":a});return(0,d.jsx)(k.B,{delay:350,closeDelay:0,children:(0,d.jsxs)(l.s,{disabled:e||!a,children:[(0,d.jsx)(m.k,{render:g}),e||!a?null:(0,d.jsx)(n.K,{children:(0,d.jsx)(o.o,{side:c,sideOffset:6,style:{zIndex:"var(--z-tooltip)"},children:(0,d.jsx)(p.o,{style:{background:"var(--bg-panel)",color:"var(--text)",border:"1px solid var(--border)",borderRadius:"var(--radius-control)",boxShadow:"var(--shadow-pop)",padding:"var(--space-2) calc(var(--space-4) + var(--space-1) / 2)",fontSize:"var(--text-md)",lineHeight:1.4,maxWidth:260},children:a})})})]})})}function F({open:a,onOpenChange:b,defaultOpen:c,children:e}){return(0,d.jsx)(q.N,{open:a,onOpenChange:b,defaultOpen:c,children:e})}let G=r.R;function H({children:a,style:b}){return(0,d.jsx)(s.j,{style:b,children:a})}},24021:(a,b,c)=>{"use strict";c.d(b,{$n:()=>v,Jl:()=>t,TM:()=>x,D0:()=>k,M_:()=>m,XZ:()=>q,L4:()=>r,l6:()=>s,dO:()=>u,ks:()=>p,JT:()=>w});var d=c(48249),e=c(67484),f=c(5152),g=c(41926);let h=(0,g.A)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),i=(0,g.A)("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"}]]);var j=c(9290);function k({label:a,hint:b,error:c,required:f,children:g,style:h,id:i}){let j=(0,e.useId)(),m=(0,e.isValidElement)(g)?g.props.id:void 0,n=i||m||j,o=c?`${n}-error`:void 0,p=!c&&b?`${n}-hint`:void 0,q=g;return(0,e.isValidElement)(g)&&(q=(0,e.cloneElement)(g,{id:m||n,"aria-describedby":g.props["aria-describedby"]||o||p})),(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:"var(--space-2)",minWidth:0,...h},children:[(0,d.jsxs)("label",{htmlFor:n,style:{fontSize:"var(--text-sm)",fontWeight:500,color:c?"var(--accent)":"var(--text-muted)",letterSpacing:"0.01em",display:"flex",alignItems:"center",gap:"var(--space-2)"},children:[a,f&&(0,d.jsx)("span",{style:{color:"var(--accent)"},children:"*"})]}),q,c?(0,d.jsx)(l,{id:o,children:c}):b?(0,d.jsx)("span",{id:p,style:{fontSize:"var(--text-xs)",color:"var(--text-dim)",lineHeight:1.4},children:b}):null]})}function l({children:a,id:b}){return(0,d.jsxs)("span",{id:b,role:"alert",style:{display:"inline-flex",alignItems:"center",gap:"var(--space-2)",fontSize:"var(--text-md)",color:"var(--accent)",lineHeight:1.3,marginTop:"calc(var(--space-1) / 2)"},children:[(0,d.jsx)(f.A,{size:12,"aria-hidden":"true"}),a]})}function m({label:a,children:b,style:c}){return(0,d.jsxs)("section",{style:{display:"flex",flexDirection:"column",gap:"calc(var(--space-5) - var(--space-1))",padding:"var(--space-5) calc(var(--space-5) + var(--space-1))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:"var(--radius-card)",boxShadow:"var(--shadow-card)",minWidth:0,...c},children:[(0,d.jsx)("div",{style:{fontSize:"var(--text-sm)",fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.06em"},children:a}),(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"calc(var(--space-5) - var(--space-1))",minWidth:0},children:b})]})}function n({invalid:a}){return{padding:"var(--space-3) calc(var(--space-4) + var(--space-1) / 2)",background:"var(--bg)",border:`1px solid ${a?"var(--accent)":"var(--border)"}`,borderRadius:"var(--radius-control)",color:"var(--text)",fontSize:"var(--text-md)",outline:"none",width:"100%",boxSizing:"border-box",transition:"border-color var(--dur-fast) var(--ease-out-warm), box-shadow var(--dur-fast) var(--ease-out-warm)"}}function o(a,b){return a?{borderColor:"var(--accent)",boxShadow:"var(--focus-ring)"}:{}}function p({value:a,onChange:b,placeholder:c,mono:f,invalid:g,error:h,onBlurValidate:i,disabled:j,onKeyDown:k,autoComplete:l,spellCheck:m,id:q,name:r,style:s,className:t}){let[u,v]=(0,e.useState)(!1),w=!!(g||h);return(0,d.jsx)("input",{id:q,name:r,value:a,onChange:a=>b(a.target.value),placeholder:c,disabled:j,onKeyDown:k,autoComplete:l,spellCheck:m,"aria-invalid":w||void 0,onFocus:()=>v(!0),onBlur:()=>{v(!1),i?.()},className:t,style:{...n({invalid:w}),...o(u,w),fontFamily:f?"var(--font-mono)":"inherit",opacity:j?.6:1,...s}})}function q({value:a,onChange:b,placeholder:c,invalid:f,error:g,onBlurValidate:h,disabled:i,id:j,name:k,style:l,className:m}){let[p,r]=(0,e.useState)(!1),s=!!(f||g);return(0,d.jsx)("input",{id:j,name:k,type:"number",value:a,onChange:a=>b(a.target.value),placeholder:c,disabled:i,"aria-invalid":s||void 0,onFocus:()=>r(!0),onBlur:()=>{r(!1),h?.()},className:m,style:{...n({invalid:s}),...o(p,s),opacity:i?.6:1,...l}})}function r({value:a,onChange:b,placeholder:c,invalid:f,error:g,onBlurValidate:j,disabled:k,showLabel:l="Show password",hideLabel:m="Hide password",id:p,name:q,autoComplete:s="off",autoFocus:t,required:u,onKeyDown:v,style:w,className:x,"aria-describedby":y}){let[z,A]=(0,e.useState)(!1),[B,C]=(0,e.useState)(!1),D=!!(f||g);return(0,d.jsxs)("div",{style:{position:"relative",width:"100%",...w},className:x,children:[(0,d.jsx)("input",{id:p,name:q,type:z?"text":"password",value:a,onChange:a=>b(a.target.value),placeholder:c,disabled:k,autoComplete:s,autoFocus:t,required:u,onKeyDown:v,spellCheck:!1,"aria-invalid":D||void 0,"aria-describedby":y,onFocus:()=>C(!0),onBlur:()=>{C(!1),j?.()},style:{...n({invalid:D}),...o(B,D),paddingRight:"var(--control-touch, 44px)",fontFamily:"var(--font-mono)",opacity:k?.6:1}}),(0,d.jsx)("button",{type:"button",onClick:()=>A(a=>!a),"aria-label":z?m:l,title:z?m:l,className:"ui-focus-ring",style:{position:"absolute",right:0,top:"50%",transform:"translateY(-50%)",width:"var(--control-touch, 44px)",height:"var(--control-touch, 44px)",minWidth:"var(--control-touch, 44px)",minHeight:"var(--control-touch, 44px)",padding:0,border:"none",background:"transparent",color:"var(--text-dim)",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"var(--radius-control)"},children:z?(0,d.jsx)(h,{size:15,"aria-hidden":"true"}):(0,d.jsx)(i,{size:15,"aria-hidden":"true"})})]})}function s({value:a,onChange:b,options:c,required:f,placeholder:g,invalid:h,error:i,disabled:j,id:k,name:l,ariaLabel:m,"aria-label":p,"aria-labelledby":q,"aria-describedby":r,title:t,style:u,className:v}){let[w,x]=(0,e.useState)(!1),y=!!(h||i);return(0,d.jsxs)("div",{style:{position:"relative",display:"inline-flex",alignItems:"center",width:u?.width??"100%",minWidth:u?.minWidth??0,flex:u?.flex},className:v,children:[(0,d.jsxs)("select",{id:k,name:l,value:a,onChange:a=>b(a.target.value),disabled:j,"aria-invalid":y||void 0,"aria-label":m??p,"aria-labelledby":q,"aria-describedby":r,title:t,onFocus:()=>x(!0),onBlur:()=>x(!1),style:{...n({invalid:y}),...o(w,y),color:a?"var(--text)":"var(--text-dim)",appearance:"none",WebkitAppearance:"none",width:"100%",paddingRight:"var(--space-8)",cursor:j?"not-allowed":"pointer",opacity:j?.6:1,...u},children:[!f&&(0,d.jsx)("option",{value:"",style:{background:"var(--bg-panel)",color:"var(--text)"},children:g??""}),f&&void 0!==g&&(0,d.jsx)("option",{value:"",style:{background:"var(--bg-panel)",color:"var(--text)"},children:g}),c.map(a=>"string"==typeof a?(0,d.jsx)("option",{value:a,style:{background:"var(--bg-panel)",color:"var(--text)"},children:a},a):(0,d.jsx)("option",{value:a.value,style:{background:"var(--bg-panel)",color:"var(--text)"},children:a.label},a.value))]}),(0,d.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:{position:"absolute",right:"var(--space-4)",color:"var(--text-dim)",pointerEvents:"none"},children:(0,d.jsx)("polyline",{points:"6 9 12 15 18 9"})})]})}function t({label:a,checked:b,onChange:c,disabled:e}){return(0,d.jsxs)("label",{style:{display:"inline-flex",alignItems:"center",gap:"var(--space-3)",cursor:e?"not-allowed":"pointer",fontSize:"var(--text-md)",color:e?"var(--text-dim)":"var(--text-muted)",opacity:e?.7:1},children:[(0,d.jsx)("input",{type:"checkbox",checked:b,disabled:e,onChange:a=>c(a.target.checked),style:{width:14,height:14,accentColor:"var(--accent)",cursor:e?"not-allowed":"pointer"}}),a]})}function u({checked:a,onChange:b,disabled:c,id:e,name:f,ariaLabel:g,"aria-label":h,"aria-labelledby":i,"aria-describedby":j,title:k,style:l,className:m}){return(0,d.jsx)("button",{type:"button",role:"switch",id:e,name:f,"aria-checked":a,"aria-label":g??h,"aria-labelledby":i,"aria-describedby":j,disabled:c,title:k,onClick:()=>{c||b(!a)},className:["ui-focus-ring",m].filter(Boolean).join(" ")||void 0,style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:"var(--control-touch, 44px)",minHeight:"var(--control-touch, 44px)",padding:0,background:"none",border:"none",cursor:c?"not-allowed":"pointer",opacity:c?.6:1,touchAction:"manipulation",WebkitTapHighlightColor:"transparent",flexShrink:0,...l},children:(0,d.jsx)("span",{style:{position:"relative",display:"inline-flex",alignItems:"center",width:36,height:20,borderRadius:10,background:a?"var(--accent)":"var(--switch-track, var(--border))",transition:"background var(--dur-fast) var(--ease-out-warm)",padding:2,boxSizing:"border-box"},children:(0,d.jsx)("span",{style:{width:16,height:16,borderRadius:8,background:"var(--switch-thumb, var(--on-accent))",transform:a?"translateX(16px)":"translateX(0px)",transition:"transform var(--dur-fast) var(--ease-out-warm)",boxShadow:"var(--switch-thumb-shadow, var(--shadow-card))"}})})})}function v({type:a="button",variant:b="primary",size:c="md",busy:f=!1,disabled:g=!1,onClick:h,children:i,style:j,className:k,id:l,name:m,autoFocus:n,title:o,"aria-label":p,ariaLabel:q}){let[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(!1),w=g||f,x="var(--accent-strong)",y="var(--accent-hover)",z="var(--on-accent)",A="none";"secondary"===b&&(x="transparent",y="var(--bg-subtle)",z="var(--text-muted)",A="1px solid var(--border)");let B=t&&!w?y:x;return(0,d.jsx)("button",{type:a,id:l,name:m,disabled:w,autoFocus:n,title:o,"aria-label":q??p,"aria-busy":f||void 0,onClick:h,onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),onFocus:()=>s(!0),onBlur:()=>s(!1),className:k,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"var(--space-2)",minHeight:"sm"===c?"var(--control-height-sm, 28px)":"lg"===c?"var(--control-height-lg, 40px)":"var(--control-height, 36px)",padding:"sm"===c?"var(--space-1) var(--space-3)":"lg"===c?"var(--space-3) calc(var(--space-6) + var(--space-1))":"var(--space-3) calc(var(--space-5) + var(--space-1))",background:B,border:A,borderRadius:"var(--radius-control)",color:z,fontSize:"var(--text-base)",fontWeight:"primary"===b||"danger"===b?600:500,cursor:f?"wait":g?"not-allowed":"pointer",opacity:w?.7:1,outline:"none",boxShadow:r?"var(--focus-ring)":void 0,transition:"background var(--dur-fast) var(--ease-out-warm), box-shadow var(--dur-fast) var(--ease-out-warm), opacity var(--dur-fast) var(--ease-out-warm)",touchAction:"manipulation",WebkitTapHighlightColor:"transparent",...j},children:i})}function w(a){let[b,c]=(0,e.useState)(null),d=(0,e.useRef)(a);d.current=a;let f=(0,e.useCallback)(()=>{c(d.current())},[]);return{error:b,onBlur:f,onChange:(0,e.useCallback)(()=>{c(a=>null)},[]),onSubmit:(0,e.useCallback)(()=>{let a=d.current();return c(a),a},[])}}function x({open:a,onOpenChange:b,title:c,description:e,confirmLabel:f,cancelLabel:g,danger:h,busy:i,onConfirm:k}){return(0,d.jsx)(j.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(j.Cf,{ariaLabel:"string"==typeof c?c:void 0,style:{width:420,maxWidth:"min(92vw, 420px)",padding:"calc(var(--space-8) - var(--space-1))"},children:[(0,d.jsx)(j.L3,{children:c}),(0,d.jsx)("div",{style:{height:"var(--space-4)"}}),e&&(0,d.jsx)("p",{style:{margin:"0 0 calc(var(--space-6) + var(--space-1))",fontSize:"var(--text-base)",lineHeight:1.55,color:"var(--text-muted)"},children:e}),(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:"var(--space-4)"},children:[(0,d.jsx)(v,{type:"button",variant:"secondary",disabled:i,onClick:()=>b(!1),children:g??"Cancel"}),(0,d.jsx)(v,{type:"button",variant:h?"danger":"primary",busy:i,disabled:i,onClick:k,children:f})]})]})})}},32056:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>i,metadata:()=>g,viewport:()=>h});var d=c(5735),e=c(1924),f=c.n(e);c(72265),c(82704);let g={title:"ompgui",description:"Web UI for the oh-my-pi (omp) coding agent",appleWebApp:{capable:!0,title:"ompgui",statusBarStyle:"black-translucent"},formatDetection:{telephone:!1}},h={width:"device-width",initialScale:1,viewportFit:"cover",interactiveWidget:"resizes-content",themeColor:[{media:"(prefers-color-scheme: light)",color:"#FAF9F6"},{media:"(prefers-color-scheme: dark)",color:"#1B1916"}]};function i({children:a}){return(0,d.jsxs)("html",{lang:"en",translate:"no",className:`${f().variable} notranslate`,suppressHydrationWarning:!0,children:[(0,d.jsxs)("head",{children:[(0,d.jsx)("meta",{name:"google",content:"notranslate"}),(0,d.jsx)("script",{dangerouslySetInnerHTML:{__html:'(function(){try{var r=document.documentElement,k="ompgui-theme",o="omp-theme",t=localStorage.getItem(k),v=localStorage.getItem(o),p=localStorage.getItem("ompgui-palette"),d=matchMedia("(prefers-color-scheme: dark)").matches;if(t!==null){if(v!==null)try{localStorage.removeItem(o)}catch(e){}}else if(v!==null){if(v==="light"||v==="dark"||v==="system"){t=v;try{localStorage.setItem(k,v);localStorage.removeItem(o)}catch(e){}}else try{localStorage.removeItem(o)}catch(e){}}r.dataset.palette=p==="omp"?"omp":"warm";if(t==="dark"||(t!=="light"&&t!=="dark"&&d))r.classList.add("dark")}catch(e){document.documentElement.dataset.palette="warm"}})();'}}),(0,d.jsx)("script",{dangerouslySetInnerHTML:{__html:'(function(){try{var k="ompgui-lang",o="omp-lang",l=localStorage.getItem(k),v=localStorage.getItem(o);if(l!==null){if(v!==null)try{localStorage.removeItem(o)}catch(e){}}else if(v!==null){if(v==="en"||v==="zh-CN"||v==="ja"||v==="ko"){l=v;try{localStorage.setItem(k,v);localStorage.removeItem(o)}catch(e){}}else try{localStorage.removeItem(o)}catch(e){}}if(l!=="en"&&l!=="zh-CN"&&l!=="ja"&&l!=="ko"){var n=(navigator.language||"").toLowerCase();l=n.indexOf("zh")===0?"zh-CN":n.indexOf("ja")===0?"ja":n.indexOf("ko")===0?"ko":"en"}document.documentElement.lang=l}catch(e){}})();'}}),(0,d.jsx)("script",{dangerouslySetInnerHTML:{__html:'(function(){try{var r=document.documentElement;function s(){var v=window.visualViewport;r.style.setProperty("--app-viewport-height",(v?v.height+v.offsetTop:window.innerHeight)+"px")}r.style.setProperty("--app-viewport-height","100dvh");s();if(window.visualViewport){visualViewport.addEventListener("resize",s);visualViewport.addEventListener("scroll",s)}window.addEventListener("resize",s)}catch(e){}})();'}})]}),(0,d.jsx)("body",{translate:"no",className:"notranslate",style:{height:"var(--app-viewport-height, 100dvh)",display:"flex",flexDirection:"column"},children:a})]})}},46055:(a,b,c)=>{"use strict";function d(){return[{type:"image/x-icon",sizes:"64x64",url:"/favicon.ico?ed3493dcaff42f9b"}]}c.r(b),c.d(b,{default:()=>d})},52314:()=>{},65092:(a,b,c)=>{"use strict";c.d(b,{LG:()=>i,Mi:()=>g,pJ:()=>h});var d=c(67484);let e=[],f=new Set;function g(){return e.length}function h(a){return f.add(a),()=>{f.delete(a)}}function i(a,b){(0,d.useRef)(b).current=b}},70242:()=>{},82704:()=>{},86364:(a,b,c)=>{"use strict";function d(){return[{type:"image/svg+xml",sizes:"any",url:"/icon.svg?07757bbd46fb7171"}]}c.r(b),c.d(b,{default:()=>d})}};
@@ -1 +1 @@
1
- "use strict";exports.id=714,exports.ids=[714],exports.modules={21300:(a,b,c)=>{c.d(b,{$C:()=>m,XV:()=>o,tB:()=>n,Ew:()=>l,ng:()=>k});var d=c(29021),e=c(33873),f=c(78573),g=c(63945),h=c(20565),i=c(57050);function j(a){return(0,e.join)((0,e.dirname)(a),(0,e.basename)(a,".jsonl"))}function k(a,b){return(0,e.join)(j(a),`${b}.jsonl`)}function l(a,b,c){let f,g;try{f=(0,d.realpathSync)(j(a))}catch{return null}let h=(0,e.join)(f,`${b}${c}`);try{g=(0,d.realpathSync)(h)}catch{return null}if((0,e.dirname)(g)!==f)return null;try{if(!(0,d.statSync)(g).isFile())return null}catch{return null}return g}function m(a){let b;try{b=(0,f.DK)(a)}catch{return[]}let c=new Map,g=a=>{let b=c.get(a.id);b?c.set(a.id,{...b,...a,result:a.result??b.result}):c.set(a.id,a)};for(let a of b){var k,l;if("message"!==a.type||a.message?.role!=="toolResult")continue;let b=a.message;if("task"!==b.toolName)continue;let d=(0,h.u4)(b.details)?b.details:{},e=Array.isArray(d.progress)?d.progress:[],f=Array.isArray(d.results)?d.results:[],j=(0,h.u4)(d.async)?d.async:void 0;for(let a of e){let b=function(a){var b,c;if(!(0,h.u4)(a))return;let d={},e=(0,h.i)(a.index);void 0!==e&&(d.index=e);let f=(0,h.oJ)(a.id);void 0!==f&&(d.id=f);let g=(0,h.oJ)(a.agent);void 0!==g&&(d.agent=g);let i="bundled"===(b=a.agentSource)||"user"===b||"project"===b?b:void 0;void 0!==i&&(d.agentSource=i);let j="pending"===(c=a.status)||"running"===c||"completed"===c||"failed"===c||"aborted"===c?c:void 0;void 0!==j&&(d.status=j);let k=(0,h.oJ)(a.task);void 0!==k&&(d.task=k);let l=(0,h.oJ)(a.assignment);void 0!==l&&(d.assignment=l);let m=(0,h.oJ)(a.description);void 0!==m&&(d.description=m);let n=(0,h.oJ)(a.lastIntent);void 0!==n&&(d.lastIntent=n);let o=(0,h.oJ)(a.currentTool);void 0!==o&&(d.currentTool=o);let p=(0,h.oJ)(a.currentToolArgs);void 0!==p&&(d.currentToolArgs=p);let q=(0,h.i)(a.currentToolStartMs);void 0!==q&&(d.currentToolStartMs=q),Array.isArray(a.recentTools)&&(d.recentTools=a.recentTools),Array.isArray(a.recentOutput)&&(d.recentOutput=a.recentOutput.filter(a=>"string"==typeof a));let r=(0,h.i)(a.toolCount);void 0!==r&&(d.toolCount=r);let s=(0,h.i)(a.requests);void 0!==s&&(d.requests=s);let t=(0,h.i)(a.tokens);void 0!==t&&(d.tokens=t);let u=(0,h.i)(a.contextTokens);void 0!==u&&(d.contextTokens=u);let v=(0,h.i)(a.contextWindow);void 0!==v&&(d.contextWindow=v);let w=(0,h.i)(a.cost);void 0!==w&&(d.cost=w);let x=(0,h.i)(a.durationMs);void 0!==x&&(d.durationMs=x),("string"==typeof a.modelOverride||Array.isArray(a.modelOverride)&&a.modelOverride.every(a=>"string"==typeof a))&&(d.modelOverride=a.modelOverride);let y=(0,h.oJ)(a.modelRole);void 0!==y&&(d.modelRole=y);let z=(0,h.oJ)(a.resolvedModel);if(void 0!==z&&(d.resolvedModel=z),"boolean"==typeof a.resolvedModelIsFallback&&(d.resolvedModelIsFallback=a.resolvedModelIsFallback),(0,h.u4)(a.retryState)){let b=(0,h.i)(a.retryState.attempt),c=(0,h.i)(a.retryState.maxAttempts),e=(0,h.i)(a.retryState.delayMs),f=(0,h.oJ)(a.retryState.errorMessage),g=(0,h.i)(a.retryState.startedAtMs);void 0!==b&&void 0!==c&&void 0!==e&&void 0!==f&&void 0!==g&&(d.retryState={attempt:b,maxAttempts:c,delayMs:e,errorMessage:f,startedAtMs:g})}if((0,h.u4)(a.retryFailure)){let b=(0,h.i)(a.retryFailure.attempt),c=(0,h.oJ)(a.retryFailure.errorMessage);void 0!==b&&void 0!==c&&(d.retryFailure={attempt:b,errorMessage:c})}return void 0!==a.inflightTaskDetails&&(d.inflightTaskDetails=a.inflightTaskDetails),(0,h.u4)(a.extractedToolData)&&(d.extractedToolData=a.extractedToolData),Object.keys(d).length>0?d:void 0}(a);b?.id&&g({id:b.id,agent:b.agent??"subagent",agentSource:b.agentSource,status:"completed"===(k=b.status)?"completed":"failed"===k?"failed":"aborted"===k?"aborted":"started",task:b.task,assignment:b.assignment,description:b.description,index:b.index??0,lastIntent:b.lastIntent,toolCount:b.toolCount,requests:b.requests,tokens:b.tokens,contextTokens:b.contextTokens,contextWindow:b.contextWindow,cost:b.cost,durationMs:b.durationMs,modelOverride:b.modelOverride,modelRole:b.modelRole,resolvedModel:b.resolvedModel,resolvedModelIsFallback:b.resolvedModelIsFallback,retryFailure:b.retryFailure,transcriptAvailable:!1})}for(let a of f){if(!(0,h.u4)(a))continue;let b=(0,h.oJ)(a.id);if(!b)continue;let d=c.get(b),e={},f=(0,h.i)(a.exitCode);void 0!==f&&(e.exitCode=f),!0===a.truncated&&(e.truncated=!0);let j=(0,h.i)(a.cost)??(0,i.tw)(a.usage);void 0!==j&&(e.cost=j);let k=(0,i.bA)(a.structuredOutput);void 0!==k&&(e.structuredOutput=k);let m=(0,h.oJ)(a.error);void 0!==m&&(e.error=m),!0===a.aborted&&(e.aborted=!0);let n=(0,h.oJ)(a.abortReason);void 0!==n&&(e.abortReason=n);let o=(0,h.oJ)(a.outputPath);void 0!==o&&(e.outputPath=o);let p=(0,h.oJ)(a.patchPath);void 0!==p&&(e.patchPath=p);let q=(0,h.oJ)(a.branchName);void 0!==q&&(e.branchName=q);let r=(0,h.u4)(a.retryFailure)?{attempt:(0,h.i)(a.retryFailure.attempt)??0,errorMessage:(0,h.oJ)(a.retryFailure.errorMessage)??""}:d?.retryFailure;g({id:b,agent:(0,h.oJ)(a.agent)??d?.agent??"subagent",agentSource:("bundled"===(l=a.agentSource)||"user"===l||"project"===l?l:void 0)??d?.agentSource,status:!0===a.aborted?"aborted":"string"==typeof a.error&&a.error?"failed":"number"==typeof a.exitCode?0===a.exitCode?"completed":"failed":"completed"===a.status?"completed":"failed"===a.status?"failed":"aborted"===a.status?"aborted":"started",task:(0,h.oJ)(a.task)??d?.task,assignment:(0,h.oJ)(a.assignment)??d?.assignment,description:(0,h.oJ)(a.description)??d?.description,index:(0,h.i)(a.index)??d?.index??0,lastIntent:(0,h.oJ)(a.lastIntent)??d?.lastIntent,toolCount:(0,h.i)(a.toolCount)??d?.toolCount,requests:(0,h.i)(a.requests)??d?.requests,tokens:(0,h.i)(a.tokens)??d?.tokens,contextTokens:(0,h.i)(a.contextTokens)??d?.contextTokens,contextWindow:(0,h.i)(a.contextWindow)??d?.contextWindow,cost:(0,h.i)(a.cost)??(0,i.tw)(a.usage)??d?.cost,durationMs:(0,h.i)(a.durationMs)??d?.durationMs,modelOverride:"string"==typeof a.modelOverride||Array.isArray(a.modelOverride)?a.modelOverride:d?.modelOverride,modelRole:(0,h.oJ)(a.modelRole)??d?.modelRole,resolvedModel:(0,h.oJ)(a.resolvedModel)??d?.resolvedModel,resolvedModelIsFallback:"boolean"==typeof a.resolvedModelIsFallback?a.resolvedModelIsFallback:d?.resolvedModelIsFallback,retryFailure:r,transcriptAvailable:!1,result:Object.keys(e).length>0?e:void 0})}if(j){let a=(0,h.oJ)(j.jobId);a&&!c.has(a)&&g({id:a,agent:"task",status:"completed"===j.state?"completed":"failed"===j.state?"failed":"started",index:c.size,transcriptAvailable:!1})}}let m=j(a),n=new Set;for(let a of b){if("message"!==a.type||a.message?.role!=="toolResult")continue;let b=a.message;if("task"!==b.toolName)continue;let c=(0,h.u4)(b.details)?b.details:{},d=(0,h.u4)(c.async)?c.async:void 0,e=d?(0,h.oJ)(d.jobId):void 0;e&&n.add(e)}let o=[...c.values()];for(let a of o){n.has(a.id)&&(a.detached=!0);let b=(0,e.join)(m,`${a.id}.jsonl`);(0,d.existsSync)(b)&&(a.sessionFile=b,a.transcriptAvailable=!0)}return o.sort((a,b)=>a.index-b.index||a.id.localeCompare(b.id))}function n(a,b=0){let c,e,h={sessionFile:a,fromByte:"number"==typeof b&&Number.isFinite(b)?Math.max(0,Math.trunc(b)):0,nextByte:"number"==typeof b&&Number.isFinite(b)?Math.max(0,Math.trunc(b)):0,reset:!1,messages:[]};try{c=(0,d.statSync)(a).size}catch{return h}let i=h.fromByte,j=!1;if(i>c&&(i=0,j=!0),c>0x1000000)return{...h,fromByte:i,nextByte:i,reset:j,error:"Subagent transcript exceeds the readable size limit"};let k=Math.min(c,i+262144);try{e=(0,d.readFileSync)(a).subarray(i,k).toString("utf8")}catch{return{...h,fromByte:i,nextByte:i,reset:j}}let l=e.lastIndexOf("\n"),m=l>=0?e.slice(0,l+1):"",o=(m.length>0?(0,g.nr)(m):[]).map(a=>(0,f.HA)(a,{})).filter(a=>null!==a),p=i+Buffer.byteLength(m,"utf8");return p===i&&k<c&&(p=k),{sessionFile:a,fromByte:i,nextByte:p,reset:j,messages:o,totalBytes:c}}function o(a){let b;try{b=(0,d.statSync)(a).size}catch{return null}if(b<=0)return null;let c=b>1048576,e=Math.min(b,1048576),f=(0,d.openSync)(a,"r");try{let a=Buffer.alloc(e),b=(0,d.readSync)(f,a,0,e,0),g=a.subarray(0,b),h=g.length,i=0;for(;h-i>0&&(192&g[h-1-i])==128;)i+=1;let j=h-1-i;if(j>=0){let a=g[j];j+(a>=240?4:a>=224?3:a>=192?2:1)>g.length&&(h=j)}else h=0;return{completion:g.subarray(0,h).toString("utf8"),truncated:c}}finally{(0,d.closeSync)(f)}}},65644:(a,b,c)=>{c.d(b,{Q:()=>h,r:()=>g});var d=c(23211),e=c(78573);let f={error:"Session not found",code:"session_not_found"};async function g(a){let b=await (0,e.os)(a);return b?{filePath:b}:{response:d.NextResponse.json(f,{status:404})}}function h(a,b=500){return d.NextResponse.json({error:String(a)},{status:b})}}};
1
+ "use strict";exports.id=714,exports.ids=[714],exports.modules={21300:(a,b,c)=>{c.d(b,{$C:()=>m,XV:()=>o,tB:()=>n,Ew:()=>l,ng:()=>k});var d=c(29021),e=c(33873),f=c(78573),g=c(63945),h=c(20565),i=c(57050);function j(a){return(0,e.join)((0,e.dirname)(a),(0,e.basename)(a,".jsonl"))}function k(a,b){return(0,e.join)(j(a),`${b}.jsonl`)}function l(a,b,c){let f,g;try{f=(0,d.realpathSync)(j(a))}catch{return null}let h=(0,e.join)(f,`${b}${c}`);try{g=(0,d.realpathSync)(h)}catch{return null}if((0,e.dirname)(g)!==f)return null;try{if(!(0,d.statSync)(g).isFile())return null}catch{return null}return g}function m(a){let b;try{b=(0,f.DK)(a)}catch{return[]}let c=new Map,g=a=>{let b=c.get(a.id);b?c.set(a.id,{...b,...a,result:a.result??b.result}):c.set(a.id,a)};for(let a of b){var k,l;if("message"!==a.type||a.message?.role!=="toolResult")continue;let b=a.message;if("task"!==b.toolName)continue;let d=(0,h.u4)(b.details)?b.details:{},e=Array.isArray(d.progress)?d.progress:[],f=Array.isArray(d.results)?d.results:[],j=(0,h.u4)(d.async)?d.async:void 0;for(let a of e){let b=function(a){var b,c;if(!(0,h.u4)(a))return;let d={},e=(0,h.i)(a.index);void 0!==e&&(d.index=e);let f=(0,h.oJ)(a.id);void 0!==f&&(d.id=f);let g=(0,h.oJ)(a.agent);void 0!==g&&(d.agent=g);let i="bundled"===(b=a.agentSource)||"user"===b||"project"===b?b:void 0;void 0!==i&&(d.agentSource=i);let j="pending"===(c=a.status)||"running"===c||"completed"===c||"failed"===c||"aborted"===c?c:void 0;void 0!==j&&(d.status=j);let k=(0,h.oJ)(a.task);void 0!==k&&(d.task=k);let l=(0,h.oJ)(a.assignment);void 0!==l&&(d.assignment=l);let m=(0,h.oJ)(a.description);void 0!==m&&(d.description=m);let n=(0,h.oJ)(a.lastIntent);void 0!==n&&(d.lastIntent=n);let o=(0,h.oJ)(a.currentTool);void 0!==o&&(d.currentTool=o);let p=(0,h.oJ)(a.currentToolArgs);void 0!==p&&(d.currentToolArgs=p);let q=(0,h.i)(a.currentToolStartMs);void 0!==q&&(d.currentToolStartMs=q),Array.isArray(a.recentTools)&&(d.recentTools=a.recentTools),Array.isArray(a.recentOutput)&&(d.recentOutput=a.recentOutput.filter(a=>"string"==typeof a));let r=(0,h.i)(a.toolCount);void 0!==r&&(d.toolCount=r);let s=(0,h.i)(a.requests);void 0!==s&&(d.requests=s);let t=(0,h.i)(a.tokens);void 0!==t&&(d.tokens=t);let u=(0,h.i)(a.contextTokens);void 0!==u&&(d.contextTokens=u);let v=(0,h.i)(a.contextWindow);void 0!==v&&(d.contextWindow=v);let w=(0,h.i)(a.cost);void 0!==w&&(d.cost=w);let x=(0,h.i)(a.durationMs);void 0!==x&&(d.durationMs=x),("string"==typeof a.modelOverride||Array.isArray(a.modelOverride)&&a.modelOverride.every(a=>"string"==typeof a))&&(d.modelOverride=a.modelOverride);let y=(0,h.oJ)(a.modelRole);void 0!==y&&(d.modelRole=y);let z=(0,h.oJ)(a.resolvedModel);if(void 0!==z&&(d.resolvedModel=z),"boolean"==typeof a.resolvedModelIsFallback&&(d.resolvedModelIsFallback=a.resolvedModelIsFallback),(0,h.u4)(a.retryState)){let b=(0,h.i)(a.retryState.attempt),c=(0,h.i)(a.retryState.maxAttempts),e=(0,h.i)(a.retryState.delayMs),f=(0,h.oJ)(a.retryState.errorMessage),g=(0,h.i)(a.retryState.startedAtMs);void 0!==b&&void 0!==c&&void 0!==e&&void 0!==f&&void 0!==g&&(d.retryState={attempt:b,maxAttempts:c,delayMs:e,errorMessage:f,startedAtMs:g})}if((0,h.u4)(a.retryFailure)){let b=(0,h.i)(a.retryFailure.attempt),c=(0,h.oJ)(a.retryFailure.errorMessage);void 0!==b&&void 0!==c&&(d.retryFailure={attempt:b,errorMessage:c})}return void 0!==a.inflightTaskDetails&&(d.inflightTaskDetails=a.inflightTaskDetails),(0,h.u4)(a.extractedToolData)&&(d.extractedToolData=a.extractedToolData),Object.keys(d).length>0?d:void 0}(a);b?.id&&g({id:b.id,agent:b.agent??"subagent",agentSource:b.agentSource,status:"completed"===(k=b.status)?"completed":"failed"===k?"failed":"aborted"===k?"aborted":"started",task:b.task,assignment:b.assignment,description:b.description,index:b.index??0,lastIntent:b.lastIntent,toolCount:b.toolCount,requests:b.requests,tokens:b.tokens,contextTokens:b.contextTokens,contextWindow:b.contextWindow,cost:b.cost,durationMs:b.durationMs,modelOverride:b.modelOverride,modelRole:b.modelRole,resolvedModel:b.resolvedModel,resolvedModelIsFallback:b.resolvedModelIsFallback,retryFailure:b.retryFailure,transcriptAvailable:!1})}for(let a of f){if(!(0,h.u4)(a))continue;let b=(0,h.oJ)(a.id);if(!b)continue;let d=c.get(b),e={},f=(0,h.i)(a.exitCode);void 0!==f&&(e.exitCode=f),!0===a.truncated&&(e.truncated=!0);let j=(0,h.i)(a.cost)??(0,i.tw)(a.usage);void 0!==j&&(e.cost=j);let k=(0,i.bA)(a.structuredOutput);void 0!==k&&(e.structuredOutput=k);let m=(0,h.oJ)(a.error);void 0!==m&&(e.error=m),!0===a.aborted&&(e.aborted=!0);let n=(0,h.oJ)(a.abortReason);void 0!==n&&(e.abortReason=n);let o=(0,h.oJ)(a.outputPath);void 0!==o&&(e.outputPath=o);let p=(0,h.oJ)(a.patchPath);void 0!==p&&(e.patchPath=p);let q=(0,h.oJ)(a.branchName);void 0!==q&&(e.branchName=q);let r=(0,h.u4)(a.retryFailure)?{attempt:(0,h.i)(a.retryFailure.attempt)??0,errorMessage:(0,h.oJ)(a.retryFailure.errorMessage)??""}:d?.retryFailure;g({id:b,agent:(0,h.oJ)(a.agent)??d?.agent??"subagent",agentSource:("bundled"===(l=a.agentSource)||"user"===l||"project"===l?l:void 0)??d?.agentSource,status:!0===a.aborted?"aborted":"string"==typeof a.error&&a.error?"failed":"number"==typeof a.exitCode?0===a.exitCode?"completed":"failed":"completed"===a.status?"completed":"failed"===a.status?"failed":"aborted"===a.status?"aborted":"started",task:(0,h.oJ)(a.task)??d?.task,assignment:(0,h.oJ)(a.assignment)??d?.assignment,description:(0,h.oJ)(a.description)??d?.description,index:(0,h.i)(a.index)??d?.index??0,lastIntent:(0,h.oJ)(a.lastIntent)??d?.lastIntent,toolCount:(0,h.i)(a.toolCount)??d?.toolCount,requests:(0,h.i)(a.requests)??d?.requests,tokens:(0,h.i)(a.tokens)??d?.tokens,contextTokens:(0,h.i)(a.contextTokens)??d?.contextTokens,contextWindow:(0,h.i)(a.contextWindow)??d?.contextWindow,cost:(0,h.i)(a.cost)??(0,i.tw)(a.usage)??d?.cost,durationMs:(0,h.i)(a.durationMs)??d?.durationMs,modelOverride:"string"==typeof a.modelOverride||Array.isArray(a.modelOverride)?a.modelOverride:d?.modelOverride,modelRole:(0,h.oJ)(a.modelRole)??d?.modelRole,resolvedModel:(0,h.oJ)(a.resolvedModel)??d?.resolvedModel,resolvedModelIsFallback:"boolean"==typeof a.resolvedModelIsFallback?a.resolvedModelIsFallback:d?.resolvedModelIsFallback,retryFailure:r,transcriptAvailable:!1,result:Object.keys(e).length>0?e:void 0})}if(j){let a=(0,h.oJ)(j.jobId);a&&!c.has(a)&&g({id:a,agent:"task",status:"completed"===j.state?"completed":"failed"===j.state?"failed":"started",index:c.size,transcriptAvailable:!1})}}let m=j(a),n=new Set;for(let a of b){if("message"!==a.type||a.message?.role!=="toolResult")continue;let b=a.message;if("task"!==b.toolName)continue;let c=(0,h.u4)(b.details)?b.details:{},d=(0,h.u4)(c.async)?c.async:void 0,e=d?(0,h.oJ)(d.jobId):void 0;e&&n.add(e)}let o=[...c.values()];for(let a of o){n.has(a.id)&&(a.detached=!0);let b=(0,e.join)(m,`${a.id}.jsonl`);(0,d.existsSync)(b)&&(a.sessionFile=b,a.transcriptAvailable=!0)}return o.sort((a,b)=>a.index-b.index||a.id.localeCompare(b.id))}function n(a,b=0){let c,e={sessionFile:a,fromByte:"number"==typeof b&&Number.isFinite(b)?Math.max(0,Math.trunc(b)):0,nextByte:"number"==typeof b&&Number.isFinite(b)?Math.max(0,Math.trunc(b)):0,reset:!1,messages:[]},h=e.fromByte,i=!1;try{c=(0,d.openSync)(a,"r");let b=(0,d.fstatSync)(c).size;if(h>b&&(h=0,i=!0),b>0x1000000)return{...e,fromByte:h,nextByte:h,reset:i,error:"Subagent transcript exceeds the readable size limit"};let j=[],k=0,l=0;for(;h+k<b;){let a=Buffer.allocUnsafe(Math.min(262144,b-h-k)),e=(0,d.readSync)(c,a,0,a.length,h+k);if(0===e)break;let f=a.subarray(0,e),g=0===k?f.lastIndexOf(10):f.indexOf(10);if(g>=0){j.push(f.subarray(0,g+1)),l=k+g+1;break}j.push(f),k+=e}let m=[];if(l>0){let a=(1===j.length?j[0]:Buffer.concat(j,l)).toString("utf8");for(let b of(0,g.nr)(a)){if(null===b||"object"!=typeof b||Array.isArray(b))continue;let a=(0,f.HA)(b,{});null!==a&&m.push(a)}}return{sessionFile:a,fromByte:h,nextByte:h+l,reset:i,messages:m,totalBytes:b}}catch{return{...e,fromByte:h,nextByte:h,reset:i}}finally{void 0!==c&&(0,d.closeSync)(c)}}function o(a){let b;try{b=(0,d.statSync)(a).size}catch{return null}if(b<=0)return null;let c=b>1048576,e=Math.min(b,1048576),f=(0,d.openSync)(a,"r");try{let a=Buffer.alloc(e),b=(0,d.readSync)(f,a,0,e,0),g=a.subarray(0,b),h=g.length,i=0;for(;h-i>0&&(192&g[h-1-i])==128;)i+=1;let j=h-1-i;if(j>=0){let a=g[j];j+(a>=240?4:a>=224?3:a>=192?2:1)>g.length&&(h=j)}else h=0;return{completion:g.subarray(0,h).toString("utf8"),truncated:c}}finally{(0,d.closeSync)(f)}}},65644:(a,b,c)=>{c.d(b,{Q7:()=>h,Rk:()=>k,rl:()=>g});var d=c(23211),e=c(78573);let f={error:"Session not found",code:"session_not_found"};async function g(a){let b=await (0,e.os)(a);return b?{filePath:b}:{response:d.NextResponse.json(f,{status:404})}}function h(a,b=500){return d.NextResponse.json({error:String(a)},{status:b})}let i=/^[a-z][a-z0-9_]{0,63}$/;function j(a,b){let c=a[b];return"string"==typeof c&&c.length>0?c:void 0}function k(a){let b=function(a){if(!(a instanceof Error)||!a.message)return null;if("WebRpcError"===a.name){let b=j(a,"code");return b&&i.test(b)?{error:a.message,code:b}:null}if("RpcCommandError"===a.name){if(!j(a,"command"))return null;let b=j(a,"code")??"rpc_command_failed";return i.test(b)?{error:a.message,code:b}:null}return null}(a);return b?d.NextResponse.json(b,{status:400}):null}}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=7779,exports.ids=[7779],exports.modules={28967:(a,b,c)=>{function d(){return globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear()}function f(a){return{...a,modelError:"Model list is temporarily unavailable. Check your configuration and try again."}}function g(a,b){var c,e,f;let g,h,i=d(),j=i.entries.get(a);if(j&&j.expiresAt>Date.now())return Promise.resolve(j.data);let k=i.inFlight.get(a)??(c=i,e=a,f=b,g=c.generation,h=Promise.resolve().then(f).then(a=>{if(c.generation===g&&c.inFlight.get(e)===h){for(c.entries.delete(e);c.entries.size>=32;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(e,{data:a,expiresAt:Date.now()+6e4})}return a}).finally(()=>{c.inFlight.get(e)===h&&c.inFlight.delete(e)}),c.inFlight.set(e,h),h);return j?(k.catch(()=>{}),Promise.resolve(j.data)):k}c.d(b,{Fw:()=>f,kn:()=>e,rC:()=>g})},87779:(a,b,c)=>{c.d(b,{A4:()=>T,HG:()=>U,rb:()=>P,Te:()=>V,OF:()=>$,Fn:()=>X});var d=c(29021),e=c(21820),f=c(78970),g=c(28967),h=c(13798),i=c(88501),j=c(78573),k=c(77598);let l={revision:0,items:[]},m="enqueue_message",n="recall_queued_message",o="delete_queued_message",p="promote_queued_message",q="get_message_queue",r="queue_stale_revision",s="queue_item_missing",t="queue_item_sending",u="queue_invalid",v="This message may already have been handed to the agent. It was not confirmed and will not be retried.",w=new Set([m,n,o,p,q]);class x extends Error{constructor(a,b){super(a),this.name="SessionQueueError",this.code=b}}function y(a){return"steer"===a||"followUp"===a}function z(a){return{type:"message_queue_update",queue:a}}function A(a,b){return b?{queue:a,recalled:b}:{queue:a}}function B(a){return Buffer.byteLength(a,"utf8")}function C(a){let b={id:a.id,text:a.text,lane:a.lane,status:a.status,...a.error?{error:a.error}:{}};return Object.freeze(b),b}class D{getSnapshot(){return this.snapshot}hasSending(){return this.items.some(a=>"sending"===a.status)}selectDispatchCandidate(a){if(!this.hasSending())return this.items.find(b=>"queued"===b.status&&b.lane===a)}enqueue(a){if(!y(a.lane))throw new x("lane must be steer or followUp",u);let b=this.assertText(a.text);if(this.items.length>=32)throw new x("The queue already holds 32 messages","queue_full");this.assertTotalBytes(B(b));let c=C({id:(0,k.randomUUID)(),lane:a.lane,text:b,status:"queued"});return this.items=[...this.items,c],this.publish()}promote(a,b){let c=this.requireMutable(a,b);if("followUp"!==c.lane||"queued"!==c.status)throw new x("Only a queued follow-up can be promoted to steer",u);let d=C({...c,lane:"steer",status:"queued"});return this.items=[d,...this.items.filter(b=>b.id!==a)],this.publish()}recall(a,b){let c=this.requireMutable(a,b);return this.items=this.items.filter(b=>b.id!==a),{item:c,snapshot:this.publish()}}delete(a,b){return this.requireMutable(a,b),this.items=this.items.filter(b=>b.id!==a),this.publish()}markSending(a){let b=this.items.find(b=>b.id===a);if(!b)throw new x("Queued message was not found",s);if("queued"!==b.status)throw new x("Queued message is already being sent",t);return this.replace(a,{...b,status:"sending"}),this.publish()}markFailed(a,b){let c=this.items.find(b=>b.id===a);return c?(this.replace(a,{...c,status:"failed",error:b}),this.publish()):this.snapshot}remove(a){return this.items.some(b=>b.id===a)?(this.items=this.items.filter(b=>b.id!==a),this.publish()):this.snapshot}failSending(a){return this.hasSending()?(this.items=this.items.map(b=>"sending"===b.status?C({...b,status:"failed",error:a}):b),this.publish()):this.snapshot}reset(){return this.items=[],this.revision=0,this.snapshot=l,this.snapshot}requireMutable(a,b){this.assertCas(b);let c=this.items.find(b=>b.id===a);if(!c)throw new x("Queued message was not found",s);if("sending"===c.status)throw new x("Queued message is already being sent",t);return c}assertCas(a){if("number"!=typeof a||a!==this.revision)throw new x("Queue revision is stale; reload the queue and retry",r)}assertText(a){if("string"!=typeof a)throw new x("Message text is required",u);if(0===a.length||0===a.trim().length)throw new x("Message text cannot be empty",u);if(B(a)>262144)throw new x("Message exceeds 262144 bytes","queue_item_too_large");return a}assertTotalBytes(a){let b=a;for(let a of this.items)b+=B(a.text);if(b>1048576)throw new x("Queue exceeds 1048576 bytes","queue_too_large")}replace(a,b){this.items=this.items.map(c=>c.id===a?C(b):c)}publish(){let a;this.revision+=1;let b={revision:this.revision,items:(Object.freeze(a=this.items.map(a=>C(a))),a)};return Object.freeze(b),this.snapshot=b,b}constructor(){this.revision=0,this.items=[],this.snapshot=l}}let E="This session is restarting — retry in a moment.";class F extends Error{constructor(a,b){super(a),this.name="WebRpcError",this.code=b}}let G=new Set(["select","confirm","input","editor","open_url"]),H=new Set(["abort","abort_and_prompt","set_thinking_level","cycle_thinking_level","cycle_model","get_available_models","set_auto_compaction","set_auto_retry","abort_retry","abort_bash","set_todos","set_steering_mode","set_follow_up_mode","set_interrupt_mode","get_branch_messages","get_messages","get_messages_page","export_html","handoff","get_subagents","get_subagent_messages","set_subagent_subscription","get_login_providers","login"]),I={navigate_tree:"Branch navigation is not supported over the omp RPC protocol",clear_queue:"Recalling queued messages is not supported over the omp RPC protocol",get_tools:"Per-session tool listing is not supported over the omp RPC protocol",set_tools:"Changing tools on a running session is not supported over the omp RPC protocol; tool presets apply to new sessions",extension_ui_input:"Extension custom UI is not supported over the omp RPC protocol"},J={find:"glob",search:"grep"},K=new Set(["ls"]),L=["bash","read","edit","write","grep","find","ls","task"].map(a=>a.toLowerCase()).sort().join(",");function M(a,b,c=!1){let d=[];if(a)d.push("--resume",a);else if(void 0!==b){let a=b.map(a=>a.toLowerCase()).sort().join(",");if(0===b.length)d.push("--no-tools");else if(a===L);else{let a=function(a){let b=[];for(let c of a){let a=c.toLowerCase();if(K.has(a))continue;let d=J[a]??a;b.includes(d)||b.push(d)}return b}(b);a.length>0&&d.push("--tools",a.join(","))}}return c&&!a&&d.push("--advisor"),d}function N(a){return a?.length?a:void 0}function O(a){return"string"==typeof a.toolCallId&&a.toolCallId?a.toolCallId:"string"==typeof a.id&&a.id?a.id:""}function P(a){if(a&&(0,d.existsSync)(a))return{cwd:a,fellBack:!1};try{let a=process.cwd();if(a&&(0,d.existsSync)(a))return{cwd:a,fellBack:!0}}catch{}return{cwd:(0,e.homedir)(),fellBack:!0}}function Q(a){a&&"object"==typeof a&&void 0===a.estimatedTokensAfter&&(a.estimatedTokensAfter=Math.round((a.summary?.length??0)/4))}class R{constructor(a,b,c){this.listeners=[],this.pendingUiRequests=new Map,this.uiExpiryTimers=new Map,this.extensionStatuses=new Map,this.extensionWidgets=new Map,this.promptRunning=!1,this.bashRunning=!1,this.streaming=!1,this.compacting=!1,this.fastModeEnabled=!1,this.idleTimer=null,this.destroyListeners=[],this.onIdentityChangeCallback=null,this.unsubscribeFrames=null,this.initPromise=null,this.restarting=!1,this.mcpListWaiter=null,this._alive=!0,this.hostToolNames=new Set,this.pendingHostTools=new Map,this.hostUriSchemes=new Map,this.pendingHostUris=new Map,this.messageQueue=new D,this.queueEpoch=0,this.queueDispatching=!1,this.queueDispatchAgain=!1,this.abortHoldsDispatch=!1,this.activeToolIds=new Set,this.nativeFollowUpDepth=0,this.nativeHandoffPending=0,this.nativeQueuedCount=0,this.nativeQueueStale=!1,this.nativeReconcileGeneration=0,this.destroyPromise=null,this._sessionId="",this._sessionFile="",this.sessionFileSignalTimer=null,this.proc=a,this.cwd=b,this.recordedCwd=c??null}get sessionId(){return this._sessionId}get sessionFile(){return this._sessionFile}isAlive(){return this._alive&&this.proc.isAlive}isRunning(){return this.isAlive()&&(this.promptRunning||this.streaming||this.compacting||this.bashRunning)}start(){this.unsubscribeFrames=this.proc.onFrame(a=>this.handleFrame(a)),this.resetIdleTimer(),Z()}waitUntilReady(){return this.initPromise||(this.initPromise=this.initialize()),this.initPromise}async initialize(){let a=await this.proc.waitReady(12e4);await this.proc.negotiateProtocol(a),await this.proc.sendCommand({type:"set_subagent_subscription",level:"events"}).catch(()=>{});let b=await this.proc.sendCommand({type:"get_state"});this.applyIdentity(b),this.recordedCwd&&this.recordedCwd!==this.cwd&&this.emit({type:"notice",level:"warning",message:`This session's working directory no longer exists; the agent is running in ${this.cwd}.`})}applyIdentity(a){this._sessionId=a.sessionId,this._sessionFile=a.sessionFile??"",this._sessionName=a.sessionName,this.streaming=a.isStreaming,this.compacting=a.isCompacting,this.fastModeEnabled=a.fastModeEnabled??a.fastMode??this.fastModeEnabled,this._sessionFile&&(0,j.O8)(this._sessionId,this._sessionFile)}handleProcessExit(a){if(!this._alive||this.restarting)return;let b=a.trim().split("\n").pop()??"";this.emit({type:"notice",level:"error",message:`The omp process for this session exited unexpectedly${b?`: ${b}`:"."}`}),(this.streaming||this.promptRunning)&&this.emit({type:"agent_end",isTerminal:!0,messages:[]}),this.destroy()}handleFrame(a){this.resetIdleTimer();let b=!1,c=!1;switch(a.type){case"command_output":{let b=this.mcpListWaiter;if(b&&"string"==typeof a.text){clearTimeout(b.timer),this.mcpListWaiter=null,b.resolve(a.text),Z();return}break}case"agent_start":!this.streaming&&this.nativeFollowUpDepth>0&&(this.nativeFollowUpDepth-=1),this.streaming=!0,(0,j.mD)(),b=!0,this._sessionFile&&!(0,d.existsSync)(this._sessionFile)&&this.signalWhenSessionFileAppears();break;case"agent_end":!1!==a.isTerminal&&(this.streaming=!1,this.promptRunning=!1,this.activeToolIds.clear(),(0,j.mD)(),this.nativeQueuedCount>0||this.nativeQueueStale?this.beginNativeQueueReconcile():c=!0);break;case"prompt_result":this.promptRunning=!1,c=!0;break;case"auto_compaction_start":this.compacting=!0;break;case"auto_compaction_end":this.compacting=!1,Q(a.result),(0,j.mD)(),c=!0;break;case"tool_execution_start":{let b=O(a);b&&this.activeToolIds.add(b);break}case"tool_execution_end":{let b=O(a);b&&this.activeToolIds.delete(b),c=!0;break}case"session_info_update":"string"==typeof a.title&&(this._sessionName=a.title),(0,j.mD)(),b=!0;break;case"response":if(!1===a.success&&"prompt"===a.command){this.promptRunning=!1,this.emit({type:"prompt_error",errorMessage:a.error??"Prompt failed"}),Z(),this.scheduleQueueDispatch();return}break;case"extension_ui_request":if(this.trackExtensionUiRequest(a))return void Z();break;case"host_tool_call":{let b="string"==typeof a.id?a.id:"",c="string"==typeof a.toolName?a.toolName:"";if(b&&c&&this.hostToolNames.has(c)&&this.listeners.length>0){this.pendingHostTools.set(b,a),this.emit(a),Z();return}this.rejectUnexpectedHostTool(a);return}case"host_tool_cancel":{let b="string"==typeof a.targetId?a.targetId:"";if(b&&this.pendingHostTools.delete(b)){this.emit(a),Z();return}break}case"host_uri_request":{let b="string"==typeof a.id?a.id:"",c=("string"==typeof a.url?a.url:"").split(":")[0]??"",d="write"===a.operation?"write":"read",e=this.hostUriSchemes.get(c);if(b&&c&&e&&("write"!==d||e.writable)&&this.listeners.length>0){this.pendingHostUris.set(b,a),this.emit(a),Z();return}this.proc.sendFrame({type:"host_uri_result",id:b,isError:!0,error:`URI scheme "${c}" is not registered by omp-web`});return}case"host_uri_cancel":{let b="string"==typeof a.targetId?a.targetId:"";if(b&&this.pendingHostUris.delete(b)){this.emit(a),Z();return}}}this.emit(a),Z({refreshSessionList:b}),c&&this.scheduleQueueDispatch()}forgetPendingUiRequest(a){this.pendingUiRequests.delete(a);let b=this.uiExpiryTimers.get(a);b&&(clearTimeout(b),this.uiExpiryTimers.delete(a))}clearPendingUiRequests(){for(let a of this.uiExpiryTimers.values())clearTimeout(a);this.uiExpiryTimers.clear(),this.pendingUiRequests.clear()}trackExtensionUiRequest(a){let b=a.method,c=a.id;if("cancel"===b)return this.forgetPendingUiRequest(a.targetId),!1;let d=!1;try{d=(0,i.rk)().settings.tools?.approval?.extension==="allow"}catch{}if("confirm"===b&&"string"==typeof a.title&&/^allow tool\s*:/i.test(a.title)&&d)return this.forgetPendingUiRequest(c),this.proc.sendFrame({type:"extension_ui_response",id:c,confirmed:!0}),!0;if(G.has(b)){this.forgetPendingUiRequest(c);let b="number"==typeof a.timeout?a.timeout:void 0;if(b&&b>0){a.expiresAt=Date.now()+b;let d=setTimeout(()=>this.forgetPendingUiRequest(c),b);d.unref?.(),this.uiExpiryTimers.set(c,d)}return this.pendingUiRequests.set(c,a),!1}if("setStatus"===b){let b=a.statusKey,c=a.statusText;return void 0===c?this.extensionStatuses.delete(b):this.extensionStatuses.set(b,c),!1}if("setWidget"===b){let b=a.widgetKey,c=a.widgetLines;void 0===c?this.extensionWidgets.delete(b):this.extensionWidgets.set(b,{key:b,lines:c,placement:a.widgetPlacement??"aboveEditor"})}return!1}rejectUnexpectedHostTool(a){let b="string"==typeof a.id?a.id:"";if(!b)return;let c="string"==typeof a.toolName?a.toolName:"unknown";this.proc.sendFrame({type:"host_tool_result",id:b,isError:!0,result:{content:[{type:"text",text:`Host tool "${c}" is not available in ompgui. Use OMP's built-in tools within the selected workspace.`}]}}),this.emit({type:"notice",level:"warning",message:`Rejected unavailable host tool: ${c}`})}rejectPendingHostTools(a){for(let b of this.pendingHostTools.keys())this.proc.sendFrame({type:"host_tool_result",id:b,isError:!0,result:{content:[{type:"text",text:a}]}});this.pendingHostTools.clear()}rejectPendingHostUris(a){for(let b of this.pendingHostUris.keys())this.proc.sendFrame({type:"host_uri_result",id:b,isError:!0,error:a});this.pendingHostUris.clear()}emit(a){for(let b of this.listeners)try{b(a)}catch{}}signalWhenSessionFileAppears(){if(this.sessionFileSignalTimer)return;let a=0,b=()=>{if(this.sessionFileSignalTimer=null,this._alive&&this._sessionFile){if(!(0,d.existsSync)(this._sessionFile)){(a+=1)<40&&(this.sessionFileSignalTimer=setTimeout(b,250));return}(0,j.mD)(),Z({refreshSessionList:!0})}};this.sessionFileSignalTimer=setTimeout(b,250)}resetIdleTimer(){this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{this.isRunning()?this.resetIdleTimer():this.destroy()},6e5)}onEvent(a){this.listeners.push(a);let b=Date.now();for(let[c,d]of this.pendingUiRequests){let e=d.expiresAt;if(void 0!==e&&e<=b){this.forgetPendingUiRequest(c);continue}a(d)}return a(z(this.messageQueue.getSnapshot())),()=>{let b=this.listeners.indexOf(a);-1!==b&&this.listeners.splice(b,1),0===this.listeners.length&&(this.rejectPendingHostTools("The web UI disconnected while the agent was waiting for this host tool"),this.rejectPendingHostUris("The web UI disconnected while the agent was waiting for this URI request"))}}onDestroy(a){return this._alive?(this.destroyListeners.push(a),()=>{let b=this.destroyListeners.indexOf(a);-1!==b&&this.destroyListeners.splice(b,1)}):(a(),()=>{})}onIdentityChange(a){this.onIdentityChangeCallback=a}async withFinalRunningNotification(a){try{return await a()}finally{Z()}}async getMcpList(){let a,b;if(this.restarting)throw new F(E,"session_restarting");if(!this.isAlive())throw Error("Session is no longer running");if(this.isRunning())throw new F("Wait for the current run to finish","session_busy");if(this.mcpListWaiter)throw new F("MCP list is already loading","mcp_list_loading");this.promptRunning=!0,Z();let c=new Promise((c,d)=>{a=c,b=d});c.catch(()=>{});let d={resolve:a,reject:b,timer:void 0};d.timer=setTimeout(()=>{this.mcpListWaiter===d&&(this.mcpListWaiter=null,b(new F("Timed out while loading MCP servers","mcp_list_timeout")))},15e3),d.timer.unref?.(),this.mcpListWaiter=d;try{return await this.proc.sendCommand({type:"prompt",message:"/mcp list"}),await c}catch(a){throw this.mcpListWaiter===d&&(clearTimeout(d.timer),this.mcpListWaiter=null,d.reject(a instanceof Error?a:Error(String(a)))),a}finally{this.mcpListWaiter===d&&(clearTimeout(d.timer),this.mcpListWaiter=null),this.promptRunning=!1,Z()}}buildWebState(a){return this.streaming=a.isStreaming,this.compacting=a.isCompacting,this._sessionName=a.sessionName,this.nativeQueuedCount=a.queuedMessageCount??0,this.nativeQueueStale=!1,a.sessionId&&(this._sessionId=a.sessionId,this._sessionFile=a.sessionFile??this._sessionFile),{sessionId:a.sessionId,sessionFile:a.sessionFile??"",sessionName:a.sessionName,isStreaming:a.isStreaming,isPromptRunning:this.promptRunning,isBashRunning:this.bashRunning,isCompacting:a.isCompacting,autoCompactionEnabled:a.autoCompactionEnabled,autoRetryEnabled:a.autoRetryEnabled,interruptMode:a.interruptMode,steeringMode:a.steeringMode,followUpMode:a.followUpMode,model:a.model?{id:a.model.id,provider:a.model.provider,name:a.model.name,reasoning:a.model.reasoning,thinking:a.model.thinking?{efforts:a.model.thinking.efforts}:void 0}:void 0,messageCount:a.messageCount,queuedMessageCount:a.queuedMessageCount,messageQueue:this.queueSnapshotForClient(),contextUsage:a.contextUsage??null,systemPrompt:a.systemPrompt?.join("\n\n")??"",thinkingLevel:a.thinkingLevel??"off",fastModeEnabled:a.fastModeEnabled??a.fastMode??this.fastModeEnabled,fastModeActive:a.fastModeActive,todoPhases:a.todoPhases??[],extensionStatuses:Array.from(this.extensionStatuses,([a,b])=>({key:a,text:b})),extensionWidgets:Array.from(this.extensionWidgets.values())}}async refreshIdentityAfterSessionChange(){let a=this._sessionId,b=await this.proc.sendCommand({type:"get_state"});return this.applyIdentity(b),a&&a!==this._sessionId&&(this.discardQueue("Queued messages were discarded because the session changed."),this.onIdentityChangeCallback?.(a,this._sessionId)),(0,j.mD)(),this._sessionId}async restart(){if(this.restarting)throw new F(E,"session_restarting");let a=this._sessionFile,b=!!a&&(0,d.existsSync)(a),c=this.proc;this.restarting=!0,this.queueEpoch+=1,this.abortHoldsDispatch=!1,this.activeToolIds.clear(),this.nativeFollowUpDepth=0,this.nativeHandoffPending=0,this.nativeQueuedCount=0,this.nativeQueueStale=!1,this.nativeReconcileGeneration+=1,this.messageQueue.failSending(v),this.emitQueueSnapshot(),this.unsubscribeFrames?.();try{if(await c.dispose(),!this._alive)return;this.extensionStatuses.clear(),this.extensionWidgets.clear(),this.clearPendingUiRequests(),this.promptRunning=!1,this.bashRunning=!1,this.streaming=!1,this.compacting=!1;let d=new h.X({cwd:this.cwd,extraArgs:M(b?a:""),onExit:({stderrTail:a})=>{this.proc===d&&this.handleProcessExit(a)}});this.proc=d,this.unsubscribeFrames=d.onFrame(a=>this.handleFrame(a));try{let a=await d.waitReady(12e4);await d.negotiateProtocol(a),await d.sendCommand({type:"set_subagent_subscription",level:"events"}).catch(()=>{});let b=await d.sendCommand({type:"get_state"});this.applyIdentity(b)}catch(a){throw this.unsubscribeFrames?.(),this.unsubscribeFrames=null,d.dispose(),this.destroy(),a}}finally{this.restarting=!1}Z(),this.scheduleQueueDispatch()}async send(a){if(this.restarting)throw new F(E,"session_restarting");if(!this.isAlive())throw Error("Session is no longer running");this.resetIdleTimer();let b=a.type;if("prompt"===b||"steer"===b||"follow_up"===b){let b=(0,f.kc)(a.images);if(b)throw Error(b)}let c=I[b];if(c)throw new h.x(b,c,"unsupported");if("string"==typeof b&&w.has(b))return this.handleQueueCommand(a);switch(b){case"prompt":{if(this.bashRunning)throw Error("Cannot send a prompt while a shell command is running");let b=a.streamingBehavior;b||(this.abortHoldsDispatch=!1,this.promptRunning=!0,Z());try{let c=await this.forwardNativeHandoff({type:"prompt",message:a.message,...N(a.images)?{images:N(a.images)}:{},...b?{streamingBehavior:b}:{}},"followUp"===b);c?.agentInvoked===!1&&(b||(this.promptRunning=!1,this.emit({type:"prompt_result",agentInvoked:!1}),Z()),this.scheduleQueueDispatch())}catch(a){throw this.promptRunning=!1,Z(),a}return null}case"steer":case"follow_up":return await this.forwardNativeHandoff({type:b,message:a.message,...N(a.images)?{images:N(a.images)}:{}},"follow_up"===b),null;case"abort":return this.abortHoldsDispatch=!0,await this.withFinalRunningNotification(async()=>{await this.proc.sendCommand({type:"abort"}),this.promptRunning=!1}),null;case"get_state":{let a=await this.proc.sendCommand({type:"get_state"});return this.buildWebState(a)}case"set_model":{let{provider:b,modelId:c}=a,d=await this.proc.sendCommand({type:"set_model",provider:b,modelId:c});return(0,g.kn)(),(0,j.mD)(),{id:d.id,provider:d.provider}}case"set_fast_mode":{let b=!0===a.enabled,c=await this.proc.sendCommand({type:"set_fast_mode",enabled:b});return this.fastModeEnabled=c?.enabled??b,{enabled:this.fastModeEnabled,active:c?.active??!1}}case"fork":if(this.bashRunning)throw Error("Cannot fork while a shell command is running");if(this.queueEpoch+=1,this.messageQueue.failSending(v),this.emitQueueSnapshot(),(await this.proc.sendCommand({type:"branch",entryId:a.entryId})).cancelled)return{cancelled:!0};return{cancelled:!1,newSessionId:await this.refreshIdentityAfterSessionChange()};case"new_session":case"switch_session":{this.queueEpoch+=1,this.messageQueue.failSending(v),this.emitQueueSnapshot();let b=await this.proc.sendCommand(a);if(!b.cancelled)return{cancelled:!1,newSessionId:await this.refreshIdentityAfterSessionChange()};return b}case"compact":try{return await this.withFinalRunningNotification(async()=>{this.compacting=!0,Z();try{let b=await this.proc.sendCommand({type:"compact",...a.customInstructions?{customInstructions:a.customInstructions}:{}});return Q(b),b}finally{this.compacting=!1}})}finally{(0,j.mD)(),this.scheduleQueueDispatch()}case"abort_compaction":return this.abortHoldsDispatch=!0,await this.withFinalRunningNotification(()=>this.proc.sendCommand({type:"abort"})),null;case"set_session_name":{let b=a.name?.trim();if(!b)throw Error("Session name cannot be empty");return await this.proc.sendCommand({type:"set_session_name",name:b}),this._sessionName=b,(0,j.mD)(),null}case"get_session_stats":return{...await this.proc.sendCommand({type:"get_session_stats"}),sessionName:this._sessionName};case"get_last_assistant_text":return{text:(await this.proc.sendCommand({type:"get_last_assistant_text"})).text??""};case"get_commands":return await this.proc.sendCommand({type:"get_available_commands"});case"reload":return await this.restart(),{success:!0};case"extension_ui_response":{let{id:b,...c}=a;return this.forgetPendingUiRequest(b),this.proc.sendFrame({type:"extension_ui_response",id:b,...c}),null}case"bash":if(!0===a.excludeFromContext)throw new F("omp cannot run a shell command with its output excluded from the model context (`!!`): the RPC bash command has no exclusion option, so the output would silently enter the context anyway. Run it with a single `!` to share the output with the model, or use a terminal outside ompgui.","bash_exclude_unsupported");if(this.isRunning())throw Error("Cannot run a shell command while the session is busy");this.bashRunning=!0,Z();try{return await this.proc.sendCommand({type:"bash",command:a.command})}finally{this.bashRunning=!1,(0,j.mD)(),Z(),this.scheduleQueueDispatch()}case"set_host_tools":{let b=(Array.isArray(a.tools)?a.tools:[]).filter(a=>"string"==typeof a.name&&a.name);return this.hostToolNames=new Set(b.map(a=>a.name)),await this.proc.sendCommand({type:"set_host_tools",tools:b}),null}case"host_tool_result":return"string"==typeof a.id&&this.pendingHostTools.delete(a.id),await this.proc.sendCommand(a),null;case"set_host_uri_schemes":{let b=Array.isArray(a.schemes)?a.schemes:[];for(let a of(this.hostUriSchemes=new Map,b))"string"==typeof a.scheme&&a.scheme&&this.hostUriSchemes.set(a.scheme,{writable:!0===a.writable});return await this.proc.sendCommand({type:"set_host_uri_schemes",schemes:b}),null}case"host_uri_result":return"string"==typeof a.id&&this.pendingHostUris.delete(a.id),await this.proc.sendCommand(a),null;default:if(H.has(b)){let c=await this.proc.sendCommand(a);return"set_thinking_level"===b&&(0,j.mD)(),c??null}throw Error(`Unsupported command: ${b}`)}}handleQueueCommand(a){try{let b=a.type;switch(b){case m:if(!y(a.lane))throw new x("lane must be steer or followUp",u);if("string"!=typeof a.message)throw new x("message is required",u);return this.abortHoldsDispatch=!1,this.messageQueue.enqueue({lane:a.lane,text:a.message}),this.emitQueueSnapshot(),this.finishQueueCommand();case p:if("string"!=typeof a.id)throw new x("id is required",u);return this.abortHoldsDispatch=!1,this.messageQueue.promote(a.id,this.requireExpectedRevision(a)),this.emitQueueSnapshot(),this.finishQueueCommand();case n:{if("string"!=typeof a.id)throw new x("id is required",u);let{item:b}=this.messageQueue.recall(a.id,this.requireExpectedRevision(a));return this.emitQueueSnapshot(),this.finishQueueCommand(b)}case o:if("string"!=typeof a.id)throw new x("id is required",u);return this.messageQueue.delete(a.id,this.requireExpectedRevision(a)),this.emitQueueSnapshot(),this.finishQueueCommand();case q:return Promise.resolve(A(this.queueSnapshotForClient()));default:throw Error(`Unsupported command: ${b}`)}}catch(a){if(a instanceof x)throw new F(a.message,a.code);throw a}}requireExpectedRevision(a){if("number"!=typeof a.expectedRevision)throw new x("Queue revision is stale; reload the queue and retry",r);return a.expectedRevision}async finishQueueCommand(a){return await this.drainQueueDispatch(),A(this.queueSnapshotForClient(),a)}queueSnapshotForClient(){return{...this.messageQueue.getSnapshot(),nativeQueuedCount:this.nativeQueuedCount}}emitQueueSnapshot(){this.emit(z(this.queueSnapshotForClient()))}beginNativeQueueReconcile(){this.nativeQueueStale=!0,this.nativeReconcileGeneration+=1;let a=this.nativeReconcileGeneration,b=this.queueEpoch,c=this.proc;this.refreshNativeQueuedCount(a,b,c)}async refreshNativeQueuedCount(a,b,c){try{let d=await c.sendCommand({type:"get_state"});if(!this.nativeReconcileStillValid(a,b,c))return;this.nativeQueuedCount=d.queuedMessageCount??0,this.nativeQueueStale=!1}catch{if(!this.nativeReconcileStillValid(a,b,c))return;this.nativeQueuedCount=0,this.nativeQueueStale=!1}this.scheduleQueueDispatch()}nativeReconcileStillValid(a,b,c){return this._alive&&this.queueEpoch===b&&this.proc===c&&this.nativeReconcileGeneration===a}discardQueue(a){this.queueEpoch+=1;let b=this.messageQueue.getSnapshot().items.length>0;this.messageQueue.reset(),this.emitQueueSnapshot(),b&&this.emit({type:"notice",level:"warning",message:a})}scheduleQueueDispatch(){this.drainQueueDispatch()}async drainQueueDispatch(){if(this.queueDispatching){this.queueDispatchAgain=!0;return}this.queueDispatching=!0;try{do this.queueDispatchAgain=!1,await this.dispatchNextQueueItem();while(this.queueDispatchAgain)}catch{}finally{this.queueDispatching=!1,this.queueDispatchAgain&&this.scheduleQueueDispatch()}}canDispatchSteer(){return this.isAlive()&&!this.restarting&&this.streaming&&!this.compacting&&!this.bashRunning&&0===this.activeToolIds.size&&0===this.pendingHostTools.size&&0===this.nativeHandoffPending}canDispatchFollowUp(){return this.isAlive()&&!this.restarting&&!this.abortHoldsDispatch&&!this.promptRunning&&!this.streaming&&!this.compacting&&!this.bashRunning&&0===this.activeToolIds.size&&0===this.pendingHostTools.size&&0===this.nativeFollowUpDepth&&0===this.nativeHandoffPending&&!this.nativeQueueStale&&0===this.nativeQueuedCount}canDispatchIdlePrompt(){return this.canDispatchFollowUp()}async dispatchNextQueueItem(){for(;this.isAlive()&&!this.restarting;){if(this.messageQueue.hasSending())return;let a=this.messageQueue.selectDispatchCandidate("steer");if(a){if(this.canDispatchSteer()){await this.forwardQueueItem(a,"steer");continue}if(this.canDispatchIdlePrompt()){await this.forwardQueueItem(a);continue}return}let b=this.messageQueue.selectDispatchCandidate("followUp");if(b&&this.canDispatchFollowUp()){await this.forwardQueueItem(b);continue}return}}async forwardQueueItem(a,b){let c=this.queueEpoch,d=this.proc,e=this._sessionId;this.messageQueue.markSending(a.id),this.emitQueueSnapshot(),b||(this.promptRunning=!0,Z());try{let f=await d.sendCommand({type:"prompt",message:a.text,...b?{streamingBehavior:b}:{}},3e4);if(!this.queueForwardStillValid(c,d,e,a.id))return;this.messageQueue.remove(a.id),this.emitQueueSnapshot(),f?.agentInvoked!==!1||b||(this.promptRunning=!1,this.emit({type:"prompt_result",agentInvoked:!1}),Z())}catch(g){if(b||(this.promptRunning=!1),!this.queueForwardStillValid(c,d,e,a.id))return;let f=g instanceof Error&&/timed out/i.test(g.message)?v:`${v} ${g instanceof Error?g.message:String(g)}`;this.messageQueue.markFailed(a.id,f),this.emitQueueSnapshot(),this.emit({type:"notice",level:"warning",message:f}),Z()}}queueForwardStillValid(a,b,c,d){return!!this._alive&&this.queueEpoch===a&&this.proc===b&&(!c||this._sessionId===c)&&this.messageQueue.getSnapshot().items.some(a=>a.id===d&&"sending"===a.status)}async forwardNativeHandoff(a,b){this.nativeHandoffPending+=1,b&&(this.nativeFollowUpDepth+=1);try{var c;let d=await this.proc.sendCommand(a);return b&&(c=d)&&"object"==typeof c&&!1===c.agentInvoked&&(this.nativeFollowUpDepth=Math.max(0,this.nativeFollowUpDepth-1)),d}catch(a){throw b&&(this.nativeFollowUpDepth=Math.max(0,this.nativeFollowUpDepth-1)),a}finally{this.nativeHandoffPending=Math.max(0,this.nativeHandoffPending-1),this.scheduleQueueDispatch()}}destroy(){this.destroyAndWait()}async destroyAndWait(){if(this.destroyPromise)return this.destroyPromise;if(!this._alive)return;this._alive=!1,this.queueEpoch+=1,this.abortHoldsDispatch=!0,this.discardQueue("Queued messages were discarded because the session shut down."),this.idleTimer&&clearTimeout(this.idleTimer),this.sessionFileSignalTimer&&(clearTimeout(this.sessionFileSignalTimer),this.sessionFileSignalTimer=null),this.unsubscribeFrames?.(),this.clearPendingUiRequests(),this.mcpListWaiter&&(clearTimeout(this.mcpListWaiter.timer),this.mcpListWaiter.reject(Error("Session was closed while loading MCP servers")),this.mcpListWaiter=null);let a=this.proc.dispose().catch(()=>{}).then(()=>{for(let[a,b]of S())b===this&&S().delete(a)});for(let b of(this.destroyPromise=a,this.pendingHostTools.clear(),this.hostToolNames.clear(),this.pendingHostUris.clear(),this.hostUriSchemes.clear(),this.destroyListeners.splice(0)))try{b()}catch{}Z(),await a}}function S(){if(!globalThis.__ompSessions){globalThis.__ompSessions=new Map;let a=()=>globalThis.__ompSessions?.forEach(a=>a.destroy());process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__ompSessions}function T(a){return S().get(a)}function U(){let a=new Set;for(let[b,c]of S())c.isRunning()&&a.add(c.sessionId||b);return[...a]}async function V(){let a=[...new Set(S().values())];return await Promise.all(a.map(a=>a.destroyAndWait())),a.length}function W(){return globalThis.__ompRunningListeners||(globalThis.__ompRunningListeners=new Set),globalThis.__ompRunningListeners}function X(a){let b=W();return b.add(a),()=>{b.delete(a)}}let Y="";function Z({refreshSessionList:a=!1}={}){let b=U(),c=JSON.stringify([...b].sort());if(c===Y&&!a)return;Y=c;let d={ids:b,refreshSessionList:a};for(let a of W())try{a(d)}catch{}}async function $(a,b,c,d,e=!1,f){let g=S(),i=(globalThis.__ompStartLocks||(globalThis.__ompStartLocks=new Map),globalThis.__ompStartLocks),j=g.get(a);for(;j&&!j.isAlive()&&j.destroyPromise;)await j.destroyPromise,j=g.get(a);if(j?.isAlive())return{session:j,realSessionId:a};let k=i.get(a);if(k)return k;let l=(async()=>{let a={},i=new R(new h.X({cwd:c,extraArgs:M(b,d,e),onExit:({stderrTail:b})=>a.wrapper?.handleProcessExit(b)}),c,f);a.wrapper=i,i.start();try{await i.waitUntilReady()}catch(a){throw await i.destroyAndWait(),a}let j=i.sessionId;return i.onIdentityChange((a,b)=>{g.get(a)===i&&g.delete(a),g.set(b,i)}),g.set(j,i),{session:i,realSessionId:j}})().finally(()=>i.delete(a));return i.set(a,l),l}}};