@baique/pi-web-sky 0.1.24 → 0.1.25

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 (310) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +8 -8
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/next-server.js.nft.json +1 -1
  5. package/.next/prerender-manifest.json +3 -3
  6. package/.next/required-server-files.js +6 -6
  7. package/.next/required-server-files.json +6 -6
  8. package/.next/routes-manifest.json +6 -6
  9. package/.next/server/app/_global-error/page.js +2 -2
  10. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_global-error.html +1 -1
  12. package/.next/server/app/_global-error.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page.js +1 -1
  17. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/server/app/_not-found.html +1 -1
  19. package/.next/server/app/_not-found.rsc +3 -3
  20. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  21. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  22. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  23. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  24. package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  26. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/agent/[id]/route.js +1 -1
  28. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/agent/new/route.js +1 -1
  30. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/agent/running/route.js +1 -1
  32. package/.next/server/app/api/agent/running/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/app-update/route.js +1 -1
  34. package/.next/server/app/api/app-update/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  36. package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  38. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  40. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  42. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/auth/providers/route.js +1 -1
  44. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/cwd/browse/route.js +1 -1
  46. package/.next/server/app/api/cwd/browse/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/cwd/validate/route.js +1 -1
  48. package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/default-cwd/route.js +1 -1
  50. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/file-index/route.js +1 -1
  52. package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/files/[...path]/route.js +2 -2
  54. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/git/diff/route.js +2 -2
  56. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/git/status/route.js +1 -1
  58. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/home/route.js +1 -1
  60. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/mcp/route.js +1 -1
  62. package/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/models/route.js +1 -1
  64. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  66. package/.next/server/app/api/models-config/catalog/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/models-config/discover/route.js +1 -1
  68. package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/models-config/route.js +1 -1
  70. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -1
  71. package/.next/server/app/api/models-config/test/route.js +1 -1
  72. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/plugins/route.js +1 -1
  74. package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -1
  75. package/.next/server/app/api/project-trust/route.js +1 -1
  76. package/.next/server/app/api/project-trust/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/quota/route.js +1 -0
  78. package/.next/server/app/api/quota/route.js.nft.json +1 -0
  79. package/.next/server/app/api/quota/route_client-reference-manifest.js +1 -0
  80. package/.next/server/app/api/sessions/[id]/auto-name/route.js +2 -2
  81. package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  83. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  85. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  87. package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  89. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  91. package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/sessions/[id]/todos/route.js +1 -1
  93. package/.next/server/app/api/sessions/[id]/todos/route_client-reference-manifest.js +1 -1
  94. package/.next/server/app/api/sessions/route.js +1 -1
  95. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/api/skills/check/route.js +1 -1
  97. package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/skills/install/route.js +1 -1
  99. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -1
  100. package/.next/server/app/api/skills/route.js +1 -1
  101. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/api/skills/search/route.js +1 -1
  103. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -1
  104. package/.next/server/app/api/skills/update/route.js +1 -1
  105. package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -1
  106. package/.next/server/app/api/terminal/[id]/events/route.js +2 -2
  107. package/.next/server/app/api/terminal/[id]/events/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/terminal/[id]/route.js +2 -2
  109. package/.next/server/app/api/terminal/[id]/route_client-reference-manifest.js +1 -1
  110. package/.next/server/app/api/terminal/route.js +2 -2
  111. package/.next/server/app/api/terminal/route_client-reference-manifest.js +1 -1
  112. package/.next/server/app/api/worktrees/route.js +1 -1
  113. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/favicon.ico/route.js +1 -1
  115. package/.next/server/app/index.html +1 -1
  116. package/.next/server/app/index.rsc +6 -6
  117. package/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -6
  118. package/.next/server/app/index.segments/_full.segment.rsc +6 -6
  119. package/.next/server/app/index.segments/_tree.segment.rsc +3 -3
  120. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  121. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  122. package/.next/server/app/page.js +8 -8
  123. package/.next/server/app/page_client-reference-manifest.js +1 -1
  124. package/.next/server/app-paths-manifest.json +8 -8
  125. package/.next/server/chunks/2430.js +4 -4
  126. package/.next/server/chunks/3379.js +1 -1
  127. package/.next/server/chunks/5582.js +2 -2
  128. package/.next/server/chunks/6429.js +1 -1
  129. package/.next/server/middleware-build-manifest.js +1 -1
  130. package/.next/server/middleware.js +3 -3
  131. package/.next/server/next-font-manifest.js +1 -1
  132. package/.next/server/next-font-manifest.json +1 -1
  133. package/.next/server/pages/404.html +1 -1
  134. package/.next/server/pages/500.html +1 -1
  135. package/.next/server/server-reference-manifest.json +1 -1
  136. package/.next/static/{tYQYRSabsPhbLX2UX8VmJ → aBYQwC6QiGm_OhFO67_iB}/_buildManifest.js +1 -1
  137. package/.next/static/chunks/5362-7d57fb3b2e15c9a1.js +7 -0
  138. package/.next/static/chunks/app/_global-error/{page-343b3c01fcb26582.js → page-c30a6d7676fbc094.js} +1 -1
  139. package/.next/static/chunks/app/_not-found/{page-8cea8d8de35f4da4.js → page-af4fe23994cb3d66.js} +1 -1
  140. package/.next/static/chunks/app/api/agent/[id]/bash-output/{route-343b3c01fcb26582.js → route-c30a6d7676fbc094.js} +1 -1
  141. package/.next/static/chunks/app/api/agent/[id]/events/{route-343b3c01fcb26582.js → route-c30a6d7676fbc094.js} +1 -1
  142. package/.next/static/chunks/app/api/agent/[id]/{route-343b3c01fcb26582.js → route-c30a6d7676fbc094.js} +1 -1
  143. package/.next/static/chunks/app/api/agent/new/route-c30a6d7676fbc094.js +1 -0
  144. package/.next/static/chunks/app/api/agent/running/route-c30a6d7676fbc094.js +1 -0
  145. package/.next/static/chunks/app/api/app-update/route-c30a6d7676fbc094.js +1 -0
  146. package/.next/static/chunks/app/api/auth/all-providers/route-c30a6d7676fbc094.js +1 -0
  147. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-c30a6d7676fbc094.js +1 -0
  148. package/.next/static/chunks/app/api/auth/login/[provider]/route-c30a6d7676fbc094.js +1 -0
  149. package/.next/static/chunks/app/api/auth/logout/[provider]/route-c30a6d7676fbc094.js +1 -0
  150. package/.next/static/chunks/app/api/auth/providers/route-c30a6d7676fbc094.js +1 -0
  151. package/.next/static/chunks/app/api/cwd/browse/route-c30a6d7676fbc094.js +1 -0
  152. package/.next/static/chunks/app/api/cwd/validate/route-c30a6d7676fbc094.js +1 -0
  153. package/.next/static/chunks/app/api/default-cwd/route-c30a6d7676fbc094.js +1 -0
  154. package/.next/static/chunks/app/api/file-index/route-c30a6d7676fbc094.js +1 -0
  155. package/.next/static/chunks/app/api/files/[...path]/route-c30a6d7676fbc094.js +1 -0
  156. package/.next/static/chunks/app/api/git/diff/route-c30a6d7676fbc094.js +1 -0
  157. package/.next/static/chunks/app/api/git/status/route-c30a6d7676fbc094.js +1 -0
  158. package/.next/static/chunks/app/api/home/route-c30a6d7676fbc094.js +1 -0
  159. package/.next/static/chunks/app/api/mcp/route-c30a6d7676fbc094.js +1 -0
  160. package/.next/static/chunks/app/api/models/route-c30a6d7676fbc094.js +1 -0
  161. package/.next/static/chunks/app/api/models-config/catalog/route-c30a6d7676fbc094.js +1 -0
  162. package/.next/static/chunks/app/api/models-config/discover/route-c30a6d7676fbc094.js +1 -0
  163. package/.next/static/chunks/app/api/models-config/route-c30a6d7676fbc094.js +1 -0
  164. package/.next/static/chunks/app/api/models-config/test/route-c30a6d7676fbc094.js +1 -0
  165. package/.next/static/chunks/app/api/plugins/route-c30a6d7676fbc094.js +1 -0
  166. package/.next/static/chunks/app/api/project-trust/route-c30a6d7676fbc094.js +1 -0
  167. package/.next/static/chunks/app/api/quota/route-c30a6d7676fbc094.js +1 -0
  168. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-c30a6d7676fbc094.js +1 -0
  169. package/.next/static/chunks/app/api/sessions/[id]/context/route-c30a6d7676fbc094.js +1 -0
  170. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-c30a6d7676fbc094.js +1 -0
  171. package/.next/static/chunks/app/api/sessions/[id]/export/route-c30a6d7676fbc094.js +1 -0
  172. package/.next/static/chunks/app/api/sessions/[id]/route-c30a6d7676fbc094.js +1 -0
  173. package/.next/static/chunks/app/api/sessions/[id]/state/route-c30a6d7676fbc094.js +1 -0
  174. package/.next/static/chunks/app/api/sessions/[id]/todos/route-c30a6d7676fbc094.js +1 -0
  175. package/.next/static/chunks/app/api/sessions/route-c30a6d7676fbc094.js +1 -0
  176. package/.next/static/chunks/app/api/skills/check/route-c30a6d7676fbc094.js +1 -0
  177. package/.next/static/chunks/app/api/skills/install/route-c30a6d7676fbc094.js +1 -0
  178. package/.next/static/chunks/app/api/skills/route-c30a6d7676fbc094.js +1 -0
  179. package/.next/static/chunks/app/api/skills/search/route-c30a6d7676fbc094.js +1 -0
  180. package/.next/static/chunks/app/api/skills/update/route-c30a6d7676fbc094.js +1 -0
  181. package/.next/static/chunks/app/api/terminal/[id]/events/route-c30a6d7676fbc094.js +1 -0
  182. package/.next/static/chunks/app/api/terminal/[id]/route-c30a6d7676fbc094.js +1 -0
  183. package/.next/static/chunks/app/api/terminal/route-c30a6d7676fbc094.js +1 -0
  184. package/.next/static/chunks/app/api/worktrees/route-c30a6d7676fbc094.js +1 -0
  185. package/.next/static/chunks/app/{layout-ffa4b9ac64cd36aa.js → layout-7846ca56f9311266.js} +1 -1
  186. package/.next/static/chunks/app/manifest.webmanifest/route-c30a6d7676fbc094.js +1 -0
  187. package/.next/static/chunks/app/page-d03a4ea86f4ab6f6.js +89 -0
  188. package/.next/static/chunks/{main-app-dd2385a1a5a588df.js → main-app-b3e8a8d15d83e1f0.js} +1 -1
  189. package/.next/static/chunks/next/dist/client/components/builtin/app-error-c30a6d7676fbc094.js +1 -0
  190. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-c30a6d7676fbc094.js +1 -0
  191. package/.next/static/chunks/next/dist/client/components/builtin/global-error-00a4badaccb388e6.js +1 -0
  192. package/.next/static/chunks/next/dist/client/components/builtin/not-found-c30a6d7676fbc094.js +1 -0
  193. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-c30a6d7676fbc094.js +1 -0
  194. package/.next/static/css/ad030894558ed286.css +1 -0
  195. package/.next/static/css/f95c353d561cddaa.css +1 -0
  196. package/.next/trace +7 -6
  197. package/.next/trace-build +1 -1
  198. package/.next/types/app/api/agent/[id]/bash-output/route.ts +1 -1
  199. package/.next/types/app/api/agent/[id]/events/route.ts +1 -1
  200. package/.next/types/app/api/agent/[id]/route.ts +1 -1
  201. package/.next/types/app/api/agent/new/route.ts +1 -1
  202. package/.next/types/app/api/agent/running/route.ts +1 -1
  203. package/.next/types/app/api/app-update/route.ts +1 -1
  204. package/.next/types/app/api/auth/all-providers/route.ts +1 -1
  205. package/.next/types/app/api/auth/api-key/[provider]/route.ts +1 -1
  206. package/.next/types/app/api/auth/login/[provider]/route.ts +1 -1
  207. package/.next/types/app/api/auth/logout/[provider]/route.ts +1 -1
  208. package/.next/types/app/api/auth/providers/route.ts +1 -1
  209. package/.next/types/app/api/cwd/browse/route.ts +1 -1
  210. package/.next/types/app/api/cwd/validate/route.ts +1 -1
  211. package/.next/types/app/api/default-cwd/route.ts +1 -1
  212. package/.next/types/app/api/file-index/route.ts +1 -1
  213. package/.next/types/app/api/files/[...path]/route.ts +1 -1
  214. package/.next/types/app/api/git/diff/route.ts +1 -1
  215. package/.next/types/app/api/git/status/route.ts +1 -1
  216. package/.next/types/app/api/home/route.ts +1 -1
  217. package/.next/types/app/api/mcp/route.ts +1 -1
  218. package/.next/types/app/api/models/route.ts +1 -1
  219. package/.next/types/app/api/models-config/catalog/route.ts +1 -1
  220. package/.next/types/app/api/models-config/discover/route.ts +1 -1
  221. package/.next/types/app/api/models-config/route.ts +1 -1
  222. package/.next/types/app/api/models-config/test/route.ts +1 -1
  223. package/.next/types/app/api/plugins/route.ts +1 -1
  224. package/.next/types/app/api/project-trust/route.ts +1 -1
  225. package/.next/types/app/api/{agent/running/events → quota}/route.ts +3 -3
  226. package/.next/types/app/api/sessions/[id]/auto-name/route.ts +1 -1
  227. package/.next/types/app/api/sessions/[id]/context/route.ts +1 -1
  228. package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +1 -1
  229. package/.next/types/app/api/sessions/[id]/export/route.ts +1 -1
  230. package/.next/types/app/api/sessions/[id]/route.ts +1 -1
  231. package/.next/types/app/api/sessions/[id]/state/route.ts +1 -1
  232. package/.next/types/app/api/sessions/[id]/todos/route.ts +1 -1
  233. package/.next/types/app/api/sessions/route.ts +1 -1
  234. package/.next/types/app/api/skills/check/route.ts +1 -1
  235. package/.next/types/app/api/skills/install/route.ts +1 -1
  236. package/.next/types/app/api/skills/route.ts +1 -1
  237. package/.next/types/app/api/skills/search/route.ts +1 -1
  238. package/.next/types/app/api/skills/update/route.ts +1 -1
  239. package/.next/types/app/api/terminal/[id]/events/route.ts +1 -1
  240. package/.next/types/app/api/terminal/[id]/route.ts +1 -1
  241. package/.next/types/app/api/terminal/route.ts +1 -1
  242. package/.next/types/app/api/worktrees/route.ts +1 -1
  243. package/.next/types/app/layout.ts +1 -1
  244. package/.next/types/app/page.ts +1 -1
  245. package/.next/types/routes.d.ts +2 -2
  246. package/.next/types/validator.ts +9 -9
  247. package/README.md +72 -123
  248. package/package.json +1 -2
  249. package/public/icons/apple-touch-icon.png +0 -0
  250. package/public/icons/icon-192.png +0 -0
  251. package/public/icons/icon-512.png +0 -0
  252. package/.next/server/app/api/agent/running/events/route.js +0 -3
  253. package/.next/server/app/api/agent/running/events/route.js.nft.json +0 -1
  254. package/.next/server/app/api/agent/running/events/route_client-reference-manifest.js +0 -1
  255. package/.next/static/chunks/4406-5d47a3d34a956b3f.js +0 -7
  256. package/.next/static/chunks/app/api/agent/new/route-343b3c01fcb26582.js +0 -1
  257. package/.next/static/chunks/app/api/agent/running/events/route-343b3c01fcb26582.js +0 -1
  258. package/.next/static/chunks/app/api/agent/running/route-343b3c01fcb26582.js +0 -1
  259. package/.next/static/chunks/app/api/app-update/route-343b3c01fcb26582.js +0 -1
  260. package/.next/static/chunks/app/api/auth/all-providers/route-343b3c01fcb26582.js +0 -1
  261. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-343b3c01fcb26582.js +0 -1
  262. package/.next/static/chunks/app/api/auth/login/[provider]/route-343b3c01fcb26582.js +0 -1
  263. package/.next/static/chunks/app/api/auth/logout/[provider]/route-343b3c01fcb26582.js +0 -1
  264. package/.next/static/chunks/app/api/auth/providers/route-343b3c01fcb26582.js +0 -1
  265. package/.next/static/chunks/app/api/cwd/browse/route-343b3c01fcb26582.js +0 -1
  266. package/.next/static/chunks/app/api/cwd/validate/route-343b3c01fcb26582.js +0 -1
  267. package/.next/static/chunks/app/api/default-cwd/route-343b3c01fcb26582.js +0 -1
  268. package/.next/static/chunks/app/api/file-index/route-343b3c01fcb26582.js +0 -1
  269. package/.next/static/chunks/app/api/files/[...path]/route-343b3c01fcb26582.js +0 -1
  270. package/.next/static/chunks/app/api/git/diff/route-343b3c01fcb26582.js +0 -1
  271. package/.next/static/chunks/app/api/git/status/route-343b3c01fcb26582.js +0 -1
  272. package/.next/static/chunks/app/api/home/route-343b3c01fcb26582.js +0 -1
  273. package/.next/static/chunks/app/api/mcp/route-343b3c01fcb26582.js +0 -1
  274. package/.next/static/chunks/app/api/models/route-343b3c01fcb26582.js +0 -1
  275. package/.next/static/chunks/app/api/models-config/catalog/route-343b3c01fcb26582.js +0 -1
  276. package/.next/static/chunks/app/api/models-config/discover/route-343b3c01fcb26582.js +0 -1
  277. package/.next/static/chunks/app/api/models-config/route-343b3c01fcb26582.js +0 -1
  278. package/.next/static/chunks/app/api/models-config/test/route-343b3c01fcb26582.js +0 -1
  279. package/.next/static/chunks/app/api/plugins/route-343b3c01fcb26582.js +0 -1
  280. package/.next/static/chunks/app/api/project-trust/route-343b3c01fcb26582.js +0 -1
  281. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-343b3c01fcb26582.js +0 -1
  282. package/.next/static/chunks/app/api/sessions/[id]/context/route-343b3c01fcb26582.js +0 -1
  283. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-343b3c01fcb26582.js +0 -1
  284. package/.next/static/chunks/app/api/sessions/[id]/export/route-343b3c01fcb26582.js +0 -1
  285. package/.next/static/chunks/app/api/sessions/[id]/route-343b3c01fcb26582.js +0 -1
  286. package/.next/static/chunks/app/api/sessions/[id]/state/route-343b3c01fcb26582.js +0 -1
  287. package/.next/static/chunks/app/api/sessions/[id]/todos/route-343b3c01fcb26582.js +0 -1
  288. package/.next/static/chunks/app/api/sessions/route-343b3c01fcb26582.js +0 -1
  289. package/.next/static/chunks/app/api/skills/check/route-343b3c01fcb26582.js +0 -1
  290. package/.next/static/chunks/app/api/skills/install/route-343b3c01fcb26582.js +0 -1
  291. package/.next/static/chunks/app/api/skills/route-343b3c01fcb26582.js +0 -1
  292. package/.next/static/chunks/app/api/skills/search/route-343b3c01fcb26582.js +0 -1
  293. package/.next/static/chunks/app/api/skills/update/route-343b3c01fcb26582.js +0 -1
  294. package/.next/static/chunks/app/api/terminal/[id]/events/route-343b3c01fcb26582.js +0 -1
  295. package/.next/static/chunks/app/api/terminal/[id]/route-343b3c01fcb26582.js +0 -1
  296. package/.next/static/chunks/app/api/terminal/route-343b3c01fcb26582.js +0 -1
  297. package/.next/static/chunks/app/api/worktrees/route-343b3c01fcb26582.js +0 -1
  298. package/.next/static/chunks/app/manifest.webmanifest/route-343b3c01fcb26582.js +0 -1
  299. package/.next/static/chunks/app/page-82c927d1cc0e7e7c.js +0 -89
  300. package/.next/static/chunks/next/dist/client/components/builtin/app-error-343b3c01fcb26582.js +0 -1
  301. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-343b3c01fcb26582.js +0 -1
  302. package/.next/static/chunks/next/dist/client/components/builtin/global-error-be943dcb89867ab9.js +0 -1
  303. package/.next/static/chunks/next/dist/client/components/builtin/not-found-343b3c01fcb26582.js +0 -1
  304. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-343b3c01fcb26582.js +0 -1
  305. package/.next/static/css/6e90300026a8f1d5.css +0 -1
  306. package/.next/static/css/8c3105d66a2c198b.css +0 -1
  307. package/README.ja.md +0 -134
  308. package/README.ru.md +0 -134
  309. package/README.zh-CN.md +0 -143
  310. /package/.next/static/{tYQYRSabsPhbLX2UX8VmJ → aBYQwC6QiGm_OhFO67_iB}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -1,179 +1,128 @@
