@calmabacus/pi-web 1.0.0

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 (778) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +66 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/diagnostics/framework.json +1 -0
  6. package/.next/export-marker.json +6 -0
  7. package/.next/images-manifest.json +68 -0
  8. package/.next/next-minimal-server.js.nft.json +1 -0
  9. package/.next/next-server.js.nft.json +1 -0
  10. package/.next/package.json +1 -0
  11. package/.next/prerender-manifest.json +189 -0
  12. package/.next/react-loadable-manifest.json +2367 -0
  13. package/.next/required-server-files.js +387 -0
  14. package/.next/required-server-files.json +387 -0
  15. package/.next/routes-manifest.json +505 -0
  16. package/.next/server/app/_global-error/page.js +31 -0
  17. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  18. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  19. package/.next/server/app/_global-error.html +1 -0
  20. package/.next/server/app/_global-error.meta +27 -0
  21. package/.next/server/app/_global-error.rsc +14 -0
  22. package/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
  23. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +20 -0
  24. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  25. package/.next/server/app/_not-found/page.js +1 -0
  26. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  27. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  28. package/.next/server/app/_not-found.html +1 -0
  29. package/.next/server/app/_not-found.meta +27 -0
  30. package/.next/server/app/_not-found.rsc +23 -0
  31. package/.next/server/app/_not-found.segments/_full.segment.rsc +23 -0
  32. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +29 -0
  33. package/.next/server/app/_not-found.segments/_tree.segment.rsc +8 -0
  34. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -0
  35. package/.next/server/app/api/agent/[id]/bash-output/route.js.nft.json +1 -0
  36. package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -0
  37. package/.next/server/app/api/agent/[id]/events/route.js +3 -0
  38. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -0
  39. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -0
  40. package/.next/server/app/api/agent/[id]/lease/route.js +1 -0
  41. package/.next/server/app/api/agent/[id]/lease/route.js.nft.json +1 -0
  42. package/.next/server/app/api/agent/[id]/lease/route_client-reference-manifest.js +1 -0
  43. package/.next/server/app/api/agent/[id]/route.js +1 -0
  44. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
  45. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/agent/new/route.js +1 -0
  47. package/.next/server/app/api/agent/new/route.js.nft.json +1 -0
  48. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -0
  49. package/.next/server/app/api/agent/running/route.js +1 -0
  50. package/.next/server/app/api/agent/running/route.js.nft.json +1 -0
  51. package/.next/server/app/api/agent/running/route_client-reference-manifest.js +1 -0
  52. package/.next/server/app/api/app-update/route.js +1 -0
  53. package/.next/server/app/api/app-update/route.js.nft.json +1 -0
  54. package/.next/server/app/api/app-update/route_client-reference-manifest.js +1 -0
  55. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -0
  56. package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -0
  57. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -0
  58. package/.next/server/app/api/auth/login/[provider]/route.js +3 -0
  59. package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -0
  60. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -0
  61. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -0
  62. package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -0
  63. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -0
  64. package/.next/server/app/api/auth/providers/route.js +1 -0
  65. package/.next/server/app/api/auth/providers/route.js.nft.json +1 -0
  66. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -0
  67. package/.next/server/app/api/cwd/browse/route.js +1 -0
  68. package/.next/server/app/api/cwd/browse/route.js.nft.json +1 -0
  69. package/.next/server/app/api/cwd/browse/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/cwd/validate/route.js +1 -0
  71. package/.next/server/app/api/cwd/validate/route.js.nft.json +1 -0
  72. package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/default-cwd/route.js +1 -0
  74. package/.next/server/app/api/default-cwd/route.js.nft.json +1 -0
  75. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/file-index/route.js +1 -0
  77. package/.next/server/app/api/file-index/route.js.nft.json +1 -0
  78. package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -0
  79. package/.next/server/app/api/files/[...path]/route.js +49 -0
  80. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -0
  81. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -0
  82. package/.next/server/app/api/git/diff/route.js +6 -0
  83. package/.next/server/app/api/git/diff/route.js.nft.json +1 -0
  84. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -0
  85. package/.next/server/app/api/git/status/route.js +6 -0
  86. package/.next/server/app/api/git/status/route.js.nft.json +1 -0
  87. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -0
  88. package/.next/server/app/api/home/route.js +1 -0
  89. package/.next/server/app/api/home/route.js.nft.json +1 -0
  90. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -0
  91. package/.next/server/app/api/image-generation/route.js +1 -0
  92. package/.next/server/app/api/image-generation/route.js.nft.json +1 -0
  93. package/.next/server/app/api/image-generation/route_client-reference-manifest.js +1 -0
  94. package/.next/server/app/api/image-generation/settings/connections/route.js +1 -0
  95. package/.next/server/app/api/image-generation/settings/connections/route.js.nft.json +1 -0
  96. package/.next/server/app/api/image-generation/settings/connections/route_client-reference-manifest.js +1 -0
  97. package/.next/server/app/api/image-generation/settings/route.js +1 -0
  98. package/.next/server/app/api/image-generation/settings/route.js.nft.json +1 -0
  99. package/.next/server/app/api/image-generation/settings/route_client-reference-manifest.js +1 -0
  100. package/.next/server/app/api/models/route.js +1 -0
  101. package/.next/server/app/api/models/route.js.nft.json +1 -0
  102. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
  103. package/.next/server/app/api/models-config/catalog/route.js +1 -0
  104. package/.next/server/app/api/models-config/catalog/route.js.nft.json +1 -0
  105. package/.next/server/app/api/models-config/catalog/route_client-reference-manifest.js +1 -0
  106. package/.next/server/app/api/models-config/discover/route.js +1 -0
  107. package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -0
  108. package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -0
  109. package/.next/server/app/api/models-config/picker/route.js +1 -0
  110. package/.next/server/app/api/models-config/picker/route.js.nft.json +1 -0
  111. package/.next/server/app/api/models-config/picker/route_client-reference-manifest.js +1 -0
  112. package/.next/server/app/api/models-config/route.js +1 -0
  113. package/.next/server/app/api/models-config/route.js.nft.json +1 -0
  114. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -0
  115. package/.next/server/app/api/models-config/runtime/route.js +1 -0
  116. package/.next/server/app/api/models-config/runtime/route.js.nft.json +1 -0
  117. package/.next/server/app/api/models-config/runtime/route_client-reference-manifest.js +1 -0
  118. package/.next/server/app/api/models-config/test/route.js +1 -0
  119. package/.next/server/app/api/models-config/test/route.js.nft.json +1 -0
  120. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -0
  121. package/.next/server/app/api/plugins/check/route.js +1 -0
  122. package/.next/server/app/api/plugins/check/route.js.nft.json +1 -0
  123. package/.next/server/app/api/plugins/check/route_client-reference-manifest.js +1 -0
  124. package/.next/server/app/api/plugins/route.js +1 -0
  125. package/.next/server/app/api/plugins/route.js.nft.json +1 -0
  126. package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -0
  127. package/.next/server/app/api/project-trust/route.js +1 -0
  128. package/.next/server/app/api/project-trust/route.js.nft.json +1 -0
  129. package/.next/server/app/api/project-trust/route_client-reference-manifest.js +1 -0
  130. package/.next/server/app/api/push/config/route.js +1 -0
  131. package/.next/server/app/api/push/config/route.js.nft.json +1 -0
  132. package/.next/server/app/api/push/config/route_client-reference-manifest.js +1 -0
  133. package/.next/server/app/api/push/subscribe/route.js +1 -0
  134. package/.next/server/app/api/push/subscribe/route.js.nft.json +1 -0
  135. package/.next/server/app/api/push/subscribe/route_client-reference-manifest.js +1 -0
  136. package/.next/server/app/api/sessions/[id]/auto-name/route.js +10 -0
  137. package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -0
  138. package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -0
  139. package/.next/server/app/api/sessions/[id]/context/route.js +1 -0
  140. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -0
  141. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -0
  143. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js.nft.json +1 -0
  144. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -0
  145. package/.next/server/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route.js +1 -0
  146. package/.next/server/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route.js.nft.json +1 -0
  147. package/.next/server/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/sessions/[id]/export/route.js +56 -0
  149. package/.next/server/app/api/sessions/[id]/export/route.js.nft.json +1 -0
  150. package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -0
  151. package/.next/server/app/api/sessions/[id]/outline/route.js +1 -0
  152. package/.next/server/app/api/sessions/[id]/outline/route.js.nft.json +1 -0
  153. package/.next/server/app/api/sessions/[id]/outline/route_client-reference-manifest.js +1 -0
  154. package/.next/server/app/api/sessions/[id]/route.js +1 -0
  155. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -0
  156. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -0
  157. package/.next/server/app/api/sessions/[id]/state/route.js +1 -0
  158. package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -0
  159. package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -0
  160. package/.next/server/app/api/sessions/route.js +1 -0
  161. package/.next/server/app/api/sessions/route.js.nft.json +1 -0
  162. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -0
  163. package/.next/server/app/api/sessions/search/route.js +1 -0
  164. package/.next/server/app/api/sessions/search/route.js.nft.json +1 -0
  165. package/.next/server/app/api/sessions/search/route_client-reference-manifest.js +1 -0
  166. package/.next/server/app/api/skills/check/route.js +1 -0
  167. package/.next/server/app/api/skills/check/route.js.nft.json +1 -0
  168. package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -0
  169. package/.next/server/app/api/skills/install/route.js +1 -0
  170. package/.next/server/app/api/skills/install/route.js.nft.json +1 -0
  171. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
  172. package/.next/server/app/api/skills/route.js +4 -0
  173. package/.next/server/app/api/skills/route.js.nft.json +1 -0
  174. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
  175. package/.next/server/app/api/skills/search/route.js +1 -0
  176. package/.next/server/app/api/skills/search/route.js.nft.json +1 -0
  177. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -0
  178. package/.next/server/app/api/skills/update/route.js +1 -0
  179. package/.next/server/app/api/skills/update/route.js.nft.json +1 -0
  180. package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -0
  181. package/.next/server/app/api/subagents/[id]/route.js +1 -0
  182. package/.next/server/app/api/subagents/[id]/route.js.nft.json +1 -0
  183. package/.next/server/app/api/subagents/[id]/route_client-reference-manifest.js +1 -0
  184. package/.next/server/app/api/subagents/profiles/route.js +1 -0
  185. package/.next/server/app/api/subagents/profiles/route.js.nft.json +1 -0
  186. package/.next/server/app/api/subagents/profiles/route_client-reference-manifest.js +1 -0
  187. package/.next/server/app/api/subagents/settings/route.js +1 -0
  188. package/.next/server/app/api/subagents/settings/route.js.nft.json +1 -0
  189. package/.next/server/app/api/subagents/settings/route_client-reference-manifest.js +1 -0
  190. package/.next/server/app/api/terminal/[id]/events/route.js +4 -0
  191. package/.next/server/app/api/terminal/[id]/events/route.js.nft.json +1 -0
  192. package/.next/server/app/api/terminal/[id]/events/route_client-reference-manifest.js +1 -0
  193. package/.next/server/app/api/terminal/[id]/route.js +1 -0
  194. package/.next/server/app/api/terminal/[id]/route.js.nft.json +1 -0
  195. package/.next/server/app/api/terminal/[id]/route_client-reference-manifest.js +1 -0
  196. package/.next/server/app/api/terminal/route.js +1 -0
  197. package/.next/server/app/api/terminal/route.js.nft.json +1 -0
  198. package/.next/server/app/api/terminal/route_client-reference-manifest.js +1 -0
  199. package/.next/server/app/api/tools/settings/route.js +1 -0
  200. package/.next/server/app/api/tools/settings/route.js.nft.json +1 -0
  201. package/.next/server/app/api/tools/settings/route_client-reference-manifest.js +1 -0
  202. package/.next/server/app/api/web-auth/route.js +1 -0
  203. package/.next/server/app/api/web-auth/route.js.nft.json +1 -0
  204. package/.next/server/app/api/web-auth/route_client-reference-manifest.js +1 -0
  205. package/.next/server/app/api/worktrees/route.js +1 -0
  206. package/.next/server/app/api/worktrees/route.js.nft.json +1 -0
  207. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -0
  208. package/.next/server/app/favicon.ico/route.js +1 -0
  209. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  210. package/.next/server/app/favicon.ico.body +0 -0
  211. package/.next/server/app/favicon.ico.meta +1 -0
  212. package/.next/server/app/index.html +1 -0
  213. package/.next/server/app/index.meta +21 -0
  214. package/.next/server/app/index.rsc +24 -0
  215. package/.next/server/app/index.segments/__PAGE__.segment.rsc +29 -0
  216. package/.next/server/app/index.segments/_full.segment.rsc +24 -0
  217. package/.next/server/app/index.segments/_tree.segment.rsc +9 -0
  218. package/.next/server/app/login/page.js +3 -0
  219. package/.next/server/app/login/page.js.nft.json +1 -0
  220. package/.next/server/app/login/page_client-reference-manifest.js +1 -0
  221. package/.next/server/app/login.html +1 -0
  222. package/.next/server/app/login.meta +26 -0
  223. package/.next/server/app/login.rsc +27 -0
  224. package/.next/server/app/login.segments/_full.segment.rsc +27 -0
  225. package/.next/server/app/login.segments/_tree.segment.rsc +8 -0
  226. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +33 -0
  227. package/.next/server/app/manifest.webmanifest/route.js +17 -0
  228. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -0
  229. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -0
  230. package/.next/server/app/manifest.webmanifest.body +1 -0
  231. package/.next/server/app/manifest.webmanifest.meta +1 -0
  232. package/.next/server/app/page.js +254 -0
  233. package/.next/server/app/page.js.nft.json +1 -0
  234. package/.next/server/app/page_client-reference-manifest.js +1 -0
  235. package/.next/server/app-paths-manifest.json +66 -0
  236. package/.next/server/chunks/1094.js +160 -0
  237. package/.next/server/chunks/1515.js +1 -0
  238. package/.next/server/chunks/1555.js +1 -0
  239. package/.next/server/chunks/1601.js +24 -0
  240. package/.next/server/chunks/1625.js +1 -0
  241. package/.next/server/chunks/1800.js +1 -0
  242. package/.next/server/chunks/1813.js +1 -0
  243. package/.next/server/chunks/1860.js +1 -0
  244. package/.next/server/chunks/2075.js +23 -0
  245. package/.next/server/chunks/2106.js +1 -0
  246. package/.next/server/chunks/2169.js +36 -0
  247. package/.next/server/chunks/2190.js +1 -0
  248. package/.next/server/chunks/2243.js +1 -0
  249. package/.next/server/chunks/2325.js +82 -0
  250. package/.next/server/chunks/2349.js +1 -0
  251. package/.next/server/chunks/2408.js +1 -0
  252. package/.next/server/chunks/2430.js +193 -0
  253. package/.next/server/chunks/2452.js +93 -0
  254. package/.next/server/chunks/2744.js +1 -0
  255. package/.next/server/chunks/2903.js +1 -0
  256. package/.next/server/chunks/295.js +1 -0
  257. package/.next/server/chunks/3012.js +1 -0
  258. package/.next/server/chunks/3186.js +86 -0
  259. package/.next/server/chunks/3379.js +1 -0
  260. package/.next/server/chunks/3383.js +27 -0
  261. package/.next/server/chunks/3569.js +1 -0
  262. package/.next/server/chunks/3618.js +1 -0
  263. package/.next/server/chunks/3869.js +8 -0
  264. package/.next/server/chunks/3894.js +1 -0
  265. package/.next/server/chunks/426.js +14 -0
  266. package/.next/server/chunks/4267.js +1 -0
  267. package/.next/server/chunks/4315.js +1 -0
  268. package/.next/server/chunks/4367.js +1 -0
  269. package/.next/server/chunks/4372.js +1 -0
  270. package/.next/server/chunks/4538.js +24 -0
  271. package/.next/server/chunks/4548.js +1 -0
  272. package/.next/server/chunks/4563.js +38 -0
  273. package/.next/server/chunks/4674.js +1 -0
  274. package/.next/server/chunks/4741.js +165 -0
  275. package/.next/server/chunks/4980.js +1 -0
  276. package/.next/server/chunks/5029.js +1 -0
  277. package/.next/server/chunks/5318.js +1 -0
  278. package/.next/server/chunks/5582.js +8 -0
  279. package/.next/server/chunks/5974.js +77 -0
  280. package/.next/server/chunks/6052.js +141 -0
  281. package/.next/server/chunks/611.js +1 -0
  282. package/.next/server/chunks/6253.js +104 -0
  283. package/.next/server/chunks/6337.js +1 -0
  284. package/.next/server/chunks/6366.js +80 -0
  285. package/.next/server/chunks/6429.js +29 -0
  286. package/.next/server/chunks/673.js +287 -0
  287. package/.next/server/chunks/6759.js +1 -0
  288. package/.next/server/chunks/6916.js +226 -0
  289. package/.next/server/chunks/703.js +1 -0
  290. package/.next/server/chunks/7233.js +1 -0
  291. package/.next/server/chunks/7265.js +215 -0
  292. package/.next/server/chunks/7307.js +1 -0
  293. package/.next/server/chunks/7561.js +1 -0
  294. package/.next/server/chunks/7710.js +1 -0
  295. package/.next/server/chunks/7744.js +64 -0
  296. package/.next/server/chunks/7790.js +1 -0
  297. package/.next/server/chunks/7799.js +34 -0
  298. package/.next/server/chunks/7872.js +1 -0
  299. package/.next/server/chunks/8106.js +1 -0
  300. package/.next/server/chunks/8294.js +1 -0
  301. package/.next/server/chunks/8333.js +79 -0
  302. package/.next/server/chunks/835.js +1 -0
  303. package/.next/server/chunks/8397.js +41 -0
  304. package/.next/server/chunks/8604.js +115 -0
  305. package/.next/server/chunks/8679.js +1 -0
  306. package/.next/server/chunks/8713.js +148 -0
  307. package/.next/server/chunks/8782.js +153 -0
  308. package/.next/server/chunks/8920.js +62 -0
  309. package/.next/server/chunks/922.js +5 -0
  310. package/.next/server/chunks/9280.js +255 -0
  311. package/.next/server/chunks/9486.js +1 -0
  312. package/.next/server/chunks/9509.js +1 -0
  313. package/.next/server/chunks/9510.js +90 -0
  314. package/.next/server/chunks/974.js +1 -0
  315. package/.next/server/functions-config-manifest.json +26 -0
  316. package/.next/server/instrumentation.js +1 -0
  317. package/.next/server/instrumentation.js.nft.json +1 -0
  318. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  319. package/.next/server/middleware-build-manifest.js +1 -0
  320. package/.next/server/middleware-manifest.json +6 -0
  321. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  322. package/.next/server/middleware.js +163 -0
  323. package/.next/server/middleware.js.nft.json +1 -0
  324. package/.next/server/next-font-manifest.js +1 -0
  325. package/.next/server/next-font-manifest.json +1 -0
  326. package/.next/server/pages/404.html +1 -0
  327. package/.next/server/pages/500.html +1 -0
  328. package/.next/server/pages-manifest.json +4 -0
  329. package/.next/server/prefetch-hints.json +53 -0
  330. package/.next/server/server-reference-manifest.js +1 -0
  331. package/.next/server/server-reference-manifest.json +1 -0
  332. package/.next/server/webpack-runtime.js +1 -0
  333. package/.next/static/LkMtlo9B5W74YX7J-8ccI/_buildManifest.js +1 -0
  334. package/.next/static/LkMtlo9B5W74YX7J-8ccI/_ssgManifest.js +1 -0
  335. package/.next/static/chunks/103.23142a67b02246a8.js +215 -0
  336. package/.next/static/chunks/1032.12b382a9096ab2a4.js +1 -0
  337. package/.next/static/chunks/1063.775c442bdbeef08b.js +1 -0
  338. package/.next/static/chunks/1278-b81177f3a674e4e0.js +1 -0
  339. package/.next/static/chunks/1327.09252bb80616cc3a.js +1 -0
  340. package/.next/static/chunks/1708.d029f8776e4578de.js +1 -0
  341. package/.next/static/chunks/1781.866132cea8e77cd0.js +1 -0
  342. package/.next/static/chunks/1ba63609.b2ae90f43319a29e.js +153 -0
  343. package/.next/static/chunks/2081.47b6e9391094055f.js +1 -0
  344. package/.next/static/chunks/2181.ba21239d3ac39f81.js +1 -0
  345. package/.next/static/chunks/2258.4defa30121ef44a5.js +1 -0
  346. package/.next/static/chunks/2325.23caf22075e51aa5.js +1 -0
  347. package/.next/static/chunks/2356.523277bb8c6bf72a.js +23 -0
  348. package/.next/static/chunks/2418.b5d9e177e10a686e.js +1 -0
  349. package/.next/static/chunks/2480.cf27ca02e5b19761.js +24 -0
  350. package/.next/static/chunks/2539.c5a4f2fd8e421c70.js +41 -0
  351. package/.next/static/chunks/2619.9431a3f48da8eef4.js +1 -0
  352. package/.next/static/chunks/268.72794ee2773c2060.js +80 -0
  353. package/.next/static/chunks/2695.6f49435bae1e6f33.js +90 -0
  354. package/.next/static/chunks/2703.495a65ed14b2f094.js +36 -0
  355. package/.next/static/chunks/2821.934bcf60fbdc28c6.js +1 -0
  356. package/.next/static/chunks/3251.0dce7a0a0ff67235.js +1 -0
  357. package/.next/static/chunks/3308.be8762955e7155d1.js +73 -0
  358. package/.next/static/chunks/3336.a76f9485fe7cb762.js +1 -0
  359. package/.next/static/chunks/370.8e8f3cf8eb0e29dd.js +1 -0
  360. package/.next/static/chunks/3716.72bf4c9d7325debd.js +1 -0
  361. package/.next/static/chunks/3794-d29203733ca4633c.js +52 -0
  362. package/.next/static/chunks/398.ffa02af9062a3950.js +77 -0
  363. package/.next/static/chunks/3995.eca0f5bef1fc3ae5.js +38 -0
  364. package/.next/static/chunks/4004.74b9bcf5478b1663.js +160 -0
  365. package/.next/static/chunks/4202.8440832386f023c7.js +226 -0
  366. package/.next/static/chunks/4238.6f102dcbcf2ae339.js +141 -0
  367. package/.next/static/chunks/4405.7a19458960a1058e.js +287 -0
  368. package/.next/static/chunks/4424.fd0c93a807a333e1.js +1 -0
  369. package/.next/static/chunks/4866.d1060b4faf2ae1e2.js +1 -0
  370. package/.next/static/chunks/4970.8a63b4953b0e4946.js +1 -0
  371. package/.next/static/chunks/4bd1b696-8a4ab4fdf0ae305a.js +1 -0
  372. package/.next/static/chunks/5020.9ac8d0dc8390bb6e.js +1 -0
  373. package/.next/static/chunks/5137.f163e94c74a94d01.js +1 -0
  374. package/.next/static/chunks/5242.7b643c6b3394cac1.js +1 -0
  375. package/.next/static/chunks/5361.afc00ab2626bacbf.js +1 -0
  376. package/.next/static/chunks/5521.cfdf2cfc6db31407.js +1 -0
  377. package/.next/static/chunks/5526.ff46471041fdcb79.js +86 -0
  378. package/.next/static/chunks/5681.dd0e66b0de16e54b.js +27 -0
  379. package/.next/static/chunks/5772-ddd18c0d4b7715e5.js +3 -0
  380. package/.next/static/chunks/6121.eb9023b1cbc78ee2.js +1 -0
  381. package/.next/static/chunks/6161.4836cd7d031026bf.js +1 -0
  382. package/.next/static/chunks/6195.1153369f5f8b13a2.js +24 -0
  383. package/.next/static/chunks/6294.24f510c0c3e3714c.js +1 -0
  384. package/.next/static/chunks/6654.16f727522ec47f5a.js +1 -0
  385. package/.next/static/chunks/6794.f746d8fbbf248ecf.js +93 -0
  386. package/.next/static/chunks/7256.e07cf52d87d40252.js +1 -0
  387. package/.next/static/chunks/7268.236544be8e242c16.js +1 -0
  388. package/.next/static/chunks/7331.2add3c4e125a2dba.js +104 -0
  389. package/.next/static/chunks/7543.89f7b805ed0f2901.js +1 -0
  390. package/.next/static/chunks/8200.a36b9f8c983c6b9e.js +5 -0
  391. package/.next/static/chunks/869.7152372b662e31af.js +1 -0
  392. package/.next/static/chunks/8863.fa0320ea586efb3b.js +1 -0
  393. package/.next/static/chunks/8885.cf60cac98bf8b70c.js +79 -0
  394. package/.next/static/chunks/8901.e117d206a917bda0.js +1 -0
  395. package/.next/static/chunks/90542734.ae439f2382f58c51.js +1 -0
  396. package/.next/static/chunks/918.6a9bbe564e4a2d0f.js +115 -0
  397. package/.next/static/chunks/934.9006461bd0548660.js +1 -0
  398. package/.next/static/chunks/9445-fde6feabcb39142c.js +7 -0
  399. package/.next/static/chunks/9522.c7c6e9c330f9ba6b.js +1 -0
  400. package/.next/static/chunks/9614.3221013d7f0af27f.js +64 -0
  401. package/.next/static/chunks/9698.4d09a99b9d99f3e5.js +148 -0
  402. package/.next/static/chunks/9705.40a82b97f214e28b.js +1 -0
  403. package/.next/static/chunks/973.88e865b52eff479a.js +8 -0
  404. package/.next/static/chunks/9764.2669775c6e107a01.js +62 -0
  405. package/.next/static/chunks/9793.4567af813117ad25.js +1 -0
  406. package/.next/static/chunks/993e5495.8797001fcfcf2889.js +62 -0
  407. package/.next/static/chunks/9974.9a0f79beca65e8c4.js +34 -0
  408. package/.next/static/chunks/app/_global-error/page-24ad8f9c794ebb73.js +1 -0
  409. package/.next/static/chunks/app/_not-found/page-d1e0360401438077.js +1 -0
  410. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-24ad8f9c794ebb73.js +1 -0
  411. package/.next/static/chunks/app/api/agent/[id]/events/route-24ad8f9c794ebb73.js +1 -0
  412. package/.next/static/chunks/app/api/agent/[id]/lease/route-24ad8f9c794ebb73.js +1 -0
  413. package/.next/static/chunks/app/api/agent/[id]/route-24ad8f9c794ebb73.js +1 -0
  414. package/.next/static/chunks/app/api/agent/new/route-24ad8f9c794ebb73.js +1 -0
  415. package/.next/static/chunks/app/api/agent/running/route-24ad8f9c794ebb73.js +1 -0
  416. package/.next/static/chunks/app/api/app-update/route-24ad8f9c794ebb73.js +1 -0
  417. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-24ad8f9c794ebb73.js +1 -0
  418. package/.next/static/chunks/app/api/auth/login/[provider]/route-24ad8f9c794ebb73.js +1 -0
  419. package/.next/static/chunks/app/api/auth/logout/[provider]/route-24ad8f9c794ebb73.js +1 -0
  420. package/.next/static/chunks/app/api/auth/providers/route-24ad8f9c794ebb73.js +1 -0
  421. package/.next/static/chunks/app/api/cwd/browse/route-24ad8f9c794ebb73.js +1 -0
  422. package/.next/static/chunks/app/api/cwd/validate/route-24ad8f9c794ebb73.js +1 -0
  423. package/.next/static/chunks/app/api/default-cwd/route-24ad8f9c794ebb73.js +1 -0
  424. package/.next/static/chunks/app/api/file-index/route-24ad8f9c794ebb73.js +1 -0
  425. package/.next/static/chunks/app/api/files/[...path]/route-24ad8f9c794ebb73.js +1 -0
  426. package/.next/static/chunks/app/api/git/diff/route-24ad8f9c794ebb73.js +1 -0
  427. package/.next/static/chunks/app/api/git/status/route-24ad8f9c794ebb73.js +1 -0
  428. package/.next/static/chunks/app/api/home/route-24ad8f9c794ebb73.js +1 -0
  429. package/.next/static/chunks/app/api/image-generation/route-24ad8f9c794ebb73.js +1 -0
  430. package/.next/static/chunks/app/api/image-generation/settings/connections/route-24ad8f9c794ebb73.js +1 -0
  431. package/.next/static/chunks/app/api/image-generation/settings/route-24ad8f9c794ebb73.js +1 -0
  432. package/.next/static/chunks/app/api/models/route-24ad8f9c794ebb73.js +1 -0
  433. package/.next/static/chunks/app/api/models-config/catalog/route-24ad8f9c794ebb73.js +1 -0
  434. package/.next/static/chunks/app/api/models-config/discover/route-24ad8f9c794ebb73.js +1 -0
  435. package/.next/static/chunks/app/api/models-config/picker/route-24ad8f9c794ebb73.js +1 -0
  436. package/.next/static/chunks/app/api/models-config/route-24ad8f9c794ebb73.js +1 -0
  437. package/.next/static/chunks/app/api/models-config/runtime/route-24ad8f9c794ebb73.js +1 -0
  438. package/.next/static/chunks/app/api/models-config/test/route-24ad8f9c794ebb73.js +1 -0
  439. package/.next/static/chunks/app/api/plugins/check/route-24ad8f9c794ebb73.js +1 -0
  440. package/.next/static/chunks/app/api/plugins/route-24ad8f9c794ebb73.js +1 -0
  441. package/.next/static/chunks/app/api/project-trust/route-24ad8f9c794ebb73.js +1 -0
  442. package/.next/static/chunks/app/api/push/config/route-24ad8f9c794ebb73.js +1 -0
  443. package/.next/static/chunks/app/api/push/subscribe/route-24ad8f9c794ebb73.js +1 -0
  444. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-24ad8f9c794ebb73.js +1 -0
  445. package/.next/static/chunks/app/api/sessions/[id]/context/route-24ad8f9c794ebb73.js +1 -0
  446. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-24ad8f9c794ebb73.js +1 -0
  447. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route-24ad8f9c794ebb73.js +1 -0
  448. package/.next/static/chunks/app/api/sessions/[id]/export/route-24ad8f9c794ebb73.js +1 -0
  449. package/.next/static/chunks/app/api/sessions/[id]/outline/route-24ad8f9c794ebb73.js +1 -0
  450. package/.next/static/chunks/app/api/sessions/[id]/route-24ad8f9c794ebb73.js +1 -0
  451. package/.next/static/chunks/app/api/sessions/[id]/state/route-24ad8f9c794ebb73.js +1 -0
  452. package/.next/static/chunks/app/api/sessions/route-24ad8f9c794ebb73.js +1 -0
  453. package/.next/static/chunks/app/api/sessions/search/route-24ad8f9c794ebb73.js +1 -0
  454. package/.next/static/chunks/app/api/skills/check/route-24ad8f9c794ebb73.js +1 -0
  455. package/.next/static/chunks/app/api/skills/install/route-24ad8f9c794ebb73.js +1 -0
  456. package/.next/static/chunks/app/api/skills/route-24ad8f9c794ebb73.js +1 -0
  457. package/.next/static/chunks/app/api/skills/search/route-24ad8f9c794ebb73.js +1 -0
  458. package/.next/static/chunks/app/api/skills/update/route-24ad8f9c794ebb73.js +1 -0
  459. package/.next/static/chunks/app/api/subagents/[id]/route-24ad8f9c794ebb73.js +1 -0
  460. package/.next/static/chunks/app/api/subagents/profiles/route-24ad8f9c794ebb73.js +1 -0
  461. package/.next/static/chunks/app/api/subagents/settings/route-24ad8f9c794ebb73.js +1 -0
  462. package/.next/static/chunks/app/api/terminal/[id]/events/route-24ad8f9c794ebb73.js +1 -0
  463. package/.next/static/chunks/app/api/terminal/[id]/route-24ad8f9c794ebb73.js +1 -0
  464. package/.next/static/chunks/app/api/terminal/route-24ad8f9c794ebb73.js +1 -0
  465. package/.next/static/chunks/app/api/tools/settings/route-24ad8f9c794ebb73.js +1 -0
  466. package/.next/static/chunks/app/api/web-auth/route-24ad8f9c794ebb73.js +1 -0
  467. package/.next/static/chunks/app/api/worktrees/route-24ad8f9c794ebb73.js +1 -0
  468. package/.next/static/chunks/app/layout-f900e4d3794672ad.js +1 -0
  469. package/.next/static/chunks/app/login/page-4d08a41789f24789.js +1 -0
  470. package/.next/static/chunks/app/manifest.webmanifest/route-24ad8f9c794ebb73.js +1 -0
  471. package/.next/static/chunks/app/page-3c64134d63e2eff9.js +232 -0
  472. package/.next/static/chunks/bf2ff291.3a109dffc1fe84af.js +122 -0
  473. package/.next/static/chunks/d3ac728e-7964f816a1ca64e5.js +1 -0
  474. package/.next/static/chunks/da12927c.476aa688a637649c.js +82 -0
  475. package/.next/static/chunks/db9d41be.e72ce090a86a3691.js +1 -0
  476. package/.next/static/chunks/e868780c-1584512c612787d7.js +18 -0
  477. package/.next/static/chunks/framework-b33a8f5d57cd8d87.js +1 -0
  478. package/.next/static/chunks/main-app-5f091d229b1e5a0e.js +1 -0
  479. package/.next/static/chunks/main-dac5ab3797407fcb.js +5 -0
  480. package/.next/static/chunks/next/dist/client/components/builtin/app-error-24ad8f9c794ebb73.js +1 -0
  481. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-24ad8f9c794ebb73.js +1 -0
  482. package/.next/static/chunks/next/dist/client/components/builtin/global-error-ae6c57598b75d8bb.js +1 -0
  483. package/.next/static/chunks/next/dist/client/components/builtin/not-found-24ad8f9c794ebb73.js +1 -0
  484. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-24ad8f9c794ebb73.js +1 -0
  485. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  486. package/.next/static/chunks/webpack-25464d90fe89e601.js +1 -0
  487. package/.next/static/css/2ac0338d70747eca.css +1 -0
  488. package/.next/static/css/2f46e0db0d4a3aed.css +1 -0
  489. package/.next/static/css/444123c292add02f.css +1 -0
  490. package/.next/static/css/58d019c61385df31.css +1 -0
  491. package/.next/static/css/89aae141d5b3edde.css +1 -0
  492. package/.next/static/css/fddca953485158e4.css +1 -0
  493. package/.next/static/media/01bdb1c2bb2f530a-s.woff2 +0 -0
  494. package/.next/static/media/060fd7a2ba6f57dc-s.woff2 +0 -0
  495. package/.next/static/media/06d755a5cd3e2b96-s.woff2 +0 -0
  496. package/.next/static/media/09341845bc7215c3-s.woff2 +0 -0
  497. package/.next/static/media/09d8b46d011a8a55-s.woff2 +0 -0
  498. package/.next/static/media/0ac3ab6b6a54cd96-s.woff2 +0 -0
  499. package/.next/static/media/0cb7a0edc360425e-s.woff2 +0 -0
  500. package/.next/static/media/0de82041d2acf4c3-s.woff2 +0 -0
  501. package/.next/static/media/1249fbbadbb69451-s.woff2 +0 -0
  502. package/.next/static/media/15605e25b523335c-s.woff2 +0 -0
  503. package/.next/static/media/182682366c265526-s.woff2 +0 -0
  504. package/.next/static/media/1a3dce5cfb5f7760-s.woff2 +0 -0
  505. package/.next/static/media/1cdd02902f937a18-s.woff2 +0 -0
  506. package/.next/static/media/246116fa49278f72-s.woff2 +0 -0
  507. package/.next/static/media/2ad4a039dd2c0f35-s.woff2 +0 -0
  508. package/.next/static/media/2cd94acf7f6a8cd1-s.woff2 +0 -0
  509. package/.next/static/media/30af2a5bc088caeb-s.woff2 +0 -0
  510. package/.next/static/media/3117748ae3be552d-s.woff2 +0 -0
  511. package/.next/static/media/373befd5a68230ff-s.woff2 +0 -0
  512. package/.next/static/media/37ae20ae1d329cc2-s.woff2 +0 -0
  513. package/.next/static/media/3832bef2caf4f297-s.woff2 +0 -0
  514. package/.next/static/media/3b6ebd4dd223d8c1-s.woff2 +0 -0
  515. package/.next/static/media/3da25081fc21e3b2-s.woff2 +0 -0
  516. package/.next/static/media/3eb545844a1630b6-s.woff2 +0 -0
  517. package/.next/static/media/41870aeb5505be99-s.woff2 +0 -0
  518. package/.next/static/media/45c8f5377f81d417-s.woff2 +0 -0
  519. package/.next/static/media/48d86e2f8821c61e-s.woff2 +0 -0
  520. package/.next/static/media/4957022da3161c6e-s.woff2 +0 -0
  521. package/.next/static/media/4be71ddc6c749643-s.woff2 +0 -0
  522. package/.next/static/media/4c4b3b30b6bcb2be-s.woff2 +0 -0
  523. package/.next/static/media/4dc4381bbf526d04-s.woff2 +0 -0
  524. package/.next/static/media/4eb0814ea9e22f45-s.woff2 +0 -0
  525. package/.next/static/media/4f86cf50532e0e9b-s.woff2 +0 -0
  526. package/.next/static/media/5022b11bb4a81e48-s.woff2 +0 -0
  527. package/.next/static/media/5080c55e2dccd63d-s.woff2 +0 -0
  528. package/.next/static/media/5348b1e69a651725-s.woff2 +0 -0
  529. package/.next/static/media/54c50561be23e605-s.woff2 +0 -0
  530. package/.next/static/media/567d6f765096ee76-s.woff2 +0 -0
  531. package/.next/static/media/58045d1f8695a418-s.woff2 +0 -0
  532. package/.next/static/media/5a274ddc03d9a5ab-s.woff2 +0 -0
  533. package/.next/static/media/5feee92221bb8605-s.woff2 +0 -0
  534. package/.next/static/media/6067d3f78ecc4535-s.woff2 +0 -0
  535. package/.next/static/media/61a11ca45429493a-s.woff2 +0 -0
  536. package/.next/static/media/63d030730737efae-s.woff2 +0 -0
  537. package/.next/static/media/641a7b8a5800ee0e-s.woff2 +0 -0
  538. package/.next/static/media/6bd056ddce336924-s.woff2 +0 -0
  539. package/.next/static/media/6dc0bae4a5666821-s.woff2 +0 -0
  540. package/.next/static/media/7513cc52807669ca-s.woff2 +0 -0
  541. package/.next/static/media/75ae81fea4aec8c5-s.woff2 +0 -0
  542. package/.next/static/media/77f6534b6a3eb37a-s.woff2 +0 -0
  543. package/.next/static/media/782d4006a26041e7-s.woff2 +0 -0
  544. package/.next/static/media/7d509f4f988023eb-s.woff2 +0 -0
  545. package/.next/static/media/7d58f39a50828c68-s.woff2 +0 -0
  546. package/.next/static/media/7db71cc013812f1c-s.woff2 +0 -0
  547. package/.next/static/media/7deddc85b7ffd1dc-s.p.woff2 +0 -0
  548. package/.next/static/media/7eb3f914ae6dd7a0-s.woff2 +0 -0
  549. package/.next/static/media/8051eb8307aa13c8-s.woff2 +0 -0
  550. package/.next/static/media/829dca987e1e010e-s.woff2 +0 -0
  551. package/.next/static/media/842f675c7a332a48-s.woff2 +0 -0
  552. package/.next/static/media/866e2e7b0cbc2cb4-s.woff2 +0 -0
  553. package/.next/static/media/86b38dc7f713ddda-s.woff2 +0 -0
  554. package/.next/static/media/8a3a66ae6bb27151-s.woff2 +0 -0
  555. package/.next/static/media/8b56b70f6d577d9f-s.woff2 +0 -0
  556. package/.next/static/media/8d93dbb77672da11-s.woff2 +0 -0
  557. package/.next/static/media/8f5c2d0a25b8f50c-s.woff2 +0 -0
  558. package/.next/static/media/966e6d14b6c229fc-s.woff2 +0 -0
  559. package/.next/static/media/9877fefe733dd250-s.woff2 +0 -0
  560. package/.next/static/media/9c57f4420502d43a-s.woff2 +0 -0
  561. package/.next/static/media/9cedd2ad7b0bcf3d-s.woff2 +0 -0
  562. package/.next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  563. package/.next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  564. package/.next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  565. package/.next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  566. package/.next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  567. package/.next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  568. package/.next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  569. package/.next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  570. package/.next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  571. package/.next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  572. package/.next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  573. package/.next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  574. package/.next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  575. package/.next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  576. package/.next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  577. package/.next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  578. package/.next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  579. package/.next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
  580. package/.next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  581. package/.next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  582. package/.next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  583. package/.next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  584. package/.next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  585. package/.next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
  586. package/.next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  587. package/.next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  588. package/.next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  589. package/.next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  590. package/.next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  591. package/.next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  592. package/.next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
  593. package/.next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
  594. package/.next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  595. package/.next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  596. package/.next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  597. package/.next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  598. package/.next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  599. package/.next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  600. package/.next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  601. package/.next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  602. package/.next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  603. package/.next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  604. package/.next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  605. package/.next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
  606. package/.next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  607. package/.next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  608. package/.next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  609. package/.next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  610. package/.next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
  611. package/.next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  612. package/.next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  613. package/.next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  614. package/.next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  615. package/.next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  616. package/.next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  617. package/.next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  618. package/.next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  619. package/.next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  620. package/.next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  621. package/.next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  622. package/.next/static/media/a00fb5ef1ca68e5d-s.woff2 +0 -0
  623. package/.next/static/media/a171b1d72388367c-s.woff2 +0 -0
  624. package/.next/static/media/a310fb84e6868735-s.woff2 +0 -0
  625. package/.next/static/media/a53504b22c396db6-s.woff2 +0 -0
  626. package/.next/static/media/aabb87babcdda375-s.woff2 +0 -0
  627. package/.next/static/media/afe75c8050c8fd4e-s.woff2 +0 -0
  628. package/.next/static/media/b201193f76404e13-s.woff2 +0 -0
  629. package/.next/static/media/b20daecae68a588f-s.woff2 +0 -0
  630. package/.next/static/media/b2574bc564dca98d-s.woff2 +0 -0
  631. package/.next/static/media/b6a1339c290590d0-s.woff2 +0 -0
  632. package/.next/static/media/b6fe4b2295863fe4-s.woff2 +0 -0
  633. package/.next/static/media/bb8ff9c700288292-s.woff2 +0 -0
  634. package/.next/static/media/bc1ccfae4ae17995-s.woff2 +0 -0
  635. package/.next/static/media/be15c189f996aeb2-s.woff2 +0 -0
  636. package/.next/static/media/c0d1f6928a1dbc31-s.woff2 +0 -0
  637. package/.next/static/media/c36d8bb68a53eb60-s.woff2 +0 -0
  638. package/.next/static/media/c5db947ee2561e06-s.woff2 +0 -0
  639. package/.next/static/media/c77ac7f613b44045-s.woff2 +0 -0
  640. package/.next/static/media/ca73d0c74010e612-s.woff2 +0 -0
  641. package/.next/static/media/cfbad6ceeeca5c58-s.woff2 +0 -0
  642. package/.next/static/media/d24aebb82f01e48d-s.woff2 +0 -0
  643. package/.next/static/media/d2c6107607eb7d44-s.woff2 +0 -0
  644. package/.next/static/media/d2c7d5e8db7ce20a-s.woff2 +0 -0
  645. package/.next/static/media/d51f7558abc55aa6-s.woff2 +0 -0
  646. package/.next/static/media/da718921282f76d0-s.woff2 +0 -0
  647. package/.next/static/media/dae37106d788c7c9-s.woff2 +0 -0
  648. package/.next/static/media/e0d4cd45847004a4-s.woff2 +0 -0
  649. package/.next/static/media/e100c7a7874aebd9-s.woff2 +0 -0
  650. package/.next/static/media/e26dff18031f4a7e-s.woff2 +0 -0
  651. package/.next/static/media/e5b759c1d5c42d99-s.woff2 +0 -0
  652. package/.next/static/media/ea21a07081db26d0-s.woff2 +0 -0
  653. package/.next/static/media/eaee7682c49bd1c2-s.woff2 +0 -0
  654. package/.next/static/media/ec14413c594b3356-s.p.woff2 +0 -0
  655. package/.next/static/media/ec408158b9e08aea-s.woff2 +0 -0
  656. package/.next/static/media/ee5d9aad76ea4c0a-s.woff2 +0 -0
  657. package/.next/static/media/efdbc7cff3271ee9-s.woff2 +0 -0
  658. package/.next/static/media/f128be4e72405705-s.woff2 +0 -0
  659. package/.next/static/media/fb6cfff6119f26e8-s.woff2 +0 -0
  660. package/.next/static/media/fd516adbc3328c82-s.woff2 +0 -0
  661. package/.next/trace +7 -0
  662. package/.next/trace-build +1 -0
  663. package/.next/types/app/api/agent/[id]/bash-output/route.ts +353 -0
  664. package/.next/types/app/api/agent/[id]/events/route.ts +353 -0
  665. package/.next/types/app/api/agent/[id]/lease/route.ts +353 -0
  666. package/.next/types/app/api/agent/[id]/route.ts +353 -0
  667. package/.next/types/app/api/agent/new/route.ts +353 -0
  668. package/.next/types/app/api/agent/running/route.ts +353 -0
  669. package/.next/types/app/api/app-update/route.ts +353 -0
  670. package/.next/types/app/api/auth/api-key/[provider]/route.ts +353 -0
  671. package/.next/types/app/api/auth/login/[provider]/route.ts +353 -0
  672. package/.next/types/app/api/auth/logout/[provider]/route.ts +353 -0
  673. package/.next/types/app/api/auth/providers/route.ts +353 -0
  674. package/.next/types/app/api/cwd/browse/route.ts +353 -0
  675. package/.next/types/app/api/cwd/validate/route.ts +353 -0
  676. package/.next/types/app/api/default-cwd/route.ts +353 -0
  677. package/.next/types/app/api/file-index/route.ts +353 -0
  678. package/.next/types/app/api/files/[...path]/route.ts +353 -0
  679. package/.next/types/app/api/git/diff/route.ts +353 -0
  680. package/.next/types/app/api/git/status/route.ts +353 -0
  681. package/.next/types/app/api/home/route.ts +353 -0
  682. package/.next/types/app/api/image-generation/route.ts +353 -0
  683. package/.next/types/app/api/image-generation/settings/connections/route.ts +353 -0
  684. package/.next/types/app/api/image-generation/settings/route.ts +353 -0
  685. package/.next/types/app/api/models/route.ts +353 -0
  686. package/.next/types/app/api/models-config/catalog/route.ts +353 -0
  687. package/.next/types/app/api/models-config/discover/route.ts +353 -0
  688. package/.next/types/app/api/models-config/picker/route.ts +353 -0
  689. package/.next/types/app/api/models-config/route.ts +353 -0
  690. package/.next/types/app/api/models-config/runtime/route.ts +353 -0
  691. package/.next/types/app/api/models-config/test/route.ts +353 -0
  692. package/.next/types/app/api/plugins/check/route.ts +353 -0
  693. package/.next/types/app/api/plugins/route.ts +353 -0
  694. package/.next/types/app/api/project-trust/route.ts +353 -0
  695. package/.next/types/app/api/push/config/route.ts +353 -0
  696. package/.next/types/app/api/push/subscribe/route.ts +353 -0
  697. package/.next/types/app/api/sessions/[id]/auto-name/route.ts +353 -0
  698. package/.next/types/app/api/sessions/[id]/context/route.ts +353 -0
  699. package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +353 -0
  700. package/.next/types/app/api/sessions/[id]/entries/[entryId]/tool-result-image/route.ts +353 -0
  701. package/.next/types/app/api/sessions/[id]/export/route.ts +353 -0
  702. package/.next/types/app/api/sessions/[id]/outline/route.ts +353 -0
  703. package/.next/types/app/api/sessions/[id]/route.ts +353 -0
  704. package/.next/types/app/api/sessions/[id]/state/route.ts +353 -0
  705. package/.next/types/app/api/sessions/route.ts +353 -0
  706. package/.next/types/app/api/sessions/search/route.ts +353 -0
  707. package/.next/types/app/api/skills/check/route.ts +353 -0
  708. package/.next/types/app/api/skills/install/route.ts +353 -0
  709. package/.next/types/app/api/skills/route.ts +353 -0
  710. package/.next/types/app/api/skills/search/route.ts +353 -0
  711. package/.next/types/app/api/skills/update/route.ts +353 -0
  712. package/.next/types/app/api/subagents/[id]/route.ts +353 -0
  713. package/.next/types/app/api/subagents/profiles/route.ts +353 -0
  714. package/.next/types/app/api/subagents/settings/route.ts +353 -0
  715. package/.next/types/app/api/terminal/[id]/events/route.ts +353 -0
  716. package/.next/types/app/api/terminal/[id]/route.ts +353 -0
  717. package/.next/types/app/api/terminal/route.ts +353 -0
  718. package/.next/types/app/api/tools/settings/route.ts +353 -0
  719. package/.next/types/app/api/web-auth/route.ts +353 -0
  720. package/.next/types/app/api/worktrees/route.ts +353 -0
  721. package/.next/types/app/layout.ts +89 -0
  722. package/.next/types/app/login/page.ts +89 -0
  723. package/.next/types/app/page.ts +89 -0
  724. package/.next/types/cache-life.d.ts +146 -0
  725. package/.next/types/package.json +1 -0
  726. package/.next/types/root-params.d.ts +3 -0
  727. package/.next/types/routes.d.ts +131 -0
  728. package/.next/types/validator.ts +601 -0
  729. package/LICENSE +22 -0
  730. package/README.md +64 -0
  731. package/bin/node-version.js +24 -0
  732. package/bin/pi-web-options.js +87 -0
  733. package/bin/pi-web.js +132 -0
  734. package/bin/prepare-terminal.js +14 -0
  735. package/bin/process-lifecycle.js +81 -0
  736. package/next.config.ts +73 -0
  737. package/package.json +95 -0
  738. package/public/icons/apple-touch-icon.png +0 -0
  739. package/public/icons/catppuccin/LICENSE +22 -0
  740. package/public/icons/catppuccin/README.md +9 -0
  741. package/public/icons/catppuccin/latte/_file.svg +3 -0
  742. package/public/icons/catppuccin/latte/_folder.svg +3 -0
  743. package/public/icons/catppuccin/latte/_folder_open.svg +3 -0
  744. package/public/icons/catppuccin/latte/bash.svg +7 -0
  745. package/public/icons/catppuccin/latte/bun-lock.svg +8 -0
  746. package/public/icons/catppuccin/latte/config.svg +3 -0
  747. package/public/icons/catppuccin/latte/css.svg +6 -0
  748. package/public/icons/catppuccin/latte/database.svg +3 -0
  749. package/public/icons/catppuccin/latte/docker.svg +3 -0
  750. package/public/icons/catppuccin/latte/env.svg +3 -0
  751. package/public/icons/catppuccin/latte/eslint.svg +6 -0
  752. package/public/icons/catppuccin/latte/git.svg +6 -0
  753. package/public/icons/catppuccin/latte/go.svg +3 -0
  754. package/public/icons/catppuccin/latte/graphql.svg +3 -0
  755. package/public/icons/catppuccin/latte/html.svg +6 -0
  756. package/public/icons/catppuccin/latte/javascript-react.svg +8 -0
  757. package/public/icons/catppuccin/latte/javascript.svg +6 -0
  758. package/public/icons/catppuccin/latte/json.svg +3 -0
  759. package/public/icons/catppuccin/latte/lock.svg +3 -0
  760. package/public/icons/catppuccin/latte/markdown.svg +3 -0
  761. package/public/icons/catppuccin/latte/ms-word.svg +6 -0
  762. package/public/icons/catppuccin/latte/next.svg +6 -0
  763. package/public/icons/catppuccin/latte/npm-lock.svg +7 -0
  764. package/public/icons/catppuccin/latte/pdf.svg +3 -0
  765. package/public/icons/catppuccin/latte/python.svg +8 -0
  766. package/public/icons/catppuccin/latte/rust.svg +6 -0
  767. package/public/icons/catppuccin/latte/sass.svg +3 -0
  768. package/public/icons/catppuccin/latte/terraform.svg +3 -0
  769. package/public/icons/catppuccin/latte/toml.svg +3 -0
  770. package/public/icons/catppuccin/latte/typescript-react.svg +8 -0
  771. package/public/icons/catppuccin/latte/typescript.svg +6 -0
  772. package/public/icons/catppuccin/latte/yaml.svg +3 -0
  773. package/public/icons/icon-192.png +0 -0
  774. package/public/icons/icon-512.png +0 -0
  775. package/public/offline.html +83 -0
  776. package/public/provider-icons.svg +54 -0
  777. package/public/sw.js +145 -0
  778. package/public/sw.test.mjs +141 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=2243,exports.ids=[2243],exports.modules={9915:(a,b,c)=>{c.d(b,{Q:()=>d});let d={id:"en",label:"English",messages:{"common.ok":"OK","common.language":"Language","common.models":"Models","common.skills":"Skills","common.agents":"Sub-agents","common.plugins":"Plugins","common.settings":"Settings","settings.title":"Settings","settings.general":"General","settings.appearance":"Appearance","settings.chatContentWidth":"Chat content width","settings.chatContentFontSize":"Content font size","settings.resetChatContentWidth":"Reset chat content width","settings.resetChatContentFontSize":"Reset content font size","settings.themeLight":"Light","settings.themeDark":"Dark","settings.themeSystem":"System","settings.thinkingExpandedDefault":"Expand thinking blocks by default","settings.autoSessionTitle":"Automatically name new sessions","settings.chat":"Chat","settings.shiftEnterToSend":"Send with Shift+Enter","settings.quoteSelection":"Show actions for selected text","settings.browserNotifications":"Browser notifications","settings.browserNotificationsEnable":"Enable","settings.browserNotificationsOn":"On","settings.browserNotificationsBlocked":"Blocked in browser","settings.pushPermission":"Background push","settings.pushPermissionDescription":"Lock-screen alerts for the iOS home-screen app. Re-register if they stop arriving.","settings.pushRegister":"Register push","settings.pushRegisterLoading":"Registering…","settings.pushRegistered":"Push registered — background notifications are ready.","settings.pushRegisterFailed":"Registration failed:","auth.prompt":"Sign in to continue","auth.password":"Password","auth.logIn":"Log in","auth.loggingIn":"Logging in...","auth.invalidPassword":"Incorrect password","auth.loginFailed":"Could not log in. Try again.","auth.logOut":"Log out","auth.loggingOut":"Logging out...","auth.logoutFailed":"Could not log out. Try again.","settings.typography":"Monospace & Geometric Alignment","settings.typographyDescription":"Code blocks, terminals, and ASCII diagrams prioritize Sarasa Term SC / Nerd and Maple Mono. Installing them locally provides exact 2:1 geometric alignment between CJK and Latin characters.","settings.fontMonoDownload":"Get Sarasa Term SC","settings.shellTool":"Shell tool","settings.shellToolDescription":"Choose which shell the model uses for commands. Direct ! and !! commands still use Bash.","settings.usePowerShell":"Use PowerShell instead of Bash","settings.projectRequired":"Open a project to configure this section","settings.images":"Images","settings.imagesDescription":"Adds an image button and the generate_image tool. Built-in connections need a signed-in account.","settings.imagesEnabled":"Enable image generation","settings.imagesBuiltin":"Built-in","settings.imagesCustom":"Custom","settings.imagesLabel":"Name","settings.imagesProvider":"Provider","settings.imagesModel":"Model","settings.imagesNoProviders":"Add a provider in Models first.","settings.imagesOtherModel":"Other model","settings.imagesSignedOut":"Not signed in","settings.imagesNotConfigured":"Provider has no key","skills.scope.global":"global","skills.scope.project":"project","skills.scope.path":"path","agents.close":"Close","agents.builtInTitle":"Enable Pi Web built-in sub-agents","agents.builtInDescription":"Provides Pi Web's integrated Agent tools and disables a conflicting pi-subagents extension.","agents.maxConcurrent":"Concurrent sub-agents","agents.maxConcurrentDescription":"Maximum prompts running at once per parent session.","agents.reloadRequired":"Reload the current session to apply this change.","agents.reloadSession":"Reload session","agents.reloading":"Reloading...","agents.loading":"Loading sub-agents...","agents.new":"New sub-agent","agents.empty":"Select or create a sub-agent profile","agents.saveScope":"Save to","agents.name":"Sub-agent ID","agents.displayName":"Display name","agents.description":"Description","agents.prompt":"System instructions","agents.tools":"Tools","agents.resources":"Resources","agents.loadSkills":"Load skills","agents.loadExtensions":"Load extensions","agents.model":"Model override","agents.modelsLoading":"Loading models...","agents.modelUnavailable":"{model} (unavailable)","agents.thinking":"Thinking","agents.maxTurns":"Max turns","agents.inherit":"Parent default","agents.enable":"Enable sub-agent","agents.disable":"Disable sub-agent","agents.builtinPath":"Built-in profile","agents.inheritContext":"Inherit parent context","agents.background":"Run in background by default","agents.duplicate":"Duplicate","agents.copyName":"{name} copy","agents.delete":"Delete","agents.deleteConfirm":"Delete {name}?","agents.save":"Save","agents.saving":"Saving...","agents.scope.builtin":"built-in","agents.scope.global":"global","agents.scope.workspace":"workspace","agents.scope.project":"project","agents.overridden":"Overridden","subagent.open":"Open sub-agent session","subagent.notificationSingle":"Sub-agent result ready","subagent.notificationMany":"{count} sub-agent results ready","agentSwitcher.title":"Agents","agentSwitcher.main":"Main agent","agentSwitcher.backToMain":"Back to main agent","agentSwitcher.subagent":"Sub-agent","agentSwitcher.current":"Current","agentSwitcher.count":"{count} sub-agents","agentSwitcher.runningCount":"{count} running","agentSwitcher.search":"Search agents","agentSwitcher.noMatches":"No matching agents","agentSwitcher.status.starting":"Starting","agentSwitcher.status.running":"Running","agentSwitcher.status.queued":"Queued","agentSwitcher.status.completed":"Completed","agentSwitcher.status.failed":"Failed","agentSwitcher.status.aborted":"Aborted","agentSwitcher.status.interrupted":"Interrupted","appUpdate.releaseNotes":"Pi Web v{version} is available. View release notes","sidebar.hide":"Hide sidebar","sidebar.show":"Show sidebar","history.full":"Full history","history.unsaved":"Full history is available after the session is saved","history.menu":"History and export","history.exportMarkdown":"Export Q&A","history.exportMarkdownTitle":"Download the current conversation as Markdown, without tools or thinking","history.exportEmpty":"This conversation has no Q&A to export","history.exportFailed":"Could not export Markdown","system.prompt":"System prompt","system.empty":"System prompt is empty (tools are disabled)","system.load":"System prompt has not loaded yet","system.loading":"Loading system prompt…","tools.title":"Tool definitions","tools.details":"Tool definition details","tools.load":"Tool definitions have not loaded yet","tools.loading":"Loading tool definitions…","tools.noTools":"No active tools","tools.description":"Description","tools.parameters":"Parameters","tools.parameterCount":"{count} parameters","tools.noParameters":"No parameters","tools.required":"Required","tools.optional":"Optional","tools.allowedValues":"Allowed","tools.defaultValue":"Default","tools.guidelines":"Prompt guidelines","session.info":"Session info","session.name":"Name","session.file":"Session File","session.id":"ID","session.user":"User","session.assistant":"Assistant","session.toolCalls":"Tool Calls","session.total":"Total","session.input":"Input","session.output":"Output","session.cacheRead":"Cache Read","session.context":"Context","session.activeContext":"Active Context","session.cumulativeTokens":"Session Cumulative Traffic","session.contextRemaining":"Remaining","session.contextWindow":"Window Limit","session.contextUsed":"Used","session.cacheHitRate":"Avg cache hit rate","session.copy":"Copy {value}","session.copied":"Copied","session.title":"Session info","session.load":"Send a message or run /session to load session info","session.infoSection":"Session Info","session.messages":"Messages","session.copyFile":"Copy file path","session.copyId":"Copy session ID","session.copyProjectDir":"Copy project directory","session.copyGitBranch":"Copy git branch","session.copyGitWorktree":"Copy worktree path","workspace.opening":"Opening workspace...","workspace.unable":"Unable to open workspace","files.hidePanel":"Hide file panel","files.showPanel":"Show file panel","files.noneOpen":"No file open","layout.resizeSidebar":"Resize sidebar","layout.resizeFilePanel":"Resize file panel","layout.resizeHint":"Drag to resize. Double-click or press Enter to reset.","sidebar.new":"New","sidebar.newSessionTitle":"New session in {path}","sidebar.refresh":"Refresh","sidebar.selectProject":"Select project…","sidebar.filterProjects":"Filter projects…","sidebar.noMatchingProjects":"No matching projects","sidebar.useDefaultDirectory":"Use default directory","sidebar.customPath":"Custom path…","directoryPicker.selectDirectory":"Select directory","directoryPicker.goToParent":"Go to parent directory","directoryPicker.directoryPath":"Directory path","directoryPicker.goToDirectory":"Go to directory","directoryPicker.go":"Go","directoryPicker.loadingDirectories":"Loading directories…","directoryPicker.noSubdirectories":"No subdirectories","directoryPicker.openBeforeSelecting":"Open this path before selecting it","directoryPicker.selectCurrentDirectory":"Select current directory","directoryPicker.selectThisFolder":"Select this folder","directoryPicker.noDrives":"No drives found","sidebar.checking":"Checking…","sidebar.open":"Open","sidebar.cancel":"Cancel","sidebar.openRepoRoot":"Open repo root","sidebar.openRepoRootTitle":"Open the repository root to manage worktrees.","sidebar.gitRepoRootOnly":"Git repo root only","sidebar.gitRepoRootOnlyTitle":"Worktrees are available in Git repository roots.","sidebar.worktrees":"Worktrees...","sidebar.checkingWorktrees":"Checking worktrees for this directory.","sidebar.filterWorktrees":"Filter worktrees…","sidebar.noMatchingWorktrees":"No matching worktrees","sidebar.switchWorktree":"Switch worktree","sidebar.switchWorktreeTitle":"Switch worktree: {path}","sidebar.main":"main","sidebar.forceRemoveCheckout":"Uncommitted changes. Force remove checkout?","sidebar.force":"Force","sidebar.createWorktreeTitle":"Create a worktree checkout for a branch","sidebar.newWorktree":"New worktree…","sidebar.branchName":"branch name","sidebar.creating":"Creating…","sidebar.create":"Create","sidebar.uploadFilesTitle":"Upload files to project root","sidebar.uploadFiles":"Upload files","sidebar.refreshExplorer":"Refresh explorer","sidebar.searchFiles":"Search files","sidebar.searchFilesPlaceholder":"Search files…","sidebar.searchingFiles":"Searching…","sidebar.noMatchingFiles":"No matching files","sidebar.clearSearch":"Clear search","sidebar.searchSessions":"Search all conversations...","sidebar.toggleSessionSearch":"Search conversations","sidebar.sessionSearching":"Searching...","sidebar.sessionSearchEmpty":"No matching conversations","sidebar.sessionSearchCount":"{count} matching conversations","sidebar.sessionSearchPartial":"Search limit reached. Results may be incomplete.","sidebar.sessionSearchFailed":"Could not search conversations","sidebar.changedFiles":"{count} changed files","sidebar.noSessions":"No sessions found","sidebar.agentRunning":"Agent running…","sidebar.newSessionActivity":"New session activity","sidebar.deleteSession":"Delete {title}?","sidebar.rename":"Rename","sidebar.delete":"Delete","sidebar.deleteWithShiftClick":"Delete (Shift+click to delete without confirmation)","sidebar.expandSubagents":"Expand subagents","sidebar.collapseSubagents":"Collapse subagents","sidebar.removeWorktreeTitle":"Remove worktree checkout {path}; the branch is kept","files.modified":"Modified","files.added":"Added","files.deleted":"Deleted","files.renamed":"Renamed","files.untracked":"Untracked","files.conflict":"Conflict","files.newlyUploaded":"Newly uploaded","files.containsChangedFiles":"Contains changed files","files.insertPath":"Insert path into chat","files.mention":"mention","files.download":"Download file","files.dismissError":"Dismiss error","files.addUploadedFile":"Add uploaded file to chat","files.addAllUploadedFiles":"Add all uploaded files to chat","files.dismissUploadResults":"Dismiss upload results","files.noFiles":"No files found","files.explorer":"Explorer","files.changedCount":"{count} files","files.changeStats":"{count} changed files, {additions} lines added, {deletions} lines deleted","files.conflictSummary":"{count} file{countSuffix} already exist: {files}","files.cannotReplace":"Cannot replace: {files}","files.replace":"Replace","files.skipExisting":"Skip existing","files.cancel":"Cancel","files.checking":"Checking files","files.uploading":"Uploading, {progress}%","files.loadFailedRetry":"Failed to load \xb7 Retry","files.gitStatusFailed":"Failed to load Git status","chat.loadingSession":"Loading session...","chat.scrollToBottom":"Scroll to latest","chat.generatingToolInput":"Generating parameters...","chat.agentWorking":"Agent is working","chat.ttft":"TTFT {duration}","chat.tokensPerSecond":"{throughput} tok/s","chat.decodeSeconds":"{seconds}s","chat.decodeMinutes":"{minutes}m{seconds}s","chat.thinking":"Thinking...","chat.message":"message","chat.step":"step","chat.steps":"steps","chat.workedFor":"Worked for {duration}","chat.workedForSteps":"Worked for {duration} \xb7 {count} {steps}","chat.collapseProcess":"Collapse process details","chat.expandProcess":"Expand process details","chat.filesWritten":"Files changed","chat.openWrittenFile":"Open {name}","chat.loadEarlier":"Scroll up to load earlier messages","chat.extensionRequest":"extension request","chat.extensionExpiresIn":"expires in {seconds}s","chat.extensionPending":"Awaiting response","chat.extensionCollapse":"Collapse","chat.extensionExpand":"Expand","chat.cancel":"Cancel","chat.confirm":"Confirm","chat.submit":"Submit","chat.extensionInput":"Extension terminal input","chat.extensionPanel":"Extension panel","chat.close":"Close","chat.queued":"Queued \xb7 {count}","chat.recall":"Recall to input","chat.recallTitle":"Remove all queued messages and put them back into the input box for editing","chat.retrying":"Retrying ({attempt}/{max})…","chat.loadingCommands":"Loading commands...","chat.slashCommands":"Slash commands \xb7 {label}","chat.tabEnter":"Tab / Enter","chat.noCommands":"No extension, prompt, or skill commands found","chat.match":"1 match","chat.matches":"{count} matches","chat.command":"1 command","chat.commands":"{count} commands","chat.loadingFiles":"Loading files...","chat.files":"Files \xb7 {label}{hint}","chat.searching":"Searching…","chat.noMatchingFiles":"No matching files","chat.searchingAll":" \xb7 searching all files…","chat.indexTruncated":" \xb7 index truncated","chat.changeWorkingDirectory":"Change working directory","chat.steer":"Steer","chat.followUp":"Follow-up","chat.steerHint":"Interrupt the current run and inject this message now","chat.followUpHint":"Queue this message after the agent finishes","chat.inputHistory":"Input history","chat.modelError":"Model error","chat.modelScopeWarning":"Model scope warning","chat.modelScopeWarnings":"Model scope warnings","chat.send":"Send","chat.askSelection":"Ask about selected text","chat.askInCurrent":"Ask here","chat.askInNewChat":"Ask in new chat","chat.newQuoteChat":"New chat about selected text","chat.quoteIntro":"About this passage:","chat.quoteQuestion":"My question:","chat.quoteForkFailed":"Unable to create a branch from this message.","chat.attachImage":"Attach image","chat.previewImage":"Preview image","chat.imagePreviewUnavailable":"Image preview unavailable","image.title":"Generate image","image.editTitle":"Edit image","image.editPromptPlaceholder":"Describe the change","image.editSource":"Original","image.prompt":"Prompt","image.promptPlaceholder":"Describe the image to generate","image.connection":"Connection","image.aspect":"Aspect","image.aspectAuto":"Auto","image.aspectSquare":"Square","image.aspectPortrait":"Portrait","image.aspectLandscape":"Landscape","image.resolution":"Resolution","image.quality":"Quality","image.qualityAuto":"Auto","image.qualityLow":"Low","image.qualityMedium":"Medium","image.qualityHigh":"High","image.edit":"Edit","image.quote":"Quote","image.generate":"Generate","image.generating":"Generating…","chat.moreControls":"More controls","chat.inputOptions":"Options","chatTabs.label":"Chat Tabs","chatTabs.newTab":"New chat tab","chatTabs.closeTab":"Close tab","chatTabs.splitView":"Split right","chatTabs.closeSplit":"Close split","chatTabs.openInNewTab":"Open in new tab","chatTabs.pinTab":"Pin tab","chatTabs.previewTabHint":"Preview tab — double-click to pin","chatTabs.unsentDraft":"Unsent draft","chatTabs.discardDraft":"Discard this unsent draft?","chatTabs.allTabs":"All chat tabs","chat.draftPageOnly":"This draft is only saved on this page; refreshing will discard it.","chat.collapseControls":"Collapse controls","chat.shell":"Shell","terminal.title":"Terminal","terminal.tabLabel":"Terminal: {name}","terminal.open":"Open workspace terminal","terminal.close":"Terminate terminal","terminal.restart":"Restart terminal","terminal.reconnect":"Reconnect terminal","terminal.connecting":"Connecting","terminal.ready":"Connected","terminal.exited":"Terminal closed","terminal.error":"Connection error","terminal.exitCode":"Process exited with code {code}","chat.outputLocal":"output stays local","chat.outputModel":"output sent to model","chat.chatOnly":"Chat only","chat.readOnlyTools":"{count} read-only built-in tools","chat.builtInTools":"{count} built-in tools","chat.allBuiltInTools":"All built-in tools","chat.changeReasoning":"Change reasoning level: {level}","chat.changeReasoningLabel":"Change reasoning level","chat.changeToolPreset":"Change tool preset","chat.stopCompaction":"Stop compaction","chat.compactContext":"Compact context","chat.compacting":"Compacting…","chat.compact":"Compact","chat.contextUsage":"Context usage","chat.contextRemaining":"Remaining","chat.contextHighWarning":"Context near limit, compaction recommended","chat.stopAgent":"Stop agent","chat.stop":"Stop","chat.locateNotFound":"Could not locate this message.","chat.locateOtherBranch":"This match is on another branch of the session.","chat.locateLoadFailed":"Could not load this message. Please try again.","chat.locateHistoryStalled":"History did not advance. Please try again.","chat.disableSound":"Disable completion sound","chat.enableSound":"Enable completion sound","chat.thinkingUseDefault":"Use pi default","chat.thinkingOff":"Reasoning off","chat.thinkingMinimal":"Minimal reasoning","chat.thinkingLow":"Low reasoning","chat.thinkingMedium":"Medium reasoning","chat.thinkingHigh":"High reasoning","chat.thinkingXhigh":"Extra-high reasoning","chat.thinkingMax":"Max reasoning","chat.builtIn":"Built-in","chat.extensions":"Extensions","chat.prompts":"Prompts","chat.skills":"Skills","chat.dormant":"dormant","chat.commandCompact":"Compress context, optionally with instructions","chat.commandReload":"Reload extensions, skills, prompts, and tools","chat.commandName":"Set the session display name","chat.commandSession":"Show session message, token, and cost stats","chat.commandCopy":"Copy the last assistant message","chat.commandClone":"Clone the current branch into a new session","chat.compacted":"Compacted","chat.imageNotSupportedTitle":"Images may not be sent","chat.imageNotSupportedBody":"The selected model ({model}) does not support image input. The attached images will likely be ignored.","chat.tooManyImagesTitle":"Too many images to send","chat.tooManyImagesBody":"This draft has {count} images. Remove extras until {max} or fewer remain; nothing was discarded.","chat.tokensSaved":"{saved} saved","chatMinimap.userOutline":"Questions","chatMinimap.jumpFailed":"Jump failed: ","chatMinimap.retry":"Retry","i18n.close":"Close","i18n.copy":"Copy","i18n.copied":"Copied","i18n.cancel":"Cancel","i18n.save":"Save","i18n.saving":"Saving…","i18n.saved":"Saved","i18n.remove":"Remove","i18n.removing":"Removing…","i18n.delete":"Delete","i18n.loading":"Loading...","i18n.search":"Search","i18n.refresh":"Refresh","i18n.update":"Update","i18n.updating":"Updating...","i18n.check":"Check","i18n.checking":"Checking...","i18n.install":"Install","i18n.installing":"Installing...","i18n.searchProviders":"Search providers…","i18n.noProviders":"No providers match","i18n.newModel":"new model","i18n.addProvider":"Add provider","i18n.selectProviderModel":"Select a provider or model","i18n.visibleInPrompt":"Visible in model prompt — click to disable","i18n.hiddenFromPrompt":"Hidden from model prompt — click to enable","i18n.hiddenButInvocable":"Hidden from model, still manually invocable","i18n.skillSearchPlaceholder":"e.g. react, testing, deploy","i18n.searching":"Searching…","i18n.noSkills":"No skills found","i18n.checkUpdates":"Check updates","i18n.updates":"updates","i18n.noResolvedResources":"No resolved resources","i18n.enablePackage":"Enable package","i18n.disablePackage":"Disable package","i18n.filtered":"filtered","i18n.openSessionToReload":"Open a session to reload","i18n.notFound":"Not found","trust.resourcesNotLoaded":"Restricted mode","trust.trustProject":"Trust project","trust.trusting":"Trusting...","trust.cancel":"Cancel","trust.dialogTitle":"Trust this project?","trust.dialogBody":"Project resources can run local code. Trust only projects whose contents you know.","trust.skillsNotLoaded":"Project skills are not loaded because this project is not trusted.","trust.pluginsNotLoaded":"Project plugins are not loaded because this project is not trusted.","trust.projectScopeUnavailable":"Project installs are unavailable while project resources are not loaded.","i18n.creatingSession":"Creating new session…","i18n.creating":"Creating…","i18n.subscription":"Subscription","i18n.subscriptions":"Subscriptions","i18n.customEndpoint":"Custom endpoint format","i18n.noChanges":"No changes","i18n.branches":"Branches","i18n.noActiveSession":"No active session","i18n.noBranches":"This session has no branches","i18n.source":"Source","i18n.preview":"Preview","i18n.outline":"Outline","i18n.diff":"Diff","i18n.downloadFile":"Download file","i18n.liveSync":"Live sync active","i18n.notWatching":"Not watching","i18n.fileViewMode":"File view mode","i18n.compareHead":"Compare working tree with HEAD","i18n.mentionSelectedLines":"Mention selected lines","i18n.disableWrap":"Disable word wrap","i18n.enableWrap":"Enable word wrap","i18n.loadMore":"Load more","i18n.htmlPreview":"HTML preview","i18n.previewFile":"Preview {file}","i18n.invalidMermaid":"Invalid Mermaid diagram","i18n.renderingMermaid":"Rendering Mermaid diagram","i18n.previewAfterStreaming":"Preview available after streaming","i18n.showMermaidSource":"Show Mermaid source","i18n.previewMermaid":"Preview Mermaid diagram","i18n.openMermaidViewer":"Open diagram viewer","i18n.mermaidViewer":"Mermaid diagram viewer","i18n.mermaidDiagram":"Mermaid diagram","i18n.zoomOut":"Zoom out","i18n.zoomIn":"Zoom in","i18n.fitToWidth":"Fit to width","models.discoveryFetching":"Importing models…","models.discoveryFetch":"Import models…","models.discoveryFilterPlaceholder":"Filter {count} models…","models.discoveryFilter":"Filter upstream models","models.discoverySelectShown":"Select shown","models.discoveryNoMatches":"No matching models.","models.discoveryAdded":"added","models.discoveryShowing":"Showing first {shown} of {total}","models.discoveryFetched":"{count} models fetched","models.discoveryAddSelected":"Add selected","models.discoveryAddSelectedCount":"Add selected ({count})","models.catalogSource":"source: models.dev ↗","models.catalogFilling":"Filling details…","models.catalogFill":"Fill model details","models.catalogFilled":"{count} fields filled","models.catalogNoEmptyFields":"No empty fields to fill","models.catalogNoExactMatch":"No exact models.dev match","models.catalogPriceProvider":"Price matched Provider {provider}","models.catalogPriceBaseUrl":"Price matched Base URL to {provider}","models.catalogPriceConsensus":"Price agreed by {support}/{total} records","models.catalogPriceUnreliable":"No reliable price found","models.catalogUndo":"Undo","models.inPicker":"Show in chat model picker","models.catalogShelf":"Available models","models.updateKey":"Update key","models.replaceKeyPlaceholder":"Enter new key to replace…","models.saveModelsJson":"Save models.json","models.endpoint":"Endpoint","models.pickerMaterializeConfirm":"Hiding a model pins the current visible list in settings.json. Newly connected models will stay hidden until you add them. Continue?","models.pickerProjectOverride":"This workspace overrides enabledModels in .pi/settings.json. Edit that file instead.","models.pickerGlobManaged":"This model is included by an enabledModels glob. Edit ~/.pi/agent/settings.json.","models.pickerLastModel":"The picker must keep at least one model.","models.pickerError":"Could not update the model picker","models.capabilities":"Capabilities","models.reasoning":"Reasoning / thinking","models.imageInput":"Image input","models.modelSpecs":"Model specifications","models.contextWindow":"Context window (tokens)","models.maxOutputTokens":"Max output tokens","models.costPerMillion":"Cost per million tokens","models.costInput":"Input","models.costOutput":"Output","models.costCacheRead":"Cache read","models.costCacheWrite":"Cache write","models.notProvided":"Not provided","models.editCosts":"Edit prices","models.finishEditingCosts":"Done","models.costAllRequired":"Enter a valid non-negative price; blank fields are saved as 0.","models.advancedSettings":"Advanced settings","models.providerDefaults":"Using provider defaults","models.headersSummary":"Headers: {count}","models.compatSummary":"Compatibility: {count}","models.thinkingSummary":"Thinking levels: {count}","models.apiOverride":"API override","models.headers":"Headers","models.headersHelp":"Added to this model's requests and overrides provider headers.","models.compatibility":"Compatibility","models.deepSeekThinkingCompat":"DeepSeek thinking compatibility","models.developerRole":"Use the developer role for the system prompt","models.thinkingLevelMap":"Thinking level map","models.clearAll":"Clear all","i18n.testingModel":"Testing model connection...","i18n.connected":"Connected","i18n.failed":"Failed","i18n.test":"Test","i18n.testConnection":"Test model connection","i18n.provider":"Provider","i18n.model":"Model","i18n.providerName":"Provider name","i18n.rename":"Rename","i18n.default":"Default","i18n.disabled":"Disabled","i18n.noResources":"No resources","i18n.unknown":"Unknown","i18n.installedVersion":"installed {version}","i18n.configuredVersion":"configured {version}","i18n.extensions":"Extensions","i18n.prompts":"Prompts","i18n.themes":"Themes","i18n.resourceCount":"{count} {label}","i18n.extensionShort":"ext","i18n.skillShort":"skills","i18n.promptShort":"prompts","i18n.themeShort":"themes","i18n.custom":"Custom","i18n.connectedSuccessfully":"Connected successfully.","i18n.notConnected":"not connected","i18n.configured":"configured","i18n.notConfigured":"not configured","i18n.openingBrowser":"Opening browser…","i18n.submit":"Submit","i18n.login":"Login","i18n.relogin":"Re-login","i18n.disconnect":"Disconnect","i18n.networkError":"Network error","i18n.skills":"Skills","i18n.addSkill":"Add skill","i18n.addPlugin":"Add plugin","i18n.selectSkill":"Select a skill","i18n.selectPackage":"Select a package","i18n.updateAvailable":"Update available","i18n.upToDate":"Up to date","i18n.automaticChecksUnavailable":"Automatic checks unavailable","i18n.checkFailed":"Check failed","i18n.installed":"Installed","i18n.status":"Status","i18n.version":"Version","i18n.package":"Package","i18n.resources":"Resources","i18n.installedPath":"Installed path","i18n.cwd":"CWD","i18n.resolvedResources":"Resolved Resources","i18n.reloadSession":"Reload session","i18n.reloading":"Reloading...","i18n.packagesUpdated":"Packages updated.","i18n.updateAllPlugins":"Update all","i18n.updateAllPluginsHint":"Updates all configured plugins","i18n.packageDisabled":"Package disabled.","i18n.thinking":"Thinking","i18n.largeMessageReveal":"Message content is very large ({size}). Click to view as plain text — markdown rendering is disabled to keep the page responsive.","i18n.loadingThinking":"Loading thinking...","i18n.copyMessage":"Copy message","i18n.editFromHere":"Edit from here","i18n.editFromHereTitle":"Edit from here — branches within this session","i18n.newSession":"New session","i18n.newSessionTitle":"New session — creates an independent copy from here","i18n.noOutput":"(no output)","i18n.noSummary":"(no summary)","i18n.conversationCompacted":"Conversation compacted","i18n.compactionDescription":"The conversation history before this point was compacted into the following summary:","i18n.fileContext":"File context: {details}","i18n.readFiles":"Read files","i18n.modifiedFiles":"Modified files","i18n.hiddenExtensionMessage":"hidden extension message","i18n.noMessage":"(no message)","i18n.showExtensionMessage":"Show extension message","i18n.collapse":"Collapse","i18n.expand":"Expand","i18n.hideDetails":"Hide details","i18n.showDetails":"Show details","i18n.thinkingUnavailable":"Thinking content unavailable","i18n.before":"Before","i18n.after":"After","i18n.sessionComplete":"Session complete","i18n.taskFinished":"Task finished.","i18n.attentionNeeded":"Pi needs your attention","i18n.extensionInputNeeded":"An extension is waiting for your input."}}},41298:(a,b,c)=>{c.d(b,{O:()=>d});let d={id:"zh-CN",label:"简体中文",messages:{"common.ok":"确定","common.language":"语言","common.models":"模型","common.skills":"技能","common.agents":"子代理","common.plugins":"插件","common.settings":"设置","settings.title":"设置","settings.general":"常规","settings.appearance":"外观","settings.chatContentWidth":"聊天内容宽度","settings.chatContentFontSize":"正文字体大小","settings.resetChatContentWidth":"重置聊天内容宽度","settings.resetChatContentFontSize":"重置正文字体大小","settings.themeLight":"浅色","settings.themeDark":"深色","settings.themeSystem":"跟随系统","settings.thinkingExpandedDefault":"默认展开思考块","settings.autoSessionTitle":"自动为新会话生成标题","settings.chat":"对话","settings.shiftEnterToSend":"用 Shift+Enter 发送","settings.quoteSelection":"选中文字时显示提问浮窗","settings.browserNotifications":"浏览器通知","settings.browserNotificationsEnable":"开启","settings.browserNotificationsOn":"已开启","settings.browserNotificationsBlocked":"已在浏览器中关闭","settings.pushPermission":"后台推送","settings.pushPermissionDescription":"用于 iOS 主屏应用的锁屏通知。收不到时在此重新注册。","settings.pushRegister":"注册推送","settings.pushRegisterLoading":"注册中…","settings.pushRegistered":"推送已注册,后台通知就绪。","settings.pushRegisterFailed":"注册失败:","auth.prompt":"登录后继续使用","auth.password":"密码","auth.logIn":"登录","auth.loggingIn":"正在登录...","auth.invalidPassword":"密码不正确","auth.loginFailed":"登录失败,请重试。","auth.logOut":"退出登录","auth.loggingOut":"正在退出...","auth.logoutFailed":"退出失败,请重试。","settings.typography":"等宽字体与几何对齐","settings.typographyDescription":"代码块、终端与 ASCII 架构图优先匹配更纱黑体(Sarasa Term SC / Nerd)与 Maple Mono。在本地系统安装该字体后,即可自动实现中英文 2:1 像素级几何等宽对齐。","settings.fontMonoDownload":"获取更纱黑体 Term SC","settings.shellTool":"Shell 工具","settings.shellToolDescription":"选择模型执行命令时使用的 Shell。直接输入的 ! 和 !! 命令仍使用 Bash。","settings.usePowerShell":"使用 PowerShell 替代 Bash","settings.projectRequired":"打开项目后才能配置此项","settings.images":"生图","settings.imagesDescription":"打开后显示生图按钮并注册 generate_image。内置连接需要已登录的对应账号。","settings.imagesEnabled":"启用生图","settings.imagesBuiltin":"内置","settings.imagesCustom":"自定义","settings.imagesLabel":"名称","settings.imagesProvider":"Provider","settings.imagesModel":"模型","settings.imagesNoProviders":"请先在模型设置里添加 provider。","settings.imagesOtherModel":"其他模型","settings.imagesSignedOut":"未登录","settings.imagesNotConfigured":"未配置密钥","skills.scope.global":"全局","skills.scope.project":"项目","skills.scope.path":"路径","agents.close":"关闭","agents.builtInTitle":"启用 Pi Web 内置子代理","agents.builtInDescription":"提供 Pi Web 集成的 Agent 工具,并停用发生冲突的 pi-subagents 扩展。","agents.maxConcurrent":"并发子代理数","agents.maxConcurrentDescription":"每个父会话同时运行的最大任务数。","agents.reloadRequired":"重新加载当前会话后生效。","agents.reloadSession":"重新加载会话","agents.reloading":"正在重新加载...","agents.loading":"正在加载子代理...","agents.new":"新建子代理","agents.empty":"选择或创建一个子代理配置","agents.saveScope":"保存到","agents.name":"子代理 ID","agents.displayName":"显示名称","agents.description":"描述","agents.prompt":"系统指令","agents.tools":"工具","agents.resources":"资源","agents.loadSkills":"加载技能","agents.loadExtensions":"加载扩展","agents.model":"指定模型","agents.modelsLoading":"正在加载模型...","agents.modelUnavailable":"{model}(不可用)","agents.thinking":"思考级别","agents.maxTurns":"最大轮次","agents.inherit":"跟随父会话","agents.enable":"启用子代理","agents.disable":"停用子代理","agents.builtinPath":"内置配置","agents.inheritContext":"继承父会话上下文","agents.background":"默认在后台运行","agents.duplicate":"创建副本","agents.copyName":"{name} 副本","agents.delete":"删除","agents.deleteConfirm":"删除 {name}?","agents.save":"保存","agents.saving":"正在保存...","agents.scope.builtin":"内置","agents.scope.global":"全局","agents.scope.workspace":"工作区","agents.scope.project":"项目","agents.overridden":"被覆盖","subagent.open":"打开子代理会话","subagent.notificationSingle":"子代理结果待处理","subagent.notificationMany":"{count} 个子代理结果待处理","agentSwitcher.title":"Agents","agentSwitcher.main":"主 Agent","agentSwitcher.backToMain":"返回主 Agent","agentSwitcher.subagent":"子 Agent","agentSwitcher.current":"当前","agentSwitcher.count":"{count} 个子 Agent","agentSwitcher.runningCount":"{count} 个运行中","agentSwitcher.search":"搜索 Agents","agentSwitcher.noMatches":"没有匹配的 Agent","agentSwitcher.status.starting":"正在启动","agentSwitcher.status.running":"运行中","agentSwitcher.status.queued":"排队中","agentSwitcher.status.completed":"已完成","agentSwitcher.status.failed":"失败","agentSwitcher.status.aborted":"已中止","agentSwitcher.status.interrupted":"已中断","appUpdate.releaseNotes":"Pi Web v{version} 可用,查看更新说明","sidebar.hide":"隐藏侧边栏","sidebar.show":"显示侧边栏","history.full":"完整历史","history.unsaved":"会话保存后才能查看完整历史","history.menu":"历史与导出","history.exportMarkdown":"导出问答","history.exportMarkdownTitle":"下载当前对话为 Markdown(不含工具与思考)","history.exportEmpty":"当前对话没有可导出的问答","history.exportFailed":"导出 Markdown 失败","system.prompt":"系统提示词","system.empty":"系统提示词为空(工具已禁用)","system.load":"系统提示词尚未加载","system.loading":"正在加载系统提示词…","tools.title":"工具定义","tools.details":"工具定义详情","tools.load":"工具定义尚未加载","tools.loading":"正在加载工具定义…","tools.noTools":"没有启用的工具","tools.description":"描述","tools.parameters":"参数","tools.parameterCount":"{count} 个参数","tools.noParameters":"无参数","tools.required":"必填","tools.optional":"可选","tools.allowedValues":"可选值","tools.defaultValue":"默认值","tools.guidelines":"提示词规则","session.info":"会话信息","session.name":"名称","session.file":"会话文件","session.id":"ID","session.user":"用户","session.assistant":"助手","session.toolCalls":"工具调用","session.total":"总计","session.input":"输入","session.output":"输出","session.cacheRead":"缓存读取","session.context":"上下文","session.activeContext":"当前上下文","session.cumulativeTokens":"全会话累计流量","session.contextRemaining":"剩余可用","session.contextWindow":"窗口上限","session.contextUsed":"当前已用","session.cacheHitRate":"平均缓存命中率","session.copy":"复制{value}","session.copied":"已复制","session.title":"会话信息","session.load":"发送消息或运行 /session 以加载会话信息","session.infoSection":"会话信息","session.messages":"消息","session.copyFile":"复制文件路径","session.copyId":"复制会话 ID","session.copyProjectDir":"复制项目目录","session.copyGitBranch":"复制 Git 分支","session.copyGitWorktree":"复制 Worktree 路径","workspace.opening":"正在打开工作区...","workspace.unable":"无法打开工作区","files.hidePanel":"隐藏文件面板","files.showPanel":"显示文件面板","files.noneOpen":"没有打开的文件","layout.resizeSidebar":"调整侧边栏宽度","layout.resizeFilePanel":"调整文件面板宽度","layout.resizeHint":"拖动调整宽度。双击或按 Enter 恢复默认值。","sidebar.new":"新建","sidebar.newSessionTitle":"在 {path} 中新建会话","sidebar.refresh":"刷新","sidebar.selectProject":"选择项目…","sidebar.filterProjects":"筛选项目…","sidebar.noMatchingProjects":"没有匹配的项目","sidebar.useDefaultDirectory":"使用默认目录","sidebar.customPath":"自定义路径…","directoryPicker.selectDirectory":"选择目录","directoryPicker.goToParent":"转到上级目录","directoryPicker.directoryPath":"目录路径","directoryPicker.goToDirectory":"转到目录","directoryPicker.go":"转到","directoryPicker.loadingDirectories":"正在加载目录…","directoryPicker.noSubdirectories":"没有子目录","directoryPicker.openBeforeSelecting":"选择前请先打开此路径","directoryPicker.selectCurrentDirectory":"选择当前目录","directoryPicker.selectThisFolder":"选择此文件夹","directoryPicker.noDrives":"未找到盘符","sidebar.checking":"检查中…","sidebar.open":"打开","sidebar.cancel":"取消","sidebar.openRepoRoot":"打开仓库根目录","sidebar.openRepoRootTitle":"打开仓库根目录以管理 worktree。","sidebar.gitRepoRootOnly":"仅 Git 仓库根目录","sidebar.gitRepoRootOnlyTitle":"只能在 Git 仓库根目录使用 worktree。","sidebar.worktrees":"Worktrees...","sidebar.checkingWorktrees":"正在检查此目录的 worktree。","sidebar.filterWorktrees":"筛选 worktree…","sidebar.noMatchingWorktrees":"没有匹配的 worktree","sidebar.switchWorktree":"切换 worktree","sidebar.switchWorktreeTitle":"切换 worktree:{path}","sidebar.main":"主分支","sidebar.forceRemoveCheckout":"存在未提交的更改。强制移除 checkout?","sidebar.force":"强制移除","sidebar.createWorktreeTitle":"为分支创建 worktree checkout","sidebar.newWorktree":"新建 worktree…","sidebar.branchName":"分支名称","sidebar.creating":"创建中…","sidebar.create":"创建","sidebar.uploadFilesTitle":"将文件上传到项目根目录","sidebar.uploadFiles":"上传文件","sidebar.refreshExplorer":"刷新文件浏览器","sidebar.searchFiles":"搜索文件","sidebar.searchFilesPlaceholder":"搜索文件…","sidebar.searchingFiles":"搜索中…","sidebar.noMatchingFiles":"没有匹配的文件","sidebar.clearSearch":"清除搜索","sidebar.searchSessions":"搜索所有对话...","sidebar.toggleSessionSearch":"搜索对话","sidebar.sessionSearching":"搜索中...","sidebar.sessionSearchEmpty":"没有匹配的对话","sidebar.sessionSearchCount":"{count} 个匹配的对话","sidebar.sessionSearchPartial":"已达到搜索上限,结果可能不完整。","sidebar.sessionSearchFailed":"无法搜索对话","sidebar.changedFiles":"{count} 个变更文件","sidebar.noSessions":"未找到会话","sidebar.agentRunning":"Agent 运行中…","sidebar.newSessionActivity":"会话有新活动","sidebar.deleteSession":"删除 {title}?","sidebar.rename":"重命名","sidebar.delete":"删除","sidebar.deleteWithShiftClick":"删除(按住 Shift 点击可跳过确认)","sidebar.expandSubagents":"展开子智能体","sidebar.collapseSubagents":"折叠子智能体","sidebar.removeWorktreeTitle":"移除 worktree checkout {path};保留分支","files.modified":"已修改","files.added":"已添加","files.deleted":"已删除","files.renamed":"已重命名","files.untracked":"未跟踪","files.conflict":"冲突","files.newlyUploaded":"刚上传","files.containsChangedFiles":"包含已更改文件","files.insertPath":"将路径插入聊天","files.mention":"提及","files.download":"下载文件","files.dismissError":"关闭错误","files.addUploadedFile":"将上传的文件添加到聊天","files.addAllUploadedFiles":"将所有上传的文件添加到聊天","files.dismissUploadResults":"关闭上传结果","files.noFiles":"未找到文件","files.explorer":"文件浏览器","files.changedCount":"{count} 个文件","files.changeStats":"{count} 个变更文件,新增 {additions} 行,删除 {deletions} 行","files.conflictSummary":"已有 {count} 个文件:{files}","files.cannotReplace":"无法替换:{files}","files.replace":"替换","files.skipExisting":"跳过已有文件","files.cancel":"取消","files.checking":"正在检查文件","files.uploading":"正在上传,{progress}%","files.loadFailedRetry":"加载失败 \xb7 重试","files.gitStatusFailed":"Git 状态加载失败","chat.loadingSession":"正在加载会话...","chat.scrollToBottom":"回到最新位置","chat.generatingToolInput":"正在生成参数...","chat.agentWorking":"Agent 正在处理","chat.ttft":"首字 {duration}","chat.tokensPerSecond":"{throughput} tok/s","chat.decodeSeconds":"{seconds}秒","chat.decodeMinutes":"{minutes}分{seconds}秒","chat.thinking":"正在思考...","chat.message":"条消息","chat.step":"步操作","chat.steps":"步操作","chat.workedFor":"处理了 {duration}","chat.workedForSteps":"处理了 {duration} \xb7 {count} {steps}","chat.collapseProcess":"收起处理详情","chat.expandProcess":"展开处理详情","chat.filesWritten":"改动的文件","chat.openWrittenFile":"打开 {name}","chat.loadEarlier":"向上滚动以加载更早的消息","chat.extensionRequest":"扩展请求","chat.extensionExpiresIn":"{seconds} 秒后过期","chat.extensionPending":"待回答","chat.extensionCollapse":"收起","chat.extensionExpand":"展开","chat.cancel":"取消","chat.confirm":"确认","chat.submit":"提交","chat.extensionInput":"扩展终端输入","chat.extensionPanel":"扩展面板","chat.close":"关闭","chat.queued":"已排队 \xb7 {count}","chat.recall":"移回输入框","chat.recallTitle":"移除所有排队消息并将其放回输入框编辑","chat.retrying":"正在重试({attempt}/{max})…","chat.loadingCommands":"正在加载命令...","chat.slashCommands":"斜杠命令 \xb7 {label}","chat.tabEnter":"Tab / Enter","chat.noCommands":"未找到扩展、提示词或技能命令","chat.match":"1 个匹配项","chat.matches":"{count} 个匹配项","chat.command":"1 个命令","chat.commands":"{count} 个命令","chat.loadingFiles":"正在加载文件...","chat.files":"文件 \xb7 {label}{hint}","chat.searching":"搜索中…","chat.noMatchingFiles":"未找到匹配的文件","chat.searchingAll":" \xb7 正在搜索所有文件…","chat.indexTruncated":" \xb7 索引不完整","chat.changeWorkingDirectory":"更换工作目录","chat.steer":"引导","chat.followUp":"后续消息","chat.steerHint":"中断当前运行并立即注入此消息","chat.followUpHint":"在 Agent 完成后排队此消息","chat.inputHistory":"输入历史","chat.modelError":"模型错误","chat.modelScopeWarning":"模型范围警告","chat.modelScopeWarnings":"模型范围警告","chat.send":"发送","chat.askSelection":"询问选中的文字","chat.askInCurrent":"在当前对话询问","chat.askInNewChat":"在新对话询问","chat.newQuoteChat":"关于选中文字的新对话","chat.quoteIntro":"关于这段内容:","chat.quoteQuestion":"我的问题是:","chat.quoteForkFailed":"无法从这条消息创建分支。","chat.attachImage":"附加图片","chat.previewImage":"预览图片","chat.imagePreviewUnavailable":"图片预览不可用","image.title":"生成图片","image.editTitle":"修改图片","image.editPromptPlaceholder":"描述要改的地方","image.editSource":"原图","image.prompt":"提示词","image.promptPlaceholder":"描述要生成的图片","image.connection":"连接","image.aspect":"比例","image.aspectAuto":"自动","image.aspectSquare":"正方形","image.aspectPortrait":"竖屏","image.aspectLandscape":"横屏","image.resolution":"分辨率","image.quality":"质量","image.qualityAuto":"自动","image.qualityLow":"低","image.qualityMedium":"中","image.qualityHigh":"高","image.edit":"改图","image.quote":"引用","image.generate":"生成","image.generating":"生成中…","chat.moreControls":"更多控件","chat.inputOptions":"选项","chatTabs.label":"对话标签","chatTabs.newTab":"新建对话标签","chatTabs.closeTab":"关闭标签","chatTabs.splitView":"向右分屏","chatTabs.closeSplit":"关闭分屏","chatTabs.openInNewTab":"在新标签页打开","chatTabs.pinTab":"固定标签","chatTabs.previewTabHint":"预览标签,双击固定","chatTabs.unsentDraft":"未发送草稿","chatTabs.discardDraft":"要丢弃这个未发送草稿吗?","chatTabs.allTabs":"所有对话标签","chat.draftPageOnly":"此草稿目前仅保存在本页,刷新后会丢失。","chat.collapseControls":"收起控件","chat.shell":"Shell","terminal.title":"终端","terminal.tabLabel":"终端:{name}","terminal.open":"打开工作区终端","terminal.close":"终止终端","terminal.restart":"重启终端","terminal.reconnect":"重新连接终端","terminal.connecting":"连接中","terminal.ready":"已连接","terminal.exited":"终端已关闭","terminal.error":"连接错误","terminal.exitCode":"进程已退出,退出码 {code}","chat.outputLocal":"输出保留在本地","chat.outputModel":"输出发送给模型","chat.chatOnly":"仅聊天","chat.readOnlyTools":"{count} 个只读内置工具","chat.builtInTools":"{count} 个内置工具","chat.allBuiltInTools":"全部内置工具","chat.changeReasoning":"更改推理级别:{level}","chat.changeReasoningLabel":"更改推理级别","chat.changeToolPreset":"更改工具预设","chat.stopCompaction":"停止压缩","chat.compactContext":"压缩上下文","chat.compacting":"正在压缩…","chat.compact":"压缩","chat.contextUsage":"上下文占用","chat.contextRemaining":"剩余可用","chat.contextHighWarning":"上下文接近上限,建议压缩","chat.stopAgent":"停止 Agent","chat.stop":"停止","chat.locateNotFound":"无法定位到这条消息。","chat.locateOtherBranch":"该匹配位于此会话的其他分支。","chat.locateLoadFailed":"无法加载这条消息,请重试。","chat.locateHistoryStalled":"历史记录未继续前进,请重试。","chat.disableSound":"关闭完成提示音","chat.enableSound":"开启完成提示音","chat.thinkingUseDefault":"使用 pi 默认设置","chat.thinkingOff":"关闭推理","chat.thinkingMinimal":"最低限度推理","chat.thinkingLow":"低强度推理","chat.thinkingMedium":"中等强度推理","chat.thinkingHigh":"高强度推理","chat.thinkingXhigh":"超高强度推理","chat.thinkingMax":"最高强度推理","chat.builtIn":"内置","chat.extensions":"扩展","chat.prompts":"提示词","chat.skills":"技能","chat.dormant":"休眠","chat.commandCompact":"压缩上下文,可选附加说明","chat.commandReload":"重新加载扩展、技能、提示词和工具","chat.commandName":"设置会话显示名称","chat.commandSession":"显示会话消息、Token 和费用统计","chat.commandCopy":"复制最后一条助手消息","chat.commandClone":"将当前分支复制为独立新会话","chat.compacted":"已压缩","chat.imageNotSupportedTitle":"图片可能无法发送","chat.imageNotSupportedBody":"当前选择的模型({model})不支持图片输入,附加的图片可能会被忽略。","chat.tooManyImagesTitle":"图片数量超出发送限制","chat.tooManyImagesBody":"当前草稿有 {count} 张图片。请删到不超过 {max} 张后再发送;已恢复的附件不会被丢弃。","chat.tokensSaved":"节省 {saved}","chatMinimap.userOutline":"提问","chatMinimap.jumpFailed":"跳转失败:","chatMinimap.retry":"重试","i18n.close":"关闭","i18n.copy":"复制","i18n.copied":"已复制","i18n.cancel":"取消","i18n.save":"保存","i18n.saving":"保存中…","i18n.saved":"已保存","i18n.remove":"移除","i18n.removing":"移除中…","i18n.delete":"删除","i18n.loading":"加载中...","i18n.search":"搜索","i18n.refresh":"刷新","i18n.update":"更新","i18n.updating":"更新中...","i18n.check":"检查","i18n.checking":"检查中...","i18n.install":"安装","i18n.installing":"安装中...","i18n.searchProviders":"搜索 Provider…","i18n.noProviders":"没有匹配的 Provider","i18n.newModel":"新模型","i18n.addProvider":"添加 Provider","i18n.selectProviderModel":"选择 Provider 或模型","i18n.visibleInPrompt":"在模型提示词中可见,点击以禁用","i18n.hiddenFromPrompt":"在模型提示词中隐藏,点击以启用","i18n.hiddenButInvocable":"对模型隐藏,仍可手动调用","i18n.skillSearchPlaceholder":"例如 react、testing、deploy","i18n.searching":"搜索中…","i18n.noSkills":"未找到技能","i18n.checkUpdates":"检查更新","i18n.updates":"项更新","i18n.noResolvedResources":"没有已解析资源","i18n.enablePackage":"启用包","i18n.disablePackage":"禁用包","i18n.filtered":"已筛选","i18n.openSessionToReload":"打开会话后才能重新加载","i18n.notFound":"未找到","trust.resourcesNotLoaded":"受限模式","trust.trustProject":"信任项目","trust.trusting":"正在信任...","trust.cancel":"取消","trust.dialogTitle":"信任此项目?","trust.dialogBody":"项目资源可以运行本地代码。请仅信任你了解其内容的项目。","trust.skillsNotLoaded":"此项目尚未受信任,项目技能未加载。","trust.pluginsNotLoaded":"此项目尚未受信任,项目插件未加载。","trust.projectScopeUnavailable":"项目资源未加载时,无法安装到项目范围。","i18n.creatingSession":"正在创建新会话…","i18n.creating":"创建中…","i18n.subscription":"订阅","i18n.subscriptions":"订阅服务","i18n.customEndpoint":"自定义端点格式","i18n.noChanges":"没有更改","i18n.branches":"分支","i18n.noActiveSession":"没有活动会话","i18n.noBranches":"此会话没有分支","i18n.source":"源代码","i18n.preview":"预览","i18n.outline":"目录","i18n.diff":"Diff","i18n.downloadFile":"下载文件","i18n.liveSync":"实时同步已启用","i18n.notWatching":"未监视","i18n.fileViewMode":"文件视图模式","i18n.compareHead":"比较工作区与 HEAD","i18n.mentionSelectedLines":"提及所选行","i18n.disableWrap":"禁用自动换行","i18n.enableWrap":"启用自动换行","i18n.loadMore":"加载更多","i18n.htmlPreview":"HTML 预览","i18n.previewFile":"预览 {file}","i18n.invalidMermaid":"Mermaid 图表无效","i18n.renderingMermaid":"正在渲染 Mermaid 图表","i18n.previewAfterStreaming":"流式输出完成后可预览","i18n.showMermaidSource":"显示 Mermaid 源码","i18n.previewMermaid":"预览 Mermaid 图表","i18n.openMermaidViewer":"打开图表查看器","i18n.mermaidViewer":"Mermaid 图表查看器","i18n.mermaidDiagram":"Mermaid 图表","i18n.zoomOut":"缩小","i18n.zoomIn":"放大","i18n.fitToWidth":"适应宽度","models.discoveryFetching":"正在导入模型…","models.discoveryFetch":"导入模型…","models.discoveryFilterPlaceholder":"筛选 {count} 个模型…","models.discoveryFilter":"筛选上游模型","models.discoverySelectShown":"选择当前结果","models.discoveryNoMatches":"没有匹配的模型。","models.discoveryAdded":"已添加","models.discoveryShowing":"显示前 {shown} 个,共 {total} 个","models.discoveryFetched":"已获取 {count} 个模型","models.discoveryAddSelected":"添加所选模型","models.discoveryAddSelectedCount":"添加所选模型({count})","models.catalogSource":"来源:models.dev ↗","models.catalogFilling":"正在填入模型信息…","models.catalogFill":"填入模型信息","models.catalogFilled":"已填入 {count} 个字段","models.catalogNoEmptyFields":"没有需要填入的空字段","models.catalogNoExactMatch":"models.dev 中没有精确匹配","models.catalogPriceProvider":"价格已匹配 Provider {provider}","models.catalogPriceBaseUrl":"价格已按 Base URL 匹配 {provider}","models.catalogPriceConsensus":"价格得到 {support}/{total} 条记录支持","models.catalogPriceUnreliable":"未找到可靠价格","models.catalogUndo":"撤销","models.inPicker":"显示在聊天模型选择器中","models.catalogShelf":"可用模型","models.updateKey":"更新密钥","models.replaceKeyPlaceholder":"输入新密钥以替换…","models.saveModelsJson":"保存 models.json","models.endpoint":"端点","models.pickerMaterializeConfirm":"隐藏模型会把当前可见列表写入 settings.json。之后新接入的模型不会自动出现,需要再勾选。继续?","models.pickerProjectOverride":"当前工作区在 .pi/settings.json 覆盖了 enabledModels,请改那个文件。","models.pickerGlobManaged":"该模型由 enabledModels 的 glob 规则包含,请改 ~/.pi/agent/settings.json。","models.pickerLastModel":"选择器至少要保留一个模型。","models.pickerError":"无法更新模型选择器","models.capabilities":"能力","models.reasoning":"推理 / 思考","models.imageInput":"图片输入","models.modelSpecs":"模型规格","models.contextWindow":"上下文窗口(tokens)","models.maxOutputTokens":"最大输出 tokens","models.costPerMillion":"每百万 tokens 价格","models.costInput":"输入","models.costOutput":"输出","models.costCacheRead":"缓存读取","models.costCacheWrite":"缓存写入","models.notProvided":"未提供","models.editCosts":"编辑价格","models.finishEditingCosts":"完成","models.costAllRequired":"请输入有效的非负价格;留空项将按 0 保存。","models.advancedSettings":"高级设置","models.providerDefaults":"沿用 Provider 默认设置","models.headersSummary":"Headers:{count}","models.compatSummary":"兼容性:{count}","models.thinkingSummary":"思考等级:{count}","models.apiOverride":"API 覆盖","models.headers":"Headers","models.headersHelp":"仅添加到该模型的请求中,并覆盖 Provider 的同名 Header。","models.compatibility":"兼容性","models.deepSeekThinkingCompat":"DeepSeek 思考兼容","models.developerRole":"使用 developer role 传递系统提示词","models.thinkingLevelMap":"思考等级映射","models.clearAll":"全部清除","i18n.testingModel":"正在测试模型连接...","i18n.connected":"已连接","i18n.failed":"失败","i18n.test":"测试","i18n.testConnection":"测试模型连接","i18n.provider":"Provider","i18n.model":"模型","i18n.providerName":"Provider 名称","i18n.rename":"重命名","i18n.default":"默认","i18n.disabled":"已禁用","i18n.noResources":"没有资源","i18n.unknown":"未知","i18n.installedVersion":"已安装 {version}","i18n.configuredVersion":"已配置 {version}","i18n.extensions":"扩展","i18n.prompts":"提示词","i18n.themes":"主题","i18n.resourceCount":"{count}{label}","i18n.extensionShort":"扩展","i18n.skillShort":"技能","i18n.promptShort":"提示词","i18n.themeShort":"主题","i18n.custom":"自定义","i18n.connectedSuccessfully":"连接成功。","i18n.notConnected":"未连接","i18n.configured":"已配置","i18n.notConfigured":"未配置","i18n.openingBrowser":"正在打开浏览器…","i18n.submit":"提交","i18n.login":"登录","i18n.relogin":"重新登录","i18n.disconnect":"断开连接","i18n.networkError":"网络错误","i18n.skills":"技能","i18n.addSkill":"添加技能","i18n.addPlugin":"添加插件","i18n.selectSkill":"选择技能","i18n.selectPackage":"选择包","i18n.updateAvailable":"有可用更新","i18n.upToDate":"已是最新","i18n.automaticChecksUnavailable":"自动检查不可用","i18n.checkFailed":"检查失败","i18n.installed":"已安装","i18n.status":"状态","i18n.version":"版本","i18n.package":"包","i18n.resources":"资源","i18n.installedPath":"安装路径","i18n.cwd":"CWD","i18n.resolvedResources":"已解析资源","i18n.reloadSession":"重新加载会话","i18n.reloading":"重新加载中...","i18n.packagesUpdated":"所有插件已更新。","i18n.updateAllPlugins":"更新全部","i18n.updateAllPluginsHint":"更新所有已配置的插件","i18n.packageDisabled":"包已禁用。","i18n.thinking":"思考","i18n.largeMessageReveal":"消息内容过大({size})。点击以纯文本查看 — 已禁用 markdown 渲染以避免页面卡顿。","i18n.loadingThinking":"正在加载思考内容...","i18n.copyMessage":"复制消息","i18n.editFromHere":"从此处编辑","i18n.editFromHereTitle":"从此处编辑,此会话内创建分支","i18n.newSession":"新会话","i18n.newSessionTitle":"新会话,从此处创建独立副本","i18n.noOutput":"(无输出)","i18n.noSummary":"(无摘要)","i18n.conversationCompacted":"会话已压缩","i18n.compactionDescription":"此处之前的会话历史已压缩为以下摘要:","i18n.fileContext":"文件上下文:{details}","i18n.readFiles":"读取的文件","i18n.modifiedFiles":"修改的文件","i18n.hiddenExtensionMessage":"隐藏的扩展消息","i18n.noMessage":"(无消息)","i18n.showExtensionMessage":"显示扩展消息","i18n.collapse":"收起","i18n.expand":"展开","i18n.hideDetails":"隐藏详情","i18n.showDetails":"显示详情","i18n.thinkingUnavailable":"思考内容不可用","i18n.before":"之前","i18n.after":"之后","i18n.sessionComplete":"任务完成","i18n.taskFinished":"任务已完成。","i18n.attentionNeeded":"Pi 需要你的操作","i18n.extensionInputNeeded":"扩展正在等待你的输入。"}}},92243:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{HR:()=>r,hO:()=>s,lB:()=>t});var e=c(75430),f=c(29021),g=c(33873),h=c(51181),i=c.n(h),j=c(8102),k=c(9915),l=c(41298),m=c(40402),n=a([e,m]);function o(){return(0,g.join)((0,m.$M)(),"web-push.json")}[e,m]=n.then?(await n)():n;function p(a,b){if("zh-CN"===a){let a=l.O.messages["sessionComplete"===b?"i18n.sessionComplete":"i18n.taskFinished"];if(a)return a}return k.Q.messages["sessionComplete"===b?"i18n.sessionComplete":"i18n.taskFinished"]??("sessionComplete"===b?"Session complete":"Task finished.")}function q(){return globalThis.__piWebPushNotifier||(globalThis.__piWebPushNotifier=Promise.resolve().then(()=>{var a;let b,c,d;return b=(a={async send(a,b,c){let d;await i().sendNotification({endpoint:a.endpoint,keys:a.keys},b,{vapidDetails:{subject:(d=process.env.PI_WEB_PUSH_SUBJECT?.trim())||"https://github.com/zhudatou630/pi-web",publicKey:c.publicKey,privateKey:c.privateKey},TTL:2419200,urgency:"high"})},loadState(){let a=o();if(!(0,f.existsSync)(a))return null;try{return JSON.parse((0,f.readFileSync)(a,"utf8"))}catch{return null}},saveState(a){let b=o();(0,f.mkdirSync)((0,g.dirname)(b),{recursive:!0}),(0,j.$)(b,JSON.stringify(a))},generateVapidKeys:()=>i().generateVAPIDKeys(),async listSessionNames(){let a=new Map;try{for(let b of(await e.SessionManager.listAll()))b.name&&a.set(b.id,b.name)}catch{}return a}}).loadState(),c=b?.vapidKeys?.publicKey&&b.vapidKeys.privateKey?b:{vapidKeys:a.generateVapidKeys(),subscriptions:[]},d=()=>{a.saveState(c)},{getVapidPublicKey:()=>(d(),c.vapidKeys.publicKey),addSubscription(a){c.subscriptions=[...c.subscriptions.filter(b=>b.endpoint!==a.endpoint),a],d()},async notifySessionComplete(b){if(0===c.subscriptions.length)return;let e=(await a.listSessionNames()).get(b),f=a=>({title:e??p(a,"sessionComplete"),body:p(a,"taskFinished"),url:`/?session=${encodeURIComponent(b)}`,tag:`pi-session-complete:${b}`}),g=!1;for(let b of[...c.subscriptions])try{await a.send(b,JSON.stringify(f(b.locale)),c.vapidKeys)}catch(d){let a=function(a){if("object"!=typeof a||null===a||!("statusCode"in a))return;let b=a.statusCode;return"number"==typeof b?b:void 0}(d);(404===a||410===a)&&(c.subscriptions=c.subscriptions.filter(a=>a.endpoint!==b.endpoint),g=!0)}g&&d()}}})),globalThis.__piWebPushNotifier}function r(){return q().then(a=>a.getVapidPublicKey())}function s(a){return q().then(b=>b.addSubscription(a))}async function t(a){let b=await q();await b.notifySessionComplete(a)}d()}catch(a){d(a)}})}};