@calmabacus/pi-web 1.1.2 → 1.1.4

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 (383) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +10 -10
  3. package/.next/build-manifest.json +5 -5
  4. package/.next/diagnostics/framework.json +1 -1
  5. package/.next/images-manifest.json +1 -1
  6. package/.next/next-server.js.nft.json +1 -1
  7. package/.next/prerender-manifest.json +6 -6
  8. package/.next/required-server-files.js +7 -7
  9. package/.next/required-server-files.json +7 -7
  10. package/.next/routes-manifest.json +10 -0
  11. package/.next/server/app/_global-error/page.js +2 -2
  12. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_global-error.html +1 -1
  14. package/.next/server/app/_global-error.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next/server/app/_not-found/page.js +1 -1
  19. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/server/app/_not-found.html +1 -1
  21. package/.next/server/app/_not-found.rsc +5 -7
  22. package/.next/server/app/_not-found.segments/_full.segment.rsc +5 -7
  23. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +10 -11
  24. package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -6
  25. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  26. package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  28. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/agent/[id]/lease/route.js +1 -1
  30. package/.next/server/app/api/agent/[id]/lease/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/agent/[id]/route.js +1 -1
  32. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/agent/new/route.js +1 -1
  34. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/agent/running/route.js +1 -1
  36. package/.next/server/app/api/agent/running/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/app-update/route.js +1 -1
  38. package/.next/server/app/api/app-update/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -1
  41. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  43. package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -1
  44. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  46. package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -1
  47. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/auth/providers/route.js +1 -1
  49. package/.next/server/app/api/auth/providers/route.js.nft.json +1 -1
  50. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/cwd/browse/route.js +1 -1
  52. package/.next/server/app/api/cwd/browse/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/cwd/validate/route.js +1 -1
  54. package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/default-cwd/route.js +1 -1
  56. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/file-index/route.js +1 -1
  58. package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/files/[...path]/route.js +1 -1
  60. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/git/diff/route.js +1 -1
  62. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/git/status/route.js +2 -2
  64. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/home/route.js +1 -1
  66. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/image-generation/route.js +1 -1
  68. package/.next/server/app/api/image-generation/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/image-generation/settings/connections/route.js +1 -1
  70. package/.next/server/app/api/image-generation/settings/connections/route_client-reference-manifest.js +1 -1
  71. package/.next/server/app/api/image-generation/settings/route.js +1 -1
  72. package/.next/server/app/api/image-generation/settings/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/models/route.js +1 -1
  74. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  75. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  76. package/.next/server/app/api/models-config/catalog/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/models-config/discover/route.js +1 -1
  78. package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -1
  79. package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -1
  80. package/.next/server/app/api/models-config/picker/route.js +1 -1
  81. package/.next/server/app/api/models-config/picker/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/models-config/route.js +1 -1
  83. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -1
  84. package/.next/server/app/api/models-config/runtime/route.js +1 -1
  85. package/.next/server/app/api/models-config/runtime/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/models-config/test/route.js +1 -1
  87. package/.next/server/app/api/models-config/test/route.js.nft.json +1 -1
  88. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -1
  89. package/.next/server/app/api/plugins/check/route.js +1 -1
  90. package/.next/server/app/api/plugins/check/route_client-reference-manifest.js +1 -1
  91. package/.next/server/app/api/plugins/route.js +1 -1
  92. package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/project-trust/route.js +1 -1
  94. package/.next/server/app/api/project-trust/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/api/push/config/route.js +1 -1
  96. package/.next/server/app/api/push/config/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/api/push/subscribe/route.js +1 -1
  98. package/.next/server/app/api/push/subscribe/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/api/sessions/[id]/auto-name/route.js +2 -2
  100. package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  102. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  104. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route.js +1 -1
  106. package/.next/server/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route_client-reference-manifest.js +1 -1
  107. package/.next/server/app/api/sessions/[id]/export/route.js +2 -2
  108. package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -1
  109. package/.next/server/app/api/sessions/[id]/outline/route.js +1 -1
  110. package/.next/server/app/api/sessions/[id]/outline/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  112. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -1
  113. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  114. package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/sessions/route.js +1 -1
  116. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  117. package/.next/server/app/api/sessions/search/route.js +1 -1
  118. package/.next/server/app/api/sessions/search/route_client-reference-manifest.js +1 -1
  119. package/.next/server/app/api/skills/check/route.js +1 -1
  120. package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -1
  121. package/.next/server/app/api/skills/install/route.js +1 -1
  122. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -1
  123. package/.next/server/app/api/skills/route.js +1 -1
  124. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  125. package/.next/server/app/api/skills/search/route.js +1 -1
  126. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/skills/update/route.js +1 -1
  128. package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -1
  129. package/.next/server/app/api/subagents/[id]/route.js +1 -1
  130. package/.next/server/app/api/subagents/[id]/route_client-reference-manifest.js +1 -1
  131. package/.next/server/app/api/subagents/profiles/route.js +1 -1
  132. package/.next/server/app/api/subagents/profiles/route_client-reference-manifest.js +1 -1
  133. package/.next/server/app/api/subagents/settings/route.js +1 -1
  134. package/.next/server/app/api/subagents/settings/route_client-reference-manifest.js +1 -1
  135. package/.next/server/app/api/terminal/[id]/events/route.js +2 -2
  136. package/.next/server/app/api/terminal/[id]/events/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/terminal/[id]/route.js +1 -1
  138. package/.next/server/app/api/terminal/[id]/route_client-reference-manifest.js +1 -1
  139. package/.next/server/app/api/terminal/route.js +1 -1
  140. package/.next/server/app/api/terminal/route_client-reference-manifest.js +1 -1
  141. package/.next/server/app/api/tools/settings/route.js +1 -1
  142. package/.next/server/app/api/tools/settings/route_client-reference-manifest.js +1 -1
  143. package/.next/server/app/api/web-auth/route.js +1 -1
  144. package/.next/server/app/api/web-auth/route_client-reference-manifest.js +1 -1
  145. package/.next/server/app/api/worktrees/route.js +1 -1
  146. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/index.html +1 -1
  148. package/.next/server/app/index.rsc +7 -9
  149. package/.next/server/app/index.segments/__PAGE__.segment.rsc +8 -10
  150. package/.next/server/app/index.segments/_full.segment.rsc +7 -9
  151. package/.next/server/app/index.segments/_tree.segment.rsc +4 -6
  152. package/.next/server/app/login/page.js +3 -3
  153. package/.next/server/app/login/page.js.nft.json +1 -1
  154. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  155. package/.next/server/app/login.html +1 -1
  156. package/.next/server/app/login.rsc +6 -8
  157. package/.next/server/app/login.segments/_full.segment.rsc +6 -8
  158. package/.next/server/app/login.segments/_tree.segment.rsc +4 -6
  159. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +6 -8
  160. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  161. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/page.js +21 -21
  163. package/.next/server/app/page.js.nft.json +1 -1
  164. package/.next/server/app/page_client-reference-manifest.js +1 -1
  165. package/.next/server/app-paths-manifest.json +10 -10
  166. package/.next/server/chunks/2243.js +1 -1
  167. package/.next/server/chunks/2265.js +1 -0
  168. package/.next/server/chunks/2430.js +4 -4
  169. package/.next/server/chunks/3379.js +1 -1
  170. package/.next/server/chunks/3400.js +1 -0
  171. package/.next/server/chunks/5582.js +3 -3
  172. package/.next/server/chunks/6429.js +7 -7
  173. package/.next/server/chunks/6759.js +1 -1
  174. package/.next/server/instrumentation.js +1 -1
  175. package/.next/server/instrumentation.js.nft.json +1 -1
  176. package/.next/server/middleware-build-manifest.js +1 -1
  177. package/.next/server/middleware.js +3 -3
  178. package/.next/server/next-font-manifest.js +1 -1
  179. package/.next/server/next-font-manifest.json +1 -1
  180. package/.next/server/pages/404.html +1 -1
  181. package/.next/server/pages/500.html +1 -1
  182. package/.next/server/server-reference-manifest.json +1 -1
  183. package/.next/static/chunks/1278-12a09a53f2579278.js +1 -0
  184. package/.next/static/chunks/3794-0a1186eb85c3950f.js +52 -0
  185. package/.next/static/chunks/{5772-ddd18c0d4b7715e5.js → 5772-fa9b9cccdc812bf9.js} +2 -2
  186. package/.next/static/chunks/5931-831e2811b884c6c3.js +7 -0
  187. package/.next/static/chunks/app/_not-found/page-4bc1de1a9457bf3c.js +1 -0
  188. package/.next/static/chunks/app/layout-49ccb92d50b20d78.js +1 -0
  189. package/.next/static/chunks/app/login/{page-ab433eb75956ed6e.js → page-6d2b7e6521b5b45c.js} +1 -1
  190. package/.next/static/chunks/app/page-a41100e64e8c078a.js +232 -0
  191. package/.next/static/chunks/{main-dac5ab3797407fcb.js → main-15cf217dbdba37de.js} +1 -1
  192. package/.next/static/chunks/{main-app-692cbf13774bca93.js → main-app-7931444f130b8836.js} +1 -1
  193. package/.next/static/chunks/next/dist/client/components/builtin/global-error-db9c7b142e888d0c.js +1 -0
  194. package/.next/static/chunks/{webpack-25464d90fe89e601.js → webpack-1b16208bb4ccd9c1.js} +1 -1
  195. package/.next/static/css/0629994cc558abc1.css +1 -0
  196. package/.next/static/css/2f73afe6a7735f85.css +1 -0
  197. package/.next/static/css/88714c00e109ce28.css +1 -0
  198. package/.next/trace +41 -41
  199. package/.next/trace-build +1 -1
  200. package/.next/types/app/api/agent/[id]/bash-output/route.ts +1 -1
  201. package/.next/types/app/api/agent/[id]/events/route.ts +1 -1
  202. package/.next/types/app/api/agent/[id]/lease/route.ts +1 -1
  203. package/.next/types/app/api/agent/[id]/route.ts +1 -1
  204. package/.next/types/app/api/agent/new/route.ts +1 -1
  205. package/.next/types/app/api/agent/running/route.ts +1 -1
  206. package/.next/types/app/api/app-update/route.ts +1 -1
  207. package/.next/types/app/api/auth/api-key/[provider]/route.ts +1 -1
  208. package/.next/types/app/api/auth/login/[provider]/route.ts +1 -1
  209. package/.next/types/app/api/auth/logout/[provider]/route.ts +1 -1
  210. package/.next/types/app/api/auth/providers/route.ts +1 -1
  211. package/.next/types/app/api/cwd/browse/route.ts +1 -1
  212. package/.next/types/app/api/cwd/validate/route.ts +1 -1
  213. package/.next/types/app/api/default-cwd/route.ts +1 -1
  214. package/.next/types/app/api/file-index/route.ts +1 -1
  215. package/.next/types/app/api/files/[...path]/route.ts +1 -1
  216. package/.next/types/app/api/git/diff/route.ts +1 -1
  217. package/.next/types/app/api/git/status/route.ts +1 -1
  218. package/.next/types/app/api/home/route.ts +1 -1
  219. package/.next/types/app/api/image-generation/route.ts +1 -1
  220. package/.next/types/app/api/image-generation/settings/connections/route.ts +1 -1
  221. package/.next/types/app/api/image-generation/settings/route.ts +1 -1
  222. package/.next/types/app/api/models/route.ts +1 -1
  223. package/.next/types/app/api/models-config/catalog/route.ts +1 -1
  224. package/.next/types/app/api/models-config/discover/route.ts +1 -1
  225. package/.next/types/app/api/models-config/picker/route.ts +1 -1
  226. package/.next/types/app/api/models-config/route.ts +1 -1
  227. package/.next/types/app/api/models-config/runtime/route.ts +1 -1
  228. package/.next/types/app/api/models-config/test/route.ts +1 -1
  229. package/.next/types/app/api/plugins/check/route.ts +1 -1
  230. package/.next/types/app/api/plugins/route.ts +1 -1
  231. package/.next/types/app/api/project-trust/route.ts +1 -1
  232. package/.next/types/app/api/push/config/route.ts +1 -1
  233. package/.next/types/app/api/push/subscribe/route.ts +1 -1
  234. package/.next/types/app/api/sessions/[id]/auto-name/route.ts +1 -1
  235. package/.next/types/app/api/sessions/[id]/context/route.ts +1 -1
  236. package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +1 -1
  237. package/.next/types/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route.ts +1 -1
  238. package/.next/types/app/api/sessions/[id]/export/route.ts +1 -1
  239. package/.next/types/app/api/sessions/[id]/outline/route.ts +1 -1
  240. package/.next/types/app/api/sessions/[id]/route.ts +1 -1
  241. package/.next/types/app/api/sessions/[id]/state/route.ts +1 -1
  242. package/.next/types/app/api/sessions/route.ts +1 -1
  243. package/.next/types/app/api/sessions/search/route.ts +1 -1
  244. package/.next/types/app/api/skills/check/route.ts +1 -1
  245. package/.next/types/app/api/skills/install/route.ts +1 -1
  246. package/.next/types/app/api/skills/route.ts +1 -1
  247. package/.next/types/app/api/skills/search/route.ts +1 -1
  248. package/.next/types/app/api/skills/update/route.ts +1 -1
  249. package/.next/types/app/api/subagents/[id]/route.ts +1 -1
  250. package/.next/types/app/api/subagents/profiles/route.ts +1 -1
  251. package/.next/types/app/api/subagents/settings/route.ts +1 -1
  252. package/.next/types/app/api/terminal/[id]/events/route.ts +1 -1
  253. package/.next/types/app/api/terminal/[id]/route.ts +1 -1
  254. package/.next/types/app/api/terminal/route.ts +1 -1
  255. package/.next/types/app/api/tools/settings/route.ts +1 -1
  256. package/.next/types/app/api/web-auth/route.ts +1 -1
  257. package/.next/types/app/api/worktrees/route.ts +1 -1
  258. package/.next/types/app/layout.ts +1 -1
  259. package/.next/types/app/login/page.ts +1 -1
  260. package/.next/types/app/page.ts +1 -1
  261. package/next.config.ts +29 -0
  262. package/package.json +7 -6
  263. package/public/fonts/Sarasa-Gothic-OFL.txt +113 -0
  264. package/public/fonts/SarasaTermSC-Regular.woff2 +0 -0
  265. package/public/sw.js +24 -2
  266. package/public/sw.test.mjs +14 -0
  267. package/.next/server/chunks/2349.js +0 -1
  268. package/.next/server/chunks/6871.js +0 -1
  269. package/.next/static/chunks/1278-b0794c8c9699cd2c.js +0 -1
  270. package/.next/static/chunks/3794-d29203733ca4633c.js +0 -52
  271. package/.next/static/chunks/9445-fde6feabcb39142c.js +0 -7
  272. package/.next/static/chunks/app/_not-found/page-dc19d76a2abf8002.js +0 -1
  273. package/.next/static/chunks/app/layout-1a1421d29de92cd6.js +0 -1
  274. package/.next/static/chunks/app/page-1362984dc1333667.js +0 -232
  275. package/.next/static/chunks/next/dist/client/components/builtin/global-error-c378096810b201bd.js +0 -1
  276. package/.next/static/css/2f46e0db0d4a3aed.css +0 -1
  277. package/.next/static/css/3afba5dcf1fc15ed.css +0 -1
  278. package/.next/static/css/444123c292add02f.css +0 -1
  279. package/.next/static/css/725eb03c18cc730c.css +0 -1
  280. package/.next/static/css/fddca953485158e4.css +0 -1
  281. package/.next/static/media/01bdb1c2bb2f530a-s.woff2 +0 -0
  282. package/.next/static/media/060fd7a2ba6f57dc-s.woff2 +0 -0
  283. package/.next/static/media/06d755a5cd3e2b96-s.woff2 +0 -0
  284. package/.next/static/media/09341845bc7215c3-s.woff2 +0 -0
  285. package/.next/static/media/09d8b46d011a8a55-s.woff2 +0 -0
  286. package/.next/static/media/0ac3ab6b6a54cd96-s.woff2 +0 -0
  287. package/.next/static/media/0cb7a0edc360425e-s.woff2 +0 -0
  288. package/.next/static/media/0de82041d2acf4c3-s.woff2 +0 -0
  289. package/.next/static/media/1249fbbadbb69451-s.woff2 +0 -0
  290. package/.next/static/media/182682366c265526-s.woff2 +0 -0
  291. package/.next/static/media/246116fa49278f72-s.woff2 +0 -0
  292. package/.next/static/media/2ad4a039dd2c0f35-s.woff2 +0 -0
  293. package/.next/static/media/2cd94acf7f6a8cd1-s.woff2 +0 -0
  294. package/.next/static/media/30af2a5bc088caeb-s.woff2 +0 -0
  295. package/.next/static/media/3117748ae3be552d-s.woff2 +0 -0
  296. package/.next/static/media/373befd5a68230ff-s.woff2 +0 -0
  297. package/.next/static/media/37ae20ae1d329cc2-s.woff2 +0 -0
  298. package/.next/static/media/3832bef2caf4f297-s.woff2 +0 -0
  299. package/.next/static/media/3b6ebd4dd223d8c1-s.woff2 +0 -0
  300. package/.next/static/media/3da25081fc21e3b2-s.woff2 +0 -0
  301. package/.next/static/media/3eb545844a1630b6-s.woff2 +0 -0
  302. package/.next/static/media/41870aeb5505be99-s.woff2 +0 -0
  303. package/.next/static/media/45c8f5377f81d417-s.woff2 +0 -0
  304. package/.next/static/media/48d86e2f8821c61e-s.woff2 +0 -0
  305. package/.next/static/media/4957022da3161c6e-s.woff2 +0 -0
  306. package/.next/static/media/4be71ddc6c749643-s.woff2 +0 -0
  307. package/.next/static/media/4dc4381bbf526d04-s.woff2 +0 -0
  308. package/.next/static/media/4eb0814ea9e22f45-s.woff2 +0 -0
  309. package/.next/static/media/4f86cf50532e0e9b-s.woff2 +0 -0
  310. package/.next/static/media/5022b11bb4a81e48-s.woff2 +0 -0
  311. package/.next/static/media/5080c55e2dccd63d-s.woff2 +0 -0
  312. package/.next/static/media/5348b1e69a651725-s.woff2 +0 -0
  313. package/.next/static/media/54c50561be23e605-s.woff2 +0 -0
  314. package/.next/static/media/567d6f765096ee76-s.woff2 +0 -0
  315. package/.next/static/media/58045d1f8695a418-s.woff2 +0 -0
  316. package/.next/static/media/5a274ddc03d9a5ab-s.woff2 +0 -0
  317. package/.next/static/media/5feee92221bb8605-s.woff2 +0 -0
  318. package/.next/static/media/6067d3f78ecc4535-s.woff2 +0 -0
  319. package/.next/static/media/61a11ca45429493a-s.woff2 +0 -0
  320. package/.next/static/media/63d030730737efae-s.woff2 +0 -0
  321. package/.next/static/media/6bd056ddce336924-s.woff2 +0 -0
  322. package/.next/static/media/6dc0bae4a5666821-s.woff2 +0 -0
  323. package/.next/static/media/7513cc52807669ca-s.woff2 +0 -0
  324. package/.next/static/media/75ae81fea4aec8c5-s.woff2 +0 -0
  325. package/.next/static/media/77f6534b6a3eb37a-s.woff2 +0 -0
  326. package/.next/static/media/782d4006a26041e7-s.woff2 +0 -0
  327. package/.next/static/media/7d509f4f988023eb-s.woff2 +0 -0
  328. package/.next/static/media/7d58f39a50828c68-s.woff2 +0 -0
  329. package/.next/static/media/7db71cc013812f1c-s.woff2 +0 -0
  330. package/.next/static/media/7eb3f914ae6dd7a0-s.woff2 +0 -0
  331. package/.next/static/media/8051eb8307aa13c8-s.woff2 +0 -0
  332. package/.next/static/media/829dca987e1e010e-s.woff2 +0 -0
  333. package/.next/static/media/842f675c7a332a48-s.woff2 +0 -0
  334. package/.next/static/media/866e2e7b0cbc2cb4-s.woff2 +0 -0
  335. package/.next/static/media/86b38dc7f713ddda-s.woff2 +0 -0
  336. package/.next/static/media/8a3a66ae6bb27151-s.woff2 +0 -0
  337. package/.next/static/media/8b56b70f6d577d9f-s.woff2 +0 -0
  338. package/.next/static/media/8d93dbb77672da11-s.woff2 +0 -0
  339. package/.next/static/media/8f5c2d0a25b8f50c-s.woff2 +0 -0
  340. package/.next/static/media/966e6d14b6c229fc-s.woff2 +0 -0
  341. package/.next/static/media/9877fefe733dd250-s.woff2 +0 -0
  342. package/.next/static/media/9c57f4420502d43a-s.woff2 +0 -0
  343. package/.next/static/media/9cedd2ad7b0bcf3d-s.woff2 +0 -0
  344. package/.next/static/media/a00fb5ef1ca68e5d-s.woff2 +0 -0
  345. package/.next/static/media/a171b1d72388367c-s.woff2 +0 -0
  346. package/.next/static/media/a310fb84e6868735-s.woff2 +0 -0
  347. package/.next/static/media/a53504b22c396db6-s.woff2 +0 -0
  348. package/.next/static/media/aabb87babcdda375-s.woff2 +0 -0
  349. package/.next/static/media/afe75c8050c8fd4e-s.woff2 +0 -0
  350. package/.next/static/media/b201193f76404e13-s.woff2 +0 -0
  351. package/.next/static/media/b20daecae68a588f-s.woff2 +0 -0
  352. package/.next/static/media/b2574bc564dca98d-s.woff2 +0 -0
  353. package/.next/static/media/b6a1339c290590d0-s.woff2 +0 -0
  354. package/.next/static/media/b6fe4b2295863fe4-s.woff2 +0 -0
  355. package/.next/static/media/bb8ff9c700288292-s.woff2 +0 -0
  356. package/.next/static/media/bc1ccfae4ae17995-s.woff2 +0 -0
  357. package/.next/static/media/be15c189f996aeb2-s.woff2 +0 -0
  358. package/.next/static/media/c0d1f6928a1dbc31-s.woff2 +0 -0
  359. package/.next/static/media/c36d8bb68a53eb60-s.woff2 +0 -0
  360. package/.next/static/media/c5db947ee2561e06-s.woff2 +0 -0
  361. package/.next/static/media/c77ac7f613b44045-s.woff2 +0 -0
  362. package/.next/static/media/ca73d0c74010e612-s.woff2 +0 -0
  363. package/.next/static/media/cfbad6ceeeca5c58-s.woff2 +0 -0
  364. package/.next/static/media/d24aebb82f01e48d-s.woff2 +0 -0
  365. package/.next/static/media/d2c6107607eb7d44-s.woff2 +0 -0
  366. package/.next/static/media/d2c7d5e8db7ce20a-s.woff2 +0 -0
  367. package/.next/static/media/d51f7558abc55aa6-s.woff2 +0 -0
  368. package/.next/static/media/da718921282f76d0-s.woff2 +0 -0
  369. package/.next/static/media/dae37106d788c7c9-s.woff2 +0 -0
  370. package/.next/static/media/e0d4cd45847004a4-s.woff2 +0 -0
  371. package/.next/static/media/e100c7a7874aebd9-s.woff2 +0 -0
  372. package/.next/static/media/e26dff18031f4a7e-s.woff2 +0 -0
  373. package/.next/static/media/e5b759c1d5c42d99-s.woff2 +0 -0
  374. package/.next/static/media/ea21a07081db26d0-s.woff2 +0 -0
  375. package/.next/static/media/eaee7682c49bd1c2-s.woff2 +0 -0
  376. package/.next/static/media/ec408158b9e08aea-s.woff2 +0 -0
  377. package/.next/static/media/ee5d9aad76ea4c0a-s.woff2 +0 -0
  378. package/.next/static/media/efdbc7cff3271ee9-s.woff2 +0 -0
  379. package/.next/static/media/f128be4e72405705-s.woff2 +0 -0
  380. package/.next/static/media/fb6cfff6119f26e8-s.woff2 +0 -0
  381. package/.next/static/media/fd516adbc3328c82-s.woff2 +0 -0
  382. /package/.next/static/{1Cj22EsWMK157xU0IPbZb → l8w6fw-pBYxXr7YG4khwB}/_buildManifest.js +0 -0
  383. /package/.next/static/{1Cj22EsWMK157xU0IPbZb → l8w6fw-pBYxXr7YG4khwB}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=3400,exports.ids=[3400],exports.modules={63400:(a,b,c)=>{c.d(b,{registerNodeRuntime:()=>o});let d=Symbol.for("@calmabacus/pi-web/live-agent-event-streams/v1"),e=Symbol.for("@calmabacus/pi-web/live-agent-event-streams-closing/v1");var f=c(78474),g=c(9956);let h=globalThis,i=globalThis.fetch,j=()=>{};function k(a){return a instanceof f.EventEmitter&&f.EventEmitter.prototype.on.call(a,"error",j),a}function l(a,b){return k(new g.Client(a,b))}function m(a,b){return 1===b.connections?l(a,b):k(new g.Pool(a,{...b,factory:l}))}let n=Symbol.for("@calmabacus/pi-web/node-shutdown-hook/v1");async function o(){!function(a=3e5){if(h.__piWebHttpDispatcherConfigured)return;let b=function a(b){if("string"==typeof b){let c=b.trim();if("disabled"===c.toLowerCase())return 0;if(0===c.length)return;return a(Number(c))}if("number"==typeof b&&Number.isFinite(b)&&!(b<0))return Math.floor(b)}(a);if(void 0===b)throw Error(`Invalid HTTP idle timeout: ${String(a)}`);let c=k(new g.EnvHttpProxyAgent({allowH2:!1,bodyTimeout:b,headersTimeout:b,clientFactory:l,factory:m}));g.setGlobalDispatcher(c),globalThis.fetch===i&&g.install?.(),h.__piWebHttpDispatcherConfigured=!0}();let a=globalThis;if(!a[n])for(let b of(a[n]=!0,["SIGINT","SIGTERM"]))process.once(b,()=>{let a=function(){let a;globalThis[e]=!0;let b=((a=globalThis)[d]||(a[d]=new Set),a[d]),c=b.size;for(let a of[...b])try{a()}catch{}return b.clear(),c}();a>0&&console.log(`[pi-web] closed ${a} live agent event stream(s) for ${b}`)})}}};
