@pananfly/pi-web 0.8.1

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 (533) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +46 -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 +138 -0
  12. package/.next/react-loadable-manifest.json +2367 -0
  13. package/.next/required-server-files.js +350 -0
  14. package/.next/required-server-files.json +350 -0
  15. package/.next/routes-manifest.json +348 -0
  16. package/.next/server/app/_global-error/page.js +32 -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 +16 -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 +5 -0
  24. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  25. package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  26. package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  27. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  28. package/.next/server/app/_not-found/page.js +2 -0
  29. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  30. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  31. package/.next/server/app/_not-found.html +1 -0
  32. package/.next/server/app/_not-found.meta +16 -0
  33. package/.next/server/app/_not-found.rsc +19 -0
  34. package/.next/server/app/_not-found.segments/_full.segment.rsc +19 -0
  35. package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  36. package/.next/server/app/_not-found.segments/_index.segment.rsc +6 -0
  37. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  38. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
  39. package/.next/server/app/_not-found.segments/_tree.segment.rsc +5 -0
  40. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -0
  41. package/.next/server/app/api/agent/[id]/bash-output/route.js.nft.json +1 -0
  42. package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -0
  43. package/.next/server/app/api/agent/[id]/events/route.js +3 -0
  44. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -0
  45. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/agent/[id]/route.js +1 -0
  47. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
  48. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
  49. package/.next/server/app/api/agent/new/route.js +1 -0
  50. package/.next/server/app/api/agent/new/route.js.nft.json +1 -0
  51. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -0
  52. package/.next/server/app/api/agent/running/events/route.js +3 -0
  53. package/.next/server/app/api/agent/running/events/route.js.nft.json +1 -0
  54. package/.next/server/app/api/agent/running/events/route_client-reference-manifest.js +1 -0
  55. package/.next/server/app/api/auth/all-providers/route.js +1 -0
  56. package/.next/server/app/api/auth/all-providers/route.js.nft.json +1 -0
  57. package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -0
  58. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -0
  59. package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -0
  60. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -0
  61. package/.next/server/app/api/auth/login/[provider]/route.js +3 -0
  62. package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -0
  63. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -0
  64. package/.next/server/app/api/auth/login/route.js +1 -0
  65. package/.next/server/app/api/auth/login/route.js.nft.json +1 -0
  66. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -0
  67. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -0
  68. package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -0
  69. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/auth/logout/route.js +1 -0
  71. package/.next/server/app/api/auth/logout/route.js.nft.json +1 -0
  72. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/auth/providers/route.js +1 -0
  74. package/.next/server/app/api/auth/providers/route.js.nft.json +1 -0
  75. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/auth/refresh/route.js +1 -0
  77. package/.next/server/app/api/auth/refresh/route.js.nft.json +1 -0
  78. package/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -0
  79. package/.next/server/app/api/auth/status/route.js +1 -0
  80. package/.next/server/app/api/auth/status/route.js.nft.json +1 -0
  81. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -0
  82. package/.next/server/app/api/auth/verify/route.js +1 -0
  83. package/.next/server/app/api/auth/verify/route.js.nft.json +1 -0
  84. package/.next/server/app/api/auth/verify/route_client-reference-manifest.js +1 -0
  85. package/.next/server/app/api/cwd/validate/route.js +1 -0
  86. package/.next/server/app/api/cwd/validate/route.js.nft.json +1 -0
  87. package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -0
  88. package/.next/server/app/api/default-cwd/route.js +1 -0
  89. package/.next/server/app/api/default-cwd/route.js.nft.json +1 -0
  90. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -0
  91. package/.next/server/app/api/file-index/route.js +1 -0
  92. package/.next/server/app/api/file-index/route.js.nft.json +1 -0
  93. package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -0
  94. package/.next/server/app/api/files/[...path]/route.js +49 -0
  95. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -0
  96. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -0
  97. package/.next/server/app/api/git/diff/route.js +6 -0
  98. package/.next/server/app/api/git/diff/route.js.nft.json +1 -0
  99. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -0
  100. package/.next/server/app/api/git/status/route.js +6 -0
  101. package/.next/server/app/api/git/status/route.js.nft.json +1 -0
  102. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -0
  103. package/.next/server/app/api/home/route.js +1 -0
  104. package/.next/server/app/api/home/route.js.nft.json +1 -0
  105. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -0
  106. package/.next/server/app/api/models/route.js +1 -0
  107. package/.next/server/app/api/models/route.js.nft.json +1 -0
  108. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
  109. package/.next/server/app/api/models-config/route.js +1 -0
  110. package/.next/server/app/api/models-config/route.js.nft.json +1 -0
  111. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -0
  112. package/.next/server/app/api/models-config/test/route.js +1 -0
  113. package/.next/server/app/api/models-config/test/route.js.nft.json +1 -0
  114. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -0
  115. package/.next/server/app/api/plugins/route.js +1 -0
  116. package/.next/server/app/api/plugins/route.js.nft.json +1 -0
  117. package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -0
  118. package/.next/server/app/api/sessions/[id]/auto-name/route.js +10 -0
  119. package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -0
  120. package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -0
  121. package/.next/server/app/api/sessions/[id]/context/route.js +1 -0
  122. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -0
  123. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -0
  124. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -0
  125. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js.nft.json +1 -0
  126. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -0
  127. package/.next/server/app/api/sessions/[id]/export/route.js +54 -0
  128. package/.next/server/app/api/sessions/[id]/export/route.js.nft.json +1 -0
  129. package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -0
  130. package/.next/server/app/api/sessions/[id]/route.js +1 -0
  131. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -0
  132. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -0
  133. package/.next/server/app/api/sessions/[id]/state/route.js +1 -0
  134. package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -0
  135. package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -0
  136. package/.next/server/app/api/sessions/route.js +1 -0
  137. package/.next/server/app/api/sessions/route.js.nft.json +1 -0
  138. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -0
  139. package/.next/server/app/api/skills/check/route.js +1 -0
  140. package/.next/server/app/api/skills/check/route.js.nft.json +1 -0
  141. package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/skills/install/route.js +1 -0
  143. package/.next/server/app/api/skills/install/route.js.nft.json +1 -0
  144. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
  145. package/.next/server/app/api/skills/route.js +6 -0
  146. package/.next/server/app/api/skills/route.js.nft.json +1 -0
  147. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/skills/search/route.js +1 -0
  149. package/.next/server/app/api/skills/search/route.js.nft.json +1 -0
  150. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -0
  151. package/.next/server/app/api/skills/update/route.js +1 -0
  152. package/.next/server/app/api/skills/update/route.js.nft.json +1 -0
  153. package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -0
  154. package/.next/server/app/api/worktrees/route.js +1 -0
  155. package/.next/server/app/api/worktrees/route.js.nft.json +1 -0
  156. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -0
  157. package/.next/server/app/favicon.ico/route.js +1 -0
  158. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  159. package/.next/server/app/favicon.ico.body +0 -0
  160. package/.next/server/app/favicon.ico.meta +1 -0
  161. package/.next/server/app/index.html +1 -0
  162. package/.next/server/app/index.meta +14 -0
  163. package/.next/server/app/index.rsc +18 -0
  164. package/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
  165. package/.next/server/app/index.segments/_full.segment.rsc +18 -0
  166. package/.next/server/app/index.segments/_head.segment.rsc +6 -0
  167. package/.next/server/app/index.segments/_index.segment.rsc +6 -0
  168. package/.next/server/app/index.segments/_tree.segment.rsc +5 -0
  169. package/.next/server/app/login/page.js +2 -0
  170. package/.next/server/app/login/page.js.nft.json +1 -0
  171. package/.next/server/app/login/page_client-reference-manifest.js +1 -0
  172. package/.next/server/app/login.html +1 -0
  173. package/.next/server/app/login.meta +15 -0
  174. package/.next/server/app/login.rsc +20 -0
  175. package/.next/server/app/login.segments/_full.segment.rsc +20 -0
  176. package/.next/server/app/login.segments/_head.segment.rsc +6 -0
  177. package/.next/server/app/login.segments/_index.segment.rsc +6 -0
  178. package/.next/server/app/login.segments/_tree.segment.rsc +5 -0
  179. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +6 -0
  180. package/.next/server/app/login.segments/login.segment.rsc +5 -0
  181. package/.next/server/app/page.js +73 -0
  182. package/.next/server/app/page.js.nft.json +1 -0
  183. package/.next/server/app/page_client-reference-manifest.js +1 -0
  184. package/.next/server/app-paths-manifest.json +46 -0
  185. package/.next/server/chunks/1069.js +23 -0
  186. package/.next/server/chunks/1089.js +1 -0
  187. package/.next/server/chunks/1130.js +79 -0
  188. package/.next/server/chunks/1207.js +36 -0
  189. package/.next/server/chunks/1515.js +1 -0
  190. package/.next/server/chunks/1570.js +24 -0
  191. package/.next/server/chunks/1605.js +1 -0
  192. package/.next/server/chunks/1707.js +93 -0
  193. package/.next/server/chunks/1792.js +38 -0
  194. package/.next/server/chunks/1813.js +1 -0
  195. package/.next/server/chunks/2018.js +148 -0
  196. package/.next/server/chunks/2106.js +1 -0
  197. package/.next/server/chunks/2155.js +34 -0
  198. package/.next/server/chunks/2185.js +5 -0
  199. package/.next/server/chunks/2190.js +1 -0
  200. package/.next/server/chunks/2325.js +82 -0
  201. package/.next/server/chunks/2349.js +1 -0
  202. package/.next/server/chunks/2394.js +1 -0
  203. package/.next/server/chunks/2434.js +1 -0
  204. package/.next/server/chunks/2744.js +1 -0
  205. package/.next/server/chunks/2815.js +1 -0
  206. package/.next/server/chunks/2871.js +8 -0
  207. package/.next/server/chunks/2903.js +1 -0
  208. package/.next/server/chunks/319.js +45 -0
  209. package/.next/server/chunks/3252.js +115 -0
  210. package/.next/server/chunks/3379.js +1 -0
  211. package/.next/server/chunks/3770.js +1 -0
  212. package/.next/server/chunks/3894.js +1 -0
  213. package/.next/server/chunks/4030.js +86 -0
  214. package/.next/server/chunks/4286.js +1 -0
  215. package/.next/server/chunks/4309.js +1 -0
  216. package/.next/server/chunks/4338.js +64 -0
  217. package/.next/server/chunks/4367.js +1 -0
  218. package/.next/server/chunks/4372.js +1 -0
  219. package/.next/server/chunks/4424.js +215 -0
  220. package/.next/server/chunks/4485.js +1 -0
  221. package/.next/server/chunks/46.js +62 -0
  222. package/.next/server/chunks/4674.js +1 -0
  223. package/.next/server/chunks/4741.js +18 -0
  224. package/.next/server/chunks/4742.js +80 -0
  225. package/.next/server/chunks/4796.js +104 -0
  226. package/.next/server/chunks/4980.js +1 -0
  227. package/.next/server/chunks/5029.js +1 -0
  228. package/.next/server/chunks/5198.js +90 -0
  229. package/.next/server/chunks/5318.js +1 -0
  230. package/.next/server/chunks/5461.js +1 -0
  231. package/.next/server/chunks/5582.js +3 -0
  232. package/.next/server/chunks/5598.js +1 -0
  233. package/.next/server/chunks/5627.js +1 -0
  234. package/.next/server/chunks/6219.js +41 -0
  235. package/.next/server/chunks/6337.js +1 -0
  236. package/.next/server/chunks/6429.js +1 -0
  237. package/.next/server/chunks/6476.js +27 -0
  238. package/.next/server/chunks/6509.js +153 -0
  239. package/.next/server/chunks/6949.js +1 -0
  240. package/.next/server/chunks/6953.js +1 -0
  241. package/.next/server/chunks/703.js +1 -0
  242. package/.next/server/chunks/7152.js +1 -0
  243. package/.next/server/chunks/7181.js +160 -0
  244. package/.next/server/chunks/7233.js +1 -0
  245. package/.next/server/chunks/7307.js +1 -0
  246. package/.next/server/chunks/7434.js +77 -0
  247. package/.next/server/chunks/7561.js +1 -0
  248. package/.next/server/chunks/7872.js +1 -0
  249. package/.next/server/chunks/7914.js +226 -0
  250. package/.next/server/chunks/8267.js +24 -0
  251. package/.next/server/chunks/8294.js +1 -0
  252. package/.next/server/chunks/835.js +1 -0
  253. package/.next/server/chunks/8645.js +141 -0
  254. package/.next/server/chunks/9081.js +1 -0
  255. package/.next/server/chunks/9169.js +1 -0
  256. package/.next/server/chunks/9280.js +255 -0
  257. package/.next/server/chunks/940.js +287 -0
  258. package/.next/server/chunks/9486.js +1 -0
  259. package/.next/server/chunks/9509.js +1 -0
  260. package/.next/server/functions-config-manifest.json +15 -0
  261. package/.next/server/instrumentation.js +1 -0
  262. package/.next/server/instrumentation.js.nft.json +1 -0
  263. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  264. package/.next/server/middleware-build-manifest.js +1 -0
  265. package/.next/server/middleware-manifest.json +6 -0
  266. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  267. package/.next/server/middleware.js +18 -0
  268. package/.next/server/middleware.js.nft.json +1 -0
  269. package/.next/server/next-font-manifest.js +1 -0
  270. package/.next/server/next-font-manifest.json +1 -0
  271. package/.next/server/pages/404.html +1 -0
  272. package/.next/server/pages/500.html +1 -0
  273. package/.next/server/pages-manifest.json +4 -0
  274. package/.next/server/prefetch-hints.json +1 -0
  275. package/.next/server/server-reference-manifest.js +1 -0
  276. package/.next/server/server-reference-manifest.json +1 -0
  277. package/.next/server/webpack-runtime.js +1 -0
  278. package/.next/static/chunks/050357b0.986bc6597f184c3b.js +62 -0
  279. package/.next/static/chunks/1212.c32f02f461182c5b.js +226 -0
  280. package/.next/static/chunks/127.394be8b7a579a747.js +8 -0
  281. package/.next/static/chunks/1327.09252bb80616cc3a.js +1 -0
  282. package/.next/static/chunks/1377.e883e13864574c26.js +36 -0
  283. package/.next/static/chunks/1390.3e7d84d187924556.js +104 -0
  284. package/.next/static/chunks/1438.d742ea00e0f072ca.js +27 -0
  285. package/.next/static/chunks/1474.605367a77b6161a0.js +115 -0
  286. package/.next/static/chunks/1576.93e0666990c12243.js +38 -0
  287. package/.next/static/chunks/1951.4b73bf47740c2bfb.js +160 -0
  288. package/.next/static/chunks/2081.47b6e9391094055f.js +1 -0
  289. package/.next/static/chunks/2178.2adcd2b51553bd50.js +1 -0
  290. package/.next/static/chunks/2217.4bf1455eb89bdd9b.js +1 -0
  291. package/.next/static/chunks/2325.23caf22075e51aa5.js +1 -0
  292. package/.next/static/chunks/2356.52627097a8b56ec1.js +1 -0
  293. package/.next/static/chunks/2418.b5d9e177e10a686e.js +1 -0
  294. package/.next/static/chunks/249.973d23a3940a5fc9.js +1 -0
  295. package/.next/static/chunks/2554.ca4cb2f8bc69f32e.js +86 -0
  296. package/.next/static/chunks/2566.505384571dedf726.js +79 -0
  297. package/.next/static/chunks/2619.9aac8983f30c7c8a.js +1 -0
  298. package/.next/static/chunks/2646.c653cac657d7b035.js +215 -0
  299. package/.next/static/chunks/2784.3d8e0d20edb71dcd.js +64 -0
  300. package/.next/static/chunks/2821.934bcf60fbdc28c6.js +1 -0
  301. package/.next/static/chunks/2847.b66f6d92e4f5e495.js +23 -0
  302. package/.next/static/chunks/2866.4ecb766127917d99.js +1 -0
  303. package/.next/static/chunks/28f0fb3b.5f2b0099c24fbe32.js +122 -0
  304. package/.next/static/chunks/3308.29d4f7078e26a916.js +73 -0
  305. package/.next/static/chunks/3316.5c51b238308a838b.js +34 -0
  306. package/.next/static/chunks/3341.6042c7cb7225d88d.js +41 -0
  307. package/.next/static/chunks/339.1a094bb1c6eaf9dc.js +1 -0
  308. package/.next/static/chunks/370.57cfa27da8567918.js +1 -0
  309. package/.next/static/chunks/3708.81252290870c8487.js +1 -0
  310. package/.next/static/chunks/3794-e569667691edc8f7.js +32 -0
  311. package/.next/static/chunks/3832.5d713641634c65b5.js +24 -0
  312. package/.next/static/chunks/4368.e43e952c5535cba6.js +80 -0
  313. package/.next/static/chunks/4424.fd0c93a807a333e1.js +1 -0
  314. package/.next/static/chunks/4866.d1060b4faf2ae1e2.js +1 -0
  315. package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +1 -0
  316. package/.next/static/chunks/5020.9ac8d0dc8390bb6e.js +1 -0
  317. package/.next/static/chunks/5166.7d3648847337fe52.js +62 -0
  318. package/.next/static/chunks/5242.7b643c6b3394cac1.js +1 -0
  319. package/.next/static/chunks/5361.afc00ab2626bacbf.js +1 -0
  320. package/.next/static/chunks/5460.0337c14f29b9ff9a.js +90 -0
  321. package/.next/static/chunks/5521.cfdf2cfc6db31407.js +1 -0
  322. package/.next/static/chunks/5715.048f1bae2c41fa89.js +1 -0
  323. package/.next/static/chunks/6121.5b8cb3199531d194.js +1 -0
  324. package/.next/static/chunks/6294.24f510c0c3e3714c.js +1 -0
  325. package/.next/static/chunks/6467.b354ed428e3bef01.js +5 -0
  326. package/.next/static/chunks/66d203d7.3e90bc8f1f096a8e.js +153 -0
  327. package/.next/static/chunks/6787.a15de946178e8ef7.js +1 -0
  328. package/.next/static/chunks/7176.2979806e91c0df29.js +1 -0
  329. package/.next/static/chunks/7256.e07cf52d87d40252.js +1 -0
  330. package/.next/static/chunks/7543.89f7b805ed0f2901.js +1 -0
  331. package/.next/static/chunks/776.fe8e64ab3669a915.js +287 -0
  332. package/.next/static/chunks/8118.f905a690db2b859b.js +148 -0
  333. package/.next/static/chunks/8233.a465d18b04719c6d.js +141 -0
  334. package/.next/static/chunks/8249.7a48897e80a16391.js +1 -0
  335. package/.next/static/chunks/8311-95813758da2b283c.js +1 -0
  336. package/.next/static/chunks/8365.dc22e1ff76d04a3b.js +93 -0
  337. package/.next/static/chunks/8498.1083c36ddbbedd69.js +1 -0
  338. package/.next/static/chunks/8511.c7c064a8f58f1355.js +1 -0
  339. package/.next/static/chunks/869.7152372b662e31af.js +1 -0
  340. package/.next/static/chunks/8782.9ab86081b5661687.js +77 -0
  341. package/.next/static/chunks/8863.fa0320ea586efb3b.js +1 -0
  342. package/.next/static/chunks/8953.e5e7399c7952a1ff.js +1 -0
  343. package/.next/static/chunks/90542734.b75ad0df50bf68f5.js +1 -0
  344. package/.next/static/chunks/9165.02dc1f4804b94791.js +24 -0
  345. package/.next/static/chunks/934.9006461bd0548660.js +1 -0
  346. package/.next/static/chunks/9522.c7c6e9c330f9ba6b.js +1 -0
  347. package/.next/static/chunks/9667.c6d6228dd3c4861b.js +1 -0
  348. package/.next/static/chunks/9705.40a82b97f214e28b.js +1 -0
  349. package/.next/static/chunks/9793.4567af813117ad25.js +1 -0
  350. package/.next/static/chunks/app/_global-error/page-6270af0206ac74b6.js +1 -0
  351. package/.next/static/chunks/app/_not-found/page-3ea40c1a91b0cd39.js +1 -0
  352. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-6270af0206ac74b6.js +1 -0
  353. package/.next/static/chunks/app/api/agent/[id]/events/route-6270af0206ac74b6.js +1 -0
  354. package/.next/static/chunks/app/api/agent/[id]/route-6270af0206ac74b6.js +1 -0
  355. package/.next/static/chunks/app/api/agent/new/route-6270af0206ac74b6.js +1 -0
  356. package/.next/static/chunks/app/api/agent/running/events/route-6270af0206ac74b6.js +1 -0
  357. package/.next/static/chunks/app/api/auth/all-providers/route-6270af0206ac74b6.js +1 -0
  358. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-6270af0206ac74b6.js +1 -0
  359. package/.next/static/chunks/app/api/auth/login/[provider]/route-6270af0206ac74b6.js +1 -0
  360. package/.next/static/chunks/app/api/auth/login/route-6270af0206ac74b6.js +1 -0
  361. package/.next/static/chunks/app/api/auth/logout/[provider]/route-6270af0206ac74b6.js +1 -0
  362. package/.next/static/chunks/app/api/auth/logout/route-6270af0206ac74b6.js +1 -0
  363. package/.next/static/chunks/app/api/auth/providers/route-6270af0206ac74b6.js +1 -0
  364. package/.next/static/chunks/app/api/auth/refresh/route-6270af0206ac74b6.js +1 -0
  365. package/.next/static/chunks/app/api/auth/status/route-6270af0206ac74b6.js +1 -0
  366. package/.next/static/chunks/app/api/auth/verify/route-6270af0206ac74b6.js +1 -0
  367. package/.next/static/chunks/app/api/cwd/validate/route-6270af0206ac74b6.js +1 -0
  368. package/.next/static/chunks/app/api/default-cwd/route-6270af0206ac74b6.js +1 -0
  369. package/.next/static/chunks/app/api/file-index/route-6270af0206ac74b6.js +1 -0
  370. package/.next/static/chunks/app/api/files/[...path]/route-6270af0206ac74b6.js +1 -0
  371. package/.next/static/chunks/app/api/git/diff/route-6270af0206ac74b6.js +1 -0
  372. package/.next/static/chunks/app/api/git/status/route-6270af0206ac74b6.js +1 -0
  373. package/.next/static/chunks/app/api/home/route-6270af0206ac74b6.js +1 -0
  374. package/.next/static/chunks/app/api/models/route-6270af0206ac74b6.js +1 -0
  375. package/.next/static/chunks/app/api/models-config/route-6270af0206ac74b6.js +1 -0
  376. package/.next/static/chunks/app/api/models-config/test/route-6270af0206ac74b6.js +1 -0
  377. package/.next/static/chunks/app/api/plugins/route-6270af0206ac74b6.js +1 -0
  378. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-6270af0206ac74b6.js +1 -0
  379. package/.next/static/chunks/app/api/sessions/[id]/context/route-6270af0206ac74b6.js +1 -0
  380. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-6270af0206ac74b6.js +1 -0
  381. package/.next/static/chunks/app/api/sessions/[id]/export/route-6270af0206ac74b6.js +1 -0
  382. package/.next/static/chunks/app/api/sessions/[id]/route-6270af0206ac74b6.js +1 -0
  383. package/.next/static/chunks/app/api/sessions/[id]/state/route-6270af0206ac74b6.js +1 -0
  384. package/.next/static/chunks/app/api/sessions/route-6270af0206ac74b6.js +1 -0
  385. package/.next/static/chunks/app/api/skills/check/route-6270af0206ac74b6.js +1 -0
  386. package/.next/static/chunks/app/api/skills/install/route-6270af0206ac74b6.js +1 -0
  387. package/.next/static/chunks/app/api/skills/route-6270af0206ac74b6.js +1 -0
  388. package/.next/static/chunks/app/api/skills/search/route-6270af0206ac74b6.js +1 -0
  389. package/.next/static/chunks/app/api/skills/update/route-6270af0206ac74b6.js +1 -0
  390. package/.next/static/chunks/app/api/worktrees/route-6270af0206ac74b6.js +1 -0
  391. package/.next/static/chunks/app/layout-fc0dbec63c654527.js +1 -0
  392. package/.next/static/chunks/app/login/page-c7d96da038297463.js +1 -0
  393. package/.next/static/chunks/app/page-883e877df3335b30.js +72 -0
  394. package/.next/static/chunks/d2c09beb.4f5ff7197b5bbbea.js +1 -0
  395. package/.next/static/chunks/d3ac728e-7964f816a1ca64e5.js +1 -0
  396. package/.next/static/chunks/da12927c.00775c0e4542fd3e.js +82 -0
  397. package/.next/static/chunks/framework-711ef29bc66f648c.js +1 -0
  398. package/.next/static/chunks/main-app-6d3ca1bd083597b7.js +1 -0
  399. package/.next/static/chunks/main-b70eb01cb9d3de17.js +5 -0
  400. package/.next/static/chunks/next/dist/client/components/builtin/app-error-6270af0206ac74b6.js +1 -0
  401. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-6270af0206ac74b6.js +1 -0
  402. package/.next/static/chunks/next/dist/client/components/builtin/global-error-129b03c25e777d59.js +1 -0
  403. package/.next/static/chunks/next/dist/client/components/builtin/not-found-6270af0206ac74b6.js +1 -0
  404. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6270af0206ac74b6.js +1 -0
  405. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  406. package/.next/static/chunks/webpack-bbd44e4ff13f4c9b.js +1 -0
  407. package/.next/static/css/88714c00e109ce28.css +1 -0
  408. package/.next/static/css/afdadd5192f321e7.css +1 -0
  409. package/.next/static/media/15605e25b523335c-s.woff2 +0 -0
  410. package/.next/static/media/1a3dce5cfb5f7760-s.woff2 +0 -0
  411. package/.next/static/media/1cdd02902f937a18-s.woff2 +0 -0
  412. package/.next/static/media/4c4b3b30b6bcb2be-s.woff2 +0 -0
  413. package/.next/static/media/641a7b8a5800ee0e-s.woff2 +0 -0
  414. package/.next/static/media/7deddc85b7ffd1dc-s.p.woff2 +0 -0
  415. package/.next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  416. package/.next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  417. package/.next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  418. package/.next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  419. package/.next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  420. package/.next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  421. package/.next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  422. package/.next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  423. package/.next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  424. package/.next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  425. package/.next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  426. package/.next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  427. package/.next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  428. package/.next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  429. package/.next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  430. package/.next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  431. package/.next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  432. package/.next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
  433. package/.next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  434. package/.next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  435. package/.next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  436. package/.next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  437. package/.next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  438. package/.next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
  439. package/.next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  440. package/.next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  441. package/.next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  442. package/.next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  443. package/.next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  444. package/.next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  445. package/.next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
  446. package/.next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
  447. package/.next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  448. package/.next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  449. package/.next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  450. package/.next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  451. package/.next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  452. package/.next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  453. package/.next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  454. package/.next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  455. package/.next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  456. package/.next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  457. package/.next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  458. package/.next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
  459. package/.next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  460. package/.next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  461. package/.next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  462. package/.next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  463. package/.next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
  464. package/.next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  465. package/.next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  466. package/.next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  467. package/.next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  468. package/.next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  469. package/.next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  470. package/.next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  471. package/.next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  472. package/.next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  473. package/.next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  474. package/.next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  475. package/.next/static/media/ec14413c594b3356-s.p.woff2 +0 -0
  476. package/.next/static/rNxNXXmbOkkvQk0-VdhVR/_buildManifest.js +1 -0
  477. package/.next/static/rNxNXXmbOkkvQk0-VdhVR/_ssgManifest.js +1 -0
  478. package/.next/trace +6 -0
  479. package/.next/trace-build +1 -0
  480. package/.next/types/app/api/agent/[id]/bash-output/route.ts +351 -0
  481. package/.next/types/app/api/agent/[id]/events/route.ts +351 -0
  482. package/.next/types/app/api/agent/[id]/route.ts +351 -0
  483. package/.next/types/app/api/agent/new/route.ts +351 -0
  484. package/.next/types/app/api/agent/running/events/route.ts +351 -0
  485. package/.next/types/app/api/auth/all-providers/route.ts +351 -0
  486. package/.next/types/app/api/auth/api-key/[provider]/route.ts +351 -0
  487. package/.next/types/app/api/auth/login/[provider]/route.ts +351 -0
  488. package/.next/types/app/api/auth/login/route.ts +351 -0
  489. package/.next/types/app/api/auth/logout/[provider]/route.ts +351 -0
  490. package/.next/types/app/api/auth/logout/route.ts +351 -0
  491. package/.next/types/app/api/auth/providers/route.ts +351 -0
  492. package/.next/types/app/api/auth/refresh/route.ts +351 -0
  493. package/.next/types/app/api/auth/status/route.ts +351 -0
  494. package/.next/types/app/api/auth/verify/route.ts +351 -0
  495. package/.next/types/app/api/cwd/validate/route.ts +351 -0
  496. package/.next/types/app/api/default-cwd/route.ts +351 -0
  497. package/.next/types/app/api/file-index/route.ts +351 -0
  498. package/.next/types/app/api/files/[...path]/route.ts +351 -0
  499. package/.next/types/app/api/git/diff/route.ts +351 -0
  500. package/.next/types/app/api/git/status/route.ts +351 -0
  501. package/.next/types/app/api/home/route.ts +351 -0
  502. package/.next/types/app/api/models/route.ts +351 -0
  503. package/.next/types/app/api/models-config/route.ts +351 -0
  504. package/.next/types/app/api/models-config/test/route.ts +351 -0
  505. package/.next/types/app/api/plugins/route.ts +351 -0
  506. package/.next/types/app/api/sessions/[id]/auto-name/route.ts +351 -0
  507. package/.next/types/app/api/sessions/[id]/context/route.ts +351 -0
  508. package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +351 -0
  509. package/.next/types/app/api/sessions/[id]/export/route.ts +351 -0
  510. package/.next/types/app/api/sessions/[id]/route.ts +351 -0
  511. package/.next/types/app/api/sessions/[id]/state/route.ts +351 -0
  512. package/.next/types/app/api/sessions/route.ts +351 -0
  513. package/.next/types/app/api/skills/check/route.ts +351 -0
  514. package/.next/types/app/api/skills/install/route.ts +351 -0
  515. package/.next/types/app/api/skills/route.ts +351 -0
  516. package/.next/types/app/api/skills/search/route.ts +351 -0
  517. package/.next/types/app/api/skills/update/route.ts +351 -0
  518. package/.next/types/app/api/worktrees/route.ts +351 -0
  519. package/.next/types/app/layout.ts +87 -0
  520. package/.next/types/app/login/page.ts +87 -0
  521. package/.next/types/app/page.ts +87 -0
  522. package/.next/types/cache-life.d.ts +145 -0
  523. package/.next/types/package.json +1 -0
  524. package/.next/types/routes.d.ts +112 -0
  525. package/.next/types/validator.ts +430 -0
  526. package/LICENSE +21 -0
  527. package/README.md +140 -0
  528. package/README.zh-CN.md +136 -0
  529. package/bin/pi-web-options.js +45 -0
  530. package/bin/pi-web.js +343 -0
  531. package/lib/auth-cli.js +115 -0
  532. package/next.config.ts +37 -0
  533. package/package.json +79 -0