1
- # Pi Web — Sky Edition (@baique/pi-web-sky)
1
+ # Pi Web — Sky 皮肤版(@baique/pi-web-sky
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/@baique/pi-web-sky.svg)](https://www.npmjs.com/package/@baique/pi-web-sky)
4
4
 
5
- > **Sky 皮肤版**:基于 [pi-web](https://github.com/earendil-works/pi)(经 [@agegr/pi-web](https://github.com/agegr/pi-web) 二开)的独立发行版,MIT 协议。
6
- > 在原生 pi-web 之上新增了 Sky 皮肤:毛玻璃气泡与面板、JetBrains Mono 消息字体、加深/提亮文字对比度、右上角 todo 面板、右下角堆叠弱通知。
5
+ > 本项目是 [pi-web](https://github.com/earendil-works/pi)(经 [@agegr/pi-web](https://github.com/agegr/pi-web) 二次开发)的独立发行版,MIT 协议。
6
+ > pi 原生发行版共用本机配置与会话文件——浏览器里的界面,pi 内核与全部 `~/.pi/agent` 数据照旧。
7
7
 
8
- [中文文档](./README.zh-CN.md) | [日本語](./README.ja.md) | [Русский](./README.ru.md)
8
+ [pi 编程智能体](https://github.com/earendil-works/pi) 的本地浏览器界面:查找与继续会话、运行智能体、配置模型与资源、浏览项目文件。基于上游分叉,在原生 pi-web 之上重做了视觉与交互,并持续将上游高价值 PR 手工移植回来(见 [文档](docs/upstream-ports.md))。
9
9
 
10
- Local browser UI for the [pi coding agent](https://github.com/earendil-works/pi). Pi Web uses the same local configuration and session files as pi, so you can browse and resume conversations, run agent turns, configure models and resources, and inspect project files from a browser.
10
+ **当前跟踪上游版本:0.8.11**
11
11
 
12
- ## Sky skin(本版新增)
12
+ ## 预览
13
13
 
14
- - **毛玻璃界面**:消息气泡、输入框、工具栏、扩展区、顶栏统一 frosted-glass,壁纸可透出
15
- - **JetBrains Mono 消息字体**(Consolas 回退,中文兜底)
16
- - **文字对比度**:浅色偏青蓝深色、深色偏白
17
- - **右上角 todo 面板**:窄面板展示会话 pi-todo 状态,运行中 6s 轮询 + 展开前即时刷新
18
- - **右下角堆叠弱通知**:扩展/错误等瞬时提示以小卡片堆叠在右下角,自动消失
19
- - **内置多会话终端**:两栏面板——左侧只放当前项目的终端,右侧下拉选分组列出所有项目的终端;打开面板或切换项目时若当前项目还没有终端会自动补开一个,每个终端以 `<项目名>-<4位随机>` 命名。xterm.js + 服务端 pty、SSE 流式输出,刷新后会话保留;后台重启后失联终端会标记并支持一键清理
20
- - **消息钉**:把任意消息气泡钉成置顶浮窗,可全局拖拽移动、自由缩放,钉住的消息快照在工作时始终可见
21
- - **可定制壁纸**:图片/视频壁纸,支持横向位置拖动调整、平铺重复、边缘色彩填充与一键重置
22
- - **气泡玻璃可调**:背景设置中提供滑块,可分别调节消息气泡的透明度与磨砂强度,刷新后保留
14
+ **首页**
23
15
 
24
- ![Pi Web displaying a pi session with structured Markdown, tool calls, and project navigation](https://raw.githubusercontent.com/agegr/pi-web/main/docs/screenshot2.png)
16
+ ![alt text](docs/img/首页.png)
25
17
 
26
- ## Features
18
+ **深色首页**
27
19
 
28
- - **Session workspace**: browse, resume, rename, export, and delete conversations grouped by project, with running state, context usage, cost, and compaction details.
29
- - **Two ways to branch**: **New session** creates an independent session file from an earlier message; **Edit from here** creates a branch inside the current session.
30
- - **Project file tools**: browse and upload files, inspect Git diffs, and preview source, Markdown, images, audio, PDFs, and DOCX files with automatic refresh.
31
- - **Git worktrees**: switch checkouts from the sidebar while keeping sessions from the same repository grouped together.
32
- - **Web-based configuration**: manage provider login and API keys, models, model tests, plugin packages, and skills without leaving Pi Web.
33
- - **MCP server management**: add, remove, enable, disable, update and test MCP servers from a dedicated top-bar panel (global and project `mcp.json`), including a live connectivity test that lists the tools each server exposes.
34
- - **Built-in multi-session terminal**: a two-column panel — the left column lists only the current project's terminals, and the right column is a grouped dropdown of every terminal across projects. Opening the panel (or switching projects) auto-starts a terminal for the current project when none exists, and each session is named `<project>-<4-char nanoid>`. xterm.js streams over SSE and sessions survive page refreshes; if the backend restarts, disconnected terminals are flagged and can be batch-cleaned with one click.
35
- - **Message pinning**: pin any message bubble into an always-on-top floating window over the chat — drag it anywhere and resize it freely, so a pinned snapshot of the message stays visible while you keep working.
36
- - **Customisable wallpaper**: use an image or video as the background, drag it horizontally to reposition, tile it, fill side gaps with edge-sampled colours, and reset on demand.
37
- - **Adjustable bubble glass**: sliders in the wallpaper menu control message-bubble opacity and frost blur independently, persisted across refreshes.
38
- - **English and Simplified Chinese UI**: Pi Web follows the browser language initially and provides a language switcher in the top bar.
39
- - **Security hardening**: streamed file responses carry `X-Content-Type-Options: nosniff`; inline SVG previews are served with a strict CSP and `Referrer-Policy: no-referrer` so a malicious SVG's `<script>` cannot execute inside the Pi Web origin; API Origin checks compare hostnames (tolerating Chromium dropping the port) while the host allow-list still blocks DNS rebinding and cross-loopback attacks.
20
+ ![alt text](docs/img/深色首页.png)
40
21
 
41
- ## Quick Start
22
+ **终端功能**
42
23
 
43
- Pi Web requires Node.js 22.19.0 or newer. Check your version with `node --version`, then run:
24
+ ![alt text](docs/img/终端.png)
44
25
 
45
- ```bash
46
- npx @baique/pi-web-sky@latest
47
- ```
26
+ **消息钉**
48
27
 
49
- The CLI opens a browser after the server is ready. If it does not, open [http://127.0.0.1:30143](http://127.0.0.1:30143). Pi Web listens only on `127.0.0.1` by default.
28
+ ![alt text](docs/img/消息钉.png)
50
29
 
51
- If no model provider is configured yet, open the **Models** panel to sign in or add an API key.
30
+ **浅色首页**
52
31
 
53
- To install the `pi-web-sky` command globally:
32
+ ![alt text](docs/img/浅色首页.png)
54
33
 
55
- ```bash
56
- npm install -g @baique/pi-web-sky@latest
57
- pi-web-sky
58
- ```
34
+ **AI TODO**
59
35
 
60
- To update, stop the running process with `Ctrl+C` and run the same install command again. To uninstall, run `npm uninstall -g @baique/pi-web-sky`.
36
+ ![alt text](docs/img/TODO.png)
61
37
 
62
- ## Configuration
38
+ **用户TODO**
63
39
 
64
- For port and hostname, command-line options override the corresponding environment variables. Either `--no-open` or `PI_WEB_NO_OPEN=1` disables automatic browser opening.
40
+ ![alt text](docs/img/用户TODO.png)
65
41
 
66
- | Option or environment variable | Purpose | Default |
67
- | --- | --- | --- |
68
- | `--port <port>`, `-p <port>`, or `PORT` | Server port | `30143` |
69
- | `--hostname <host>`, `-H <host>`, or `PI_WEB_HOSTNAME` | Bind hostname | `127.0.0.1` |
70
- | `--no-open` or `PI_WEB_NO_OPEN=1` | Do not open a browser automatically | Browser opens |
71
- | `PI_WEB_ALLOWED_HOSTS` | Additional exact proxy or custom hostnames, comma-separated | Unset |
72
- | `PI_WEB_PASSWORD` | Enable HTTP Basic Auth; the username is always `pi` | Authentication disabled |
42
+ ## 快速开始
73
43
 
74
- For example:
44
+ 需要 Node.js 22.19+,一行起服(默认打开浏览器,地址 `127.0.0.1:30143`):
75
45
 
76
46
  ```bash
77
- pi-web-sky -p 8080 -H 0.0.0.0 --no-open
47
+ npx @baique/pi-web-sky@latest
78
48
  ```
79
49
 
80
- ### Remote Access
81
-
82
- Binding to a non-loopback address exposes an agent that can execute high-privilege actions. On a trusted LAN, require a long random password:
50
+ 全局安装:
83
51
 
84
52
  ```bash
85
- PI_WEB_PASSWORD='a-long-random-password' pi-web --hostname 0.0.0.0
53
+ npm install -g @baique/pi-web-sky@latest
54
+ pi-web-sky
55
+ # 更新:重启进程后重跑同样命令即可;卸载:npm uninstall -g @baique/pi-web-sky
86
56
  ```
87
57
 
88
- Basic Auth does not encrypt the password in transit. Do not expose Pi Web over plain HTTP to the internet; use HTTPS through a trusted reverse proxy or a trusted VPN. If a reverse proxy sends an external hostname, add that exact name to `PI_WEB_ALLOWED_HOSTS`. This allow-list does not change the address Pi Web binds to.
58
+ 首次使用先在 **Models** 面板登录或配置 API Key。默认仅监听 `127.0.0.1`;对外暴露意味着授权该进程执行高权限操作,请务必通过 `PI_WEB_PASSWORD` 开启 Basic Auth 并在 HTTPS/VPN 内网使用。
89
59
 
90
- ### HTTP Proxy
60
+ ## 我们做了什么
91
61
 
92
- Server-side model and API requests honor the standard `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables.
62
+ 以下是我们相对原生 pi-web 的主要工作(截图为实机效果,图随文走)。
93
63
 
94
- On macOS or Linux:
64
+ ### 玻璃感 UI
95
65
 
96
- ```bash
97
- HTTP_PROXY=http://127.0.0.1:7890 \
98
- HTTPS_PROXY=http://127.0.0.1:7890 \
99
- NO_PROXY=localhost,127.0.0.1 \
100
- npx @baique/pi-web-sky@latest
101
- ```
66
+ 整站视觉重做为统一的毛玻璃体系——消息气泡、Composer 输入区、工具栏、侧边栏、todo 面板、悬浮面板与时间轴全部同款 frosted-glass,壁纸可透出。气泡与面板的模糊/饱和度按浅深主题分离调校(如浅色 `blur 12px + saturate 80%`、深色 `140%`),边框改为半透明文字色混合,消除壁纸上刺眼的纯白/纯黑描边。
102
67
 
103
- On Windows PowerShell:
68
+ 底层收敛为分层玻璃 token(`--bubble-*` 层级体系)与标准玻璃 class(`glass-top-panel/panel/popover`),组件不再散落硬编码 px/rgba;修复了 `backdrop-filter` 被根容器 z-index 截断导致毛玻璃失效、模型下拉被 containing block 劫持错位等坑。
104
69
 
105
- ```powershell
106
- $env:HTTP_PROXY = "http://127.0.0.1:7890"
107
- $env:HTTPS_PROXY = "http://127.0.0.1:7890"
108
- $env:NO_PROXY = "localhost,127.0.0.1"
109
- npx @baique/pi-web-sky@latest
110
- ```
70
+ ### 内置多会话终端
111
71
 
112
- ## Notes
72
+ 面板内置 xterm.js 终端,两栏布局——左侧只放当前项目的终端,右侧按下拉分组列出所有项目的终端;打开面板或切换项目时当前项目没有终端会自动补开一个,命名 `<项目名>-<4位随机>`。服务端 pty + SSE 流式输出,多会话并行,刷新页面后会话保留;后台重启后失联终端会标记并支持一键清理。配色随浅深主题切换,玻璃质感与消息气泡同源。
113
73
 
114
- - **Agent data**: Pi Web reads pi data from `~/.pi/agent` by default, including session files under `sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl`. Set `PI_CODING_AGENT_DIR` to use another pi agent directory.
115
- - **Filesystem access**: Pi Web must be able to read the agent data directory and the working directories recorded by its sessions. Run Pi Web in the same filesystem environment as pi when sharing existing sessions.
116
- - **Shared configuration**: the Models panel uses pi's model, settings, and credential storage, so changes are visible to both interfaces.
117
- - **File access boundary**: the file browser is limited to working directories selected in Pi Web and project or session roots it already knows about; it is not a general filesystem browser.
118
- - **Git worktrees**: see [Worktrees in Pi Web](./docs/worktrees.md) for switcher visibility, worktree creation, and removal behavior.
74
+ ### 背景图设置
119
75
 
120
- ### Downstream Session Context Menu
76
+ 图片/视频壁纸,支持横向拖动调整位置、平铺重复、边缘色彩填充缝隙、一键重置位置。背景设置里另有两支滑块,可分别调节消息气泡的**透明度与磨砂强度**,刷新后保留——喜欢厚磨砂还是近透明的玻璃,随手可调。
121
77
 
122
- Electron wrappers and other downstream integrations can provide a session-row
123
- context menu without patching `SessionSidebar`. Listen for the cancelable
124
- `pi-web:session-row-contextmenu` browser event and call `preventDefault()`
125
- synchronously when the integration will handle it:
78
+ ### 消息体验细节
126
79
 
127
- ```js
128
- window.addEventListener("pi-web:session-row-contextmenu", (event) => {
129
- event.preventDefault();
130
- const { id, path, cwd, name, clientX, clientY, refresh } = event.detail;
80
+ - **从此处编辑对齐 pi 语义**:回滚目标改为取会话树上的真实 parent,任意用户消息(会话首条、压缩后的消息、连续用户消息)都可编辑回滚——首条回滚到会话起点,与 pi 的 `navigateTree` 行为一致;顺带修复了"首条消息无法新建会话"以及该路径下会话文件不落盘的缺陷。
81
+ - **消息钉**:把任意消息气泡钉成置顶浮窗,可全局拖拽、自由缩放,关键上下文边干活边看。
82
+ - **AI 消息元信息工具栏**:模型名/字数/统计/复制/钉/时间下沉为气泡外底部工具栏,长文阅读不被头部遮挡。
83
+ - **todo 面板**:composer 顶栏 TODO 徽标与右上角窄面板实时展示会话 pi-todo 状态。
84
+ - **瞬时通知**:扩展/错误的临时提示由底部 widget shelf 就地显示、自动消退(移动端顶部居中堆叠);agent 运行状态经 composer 顶栏播报槽播报。
131
85
 
132
- void openSessionMenu({ id, path, cwd, name, clientX, clientY }).then((changed) => {
133
- if (changed) refresh();
134
- });
135
- });
136
- ```
86
+ ### 输入框草稿暂存区
137
87
 
138
- The detail object contains `id`, `path`, `cwd`, optional `name`, pointer
139
- coordinates, and a `refresh()` callback for actions that change the session
140
- list. If no listener cancels the extension event, Pi Web preserves the
141
- browser's native context menu. This hook is browser-side and independent of
142
- Pi agent extensions.
88
+ 输入内容随时 `Ctrl+S` 暂存、`Ctrl+Delete` 删除,跨会话持久,意外清空输入框也不慌;回填与正在输入的内容做冲突保护。Composer 重构为整体玻璃面板,草稿、输入框、工具条合一。
143
89
 
144
- ## Development
90
+ ### thinking-orbs 思考球
145
91
 
146
- ```bash
147
- npm install
148
- npm run dev
149
- ```
92
+ 集成 [thinking-orbs](https://www.npmjs.com/package/thinking-orbs)(MIT):等待模型、执行工具的状态行与思考块加载态统一换成呼吸/工作动画球,浅色主题下单独做对比度修正。思考块展示改为**纯文本注记**——零背景零边框、仅左侧一条细线标识思考区,长文阅读更舒服;消息气泡材质统一收敛为冒泡层级 token 体系。
150
93
 
151
- The development server runs at [http://127.0.0.1:30143](http://127.0.0.1:30143). Run the common checks with:
94
+ ### 移植上游修复(含自研补丁)
152
95
 
153
- ```bash
154
- npm test
155
- node_modules/.bin/tsc --noEmit
156
- npm run lint
157
- ```
96
+ 上游 PR 无法直接 merge(本仓库皮肤改造面大),以手工移植为主,全部经浏览器 e2e 验证:
158
97
 
159
- Do not run `next build` or `npm run build` during normal development. It writes to `.next/` and can interfere with the development server; leave builds for release work.
98
+ - **#519** 关闭技能开关把 SKILL.md 写坏(`false` 被当不存在致重复 key)
99
+ - **#590** 大图上传压缩 + 渲染 toolResult 图片
100
+ - **#517** 内置斜杠命令一次回车直接执行
101
+ - **#536** 文件管理器复制/粘贴路径
102
+ - **#587** 会话历史分页加载 + BranchNavigator 递归爆栈修复(额外补了服务端 `hasMore` 标记,修掉上游"折叠块导致上翻入口消失"的偏差)
103
+ - **#516** 打开单个会话不再全量扫目录(7ms vs 322ms)
104
+ - **#544** Origin 校验容忍 Chromium 剥端口(修复 403 白屏)
105
+ - **#520** 内联 SVG 预览加 script 拦截 CSP
106
+ - **#470** MCP 服务器管理面板(全局与项目 `mcp.json`,含连通性测试)
160
107
 
161
- Contributor guides: [Internationalization](./docs/i18n.md) and [Release process](./docs/release.md).
108
+ ### 安全与性能
162
109
 
163
- ## Repository Layout
110
+ - 流式文件响应统一 `X-Content-Type-Options: nosniff`;SVG 预览附加严格 CSP(`default-src 'none'` 等)与 `Referrer-Policy`,恶意 SVG 的脚本无法在本站点执行
111
+ - API Origin 校验只比较 hostname(容忍端口变化),host 白名单继续拦截 DNS rebinding 与跨 loopback 攻击
112
+ - **会话加载提速**:打开会话/定位会话文件只读取每个 JSONL 的首行 header(校验 id、取标题),不再整文件解析;会话列表扫描去重(并发请求合流)、缓存 TTL 30s → 5min,再消除 StrictMode 双发扫描——首开明显变快
164
113
 
165
- ```text
166
- app/ Next.js UI and API routes
167
- components/ React UI components
168
- hooks/ Client state and interaction hooks
169
- lib/ Session, agent, model, file, Git, and security logic
170
- public/ Static assets and PWA files
171
- bin/ npm CLI entrypoint and launch option parsing
172
- docs/ Focused user and contributor guides
114
+ ## 开发
115
+
116
+ ```bash
117
+ npm install
118
+ npm run dev # http://127.0.0.1:30143
119
+ node_modules/.bin/tsc --noEmit
120
+ npm run lint
121
+ npm test # 单元测试
173
122
  ```
174
123
 
175
- See [AGENTS.md](./AGENTS.md) for the architecture notes and detailed file map.
124
+ 开发期不要跑 `next build`/`npm run build`(会污染 `.next/` 影响 dev)。发版、多语言 i18n、worktree 等细节见 [docs](docs/)。
176
125
 
177
- ## License
126
+ ## 许可证
178
127
 
179
128
  [MIT](./LICENSE)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baique/pi-web-sky",
3
- "version": "0.1.24",
3
+ "version": "0.1.25",
4
4
  "description": "Web UI for the pi coding agent — Sky skin edition (fork of @agegr/pi-web / earendil-labs pi-web, MIT)",
5
5
  "homepage": "https://github.com/baique/pi-web-sky#readme",
6
6
  "repository": {
@@ -55,7 +55,6 @@
55
55
  "undici": "8.10.0"
56
56
  },
57
57
  "devDependencies": {
58
- "@lobehub/icons": "^5.6.0",
59
58
  "@tailwindcss/postcss": "^4.2.2",
60
59
  "@types/js-yaml": "^4.0.9",
61
60
  "@types/node": "^25",
Binary file
Binary file
@@ -1,3 +0,0 @@
1
- "use strict";(()=>{var a={};a.id=9043,a.ids=[9043],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},8128:a=>{a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{a.exports=c(44870)},21878:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>g,dynamic:()=>h});var e=c(56429),f=a([e]);e=(f.then?(await f)():f)[0];let h="force-dynamic";async function g(a){let b=new ReadableStream({start(b){let c=new TextEncoder,d=a=>{let d=`data: ${JSON.stringify(a)}
2
-
3
- `;b.enqueue(c.encode(d))},f=(0,e.Fn)(a=>{try{d({type:"running",runningSessionIds:a})}catch{}});d({type:"running",runningSessionIds:(0,e.HG)()});let g=setInterval(()=>{try{b.enqueue(c.encode(":\n\n"))}catch{}},3e4);a.signal?.addEventListener("abort",()=>{clearInterval(g),f();try{b.close()}catch{}})}});return new Response(b,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}d()}catch(a){d(a)}})},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},29862:a=>{a.exports=import("@earendil-works/pi-tui")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},76760:a=>{a.exports=require("node:path")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80018:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>z,patchFetch:()=>y,routeModule:()=>u,serverHooks:()=>x,workAsyncStorage:()=>v,workUnitAsyncStorage:()=>w});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(37527);let u=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/agent/running/events/route",pathname:"/api/agent/running/events",filename:"route",bundlePath:"app/api/agent/running/events/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/baique/work/develop/project/pi-web-sky/app/api/agent/running/events/route.ts",nextConfigOutput:"",userland:()=>c(21878),...{}}),{workAsyncStorage:v,workUnitAsyncStorage:w,serverHooks:x}=u;function y(){return(0,f.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:w})}async function z(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),u.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/agent/running/events/route";"/index"===d&&(d="/");let f=await u.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!f)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:v,deploymentId:w,params:x,nextConfig:y,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=f,I=(0,j.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(y.adapterPath)return await K();throw new s.NoFallbackError}}let L=null;!J||u.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===u.isDev||!J,N=J&&!M;H&&G&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,h.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,g.getRequestMeta)(a,"minimalMode"),T=(0,g.getRequestMeta)(a,"incrementalCache")||await u.getIncrementalCache(a,y,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:x,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts,useCacheTimeout:y.experimental.useCacheTimeout},cacheComponents:!!y.cacheComponents,validationLevel:y.experimental.instantInsights.validationLevel,supportsDynamicResponse:M,incrementalCache:T,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:y.cacheLife,staticPageGenerationTimeout:y.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>u.onRequestError(a,b,d,e,C)},sharedContext:{buildId:v,deploymentId:w}},V=new k.NodeNextRequest(a),W=new k.NodeNextResponse(b),X=l.NextRequestAdapter.fromNodeNextRequest(V,(0,l.signalFromNodeResponse)(b)),Y=async({previousCacheEntry:e})=>{try{if(!S&&D&&E&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await u.handle(X,U);a.fetchMetrics=U.renderOpts.fetchMetrics;let f=U.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=U.renderOpts.collectedTags;if(!J)return await (0,o.I)(V,W,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?y.expireTime:void 0:U.renderOpts.collectedExpire;return{value:{kind:t.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==e?void 0:e.isStale)&&await u.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},Z=async(d,f)=>{try{var g,i;let d=await u.handleResponse({req:a,nextConfig:y,cacheKey:L,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:Y,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return;if((null==d||null==(g=d.value)?void 0:g.kind)!==t.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);S&&J||f.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(V,W,new Response(d.value.body,{headers:f,status:d.value.status||200}));return}catch(b){if(b instanceof s.NoFallbackError||await u.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;await (0,o.I)(V,W,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||I,g=`${O} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":g}),d.updateName(g),f&&f!==d&&(f.setAttribute("http.route",e),f.updateName(g))})()}};if(R&&Q)await Z(Q,void 0);else{let b=P.getActiveScopeSpan();await P.withPropagatedContext(a.headers,()=>P.trace(m.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:h.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},a=>Z(a,b)),void 0,!R)}}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,5582,6429],()=>b(b.s=80018));module.exports=c})();