@@ -1,8 +1,8 @@
1
- exports.id=5582,exports.ids=[5582],exports.modules={766:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{q8:()=>t});var e=c(73024),f=c(51455),g=c(76760),h=c(80481),i=c(75430),j=c(8102),k=c(45232),l=c(10424),m=a([i]);function n(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}async function o(a){try{let b,c,d=await (0,f.stat)(a),g=null,i=0,j="";for await(let d of(0,h.createInterface)({input:(0,e.createReadStream)(a,{encoding:"utf8"}),crlfDelay:1/0})){let a=function(a){if(!a.trim())return null;try{let b=JSON.parse(a);return b&&"object"==typeof b?b:null}catch{return null}}(d);if(!a)continue;if(!g){if("session"!==a.type)return null;g=a;continue}if("session_info"===a.type&&(b="string"==typeof a.name&&a.name.trim()?a.name.trim():void 0),"custom_message"===a.type&&a.customType===l.Ds){i++;let b=new Date(a.timestamp).getTime();Number.isNaN(b)||(c=Math.max(c??0,b));let d=a.details;j||"string"!=typeof d?.prompt||(j=d.prompt);continue}if("message"!==a.type)continue;i++;let e=function(a){let b=a.message;if(!b||"string"!=typeof b.role||!("content"in b)||"user"!==b.role&&"assistant"!==b.role)return;if("number"==typeof b.timestamp)return b.timestamp;let c=new Date(a.timestamp).getTime();return Number.isNaN(c)?void 0:c}(a);"number"==typeof e&&(c=Math.max(c??0,e));let f=a.message;if(!f||"string"!=typeof f.role||!("content"in f)||"user"!==f.role&&"assistant"!==f.role)continue;let h=function(a){let b=a.content;return"string"==typeof b?b:Array.isArray(b)?b.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join(" "):""}(f);h&&(j||"user"!==f.role||(j=h))}if(!g)return null;let m="string"==typeof g.cwd?g.cwd:"",n="string"==typeof g.parentSession?g.parentSession:void 0,o="string"==typeof g.timestamp?new Date(g.timestamp).getTime():NaN,p="number"==typeof c&&c>0?new Date(c):Number.isNaN(o)?d.mtime:new Date(o);return{path:a,id:g.id,cwd:m,name:b,parentSessionPath:n,created:new Date(g.timestamp),modified:p,messageCount:i,firstMessage:(0,k.M3)(j||"(no messages)")}}catch{return null}}async function p(a){let b;try{b=(await (0,f.readdir)(a,{withFileTypes:!0})).filter(a=>a.isDirectory()||a.isSymbolicLink())}catch{return[]}let c=[];for(let d of b){let b=(0,g.join)(a,d.name);try{for(let a of(await (0,f.readdir)(b)))a.endsWith(".jsonl")&&c.push((0,g.join)(b,a))}catch{}}return c}async function q(a,b){let c=0,d=new Set;for(;c<a.length||d.size>0;){for(;c<a.length&&d.size<10;){let e=a[c++],f=b(e).finally(()=>d.delete(f));d.add(f)}d.size>0&&await Promise.race(d)}}function r(){return globalThis.__piWebScanIndex||(globalThis.__piWebScanIndex=new Map),globalThis.__piWebScanIndex}function s(){return(0,g.join)((0,i.getAgentDir)(),"pi-web-session-index.json")}async function t(){!function(){if(globalThis.__piWebScanIndexLoaded)return;globalThis.__piWebScanIndexLoaded=!0;let a=s();if((0,e.existsSync)(a))try{let b=JSON.parse((0,e.readFileSync)(a,"utf8"));if(!n(b)||2!==b.version||!n(b.entries))return;let c=r();for(let[a,d]of Object.entries(b.entries)){if(!n(d)||!n(d.fp)||!n(d.info))continue;let{fp:b,info:e}=d;if("number"!=typeof b.size||!Number.isSafeInteger(b.size)||b.size<0||"number"!=typeof b.mtimeMs||!Number.isFinite(b.mtimeMs)||e.path!==a||"string"!=typeof e.id||"string"!=typeof e.cwd||"string"!=typeof e.firstMessage||void 0!==e.name&&"string"!=typeof e.name||void 0!==e.parentSessionPath&&"string"!=typeof e.parentSessionPath||"number"!=typeof e.messageCount||!Number.isSafeInteger(e.messageCount)||e.messageCount<0||"string"!=typeof e.created||"string"!=typeof e.modified)continue;let f=new Date(e.created),g=new Date(e.modified);Number.isFinite(f.getTime())&&Number.isFinite(g.getTime())&&c.set(a,{fp:{size:b.size,mtimeMs:b.mtimeMs},info:{path:a,id:e.id,cwd:e.cwd,name:e.name,parentSessionPath:e.parentSessionPath,firstMessage:e.firstMessage,messageCount:e.messageCount,created:f,modified:g}})}}catch{}}();let a=(0,g.join)((0,i.getAgentDir)(),"sessions"),b=await p(a),c=r(),d=new Set(b),h=[];for(let a of c.keys())d.has(a)||h.push(a);for(let a of h)c.delete(a);let k=await Promise.all(b.map(async a=>{try{let b=await (0,f.stat)(a);return{filePath:a,fp:{size:b.size,mtimeMs:b.mtimeMs}}}catch{return{filePath:a,fp:null}}})),l=[],m=Array(b.length).fill(null);for(let[a,{filePath:b,fp:d}]of k.entries()){if(!d){c.delete(b);continue}let e=c.get(b);if(e&&e.fp.size===d.size&&e.fp.mtimeMs===d.mtimeMs){m[a]=e.info;continue}l.push({filePath:b,fp:d,resultIndex:a})}return await q(l,async({filePath:a,fp:b,resultIndex:d})=>{let e=await o(a);e?(c.set(a,{fp:b,info:e}),m[d]=e):c.delete(a)}),(l.length>0||h.length>0)&&(globalThis.__piWebScanIndexSaveQueued||(globalThis.__piWebScanIndexSaveQueued=!0,queueMicrotask(()=>{globalThis.__piWebScanIndexSaveQueued=void 0;try{let a={};for(let[b,c]of r())a[b]=c;(0,j.$)(s(),JSON.stringify({version:2,entries:a}))}catch{}}))),m.filter(a=>null!==a).sort((a,b)=>{let c=r().get(a.path),d=r().get(b.path),e=c?.fp.mtimeMs??0,f=d?.fp.mtimeMs??0;return b.modified.getTime()-a.modified.getTime()||f-e||(0,g.basename)(b.path).localeCompare((0,g.basename)(a.path))})}i=(m.then?(await m)():m)[0],d()}catch(a){d(a)}})},7048:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$u:()=>N,I6:()=>L,IR:()=>B,fw:()=>A,gY:()=>M,kj:()=>F,nY:()=>J,o2:()=>P,ph:()=>K,pv:()=>Q,q9:()=>G,rh:()=>C,st:()=>R,tP:()=>O});var e=c(75430),f=c(90426),g=c(29021),h=c(33873),i=c(21898),j=c(8102),k=c(82536),l=c(41761),m=a([e]);e=(m.then?(await m)():m)[0];let O="pi-web:subagent",P="pi-web:subagent-status",Q="pi-web:subagent-result",R=["Agent","get_subagent_result","steer_subagent"],S=["read","bash","edit","write","grep","find","ls"],T=new Set(S),U=new Set(R),V=new Set(["off","minimal","low","medium","high","xhigh","max"]),W=new Set(["description","display_name","tools","load_skills","load_extensions","enabled","inherit_context","run_in_background","model","thinking","max_turns"]),X=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/,Y=new Set(["none","all","true","false"]),Z=[{name:"general-purpose",displayName:"General purpose",description:"Handle a focused implementation or investigation task",systemPrompt:"Work autonomously on the delegated task. Keep the final answer concise and include important files, decisions, and remaining risks.",tools:S,loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"},{name:"explore",displayName:"Explore",description:"Quickly inspect a codebase without modifying it",systemPrompt:"Explore the codebase to answer the delegated question. Do not modify files. Report concrete findings with file paths and relevant symbols.",tools:[...l.kU],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"},{name:"plan",displayName:"Plan",description:"Design an implementation plan without modifying files",systemPrompt:"Produce an implementation-ready plan for the delegated task. Inspect the repository as needed, do not modify files, and call out dependencies, risks, and verification steps.",tools:[...l.kU],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"}];function n(a){return"string"==typeof a&&a.trim()?a.trim():void 0}function o(a,b){return"boolean"==typeof a?a:b}function p(a){return(Array.isArray(a)?a:"string"==typeof a?a.split(","):[]).map(a=>String(a).trim()).filter(Boolean)}function q(a,b){let c=p(a);return c.includes("none")?[]:c.includes("all")||c.includes("*")?[...S]:0===c.length?[...b]:[...new Set(c.filter(a=>T.has(a)))]}function r(a){return[...new Set(p(a).filter(a=>a.toLowerCase().startsWith("ext:")))]}function s(a,b,c,d){let e,f=a?.[c];if("boolean"==typeof f)e=f;else if("string"==typeof f){let a=f.trim().toLowerCase();if("all"===a||"true"===a)e=!0;else if("none"===a||"false"===a)e=!1;else throw Error(`${c} named lists are not supported by Pi Web; use a boolean ${c} or ${b}`)}else if(void 0!==f)throw Error(`${c} named lists are not supported by Pi Web; use a boolean ${c} or ${b}`);let g=a?.[b];if(void 0!==g){if("boolean"==typeof g)return g;throw Error(`${b} must be true or false`)}return e??d}function t(a){if(void 0!==a&&"string"!=typeof a&&(!Array.isArray(a)||a.some(a=>"string"!=typeof a)))throw Error("Subagent tools must be a string or an array of strings");let b=p(a).filter(a=>"none"!==a&&"all"!==a&&"*"!==a&&!a.toLowerCase().startsWith("ext:")&&!T.has(a));if(b.length>0)throw Error(`Unknown subagent tools: ${b.join(", ")}`)}function u(a){return/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(a)}function v(a,b,c,d){(void 0===c||"boolean"==typeof c||"string"==typeof c&&Y.has(c.trim().toLowerCase()))&&(a[b]=d)}function w(a,b,c,d){if(!u(c))return null;let e=d instanceof Error?d.message:String(d);return{name:c,displayName:c,description:`Invalid profile: ${e}`,systemPrompt:"",tools:[],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!1,scope:b,filePath:a,configurationError:e}}function x(a,b){return(0,k.x)(b,new Set([a]))}function y(a,b,c){return(0,g.existsSync)(a)&&("global"===b||x(c,a))?(0,g.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isFile()&&a.name.endsWith(".md")).map(c=>(function(a,b){let c=(0,h.basename)(a,".md");try{let d=(0,g.readFileSync)(a,"utf8"),{data:e,rest:f}=(0,i.yv)(d);if(X.test(d)&&!e)return w(a,b,c,"Invalid frontmatter");let h=n(e?.name);if(h&&!u(h))return w(a,b,c,`Invalid agent name: ${h}`);let j=h&&u(h)?h:c;if(!u(j))return w(a,b,c,`Invalid agent name: ${j}`);let k=n(e?.thinking),l="number"==typeof e?.max_turns?Math.floor(e.max_turns):void 0;t(e?.tools);let m=q(e?.tools,S),p=new Set(q(e?.disallowed_tools,[])),v=new Set(r(e?.disallowed_tools).map(a=>a.toLowerCase())),x=r(e?.tools).filter(a=>!v.has(a.toLowerCase())),y=s(e,"load_skills","skills",!1),z=s(e,"load_extensions","extensions",x.length>0);return{name:j,displayName:n(e?.display_name)??j,description:n(e?.description)??j,systemPrompt:f.trim(),tools:m.filter(a=>!p.has(a)),...x.length>0?{extensionTools:x}:{},loadSkills:y,loadExtensions:z,...n(e?.model)?{model:n(e?.model)}:{},...k&&V.has(k)?{thinking:k}:{},...l&&l>0?{maxTurns:l}:{},inheritContext:o(e?.inherit_context,!1),runInBackground:o(e?.run_in_background,!0),...e?.prompt_mode==="replace"||e?.prompt_mode==="append"?{promptMode:e.prompt_mode}:{},...e?.isolation==="worktree"||e?.isolation==="off"?{isolation:e.isolation}:{},enabled:o(e?.enabled,!0),scope:b,filePath:a}}catch(d){return w(a,b,c,d)}})((0,h.join)(a,c.name),b)).filter(a=>null!==a):[]}function z(a){return[[(0,h.join)((0,e.getAgentDir)(),"agents"),"global"],[(0,h.join)((0,h.resolve)(a),".agents","agents"),"workspace"],[(0,h.join)((0,h.resolve)(a),".pi","agents"),"project"]]}function A(a){let b=Z.map(a=>({...a,tools:[...a.tools]}));for(let[c,d]of z(a))b.push(...y(c,d,a));return b.sort((a,b)=>a.displayName.localeCompare(b.displayName))}function B(a){let b=new Map(Z.map(a=>[a.name.toLowerCase(),{...a,tools:[...a.tools]}]));for(let[c,d]of z(a))for(let e of y(c,d,a))b.set(e.name.toLowerCase(),e);return[...b.values()].sort((a,b)=>a.displayName.localeCompare(b.displayName))}function C(a,b){let c=B(a).find(a=>a.name.toLowerCase()===b.trim().toLowerCase());if(c?.configurationError)throw Error(`Invalid subagent profile "${c.name}": ${c.configurationError}`);return c?.enabled?c:void 0}function D(a){let b=a.trim();if(!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(b))throw Error("Agent name may contain only letters, numbers, dots, underscores, and hyphens");return b}function E(a,b){let c=function(a,b){if("global"===b)return(0,h.join)((0,e.getAgentDir)(),"agents");if("project"===b)return(0,h.join)((0,h.resolve)(a),".pi","agents");throw Error("Agent scope must be global or project")}(a,b);if("global"===b)return c;let d=c;for(;!(0,g.existsSync)(d);){let a=(0,h.dirname)(d);if(a===d)throw Error("Agent profile directory is outside the project root");d=a}if(!x(a,d))throw Error("Agent profile directory is outside the project root");return c}function F(a,b,c){let d=D(c.name);if(!Array.isArray(c.tools))throw Error("Subagent tools must be an array of strings");t(c.tools);let e=[...new Set(c.tools)];if(c.thinking&&!V.has(c.thinking))throw Error(`Invalid thinking level: ${c.thinking}`);if(void 0!==c.maxTurns&&(!Number.isFinite(c.maxTurns)||c.maxTurns<0))throw Error("Max turns must be a non-negative number");let k=c.maxTurns&&c.maxTurns>0?Math.floor(c.maxTurns):void 0,l=c.displayName.trim()||d,m=c.description.trim()||d,n=c.systemPrompt.trim(),o=c.model?.trim()||void 0,q=!0===c.loadSkills,s=!0===c.loadExtensions,u=function(a){if(void 0===a)return[];if(!Array.isArray(a)||a.some(a=>"string"!=typeof a))throw Error("Subagent extensionTools must be an array of strings");let b=a.map(a=>a.trim()),c=b.filter(a=>!a.toLowerCase().startsWith("ext:")||a.length<=4);if(c.length>0)throw Error(`Invalid subagent extension tools: ${c.join(", ")}`);return[...new Set(b)]}(c.extensionTools),w=E(a,b);if((0,g.mkdirSync)(w,{recursive:!0}),"project"===b&&!x(a,w))throw Error("Agent profile directory is outside the project root");let y=(0,h.join)(w,`${d}.md`),z=function(a){if(!(0,g.existsSync)(a))return{};let b=(0,g.readFileSync)(a,"utf8"),{data:c}=(0,i.yv)(b);if(c)return c;if(X.test(b))throw Error("Cannot save agent profile: existing frontmatter is invalid");return{}}(y),A={description:m,display_name:l,tools:function(a,b,c=[]){let d=[...c.filter(a=>a.toLowerCase().startsWith("ext:")),...p(b).filter(a=>a.toLowerCase().startsWith("ext:"))],e=[...new Set(d)],f=[...a,...e.filter(b=>!a.includes(b))];return f.length>0?f.join(", "):"none"}(e,z.tools,u),load_skills:q,load_extensions:s,enabled:c.enabled,inherit_context:c.inheritContext,run_in_background:c.runInBackground};v(A,"skills",z.skills,q),v(A,"extensions",z.extensions,s),o&&(A.model=o),c.thinking&&(A.thinking=c.thinking),k&&(A.max_turns=k),c.promptMode&&(A.prompt_mode=c.promptMode),c.isolation&&(A.isolation=c.isolation);let B={...A};for(let[a,b]of Object.entries(function(a){let b={};for(let[c,d]of Object.entries(a))W.has(c)||(b[c]=d);return b}(z)))a in B||(B[a]=b);let C=(0,f.Bh)(B,{noRefs:!0,lineWidth:1e3}).trimEnd();(0,j.$)(y,`---
1
+ exports.id=5582,exports.ids=[5582],exports.modules={766:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{q8:()=>t});var e=c(73024),f=c(51455),g=c(76760),h=c(80481),i=c(75430),j=c(8102),k=c(45232),l=c(10424),m=a([i]);function n(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}async function o(a){try{let b,c,d=await (0,f.stat)(a),g=null,i=0,j="";for await(let d of(0,h.createInterface)({input:(0,e.createReadStream)(a,{encoding:"utf8"}),crlfDelay:1/0})){let a=function(a){if(!a.trim())return null;try{let b=JSON.parse(a);return b&&"object"==typeof b?b:null}catch{return null}}(d);if(!a)continue;if(!g){if("session"!==a.type)return null;g=a;continue}if("session_info"===a.type&&(b="string"==typeof a.name&&a.name.trim()?a.name.trim():void 0),"custom_message"===a.type&&a.customType===l.Ds){i++;let b=new Date(a.timestamp).getTime();Number.isNaN(b)||(c=Math.max(c??0,b));let d=a.details;j||"string"!=typeof d?.prompt||(j=d.prompt);continue}if("message"!==a.type)continue;i++;let e=function(a){let b=a.message;if(!b||"string"!=typeof b.role||!("content"in b)||"user"!==b.role&&"assistant"!==b.role)return;if("number"==typeof b.timestamp)return b.timestamp;let c=new Date(a.timestamp).getTime();return Number.isNaN(c)?void 0:c}(a);"number"==typeof e&&(c=Math.max(c??0,e));let f=a.message;if(!f||"string"!=typeof f.role||!("content"in f)||"user"!==f.role&&"assistant"!==f.role)continue;let h=function(a){let b=a.content;return"string"==typeof b?b:Array.isArray(b)?b.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join(" "):""}(f);h&&(j||"user"!==f.role||(j=h))}if(!g)return null;let m="string"==typeof g.cwd?g.cwd:"",n="string"==typeof g.parentSession?g.parentSession:void 0,o="string"==typeof g.timestamp?new Date(g.timestamp).getTime():NaN,p="number"==typeof c&&c>0?new Date(c):Number.isNaN(o)?d.mtime:new Date(o);return{path:a,id:g.id,cwd:m,name:b,parentSessionPath:n,created:new Date(g.timestamp),modified:p,messageCount:i,firstMessage:(0,k.M3)(j||"(no messages)")}}catch{return null}}async function p(a){let b;try{b=(await (0,f.readdir)(a,{withFileTypes:!0})).filter(a=>a.isDirectory()||a.isSymbolicLink())}catch{return[]}let c=[];for(let d of b){let b=(0,g.join)(a,d.name);try{for(let a of(await (0,f.readdir)(b)))a.endsWith(".jsonl")&&c.push((0,g.join)(b,a))}catch{}}return c}async function q(a,b){let c=0,d=new Set;for(;c<a.length||d.size>0;){for(;c<a.length&&d.size<10;){let e=a[c++],f=b(e).finally(()=>d.delete(f));d.add(f)}d.size>0&&await Promise.race(d)}}function r(){return globalThis.__piWebScanIndex||(globalThis.__piWebScanIndex=new Map),globalThis.__piWebScanIndex}function s(){return(0,g.join)((0,i.getAgentDir)(),"pi-web-session-index.json")}async function t(){!function(){if(globalThis.__piWebScanIndexLoaded)return;globalThis.__piWebScanIndexLoaded=!0;let a=s();if((0,e.existsSync)(a))try{let b=JSON.parse((0,e.readFileSync)(a,"utf8"));if(!n(b)||2!==b.version||!n(b.entries))return;let c=r();for(let[a,d]of Object.entries(b.entries)){if(!n(d)||!n(d.fp)||!n(d.info))continue;let{fp:b,info:e}=d;if("number"!=typeof b.size||!Number.isSafeInteger(b.size)||b.size<0||"number"!=typeof b.mtimeMs||!Number.isFinite(b.mtimeMs)||e.path!==a||"string"!=typeof e.id||"string"!=typeof e.cwd||"string"!=typeof e.firstMessage||void 0!==e.name&&"string"!=typeof e.name||void 0!==e.parentSessionPath&&"string"!=typeof e.parentSessionPath||"number"!=typeof e.messageCount||!Number.isSafeInteger(e.messageCount)||e.messageCount<0||"string"!=typeof e.created||"string"!=typeof e.modified)continue;let f=new Date(e.created),g=new Date(e.modified);Number.isFinite(f.getTime())&&Number.isFinite(g.getTime())&&c.set(a,{fp:{size:b.size,mtimeMs:b.mtimeMs},info:{path:a,id:e.id,cwd:e.cwd,name:e.name,parentSessionPath:e.parentSessionPath,firstMessage:e.firstMessage,messageCount:e.messageCount,created:f,modified:g}})}}catch{}}();let a=(0,g.join)((0,i.getAgentDir)(),"sessions"),b=await p(a),c=r(),d=new Set(b),h=[];for(let a of c.keys())d.has(a)||h.push(a);for(let a of h)c.delete(a);let k=await Promise.all(b.map(async a=>{try{let b=await (0,f.stat)(a);return{filePath:a,fp:{size:b.size,mtimeMs:b.mtimeMs}}}catch{return{filePath:a,fp:null}}})),l=[],m=Array(b.length).fill(null);for(let[a,{filePath:b,fp:d}]of k.entries()){if(!d){c.delete(b);continue}let e=c.get(b);if(e&&e.fp.size===d.size&&e.fp.mtimeMs===d.mtimeMs){m[a]=e.info;continue}l.push({filePath:b,fp:d,resultIndex:a})}return await q(l,async({filePath:a,fp:b,resultIndex:d})=>{let e=await o(a);e?(c.set(a,{fp:b,info:e}),m[d]=e):c.delete(a)}),(l.length>0||h.length>0)&&(globalThis.__piWebScanIndexSaveQueued||(globalThis.__piWebScanIndexSaveQueued=!0,queueMicrotask(()=>{globalThis.__piWebScanIndexSaveQueued=void 0;try{let a={};for(let[b,c]of r())a[b]=c;(0,j.$)(s(),JSON.stringify({version:2,entries:a}))}catch{}}))),m.filter(a=>null!==a).sort((a,b)=>{let c=r().get(a.path),d=r().get(b.path),e=c?.fp.mtimeMs??0,f=d?.fp.mtimeMs??0;return b.modified.getTime()-a.modified.getTime()||f-e||(0,g.basename)(b.path).localeCompare((0,g.basename)(a.path))})}i=(m.then?(await m)():m)[0],d()}catch(a){d(a)}})},7048:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$u:()=>O,I6:()=>M,IR:()=>C,fw:()=>B,gY:()=>N,kj:()=>G,nY:()=>K,o2:()=>Q,ph:()=>L,pv:()=>R,q9:()=>H,rh:()=>D,st:()=>S,tP:()=>P});var e=c(75430),f=c(90426),g=c(29021),h=c(33873),i=c(21898),j=c(31524),k=c(8102),l=c(82536),m=c(41761),n=a([e]);e=(n.then?(await n)():n)[0];let P="pi-web:subagent",Q="pi-web:subagent-status",R="pi-web:subagent-result",S=["Agent","get_subagent_result","steer_subagent"],T=["read","bash","edit","write","grep","find","ls"],U=new Set(T),V=new Set(S),W=new Set(j.v),X=new Set(["description","display_name","tools","load_skills","load_extensions","enabled","inherit_context","run_in_background","model","thinking","max_turns"]),Y=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/,Z=new Set(["none","all","true","false"]),$=[{name:"general-purpose",displayName:"General purpose",description:"Handle a focused implementation or investigation task",systemPrompt:"Work autonomously on the delegated task. Keep the final answer concise and include important files, decisions, and remaining risks.",tools:T,loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"},{name:"explore",displayName:"Explore",description:"Quickly inspect a codebase without modifying it",systemPrompt:"Explore the codebase to answer the delegated question. Do not modify files. Report concrete findings with file paths and relevant symbols.",tools:[...m.kU],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"},{name:"plan",displayName:"Plan",description:"Design an implementation plan without modifying files",systemPrompt:"Produce an implementation-ready plan for the delegated task. Inspect the repository as needed, do not modify files, and call out dependencies, risks, and verification steps.",tools:[...m.kU],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!0,scope:"builtin"}];function o(a){return"string"==typeof a&&a.trim()?a.trim():void 0}function p(a,b){return"boolean"==typeof a?a:b}function q(a){return(Array.isArray(a)?a:"string"==typeof a?a.split(","):[]).map(a=>String(a).trim()).filter(Boolean)}function r(a,b){let c=q(a);return c.includes("none")?[]:c.includes("all")||c.includes("*")?[...T]:0===c.length?[...b]:[...new Set(c.filter(a=>U.has(a)))]}function s(a){return[...new Set(q(a).filter(a=>a.toLowerCase().startsWith("ext:")))]}function t(a,b,c,d){let e,f=a?.[c];if("boolean"==typeof f)e=f;else if("string"==typeof f){let a=f.trim().toLowerCase();if("all"===a||"true"===a)e=!0;else if("none"===a||"false"===a)e=!1;else throw Error(`${c} named lists are not supported by Pi Web; use a boolean ${c} or ${b}`)}else if(void 0!==f)throw Error(`${c} named lists are not supported by Pi Web; use a boolean ${c} or ${b}`);let g=a?.[b];if(void 0!==g){if("boolean"==typeof g)return g;throw Error(`${b} must be true or false`)}return e??d}function u(a){if(void 0!==a&&"string"!=typeof a&&(!Array.isArray(a)||a.some(a=>"string"!=typeof a)))throw Error("Subagent tools must be a string or an array of strings");let b=q(a).filter(a=>"none"!==a&&"all"!==a&&"*"!==a&&!a.toLowerCase().startsWith("ext:")&&!U.has(a));if(b.length>0)throw Error(`Unknown subagent tools: ${b.join(", ")}`)}function v(a){return/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(a)}function w(a,b,c,d){(void 0===c||"boolean"==typeof c||"string"==typeof c&&Z.has(c.trim().toLowerCase()))&&(a[b]=d)}function x(a,b,c,d){if(!v(c))return null;let e=d instanceof Error?d.message:String(d);return{name:c,displayName:c,description:`Invalid profile: ${e}`,systemPrompt:"",tools:[],loadSkills:!1,loadExtensions:!1,inheritContext:!1,runInBackground:!0,enabled:!1,scope:b,filePath:a,configurationError:e}}function y(a,b){return(0,l.x)(b,new Set([a]))}function z(a,b,c){return(0,g.existsSync)(a)&&("global"===b||y(c,a))?(0,g.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isFile()&&a.name.endsWith(".md")).map(c=>(function(a,b){let c=(0,h.basename)(a,".md");try{let d=(0,g.readFileSync)(a,"utf8"),{data:e,rest:f}=(0,i.yv)(d);if(Y.test(d)&&!e)return x(a,b,c,"Invalid frontmatter");let h=o(e?.name);if(h&&!v(h))return x(a,b,c,`Invalid agent name: ${h}`);let j=h&&v(h)?h:c;if(!v(j))return x(a,b,c,`Invalid agent name: ${j}`);let k=o(e?.thinking),l="number"==typeof e?.max_turns?Math.floor(e.max_turns):void 0;u(e?.tools);let m=r(e?.tools,T),n=new Set(r(e?.disallowed_tools,[])),q=new Set(s(e?.disallowed_tools).map(a=>a.toLowerCase())),w=s(e?.tools).filter(a=>!q.has(a.toLowerCase())),y=t(e,"load_skills","skills",!1),z=t(e,"load_extensions","extensions",w.length>0);return{name:j,displayName:o(e?.display_name)??j,description:o(e?.description)??j,systemPrompt:f.trim(),tools:m.filter(a=>!n.has(a)),...w.length>0?{extensionTools:w}:{},loadSkills:y,loadExtensions:z,...o(e?.model)?{model:o(e?.model)}:{},...k&&W.has(k)?{thinking:k}:{},...l&&l>0?{maxTurns:l}:{},inheritContext:p(e?.inherit_context,!1),runInBackground:p(e?.run_in_background,!0),...e?.prompt_mode==="replace"||e?.prompt_mode==="append"?{promptMode:e.prompt_mode}:{},...e?.isolation==="worktree"||e?.isolation==="off"?{isolation:e.isolation}:{},enabled:p(e?.enabled,!0),scope:b,filePath:a}}catch(d){return x(a,b,c,d)}})((0,h.join)(a,c.name),b)).filter(a=>null!==a):[]}function A(a){return[[(0,h.join)((0,e.getAgentDir)(),"agents"),"global"],[(0,h.join)((0,h.resolve)(a),".agents","agents"),"workspace"],[(0,h.join)((0,h.resolve)(a),".pi","agents"),"project"]]}function B(a){let b=$.map(a=>({...a,tools:[...a.tools]}));for(let[c,d]of A(a))b.push(...z(c,d,a));return b.sort((a,b)=>a.displayName.localeCompare(b.displayName))}function C(a){let b=new Map($.map(a=>[a.name.toLowerCase(),{...a,tools:[...a.tools]}]));for(let[c,d]of A(a))for(let e of z(c,d,a))b.set(e.name.toLowerCase(),e);return[...b.values()].sort((a,b)=>a.displayName.localeCompare(b.displayName))}function D(a,b){let c=C(a).find(a=>a.name.toLowerCase()===b.trim().toLowerCase());if(c?.configurationError)throw Error(`Invalid subagent profile "${c.name}": ${c.configurationError}`);return c?.enabled?c:void 0}function E(a){let b=a.trim();if(!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(b))throw Error("Agent name may contain only letters, numbers, dots, underscores, and hyphens");return b}function F(a,b){let c=function(a,b){if("global"===b)return(0,h.join)((0,e.getAgentDir)(),"agents");if("project"===b)return(0,h.join)((0,h.resolve)(a),".pi","agents");throw Error("Agent scope must be global or project")}(a,b);if("global"===b)return c;let d=c;for(;!(0,g.existsSync)(d);){let a=(0,h.dirname)(d);if(a===d)throw Error("Agent profile directory is outside the project root");d=a}if(!y(a,d))throw Error("Agent profile directory is outside the project root");return c}function G(a,b,c){let d=E(c.name);if(!Array.isArray(c.tools))throw Error("Subagent tools must be an array of strings");u(c.tools);let e=[...new Set(c.tools)];if(c.thinking&&!W.has(c.thinking))throw Error(`Invalid thinking level: ${c.thinking}`);if(void 0!==c.maxTurns&&(!Number.isFinite(c.maxTurns)||c.maxTurns<0))throw Error("Max turns must be a non-negative number");let j=c.maxTurns&&c.maxTurns>0?Math.floor(c.maxTurns):void 0,l=c.displayName.trim()||d,m=c.description.trim()||d,n=c.systemPrompt.trim(),o=c.model?.trim()||void 0,p=!0===c.loadSkills,r=!0===c.loadExtensions,t=function(a){if(void 0===a)return[];if(!Array.isArray(a)||a.some(a=>"string"!=typeof a))throw Error("Subagent extensionTools must be an array of strings");let b=a.map(a=>a.trim()),c=b.filter(a=>!a.toLowerCase().startsWith("ext:")||a.length<=4);if(c.length>0)throw Error(`Invalid subagent extension tools: ${c.join(", ")}`);return[...new Set(b)]}(c.extensionTools),v=F(a,b);if((0,g.mkdirSync)(v,{recursive:!0}),"project"===b&&!y(a,v))throw Error("Agent profile directory is outside the project root");let x=(0,h.join)(v,`${d}.md`),z=function(a){if(!(0,g.existsSync)(a))return{};let b=(0,g.readFileSync)(a,"utf8"),{data:c}=(0,i.yv)(b);if(c)return c;if(Y.test(b))throw Error("Cannot save agent profile: existing frontmatter is invalid");return{}}(x),A={description:m,display_name:l,tools:function(a,b,c=[]){let d=[...c.filter(a=>a.toLowerCase().startsWith("ext:")),...q(b).filter(a=>a.toLowerCase().startsWith("ext:"))],e=[...new Set(d)],f=[...a,...e.filter(b=>!a.includes(b))];return f.length>0?f.join(", "):"none"}(e,z.tools,t),load_skills:p,load_extensions:r,enabled:c.enabled,inherit_context:c.inheritContext,run_in_background:c.runInBackground};w(A,"skills",z.skills,p),w(A,"extensions",z.extensions,r),o&&(A.model=o),c.thinking&&(A.thinking=c.thinking),j&&(A.max_turns=j),c.promptMode&&(A.prompt_mode=c.promptMode),c.isolation&&(A.isolation=c.isolation);let B={...A};for(let[a,b]of Object.entries(function(a){let b={};for(let[c,d]of Object.entries(a))X.has(c)||(b[c]=d);return b}(z)))a in B||(B[a]=b);let C=(0,f.Bh)(B,{noRefs:!0,lineWidth:1e3}).trimEnd();(0,k.$)(x,`---
2
2
  ${C}
3
3
  ---
4
4
 
5
5
  ${n}
6
- `);let F=r(B.tools);return{...c,name:d,displayName:l,description:m,systemPrompt:n,tools:e,...F.length>0?{extensionTools:F}:{extensionTools:void 0},loadSkills:q,loadExtensions:s,...o?{model:o}:{model:void 0},...k?{maxTurns:k}:{maxTurns:void 0},scope:b,filePath:y}}function G(a,b,c){let d=D(c),e=(0,h.join)(E(a,b),`${d}.md`);(0,g.existsSync)(e)&&(0,g.unlinkSync)(e)}function H(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function I(a){let b=[...a].reverse().find(a=>"custom"===a.type&&a.customType===O);if(!b||"custom"!==b.type||!H(b.data))return null;let c=b.data;return 1!==c.version||"string"!=typeof c.parentSessionId||"string"!=typeof c.parentSessionPath?null:c}function J(a){return I(a)||null}function K(a){let b=I(a);if(!b)return null;let c=b.resourceSnapshot,d=H(c)&&!0===c.loadSkills,e=H(c)&&!0===c.loadExtensions;return H(c)&&1===c.version&&Array.isArray(c.appendSystemPrompt)&&c.appendSystemPrompt.every(a=>"string"==typeof a)&&Array.isArray(c.tools)&&c.tools.every(a=>"string"==typeof a&&a.length>0&&!U.has(a)&&(T.has(a)||e))?{appendSystemPrompt:[...c.appendSystemPrompt],tools:[...new Set(c.tools)],loadSkills:d,loadExtensions:e,..."string"==typeof c.exactSystemPrompt?{exactSystemPrompt:c.exactSystemPrompt}:{}}:null}function L(a,b){return[...new Set([...a,...[...b].filter(a=>!U.has(a))])]}function M(a,b){let c=b.map(a=>a.slice(4).toLowerCase());return[...a].flatMap(a=>{let b=a.path.replaceAll("\\","/").split("/").at(-2)??a.path,d=(a.sourceInfo?.source??"").replace(/^npm:/,""),e=new Set([b.toLowerCase(),d.toLowerCase()]);return c.some(b=>{if("*"===b)return!0;let[c,d]=b.split("/",2);return e.has(c)&&(!d||a.tools.has(d))})?[...a.tools.keys()].filter(a=>!U.has(a)&&c.some(b=>{if("*"===b||b.endsWith("/*"))return"*"===b||e.has(b.slice(0,-2));let[c,d]=b.split("/",2);return e.has(c)&&(!d||d===a)})):[]})}function N(a,b,c){let d=I(a);if(!d)return null;let e=[...a].reverse().find(a=>"custom"===a.type&&(a.customType===Q||a.customType===P)),f=e?.type==="custom"&&e.customType===Q?e:void 0,g=f?.type==="custom"&&H(f.data)?f.data:void 0,h=g&&("completed"===g.status||"failed"===g.status||"aborted"===g.status)?g.status:"interrupted";return{sessionId:b,sessionPath:c,parentSessionId:d.parentSessionId,parentToolCallId:"string"==typeof d.parentToolCallId?d.parentToolCallId:"",profile:"string"==typeof d.profile?d.profile:"general-purpose",description:"string"==typeof d.description?d.description:"Subagent",task:"string"==typeof d.task?d.task:"",runInBackground:!0===d.runInBackground,..."number"==typeof d.maxTurns&&d.maxTurns>0?{maxTurns:Math.floor(d.maxTurns)}:{},..."worktree"===d.isolation||"off"===d.isolation?{isolation:d.isolation}:{},status:h,createdAt:"string"==typeof d.createdAt?d.createdAt:"",...g&&"string"==typeof g.completedAt?{completedAt:g.completedAt}:{},...g?.wrappedAtTurnLimit===!0?{wrappedAtTurnLimit:!0}:{},...g&&"string"==typeof g.result?{result:g.result}:{},...g&&"string"==typeof g.error?{error:g.error}:{},..."string"==typeof d.worktreePath?{worktreePath:d.worktreePath}:{},..."string"==typeof d.worktreeBranch?{worktreeBranch:d.worktreeBranch}:{},...g&&"string"==typeof g.worktreeCleanupError?{worktreeCleanupError:g.worktreeCleanupError}:{},...g&&"string"==typeof g.worktreeBranch?{worktreeBranch:g.worktreeBranch}:{}}}d()}catch(a){d(a)}})},8102:(a,b,c)=>{"use strict";c.d(b,{$:()=>g});var d=c(55511),e=c(29021),f=c(33873);function g(a,b){let c=(0,f.dirname)(a),g=(0,f.join)(c,`.${(0,f.basename)(a)}-${(0,d.randomUUID)()}.tmp`),h=!1;try{(0,e.writeFileSync)(g,b,{encoding:"utf8",flag:"wx",mode:384,flush:!0}),(0,e.renameSync)(g,a)}catch(a){throw h=!0,a}finally{try{(0,e.unlinkSync)(g)}catch(a){if("ENOENT"!==a.code&&!h)throw a}}}},10424:(a,b,c)=>{"use strict";c.d(b,{Ds:()=>e,L7:()=>n,PZ:()=>d,VV:()=>o,bG:()=>h,e4:()=>k,l6:()=>g,mk:()=>f,zd:()=>j});let d="generate_image",e="pi-image-result",f="generate_image_direct",g="abort_image_generation";function h(a){return"openai-codex"===a.provider?"codex":"antigravity"===a.provider?"antigravity":a.model.startsWith("grok-imagine")?"xai":"openai-images"}let i={auto:"auto","1:1":"1024x1024","16:9":"1536x864","9:16":"864x1536","3:2":"1536x1024","2:3":"1024x1536","4:3":"1024x768","3:4":"768x1024"};function j(a){if(!a)return;let b=a.trim();if(!b)return;let c=i[b];if(c)return c;throw Error(`Unsupported image size: ${a}`)}function k(a){let b;if(!a)return;let c=a.trim();if(!c)return;if("auto"===c)return c;let d=(b=function(a){let b=/^(\d+(?:\.\d+)?):(\d+(?:\.\d+)?)$/.exec(a.trim())??/^(\d+)x(\d+)$/.exec(a.trim());if(!b)return null;let c=Number(b[1]),d=Number(b[2]);return!Number.isFinite(c)||!Number.isFinite(d)||c<=0||d<=0?null:{width:c,height:d}}(c))?b.width===b.height?"square":b.width>b.height?"landscape":"portrait":null;if(c.includes(":")&&d)return c;if("square"===d)return"1:1";if("portrait"===d)return"2:3";if("landscape"===d)return"16:9";throw Error(`Unsupported image size: ${a}`)}let l=/@"([^"]+)"|@([^\s"]+)/g,m=/\.(?:png|jpe?g|webp)$/i;function n(a){let b;for(let c of a.matchAll(l)){let a=function(a){let b=(a[1]??a[2]??"").replace(/[),.;]+$/,"");if(!(!m.test(b)||b.split(/[\\/]/).includes("..")))return b}(c);a&&(b=a)}return b}function o(a){if(!("object"==typeof a&&null!==a&&!Array.isArray(a))||![e,"pi-web:image"].includes(a.type)||1!==a.version)return null;let b=a.type===e;return!("string"!=typeof a.path||!a.path||b&&(!a.path.startsWith(".pi/generated-images/")||a.path.split(/[\\/]/).includes("..")))&&"string"==typeof a.mimeType&&a.mimeType.startsWith("image/")&&"string"==typeof a.prompt&&a.prompt&&"string"==typeof a.connection&&a.connection&&(void 0===a.label||"string"==typeof a.label&&a.label)&&"string"==typeof a.model&&a.model&&"number"==typeof a.width&&Number.isSafeInteger(a.width)&&!(a.width<=0)&&"number"==typeof a.height&&Number.isSafeInteger(a.height)&&!(a.height<=0)&&(void 0===a.size||"string"==typeof a.size)&&(void 0===a.resolution||"string"==typeof a.resolution)&&(void 0===a.quality||"string"==typeof a.quality)&&(void 0===a.source||"string"==typeof a.source)?{...a,type:e}:null}},12039:(a,b,c)=>{"use strict";function d(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function e(a){return function(a,b={}){if("assistant"!==a.role)return a;let c=a.content;if(!Array.isArray(c))return a;let e=c.map(a=>(function(a,b={}){if(!d(a)||"toolCall"!==a.type)return null;let c={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},e=b.includeStreamingRawInput?function(a){if("string"==typeof a.rawInput)return a.rawInput;if("string"==typeof a.partialJson)return a.partialJson;if("string"==typeof a.partialArgs)return a.partialArgs;let b=d(a.customInput)?a.customInput:null,c=b&&"string"==typeof b.property?b.property:null,e=d(a.arguments)?a.arguments:null;return c&&e&&"string"==typeof e[c]?e[c]:void 0}(a):void 0;return void 0===e?c:{...c,rawInput:e}})(a,b)??a);return{...a,content:e}}(a)}c.d(b,{B:()=>e})},21898:(a,b,c)=>{"use strict";c.d(b,{yv:()=>f});var d=c(90426);let e=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/;function f(a){let b=function(a){let b=e.exec(a);if(!b)return null;let c=/^---[ \t]*(?:(?:\r\n|\n|\r)|$)/gm;c.lastIndex=b[0].length;let d=c.exec(a);return d?{yaml:a.slice(b[0].length,d.index).replace(/(?:\r\n|\n|\r)$/,""),rest:a.slice(d.index+d[0].length)}:null}(a);if(!b)return{data:null,rest:a};try{let a=(0,d.Hh)(b.yaml);if(a&&"object"==typeof a&&!Array.isArray(a))return{data:a,rest:b.rest}}catch{}return{data:null,rest:b.rest}}},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(){globalThis.__piProjectCache?.clear()}async function l(a,b){let{stdout:c}=await j("git",["-C",a,...b],{timeout:1e4,maxBuffer:1048576,env:{...process.env,LC_ALL:"C"}});return c.trim()}function m(a){try{return(0,e.realpathSync)(a)}catch{return a}}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:m(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 l(a,["rev-parse","--path-format=absolute","--git-common-dir","--git-dir","--show-toplevel","--abbrev-ref","HEAD"])).split("\n").map(a=>a.trim()),[k,n,o]=[d,g,h].map(i.gB),p=m(a),q=(0,i.Eb)(o,p),r=!(0,i.Eb)(n,k)&&q,s=r?(0,f.dirname)(k):o;b={projectRoot:q?m(s):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 l(a,["rev-parse","--path-format=absolute","--git-common-dir"]);return m((0,f.dirname)((0,i.gB)(b)))}async function p(a){let b=await l(a,["worktree","list","--porcelain"]),c=[],d=null,g=()=>{var a;d?.path&&!d.prunable&&(0,e.existsSync)(d.path)&&(a=d.path,!(0,f.basename)(a).startsWith("pi-web-agent-"))&&c.push({path:d.path,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,m(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 m=!1;try{await l(g,["rev-parse","--verify","--quiet",`refs/heads/${c}`]),m=!0}catch{m=!1}try{m?await l(g,["worktree","add","--",j,c]):await l(g,["worktree","add","-b",c,"--",j])}catch(a){throw Error(u(a))}return(0,h.wz)(j),k(),{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 l(a,["worktree","remove",...c?["--force"]:[],d.path])}catch(a){throw Error(u(a))}k()}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";c.d(b,{HM:()=>f,Nw:()=>e,wz:()=>g});var d=c(58864);function e(a){return(0,d.W3)(a)}function f(){return globalThis.__piAdditionalAllowedRoots||(globalThis.__piAdditionalAllowedRoots=new Set),globalThis.__piAdditionalAllowedRoots}function g(a){if(!a)return;let b=e(a);f().add(b),globalThis.__piAllowedRootsCache?.roots.add(b)}},40402:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$M:()=>e.getAgentDir,BR:()=>I,DK:()=>K,O5:()=>v,O8:()=>H,Uv:()=>M,Vg:()=>L,bA:()=>C,dQ:()=>x,eP:()=>J,jH:()=>N,mD:()=>B,os:()=>F,u1:()=>G,zH:()=>u});var e=c(75430),f=c(29021),g=c(79748),h=c(33873),i=c(12039),j=c(50880),k=c(74244),l=c(45902),m=c(69114),n=c(79535),o=c(24923),p=c(7048),q=c(766),r=a([e,p,q]);function s(a,b,c){let d=(0,f.openSync)(a,"r");try{let a=[],e=0,g=0,h=!1;for(;e<b&&g<c;){let i=Buffer.allocUnsafe(Math.min(4096,b-e)),j=(0,f.readSync)(d,i,0,i.length,e);if(0===j){h=!0;break}e+=j;let k=i.subarray(0,j),l=k.length;for(let a=0;a<k.length;a+=1)if(10===k[a]&&(g+=1)===c){l=a+1;break}a.push(k.subarray(0,l))}let i=Buffer.concat(a).toString("utf8"),j=i.split("\n");return h||i.endsWith("\n")||j.pop(),""===j.at(-1)&&j.pop(),j.map(a=>a.endsWith("\r")?a.slice(0,-1):a)}finally{(0,f.closeSync)(d)}}function t(a){return a.flatMap(a=>{try{return[JSON.parse(a)]}catch{return[]}})}async function u(a){let b=[...new Set(a.map(a=>a.cwd).filter(Boolean))],c=new Map;return await Promise.all(b.map(async a=>{c.set(a,await (0,o.KI)(a))})),a.map(a=>{let b=a.cwd?c.get(a.cwd):void 0,d=b?.projectRoot??a.cwd;return{...a,projectRoot:d,projectKey:(0,k.z)(d),...b?.branch?{branch:b.branch}:{},...b?.isWorktree?{isWorktree:!0}:{}}})}function v(a,b){let c=new Map(b.map(a=>[a.id,a]));for(let b of a){let a=c.get(b.id),d=b.relation?.kind==="subagent"&&a?.relation?.kind==="subagent"?{...b.relation,status:a.relation.status}:b.relation;c.set(b.id,d===b.relation?b:{...b,relation:d})}return[...c.values()].sort((a,b)=>b.modified.localeCompare(a.modified))}async function w(){let a=await (0,q.q8)(),b=new Map;for(let c of a)b.set((0,l.$)(c.path),c.id);let c=a.map(a=>{H(a.id,a.path);let c=a.parentSessionPath?b.get((0,l.$)(a.parentSessionPath)):void 0,d=null;if(a.parentSessionPath)try{var e;let b;d=(0,p.$u)((e=a.path,(b=t(s(e,262144,2).slice(1))).some(a=>"custom"===a.type&&a.customType===p.tP)?[...b,...t(function(a){let b=(0,f.openSync)(a,"r");try{let a=(0,f.fstatSync)(b).size,c=Math.max(0,a-262144),d=Buffer.allocUnsafe(a-c),e=(0,f.readSync)(b,d,0,d.length,c);if(0===e)return[];let g=d.subarray(0,e).toString("utf8").split("\n");if(c>0){let a=Buffer.allocUnsafe(1);(0,f.readSync)(b,a,0,1,c-1),10!==a[0]&&g.shift()}return""===g.at(-1)&&g.pop(),g.map(a=>a.endsWith("\r")?a.slice(0,-1):a)}finally{(0,f.closeSync)(b)}}(e))]:b),a.id,a.path)}catch{}return{path:a.path,id:a.id,cwd:a.cwd,name:a.name,created:a.created.toISOString(),modified:a.modified.toISOString(),messageCount:a.messageCount,firstMessage:a.firstMessage||"(no messages)",parentSessionId:c,...d?{relation:{kind:"subagent",parentSessionId:d.parentSessionId,profile:d.profile,description:d.description,status:d.status}}:a.parentSessionPath?{relation:{kind:"fork",...c?{originSessionId:c}:{}}}:{},transient:!1}});return u(c)}async function x(a={}){a.force&&B();let b=globalThis.__piSessionListGeneration??0;if(globalThis.__piSessionListCache&&Date.now()-globalThis.__piSessionListCache.ts<R)return globalThis.__piSessionListCache.data;if(globalThis.__piSessionListPromise&&globalThis.__piSessionListPromiseGeneration===b)return globalThis.__piSessionListPromise;let c=w().then(a=>(globalThis.__piSessionListGeneration??0)!==b?x():(globalThis.__piSessionListCache={data:a,ts:Date.now()},a)).finally(()=>{globalThis.__piSessionListPromise===c&&(globalThis.__piSessionListPromise=void 0,globalThis.__piSessionListPromiseGeneration=void 0)});return globalThis.__piSessionListPromise=c,globalThis.__piSessionListPromiseGeneration=b,c}[e,p,q]=r.then?(await r)():r;let R=3e4,S=/^[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$/;function y(){return(0,h.join)((0,e.getAgentDir)(),"sessions")}function z(a,b=(0,h.resolve)(y())){let c=(0,h.resolve)(a),d=(0,h.relative)(b,c);return""===d||".."===d||d.startsWith(`..${h.sep}`)||(0,h.isAbsolute)(d)?null:c}async function A(a){let b,c;if(!S.test(a))return null;let d=(0,h.resolve)(y());try{b=await (0,g.readdir)(d,{withFileTypes:!0})}catch{return null}let e=`_${a}.jsonl`;for(let f of b){let b;if(!f.isDirectory()&&!f.isSymbolicLink())continue;let i=z((0,h.join)(d,f.name),d);if(i){try{b=await (0,g.readdir)(i)}catch{continue}for(let f of b){if(!f.endsWith(e))continue;let b=z((0,h.join)(i,f),d);if(b){try{if(J(b)?.id!==a)continue}catch{continue}if(c&&c!==b)return null;c=b}}}}return c??null}function B(){globalThis.__piSessionListGeneration=(globalThis.__piSessionListGeneration??0)+1,globalThis.__piSessionListCache=void 0}function C(){return globalThis.__piSessionListGeneration??0}function D(){return globalThis.__piSessionPathCache||(globalThis.__piSessionPathCache=new Map),globalThis.__piSessionPathCache}function E(){return globalThis.__piPathToSessionIdCache||(globalThis.__piPathToSessionIdCache=new Map),globalThis.__piPathToSessionIdCache}async function F(a){let b=D().get(a);if(b)return b;let c=await A(a);return c?H(a,c):await x(),D().get(a)??null}async function G(a){let b=(0,l.$)(a),c=E().get(b);if(c)return c;let d=function(a){if(!a.endsWith(".jsonl"))return;let b=z(a);if(b)try{let a=J(b)?.id;if(!a)return;return H(a,b),a}catch{return}}(a);return d||(await x(),E().get(b))}function H(a,b){let c=(0,h.normalize)(b),d=(0,l.$)(c),e=D(),f=E(),g=e.get(a),i=g?(0,l.$)(g):void 0,j=f.get(d),k=j?e.get(j):void 0;i&&i!==d&&f.get(i)===a&&f.delete(i),j&&j!==a&&k&&(0,l.$)(k)===d&&e.delete(j),e.set(a,c),f.set(d,a)}function I(a){let b=D(),c=E(),d=b.get(a);b.delete(a);let e=d?(0,l.$)(d):void 0;e&&c.get(e)===a&&c.delete(e)}function J(a){let b=s(a,65536,1)[0]?.trimEnd();if(!b)return null;try{let a=JSON.parse(b);return"session"===a.type?a:null}catch{return null}}function K(a){return e.SessionManager.open(a).getEntries()}function L(a){for(let b=a.length-1;b>=0;b--){let c=a[b];if("model_change"===c.type)return{provider:c.provider,modelId:c.modelId}}return null}function M(a,b,c={}){let{tail:d,excludeLeaf:e}=c,f=null===b?[]:O(a,b??null,d&&d>0?d:a.length,e),g=!!(d&&d>0&&f[0]?.parentId),h=[],k=[];for(let a of f){let b=function(a,b){switch(a.type){case"message":{let c=b.deferToolResultImages?function(a,b,c){if("toolResult"!==a.role)return a;let d=0,e=0,f=new Set,g=a.content.flatMap((a,g)=>{let h=function(a){let b,c;if(!Q(a)||"image"!==a.type||("string"==typeof a.data?(b=a.data,c="string"==typeof a.mimeType?a.mimeType:void 0):Q(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);if(!h)return[a];if(b&&h.mime&&n.N.has(h.mime)&&h.bytes>0&&h.bytes<=n.c){let a={type:"url",media_type:h.mime,url:`/api/sessions/${encodeURIComponent(b)}/entries/${encodeURIComponent(c)}/tool-result-image?blockIndex=${g}`};return[{type:"image",source:a}]}return d+=1,e+=h.bytes,h.mime&&f.add(h.mime),[]});if(0===d)return{...a,content:g};let h=f.size>0?`: ${[...f].join(", ")}`:"";return g.push({type:"text",text:`[${d} tool result image${1===d?"":"s"} omitted from initial history payload${h}, ~${e} bytes]`}),{...a,content:g}}((0,i.B)(a.message),b.sessionId,a.id):(0,i.B)(a.message),d="assistant"===c.role?c.content:void 0;if("string"==typeof d&&(c={...c,content:[{type:"text",text:d}]}),"system"===c.role)return null;if("assistant"!==c.role)return c;let e=P(a.timestamp);if(void 0!==e&&(c={...c,completedAt:e}),!b.deferThinking)return c;return{...c,content:c.content.map(a=>"thinking"===a.type&&""!==a.thinking.trim()?{...a,thinking:(0,j.de)(a.thinking),deferred:!0}:a)}}case"compaction":return{role:"custom",customType:"compaction",content:a.summary,display:!0,details:{tokensBefore:a.tokensBefore,firstKeptEntryId:a.firstKeptEntryId},timestamp:P(a.timestamp)};case"branch_summary":if(!a.summary)return null;return{role:"user",content:`*The conversation briefly explored another branch and returned with this summary:*
6
+ `);let D=s(B.tools);return{...c,name:d,displayName:l,description:m,systemPrompt:n,tools:e,...D.length>0?{extensionTools:D}:{extensionTools:void 0},loadSkills:p,loadExtensions:r,...o?{model:o}:{model:void 0},...j?{maxTurns:j}:{maxTurns:void 0},scope:b,filePath:x}}function H(a,b,c){let d=E(c),e=(0,h.join)(F(a,b),`${d}.md`);(0,g.existsSync)(e)&&(0,g.unlinkSync)(e)}function I(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function J(a){let b=[...a].reverse().find(a=>"custom"===a.type&&a.customType===P);if(!b||"custom"!==b.type||!I(b.data))return null;let c=b.data;return 1!==c.version||"string"!=typeof c.parentSessionId||"string"!=typeof c.parentSessionPath?null:c}function K(a){return J(a)||null}function L(a){let b=J(a);if(!b)return null;let c=b.resourceSnapshot,d=I(c)&&!0===c.loadSkills,e=I(c)&&!0===c.loadExtensions;return I(c)&&1===c.version&&Array.isArray(c.appendSystemPrompt)&&c.appendSystemPrompt.every(a=>"string"==typeof a)&&Array.isArray(c.tools)&&c.tools.every(a=>"string"==typeof a&&a.length>0&&!V.has(a)&&(U.has(a)||e))?{appendSystemPrompt:[...c.appendSystemPrompt],tools:[...new Set(c.tools)],loadSkills:d,loadExtensions:e,..."string"==typeof c.exactSystemPrompt?{exactSystemPrompt:c.exactSystemPrompt}:{}}:null}function M(a,b){return[...new Set([...a,...[...b].filter(a=>!V.has(a))])]}function N(a,b){let c=b.map(a=>a.slice(4).toLowerCase());return[...a].flatMap(a=>{let b=a.path.replaceAll("\\","/").split("/").at(-2)??a.path,d=(a.sourceInfo?.source??"").replace(/^npm:/,""),e=new Set([b.toLowerCase(),d.toLowerCase()]);return c.some(b=>{if("*"===b)return!0;let[c,d]=b.split("/",2);return e.has(c)&&(!d||a.tools.has(d))})?[...a.tools.keys()].filter(a=>!V.has(a)&&c.some(b=>{if("*"===b||b.endsWith("/*"))return"*"===b||e.has(b.slice(0,-2));let[c,d]=b.split("/",2);return e.has(c)&&(!d||d===a)})):[]})}function O(a,b,c){let d=J(a);if(!d)return null;let e=[...a].reverse().find(a=>"custom"===a.type&&(a.customType===R||a.customType===Q)),f=e?.type==="custom"&&e.customType===R?e:void 0,g=f?.type==="custom"&&I(f.data)?f.data:void 0,h=g&&("completed"===g.status||"failed"===g.status||"aborted"===g.status)?g.status:"interrupted";return{sessionId:b,sessionPath:c,parentSessionId:d.parentSessionId,parentToolCallId:"string"==typeof d.parentToolCallId?d.parentToolCallId:"",profile:"string"==typeof d.profile?d.profile:"general-purpose",description:"string"==typeof d.description?d.description:"Subagent",task:"string"==typeof d.task?d.task:"",runInBackground:!0===d.runInBackground,..."number"==typeof d.maxTurns&&d.maxTurns>0?{maxTurns:Math.floor(d.maxTurns)}:{},..."worktree"===d.isolation||"off"===d.isolation?{isolation:d.isolation}:{},status:h,createdAt:"string"==typeof d.createdAt?d.createdAt:"",...g&&"string"==typeof g.completedAt?{completedAt:g.completedAt}:{},...g?.wrappedAtTurnLimit===!0?{wrappedAtTurnLimit:!0}:{},...g&&"string"==typeof g.result?{result:g.result}:{},...g&&"string"==typeof g.error?{error:g.error}:{},..."string"==typeof d.worktreePath?{worktreePath:d.worktreePath}:{},..."string"==typeof d.worktreeBranch?{worktreeBranch:d.worktreeBranch}:{},...g&&"string"==typeof g.worktreeCleanupError?{worktreeCleanupError:g.worktreeCleanupError}:{},...g&&"string"==typeof g.worktreeBranch?{worktreeBranch:g.worktreeBranch}:{}}}d()}catch(a){d(a)}})},8102:(a,b,c)=>{"use strict";c.d(b,{$:()=>g});var d=c(55511),e=c(29021),f=c(33873);function g(a,b){let c=(0,f.dirname)(a),g=(0,f.join)(c,`.${(0,f.basename)(a)}-${(0,d.randomUUID)()}.tmp`),h=!1;try{(0,e.writeFileSync)(g,b,{encoding:"utf8",flag:"wx",mode:384,flush:!0}),(0,e.renameSync)(g,a)}catch(a){throw h=!0,a}finally{try{(0,e.unlinkSync)(g)}catch(a){if("ENOENT"!==a.code&&!h)throw a}}}},10424:(a,b,c)=>{"use strict";c.d(b,{Ds:()=>e,L7:()=>n,PZ:()=>d,VV:()=>o,bG:()=>h,e4:()=>k,l6:()=>g,mk:()=>f,zd:()=>j});let d="generate_image",e="pi-image-result",f="generate_image_direct",g="abort_image_generation";function h(a){return"openai-codex"===a.provider?"codex":"antigravity"===a.provider?"antigravity":a.model.startsWith("grok-imagine")?"xai":"openai-images"}let i={auto:"auto","1:1":"1024x1024","16:9":"1536x864","9:16":"864x1536","3:2":"1536x1024","2:3":"1024x1536","4:3":"1024x768","3:4":"768x1024"};function j(a){if(!a)return;let b=a.trim();if(!b)return;let c=i[b];if(c)return c;throw Error(`Unsupported image size: ${a}`)}function k(a){let b;if(!a)return;let c=a.trim();if(!c)return;if("auto"===c)return c;let d=(b=function(a){let b=/^(\d+(?:\.\d+)?):(\d+(?:\.\d+)?)$/.exec(a.trim())??/^(\d+)x(\d+)$/.exec(a.trim());if(!b)return null;let c=Number(b[1]),d=Number(b[2]);return!Number.isFinite(c)||!Number.isFinite(d)||c<=0||d<=0?null:{width:c,height:d}}(c))?b.width===b.height?"square":b.width>b.height?"landscape":"portrait":null;if(c.includes(":")&&d)return c;if("square"===d)return"1:1";if("portrait"===d)return"2:3";if("landscape"===d)return"16:9";throw Error(`Unsupported image size: ${a}`)}let l=/@"([^"]+)"|@([^\s"]+)/g,m=/\.(?:png|jpe?g|webp)$/i;function n(a){let b;for(let c of a.matchAll(l)){let a=function(a){let b=(a[1]??a[2]??"").replace(/[),.;]+$/,"");if(!(!m.test(b)||b.split(/[\\/]/).includes("..")))return b}(c);a&&(b=a)}return b}function o(a){if(!("object"==typeof a&&null!==a&&!Array.isArray(a))||![e,"pi-web:image"].includes(a.type)||1!==a.version)return null;let b=a.type===e;return!("string"!=typeof a.path||!a.path||b&&(!a.path.startsWith(".pi/generated-images/")||a.path.split(/[\\/]/).includes("..")))&&"string"==typeof a.mimeType&&a.mimeType.startsWith("image/")&&"string"==typeof a.prompt&&a.prompt&&"string"==typeof a.connection&&a.connection&&(void 0===a.label||"string"==typeof a.label&&a.label)&&"string"==typeof a.model&&a.model&&"number"==typeof a.width&&Number.isSafeInteger(a.width)&&!(a.width<=0)&&"number"==typeof a.height&&Number.isSafeInteger(a.height)&&!(a.height<=0)&&(void 0===a.size||"string"==typeof a.size)&&(void 0===a.resolution||"string"==typeof a.resolution)&&(void 0===a.quality||"string"==typeof a.quality)&&(void 0===a.source||"string"==typeof a.source)?{...a,type:e}:null}},12039:(a,b,c)=>{"use strict";function d(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function e(a){return function(a,b={}){if("assistant"!==a.role)return a;let c=a.content;if(!Array.isArray(c))return a;let e=c.map(a=>(function(a,b={}){if(!d(a)||"toolCall"!==a.type)return null;let c={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},e=b.includeStreamingRawInput?function(a){if("string"==typeof a.rawInput)return a.rawInput;if("string"==typeof a.partialJson)return a.partialJson;if("string"==typeof a.partialArgs)return a.partialArgs;let b=d(a.customInput)?a.customInput:null,c=b&&"string"==typeof b.property?b.property:null,e=d(a.arguments)?a.arguments:null;return c&&e&&"string"==typeof e[c]?e[c]:void 0}(a):void 0;return void 0===e?c:{...c,rawInput:e}})(a,b)??a);return{...a,content:e}}(a)}c.d(b,{B:()=>e})},21898:(a,b,c)=>{"use strict";c.d(b,{yv:()=>f});var d=c(90426);let e=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/;function f(a){let b=function(a){let b=e.exec(a);if(!b)return null;let c=/^---[ \t]*(?:(?:\r\n|\n|\r)|$)/gm;c.lastIndex=b[0].length;let d=c.exec(a);return d?{yaml:a.slice(b[0].length,d.index).replace(/(?:\r\n|\n|\r)$/,""),rest:a.slice(d.index+d[0].length)}:null}(a);if(!b)return{data:null,rest:a};try{let a=(0,d.Hh)(b.yaml);if(a&&"object"==typeof a&&!Array.isArray(a))return{data:a,rest:b.rest}}catch{}return{data:null,rest:b.rest}}},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(){globalThis.__piProjectCache?.clear()}async function l(a,b,c=1e4){let{stdout:d}=await j("git",["-C",a,...b],{timeout:c,maxBuffer:1048576,env:{...process.env,LC_ALL:"C"}});return d.trim()}function m(a){try{return(0,e.realpathSync)(a)}catch{return a}}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:m(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 l(a,["rev-parse","--path-format=absolute","--git-common-dir","--git-dir","--show-toplevel","--abbrev-ref","HEAD"])).split("\n").map(a=>a.trim()),[k,n,o]=[d,g,h].map(i.gB),p=m(a),q=(0,i.Eb)(o,p),r=!(0,i.Eb)(n,k)&&q,s=r?(0,f.dirname)(k):o;b={projectRoot:q?m(s):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 l(a,["rev-parse","--path-format=absolute","--git-common-dir"]);return m((0,f.dirname)((0,i.gB)(b)))}async function p(a){let b=await l(a,["worktree","list","--porcelain"]),c=[],d=null,g=()=>{var a;d?.path&&!d.prunable&&(0,e.existsSync)(d.path)&&(a=d.path,!(0,f.basename)(a).startsWith("pi-web-agent-"))&&c.push({path:d.path,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,m(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 m=!1;try{await l(g,["rev-parse","--verify","--quiet",`refs/heads/${c}`]),m=!0}catch{m=!1}let n=null;if(!m)try{await l(g,["rev-parse","--verify","--quiet",`refs/remotes/origin/${c}`]),n=`refs/remotes/origin/${c}`}catch{n=null}try{m?await l(g,["worktree","add","--",j,c],3e5):n?await l(g,["worktree","add","-b",c,"--",j,n],3e5):await l(g,["worktree","add","-b",c,"--",j],3e5)}catch(a){throw Error(u(a))}return(0,h.wz)(j),k(),{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 l(a,["worktree","remove",...c?["--force"]:[],d.path])}catch(a){throw Error(u(a))}k()}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";c.d(b,{HM:()=>f,Nw:()=>e,wz:()=>g});var d=c(58864);function e(a){return(0,d.W3)(a)}function f(){return globalThis.__piAdditionalAllowedRoots||(globalThis.__piAdditionalAllowedRoots=new Set),globalThis.__piAdditionalAllowedRoots}function g(a){if(!a)return;let b=e(a);f().add(b),globalThis.__piAllowedRootsCache?.roots.add(b)}},31524:(a,b,c)=>{"use strict";c.d(b,{v:()=>d});let d=["off","minimal","low","medium","high","xhigh","max"];RegExp(`:(${d.join("|")})$`)},40402:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$M:()=>e.getAgentDir,BR:()=>J,DK:()=>L,O5:()=>v,O8:()=>I,Uv:()=>N,Vg:()=>M,bA:()=>C,dQ:()=>x,eP:()=>K,jH:()=>O,mD:()=>B,os:()=>G,u1:()=>H,xL:()=>F,zH:()=>u});var e=c(75430),f=c(29021),g=c(79748),h=c(33873),i=c(12039),j=c(50880),k=c(74244),l=c(45902),m=c(69114),n=c(79535),o=c(24923),p=c(7048),q=c(766),r=a([e,p,q]);function s(a,b,c){let d=(0,f.openSync)(a,"r");try{let a=[],e=0,g=0,h=!1;for(;e<b&&g<c;){let i=Buffer.allocUnsafe(Math.min(4096,b-e)),j=(0,f.readSync)(d,i,0,i.length,e);if(0===j){h=!0;break}e+=j;let k=i.subarray(0,j),l=k.length;for(let a=0;a<k.length;a+=1)if(10===k[a]&&(g+=1)===c){l=a+1;break}a.push(k.subarray(0,l))}let i=Buffer.concat(a).toString("utf8"),j=i.split("\n");return h||i.endsWith("\n")||j.pop(),""===j.at(-1)&&j.pop(),j.map(a=>a.endsWith("\r")?a.slice(0,-1):a)}finally{(0,f.closeSync)(d)}}function t(a){return a.flatMap(a=>{try{return[JSON.parse(a)]}catch{return[]}})}async function u(a){let b=[...new Set(a.map(a=>a.cwd).filter(Boolean))],c=new Map;return await Promise.all(b.map(async a=>{c.set(a,await (0,o.KI)(a))})),a.map(a=>{let b=a.cwd?c.get(a.cwd):void 0,d=b?.projectRoot??a.cwd;return{...a,projectRoot:d,projectKey:(0,k.z)(d),...b?.branch?{branch:b.branch}:{},...b?.isWorktree?{isWorktree:!0}:{}}})}function v(a,b){let c=new Map(b.map(a=>[a.id,a]));for(let b of a){let a=c.get(b.id),d=b.relation?.kind==="subagent"&&a?.relation?.kind==="subagent"?{...b.relation,status:a.relation.status}:b.relation;c.set(b.id,d===b.relation?b:{...b,relation:d})}return[...c.values()].sort((a,b)=>b.modified.localeCompare(a.modified))}async function w(){let a=await (0,q.q8)(),b=new Map;for(let c of a)b.set((0,l.$)(c.path),c.id);let c=a.map(a=>{I(a.id,a.path);let c=a.parentSessionPath?b.get((0,l.$)(a.parentSessionPath)):void 0,d=null;if(a.parentSessionPath)try{var e;let b;d=(0,p.$u)((e=a.path,(b=t(s(e,262144,2).slice(1))).some(a=>"custom"===a.type&&a.customType===p.tP)?[...b,...t(function(a){let b=(0,f.openSync)(a,"r");try{let a=(0,f.fstatSync)(b).size,c=Math.max(0,a-262144),d=Buffer.allocUnsafe(a-c),e=(0,f.readSync)(b,d,0,d.length,c);if(0===e)return[];let g=d.subarray(0,e).toString("utf8").split("\n");if(c>0){let a=Buffer.allocUnsafe(1);(0,f.readSync)(b,a,0,1,c-1),10!==a[0]&&g.shift()}return""===g.at(-1)&&g.pop(),g.map(a=>a.endsWith("\r")?a.slice(0,-1):a)}finally{(0,f.closeSync)(b)}}(e))]:b),a.id,a.path)}catch{}return{path:a.path,id:a.id,cwd:a.cwd,name:a.name,created:a.created.toISOString(),modified:a.modified.toISOString(),messageCount:a.messageCount,firstMessage:a.firstMessage||"(no messages)",parentSessionId:c,...d?{relation:{kind:"subagent",parentSessionId:d.parentSessionId,profile:d.profile,description:d.description,status:d.status}}:a.parentSessionPath?{relation:{kind:"fork",...c?{originSessionId:c}:{}}}:{},transient:!1}});return u(c)}async function x(a={}){a.force&&B();let b=globalThis.__piSessionListGeneration??0;if(globalThis.__piSessionListCache&&Date.now()-globalThis.__piSessionListCache.ts<S)return globalThis.__piSessionListCache.data;if(globalThis.__piSessionListPromise&&globalThis.__piSessionListPromiseGeneration===b)return globalThis.__piSessionListPromise;let c=w().then(a=>(globalThis.__piSessionListGeneration??0)!==b?x():(globalThis.__piSessionListCache={data:a,ts:Date.now()},a)).finally(()=>{globalThis.__piSessionListPromise===c&&(globalThis.__piSessionListPromise=void 0,globalThis.__piSessionListPromiseGeneration=void 0)});return globalThis.__piSessionListPromise=c,globalThis.__piSessionListPromiseGeneration=b,c}[e,p,q]=r.then?(await r)():r;let S=3e4,T=/^[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$/;function y(){return(0,h.join)((0,e.getAgentDir)(),"sessions")}function z(a,b=(0,h.resolve)(y())){let c=(0,h.resolve)(a),d=(0,h.relative)(b,c);return""===d||".."===d||d.startsWith(`..${h.sep}`)||(0,h.isAbsolute)(d)?null:c}async function A(a){let b,c;if(!T.test(a))return null;let d=(0,h.resolve)(y());try{b=await (0,g.readdir)(d,{withFileTypes:!0})}catch{return null}let e=`_${a}.jsonl`;for(let f of b){let b;if(!f.isDirectory()&&!f.isSymbolicLink())continue;let i=z((0,h.join)(d,f.name),d);if(i){try{b=await (0,g.readdir)(i)}catch{continue}for(let f of b){if(!f.endsWith(e))continue;let b=z((0,h.join)(i,f),d);if(b){try{if(K(b)?.id!==a)continue}catch{continue}if(c&&c!==b)return null;c=b}}}}return c??null}function B(){globalThis.__piSessionListGeneration=(globalThis.__piSessionListGeneration??0)+1,globalThis.__piSessionListCache=void 0}function C(){return globalThis.__piSessionListGeneration??0}function D(){return globalThis.__piSessionPathCache||(globalThis.__piSessionPathCache=new Map),globalThis.__piSessionPathCache}function E(){return globalThis.__piPathToSessionIdCache||(globalThis.__piPathToSessionIdCache=new Map),globalThis.__piPathToSessionIdCache}function F(a,b=65536){let c;try{c=(0,f.openSync)(a,"r")}catch{return{entryId:null,overlongLine:!1}}try{let a=(0,f.fstatSync)(c).size;if(a<=0)return{entryId:null,overlongLine:!1};let d=Math.min(a,Math.max(1,b)),e=a-d,g=Buffer.allocUnsafe(d),h=(0,f.readSync)(c,g,0,d,e);if(h<=0)return{entryId:null,overlongLine:!1};let i=g.subarray(0,h),j=e>0,k=!1;if(j){let a=Buffer.allocUnsafe(1);(0,f.readSync)(c,a,0,1,e-1),k=10!==a[0]}let l=i.toString("utf8").split("\n");k&&l.shift();for(let a=l.length-1;a>=0;a-=1){let b,c=l[a]?.trim();if(!c)continue;try{b=JSON.parse(c)}catch{continue}if("object"!=typeof b||null===b)continue;let d=b;if("session"!==d.type&&"string"==typeof d.id&&d.id.length>0)return{entryId:d.id,overlongLine:!1}}return{entryId:null,overlongLine:k}}catch{return{entryId:null,overlongLine:!1}}finally{(0,f.closeSync)(c)}}async function G(a){let b=D().get(a);if(b)return b;let c=await A(a);return c?I(a,c):await x(),D().get(a)??null}async function H(a){let b=(0,l.$)(a),c=E().get(b);if(c)return c;let d=function(a){if(!a.endsWith(".jsonl"))return;let b=z(a);if(b)try{let a=K(b)?.id;if(!a)return;return I(a,b),a}catch{return}}(a);return d||(await x(),E().get(b))}function I(a,b){let c=(0,h.normalize)(b),d=(0,l.$)(c),e=D(),f=E(),g=e.get(a),i=g?(0,l.$)(g):void 0,j=f.get(d),k=j?e.get(j):void 0;i&&i!==d&&f.get(i)===a&&f.delete(i),j&&j!==a&&k&&(0,l.$)(k)===d&&e.delete(j),e.set(a,c),f.set(d,a)}function J(a){let b=D(),c=E(),d=b.get(a);b.delete(a);let e=d?(0,l.$)(d):void 0;e&&c.get(e)===a&&c.delete(e)}function K(a){let b=s(a,65536,1)[0]?.trimEnd();if(!b)return null;try{let a=JSON.parse(b);return"session"===a.type?a:null}catch{return null}}function L(a){return e.SessionManager.open(a).getEntries()}function M(a){for(let b=a.length-1;b>=0;b--){let c=a[b];if("model_change"===c.type)return{provider:c.provider,modelId:c.modelId}}return null}function N(a,b,c={}){let{tail:d,excludeLeaf:e}=c,f=null===b?[]:P(a,b??null,d&&d>0?d:a.length,e),g=!!(d&&d>0&&f[0]?.parentId),h=[],k=[];for(let a of f){let b=function(a,b){switch(a.type){case"message":{if("system"===a.message.role)return null;let c=b.deferToolResultImages?function(a,b,c){if("toolResult"!==a.role)return a;let d=0,e=0,f=new Set,g=a.content.flatMap((a,g)=>{let h=function(a){let b,c;if(!R(a)||"image"!==a.type||("string"==typeof a.data?(b=a.data,c="string"==typeof a.mimeType?a.mimeType:void 0):R(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);if(!h)return[a];if(b&&h.mime&&n.N.has(h.mime)&&h.bytes>0&&h.bytes<=n.c){let a={type:"url",media_type:h.mime,url:`/api/sessions/${encodeURIComponent(b)}/entries/${encodeURIComponent(c)}/tool-result-image?blockIndex=${g}`};return[{type:"image",source:a}]}return d+=1,e+=h.bytes,h.mime&&f.add(h.mime),[]});if(0===d)return{...a,content:g};let h=f.size>0?`: ${[...f].join(", ")}`:"";return g.push({type:"text",text:`[${d} tool result image${1===d?"":"s"} omitted from initial history payload${h}, ~${e} bytes]`}),{...a,content:g}}((0,i.B)(a.message),b.sessionId,a.id):(0,i.B)(a.message),d="assistant"===c.role?c.content:void 0;if("string"==typeof d&&(c={...c,content:[{type:"text",text:d}]}),"system"===c.role)return null;if("assistant"!==c.role)return c;let e=Q(a.timestamp);if(void 0!==e&&(c={...c,completedAt:e}),!b.deferThinking)return c;return{...c,content:c.content.map(a=>"thinking"===a.type&&""!==a.thinking.trim()?{...a,thinking:(0,j.de)(a.thinking),deferred:!0}:a)}}case"compaction":return{role:"custom",customType:"compaction",content:a.summary,display:!0,details:{tokensBefore:a.tokensBefore,firstKeptEntryId:a.firstKeptEntryId},timestamp:Q(a.timestamp)};case"branch_summary":if(!a.summary)return null;return{role:"user",content:`*The conversation briefly explored another branch and returned with this summary:*
7
7
 
8
- ${a.summary}`,timestamp:P(a.timestamp)};case"custom_message":return{role:"custom",customType:a.customType,content:a.content,display:a.display,details:a.details,timestamp:P(a.timestamp)};default:return null}}(a,c);b&&(h.push(b),k.push(a.id))}return{messages:h,entryIds:k,oldestEntryId:f[0]?.id??null,hasMore:g,...function(a,b){let c,d;if(null===b)return{thinkingLevel:"off",model:null};let e=O(a,b??null,a.length);for(let a=e.length-1;a>=0&&(void 0===c||void 0===d);a--){let b=e[a];if(void 0===c&&"thinking_level_change"===b.type&&(c=b.thinkingLevel),void 0===d&&"message"===b.type&&"assistant"===b.message.role){let a=b.message;"string"==typeof a.provider&&"string"==typeof a.model&&(d={provider:a.provider,modelId:a.model})}}return{thinkingLevel:c??"off",model:L(e)??d??null}}(a,b)}}function N(a,b){if(null===b)return[];let c=new Map;for(let b of a)c.set(b.id,b);let d=b?c.get(b):a[a.length-1],e=[];for(;d;)"message"===d.type&&"user"===d.message.role&&e.push({entryId:d.id,preview:function(a,b=120){let c="";"string"==typeof a?c=a:Array.isArray(a)&&(c=a.filter(a=>!!a&&"object"==typeof a&&"text"===a.type).map(a=>a.text??"").join("\n"));let d=(function(a){let b=(0,m.d)(a);if(b)return b;let c=a.match(/<skill\s+name="([^"\n]+)"[^>]*>/i);return(c?`/skill:${c[1]} ${a.replace(/<skill[^>]*>[\s\S]*?<\/skill>/gi,"").replace(/^<skill[^>]*>[^\n]*/i,"").trim()}`.trimEnd():a).replace(/^(?:About this passage:\s*(?:>\s*)?|>\s*|[“"「『])/,"")})(c).replace(/\s+/g," ").trim();return d.length<=b?d:`${d.slice(0,b).trimEnd()}…`}(d.message.content)||"…"}),d=d.parentId?c.get(d.parentId):void 0;return e.reverse(),e}function O(a,b,c,d=!1){var e;if(c<=0)return a;let f=new Map;for(let b of a)f.set(b.id,b);let g=b?f.get(b):a[a.length-1];if(d&&(g=g?.parentId?f.get(g.parentId):void 0),!g)return[];let h=[],i=g;for(;i&&h.length<c;)h.push(i),i=i.parentId?f.get(i.parentId):void 0;let j=Math.max(c,1e3);for(;i&&h.length<j&&(e=h[h.length-1],"compaction"!==e.type&&("message"!==e.type||"user"!==e.message.role));)h.push(i),i=i.parentId?f.get(i.parentId):void 0;return h.reverse(),h}function P(a){let b=Date.parse(a);return Number.isNaN(b)?void 0:b}function Q(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}d()}catch(a){d(a)}})},41761:(a,b,c)=>{"use strict";c.d(b,{C1:()=>e,kU:()=>d});let d=["read","grep","find","ls"],e=["bash","read","edit","write","grep","find","ls"];[...e]},45232:(a,b,c)=>{"use strict";c.d(b,{M3:()=>e});var d=c(69114);function e(a){let b,c;return a?(c=(b=((0,d.d)(a)??a).slice(0,500)).charCodeAt(b.length-1))>=55296&&c<=56319?b.slice(0,-1):b:""}},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}},50880:(a,b,c)=>{"use strict";function d(a){return a.trimStart().match(/^[^\r\n]{0,240}/u)?.[0].trimEnd()??""}c.d(b,{de:()=>d})},58864:(a,b,c)=>{"use strict";c.d(b,{A_:()=>g,Eb:()=>k,W3:()=>i,gB:()=>h,uK:()=>f});var d=c(33873);let e=/^[a-zA-Z]:[\\/]/;function f(a){return e.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function g(a){let b=a.join("/"),c=i(b);return/^[a-zA-Z]:$/.test(c)?`${c}/`:f(c)?c:"/"+b.replace(/^\/+/,"")}function h(a){return a&&"win32"===process.platform?(0,d.normalize)(a):a}function i(a){return a.replace(/\\/g,"/")}function j(a){let b=(0,d.normalize)(h(a)),c=(0,d.parse)(b).root.length,e=b.length;for(;e>c&&b[e-1]===d.sep;)e--;return b.slice(0,e)}function k(a,b){if(a===b)return!0;if(!a||!b)return!1;let c=j(a),d=j(b);return"win32"===process.platform?c.toLowerCase()===d.toLowerCase():c===d}},69114:(a,b,c)=>{"use strict";c.d(b,{d:()=>e});let d=/^<skill name="([^"\n]+)" location="([^"\n]+)">\nReferences are relative to [^\n]+\.\n\n([\s\S]*)\n<\/skill>(?:\n\n([\s\S]+))?$/;function e(a){let b=a.match(d);if(!b)return null;let[,c,,,e]=b;return e?`/skill:${c} ${e}`:`/skill:${c}`}},74244:(a,b,c)=>{"use strict";c.d(b,{z:()=>f});var d=c(76760),e=c.n(d);function f(a,b=process.platform){if(!a)return a;let c="win32"===b?e().win32:e().posix,d=c.normalize(a),g=c.parse(d).root.length,h=d.length;for(;h>g&&d[h-1]===c.sep;)h--;let i=d.slice(0,h);return"win32"===b?i.toLowerCase():i}},78335:()=>{},79535:(a,b,c)=>{"use strict";c.d(b,{N:()=>e,c:()=>d});let d=0xa00000,e=new Set(["image/png","image/jpeg","image/webp","image/gif","image/bmp","image/avif"])},82536:(a,b,c)=>{"use strict";c.d(b,{o:()=>h,x:()=>i});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,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)}},96487:()=>{}};
8
+ ${a.summary}`,timestamp:Q(a.timestamp)};case"custom_message":return{role:"custom",customType:a.customType,content:a.content,display:a.display,details:a.details,timestamp:Q(a.timestamp)};default:return null}}(a,c);b&&(h.push(b),k.push(a.id))}return{messages:h,entryIds:k,oldestEntryId:f[0]?.id??null,hasMore:g,...function(a,b){let c,d;if(null===b)return{thinkingLevel:"off",model:null};let e=P(a,b??null,a.length);for(let a=e.length-1;a>=0&&(void 0===c||void 0===d);a--){let b=e[a];if(void 0===c&&"thinking_level_change"===b.type&&(c=b.thinkingLevel),void 0===d&&"message"===b.type&&"assistant"===b.message.role){let a=b.message;"string"==typeof a.provider&&"string"==typeof a.model&&(d={provider:a.provider,modelId:a.model})}}return{thinkingLevel:c??"off",model:M(e)??d??null}}(a,b)}}function O(a,b){if(null===b)return[];let c=new Map;for(let b of a)c.set(b.id,b);let d=b?c.get(b):a[a.length-1],e=[];for(;d;)"message"===d.type&&"user"===d.message.role&&e.push({entryId:d.id,preview:function(a,b=120){let c="";"string"==typeof a?c=a:Array.isArray(a)&&(c=a.filter(a=>!!a&&"object"==typeof a&&"text"===a.type).map(a=>a.text??"").join("\n"));let d=(function(a){let b=(0,m.d)(a);if(b)return b;let c=a.match(/<skill\s+name="([^"\n]+)"[^>]*>/i);return(c?`/skill:${c[1]} ${a.replace(/<skill[^>]*>[\s\S]*?<\/skill>/gi,"").replace(/^<skill[^>]*>[^\n]*/i,"").trim()}`.trimEnd():a).replace(/^(?:About this passage:\s*(?:>\s*)?|>\s*|[“"「『])/,"")})(c).replace(/\s+/g," ").trim();return d.length<=b?d:`${d.slice(0,b).trimEnd()}…`}(d.message.content)||"…"}),d=d.parentId?c.get(d.parentId):void 0;return e.reverse(),e}function P(a,b,c,d=!1){var e;if(c<=0)return a;let f=new Map;for(let b of a)f.set(b.id,b);let g=b?f.get(b):a[a.length-1];if(d&&(g=g?.parentId?f.get(g.parentId):void 0),!g)return[];let h=[],i=g;for(;i&&h.length<c;)h.push(i),i=i.parentId?f.get(i.parentId):void 0;let j=Math.max(c,1e3);for(;i&&h.length<j&&(e=h[h.length-1],"compaction"!==e.type&&("message"!==e.type||"user"!==e.message.role));)h.push(i),i=i.parentId?f.get(i.parentId):void 0;return h.reverse(),h}function Q(a){let b=Date.parse(a);return Number.isNaN(b)?void 0:b}function R(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}d()}catch(a){d(a)}})},41761:(a,b,c)=>{"use strict";c.d(b,{C1:()=>e,kU:()=>d});let d=["read","grep","find","ls"],e=["bash","read","edit","write","grep","find","ls"];[...e]},45232:(a,b,c)=>{"use strict";c.d(b,{M3:()=>e});var d=c(69114);function e(a){let b,c;return a?(c=(b=((0,d.d)(a)??a).slice(0,500)).charCodeAt(b.length-1))>=55296&&c<=56319?b.slice(0,-1):b:""}},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}},50880:(a,b,c)=>{"use strict";function d(a){return a.trimStart().match(/^[^\r\n]{0,240}/u)?.[0].trimEnd()??""}c.d(b,{de:()=>d})},58864:(a,b,c)=>{"use strict";c.d(b,{A_:()=>g,Eb:()=>k,W3:()=>i,gB:()=>h,uK:()=>f});var d=c(33873);let e=/^[a-zA-Z]:[\\/]/;function f(a){return e.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function g(a){let b=a.join("/"),c=i(b);return/^[a-zA-Z]:$/.test(c)?`${c}/`:f(c)?c:"/"+b.replace(/^\/+/,"")}function h(a){return a&&"win32"===process.platform?(0,d.normalize)(a):a}function i(a){return a.replace(/\\/g,"/")}function j(a){let b=(0,d.normalize)(h(a)),c=(0,d.parse)(b).root.length,e=b.length;for(;e>c&&b[e-1]===d.sep;)e--;return b.slice(0,e)}function k(a,b){if(a===b)return!0;if(!a||!b)return!1;let c=j(a),d=j(b);return"win32"===process.platform?c.toLowerCase()===d.toLowerCase():c===d}},69114:(a,b,c)=>{"use strict";c.d(b,{d:()=>e});let d=/^<skill name="([^"\n]+)" location="([^"\n]+)">\nReferences are relative to [^\n]+\.\n\n([\s\S]*)\n<\/skill>(?:\n\n([\s\S]+))?$/;function e(a){let b=a.match(d);if(!b)return null;let[,c,,,e]=b;return e?`/skill:${c} ${e}`:`/skill:${c}`}},74244:(a,b,c)=>{"use strict";c.d(b,{z:()=>f});var d=c(76760),e=c.n(d);function f(a,b=process.platform){if(!a)return a;let c="win32"===b?e().win32:e().posix,d=c.normalize(a),g=c.parse(d).root.length,h=d.length;for(;h>g&&d[h-1]===c.sep;)h--;let i=d.slice(0,h);return"win32"===b?i.toLowerCase():i}},78335:()=>{},79535:(a,b,c)=>{"use strict";c.d(b,{N:()=>e,c:()=>d});let d=0xa00000,e=new Set(["image/png","image/jpeg","image/webp","image/gif","image/bmp","image/avif"])},82536:(a,b,c)=>{"use strict";c.d(b,{o:()=>h,x:()=>i});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,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)}},96487:()=>{}};