@@ -0,0 +1,430 @@
1
+ // This file is generated automatically by Next.js
2
+ // Do not edit this file manually
3
+ // This file validates that all pages and layouts export the correct types
4
+
5
+ import type { AppRoutes, LayoutRoutes, ParamMap, AppRouteHandlerRoutes } from "./routes.js"
6
+ import type { ResolvingMetadata, ResolvingViewport } from "next/types.js"
7
+ import type { NextRequest } from 'next/server.js'
8
+
9
+ type AppPageConfig<Route extends AppRoutes = AppRoutes> = {
10
+ default: React.ComponentType<{ params: Promise<ParamMap[Route]> } & any> | ((props: { params: Promise<ParamMap[Route]> } & any) => React.ReactNode | Promise<React.ReactNode> | never | void | Promise<void>)
11
+ generateStaticParams?: (props: { params: ParamMap[Route] }) => Promise<any[]> | any[]
12
+ generateMetadata?: (
13
+ props: { params: Promise<ParamMap[Route]> } & any,
14
+ parent: ResolvingMetadata
15
+ ) => Promise<any> | any
16
+ generateViewport?: (
17
+ props: { params: Promise<ParamMap[Route]> } & any,
18
+ parent: ResolvingViewport
19
+ ) => Promise<any> | any
20
+ metadata?: any
21
+ viewport?: any
22
+ }
23
+
24
+ type LayoutConfig<Route extends LayoutRoutes = LayoutRoutes> = {
25
+ default: React.ComponentType<LayoutProps<Route>> | ((props: LayoutProps<Route>) => React.ReactNode | Promise<React.ReactNode> | never | void | Promise<void>)
26
+ generateStaticParams?: (props: { params: ParamMap[Route] }) => Promise<any[]> | any[]
27
+ generateMetadata?: (
28
+ props: { params: Promise<ParamMap[Route]> } & any,
29
+ parent: ResolvingMetadata
30
+ ) => Promise<any> | any
31
+ generateViewport?: (
32
+ props: { params: Promise<ParamMap[Route]> } & any,
33
+ parent: ResolvingViewport
34
+ ) => Promise<any> | any
35
+ metadata?: any
36
+ viewport?: any
37
+ }
38
+
39
+ type RouteHandlerConfig<Route extends AppRouteHandlerRoutes = AppRouteHandlerRoutes> = {
40
+ GET?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
41
+ POST?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
42
+ PUT?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
43
+ PATCH?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
44
+ DELETE?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
45
+ HEAD?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
46
+ OPTIONS?: (request: NextRequest, context: { params: Promise<ParamMap[Route]> }) => Promise<Response | void> | Response | void
47
+ }
48
+
49
+
50
+ // Validate ../../app/login/page.tsx
51
+ {
52
+ type __IsExpected<Specific extends AppPageConfig<"/login">> = Specific
53
+ const handler = {} as typeof import("../../app/login/page.js")
54
+ type __Check = __IsExpected<typeof handler>
55
+ // @ts-ignore
56
+ type __Unused = __Check
57
+ }
58
+
59
+ // Validate ../../app/page.tsx
60
+ {
61
+ type __IsExpected<Specific extends AppPageConfig<"/">> = Specific
62
+ const handler = {} as typeof import("../../app/page.js")
63
+ type __Check = __IsExpected<typeof handler>
64
+ // @ts-ignore
65
+ type __Unused = __Check
66
+ }
67
+
68
+ // Validate ../../app/api/agent/[id]/bash-output/route.ts
69
+ {
70
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/agent/[id]/bash-output">> = Specific
71
+ const handler = {} as typeof import("../../app/api/agent/[id]/bash-output/route.js")
72
+ type __Check = __IsExpected<typeof handler>
73
+ // @ts-ignore
74
+ type __Unused = __Check
75
+ }
76
+
77
+ // Validate ../../app/api/agent/[id]/events/route.ts
78
+ {
79
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/agent/[id]/events">> = Specific
80
+ const handler = {} as typeof import("../../app/api/agent/[id]/events/route.js")
81
+ type __Check = __IsExpected<typeof handler>
82
+ // @ts-ignore
83
+ type __Unused = __Check
84
+ }
85
+
86
+ // Validate ../../app/api/agent/[id]/route.ts
87
+ {
88
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/agent/[id]">> = Specific
89
+ const handler = {} as typeof import("../../app/api/agent/[id]/route.js")
90
+ type __Check = __IsExpected<typeof handler>
91
+ // @ts-ignore
92
+ type __Unused = __Check
93
+ }
94
+
95
+ // Validate ../../app/api/agent/new/route.ts
96
+ {
97
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/agent/new">> = Specific
98
+ const handler = {} as typeof import("../../app/api/agent/new/route.js")
99
+ type __Check = __IsExpected<typeof handler>
100
+ // @ts-ignore
101
+ type __Unused = __Check
102
+ }
103
+
104
+ // Validate ../../app/api/agent/running/events/route.ts
105
+ {
106
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/agent/running/events">> = Specific
107
+ const handler = {} as typeof import("../../app/api/agent/running/events/route.js")
108
+ type __Check = __IsExpected<typeof handler>
109
+ // @ts-ignore
110
+ type __Unused = __Check
111
+ }
112
+
113
+ // Validate ../../app/api/auth/all-providers/route.ts
114
+ {
115
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/all-providers">> = Specific
116
+ const handler = {} as typeof import("../../app/api/auth/all-providers/route.js")
117
+ type __Check = __IsExpected<typeof handler>
118
+ // @ts-ignore
119
+ type __Unused = __Check
120
+ }
121
+
122
+ // Validate ../../app/api/auth/api-key/[provider]/route.ts
123
+ {
124
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/api-key/[provider]">> = Specific
125
+ const handler = {} as typeof import("../../app/api/auth/api-key/[provider]/route.js")
126
+ type __Check = __IsExpected<typeof handler>
127
+ // @ts-ignore
128
+ type __Unused = __Check
129
+ }
130
+
131
+ // Validate ../../app/api/auth/login/[provider]/route.ts
132
+ {
133
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/login/[provider]">> = Specific
134
+ const handler = {} as typeof import("../../app/api/auth/login/[provider]/route.js")
135
+ type __Check = __IsExpected<typeof handler>
136
+ // @ts-ignore
137
+ type __Unused = __Check
138
+ }
139
+
140
+ // Validate ../../app/api/auth/login/route.ts
141
+ {
142
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/login">> = Specific
143
+ const handler = {} as typeof import("../../app/api/auth/login/route.js")
144
+ type __Check = __IsExpected<typeof handler>
145
+ // @ts-ignore
146
+ type __Unused = __Check
147
+ }
148
+
149
+ // Validate ../../app/api/auth/logout/[provider]/route.ts
150
+ {
151
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/logout/[provider]">> = Specific
152
+ const handler = {} as typeof import("../../app/api/auth/logout/[provider]/route.js")
153
+ type __Check = __IsExpected<typeof handler>
154
+ // @ts-ignore
155
+ type __Unused = __Check
156
+ }
157
+
158
+ // Validate ../../app/api/auth/logout/route.ts
159
+ {
160
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/logout">> = Specific
161
+ const handler = {} as typeof import("../../app/api/auth/logout/route.js")
162
+ type __Check = __IsExpected<typeof handler>
163
+ // @ts-ignore
164
+ type __Unused = __Check
165
+ }
166
+
167
+ // Validate ../../app/api/auth/providers/route.ts
168
+ {
169
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/providers">> = Specific
170
+ const handler = {} as typeof import("../../app/api/auth/providers/route.js")
171
+ type __Check = __IsExpected<typeof handler>
172
+ // @ts-ignore
173
+ type __Unused = __Check
174
+ }
175
+
176
+ // Validate ../../app/api/auth/refresh/route.ts
177
+ {
178
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/refresh">> = Specific
179
+ const handler = {} as typeof import("../../app/api/auth/refresh/route.js")
180
+ type __Check = __IsExpected<typeof handler>
181
+ // @ts-ignore
182
+ type __Unused = __Check
183
+ }
184
+
185
+ // Validate ../../app/api/auth/status/route.ts
186
+ {
187
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/status">> = Specific
188
+ const handler = {} as typeof import("../../app/api/auth/status/route.js")
189
+ type __Check = __IsExpected<typeof handler>
190
+ // @ts-ignore
191
+ type __Unused = __Check
192
+ }
193
+
194
+ // Validate ../../app/api/auth/verify/route.ts
195
+ {
196
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/auth/verify">> = Specific
197
+ const handler = {} as typeof import("../../app/api/auth/verify/route.js")
198
+ type __Check = __IsExpected<typeof handler>
199
+ // @ts-ignore
200
+ type __Unused = __Check
201
+ }
202
+
203
+ // Validate ../../app/api/cwd/validate/route.ts
204
+ {
205
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/cwd/validate">> = Specific
206
+ const handler = {} as typeof import("../../app/api/cwd/validate/route.js")
207
+ type __Check = __IsExpected<typeof handler>
208
+ // @ts-ignore
209
+ type __Unused = __Check
210
+ }
211
+
212
+ // Validate ../../app/api/default-cwd/route.ts
213
+ {
214
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/default-cwd">> = Specific
215
+ const handler = {} as typeof import("../../app/api/default-cwd/route.js")
216
+ type __Check = __IsExpected<typeof handler>
217
+ // @ts-ignore
218
+ type __Unused = __Check
219
+ }
220
+
221
+ // Validate ../../app/api/file-index/route.ts
222
+ {
223
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/file-index">> = Specific
224
+ const handler = {} as typeof import("../../app/api/file-index/route.js")
225
+ type __Check = __IsExpected<typeof handler>
226
+ // @ts-ignore
227
+ type __Unused = __Check
228
+ }
229
+
230
+ // Validate ../../app/api/files/[...path]/route.ts
231
+ {
232
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/files/[...path]">> = Specific
233
+ const handler = {} as typeof import("../../app/api/files/[...path]/route.js")
234
+ type __Check = __IsExpected<typeof handler>
235
+ // @ts-ignore
236
+ type __Unused = __Check
237
+ }
238
+
239
+ // Validate ../../app/api/git/diff/route.ts
240
+ {
241
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/git/diff">> = Specific
242
+ const handler = {} as typeof import("../../app/api/git/diff/route.js")
243
+ type __Check = __IsExpected<typeof handler>
244
+ // @ts-ignore
245
+ type __Unused = __Check
246
+ }
247
+
248
+ // Validate ../../app/api/git/status/route.ts
249
+ {
250
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/git/status">> = Specific
251
+ const handler = {} as typeof import("../../app/api/git/status/route.js")
252
+ type __Check = __IsExpected<typeof handler>
253
+ // @ts-ignore
254
+ type __Unused = __Check
255
+ }
256
+
257
+ // Validate ../../app/api/home/route.ts
258
+ {
259
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/home">> = Specific
260
+ const handler = {} as typeof import("../../app/api/home/route.js")
261
+ type __Check = __IsExpected<typeof handler>
262
+ // @ts-ignore
263
+ type __Unused = __Check
264
+ }
265
+
266
+ // Validate ../../app/api/models-config/route.ts
267
+ {
268
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/models-config">> = Specific
269
+ const handler = {} as typeof import("../../app/api/models-config/route.js")
270
+ type __Check = __IsExpected<typeof handler>
271
+ // @ts-ignore
272
+ type __Unused = __Check
273
+ }
274
+
275
+ // Validate ../../app/api/models-config/test/route.ts
276
+ {
277
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/models-config/test">> = Specific
278
+ const handler = {} as typeof import("../../app/api/models-config/test/route.js")
279
+ type __Check = __IsExpected<typeof handler>
280
+ // @ts-ignore
281
+ type __Unused = __Check
282
+ }
283
+
284
+ // Validate ../../app/api/models/route.ts
285
+ {
286
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/models">> = Specific
287
+ const handler = {} as typeof import("../../app/api/models/route.js")
288
+ type __Check = __IsExpected<typeof handler>
289
+ // @ts-ignore
290
+ type __Unused = __Check
291
+ }
292
+
293
+ // Validate ../../app/api/plugins/route.ts
294
+ {
295
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/plugins">> = Specific
296
+ const handler = {} as typeof import("../../app/api/plugins/route.js")
297
+ type __Check = __IsExpected<typeof handler>
298
+ // @ts-ignore
299
+ type __Unused = __Check
300
+ }
301
+
302
+ // Validate ../../app/api/sessions/[id]/auto-name/route.ts
303
+ {
304
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]/auto-name">> = Specific
305
+ const handler = {} as typeof import("../../app/api/sessions/[id]/auto-name/route.js")
306
+ type __Check = __IsExpected<typeof handler>
307
+ // @ts-ignore
308
+ type __Unused = __Check
309
+ }
310
+
311
+ // Validate ../../app/api/sessions/[id]/context/route.ts
312
+ {
313
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]/context">> = Specific
314
+ const handler = {} as typeof import("../../app/api/sessions/[id]/context/route.js")
315
+ type __Check = __IsExpected<typeof handler>
316
+ // @ts-ignore
317
+ type __Unused = __Check
318
+ }
319
+
320
+ // Validate ../../app/api/sessions/[id]/entries/[entryId]/thinking/route.ts
321
+ {
322
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]/entries/[entryId]/thinking">> = Specific
323
+ const handler = {} as typeof import("../../app/api/sessions/[id]/entries/[entryId]/thinking/route.js")
324
+ type __Check = __IsExpected<typeof handler>
325
+ // @ts-ignore
326
+ type __Unused = __Check
327
+ }
328
+
329
+ // Validate ../../app/api/sessions/[id]/export/route.ts
330
+ {
331
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]/export">> = Specific
332
+ const handler = {} as typeof import("../../app/api/sessions/[id]/export/route.js")
333
+ type __Check = __IsExpected<typeof handler>
334
+ // @ts-ignore
335
+ type __Unused = __Check
336
+ }
337
+
338
+ // Validate ../../app/api/sessions/[id]/route.ts
339
+ {
340
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]">> = Specific
341
+ const handler = {} as typeof import("../../app/api/sessions/[id]/route.js")
342
+ type __Check = __IsExpected<typeof handler>
343
+ // @ts-ignore
344
+ type __Unused = __Check
345
+ }
346
+
347
+ // Validate ../../app/api/sessions/[id]/state/route.ts
348
+ {
349
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions/[id]/state">> = Specific
350
+ const handler = {} as typeof import("../../app/api/sessions/[id]/state/route.js")
351
+ type __Check = __IsExpected<typeof handler>
352
+ // @ts-ignore
353
+ type __Unused = __Check
354
+ }
355
+
356
+ // Validate ../../app/api/sessions/route.ts
357
+ {
358
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/sessions">> = Specific
359
+ const handler = {} as typeof import("../../app/api/sessions/route.js")
360
+ type __Check = __IsExpected<typeof handler>
361
+ // @ts-ignore
362
+ type __Unused = __Check
363
+ }
364
+
365
+ // Validate ../../app/api/skills/check/route.ts
366
+ {
367
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/skills/check">> = Specific
368
+ const handler = {} as typeof import("../../app/api/skills/check/route.js")
369
+ type __Check = __IsExpected<typeof handler>
370
+ // @ts-ignore
371
+ type __Unused = __Check
372
+ }
373
+
374
+ // Validate ../../app/api/skills/install/route.ts
375
+ {
376
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/skills/install">> = Specific
377
+ const handler = {} as typeof import("../../app/api/skills/install/route.js")
378
+ type __Check = __IsExpected<typeof handler>
379
+ // @ts-ignore
380
+ type __Unused = __Check
381
+ }
382
+
383
+ // Validate ../../app/api/skills/route.ts
384
+ {
385
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/skills">> = Specific
386
+ const handler = {} as typeof import("../../app/api/skills/route.js")
387
+ type __Check = __IsExpected<typeof handler>
388
+ // @ts-ignore
389
+ type __Unused = __Check
390
+ }
391
+
392
+ // Validate ../../app/api/skills/search/route.ts
393
+ {
394
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/skills/search">> = Specific
395
+ const handler = {} as typeof import("../../app/api/skills/search/route.js")
396
+ type __Check = __IsExpected<typeof handler>
397
+ // @ts-ignore
398
+ type __Unused = __Check
399
+ }
400
+
401
+ // Validate ../../app/api/skills/update/route.ts
402
+ {
403
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/skills/update">> = Specific
404
+ const handler = {} as typeof import("../../app/api/skills/update/route.js")
405
+ type __Check = __IsExpected<typeof handler>
406
+ // @ts-ignore
407
+ type __Unused = __Check
408
+ }
409
+
410
+ // Validate ../../app/api/worktrees/route.ts
411
+ {
412
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/worktrees">> = Specific
413
+ const handler = {} as typeof import("../../app/api/worktrees/route.js")
414
+ type __Check = __IsExpected<typeof handler>
415
+ // @ts-ignore
416
+ type __Unused = __Check
417
+ }
418
+
419
+
420
+
421
+
422
+
423
+ // Validate ../../app/layout.tsx
424
+ {
425
+ type __IsExpected<Specific extends LayoutConfig<"/">> = Specific
426
+ const handler = {} as typeof import("../../app/layout.js")
427
+ type __Check = __IsExpected<typeof handler>
428
+ // @ts-ignore
429
+ type __Unused = __Check
430
+ }
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 agegr
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,140 @@
1
+ # Pi Web
2
+
3
+ [中文文档](./README.zh-CN.md)
4
+
5
+ Local web UI for the [pi coding agent](https://github.com/badlogic/pi-mono). Pi Web reads your local pi session files and gives you a browser workspace for session browsing, real-time chat, model configuration, skill management, and project file preview.
6
+
7
+ ![Pi Web shows the same pi session with structured Markdown, tool calls, and project navigation beside the CLI](https://raw.githubusercontent.com/agegr/pi-web/main/docs/screenshot2.png)
8
+
9
+ The same pi session in CLI and Pi Web: structured tool calls, readable Markdown, session browsing, and cleaner results.
10
+
11
+ ## Quick Start
12
+
13
+ **Run without installing:**
14
+
15
+ ```bash
16
+ npx @agegr/pi-web@latest
17
+ ```
18
+
19
+ **Or install globally:**
20
+
21
+ ```bash
22
+ npm install -g @agegr/pi-web
23
+ pi-web
24
+ ```
25
+
26
+ Then open [http://localhost:30141](http://localhost:30141). The CLI will try to open the browser automatically after the server is ready.
27
+
28
+ **Options:**
29
+
30
+ ```bash
31
+ pi-web --port 8080 # custom port
32
+ pi-web --hostname 127.0.0.1 # local access only
33
+ pi-web -p 8080 -H 127.0.0.1 # combine options
34
+ pi-web --no-open # do not open the browser automatically
35
+
36
+ PORT=8080 pi-web # environment variable is also supported
37
+ PI_WEB_NO_OPEN=1 pi-web # useful when running as a background service
38
+ ```
39
+
40
+ ## HTTP Proxy
41
+
42
+ Pi Web reads the standard `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables for server-side model and API requests.
43
+
44
+ On macOS or Linux:
45
+
46
+ ```bash
47
+ HTTP_PROXY=http://127.0.0.1:7890 \
48
+ HTTPS_PROXY=http://127.0.0.1:7890 \
49
+ NO_PROXY=localhost,127.0.0.1 \
50
+ npx @agegr/pi-web@latest
51
+ ```
52
+
53
+ On Windows PowerShell:
54
+
55
+ ```powershell
56
+ $env:HTTP_PROXY = "http://127.0.0.1:7890"
57
+ $env:HTTPS_PROXY = "http://127.0.0.1:7890"
58
+ $env:NO_PROXY = "localhost,127.0.0.1"
59
+ npx @agegr/pi-web@latest
60
+ ```
61
+
62
+ ## Features
63
+
64
+ - **Pick work back up**: browse previous pi conversations by project without digging through terminal history or session paths.
65
+ - **Try different directions safely**: continue from an earlier message or fork a session into a separate route.
66
+ - **Work across branches**: switch Git worktrees from the sidebar so new sessions and the Explorer follow the checkout you choose.
67
+ - **Chat beside the project**: browse files on the left and preview source, docs, images, audio, and PDFs on the right while the agent works.
68
+ - **See session state clearly**: context usage, cost, compaction state, and system prompt details are visible from the top bar.
69
+ - **Configure less from the terminal**: manage models, login/API keys, model tests, and skill switches from the web UI.
70
+
71
+ ## Notes
72
+
73
+ - **Data directory**: Pi Web reads `~/.pi/agent/sessions` by default. Set `PI_CODING_AGENT_DIR` to point at another pi agent directory.
74
+ - **Session files**: files are stored as `~/.pi/agent/sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl`.
75
+ - **Model config**: the Models panel reads and writes `models.json` in the pi agent directory. Model lists and defaults come from pi's config.
76
+ - **File access**: file browsing and preview are scoped to the selected project directory and working directories that appear in sessions.
77
+ - **Git worktrees**: see [Worktrees in Pi Web](./docs/worktrees.md) for when the switcher appears, how new worktrees are created, and what removal does.
78
+ - **Forks vs in-session branches**: Fork creates a new `.jsonl` file. "Edit from here" creates another branch inside the same session file.
79
+
80
+ ## Development
81
+
82
+ ```bash
83
+ npm install
84
+ npm run dev
85
+ ```
86
+
87
+ The local dev server runs at [http://localhost:30141](http://localhost:30141).
88
+
89
+ Common checks:
90
+
91
+ ```bash
92
+ node_modules/.bin/tsc --noEmit
93
+ npm run lint
94
+ ```
95
+
96
+ Avoid running `next build` / `npm run build` during local development. It writes to `.next/` and can interfere with the dev server; leave builds for release work.
97
+
98
+ ## Project Structure
99
+
100
+ ```text
101
+ app/
102
+ api/
103
+ agent/ # creates/drives AgentSession and exposes SSE events
104
+ auth/ # OAuth and API key management
105
+ cwd/validate/ # custom working directory validation
106
+ default-cwd/ # pi default working directory lookup
107
+ files/ # file listing, reading, preview, and watching
108
+ home/ # current user home directory
109
+ models/ # available models, default model, thinking levels
110
+ models-config/ # read/write models.json and test models
111
+ sessions/ # session reads, rename, delete, context, HTML export
112
+ skills/ # skill listing, search, install, enable/disable
113
+ components/
114
+ AppShell.tsx # main layout, URL state, top panels, file tabs
115
+ SessionSidebar.tsx # project selector, session tree, Explorer
116
+ ChatWindow.tsx # messages, SSE, image drag/drop, minimap
117
+ ChatInput.tsx # input bar, model/tools/thinking/compact/slash controls
118
+ MessageView.tsx # message, thinking, tool call/result rendering
119
+ ModelsConfig.tsx # model and auth configuration panel
120
+ SkillsConfig.tsx # skill management panel
121
+ FileExplorer.tsx # file tree
122
+ FileViewer.tsx # source, diff, image, audio, PDF, DOCX preview
123
+ lib/
124
+ http-dispatcher.ts # HTTP(S) proxy setup for server-side fetch
125
+ rpc-manager.ts # AgentSessionWrapper lifecycle and global registry
126
+ session-reader.ts # parses .jsonl session files and branch contexts
127
+ normalize.ts # normalizes toolCall field names
128
+ file-access.ts # file read safety boundary
129
+ file-paths.ts # path encoding and relative path helpers
130
+ markdown.ts # Markdown/Mermaid/KaTeX plugin configuration
131
+ pi-types.ts # pi-related types
132
+ hooks/
133
+ useAgentSession.ts # session loading, command sending, SSE state machine
134
+ useAudio.ts # completion sound
135
+ useDragDrop.ts # image drag/drop
136
+ useTheme.ts # theme switching
137
+ bin/
138
+ pi-web.js # npm CLI entrypoint
139
+ instrumentation.ts # initializes the server HTTP dispatcher
140
+ ```