@baique/pi-web-sky 0.1.54 → 0.1.56

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 (509) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +14 -10
  3. package/.next/build-manifest.json +4 -4
  4. package/.next/next-server.js.nft.json +1 -1
  5. package/.next/prerender-manifest.json +6 -6
  6. package/.next/react-loadable-manifest.json +3 -3
  7. package/.next/required-server-files.js +6 -6
  8. package/.next/required-server-files.json +6 -6
  9. package/.next/routes-manifest.json +28 -0
  10. package/.next/server/app/_global-error/page.js +2 -2
  11. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/_global-error.html +1 -1
  13. package/.next/server/app/_global-error.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/.next/server/app/_not-found/page.js +1 -1
  18. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  19. package/.next/server/app/_not-found.html +1 -1
  20. package/.next/server/app/_not-found.rsc +4 -3
  21. package/.next/server/app/_not-found.segments/_full.segment.rsc +4 -3
  22. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -3
  23. package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -2
  24. package/.next/server/app/api/agent/[id]/bash-output/route.js +2 -2
  25. package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  27. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
  28. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/agent/[id]/route.js +1 -1
  30. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
  31. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/agent/new/route.js +1 -1
  33. package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
  34. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/agent/running/route.js +1 -1
  36. package/.next/server/app/api/agent/running/route.js.nft.json +1 -1
  37. package/.next/server/app/api/agent/running/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/api/app-update/route.js +1 -1
  39. package/.next/server/app/api/app-update/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  41. package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  43. package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -1
  44. package/.next/server/app/api/auth/login/[provider]/route.js +1 -1
  45. package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  47. package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/auth/providers/route.js +1 -1
  49. package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/board-assets/[...path]/route.js +2 -2
  51. package/.next/server/app/api/board-assets/[...path]/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/board-assets/route.js +2 -2
  53. package/.next/server/app/api/board-assets/route_client-reference-manifest.js +1 -1
  54. package/.next/server/app/api/boards/[id]/add-session/route.js +1 -0
  55. package/.next/server/app/api/boards/[id]/add-session/route.js.nft.json +1 -0
  56. package/.next/server/app/api/boards/[id]/add-session/route_client-reference-manifest.js +1 -0
  57. package/.next/server/app/api/boards/[id]/reconcile/route.js +1 -1
  58. package/.next/server/app/api/boards/[id]/reconcile/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/boards/[id]/route.js +1 -1
  60. package/.next/server/app/api/boards/[id]/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/boards/reorder/route.js +2 -2
  62. package/.next/server/app/api/boards/reorder/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/boards/route.js +2 -2
  64. package/.next/server/app/api/boards/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/cwd/browse/route.js +1 -1
  66. package/.next/server/app/api/cwd/browse/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/cwd/validate/route.js +2 -2
  68. package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/default-cwd/route.js +2 -2
  70. package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -1
  71. package/.next/server/app/api/file-index/route.js +2 -2
  72. package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/files/[...path]/route.js +3 -3
  74. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -1
  75. package/.next/server/app/api/git/diff/route.js +1 -1
  76. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/git/status/route.js +1 -1
  78. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/api/home/route.js +1 -1
  80. package/.next/server/app/api/home/route_client-reference-manifest.js +1 -1
  81. package/.next/server/app/api/mcp/route.js +2 -2
  82. package/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  83. package/.next/server/app/api/models/route.js +2 -2
  84. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  85. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  86. package/.next/server/app/api/models-config/catalog/route_client-reference-manifest.js +1 -1
  87. package/.next/server/app/api/models-config/discover/route.js +1 -1
  88. package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -1
  89. package/.next/server/app/api/models-config/route.js +1 -1
  90. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -1
  91. package/.next/server/app/api/models-config/test/route.js +1 -1
  92. package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/api/plugins/route.js +2 -2
  94. package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/api/project-trust/route.js +1 -1
  96. package/.next/server/app/api/project-trust/route.js.nft.json +1 -1
  97. package/.next/server/app/api/project-trust/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/quota/route.js +1 -1
  99. package/.next/server/app/api/quota/route_client-reference-manifest.js +1 -1
  100. package/.next/server/app/api/search/route.js +2 -2
  101. package/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/api/sessions/[id]/auto-name/route.js +2 -2
  103. package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -1
  104. package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  106. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
  107. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +2 -2
  109. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -1
  110. package/.next/server/app/api/sessions/[id]/export/route.js +3 -3
  111. package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -1
  112. package/.next/server/app/api/sessions/[id]/minimap/route.js +1 -1
  113. package/.next/server/app/api/sessions/[id]/minimap/route.js.nft.json +1 -1
  114. package/.next/server/app/api/sessions/[id]/minimap/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  116. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  117. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -1
  118. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  119. package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -1
  120. package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -1
  121. package/.next/server/app/api/sessions/[id]/todos/route.js +1 -1
  122. package/.next/server/app/api/sessions/[id]/todos/route.js.nft.json +1 -1
  123. package/.next/server/app/api/sessions/[id]/todos/route_client-reference-manifest.js +1 -1
  124. package/.next/server/app/api/sessions/route.js +1 -1
  125. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  126. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/sessions/summary/route.js +2 -2
  128. package/.next/server/app/api/sessions/summary/route_client-reference-manifest.js +1 -1
  129. package/.next/server/app/api/skills/check/route.js +1 -1
  130. package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -1
  131. package/.next/server/app/api/skills/install/route.js +2 -2
  132. package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -1
  133. package/.next/server/app/api/skills/route.js +1 -1
  134. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  135. package/.next/server/app/api/skills/search/route.js +1 -1
  136. package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/skills/update/route.js +1 -1
  138. package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -1
  139. package/.next/server/app/api/subagents/[id]/route.js +1 -0
  140. package/.next/server/app/api/subagents/[id]/route.js.nft.json +1 -0
  141. package/.next/server/app/api/subagents/[id]/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/subagents/profiles/route.js +30 -0
  143. package/.next/server/app/api/subagents/profiles/route.js.nft.json +1 -0
  144. package/.next/server/app/api/subagents/profiles/route_client-reference-manifest.js +1 -0
  145. package/.next/server/app/api/subagents/settings/route.js +1 -0
  146. package/.next/server/app/api/subagents/settings/route.js.nft.json +1 -0
  147. package/.next/server/app/api/subagents/settings/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/task-card-questions/[id]/answer/route.js +2 -2
  149. package/.next/server/app/api/task-card-questions/[id]/answer/route_client-reference-manifest.js +1 -1
  150. package/.next/server/app/api/task-card-questions/route.js +2 -2
  151. package/.next/server/app/api/task-card-questions/route_client-reference-manifest.js +1 -1
  152. package/.next/server/app/api/task-cards/[id]/route.js +1 -1
  153. package/.next/server/app/api/task-cards/[id]/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/api/task-cards/route.js +1 -1
  155. package/.next/server/app/api/task-cards/route_client-reference-manifest.js +1 -1
  156. package/.next/server/app/api/task-cards/unbind/route.js +3 -3
  157. package/.next/server/app/api/task-cards/unbind/route_client-reference-manifest.js +1 -1
  158. package/.next/server/app/api/task-scheduler/status/route.js +1 -1
  159. package/.next/server/app/api/task-scheduler/status/route.js.nft.json +1 -1
  160. package/.next/server/app/api/task-scheduler/status/route_client-reference-manifest.js +1 -1
  161. package/.next/server/app/api/tasks/[id]/assign-session/route.js +12 -12
  162. package/.next/server/app/api/tasks/[id]/assign-session/route_client-reference-manifest.js +1 -1
  163. package/.next/server/app/api/tasks/[id]/board/route.js +1 -1
  164. package/.next/server/app/api/tasks/[id]/board/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/api/tasks/[id]/route.js +1 -1
  166. package/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  167. package/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/api/tasks/reorder/route.js +12 -12
  169. package/.next/server/app/api/tasks/reorder/route_client-reference-manifest.js +1 -1
  170. package/.next/server/app/api/tasks/route.js +12 -12
  171. package/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  172. package/.next/server/app/api/terminal/[id]/events/route.js +3 -3
  173. package/.next/server/app/api/terminal/[id]/events/route_client-reference-manifest.js +1 -1
  174. package/.next/server/app/api/terminal/[id]/route.js +2 -2
  175. package/.next/server/app/api/terminal/[id]/route_client-reference-manifest.js +1 -1
  176. package/.next/server/app/api/terminal/route.js +2 -2
  177. package/.next/server/app/api/terminal/route_client-reference-manifest.js +1 -1
  178. package/.next/server/app/api/worktrees/route.js +2 -2
  179. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/api/yjs-version/route.js +1 -1
  181. package/.next/server/app/api/yjs-version/route_client-reference-manifest.js +1 -1
  182. package/.next/server/app/favicon.ico/route.js +1 -1
  183. package/.next/server/app/index.html +1 -1
  184. package/.next/server/app/index.rsc +6 -5
  185. package/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -5
  186. package/.next/server/app/index.segments/_full.segment.rsc +6 -5
  187. package/.next/server/app/index.segments/_tree.segment.rsc +3 -2
  188. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  189. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  190. package/.next/server/app/page.js +175 -8
  191. package/.next/server/app/page_client-reference-manifest.js +1 -1
  192. package/.next/server/app-paths-manifest.json +14 -10
  193. package/.next/server/chunks/1937.js +1 -1
  194. package/.next/server/chunks/2430.js +4 -4
  195. package/.next/server/chunks/3500.js +1 -1
  196. package/.next/server/chunks/402.js +13 -3
  197. package/.next/server/chunks/426.js +14 -0
  198. package/.next/server/chunks/4457.js +13 -13
  199. package/.next/server/chunks/542.js +23 -4
  200. package/.next/server/chunks/5794.js +2 -2
  201. package/.next/server/chunks/5940.js +1 -1
  202. package/.next/server/chunks/6429.js +15 -2
  203. package/.next/server/chunks/6525.js +12 -2
  204. package/.next/server/chunks/6583.js +1 -1
  205. package/.next/server/chunks/7048.js +6 -0
  206. package/.next/server/instrumentation.js +1 -1
  207. package/.next/server/middleware-build-manifest.js +1 -1
  208. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  209. package/.next/server/middleware.js +3 -3
  210. package/.next/server/next-font-manifest.js +1 -1
  211. package/.next/server/next-font-manifest.json +1 -1
  212. package/.next/server/pages/404.html +1 -1
  213. package/.next/server/pages/500.html +1 -1
  214. package/.next/server/server-reference-manifest.json +1 -1
  215. package/.next/static/chunks/752.adce8bc3ebbaf4b6.js +1 -0
  216. package/.next/static/chunks/8088.0cad1ff2e09fd8ff.js +1 -0
  217. package/.next/static/chunks/app/_global-error/page-ad6e695deb9de65c.js +1 -0
  218. package/.next/static/chunks/app/_not-found/page-63a39396532d2582.js +1 -0
  219. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-ad6e695deb9de65c.js +1 -0
  220. package/.next/static/chunks/app/api/agent/[id]/events/route-ad6e695deb9de65c.js +1 -0
  221. package/.next/static/chunks/app/api/agent/[id]/route-ad6e695deb9de65c.js +1 -0
  222. package/.next/static/chunks/app/api/agent/new/route-ad6e695deb9de65c.js +1 -0
  223. package/.next/static/chunks/app/api/agent/running/route-ad6e695deb9de65c.js +1 -0
  224. package/.next/static/chunks/app/api/app-update/route-ad6e695deb9de65c.js +1 -0
  225. package/.next/static/chunks/app/api/auth/all-providers/route-ad6e695deb9de65c.js +1 -0
  226. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-ad6e695deb9de65c.js +1 -0
  227. package/.next/static/chunks/app/api/auth/login/[provider]/route-ad6e695deb9de65c.js +1 -0
  228. package/.next/static/chunks/app/api/auth/logout/[provider]/route-ad6e695deb9de65c.js +1 -0
  229. package/.next/static/chunks/app/api/auth/providers/route-ad6e695deb9de65c.js +1 -0
  230. package/.next/static/chunks/app/api/board-assets/[...path]/route-ad6e695deb9de65c.js +1 -0
  231. package/.next/static/chunks/app/api/board-assets/route-ad6e695deb9de65c.js +1 -0
  232. package/.next/static/chunks/app/api/boards/[id]/add-session/route-ad6e695deb9de65c.js +1 -0
  233. package/.next/static/chunks/app/api/boards/[id]/reconcile/route-ad6e695deb9de65c.js +1 -0
  234. package/.next/static/chunks/app/api/boards/[id]/route-ad6e695deb9de65c.js +1 -0
  235. package/.next/static/chunks/app/api/boards/reorder/route-ad6e695deb9de65c.js +1 -0
  236. package/.next/static/chunks/app/api/boards/route-ad6e695deb9de65c.js +1 -0
  237. package/.next/static/chunks/app/api/cwd/browse/route-ad6e695deb9de65c.js +1 -0
  238. package/.next/static/chunks/app/api/cwd/validate/route-ad6e695deb9de65c.js +1 -0
  239. package/.next/static/chunks/app/api/default-cwd/route-ad6e695deb9de65c.js +1 -0
  240. package/.next/static/chunks/app/api/file-index/route-ad6e695deb9de65c.js +1 -0
  241. package/.next/static/chunks/app/api/files/[...path]/route-ad6e695deb9de65c.js +1 -0
  242. package/.next/static/chunks/app/api/git/diff/route-ad6e695deb9de65c.js +1 -0
  243. package/.next/static/chunks/app/api/git/status/route-ad6e695deb9de65c.js +1 -0
  244. package/.next/static/chunks/app/api/home/route-ad6e695deb9de65c.js +1 -0
  245. package/.next/static/chunks/app/api/mcp/route-ad6e695deb9de65c.js +1 -0
  246. package/.next/static/chunks/app/api/models/route-ad6e695deb9de65c.js +1 -0
  247. package/.next/static/chunks/app/api/models-config/catalog/route-ad6e695deb9de65c.js +1 -0
  248. package/.next/static/chunks/app/api/models-config/discover/route-ad6e695deb9de65c.js +1 -0
  249. package/.next/static/chunks/app/api/models-config/route-ad6e695deb9de65c.js +1 -0
  250. package/.next/static/chunks/app/api/models-config/test/route-ad6e695deb9de65c.js +1 -0
  251. package/.next/static/chunks/app/api/plugins/route-ad6e695deb9de65c.js +1 -0
  252. package/.next/static/chunks/app/api/project-trust/route-ad6e695deb9de65c.js +1 -0
  253. package/.next/static/chunks/app/api/quota/route-ad6e695deb9de65c.js +1 -0
  254. package/.next/static/chunks/app/api/search/route-ad6e695deb9de65c.js +1 -0
  255. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-ad6e695deb9de65c.js +1 -0
  256. package/.next/static/chunks/app/api/sessions/[id]/context/route-ad6e695deb9de65c.js +1 -0
  257. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-ad6e695deb9de65c.js +1 -0
  258. package/.next/static/chunks/app/api/sessions/[id]/export/route-ad6e695deb9de65c.js +1 -0
  259. package/.next/static/chunks/app/api/sessions/[id]/minimap/route-ad6e695deb9de65c.js +1 -0
  260. package/.next/static/chunks/app/api/sessions/[id]/route-ad6e695deb9de65c.js +1 -0
  261. package/.next/static/chunks/app/api/sessions/[id]/state/route-ad6e695deb9de65c.js +1 -0
  262. package/.next/static/chunks/app/api/sessions/[id]/todos/route-ad6e695deb9de65c.js +1 -0
  263. package/.next/static/chunks/app/api/sessions/route-ad6e695deb9de65c.js +1 -0
  264. package/.next/static/chunks/app/api/sessions/summary/route-ad6e695deb9de65c.js +1 -0
  265. package/.next/static/chunks/app/api/skills/check/route-ad6e695deb9de65c.js +1 -0
  266. package/.next/static/chunks/app/api/skills/install/route-ad6e695deb9de65c.js +1 -0
  267. package/.next/static/chunks/app/api/skills/route-ad6e695deb9de65c.js +1 -0
  268. package/.next/static/chunks/app/api/skills/search/route-ad6e695deb9de65c.js +1 -0
  269. package/.next/static/chunks/app/api/skills/update/route-ad6e695deb9de65c.js +1 -0
  270. package/.next/static/chunks/app/api/subagents/[id]/route-ad6e695deb9de65c.js +1 -0
  271. package/.next/static/chunks/app/api/subagents/profiles/route-ad6e695deb9de65c.js +1 -0
  272. package/.next/static/chunks/app/api/subagents/settings/route-ad6e695deb9de65c.js +1 -0
  273. package/.next/static/chunks/app/api/task-card-questions/[id]/answer/route-ad6e695deb9de65c.js +1 -0
  274. package/.next/static/chunks/app/api/task-card-questions/route-ad6e695deb9de65c.js +1 -0
  275. package/.next/static/chunks/app/api/task-cards/[id]/route-ad6e695deb9de65c.js +1 -0
  276. package/.next/static/chunks/app/api/task-cards/route-ad6e695deb9de65c.js +1 -0
  277. package/.next/static/chunks/app/api/task-cards/unbind/route-ad6e695deb9de65c.js +1 -0
  278. package/.next/static/chunks/app/api/task-scheduler/status/route-ad6e695deb9de65c.js +1 -0
  279. package/.next/static/chunks/app/api/tasks/[id]/assign-session/route-ad6e695deb9de65c.js +1 -0
  280. package/.next/static/chunks/app/api/tasks/[id]/board/route-ad6e695deb9de65c.js +1 -0
  281. package/.next/static/chunks/app/api/tasks/[id]/route-ad6e695deb9de65c.js +1 -0
  282. package/.next/static/chunks/app/api/tasks/reorder/route-ad6e695deb9de65c.js +1 -0
  283. package/.next/static/chunks/app/api/tasks/route-ad6e695deb9de65c.js +1 -0
  284. package/.next/static/chunks/app/api/terminal/[id]/events/route-ad6e695deb9de65c.js +1 -0
  285. package/.next/static/chunks/app/api/terminal/[id]/route-ad6e695deb9de65c.js +1 -0
  286. package/.next/static/chunks/app/api/terminal/route-ad6e695deb9de65c.js +1 -0
  287. package/.next/static/chunks/app/api/worktrees/route-ad6e695deb9de65c.js +1 -0
  288. package/.next/static/chunks/app/api/yjs-version/route-ad6e695deb9de65c.js +1 -0
  289. package/.next/static/chunks/app/layout-87087b955e0c9507.js +1 -0
  290. package/.next/static/chunks/app/manifest.webmanifest/route-ad6e695deb9de65c.js +1 -0
  291. package/.next/static/chunks/app/page-efca6bf51a5f8ccb.js +256 -0
  292. package/.next/static/chunks/main-app-1f89e7ad7ae1ff87.js +1 -0
  293. package/.next/static/chunks/next/dist/client/components/builtin/app-error-ad6e695deb9de65c.js +1 -0
  294. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ad6e695deb9de65c.js +1 -0
  295. package/.next/static/chunks/next/dist/client/components/builtin/global-error-d3784ab2e32f3c6e.js +1 -0
  296. package/.next/static/chunks/next/dist/client/components/builtin/not-found-ad6e695deb9de65c.js +1 -0
  297. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ad6e695deb9de65c.js +1 -0
  298. package/.next/static/chunks/{webpack-3df5ae3897959c33.js → webpack-4de8e8dd9f2f3173.js} +1 -1
  299. package/.next/static/css/bb9361c7f832a89d.css +1 -0
  300. package/.next/static/css/c6d32b6031181be7.css +1 -0
  301. package/.next/static/k8ZFqwz7d-bnK0ZiUVgCc/_buildManifest.js +1 -0
  302. package/.next/trace +7 -8
  303. package/.next/trace-build +1 -1
  304. package/.next/types/app/api/agent/[id]/bash-output/route.ts +1 -1
  305. package/.next/types/app/api/agent/[id]/events/route.ts +1 -1
  306. package/.next/types/app/api/agent/[id]/route.ts +1 -1
  307. package/.next/types/app/api/agent/new/route.ts +1 -1
  308. package/.next/types/app/api/agent/running/route.ts +1 -1
  309. package/.next/types/app/api/app-update/route.ts +1 -1
  310. package/.next/types/app/api/auth/all-providers/route.ts +1 -1
  311. package/.next/types/app/api/auth/api-key/[provider]/route.ts +1 -1
  312. package/.next/types/app/api/auth/login/[provider]/route.ts +1 -1
  313. package/.next/types/app/api/auth/logout/[provider]/route.ts +1 -1
  314. package/.next/types/app/api/auth/providers/route.ts +1 -1
  315. package/.next/types/app/api/board-assets/[...path]/route.ts +1 -1
  316. package/.next/types/app/api/board-assets/route.ts +1 -1
  317. package/.next/types/app/api/boards/[id]/add-session/route.ts +353 -0
  318. package/.next/types/app/api/boards/[id]/reconcile/route.ts +1 -1
  319. package/.next/types/app/api/boards/[id]/route.ts +1 -1
  320. package/.next/types/app/api/boards/reorder/route.ts +1 -1
  321. package/.next/types/app/api/boards/route.ts +1 -1
  322. package/.next/types/app/api/cwd/browse/route.ts +1 -1
  323. package/.next/types/app/api/cwd/validate/route.ts +1 -1
  324. package/.next/types/app/api/default-cwd/route.ts +1 -1
  325. package/.next/types/app/api/file-index/route.ts +1 -1
  326. package/.next/types/app/api/files/[...path]/route.ts +1 -1
  327. package/.next/types/app/api/git/diff/route.ts +1 -1
  328. package/.next/types/app/api/git/status/route.ts +1 -1
  329. package/.next/types/app/api/home/route.ts +1 -1
  330. package/.next/types/app/api/mcp/route.ts +1 -1
  331. package/.next/types/app/api/models/route.ts +1 -1
  332. package/.next/types/app/api/models-config/catalog/route.ts +1 -1
  333. package/.next/types/app/api/models-config/discover/route.ts +1 -1
  334. package/.next/types/app/api/models-config/route.ts +1 -1
  335. package/.next/types/app/api/models-config/test/route.ts +1 -1
  336. package/.next/types/app/api/plugins/route.ts +1 -1
  337. package/.next/types/app/api/project-trust/route.ts +1 -1
  338. package/.next/types/app/api/quota/route.ts +1 -1
  339. package/.next/types/app/api/search/route.ts +1 -1
  340. package/.next/types/app/api/sessions/[id]/auto-name/route.ts +1 -1
  341. package/.next/types/app/api/sessions/[id]/context/route.ts +1 -1
  342. package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +1 -1
  343. package/.next/types/app/api/sessions/[id]/export/route.ts +1 -1
  344. package/.next/types/app/api/sessions/[id]/minimap/route.ts +1 -1
  345. package/.next/types/app/api/sessions/[id]/route.ts +1 -1
  346. package/.next/types/app/api/sessions/[id]/state/route.ts +1 -1
  347. package/.next/types/app/api/sessions/[id]/todos/route.ts +1 -1
  348. package/.next/types/app/api/sessions/route.ts +1 -1
  349. package/.next/types/app/api/sessions/summary/route.ts +1 -1
  350. package/.next/types/app/api/skills/check/route.ts +1 -1
  351. package/.next/types/app/api/skills/install/route.ts +1 -1
  352. package/.next/types/app/api/skills/route.ts +1 -1
  353. package/.next/types/app/api/skills/search/route.ts +1 -1
  354. package/.next/types/app/api/skills/update/route.ts +1 -1
  355. package/.next/types/app/api/subagents/[id]/route.ts +353 -0
  356. package/.next/types/app/api/subagents/profiles/route.ts +353 -0
  357. package/.next/types/app/api/subagents/settings/route.ts +353 -0
  358. package/.next/types/app/api/task-card-questions/[id]/answer/route.ts +1 -1
  359. package/.next/types/app/api/task-card-questions/route.ts +1 -1
  360. package/.next/types/app/api/task-cards/[id]/route.ts +1 -1
  361. package/.next/types/app/api/task-cards/route.ts +1 -1
  362. package/.next/types/app/api/task-cards/unbind/route.ts +1 -1
  363. package/.next/types/app/api/task-scheduler/status/route.ts +1 -1
  364. package/.next/types/app/api/tasks/[id]/assign-session/route.ts +1 -1
  365. package/.next/types/app/api/tasks/[id]/board/route.ts +1 -1
  366. package/.next/types/app/api/tasks/[id]/route.ts +1 -1
  367. package/.next/types/app/api/tasks/reorder/route.ts +1 -1
  368. package/.next/types/app/api/tasks/route.ts +1 -1
  369. package/.next/types/app/api/terminal/[id]/events/route.ts +1 -1
  370. package/.next/types/app/api/terminal/[id]/route.ts +1 -1
  371. package/.next/types/app/api/terminal/route.ts +1 -1
  372. package/.next/types/app/api/worktrees/route.ts +1 -1
  373. package/.next/types/app/api/yjs-version/route.ts +1 -1
  374. package/.next/types/app/layout.ts +1 -1
  375. package/.next/types/app/page.ts +1 -1
  376. package/.next/types/routes.d.ts +5 -1
  377. package/.next/types/validator.ts +36 -0
  378. package/lib/api-types.ts +10 -0
  379. package/lib/board-events.rename.test.mjs +39 -0
  380. package/lib/board-events.ts +17 -0
  381. package/lib/board-reconcile.test.mjs +20 -0
  382. package/lib/board-reconcile.ts +54 -0
  383. package/lib/chat-lazy-load.test.mjs +0 -62
  384. package/lib/chat-lazy-load.ts +0 -13
  385. package/lib/chat-only.ts +23 -0
  386. package/lib/draft-stash.ts +4 -5
  387. package/lib/file-types.ts +16 -1
  388. package/lib/i18n/messages/en.ts +91 -0
  389. package/lib/i18n/messages/zh-CN.ts +91 -0
  390. package/lib/id.test.mjs +38 -0
  391. package/lib/id.ts +17 -0
  392. package/lib/message-text.ts +24 -0
  393. package/lib/models-cache.ts +1 -1
  394. package/lib/pi-types.ts +19 -1
  395. package/lib/pin-store.ts +85 -0
  396. package/lib/powershell-settings.ts +106 -0
  397. package/lib/quoted-selection.ts +4 -0
  398. package/lib/rpc-manager.ts +208 -22
  399. package/lib/session-family.test.mjs +49 -0
  400. package/lib/session-family.ts +80 -0
  401. package/lib/session-index-scanner.ts +39 -0
  402. package/lib/session-time-group.test.mjs +38 -0
  403. package/lib/session-time-group.ts +55 -0
  404. package/lib/settings-navigation.ts +124 -0
  405. package/lib/subagent-extension.test.mjs +424 -0
  406. package/lib/subagent-extension.ts +309 -0
  407. package/lib/subagent-input.test.mjs +63 -0
  408. package/lib/subagent-input.ts +71 -0
  409. package/lib/subagent-isolation.test.mjs +51 -0
  410. package/lib/subagent-profile-precedence.ts +20 -0
  411. package/lib/subagent-prompt.test.mjs +64 -0
  412. package/lib/subagent-prompt.ts +31 -0
  413. package/lib/subagent-queue.test.mjs +35 -0
  414. package/lib/subagent-queue.ts +74 -0
  415. package/lib/subagent-runtime.test.mjs +150 -0
  416. package/lib/subagent-runtime.ts +587 -0
  417. package/lib/subagent-settings.test.mjs +50 -0
  418. package/lib/subagent-settings.ts +93 -0
  419. package/lib/subagents.test.mjs +601 -0
  420. package/lib/subagents.ts +602 -0
  421. package/lib/tool-presets.ts +4 -0
  422. package/lib/types.ts +19 -0
  423. package/package.json +1 -1
  424. package/.next/static/chunks/752.3119700876725f3b.js +0 -1
  425. package/.next/static/chunks/7975.95edcabc69eee4eb.js +0 -1
  426. package/.next/static/chunks/app/_global-error/page-2d5f6296c7e693c6.js +0 -1
  427. package/.next/static/chunks/app/_not-found/page-af4fe23994cb3d66.js +0 -1
  428. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-2d5f6296c7e693c6.js +0 -1
  429. package/.next/static/chunks/app/api/agent/[id]/events/route-2d5f6296c7e693c6.js +0 -1
  430. package/.next/static/chunks/app/api/agent/[id]/route-2d5f6296c7e693c6.js +0 -1
  431. package/.next/static/chunks/app/api/agent/new/route-2d5f6296c7e693c6.js +0 -1
  432. package/.next/static/chunks/app/api/agent/running/route-2d5f6296c7e693c6.js +0 -1
  433. package/.next/static/chunks/app/api/app-update/route-2d5f6296c7e693c6.js +0 -1
  434. package/.next/static/chunks/app/api/auth/all-providers/route-2d5f6296c7e693c6.js +0 -1
  435. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-2d5f6296c7e693c6.js +0 -1
  436. package/.next/static/chunks/app/api/auth/login/[provider]/route-2d5f6296c7e693c6.js +0 -1
  437. package/.next/static/chunks/app/api/auth/logout/[provider]/route-2d5f6296c7e693c6.js +0 -1
  438. package/.next/static/chunks/app/api/auth/providers/route-2d5f6296c7e693c6.js +0 -1
  439. package/.next/static/chunks/app/api/board-assets/[...path]/route-2d5f6296c7e693c6.js +0 -1
  440. package/.next/static/chunks/app/api/board-assets/route-2d5f6296c7e693c6.js +0 -1
  441. package/.next/static/chunks/app/api/boards/[id]/reconcile/route-2d5f6296c7e693c6.js +0 -1
  442. package/.next/static/chunks/app/api/boards/[id]/route-2d5f6296c7e693c6.js +0 -1
  443. package/.next/static/chunks/app/api/boards/reorder/route-2d5f6296c7e693c6.js +0 -1
  444. package/.next/static/chunks/app/api/boards/route-2d5f6296c7e693c6.js +0 -1
  445. package/.next/static/chunks/app/api/cwd/browse/route-2d5f6296c7e693c6.js +0 -1
  446. package/.next/static/chunks/app/api/cwd/validate/route-2d5f6296c7e693c6.js +0 -1
  447. package/.next/static/chunks/app/api/default-cwd/route-2d5f6296c7e693c6.js +0 -1
  448. package/.next/static/chunks/app/api/file-index/route-2d5f6296c7e693c6.js +0 -1
  449. package/.next/static/chunks/app/api/files/[...path]/route-2d5f6296c7e693c6.js +0 -1
  450. package/.next/static/chunks/app/api/git/diff/route-2d5f6296c7e693c6.js +0 -1
  451. package/.next/static/chunks/app/api/git/status/route-2d5f6296c7e693c6.js +0 -1
  452. package/.next/static/chunks/app/api/home/route-2d5f6296c7e693c6.js +0 -1
  453. package/.next/static/chunks/app/api/mcp/route-2d5f6296c7e693c6.js +0 -1
  454. package/.next/static/chunks/app/api/models/route-2d5f6296c7e693c6.js +0 -1
  455. package/.next/static/chunks/app/api/models-config/catalog/route-2d5f6296c7e693c6.js +0 -1
  456. package/.next/static/chunks/app/api/models-config/discover/route-2d5f6296c7e693c6.js +0 -1
  457. package/.next/static/chunks/app/api/models-config/route-2d5f6296c7e693c6.js +0 -1
  458. package/.next/static/chunks/app/api/models-config/test/route-2d5f6296c7e693c6.js +0 -1
  459. package/.next/static/chunks/app/api/plugins/route-2d5f6296c7e693c6.js +0 -1
  460. package/.next/static/chunks/app/api/project-trust/route-2d5f6296c7e693c6.js +0 -1
  461. package/.next/static/chunks/app/api/quota/route-2d5f6296c7e693c6.js +0 -1
  462. package/.next/static/chunks/app/api/search/route-2d5f6296c7e693c6.js +0 -1
  463. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-2d5f6296c7e693c6.js +0 -1
  464. package/.next/static/chunks/app/api/sessions/[id]/context/route-2d5f6296c7e693c6.js +0 -1
  465. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-2d5f6296c7e693c6.js +0 -1
  466. package/.next/static/chunks/app/api/sessions/[id]/export/route-2d5f6296c7e693c6.js +0 -1
  467. package/.next/static/chunks/app/api/sessions/[id]/minimap/route-2d5f6296c7e693c6.js +0 -1
  468. package/.next/static/chunks/app/api/sessions/[id]/route-2d5f6296c7e693c6.js +0 -1
  469. package/.next/static/chunks/app/api/sessions/[id]/state/route-2d5f6296c7e693c6.js +0 -1
  470. package/.next/static/chunks/app/api/sessions/[id]/todos/route-2d5f6296c7e693c6.js +0 -1
  471. package/.next/static/chunks/app/api/sessions/route-2d5f6296c7e693c6.js +0 -1
  472. package/.next/static/chunks/app/api/sessions/summary/route-2d5f6296c7e693c6.js +0 -1
  473. package/.next/static/chunks/app/api/skills/check/route-2d5f6296c7e693c6.js +0 -1
  474. package/.next/static/chunks/app/api/skills/install/route-2d5f6296c7e693c6.js +0 -1
  475. package/.next/static/chunks/app/api/skills/route-2d5f6296c7e693c6.js +0 -1
  476. package/.next/static/chunks/app/api/skills/search/route-2d5f6296c7e693c6.js +0 -1
  477. package/.next/static/chunks/app/api/skills/update/route-2d5f6296c7e693c6.js +0 -1
  478. package/.next/static/chunks/app/api/task-card-questions/[id]/answer/route-2d5f6296c7e693c6.js +0 -1
  479. package/.next/static/chunks/app/api/task-card-questions/route-2d5f6296c7e693c6.js +0 -1
  480. package/.next/static/chunks/app/api/task-cards/[id]/route-2d5f6296c7e693c6.js +0 -1
  481. package/.next/static/chunks/app/api/task-cards/route-2d5f6296c7e693c6.js +0 -1
  482. package/.next/static/chunks/app/api/task-cards/unbind/route-2d5f6296c7e693c6.js +0 -1
  483. package/.next/static/chunks/app/api/task-scheduler/status/route-2d5f6296c7e693c6.js +0 -1
  484. package/.next/static/chunks/app/api/tasks/[id]/assign-session/route-2d5f6296c7e693c6.js +0 -1
  485. package/.next/static/chunks/app/api/tasks/[id]/board/route-2d5f6296c7e693c6.js +0 -1
  486. package/.next/static/chunks/app/api/tasks/[id]/route-2d5f6296c7e693c6.js +0 -1
  487. package/.next/static/chunks/app/api/tasks/reorder/route-2d5f6296c7e693c6.js +0 -1
  488. package/.next/static/chunks/app/api/tasks/route-2d5f6296c7e693c6.js +0 -1
  489. package/.next/static/chunks/app/api/terminal/[id]/events/route-2d5f6296c7e693c6.js +0 -1
  490. package/.next/static/chunks/app/api/terminal/[id]/route-2d5f6296c7e693c6.js +0 -1
  491. package/.next/static/chunks/app/api/terminal/route-2d5f6296c7e693c6.js +0 -1
  492. package/.next/static/chunks/app/api/worktrees/route-2d5f6296c7e693c6.js +0 -1
  493. package/.next/static/chunks/app/api/yjs-version/route-2d5f6296c7e693c6.js +0 -1
  494. package/.next/static/chunks/app/layout-636e9e756d0734c7.js +0 -1
  495. package/.next/static/chunks/app/manifest.webmanifest/route-2d5f6296c7e693c6.js +0 -1
  496. package/.next/static/chunks/app/page-44daed9dcf9134eb.js +0 -89
  497. package/.next/static/chunks/main-app-b3e8a8d15d83e1f0.js +0 -1
  498. package/.next/static/chunks/next/dist/client/components/builtin/app-error-2d5f6296c7e693c6.js +0 -1
  499. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-2d5f6296c7e693c6.js +0 -1
  500. package/.next/static/chunks/next/dist/client/components/builtin/global-error-00a4badaccb388e6.js +0 -1
  501. package/.next/static/chunks/next/dist/client/components/builtin/not-found-2d5f6296c7e693c6.js +0 -1
  502. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2d5f6296c7e693c6.js +0 -1
  503. package/.next/static/css/4a609fb185e7cff1.css +0 -1
  504. package/.next/static/h-hr7x0pqNUx3TyuarqWJ/_buildManifest.js +0 -1
  505. package/lib/extension-command.test.mjs +0 -63
  506. package/lib/extension-command.ts +0 -81
  507. package/lib/subagent-widget.test.mjs +0 -87
  508. package/lib/subagent-widget.ts +0 -109
  509. /package/.next/static/{h-hr7x0pqNUx3TyuarqWJ → k8ZFqwz7d-bnK0ZiUVgCc}/_ssgManifest.js +0 -0
@@ -1,4 +1,13 @@
1
- "use strict";exports.id=542,exports.ids=[542],exports.modules={12144:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A4:()=>A,HG:()=>B,OF:()=>C});var e=c(75430),f=c(29862),g=c(55511),h=c(29021),i=c(33873),j=c(18437),k=c(88250),l=c(96515),m=c(81186),n=c(87509),o=c(69453),p=c(7535),q=c(62391),r=c(65562),s=c(47128),t=c(15253),u=c(61577),v=c(57856),w=a([e,f,l,m,n,o,t]);[e,f,l,m,n,o,t]=w.then?(await w)():w;let D=new Set(["agent_end","agent_settled","auto_compaction_end","compaction_end"]),E=["read","bash","edit","write","grep","find","ls"];class F extends e.Theme{constructor(){super({thinkingXhigh:"",searchMatchText:""},{selectedBg:""},"truecolor")}fg(...[,a]){return a}bg(...[,a]){return a}bold(a){return a}italic(a){return a}underline(a){return a}inverse(a){return a}strikethrough(a){return a}getFgAnsi(){return""}getBgAnsi(){return""}getThinkingBorderColor(){return a=>a}getBashModeBorderColor(){return a=>a}}let G=new F,H=new f.KeybindingsManager(f.TUI_KEYBINDINGS);function x(a,b){if(0===b.length)return[];let c=new Set(E),d=a.getAllTools().map(a=>a.name).filter(a=>!c.has(a));return[...new Set([...b,...d])]}class I{constructor(a){this.inner=a,this.listeners=[],this.pendingUiResponses=new Map,this.pendingUiRequests=new Map,this.activeCustomUis=new Map,this.extensionStatuses=new Map,this.extensionWidgets=new Map,this.activeExtensionWidgets=new Map,this.extensionWidgetGenerations=new Map,this.extensionWidgetsResetting=!1,this.pendingPromptCount=0,this.promptAdmissionTail=Promise.resolve(),this.extensionsBound=!1,this.extensionBindingPromise=null,this.extensionBindingError=null,this.forceEmptySystemPrompt=!1,this.unsubscribe=null,this.idleTimer=null,this.onDestroyCallback=null,this.shutdownPromise=null,this._alive=!0,this.lastAgentStart=0}hasPendingUiRequest(){return this.pendingUiRequests.size>0}lastAgentStartAt(){return this.lastAgentStart}get sessionId(){return this.inner.sessionId}get sessionFile(){return this.inner.sessionFile??""}get cwd(){return this.inner.sessionManager.getCwd()}get streamingMessage(){return this.inner.agent.state?.streamingMessage}get isStreaming(){return this.inner.isStreaming}isAlive(){return this._alive}isRunning(){return this._alive&&(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)}start(){this.unsubscribe=this.inner.subscribe(a=>{"agent_start"===a.type&&(this.lastAgentStart=Date.now()),"agent_end"===a.type&&(0,o.mD)(),D.has(a.type)&&this.resetIdleTimer(),this.emit(a)}),this.resetIdleTimer()}setForceEmptySystemPrompt(a){this.forceEmptySystemPrompt=a,this.applyForcedEmptySystemPrompt()}beginExtensionBinding(a={}){this.ensureExtensionsBound(a).catch(a=>{console.error("[pi-web] failed to dispatch session_start to extensions:",a instanceof Error?a.message:a)})}async waitUntilReady(){await this.waitForExtensionsBound()}ensureExtensionsBound(a={}){return(a.forceEmptySystemPrompt&&(this.forceEmptySystemPrompt=!0),this.extensionsBound)?(this.applyForcedEmptySystemPrompt(),Promise.resolve()):(this.extensionBindingPromise||(this.extensionBindingError=null,this.extensionBindingPromise=(async()=>{if(!this._alive)return;let a=this.createExtensionUiContext();if("function"==typeof this.inner.bindExtensions){let b=this.inner.bindExtensions;await b.call(this.inner,{uiContext:a,mode:"rpc",commandContextActions:this.createExtensionCommandContextActions(),shutdownHandler:()=>this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",notifyType:"warning",message:"Extension requested shutdown, but shutdown is not supported in Pi Web."}),onError:a=>this.emit({type:"extension_error",extensionPath:a.extensionPath,event:a.event,error:a.error})})}else this.inner.extensionRunner.setUIContext?.(a,"rpc");this.extensionsBound=!0,this.applyForcedEmptySystemPrompt(),console.log(`[pi-web] session_start dispatched to extensions for session ${this.inner.sessionId}`)})().catch(a=>{throw this.extensionBindingError=a,a})),this.extensionBindingPromise)}async waitForExtensionsBound(){try{this.extensionBindingPromise&&await this.extensionBindingPromise}catch(a){throw a instanceof Error?a:Error(String(a))}if(this.extensionBindingError)throw this.extensionBindingError instanceof Error?this.extensionBindingError:Error(String(this.extensionBindingError))}shouldWaitForExtensions(a){return"prompt"===a||"steer"===a||"follow_up"===a||"get_commands"===a||"get_state"===a}async withFinalRunningNotification(a){try{return await a()}finally{this.resetIdleTimer()}}applyForcedEmptySystemPrompt(){this.forceEmptySystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt="")}emit(a){for(let b of this.listeners)try{b(a)}catch(b){console.error(`[pi-web] failed to deliver ${a.type} event:`,b instanceof Error?b.message:b)}}async acquirePromptAdmission(){let a,b=this.promptAdmissionTail;return this.promptAdmissionTail=new Promise(b=>{a=b}),await b,a}resetIdleTimer(){this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{this.isRunning()?this.resetIdleTimer():this.shutdown().catch(a=>{console.error("[pi-web] failed to shut down idle session:",a instanceof Error?a.message:a)})},6e5)}onEvent(a){for(let b of(this.listeners.push(a),this.pendingUiRequests.values()))a(b);return()=>{let b=this.listeners.indexOf(a);-1!==b&&this.listeners.splice(b,1)}}onDestroy(a){this.onDestroyCallback=a}async send(a){this.resetIdleTimer();let b=a.type;if(this.shouldWaitForExtensions(b)&&await this.waitForExtensionsBound(),"prompt"===b||"steer"===b||"follow_up"===b){let b=(0,j.kc)(a.images);if(b)throw Error(b)}switch(b){case"prompt":{let b=await this.acquirePromptAdmission();try{let b,c,d;if(this.inner.isBashRunning)throw Error("Cannot send a prompt while a shell command is running");let e=a.images,f=a.streamingBehavior,g=!1,h=!1,i=!1,j=new Promise((a,d)=>{b=()=>{g=!0,h||(h=!0,a())},c=a=>{h||(h=!0,d(a))}}),k=()=>{i||(i=!0,this.pendingPromptCount=Math.max(0,this.pendingPromptCount-1),this.resetIdleTimer())};this.pendingPromptCount+=1;try{d=this.inner.prompt(a.message,{...e?.length?{images:e}:{},...f?{streamingBehavior:f}:{},source:"rpc",preflightResult:a=>{a&&b()}})}catch(a){throw k(),a}return d.then(()=>{b(),k(),f||this.emit({type:"prompt_done"})},a=>{c(a),k(),(0,o.mD)(),g&&(this.emit({type:"prompt_error",errorMessage:a instanceof Error?a.message:String(a)}),f||this.emit({type:"prompt_done"}))}).catch(a=>{console.error("[pi-web] prompt completion handler failed:",a instanceof Error?a.message:a)}),await j,null}finally{b()}}case"abort":return await this.withFinalRunningNotification(()=>this.inner.abort()),null;case"get_state":{let a=this.inner.model,b=this.inner.getContextUsage();return{sessionId:this.inner.sessionId,sessionFile:this.inner.sessionFile??"",isStreaming:this.inner.isStreaming,isPromptRunning:this.pendingPromptCount>0,isBashRunning:this.inner.isBashRunning,isCompacting:this.inner.isCompacting,autoCompactionEnabled:this.inner.autoCompactionEnabled,autoRetryEnabled:this.inner.autoRetryEnabled,model:a?{id:a.id,provider:a.provider}:void 0,messageCount:0,pendingMessageCount:this.inner.pendingMessageCount,queuedMessages:{steering:[...this.inner.getSteeringMessages()],followUp:[...this.inner.getFollowUpMessages()]},contextUsage:b?{percent:b.percent,contextWindow:b.contextWindow,tokens:b.tokens}:null,systemPrompt:this.inner.agent.state?.systemPrompt??"",thinkingLevel:this.inner.agent.state?.thinkingLevel??"off",extensionStatuses:this.getExtensionStatuses(),extensionWidgets:this.getExtensionWidgets()}}case"set_model":{let{provider:b,modelId:c}=a,d=this.inner.modelRuntime.getModel(b,c);if(d||(await this.inner.modelRuntime.refresh({allowNetwork:!1}),d=this.inner.modelRuntime.getModel(b,c)),!d)throw Error(`Model not found: ${b}/${c}`);return await this.inner.setModel(d),(0,k.kn)(),(0,o.mD)(),{id:d.id,provider:d.provider}}case"fork":{let b;if(this.inner.isBashRunning)throw Error("Cannot fork while a shell command is running");let c=this.inner.sessionId,d=a.entryId,f=this.inner.sessionManager,g=this.inner.sessionFile;if(!f.isPersisted())return{cancelled:!0};if(!g)throw Error("Persisted session is missing a session file");let i=f.getEntry(d);if(!i)throw Error("Invalid entry ID for forking");let j=f.getSessionDir();if(i.parentId){let a=e.SessionManager.open(g,j),c=a.createBranchedSession(i.parentId);if(!c)throw Error("Failed to create forked session");if(b=c,!(0,h.existsSync)(b)){let c=[a.getHeader(),...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(b,c,{encoding:"utf8",flag:"wx"}),a.flushed=!0}}else{let a=e.SessionManager.create(f.getCwd(),j);a.newSession({parentSession:g}),a.getSessionFile()&&a._rewriteFile(),b=a.getSessionFile()}let k=e.SessionManager.open(b,j).getSessionId();(0,o.O8)(k,b),(0,o.mD)();let l=f.getCwd();await this.shutdown();try{let a=await (0,q.KI)(l??"");(0,r.YH)(k,{path:b,cwd:l??"",projectKey:(0,p.z)(a?.projectRoot??l??""),parentId:c}),await (0,s.BC)(c)}catch{}return{cancelled:!1,newSessionId:k}}case"navigate_tree":if(this.inner.isBashRunning)throw Error("Cannot navigate while a shell command is running");return{cancelled:(await this.inner.navigateTree(a.targetId,{})).cancelled};case"set_thinking_level":{let b=a.level;return this.inner.setThinkingLevel(b),"xhigh"===b&&this.inner.model?.compat?.thinkingFormat==="deepseek"&&this.inner.agent?.state&&(this.inner.agent.state.thinkingLevel="xhigh"),(0,o.mD)(),null}case"compact":try{return await this.withFinalRunningNotification(()=>this.inner.compact(a.customInstructions))}finally{(0,o.mD)()}case"set_session_name":{let b=a.name?.trim();if(!b)throw Error("Session name cannot be empty");return this.inner.setSessionName(b),(0,o.mD)(),null}case"get_session_stats":return{...this.inner.getSessionStats(),sessionName:this.inner.sessionManager.getSessionName()};case"get_last_assistant_text":return{text:this.inner.getLastAssistantText()??""};case"set_auto_compaction":return this.inner.setAutoCompactionEnabled(a.enabled),null;case"clear_queue":return this.inner.clearQueue();case"steer":{let b=a.images;return await this.inner.steer(a.message,b?.length?b:void 0),null}case"follow_up":{let b=a.images;return await this.inner.followUp(a.message,b?.length?b:void 0),null}case"get_tools":{let a=this.inner.getAllTools(),b=new Set(this.inner.getActiveToolNames());return a.map(a=>({name:a.name,description:a.description,active:b.has(a.name)}))}case"get_commands":{let a=[];for(let b of this.inner.extensionRunner.getRegisteredCommands())a.push({name:b.invocationName,description:b.description,source:"extension",sourceInfo:b.sourceInfo});for(let b of this.inner.promptTemplates)a.push({name:b.name,description:b.description,source:"prompt",sourceInfo:b.sourceInfo});for(let b of this.inner.resourceLoader.getSkills().skills)a.push({name:`skill:${b.name}`,description:b.description,source:"skill",sourceInfo:b.sourceInfo});return{commands:a}}case"set_tools":{let b=a.toolNames;return this.setForceEmptySystemPrompt(0===b.length),this.inner.setActiveToolsByName(x(this.inner,b)),this.applyForcedEmptySystemPrompt(),null}case"reload":return await this.waitForExtensionsBound(),this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload(),"function"!=typeof this.inner.bindExtensions&&this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc"),this.applyForcedEmptySystemPrompt(),(0,k.kn)(),{success:!0};case"abort_compaction":return this.inner.abortCompaction(),null;case"extension_ui_response":return this.resolveExtensionUiResponse(a),null;case"extension_ui_input":return this.handleExtensionUiInput(a.id,a.data),null;case"set_auto_retry":return this.inner.setAutoRetryEnabled(a.enabled),null;case"bash":{if(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)throw Error("Cannot run a shell command while the session is busy");let b=this.inner.executeBash(a.command,void 0,{excludeFromContext:a.excludeFromContext,operations:(0,m.J1)({shellPath:this.inner.settingsManager.getShellPath()})});try{return await b}finally{this.resetIdleTimer(),(0,o.mD)()}}case"abort_bash":return this.inner.abortBash(),null;default:throw Error(`Unsupported command: ${b}`)}}destroy(){if(this._alive){for(let a of(this._alive=!1,this.idleTimer&&clearTimeout(this.idleTimer),this.inner.isBashRunning&&this.inner.abortBash(),this.unsubscribe?.(),this.pendingUiResponses.values()))a.cancel();for(let a of Array.from(this.activeCustomUis.keys()))this.closeCustomUi(a,void 0);this.pendingUiResponses.clear(),this.pendingUiRequests.clear(),this.clearExtensionWidgets(!1);try{this.inner.dispose()}finally{this.onDestroyCallback?.()}}}async shutdown(){return this.shutdownPromise?this.shutdownPromise:this._alive?(this.shutdownPromise=(async()=>{try{try{await this.waitForExtensionsBound()}catch(a){console.error("[pi-web] extension binding failed before session shutdown:",a instanceof Error?a.message:a)}await this.inner.extensionRunner.emit?.({type:"session_shutdown",reason:"quit"})}finally{this.destroy()}})(),this.shutdownPromise):void 0}resolveExtensionUiResponse(a){let b=this.pendingUiResponses.get(a.id);b&&b.resolve(a)}getExtensionStatuses(){return Array.from(this.extensionStatuses,([a,b])=>({key:a,text:b}))}getExtensionWidgets(){return Array.from(this.extensionWidgets.values())}nextExtensionWidgetGeneration(a){let b=(this.extensionWidgetGenerations.get(a)??0)+1;return this.extensionWidgetGenerations.set(a,b),b}disposeExtensionWidgetComponent(a){if(!a||"object"!=typeof a&&"function"!=typeof a)return;let b=a.dispose;if("function"==typeof b)try{b.call(a)}catch{}}emitExtensionWidgetClear(a){this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:void 0,widgetPlacement:void 0})}clearExtensionWidget(a,b=!0){let c=this.nextExtensionWidgetGeneration(a),d=this.activeExtensionWidgets.get(a);return this.activeExtensionWidgets.delete(a),this.extensionWidgets.delete(a),d&&this.disposeExtensionWidgetComponent(d.component),this.extensionWidgetGenerations.get(a)!==c||b&&this.emitExtensionWidgetClear(a),c}clearExtensionWidgets(a){for(let b of new Set([...this.extensionWidgets.keys(),...this.activeExtensionWidgets.keys()]))this.clearExtensionWidget(b,a)}resetExtensionWidgetsForReload(){this.extensionWidgetsResetting=!0;try{for(let a of[...this.activeExtensionWidgets.keys()])this.clearExtensionWidget(a);this.extensionWidgets.clear()}finally{this.extensionWidgetsResetting=!1}}emitExtensionWidgetError(a,b){this.emit({type:"extension_error",extensionPath:`extension-widget:${a}`,event:"setWidget",error:b instanceof Error?b.message:String(b)})}failExtensionWidget(a,b,c,d,e){if(this.extensionWidgetGenerations.get(a)!==b)return void this.disposeExtensionWidgetComponent(e);let f=this.activeExtensionWidgets.get(a),g=!d;f?.generation===b?(g=f.rendered||!f.clearEmitted,this.activeExtensionWidgets.delete(a),this.disposeExtensionWidgetComponent(f.component)):this.disposeExtensionWidgetComponent(e),this.extensionWidgetGenerations.get(a)!==b||(this.extensionWidgets.delete(a),g&&this.emitExtensionWidgetClear(a)),this.emitExtensionWidgetError(a,c)}renderExtensionWidget(a){let b;if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;try{b=a.component.render(v.p1)}catch(b){this.failExtensionWidget(a.key,a.generation,b,a.clearEmitted);return}if(!Array.isArray(b)||!b.every(a=>"string"==typeof a))return void this.failExtensionWidget(a.key,a.generation,Error("Extension widget render must return string[]"),a.clearEmitted);if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;let c=b;this.extensionWidgets.set(a.key,{key:a.key,lines:c,placement:a.placement}),a.rendered=!0,this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a.key,widgetLines:c,widgetPlacement:a.placement})}setExtensionWidgetFactory(a,b,c){let d,e=this.extensionWidgets.has(a)||this.activeExtensionWidgets.has(a),f=this.clearExtensionWidget(a,e);if(this.extensionWidgetGenerations.get(a)!==f)return;let g=(0,v.TQ)(()=>{let b=this.activeExtensionWidgets.get(a);b?.generation===f&&this.renderExtensionWidget(b)},v.p1);try{d=b(g,G)}catch(b){this.failExtensionWidget(a,f,b,e);return}if(this.extensionWidgetGenerations.get(a)!==f)return void this.disposeExtensionWidgetComponent(d);if(!d||"object"!=typeof d&&"function"!=typeof d||"function"!=typeof d.render)return void this.failExtensionWidget(a,f,Error("Extension widget factory must return a component with render(width)"),e,d);let h={key:a,component:d,placement:c?.placement??"aboveEditor",generation:f,clearEmitted:e,rendered:!1};this.activeExtensionWidgets.set(a,h),this.renderExtensionWidget(h)}getCustomUiWidth(a){if(!a||"object"!=typeof a)return v.p1;let b=a.overlayOptions,c="function"==typeof b?b():b;if(!c||"object"!=typeof c)return v.p1;let d=c.width;return"number"==typeof d&&Number.isFinite(d)?Math.max(40,Math.min(140,Math.round(d))):92}emitCustomUiRender(a,b){let c;try{c=b.component.render(b.width)}catch(a){c=[`Extension custom UI render failed: ${a instanceof Error?a.message:String(a)}`]}let d={type:"extension_ui_request",id:a,method:"custom",lines:c};this.pendingUiRequests.set(a,d),this.emit(d)}closeCustomUi(a,b){let c=this.activeCustomUis.get(a);if(c&&!c.settled){c.settled=!0,this.activeCustomUis.delete(a),this.pendingUiRequests.delete(a);try{c.component.dispose?.()}catch{}this.emit({type:"extension_ui_request",id:a,method:"custom",lines:[],closed:!0}),c.resolve(b)}}handleExtensionUiInput(a,b){let c=this.activeCustomUis.get(a);if(c&&"string"==typeof b)try{c.component.handleInput?.(b),this.activeCustomUis.has(a)&&this.emitCustomUiRender(a,c)}catch(b){this.closeCustomUi(a,void 0),this.emit({type:"extension_error",extensionPath:`custom-ui:${a}`,event:"custom_ui_input",error:b instanceof Error?b.message:String(b)})}}requestExtensionCustomUi(a,b){if("function"!=typeof a)return Promise.resolve(void 0);let c=(0,g.randomUUID)(),d=this.getCustomUiWidth(b);return new Promise(b=>{let e=!1,f=(0,v.TQ)(()=>{let a=this.activeCustomUis.get(c);a&&this.emitCustomUiRender(c,a)},d),g=a=>{e||(e=!0,b(a))},h=a=>{this.activeCustomUis.has(c)?this.closeCustomUi(c,a):g(a)};Promise.resolve().then(()=>a(f,G,H,h)).then(a=>{if(e){try{a?.dispose?.()}catch{}return}if(!a||"object"!=typeof a||"function"!=typeof a.render)return void g(void 0);let b={component:a,width:d,resolve:a=>g(a),settled:!1};this.activeCustomUis.set(c,b),this.emitCustomUiRender(c,b)}).catch(a=>{e||(this.emit({type:"extension_error",extensionPath:`custom-ui:${c}`,event:"custom_ui",error:a instanceof Error?a.message:String(a)}),g(void 0))})})}requestExtensionUi(a,b,c,d,e){if(e?.aborted)return Promise.resolve(b);let f=(0,g.randomUUID)(),h={type:"extension_ui_request",id:f,...a,...d?{timeout:d,expiresAt:Date.now()+d}:{}};return new Promise(a=>{let g,i=()=>{g&&clearTimeout(g),e?.removeEventListener("abort",k),this.pendingUiRequests.delete(f),this.pendingUiResponses.delete(f)},j=b=>{i(),a(b)},k=()=>j(b);d&&(g=setTimeout(()=>j(b),d)),e?.addEventListener("abort",k,{once:!0}),this.pendingUiRequests.set(f,h),this.pendingUiResponses.set(f,{resolve:a=>j(c(a)),cancel:()=>j(b)}),this.emit(h)})}createExtensionUiContext(){return{select:(a,b,c)=>this.requestExtensionUi({method:"select",title:a,options:b,...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),confirm:(a,b,c)=>this.requestExtensionUi({method:"confirm",title:a,message:b,...c?.timeout?{timeout:c.timeout}:{}},!1,a=>"confirmed"in a&&a.confirmed,c?.timeout,c?.signal),input:(a,b,c)=>this.requestExtensionUi({method:"input",title:a,...void 0!==b?{placeholder:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),editor:(a,b,c)=>this.requestExtensionUi({method:"editor",title:a,...void 0!==b?{prefill:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),notify:(a,b)=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",message:a,notifyType:b})},onTerminalInput:()=>()=>{},setStatus:(a,b)=>{void 0===b?this.extensionStatuses.delete(a):this.extensionStatuses.set(a,b),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setStatus",statusKey:a,statusText:b})},setWorkingMessage:()=>{},setWorkingVisible:()=>{},setWorkingIndicator:()=>{},setHiddenThinkingLabel:()=>{},setWidget:(a,b,c)=>{if(!this._alive||this.extensionWidgetsResetting)return;if("function"==typeof b)return void this.setExtensionWidgetFactory(a,b,c);if(void 0!==b&&!Array.isArray(b))return;if(void 0===b)return void this.clearExtensionWidget(a);let d=this.activeExtensionWidgets.has(a)?this.clearExtensionWidget(a):this.nextExtensionWidgetGeneration(a);this.extensionWidgetGenerations.get(a)===d&&(this.extensionWidgets.set(a,{key:a,lines:b,placement:c?.placement??"aboveEditor"}),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:b,widgetPlacement:c?.placement}))},setFooter:()=>{},setHeader:()=>{},setTitle:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setTitle",title:a})},custom:(a,b)=>this.requestExtensionCustomUi(a,b),pasteToEditor:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},setEditorText:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},getEditorText:()=>"",addAutocompleteProvider:()=>{},setEditorComponent:()=>{},getEditorComponent:()=>void 0,get theme(){return G},getAllThemes:()=>[],getTheme:()=>void 0,setTheme:()=>({success:!1,error:"Theme switching is not supported in Pi Web extension UI yet"}),getToolsExpanded:()=>!1,setToolsExpanded:()=>{}}}createExtensionCommandContextActions(){return{waitForIdle:async()=>{let a=this.inner.agent;await a.waitForIdle?.()},newSession:async()=>({cancelled:!0}),fork:async()=>({cancelled:!0}),navigateTree:async(a,b)=>({cancelled:(await this.inner.navigateTree(a,{summarize:b?.summarize})).cancelled}),switchSession:async()=>({cancelled:!0}),reload:async()=>{this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload({beforeSessionStart:()=>{this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc")}}),this.applyForcedEmptySystemPrompt()}}}syncProjectTrust(){let a=(0,t.Y1)(this.cwd,(0,e.getAgentDir)());this.inner.settingsManager.setProjectTrusted(a.trusted)}}function y(){if(!globalThis.__piSessions){globalThis.__piSessions=new Map;let a=()=>globalThis.__piSessions?.forEach(a=>a.destroy());process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__piSessions}async function z(a,b){let c=a.getSessionFile();if(!c||(0,h.existsSync)(c))return;let d=a.getHeader();if(!d)return;let e=[d,...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(c,e,{encoding:"utf8",flag:"wx"}),a.flushed=!0,(0,o.O8)(b,c);let f=a.getCwd();try{let a=await (0,q.KI)(f??"");(0,r.YH)(b,{path:c,cwd:f??"",projectKey:(0,p.z)(a?.projectRoot??f??"")})}catch{}}function A(a){return y().get(a)}function B(){let a=new Set;for(let[b,c]of y())c.isRunning()&&a.add(c.sessionId||b);return[...a]}async function C(a,b,c,d={}){let f,g,j,{toolNames:p,initialModel:q,thinkingLevel:r}=d,s=y(),v=(globalThis.__piStartLocks||(globalThis.__piStartLocks=new Map),globalThis.__piStartLocks),w=s.get(a);if(w?.isAlive())return{session:w,realSessionId:a};let A=v.get(a);if(A)return A;if(b)f=e.SessionManager.open(b,void 0);else{if(!c)throw Error("cwd is required for a new session");let b=a.length>0&&!a.startsWith("__");f=e.SessionManager.create(c,void 0,b?{id:a}:void 0),b&&await z(f,a)}let B=f.getCwd(),D=(globalThis.__piStartingSessionCwds||(globalThis.__piStartingSessionCwds=new Map),g=globalThis.__piStartingSessionCwds,j=function(a){let b=(0,i.resolve)(a);try{return(0,h.realpathSync)(b)}catch{return b}}(B),g.set(j,(g.get(j)??0)+1),()=>{let a=(g.get(j)??1)-1;a>0?g.set(j,a):g.delete(j)}),E=(async()=>{let a;(0,e.initTheme)();let b=(0,e.getAgentDir)();void 0!==p&&(a=0===p.length?[]:void 0);let c=(0,t.Fk)(B,b),d=e.SettingsManager.create(B,b),g=await (0,e.createAgentSessionServices)({cwd:B,agentDir:b,settingsManager:d,resourceLoaderOptions:{extensionFactories:[(0,m.eD)({cwd:B,settings:d}),(0,n.U)()],extensionsOverride:m.Ds},...c?{resourceLoaderReloadOptions:c}:{}}),h=await (0,l.p)(g.modelRuntime,g.settingsManager.getEnabledModels()),i=g.settingsManager.getDefaultProvider(),j=g.settingsManager.getDefaultModel(),v=f.getBranch().some(a=>"message"===a.type)?{scopedModels:[...h.scopedModels]}:(0,l.I)(h,{...q?{requestedModel:q}:{},...i&&j?{defaultModel:{provider:i,modelId:j}}:{},...r?{thinkingLevel:r}:{}}),{session:w}=await (0,e.createAgentSessionFromServices)({services:g,sessionManager:f,...v.model?{model:v.model}:{},...v.thinkingLevel?{thinkingLevel:v.thinkingLevel}:{},...v.scopedModels.length>0?{scopedModels:v.scopedModels}:{},...void 0!==a?{tools:a}:{}});(await (0,u.o)(g.settingsManager,{...q?{model:q}:{},...r?{thinkingLevel:r}:{}},{...w.model?{model:{provider:w.model.provider,modelId:w.model.id}}:{},thinkingLevel:w.thinkingLevel,supportsThinking:w.supportsThinking()})).modelDefaultChanged&&(0,k.kn)(),p&&p.length>0&&w.setActiveToolsByName(x(w,p));let y=new I(w);p?.length===0&&y.setForceEmptySystemPrompt(!0),y.start();let z=w.sessionId,A=w.sessionFile;return A&&(0,o.O8)(z,A),y.onDestroy(()=>s.delete(z)),s.set(z,y),y.beginExtensionBinding({forceEmptySystemPrompt:p?.length===0}),{session:y,realSessionId:z}})().finally(()=>{v.delete(a),D()});return v.set(a,E),E}d()}catch(a){d(a)}})},14916:(a,b,c)=>{c.d(b,{C1:()=>d});let d=["bash","read","edit","write","grep","find","ls"]},15253:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Fk:()=>h,Y1:()=>g});var e=c(75430),f=a([e]);function g(a,b){if(!(a&&(0,e.hasTrustRequiringProjectResources)(a)))return{requiresTrust:!1,trusted:!0};let c=new e.ProjectTrustStore(b);return{requiresTrust:!0,trusted:!0===c.get(a)}}function h(a,b){if(!g(a,b).requiresTrust)return;let c=new e.ProjectTrustStore(b);return{resolveProjectTrust:async()=>!0===c.get(a)}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},18437:(a,b,c)=>{c.d(b,{kc:()=>d});function d(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=function(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}},32105:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Wz:()=>k,bJ:()=>n,s4:()=>m});var e=c(75430),f=c(51455),g=c(69453),h=a([e,g]);[e,g]=h.then?(await h)():h;let o=new Set(["bash"]);async function i(a){let b=await (0,g.os)(a);if(!b)return null;let c=131072;for(;c<=1048576;){let a=await (0,f.open)(b,"r");try{let{size:b}=await a.stat(),d=Math.max(0,b-c),e=Buffer.alloc(b-d);e.length>0&&await a.read(e,0,e.length,d);let f=e.toString("utf8").split("\n"),g=d>0?f.slice(1):f,h=[];for(let a=g.length-1;a>=0&&h.length<8;a--){let b=g[a].trim();if(b)try{let a=JSON.parse(b);a?.type==="message"&&h.unshift(a)}catch{}}if(h.length>=4||c>=1048576||b<=c)return h}finally{await a.close()}c*=2}return null}function j(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>!!a&&"object"==typeof a&&"text"in a).map(a=>a.text).join("\n"):""}async function k(a){try{var b;let c=await i(a);if(!c)return null;let d=c.filter(a=>"message"===a.type),e=!1,f=0,g=[],h=d[d.length-1],k=!!h&&(b=h.message,"assistant"===b.role&&!!Array.isArray(b.content)&&b.content.some(a=>!!a&&"object"==typeof a&&"toolCall"===a.type&&o.has(a.name))),l=h&&"number"==typeof h.message.timestamp?h.message.timestamp:h?new Date(h.timestamp).getTime():0,m=k&&!Number.isNaN(l)?l:0;for(let a of d.slice(-4)){let b=a.message,c="number"==typeof b.timestamp?b.timestamp:new Date(a.timestamp).getTime();if(Number.isNaN(c)||(f=Math.max(f,c)),"assistant"===b.role){b.errorMessage&&(e=!0);let a=j(b.content);a&&g.push(`AI: ${a.slice(0,400)}`)}else if("toolResult"===b.role){b.isError&&(e=!0);let a=b.details;a&&"number"==typeof a.exitCode&&0!==a.exitCode&&(e=!0);let c=j(b.content);c&&g.push(`工具 ${b.toolName}: ${c.slice(0,300)}`)}else if("user"===b.role){let a=j(b.content);a&&g.push(`用户: ${a.slice(0,300)}`)}}return{failure:e,recentText:g.join("\n").slice(0,4e3),lastActivityMs:f,lastIsCommand:k,lastCommandAtMs:m}}catch(b){return console.error(`[task-scheduler] 读会话快照失败 ${a}:`,b instanceof Error?b.message:b),null}}async function l(a,b,c){let d=null,f=setTimeout(()=>{if(d&&"function"==typeof d.dispose)try{d.dispose()}catch{}},9e4);try{(0,e.initTheme)();let f=(0,e.getAgentDir)(),g=e.SettingsManager.create(a,f),h=await (0,e.createAgentSessionServices)({cwd:a,agentDir:f,settingsManager:g,resourceLoaderOptions:{extensionFactories:[]}}),i=e.SessionManager.inMemory(a);d=(await (0,e.createAgentSessionFromServices)({services:h,sessionManager:i,noTools:"all"})).session,await d.prompt(`${b}
1
+ exports.id=542,exports.ids=[542],exports.modules={5564:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{wQ:()=>g}),c(73024),c(76760);var e=c(75430);c(39065);var f=a([e]);e=(f.then?(await f)():f)[0];let h=new Set(["bash","powershell"]);function g(a,b,c=process.platform){return function(a,b){let c=b?"powershell":"bash",d=[];for(let b of a){let a=h.has(b)?c:b;d.includes(a)||d.push(a)}return d}(a,function(a,b=process.platform){return"win32"===b&&a?.includes("powershell")===!0&&!a.includes("bash")}(b,c))}d()}catch(a){d(a)}})},8084:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{J8:()=>k,U6:()=>m,Vj:()=>l,o2:()=>j});var e=c(28802),f=c(75430),g=c(41035),h=c(16983),i=a([e,f,g]);[e,f,g]=i.then?(await i)():i;let n="pi-web-subagents",o=`<inline:${n}>`,p=new Set(g.st),q="pi-subagents";function j(a){return{kind:"pi-web-subagent",sessionId:a.sessionId,profile:a.profile,description:a.description,status:a.status,runInBackground:a.runInBackground,createdAt:a.createdAt,...a.completedAt?{completedAt:a.completedAt}:{},...a.error?{error:a.error}:{},...a.worktreePath?{worktreePath:a.worktreePath}:{},...a.worktreeBranch?{worktreeBranch:a.worktreeBranch}:{},...a.worktreeCleanupError?{worktreeCleanupError:a.worktreeCleanupError}:{}}}function k(a){return"starting"===a.status||"running"===a.status?`Subagent ${a.sessionId} is ${a.status}.`:"completed"===a.status?a.result?.trim()||"Subagent completed without text output.":"aborted"===a.status?`Subagent ${a.sessionId} was stopped.`:"interrupted"===a.status?`Subagent ${a.sessionId} was interrupted before completion.`:`Subagent ${a.sessionId} failed: ${a.error??"Unknown error"}`}function l(a,b,c=()=>!0){return{name:n,hidden:!0,factory:d=>{let g;if(!c())return;let i=b().filter(a=>a.enabled),l=i.map(a=>a.name),m=l.length>0?l.join(", "):"none";d.registerTool((0,f.defineTool)({name:"Agent",label:"Agent",description:`Delegate a focused task to a configured subagent. Each subagent runs as a full, inspectable Pi session. Use background mode for independent work and foreground mode when the result is needed immediately.
2
+
3
+ Available agent types:
4
+ ${(g=i.filter(a=>a.enabled),0===g.length?"No subagent profiles are currently enabled.":g.map(a=>{let b=[`Tools: ${a.tools.length>0?a.tools.join(", "):"none"}`];return a.model&&b.push(`Model: ${a.model}`),`- ${a.name}: ${a.description} (${b.join("; ")})`}).join("\n"))}`,promptSnippet:"Delegate a focused task to an inspectable subagent session",promptGuidelines:["Use Agent for a focused task that benefits from an isolated context.","Use multiple background Agent calls in the same response for independent parallel work.","Do not duplicate work already delegated to a running subagent."],executionMode:"parallel",parameters:e.Type.Object({subagent_type:e.Type.Optional(e.Type.String({description:`Configured agent profile. Available types: ${m}. Default: general-purpose.`})),prompt:e.Type.String({description:"The complete task for the subagent."}),resume:e.Type.Optional(e.Type.String({description:"Existing subagent session ID to continue instead of creating a new session."})),input_files:e.Type.Optional(e.Type.Array(e.Type.String(),{description:"UTF-8 text files under the session cwd to include with the task.",maxItems:h.Wv})),description:e.Type.String({description:"Short activity label shown in the UI."}),run_in_background:e.Type.Optional(e.Type.Boolean({description:"Return immediately and notify this session when complete."})),model:e.Type.Optional(e.Type.String({description:"Optional provider/modelId override."})),thinking:e.Type.Optional(e.Type.String({description:"Optional thinking level override."})),max_turns:e.Type.Optional(e.Type.Number({description:"Optional positive agent turn limit."})),inherit_context:e.Type.Optional(e.Type.Boolean({description:"Include the parent session's active conversation context."})),isolation:e.Type.Optional(e.Type.String({description:"Run the subagent in an isolated git worktree."}))}),async execute(b,c,d,e,f){try{let g=c.resume?.trim(),h=g?await a.resume({parentContext:f,parentToolCallId:b,sessionId:g,task:c.prompt,description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})}):await a.start({parentContext:f,parentToolCallId:b,profile:c.subagent_type??"general-purpose",task:c.prompt,...c.input_files?{inputFiles:c.input_files}:{},description:c.description,...void 0!==c.run_in_background?{runInBackground:c.run_in_background}:{},...c.model?{model:c.model}:{},...c.thinking?{thinking:c.thinking}:{},...c.max_turns?{maxTurns:c.max_turns}:{},...void 0!==c.inherit_context?{inheritContext:c.inherit_context}:{},..."worktree"===c.isolation?{isolation:"worktree"}:{},signal:d,onUpdate:a=>e?.({content:[{type:"text",text:`${a.profile}: ${a.description} (${a.status})`}],details:j(a)})});if(h.run.runInBackground)return h.completion.then(b=>a.notifyParent(b)).catch(a=>{console.error("[pi-web] failed to deliver subagent completion:",a instanceof Error?a.message:a)}),{content:[{type:"text",text:`Subagent started in background. Session ID: ${h.run.sessionId}. You will be notified when it completes.`}],details:j(h.run)};let i=await h.completion;return{content:[{type:"text",text:k(i)}],details:j(i),..."failed"===i.status?{isError:!0}:{}}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}})),d.registerTool((0,f.defineTool)({name:"get_subagent_result",label:"Get agent result",description:"Check an inspectable subagent session and retrieve its latest result.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),wait:e.Type.Optional(e.Type.Boolean({description:"Wait until the subagent finishes."}))}),async execute(b,c,d){let e=await a.get(c.agent_id);if(!e)return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};for(;c.wait&&("starting"===e.status||"running"===e.status);)if(await new Promise((a,b)=>{let c=()=>{clearTimeout(e),b(Error("Result wait aborted"))},e=setTimeout(()=>{d?.removeEventListener("abort",c),a()},500);d?.aborted?c():d?.addEventListener("abort",c,{once:!0})}),!(e=await a.get(c.agent_id)))return{content:[{type:"text",text:`Subagent not found: ${c.agent_id}`}],details:void 0,isError:!0};return{content:[{type:"text",text:k(e)}],details:j(e),..."failed"===e.status?{isError:!0}:{}}}})),d.registerTool((0,f.defineTool)({name:"steer_subagent",label:"Steer agent",description:"Send a steering message to a currently running subagent session.",parameters:e.Type.Object({agent_id:e.Type.String({description:"Subagent session ID."}),message:e.Type.String({description:"Instruction to inject after the current tool execution."})}),async execute(b,c){try{return await a.steer(c.agent_id,c.message),{content:[{type:"text",text:`Steering message sent to ${c.agent_id}.`}],details:void 0}}catch(a){return{content:[{type:"text",text:a instanceof Error?a.message:String(a)}],details:void 0,isError:!0}}}}))}}}function m(a){let b=a.extensions.find(a=>a.path===o);if(!b?.tools.has("Agent"))return a;let c=new Set(a.extensions.filter(a=>a.path!==o).filter(a=>{let b=(a.sourceInfo?.source??"").replace(/^npm:/,"").split("@")[0],c=a.path.replaceAll("\\","/").split("/");return b===q||c.some(a=>a===q)}).filter(a=>[...p].some(b=>a.tools.has(b))).map(a=>a.path));return 0===c.size?a:{...a,extensions:a.extensions.filter(a=>!c.has(a.path)),errors:a.errors.filter(a=>!c.has(a.path)&&(a.path!==o||![...c].some(b=>[...p].some(c=>a.error===`Tool "${c}" conflicts with ${b}`))))}}d()}catch(a){d(a)}})},12144:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A4:()=>G,HG:()=>H,OF:()=>I});var e=c(75430),f=c(29862),g=c(55511),h=c(29021),i=c(33873),j=c(18437),k=c(88250),l=c(96515),m=c(81186),n=c(87509),o=c(8084),p=c(41035),q=c(84851),r=c(70274),s=c(32302),t=c(69453),u=c(16525),v=c(7535),w=c(88002),x=c(65562),y=c(47128),z=c(15253),A=c(61577),B=c(57856),C=a([e,f,l,m,n,o,p,q,r,t,u,z]);[e,f,l,m,n,o,p,q,r,t,u,z]=C.then?(await C)():C;let J=new Set(["agent_end","agent_settled","auto_compaction_end","compaction_end"]),K=function(a=process.env.PI_WEB_IDLE_TIMEOUT_MS){if(void 0!==a&&""!==a.trim()){let b=Number(a);if(Number.isFinite(b)&&b>=0&&b<=0x7fffffff)return b;console.warn(`[pi-web] invalid PI_WEB_IDLE_TIMEOUT_MS "${a}", falling back to 10 minutes`)}return 6e5}(),L=["read","bash","edit","write","grep","find","ls"];class M extends e.Theme{constructor(){super({thinkingXhigh:"",searchMatchText:""},{selectedBg:""},"truecolor")}fg(...[,a]){return a}bg(...[,a]){return a}bold(a){return a}italic(a){return a}underline(a){return a}inverse(a){return a}strikethrough(a){return a}getFgAnsi(){return""}getBgAnsi(){return""}getThinkingBorderColor(){return a=>a}getBashModeBorderColor(){return a=>a}}let N=new M,O=new f.KeybindingsManager(f.TUI_KEYBINDINGS);function D(a,b){if(0===b.length)return[];let c=new Set(L),d=a.getAllTools().map(a=>a.name).filter(a=>!c.has(a));return[...new Set([...b,...d])]}class P{constructor(a,b={}){this.inner=a,this.listeners=[],this.pendingUiResponses=new Map,this.pendingUiRequests=new Map,this.activeCustomUis=new Map,this.extensionStatuses=new Map,this.extensionWidgets=new Map,this.activeExtensionWidgets=new Map,this.extensionWidgetGenerations=new Map,this.extensionWidgetsResetting=!1,this.pendingPromptCount=0,this.promptAdmissionTail=Promise.resolve(),this.extensionsBound=!1,this.extensionBindingPromise=null,this.extensionBindingError=null,this.forceEmptySystemPrompt=!1,this.unsubscribe=null,this.idleTimer=null,this.onDestroyCallback=null,this.shutdownPromise=null,this._alive=!0,this.lastAgentStart=0,this.exactSystemPrompt=b.exactSystemPrompt,this.chatOnly=b.chatOnly??!1,this.installExactSystemPromptContinuation(),this.applyExactSystemPrompt()}hasPendingUiRequest(){return this.pendingUiRequests.size>0}lastAgentStartAt(){return this.lastAgentStart}get sessionId(){return this.inner.sessionId}get sessionFile(){return this.inner.sessionFile??""}get cwd(){return this.inner.sessionManager.getCwd()}get streamingMessage(){return this.inner.agent.state?.streamingMessage}get isStreaming(){return this.inner.isStreaming}isAlive(){return this._alive}isChatOnly(){return this.chatOnly}isRunning(){return this._alive&&(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)}start(){this.unsubscribe=this.inner.subscribe(a=>{"agent_start"===a.type&&(this.lastAgentStart=Date.now()),"agent_end"===a.type&&(0,t.mD)(),J.has(a.type)&&this.resetIdleTimer(),this.emit(a)}),this.resetIdleTimer()}setForceEmptySystemPrompt(a){this.forceEmptySystemPrompt=a,this.applyForcedEmptySystemPrompt()}beginExtensionBinding(a={}){this.ensureExtensionsBound(a).catch(a=>{console.error("[pi-web] failed to dispatch session_start to extensions:",a instanceof Error?a.message:a)})}async waitUntilReady(){await this.waitForExtensionsBound()}applyExactSystemPrompt(){this.exactSystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt=this.exactSystemPrompt())}installExactSystemPromptContinuation(){if(!this.exactSystemPrompt)return;let a=this.inner.agent.prepareNextTurnWithContext;this.inner.agent.prepareNextTurnWithContext=async(b,c)=>{let d=await a?.(b,c);return{...d,context:{...d?.context??b.context,systemPrompt:this.exactSystemPrompt()}}}}ensureExtensionsBound(a={}){return(a.forceEmptySystemPrompt&&(this.forceEmptySystemPrompt=!0),this.extensionsBound)?(this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),Promise.resolve()):(this.extensionBindingPromise||(this.extensionBindingError=null,this.extensionBindingPromise=(async()=>{if(!this._alive)return;let a=this.createExtensionUiContext();if("function"==typeof this.inner.bindExtensions){let b=this.inner.bindExtensions;await b.call(this.inner,{uiContext:a,mode:"rpc",commandContextActions:this.createExtensionCommandContextActions(),shutdownHandler:()=>this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",notifyType:"warning",message:"Extension requested shutdown, but shutdown is not supported in Pi Web."}),onError:a=>this.emit({type:"extension_error",extensionPath:a.extensionPath,event:a.event,error:a.error})})}else this.inner.extensionRunner.setUIContext?.(a,"rpc");this.extensionsBound=!0,this.applyForcedEmptySystemPrompt(),this.applyExactSystemPrompt(),console.log(`[pi-web] session_start dispatched to extensions for session ${this.inner.sessionId}`)})().catch(a=>{throw this.extensionBindingError=a,a})),this.extensionBindingPromise)}async waitForExtensionsBound(){try{this.extensionBindingPromise&&await this.extensionBindingPromise}catch(a){throw a instanceof Error?a:Error(String(a))}if(this.extensionBindingError)throw this.extensionBindingError instanceof Error?this.extensionBindingError:Error(String(this.extensionBindingError))}shouldWaitForExtensions(a){return"prompt"===a||"steer"===a||"follow_up"===a||"get_commands"===a||"get_state"===a}async withFinalRunningNotification(a){try{return await a()}finally{this.resetIdleTimer()}}applyForcedEmptySystemPrompt(){this.forceEmptySystemPrompt&&this.inner.agent.state&&(this.inner.agent.state.systemPrompt="")}emit(a){for(let b of this.listeners)try{b(a)}catch(b){console.error(`[pi-web] failed to deliver ${a.type} event:`,b instanceof Error?b.message:b)}}async acquirePromptAdmission(){let a,b=this.promptAdmissionTail;return this.promptAdmissionTail=new Promise(b=>{a=b}),await b,a}resetIdleTimer(){0!==K&&(this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{this.isRunning()?this.resetIdleTimer():this.shutdown().catch(a=>{console.error("[pi-web] failed to shut down idle session:",a instanceof Error?a.message:a)})},K))}onEvent(a){for(let b of(this.listeners.push(a),this.pendingUiRequests.values()))a(b);return()=>{let b=this.listeners.indexOf(a);-1!==b&&this.listeners.splice(b,1)}}onDestroy(a){this.onDestroyCallback=a}async send(a){this.resetIdleTimer();let b=a.type;if(this.shouldWaitForExtensions(b)&&await this.waitForExtensionsBound(),"prompt"===b||"steer"===b||"follow_up"===b){let b=(0,j.kc)(a.images);if(b)throw Error(b)}switch(b){case"prompt":{let b=await this.acquirePromptAdmission();try{let b,c,d;if(this.inner.isBashRunning)throw Error("Cannot send a prompt while a shell command is running");let e=a.images,f=a.streamingBehavior,g=!1,h=!1,i=!1,j=new Promise((a,d)=>{b=()=>{g=!0,h||(h=!0,a())},c=a=>{h||(h=!0,d(a))}}),k=()=>{i||(i=!0,this.pendingPromptCount=Math.max(0,this.pendingPromptCount-1),this.resetIdleTimer())};this.pendingPromptCount+=1;try{d=this.inner.prompt(a.message,{...e?.length?{images:e}:{},...f?{streamingBehavior:f}:{},source:"rpc",preflightResult:a=>{a&&b()}})}catch(a){throw k(),a}return d.then(()=>{b(),k(),f||this.emit({type:"prompt_done"})},a=>{c(a),k(),(0,t.mD)(),g&&(this.emit({type:"prompt_error",errorMessage:a instanceof Error?a.message:String(a)}),f||this.emit({type:"prompt_done"}))}).catch(a=>{console.error("[pi-web] prompt completion handler failed:",a instanceof Error?a.message:a)}),await j,null}finally{b()}}case"abort":return await this.withFinalRunningNotification(()=>this.inner.abort()),null;case"get_state":{let a=this.inner.model,b=this.inner.getContextUsage();return{sessionId:this.inner.sessionId,sessionFile:this.inner.sessionFile??"",isStreaming:this.inner.isStreaming,isPromptRunning:this.pendingPromptCount>0,isBashRunning:this.inner.isBashRunning,isCompacting:this.inner.isCompacting,autoCompactionEnabled:this.inner.autoCompactionEnabled,autoRetryEnabled:this.inner.autoRetryEnabled,model:a?{id:a.id,provider:a.provider}:void 0,messageCount:0,pendingMessageCount:this.inner.pendingMessageCount,queuedMessages:{steering:[...this.inner.getSteeringMessages()],followUp:[...this.inner.getFollowUpMessages()]},contextUsage:b?{percent:b.percent,contextWindow:b.contextWindow,tokens:b.tokens}:null,systemPrompt:this.inner.agent.state?.systemPrompt??"",thinkingLevel:this.inner.agent.state?.thinkingLevel??"off",extensionStatuses:this.getExtensionStatuses(),extensionWidgets:this.getExtensionWidgets()}}case"set_model":{let{provider:b,modelId:c}=a,d=this.inner.modelRuntime.getModel(b,c);if(d||(await this.inner.modelRuntime.refresh({allowNetwork:!1}),d=this.inner.modelRuntime.getModel(b,c)),!d)throw Error(`Model not found: ${b}/${c}`);return await this.inner.setModel(d),(0,k.kn)(),(0,t.mD)(),{id:d.id,provider:d.provider}}case"fork_branch":{if(this.isRunning())throw Error("Cannot fork while the session is running");let b=a.entryId,c=this.inner.sessionManager,d=this.inner.sessionFile;if(!c.isPersisted())return{cancelled:!0};if(!d)throw Error("Persisted session is missing a session file");if(!c.getEntry(b))throw Error("Invalid entry ID for forking");let f=c.getSessionDir(),g=e.SessionManager.open(d,f),i=g.createBranchedSession(b);if(!i)throw Error("Failed to create forked session");if(!(0,h.existsSync)(i)){let a=[g.getHeader(),...g.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(i,a,{encoding:"utf8",flag:"wx"}),g.flushed=!0}let j=e.SessionManager.open(i,f).getSessionId();return(0,t.O8)(j,i),(0,t.mD)(),await (0,u.Pv)(i,c.getSessionId()),{cancelled:!1,newSessionId:j}}case"fork":{let b;if(this.inner.isBashRunning)throw Error("Cannot fork while a shell command is running");let c=this.inner.sessionId,d=a.entryId,f=this.inner.sessionManager,g=this.inner.sessionFile;if(!f.isPersisted())return{cancelled:!0};if(!g)throw Error("Persisted session is missing a session file");let i=f.getEntry(d);if(!i)throw Error("Invalid entry ID for forking");let j=f.getSessionDir();if(i.parentId){let a=e.SessionManager.open(g,j),c=a.createBranchedSession(i.parentId);if(!c)throw Error("Failed to create forked session");if(b=c,!(0,h.existsSync)(b)){let c=[a.getHeader(),...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(b,c,{encoding:"utf8",flag:"wx"}),a.flushed=!0}}else{let a=e.SessionManager.create(f.getCwd(),j);a.newSession({parentSession:g}),a.getSessionFile()&&a._rewriteFile(),b=a.getSessionFile()}let k=e.SessionManager.open(b,j).getSessionId();(0,t.O8)(k,b),(0,t.mD)();let l=f.getCwd();await this.shutdown();try{let a=await (0,w.KI)(l??"");(0,x.YH)(k,{path:b,cwd:l??"",projectKey:(0,v.z)(a?.projectRoot??l??""),parentId:c}),await (0,y.BC)(c)}catch{}return{cancelled:!1,newSessionId:k}}case"navigate_tree":if(this.inner.isBashRunning)throw Error("Cannot navigate while a shell command is running");return{cancelled:(await this.inner.navigateTree(a.targetId,{})).cancelled};case"set_thinking_level":{let b=a.level;return this.inner.setThinkingLevel(b),"xhigh"===b&&this.inner.model?.compat?.thinkingFormat==="deepseek"&&this.inner.agent?.state&&(this.inner.agent.state.thinkingLevel="xhigh"),(0,t.mD)(),null}case"compact":try{return await this.withFinalRunningNotification(()=>this.inner.compact(a.customInstructions))}finally{(0,t.mD)()}case"set_session_name":{let b=a.name?.trim();if(!b)throw Error("Session name cannot be empty");return this.inner.setSessionName(b),(0,t.mD)(),null}case"get_session_stats":return{...this.inner.getSessionStats(),sessionName:this.inner.sessionManager.getSessionName()};case"get_last_assistant_text":return{text:this.inner.getLastAssistantText()??""};case"set_auto_compaction":return this.inner.setAutoCompactionEnabled(a.enabled),null;case"clear_queue":return this.inner.clearQueue();case"steer":{let b=a.images;return await this.inner.steer(a.message,b?.length?b:void 0),null}case"follow_up":{let b=a.images;return await this.inner.followUp(a.message,b?.length?b:void 0),null}case"get_tools":{let a=this.inner.getAllTools(),b=new Set(this.inner.getActiveToolNames());return a.map(a=>({...a,active:b.has(a.name)}))}case"get_commands":{let a=[];for(let b of this.inner.extensionRunner.getRegisteredCommands())a.push({name:b.invocationName,description:b.description,source:"extension",sourceInfo:b.sourceInfo});for(let b of this.inner.promptTemplates)a.push({name:b.name,description:b.description,source:"prompt",sourceInfo:b.sourceInfo});for(let b of this.inner.resourceLoader.getSkills().skills)a.push({name:`skill:${b.name}`,description:b.description,source:"skill",sourceInfo:b.sourceInfo});return{commands:a}}case"set_tools":{let b=a.toolNames;if((0,p.ph)(this.inner.sessionManager.getEntries()))throw Error("Subagent tool selection is fixed by its profile");return this.setForceEmptySystemPrompt(0===b.length),this.inner.setActiveToolsByName(D(this.inner,b)),this.applyForcedEmptySystemPrompt(),null}case"reload":return await this.waitForExtensionsBound(),this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload(),"function"!=typeof this.inner.bindExtensions&&this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc"),this.applyForcedEmptySystemPrompt(),(0,k.kn)(),{success:!0};case"abort_compaction":return this.inner.abortCompaction(),null;case"extension_ui_response":return this.resolveExtensionUiResponse(a),null;case"extension_ui_input":return this.handleExtensionUiInput(a.id,a.data),null;case"set_auto_retry":return this.inner.setAutoRetryEnabled(a.enabled),null;case"bash":{if(this.pendingPromptCount>0||this.inner.isStreaming||this.inner.isCompacting||this.inner.isBashRunning)throw Error("Cannot run a shell command while the session is busy");let b=this.inner.executeBash(a.command,void 0,{excludeFromContext:a.excludeFromContext,operations:(0,m.J1)({shellPath:this.inner.settingsManager.getShellPath()})});try{return await b}finally{this.resetIdleTimer(),(0,t.mD)()}}case"abort_bash":return this.inner.abortBash(),null;default:throw Error(`Unsupported command: ${b}`)}}destroy(){if(this._alive){for(let a of(this._alive=!1,this.idleTimer&&clearTimeout(this.idleTimer),this.inner.isBashRunning&&this.inner.abortBash(),this.unsubscribe?.(),this.pendingUiResponses.values()))a.cancel();for(let a of Array.from(this.activeCustomUis.keys()))this.closeCustomUi(a,void 0);this.pendingUiResponses.clear(),this.pendingUiRequests.clear(),this.clearExtensionWidgets(!1);try{this.inner.dispose()}finally{this.onDestroyCallback?.()}}}async shutdown(){return this.shutdownPromise?this.shutdownPromise:this._alive?(this.shutdownPromise=(async()=>{try{try{await this.waitForExtensionsBound()}catch(a){console.error("[pi-web] extension binding failed before session shutdown:",a instanceof Error?a.message:a)}await this.inner.extensionRunner.emit?.({type:"session_shutdown",reason:"quit"})}finally{this.destroy()}})(),this.shutdownPromise):void 0}resolveExtensionUiResponse(a){let b=this.pendingUiResponses.get(a.id);b&&b.resolve(a)}getExtensionStatuses(){return Array.from(this.extensionStatuses,([a,b])=>({key:a,text:b}))}getExtensionWidgets(){return Array.from(this.extensionWidgets.values())}nextExtensionWidgetGeneration(a){let b=(this.extensionWidgetGenerations.get(a)??0)+1;return this.extensionWidgetGenerations.set(a,b),b}disposeExtensionWidgetComponent(a){if(!a||"object"!=typeof a&&"function"!=typeof a)return;let b=a.dispose;if("function"==typeof b)try{b.call(a)}catch{}}emitExtensionWidgetClear(a){this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:void 0,widgetPlacement:void 0})}clearExtensionWidget(a,b=!0){let c=this.nextExtensionWidgetGeneration(a),d=this.activeExtensionWidgets.get(a);return this.activeExtensionWidgets.delete(a),this.extensionWidgets.delete(a),d&&this.disposeExtensionWidgetComponent(d.component),this.extensionWidgetGenerations.get(a)!==c||b&&this.emitExtensionWidgetClear(a),c}clearExtensionWidgets(a){for(let b of new Set([...this.extensionWidgets.keys(),...this.activeExtensionWidgets.keys()]))this.clearExtensionWidget(b,a)}resetExtensionWidgetsForReload(){this.extensionWidgetsResetting=!0;try{for(let a of[...this.activeExtensionWidgets.keys()])this.clearExtensionWidget(a);this.extensionWidgets.clear()}finally{this.extensionWidgetsResetting=!1}}emitExtensionWidgetError(a,b){this.emit({type:"extension_error",extensionPath:`extension-widget:${a}`,event:"setWidget",error:b instanceof Error?b.message:String(b)})}failExtensionWidget(a,b,c,d,e){if(this.extensionWidgetGenerations.get(a)!==b)return void this.disposeExtensionWidgetComponent(e);let f=this.activeExtensionWidgets.get(a),g=!d;f?.generation===b?(g=f.rendered||!f.clearEmitted,this.activeExtensionWidgets.delete(a),this.disposeExtensionWidgetComponent(f.component)):this.disposeExtensionWidgetComponent(e),this.extensionWidgetGenerations.get(a)!==b||(this.extensionWidgets.delete(a),g&&this.emitExtensionWidgetClear(a)),this.emitExtensionWidgetError(a,c)}renderExtensionWidget(a){let b;if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;try{b=a.component.render(B.p1)}catch(b){this.failExtensionWidget(a.key,a.generation,b,a.clearEmitted);return}if(!Array.isArray(b)||!b.every(a=>"string"==typeof a))return void this.failExtensionWidget(a.key,a.generation,Error("Extension widget render must return string[]"),a.clearEmitted);if(this.activeExtensionWidgets.get(a.key)!==a||this.extensionWidgetGenerations.get(a.key)!==a.generation)return;let c=b;this.extensionWidgets.set(a.key,{key:a.key,lines:c,placement:a.placement}),a.rendered=!0,this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a.key,widgetLines:c,widgetPlacement:a.placement})}setExtensionWidgetFactory(a,b,c){let d,e=this.extensionWidgets.has(a)||this.activeExtensionWidgets.has(a),f=this.clearExtensionWidget(a,e);if(this.extensionWidgetGenerations.get(a)!==f)return;let g=(0,B.TQ)(()=>{let b=this.activeExtensionWidgets.get(a);b?.generation===f&&this.renderExtensionWidget(b)},B.p1);try{d=b(g,N)}catch(b){this.failExtensionWidget(a,f,b,e);return}if(this.extensionWidgetGenerations.get(a)!==f)return void this.disposeExtensionWidgetComponent(d);if(!d||"object"!=typeof d&&"function"!=typeof d||"function"!=typeof d.render)return void this.failExtensionWidget(a,f,Error("Extension widget factory must return a component with render(width)"),e,d);let h={key:a,component:d,placement:c?.placement??"aboveEditor",generation:f,clearEmitted:e,rendered:!1};this.activeExtensionWidgets.set(a,h),this.renderExtensionWidget(h)}getCustomUiWidth(a){if(!a||"object"!=typeof a)return B.p1;let b=a.overlayOptions,c="function"==typeof b?b():b;if(!c||"object"!=typeof c)return B.p1;let d=c.width;return"number"==typeof d&&Number.isFinite(d)?Math.max(40,Math.min(140,Math.round(d))):92}emitCustomUiRender(a,b){let c;try{c=b.component.render(b.width)}catch(a){c=[`Extension custom UI render failed: ${a instanceof Error?a.message:String(a)}`]}let d={type:"extension_ui_request",id:a,method:"custom",lines:c};this.pendingUiRequests.set(a,d),this.emit(d)}closeCustomUi(a,b){let c=this.activeCustomUis.get(a);if(c&&!c.settled){c.settled=!0,this.activeCustomUis.delete(a),this.pendingUiRequests.delete(a);try{c.component.dispose?.()}catch{}this.emit({type:"extension_ui_request",id:a,method:"custom",lines:[],closed:!0}),c.resolve(b)}}handleExtensionUiInput(a,b){let c=this.activeCustomUis.get(a);if(c&&"string"==typeof b)try{c.component.handleInput?.(b),this.activeCustomUis.has(a)&&this.emitCustomUiRender(a,c)}catch(b){this.closeCustomUi(a,void 0),this.emit({type:"extension_error",extensionPath:`custom-ui:${a}`,event:"custom_ui_input",error:b instanceof Error?b.message:String(b)})}}requestExtensionCustomUi(a,b){if("function"!=typeof a)return Promise.resolve(void 0);let c=(0,g.randomUUID)(),d=this.getCustomUiWidth(b);return new Promise(b=>{let e=!1,f=(0,B.TQ)(()=>{let a=this.activeCustomUis.get(c);a&&this.emitCustomUiRender(c,a)},d),g=a=>{e||(e=!0,b(a))},h=a=>{this.activeCustomUis.has(c)?this.closeCustomUi(c,a):g(a)};Promise.resolve().then(()=>a(f,N,O,h)).then(a=>{if(e){try{a?.dispose?.()}catch{}return}if(!a||"object"!=typeof a||"function"!=typeof a.render)return void g(void 0);let b={component:a,width:d,resolve:a=>g(a),settled:!1};this.activeCustomUis.set(c,b),this.emitCustomUiRender(c,b)}).catch(a=>{e||(this.emit({type:"extension_error",extensionPath:`custom-ui:${c}`,event:"custom_ui",error:a instanceof Error?a.message:String(a)}),g(void 0))})})}requestExtensionUi(a,b,c,d,e){if(e?.aborted)return Promise.resolve(b);let f=(0,g.randomUUID)(),h={type:"extension_ui_request",id:f,...a,...d?{timeout:d,expiresAt:Date.now()+d}:{}};return new Promise(a=>{let g,i=()=>{g&&clearTimeout(g),e?.removeEventListener("abort",k),this.pendingUiRequests.delete(f),this.pendingUiResponses.delete(f)},j=b=>{i(),a(b)},k=()=>j(b);d&&(g=setTimeout(()=>j(b),d)),e?.addEventListener("abort",k,{once:!0}),this.pendingUiRequests.set(f,h),this.pendingUiResponses.set(f,{resolve:a=>j(c(a)),cancel:()=>j(b)}),this.emit(h)})}createExtensionUiContext(){return{select:(a,b,c)=>this.requestExtensionUi({method:"select",title:a,options:b,...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),confirm:(a,b,c)=>this.requestExtensionUi({method:"confirm",title:a,message:b,...c?.timeout?{timeout:c.timeout}:{}},!1,a=>"confirmed"in a&&a.confirmed,c?.timeout,c?.signal),input:(a,b,c)=>this.requestExtensionUi({method:"input",title:a,...void 0!==b?{placeholder:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),editor:(a,b,c)=>this.requestExtensionUi({method:"editor",title:a,...void 0!==b?{prefill:b}:{},...c?.timeout?{timeout:c.timeout}:{}},void 0,a=>"value"in a?a.value:void 0,c?.timeout,c?.signal),notify:(a,b)=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"notify",message:a,notifyType:b})},onTerminalInput:()=>()=>{},setStatus:(a,b)=>{void 0===b?this.extensionStatuses.delete(a):this.extensionStatuses.set(a,b),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setStatus",statusKey:a,statusText:b})},setWorkingMessage:()=>{},setWorkingVisible:()=>{},setWorkingIndicator:()=>{},setHiddenThinkingLabel:()=>{},setWidget:(a,b,c)=>{if(!this._alive||this.extensionWidgetsResetting)return;if("function"==typeof b)return void this.setExtensionWidgetFactory(a,b,c);if(void 0!==b&&!Array.isArray(b))return;if(void 0===b)return void this.clearExtensionWidget(a);let d=this.activeExtensionWidgets.has(a)?this.clearExtensionWidget(a):this.nextExtensionWidgetGeneration(a);this.extensionWidgetGenerations.get(a)===d&&(this.extensionWidgets.set(a,{key:a,lines:b,placement:c?.placement??"aboveEditor"}),this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setWidget",widgetKey:a,widgetLines:b,widgetPlacement:c?.placement}))},setFooter:()=>{},setHeader:()=>{},setTitle:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"setTitle",title:a})},custom:(a,b)=>this.requestExtensionCustomUi(a,b),pasteToEditor:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},setEditorText:a=>{this.emit({type:"extension_ui_request",id:(0,g.randomUUID)(),method:"set_editor_text",text:a})},getEditorText:()=>"",addAutocompleteProvider:()=>{},setEditorComponent:()=>{},getEditorComponent:()=>void 0,get theme(){return N},getAllThemes:()=>[],getTheme:()=>void 0,setTheme:()=>({success:!1,error:"Theme switching is not supported in Pi Web extension UI yet"}),getToolsExpanded:()=>!1,setToolsExpanded:()=>{}}}createExtensionCommandContextActions(){return{waitForIdle:async()=>{let a=this.inner.agent;await a.waitForIdle?.()},newSession:async()=>({cancelled:!0}),fork:async()=>({cancelled:!0}),navigateTree:async(a,b)=>({cancelled:(await this.inner.navigateTree(a,{summarize:b?.summarize})).cancelled}),switchSession:async()=>({cancelled:!0}),reload:async()=>{this.extensionStatuses.clear(),this.resetExtensionWidgetsForReload(),this.syncProjectTrust(),await this.inner.reload({beforeSessionStart:()=>{this.inner.extensionRunner.setUIContext?.(this.createExtensionUiContext(),"rpc")}}),this.applyForcedEmptySystemPrompt()}}}syncProjectTrust(){let a=(0,z.Y1)(this.cwd,(0,e.getAgentDir)());this.inner.settingsManager.setProjectTrusted(a.trusted)}}function E(){if(!globalThis.__piSessions){globalThis.__piSessions=new Map;let a=()=>globalThis.__piSessions?.forEach(a=>a.destroy());process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__piSessions}async function F(a,b){let c=a.getSessionFile();if(!c||(0,h.existsSync)(c))return;let d=a.getHeader();if(!d)return;let e=[d,...a.getEntries()].map(a=>JSON.stringify(a)).join("\n")+"\n";(0,h.writeFileSync)(c,e,{encoding:"utf8",flag:"wx"}),a.flushed=!0,(0,t.O8)(b,c);let f=a.getCwd();try{let a=await (0,w.KI)(f??"");(0,x.YH)(b,{path:c,cwd:f??"",projectKey:(0,v.z)(a?.projectRoot??f??"")})}catch{}}function G(a){return E().get(a)}function H(){let a=new Set;for(let[b,c]of E())c.isRunning()&&a.add(c.sessionId||b);return[...a]}async function I(a,b,c,d={}){let f,g,j,{toolNames:q,initialModel:u,thinkingLevel:v}=d,w=E(),x=(globalThis.__piStartLocks||(globalThis.__piStartLocks=new Map),globalThis.__piStartLocks),y=w.get(a);if(y?.isAlive())return{session:y,realSessionId:a};let B=x.get(a);if(B)return B;if(b)f=e.SessionManager.open(b,void 0);else{if(!c)throw Error("cwd is required for a new session");let b=a.length>0&&!a.startsWith("__");f=e.SessionManager.create(c,void 0,b?{id:a}:void 0),b&&await F(f,a)}let C=f.getCwd(),G=(globalThis.__piStartingSessionCwds||(globalThis.__piStartingSessionCwds=new Map),g=globalThis.__piStartingSessionCwds,j=function(a){let b=(0,i.resolve)(a);try{return(0,h.realpathSync)(b)}catch{return b}}(C),g.set(j,(g.get(j)??0)+1),()=>{let a=(g.get(j)??1)-1;a>0?g.set(j,a):g.delete(j)}),H=(async()=>{let a=b?(0,p.ph)(f.getEntries()):null,c=!!(a?.loadExtensions||a?.loadSkills),d=a?0===a.tools.length&&!c:q?.length===0;d||(0,e.initTheme)();let g=(0,e.getAgentDir)(),h=a?.tools;a||void 0===q||(h=0===q.length?[]:void 0);let i=(0,z.Fk)(C,g),j=e.SettingsManager.create(C,g),x=await (0,e.createAgentSessionServices)({cwd:C,agentDir:g,settingsManager:j,resourceLoaderOptions:a?{noExtensions:!a.loadExtensions,noSkills:!a.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,systemPrompt:" ",appendSystemPrompt:a.appendSystemPrompt}:d?s.M:{extensionFactories:[(0,m.eD)({cwd:C,settings:j}),(0,n.U)(),(0,o.Vj)(Q.extensionRuntime,()=>(0,p.IR)(C),r.N)],extensionsOverride:a=>(0,m.Ds)((0,o.U6)(a))},...i?{resourceLoaderReloadOptions:i}:{}}),y=await (0,l.p)(x.modelRuntime,x.settingsManager.getEnabledModels()),B=x.settingsManager.getDefaultProvider(),E=x.settingsManager.getDefaultModel(),F=f.getBranch().some(a=>"message"===a.type)?{scopedModels:[...y.scopedModels]}:(0,l.I)(y,{...u?{requestedModel:u}:{},...B&&E?{defaultModel:{provider:B,modelId:E}}:{},...v?{thinkingLevel:v}:{}}),{session:G}=await (0,e.createAgentSessionFromServices)({services:x,sessionManager:f,...F.model?{model:F.model}:{},...F.thinkingLevel?{thinkingLevel:F.thinkingLevel}:{},...F.scopedModels.length>0?{scopedModels:F.scopedModels}:{},...void 0!==h?{tools:h}:{}});(await (0,A.o)(x.settingsManager,{...u?{model:u}:{},...v?{thinkingLevel:v}:{}},{...G.model?{model:{provider:G.model.provider,modelId:G.model.id}}:{},thinkingLevel:G.thinkingLevel,supportsThinking:G.supportsThinking()})).modelDefaultChanged&&(0,k.kn)(),q&&q.length>0&&G.setActiveToolsByName(D(G,q));let H=new P(G);q?.length===0&&H.setForceEmptySystemPrompt(!0),H.start();let I=G.sessionId,J=G.sessionFile;return J&&(0,t.O8)(I,J),H.onDestroy(()=>w.delete(I)),w.set(I,H),d||H.beginExtensionBinding({forceEmptySystemPrompt:q?.length===0}),{session:H,realSessionId:I}})().finally(()=>{x.delete(a),G()});return x.set(a,H),H}let Q=(0,q.s)({getSession:a=>E().get(a),registerSession:(a,b)=>{let c=new P(a,{...b?.exactSystemPrompt!==void 0?{exactSystemPrompt:()=>b.exactSystemPrompt}:{},chatOnly:b?.chatOnly}),d=a.sessionId,e=a.sessionFile;e&&(0,t.O8)(d,e),c.onDestroy(()=>E().delete(d)),E().set(d,c),c.start(),c.isChatOnly()||c.beginExtensionBinding()},reopenSession:async(a,b)=>(await I(a,b,void 0)).session,resolveSessionPath:t.os,invalidateSessionList:t.mD,isBuiltInSubagentsEnabled:r.N});d()}catch(a){d(a)}})},12817:a=>{"use strict";a.exports=function(a){if(null===a||"object"!=typeof a)return a;if(a instanceof Object)var c={__proto__:b(a)};else var c=Object.create(null);return Object.getOwnPropertyNames(a).forEach(function(b){Object.defineProperty(c,b,Object.getOwnPropertyDescriptor(a,b))}),c};var b=Object.getPrototypeOf||function(a){return a.__proto__}},12969:(a,b,c)=>{"use strict";c(55511),c(29021),c(33873)},13884:(a,b,c)=>{"use strict";let d=c(93329);a.exports={toPromise:function(a){return(...b)=>new Promise((c,d)=>{b.push((a,b)=>{a?d(a):c(b)}),a(...b)})},toSync:function(a){return(...b)=>{let c,d;if(b.push((a,b)=>{c=a,d=b}),a(...b),c)throw c;return d}},toSyncOptions:function(a){var b;let c;if((a={...a}).fs=(c={...b=a.fs||d},["mkdir","realpath","stat","rmdir","utimes"].forEach(a=>{c[a]=(...c)=>{let d,e=c.pop();try{d=b[`${a}Sync`](...c)}catch(a){return e(a)}e(null,d)}}),c),"number"==typeof a.retries&&a.retries>0||a.retries&&"number"==typeof a.retries.retries&&a.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return a}}},14916:(a,b,c)=>{"use strict";c.d(b,{C1:()=>e,G1:()=>f,kU:()=>d});let d=["read","grep","find","ls"],e=["bash","read","edit","write","grep","find","ls"],f=["read","bash","edit","write","grep","find","ls"]},15253:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Fk:()=>h,Y1:()=>g});var e=c(75430),f=a([e]);function g(a,b){if(!(a&&(0,e.hasTrustRequiringProjectResources)(a)))return{requiresTrust:!1,trusted:!0};let c=new e.ProjectTrustStore(b);return{requiresTrust:!0,trusted:!0===c.get(a)}}function h(a,b){if(!g(a,b).requiresTrust)return;let c=new e.ProjectTrustStore(b);return{resolveProjectTrust:async()=>!0===c.get(a)}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},16176:a=>{"use strict";let b=Symbol();a.exports.probe=function(a,c,d){let e=c[b];if(e)return c.stat(a,(a,b)=>{if(a)return d(a);d(null,b.mtime,e)});let f=new Date(1e3*Math.ceil(Date.now()/1e3)+5);c.utimes(a,f,f,e=>{if(e)return d(e);c.stat(a,(a,e)=>{if(a)return d(a);let f=e.mtime.getTime()%1e3==0?"s":"ms";Object.defineProperty(c,b,{value:f}),d(null,e.mtime,f)})})},a.exports.getMtime=function(a){let b=Date.now();return"s"===a&&(b=1e3*Math.ceil(b/1e3)),new Date(b)}},16983:(a,b,c)=>{"use strict";c.d(b,{Wv:()=>h,jN:()=>j,vH:()=>i});var d=c(29021),e=c(33873),f=c(83739),g=c(15011);let h=8;function i(a,b){if(b.length>h)throw Error(`Agent input_files accepts at most ${h} files`);let c=(0,d.realpathSync)(a),i=new Set([c]),j=new TextDecoder("utf-8",{fatal:!0}),k=new Set,l=[],m=0;for(let h of b){let b,n;if(!h.trim())throw Error("Agent input_files paths must not be empty");try{b=(0,d.realpathSync)((0,e.resolve)(a,h))}catch{throw Error(`Agent input file does not exist: ${h}`)}if(!(0,f.o)(b,i))throw Error(`Agent input file is outside the session cwd: ${h}`);if(!(0,d.statSync)(b).isFile())throw Error(`Agent input path is not a file: ${h}`);if(k.has(b))continue;k.add(b);let o=(0,d.readFileSync)(b);if((m+=o.byteLength)>524288)throw Error("Agent input_files exceeds the 524288-byte total limit");try{n=j.decode(o)}catch{throw Error(`Agent input file is not valid UTF-8 text: ${h}`)}l.push({path:(0,g.W3)((0,e.relative)(c,b)),content:n})}return l}function j(a,b){if(0===b.length)return a;let c=b.map(a=>`<document path=${JSON.stringify(a.path)}>
5
+ ${a.content}
6
+ </document>`).join("\n\n");return`${a}
7
+
8
+ <documents>
9
+ ${c}
10
+ </documents>`}},18437:(a,b,c)=>{"use strict";function d(a){if(void 0===a)return null;if(!Array.isArray(a))return"images must be an array";if(a.length>10)return"A message can include at most 10 images";for(let b of a){if(!b||"object"!=typeof b||"image"!==b.type)return"Each attachment must be an image";if(!function(a){if(!a||"object"!=typeof a||"string"!=typeof a.data||"string"!=typeof a.mimeType||!a.mimeType.startsWith("image/"))return!1;let b=function(a){if(!a||a.length%4!=0)return null;let b=a.endsWith("==")?2:+!!a.endsWith("="),c=a.length-b;for(let b=0;b<c;b+=1){var d;if(!((d=a.charCodeAt(b))>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||43===d||47===d))return null}for(let b=c;b<a.length;b+=1)if("="!==a[b])return null;return a.length/4*3-b}(a.data);return null!==b&&b<=0xa00000}(b))return"Each image must be valid base64 image data of 10MB or smaller"}return null}c.d(b,{kc:()=>d})},18827:(a,b,c)=>{var d=c(27910).Stream;a.exports=function(a){return{ReadStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this);var f=this;this.path=c,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536;for(var g=Object.keys(e=e||{}),h=0,i=g.length;h<i;h++){var j=g[h];this[j]=e[j]}if(this.encoding&&this.setEncoding(this.encoding),void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw Error("start must be <= end");this.pos=this.start}null!==this.fd?process.nextTick(function(){f._read()}):a.open(this.path,this.flags,this.mode,function(a,b){if(a){f.emit("error",a),f.readable=!1;return}f.fd=b,f.emit("open",b),f._read()})},WriteStream:function b(c,e){if(!(this instanceof b))return new b(c,e);d.call(this),this.path=c,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0;for(var f=Object.keys(e=e||{}),g=0,h=f.length;g<h;g++){var i=f[g];this[i]=e[i]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=a.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},30223:a=>{a.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&a.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&a.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},32105:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Wz:()=>k,bJ:()=>n,s4:()=>m});var e=c(75430),f=c(51455),g=c(69453),h=a([e,g]);[e,g]=h.then?(await h)():h;let o=new Set(["bash"]);async function i(a){let b=await (0,g.os)(a);if(!b)return null;let c=131072;for(;c<=1048576;){let a=await (0,f.open)(b,"r");try{let{size:b}=await a.stat(),d=Math.max(0,b-c),e=Buffer.alloc(b-d);e.length>0&&await a.read(e,0,e.length,d);let f=e.toString("utf8").split("\n"),g=d>0?f.slice(1):f,h=[];for(let a=g.length-1;a>=0&&h.length<8;a--){let b=g[a].trim();if(b)try{let a=JSON.parse(b);a?.type==="message"&&h.unshift(a)}catch{}}if(h.length>=4||c>=1048576||b<=c)return h}finally{await a.close()}c*=2}return null}function j(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>!!a&&"object"==typeof a&&"text"in a).map(a=>a.text).join("\n"):""}async function k(a){try{var b;let c=await i(a);if(!c)return null;let d=c.filter(a=>"message"===a.type),e=!1,f=0,g=[],h=d[d.length-1],k=!!h&&(b=h.message,"assistant"===b.role&&!!Array.isArray(b.content)&&b.content.some(a=>!!a&&"object"==typeof a&&"toolCall"===a.type&&o.has(a.name))),l=h&&"number"==typeof h.message.timestamp?h.message.timestamp:h?new Date(h.timestamp).getTime():0,m=k&&!Number.isNaN(l)?l:0;for(let a of d.slice(-4)){let b=a.message,c="number"==typeof b.timestamp?b.timestamp:new Date(a.timestamp).getTime();if(Number.isNaN(c)||(f=Math.max(f,c)),"assistant"===b.role){b.errorMessage&&(e=!0);let a=j(b.content);a&&g.push(`AI: ${a.slice(0,400)}`)}else if("toolResult"===b.role){b.isError&&(e=!0);let a=b.details;a&&"number"==typeof a.exitCode&&0!==a.exitCode&&(e=!0);let c=j(b.content);c&&g.push(`工具 ${b.toolName}: ${c.slice(0,300)}`)}else if("user"===b.role){let a=j(b.content);a&&g.push(`用户: ${a.slice(0,300)}`)}}return{failure:e,recentText:g.join("\n").slice(0,4e3),lastActivityMs:f,lastIsCommand:k,lastCommandAtMs:m}}catch(b){return console.error(`[task-scheduler] 读会话快照失败 ${a}:`,b instanceof Error?b.message:b),null}}async function l(a,b,c){let d=null,f=setTimeout(()=>{if(d&&"function"==typeof d.dispose)try{d.dispose()}catch{}},9e4);try{(0,e.initTheme)();let f=(0,e.getAgentDir)(),g=e.SettingsManager.create(a,f),h=await (0,e.createAgentSessionServices)({cwd:a,agentDir:f,settingsManager:g,resourceLoaderOptions:{extensionFactories:[]}}),i=e.SessionManager.inMemory(a);d=(await (0,e.createAgentSessionFromServices)({services:h,sessionManager:i,noTools:"all"})).session,await d.prompt(`${b}
2
11
 
3
12
  ${c}`,{expandPromptTemplates:!1,source:"rpc"}),await d.waitForIdle();let j=d.getLastAssistantText()??"";return function(a){let b=a.indexOf("{");if(-1===b)return null;let c=0;for(let d=b;d<a.length;d++)if("{"===a[d])c+=1;else if("}"===a[d]&&(c-=1,0===c))try{return JSON.parse(a.slice(b,d+1))}catch{break}return null}(j)??null}catch(a){return console.error("[audit-session] 判定失败:",a instanceof Error?a.message:a),null}finally{if(clearTimeout(f),d)try{d.dispose()}catch{}}}let p=`你是任务卡审核员。下面给出任务卡信息与执行会话最后几条消息,判断任务执行结果:
4
13
  - done: 任务已正确完成
@@ -14,9 +23,19 @@ ${c}`,{expandPromptTemplates:!1,source:"rpc"}),await d.waitForIdle();let j=d.get
14
23
  - asking: AI 在提问等待用户输入
15
24
  - normal: 正常运行中(长任务)
16
25
 
17
- 只输出一行 JSON(不要输出其他文字):{"kind":"sync_server|infinite_loop|rate_limit|error|asking|normal","detail":"简短说明"}`;async function n(a){let b=[`【任务卡 #${a.cardNumber}】${a.cardName}`,`任务描述:${a.taskDescription||"(空)"}`,"\n执行会话最后几条消息:",a.recentMessages||"(无消息)"].join("\n"),c=await l(a.cwd,q,b);return c&&["sync_server","infinite_loop","rate_limit","error","asking","normal"].includes(c.kind)?{kind:c.kind,detail:c.detail??""}:null}d()}catch(a){d(a)}})},45399:(a,b,c)=>{c.d(b,{ZUJ:()=>g});var d,e,f={};c.r(f),c.d(f,{ExtendsFalse:()=>db,ExtendsTrue:()=>c9,ExtendsUnion:()=>c7,IsExtendsFalse:()=>dc,IsExtendsTrue:()=>da,IsExtendsTrueLike:()=>dd,IsExtendsUnion:()=>c8,Match:()=>de});var g={};c.r(g),c.d(g,{Any:()=>T,Array:()=>I,BigInt:()=>aJ,Boolean:()=>aL,Call:()=>dP,Capitalize:()=>dT,Codec:()=>ax,Conditional:()=>d7,Constructor:()=>L,ConstructorParameters:()=>ea,Cyclic:()=>ad,Decode:()=>ay,DecodeBuilder:()=>aw,Dependent:()=>ak,Encode:()=>az,EncodeBuilder:()=>av,Enum:()=>an,Evaluate:()=>fi,Exclude:()=>ed,Extends:()=>dF,ExtendsResult:()=>f,Extract:()=>eg,Function:()=>N,Generic:()=>R,Identifier:()=>aN,Immutable:()=>aB,Index:()=>ek,Infer:()=>ai,InstanceType:()=>ez,Instantiate:()=>ff,Integer:()=>aQ,Interface:()=>dw,Intersect:()=>ap,IsAny:()=>U,IsArray:()=>J,IsBigInt:()=>aK,IsBoolean:()=>aM,IsCall:()=>dQ,IsCodec:()=>aA,IsConstructor:()=>M,IsCyclic:()=>ae,IsDependent:()=>al,IsEnum:()=>ao,IsEnumValue:()=>am,IsFunction:()=>O,IsGeneric:()=>S,IsIdentifier:()=>aO,IsImmutable:()=>aC,IsInfer:()=>aj,IsInteger:()=>aR,IsIntersect:()=>aq,IsKind:()=>C,IsLiteral:()=>aV,IsNever:()=>W,IsNull:()=>aX,IsNumber:()=>a$,IsObject:()=>aa,IsOptional:()=>$,IsParameter:()=>a2,IsReadonly:()=>aG,IsRecord:()=>bC,IsRef:()=>Q,IsRefine:()=>aI,IsRest:()=>bE,IsSchema:()=>D,IsString:()=>a4,IsSymbol:()=>a0,IsTemplateLiteral:()=>c6,IsThis:()=>bG,IsTuple:()=>bd,IsUndefined:()=>bI,IsUnion:()=>a6,IsUnknown:()=>ac,IsUnsafe:()=>ag,IsVoid:()=>bK,KeyOf:()=>eC,Literal:()=>aT,Lowercase:()=>dV,Mapped:()=>eF,Module:()=>fj,Never:()=>V,NonNullable:()=>eJ,Null:()=>aW,Number:()=>aZ,Object:()=>_,Omit:()=>eM,Optional:()=>Z,Parameter:()=>a1,Parameters:()=>eQ,Partial:()=>eT,Pick:()=>eW,Readonly:()=>aF,ReadonlyObject:()=>eZ,ReadonlyType:()=>e$,Record:()=>bx,RecordKey:()=>bA,RecordPattern:()=>bz,RecordValue:()=>bB,Ref:()=>P,Refine:()=>aH,Required:()=>e1,Rest:()=>bD,ReturnType:()=>e4,Script:()=>fk,String:()=>a3,Symbol:()=>a_,TemplateLiteral:()=>c5,This:()=>bF,Tuple:()=>bc,Uncapitalize:()=>dX,Undefined:()=>bH,Union:()=>a5,Unknown:()=>ab,Unsafe:()=>af,Uppercase:()=>dZ,Void:()=>bJ,With:()=>e7});let h={assign:0,create:0,clone:0,discard:0,update:0};function i(a,b){return h.assign+=1,{...a,...b}}function j(a){return Array.isArray(a)}function k(a){return"bigint"==typeof a}function l(a){return"boolean"==typeof a}function m(a){return"function"==typeof a}function n(a){return null===a}function o(a){return Number.isFinite(a)}function p(a){return q(a)&&!j(a)}function q(a){return"object"==typeof a&&!n(a)}function r(a){return"string"==typeof a}function s(a,b,c){return 0===a.length?c():b(a[0],a.slice(1))}function t(a){return"__proto__"===a||"constructor"===a||"prototype"===a}function u(a,b){return t(b)?Object.prototype.hasOwnProperty.call(a,b):b in a}function v(a){return Object.getOwnPropertyNames(a)}function w(a){return Object.values(a)}function x(a){return h.clone+=1,function a(b){return globalThis.ArrayBuffer.isView(b)?b.slice():b instanceof globalThis.RegExp?new RegExp(b.source,b.flags):b instanceof globalThis.Map?new Map(a([...b.entries()])):b instanceof globalThis.Set?new Set(a([...b.values()])):j(b)?b.map(b=>a(b)):q(b)?function(b){return!function(a){if(!q(a))return!1;let b=globalThis.Object.getPrototypeOf(a);return!n(b)&&"function"==typeof b.constructor&&b.constructor!==globalThis.Object&&"Object"!==b.constructor.name}(b)?u(b,"~kind")||u(b,"~unsafe")?function(b){let c={},d=Object.getOwnPropertyDescriptors(b);for(let b of Object.keys(d)){if(t(b))continue;let e=d[b];u(e,"value")&&Object.defineProperty(c,b,{...e,value:a(e.value)})}return c}(b):function(b){let c={};for(let d of v(b))t(d)||(c[d]=a(b[d]));for(let d of Object.getOwnPropertySymbols(b))c[d]=a(b[d]);return c}(b):b}(b):b}(a)}let y={immutableTypes:!1,maxErrors:8,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function z(a,b,c={}){h.create+=1;let d={...b,...c},e=y.enumerableKind?{...d,...a}:function(a,b){for(let c of Object.keys(b))Object.defineProperty(a,c,{configurable:!0,writable:!0,enumerable:!1,value:b[c]});return a}(d,a);return y.immutableTypes?Object.freeze(e):e}function A(a,b){h.discard+=1;let c={},d=Object.getOwnPropertyDescriptors(x(a)),e=new Set(b);for(let a of Object.keys(d))e.has(a)||Object.defineProperty(c,a,d[a]);return c}function B(a,b,c){h.update+=1;let d=x(a);for(let a of Object.keys(b))Object.defineProperty(d,a,{configurable:!0,writable:!0,enumerable:y.enumerableKind,value:b[a]});for(let a of Object.keys(c))Object.defineProperty(d,a,{configurable:!0,enumerable:!0,writable:!0,value:c[a]});return d}function C(a,b){return q(a)&&u(a,"~kind")&&a["~kind"]===b}function D(a){return q(a)}function E(a,b,c){return z({"~kind":"Deferred"},{type:"deferred",action:a,parameters:b,options:c},{})}function F(a){return C(a,"Deferred")}function G(a,b){return B(B(a,{"~readonly":!0},{}),{},b)}function H(a,b){return B(B(a,{"~optional":!0},{}),{},b)}function I(a,b){return z({"~kind":"Array"},{type:"array",items:a},b)}function J(a){return C(a,"Array")}function K(a){return A(a,["~kind","type","items"])}function L(a,b,c={}){return z({"~kind":"Constructor"},{type:"constructor",parameters:a,instanceType:b},c)}function M(a){return C(a,"Constructor")}function N(a,b,c={}){return z({"~kind":"Function"},{type:"function",parameters:a,returnType:b},c)}function O(a){return C(a,"Function")}function P(a,b){return z({"~kind":"Ref"},{$ref:a},b)}function Q(a){return C(a,"Ref")}function R(a,b){return z({"~kind":"Generic"},{type:"generic",parameters:a,expression:b})}function S(a){return C(a,"Generic")}function T(a){return z({"~kind":"Any"},{},a)}function U(a){return C(a,"Any")}function V(a){return z({"~kind":"Never"},{not:{}},a)}function W(a){return C(a,"Never")}function X(a,b={}){return E("AddOptional",[a],b)}function Y(a,b={}){return H(a,b)}function Z(a){return Y(a)}function $(a){return q(a)&&u(a,"~optional")}function _(a,b={}){let c=v(a).filter(b=>!$(a[b]));return z({"~kind":"Object"},{type:"object",...c.length>0?{required:c}:{},properties:a},b)}function aa(a){return C(a,"Object")}function ab(a){return z({"~kind":"Unknown"},{},a)}function ac(a){return C(a,"Unknown")}function ad(a,b,c){return z({"~kind":"Cyclic"},{$defs:v(a).reduce((b,c)=>({...b,[c]:B(a[c],{},{$id:c})}),{}),$ref:b},c)}function ae(a){return C(a,"Cyclic")}function af(a){return B(a,{"~unsafe":null},{})}function ag(a){return p(a)&&u(a,"~unsafe")&&n(a["~unsafe"])}function ah(a,b){return b[a.length]?.(...a)??(()=>{throw Error("Invalid Arguments")})()}function ai(...a){let[b,c]=ah(a,{2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Infer"},{type:"infer",name:b,extends:c},{})}function aj(a){return C(a,"Infer")}function ak(a,b,c,d={}){return z({"~kind":"Dependent"},{if:a,then:b,else:c},d)}function al(a){return C(a,"Dependent")}function am(a){return r(a)||o(a)}function an(a,b){return z({"~kind":"Enum"},{enum:p(a)?v(a).filter(a=>isNaN(a)).reduce((b,c)=>[...b,a[c]],[]):a},b)}function ao(a){return C(a,"Enum")}function ap(a,b={}){return z({"~kind":"Intersect"},{allOf:a},b)}function aq(a){return C(a,"Intersect")}(d=e||(e={}))[d.Array=0]="Array",d[d.BigInt=1]="BigInt",d[d.Boolean=2]="Boolean",d[d.Date=3]="Date",d[d.Constructor=4]="Constructor",d[d.Function=5]="Function",d[d.Null=6]="Null",d[d.Number=7]="Number",d[d.Object=8]="Object",d[d.RegExp=9]="RegExp",d[d.String=10]="String",d[d.Symbol=11]="Symbol",d[d.TypeArray=12]="TypeArray",d[d.Undefined=13]="Undefined",BigInt("14695981039346656037");let[ar,as]=[BigInt("1099511628211"),BigInt("18446744073709551616")];Array.from({length:256}).map((a,b)=>BigInt(b));let at=new Float64Array(1);function au(){throw Error("Unreachable")}new DataView(at.buffer),new Uint8Array(at.buffer),new TextEncoder;class av{constructor(a,b){this.type=a,this.decode=b}Encode(a){let b=this.type,c=aA(b)?a=>this.decode(b["~codec"].decode(a)):this.decode,d=aA(b)?c=>b["~codec"].encode(a(c)):a;return B(this.type,{"~codec":{decode:c,encode:d}},{})}}class aw{constructor(a){this.type=a}Decode(a){return new av(this.type,a)}}function ax(a){return new aw(a)}function ay(a,b){return ax(a).Decode(b).Encode(()=>{throw Error("Encode not implemented")})}function az(a,b){return ax(a).Decode(()=>{throw Error("Decode not implemented")}).Encode(b)}function aA(a){return q(a)&&u(a,"~codec")&&q(a["~codec"])&&u(a["~codec"],"encode")&&u(a["~codec"],"decode")}function aB(a){return fh(a)}function aC(a){return q(a)&&u(a,"~immutable")}function aD(a,b={}){return E("AddReadonly",[a],b)}function aE(a,b={}){return G(a,b)}function aF(a){return aE(a)}function aG(a){return q(a)&&u(a,"~readonly")}function aH(...a){var b;let c,[d,e,f]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,()=>"Refine Error"]});return b={check:e,error:f},c=aI(d)?[...d["~refine"],b]:[b],B(d,{"~refine":c},{})}function aI(a){return q(a)&&u(a,"~refine")&&j(a["~refine"])&&function(a,b){for(let c=0;c<a.length;c++)if(!b(a[c],c))return!1;return!0}(a["~refine"],a=>p(a)&&u(a,"check")&&u(a,"error")&&m(a.check)&&m(a.error))}function aJ(a){return z({"~kind":"BigInt"},{type:"bigint"},a)}function aK(a){return C(a,"BigInt")}function aL(a){return z({"~kind":"Boolean"},{type:"boolean"},a)}function aM(a){return C(a,"Boolean")}function aN(a){return z({"~kind":"Identifier"},{name:a})}function aO(a){return C(a,"Identifier")}let aP="-?(?:0|[1-9][0-9]*)";function aQ(a){return z({"~kind":"Integer"},{type:"integer"},a)}function aR(a){return C(a,"Integer")}class aS extends Error{constructor(a){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:a},writable:!1,configurable:!1,enumerable:!1})}}function aT(a,b){return z({"~kind":"Literal"},{type:k(a)?"bigint":l(a)?"boolean":o(a)?"number":r(a)?"string":(()=>{throw new aS(a)})(),const:a},b)}function aU(a){return k(a)||l(a)||o(a)||r(a)}function aV(a){return C(a,"Literal")}function aW(a){return z({"~kind":"Null"},{type:"null"},a)}function aX(a){return C(a,"Null")}let aY="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?";function aZ(a){return z({"~kind":"Number"},{type:"number"},a)}function a$(a){return C(a,"Number")}function a_(a){return z({"~kind":"Symbol"},{type:"symbol"},a)}function a0(a){return C(a,"Symbol")}function a1(...a){let[b,c,d]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Parameter"},{name:b,extends:c,equals:d},{})}function a2(a){return C(a,"Parameter")}function a3(a){return z({"~kind":"String"},{type:"string"},a)}function a4(a){return C(a,"String")}function a5(a,b={}){return z({"~kind":"Union"},{anyOf:a},b)}function a6(a){return C(a,"Union")}function a7(a){let b=cZ(a);return 2===b.length?b[0]:[]}function a8(a){return 0!==a.length&&function a(b){return s(b,(b,c)=>{var d;return!!(a6(d=b)?a8(d.anyOf):!!aV(d)&&(d.const,!0))&&a(c)},()=>!0)}(a)}function a9(a){return z({"~kind":"TemplateLiteral"},{type:"string",pattern:a},{})}function ba(a){var b;let c=a7(a);return 0===c.length?a3():a8(c)?0===(b=c).length?au():1===b.length&&aV(b[0])?b[0]:a5((function a(b,c){return s(c,(c,d)=>a(function a(b,c){var d,e;return a6(c)?function b(c,d,e=[]){return s(d,(d,f)=>b(c,f,[...e,...a(c,d)]),()=>e)}(b,c.anyOf):aV(c)?(d=b,e=c.const,0===d.length?[`${e}`]:function a(b,c,d=[]){return s(b,(b,e)=>a(e,c,[...d,`${b}${c}`]),()=>d)}(d,e)):au()}(b,c),d),()=>b)})([],b).map(a=>aT(a))):a9(a)}function bb(a,b){return z({"~kind":"Record"},{type:"object",patternProperties:{[a]:b}})}function bc(a,b={}){let[c,d,e]=[a,a.length,!1];return z({"~kind":"Tuple"},{type:"array",additionalItems:e,items:c,minItems:d},b)}function bd(a){return C(a,"Tuple")}function be(a,b){return B(A(a,["~readonly"]),{},b)}function bf(a,b){return B(A(a,["~optional"]),{},b)}function bg(a,b={}){return bf(a,b)}function bh(a){return a.reduceRight((a,b,c)=>({[c]:b,...a}),{})}function bi(a){return aa(a)?a.properties:bd(a)?bh(a.items):au()}function bj(a,b){var c;let d=bp(a);return bo((c=a6(d)?d.anyOf:[d],c.reduce((a,c)=>[...a,...dd(dF({},c,b))?[]:[c]],[])))}function bk(a,b,c){return bo([ap([a,b]),bj(c,a)])}function bl(a){return bo(a.map(a=>aT(a)))}function bm(a){return bq(dK(function a(b,c=[]){return s(b,(b,d)=>a6(b)?a(d,function b(c,d,e=[]){return s(c,(c,f)=>b(f,d,[...e,...a([c],d)]),()=>e)}(b.anyOf,c)):a(d,function a(b,c,d=[]){return s(c,(c,e)=>{var f,g;let h,i,j,k,l,m,n,o,p,q;return a(b,e,[...d,(h=bp(b),i=bp(c),j=a6(h),k=a6(i),l=j||k,m=aa(h)||bd(h),n=aa(i)||bd(i),l?bm([h,i]):m&&n?(o=bi(h),_([...new Set([...v(p=bi(i)),...v(o)])].reduce((a,b)=>{var c,d;let e,f,g;return{...a,[b]:b in o?b in p?(c=o[b],d=p[b],e=!!aG(c)&&!!aG(d),f=!!$(c)&&!!$(d),g=function(a,b={}){return be(a,b)}(bg(bm([c,d]))),e&&f?aE(Y(g)):e&&!f?aE(g):!e&&f?Y(g):g):o[b]:b in p?p[b]:V()}},{}))):m&&!n?h:!m&&n?i:(q=dJ(f=h,g=i))===dH?f:q===dI||q===dG?g:V())])},()=>0===d.length?[b]:d)}(b,c)),()=>c)}(a)))}function bn(a){let b;return bp(c6(b=ba(a))?a3():b)}function bo(a){return bq(dK(a))}function bp(a){return al(a)?bk(a.if,a.then,a.else):ao(a)?bl(a.enum):aq(a)?bm(a.allOf):c6(a)?bn(a.pattern):a6(a)?bo(a.anyOf):a}function bq(a){return 1===a.length?a[0]:0===a.length?V():a5(a)}function br(a){return a.reduce((a,b)=>[...a,...a6(b)?br(b.anyOf):[b]],[])}function bs(a,b,c){return fa([a])?B(function a(b,c){var d,e,f,g,h,i;return U(b)?bb(bv,c):aM(b)?_({true:c,false:c}):ao(b)?(d=b.enum,a(bl(d),c)):aR(b)?bb(bt,c):aq(b)?(e=b.allOf,a(bm(e),c)):aV(b)?(f=b.const,g=c,r(f)||o(f)?_({[f]:g}):!1===f?_({false:g}):!0===f?_({true:g}):_({})):a$(b)?bb(bu,c):a6(b)?function(a,b){var c,d;let e=br(a),f=(c=e,d=b,!0===c.some(a=>a4(a)||a$(a)||aR(a))?bb(bv,d):void 0);return q(f)?f:_(e.reduce((a,c)=>aV(c)&&(r(c.const)||o(c.const))?{...a,[c.const]:b}:a,{}))}(b.anyOf,c):a4(b)?u(b,"pattern")&&(r(b.pattern)||b.pattern instanceof RegExp)?bb(b.pattern.toString(),c):bb(bv,c):c6(b)?(h=b.pattern,i=c,a8(a7(h))?a(bn(h),i):bb(h,i)):_({})}(a,b),{},c):bw(a,b,c)}let bt=`^${aP}$`,bu=`^${aY}$`,bv="^.*$";function bw(a,b,c={}){return E("Record",[a,b],c)}function bx(a,b,c={}){return bs(a,b,c)}function by(a){return a===bv?a3():a===bt?aQ():a===bu?aZ():ba(a)}function bz(a){return v(a.patternProperties)[0]}function bA(a){return by(bz(a))}function bB(a){return a.patternProperties[bz(a)]}function bC(a){return C(a,"Record")}function bD(a){return z({"~kind":"Rest"},{type:"rest",items:a},{})}function bE(a){return C(a,"Rest")}function bF(a){return z({"~kind":"This"},{$ref:"#"},a)}function bG(a){return C(a,"This")}function bH(a){return z({"~kind":"Undefined"},{type:"undefined"},a)}function bI(a){return C(a,"Undefined")}function bJ(a){return z({"~kind":"Void"},{type:"void"},a)}function bK(a){return C(a,"Void")}function bL(){throw Error("Unreachable")}let bM=a=>{let[b,c]=a;return[...b,...c].reduce((a,b)=>j(b)&&2===b.length?[...a,b[0]]:[...a,b],[])};function bN(a,b){return b.reduce((a,b)=>1===b.length?ej(a,b[0]):0===b.length?I(a):bL(),a)}function bO(a,b){return 3===b.length?d6(a,b[0],b[1],b[2]):a}function bP(a,b){return 3===b.length?(()=>{let[c,d,e]=b,f=bP(d,e);return"&"===c?aq(f)?ap([a,...f.allOf]):ap([a,f]):"|"===c?a6(f)?a5([a,...f.anyOf]):a5([a,f]):void bL()})():a}function bQ(a){return a.reduce((a,b)=>u(b,bt)||u(b,bu)||u(b,bv)?[a[0],i(a[1],b)]:[i(a[0],b),a[1]],[{},{}])}function bR(a,b){return"remove"===a?function(a,b={}){return E("RemoveReadonly",[a],b)}(b):"add"===a?aD(b):b}function bS(a,b){return"remove"===a?function(a,b={}){return E("RemoveOptional",[a],b)}(b):"add"===a?X(b):b}function bT(a){return 2===a.length}function bU(a,b,c){return bT(a)?b(a[0],a[1]):c()}function bV(a,b){for(let e=0;e<a.length;e++){var c,d;let f=(c=a[e],0===(d=b).indexOf(c)?[c,d.slice(c.length)]:[]);if(bT(f))return f}return[]}function bW(a,b){return Array.from({length:b-a+1},(b,c)=>String.fromCharCode(a+c))}let bX=[...bW(97,122),...bW(65,90)],bY=bW(49,57),bZ=["0",...bY];function b$(a){let b=a.indexOf("*/");return -1===b?"":a.slice(b+2)}function b_(a){let b=a.indexOf("\n");return -1===b?"":a.slice(b)}function b0(a){let b=a.trimStart();return b.startsWith("/*")?b0(b$(b.slice(2))):b.startsWith("//")?b0(b_(b.slice(2))):b}function b1(a,b){return bU(bV([a],b),(a,b)=>[a,b],()=>["",b])}function b2(a,b,c,d=""){return bU(bV(a,c),(c,e)=>b.includes(c)?b2(a,b,e,d):b2(a,b,e,`${d}${c}`),()=>[d,c])}let b3=[...bZ,"_"];function b4(a){var b;return bU(bV(["0"],b=b0(a)),(a,b)=>[a,b],()=>bU(bV(bY,b),(a,b)=>bU(b2(b3,["_"],b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]))}function b5(a){return bU(bU(b1("-",b0(a)),(a,b)=>bU(b4(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]),(a,b)=>bU(bV(["n"],b),(b,c)=>[`${a}`,c],()=>[]),()=>[])}function b6(a,b){return""===a?["",b]:a.startsWith("\n")?bV([a],function a(b){let c=b.replace(/^[ \t\r\f\v]+/,"");return c.startsWith("/*")?a(b$(c.slice(2))):c.startsWith("//")?a(b_(c.slice(2))):c}(b)):a.startsWith(" ")?bV([a],b):bV([a],b0(b))}let b7=[...bX,"_","$"],b8=[...b7,...bZ];function b9(a){return bU(bV(b7,b0(a)),(a,b)=>bU(function a(b,c=""){return bU(bV(b8,b),(b,d)=>a(d,`${c}${b}`),()=>[c,b])}(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[])}let ca=[...bZ,"_"];function cb(a){return bU(b2(ca,["_"],a),(a,b)=>""===a?[]:[a,b],()=>[])}function cc(a){return bU(b1("-",b0(a)),(a,b)=>{var c;return bU(bT(bV(["."],c=b0(b)))?bU(bV(["."],c),(a,b)=>bU(cb(b),(b,c)=>[`0${a}${b}`,c],()=>[]),()=>[]):bU(b4(c),(a,b)=>bU(bV(["."],b),(b,c)=>bU(cb(c),(c,d)=>[`${a}${b}${c}`,d],()=>[`${a}`,c]),()=>[`${a}`,b]),()=>[]),(b,c)=>[`${a}${b}`,c],()=>[])},()=>[])}function cd(a,b,c=""){var d;return bU(""===(d=b)?[]:[d.slice(0,1),d.slice(1)],(d,e)=>!function a(b,c){return s(b,(b,d)=>!!c.startsWith(b)||a(d,c),()=>!1)}(a,b)?cd(a,e,`${c}${d}`):[c,b],()=>[])}function ce(a,b){return bU(bV(a,b0(b)),(a,b)=>{var c;return c=`${a}${b}`,bU(bV([a],b0(c)),(b,c)=>bU(cd(["\n",a],c),(b,c)=>bU(bV([a],c),(a,c)=>[`${b}`,c],()=>[]),()=>[]),()=>[])},()=>[])}let cf=(a,b,c=()=>[])=>2===a.length?b(a):c(),cg=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a1(a[0],a[2],a[4]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],a[2],a[2]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],ab(),a[2]),b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a1(a,ab(),ab()),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),ch=(a,b=[])=>cf(cf(cg(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>ch(c,[...b,a]),()=>[b,a]),ci=a=>cf(cf(b6("<",a),([a,b])=>cf(cf(cf(ch(b),([a,b])=>cf(cf(cf(cg(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cj=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cj(c,[...b,a]),()=>[b,a]),ck=a=>cf(cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),cl=a=>cf(b6("string",a),([a,b])=>[a3(),b]),cm=a=>cf(b6("number",a),([a,b])=>[aZ(),b]),cn=a=>cf(b6("integer",a),([a,b])=>[aQ(),b]),co=a=>cf(b6("symbol",a),([a,b])=>[a_(),b]),cp=a=>cf(cd(["${","`"],a),([a,b])=>[aT(a),b]),cq=a=>cf(cf(cf(cp(a),([a,b])=>cf(cf(cf(b6("${",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>cf(cq(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>{var c;return[3===(c=a).length?[c[0],c[1],...c[2]]:[c[0]],b]}),cr=a=>cf(cf(b6("`",a),([a,b])=>cf(cq(b),([b,c])=>cf(b6("`",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cs=(a,b=[])=>cf(cf(cf(b6("[",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(b6("[",a),([a,b])=>cf(b6("]",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,c])=>cs(c,[...b,a]),()=>[b,a]),ct=a=>cf(cf(cf(cf(cf(b6("keyof",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cf(cf(cf(b6("(",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cl(b),([a,b])=>[a,b],()=>cf(cm(b),([a,b])=>[a,b],()=>cf(cf(b6("boolean",b),([a,b])=>[aL(),b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",b),([a,b])=>[bH(),b]),([a,b])=>[a,b],()=>cf(cf(b6("null",b),([a,b])=>[aW(),b]),([a,b])=>[a,b],()=>cf(cn(b),([a,b])=>[a,b],()=>cf(cf(b6("bigint",b),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("unknown",b),([a,b])=>[ab(),b]),([a,b])=>[a,b],()=>cf(cf(b6("any",b),([a,b])=>[T(),b]),([a,b])=>[a,b],()=>cf(cf(b6("object",b),([a,b])=>[_({}),b]),([a,b])=>[a,b],()=>cf(cf(b6("never",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(co(b),([a,b])=>[a,b],()=>cf(cf(b6("void",b),([a,b])=>[bJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("this",b),([a,b])=>[bF(),b]),([a,b])=>[a,b],()=>cf(cf(b5(b),([a,b])=>[aT(BigInt(a)),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",b),([a,b])=>[a,b],()=>cf(b6("false",b),([a,b])=>[a,b],()=>[])),([a,b])=>[aT("true"===a),b]),([a,b])=>[a,b],()=>cf(cf(cc(b),([a,b])=>[aT(parseFloat(a)),b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],b),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>cf(cf(cr(b),([a,b])=>[c4(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6("else",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?ak(a[1],a[3],a[5]):ak(a[1],a[3],ab()),b]),([a,b])=>[a,b],()=>cf(cE(b),([a,b])=>[a,b],()=>cf(cI(b),([a,b])=>[a,b],()=>cf(cO(b),([a,b])=>[a,b],()=>cf(cN(b),([a,b])=>[a,b],()=>cf(cP(b),([a,b])=>[a,b],()=>cf(cf(cf(b9(b),([a,b])=>cf(cf(cf(b6("<",b),([a,b])=>cf(cf(cf(cj(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>[[a,b],c])),([a,b])=>{var c,d;return[(c=a[0],d=a[1],"Array"===c?I(d[0]):"Capitalize"===c?dS(d[0]):"ConstructorParameters"===c?d9(d[0]):"Evaluate"===c?function(a,b={}){return E("Evaluate",[a],b)}(d[0]):"Exclude"===c?ec(d[0],d[1]):"Extract"===c?ef(d[0],d[1]):"Index"===c?ej(d[0],d[1]):"InstanceType"===c?ey(d[0]):"Lowercase"===c?dU(d[0]):"NonNullable"===c?eI(d[0]):"Omit"===c?eL(d[0],d[1]):"Parameters"===c?eP(d[0]):"Partial"===c?eS(d[0]):"Pick"===c?eV(d[0],d[1]):"Readonly"===c?eY(d[0]):"KeyOf"===c?eB(d[0]):"Record"===c?bw(d[0],d[1]):"Required"===c?e0(d[0]):"ReturnType"===c?e3(d[0]):"Uncapitalize"===c?dW(d[0]):"Uppercase"===c?dY(d[0]):dO(P(c),d)),b]}),([a,b])=>[a,b],()=>cf(cQ(b),([a,b])=>[a,b],()=>[])))))))))))))))))))))))))))),([a,b])=>[j(a)&&3===a.length?a[1]:a,b]),([b,c])=>cf(cf(cs(c),([a,b])=>[a.reduce((a,b)=>3===b.length?[...a,[b[1]]]:[...a,[]],[]),b]),([c,d])=>cf(cf(cf(cf(b6("extends",d),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6(":",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf([[],d],([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?[a[1],a[3],a[5]]:[],b]),([d,e])=>cf(cf(cf(cf(b6("with",e),([a,b])=>cf(cT(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],e],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?a[1]:[],b]),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;var g=b?bO(eB(bN(c,d)),e):bO(bN(c,d),e);return j(f)&&0===f.length?g:e6(g,f)}(a),b]),cu=a=>cf(cf(cf(b6("&",a),([a,b])=>cf(ct(b),([b,c])=>cf(cu(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cv=a=>cf(cf(ct(a),([a,b])=>cf(cu(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cw=a=>cf(cf(cf(b6("|",a),([a,b])=>cf(cv(b),([b,c])=>cf(cw(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cx=a=>cf(cf(cv(a),([a,b])=>cf(cw(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cy=a=>cf(cf(cf(cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6("extends",c),([c,d])=>cf(cx(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,b])=>[4===a.length?ai(a[1],a[3]):2===a.length?ai(a[1],ab()):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("|",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("AddImmutable",[a],b)}(a[1]),b]),([a,b])=>[a,b],()=>cf(cx(a),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cz=a=>cf(cf(cf(cc(a),([a,b])=>[`${a}`,b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cf(cn(d),([a,b])=>[a,b],()=>cf(cm(d),([a,b])=>[a,b],()=>cf(cl(d),([a,b])=>[a,b],()=>cf(co(d),([a,b])=>[a,b],()=>[])))),([d,e])=>cf(b6("]",e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aR(a[3])?bt:a$(a[3])?bu:a0(a[3])||a4(a[3])?bv:bL(),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cA=a=>cf(cf(cf(cf(cf(b6("readonly",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cz(b),([b,c])=>cf(cf(cf(cf(b6("?",c),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],c],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([c,d])=>cf(b6(":",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;return{[c]:b&&d?aD(X(f)):b&&!d?aD(f):!b&&d?X(f):f}}(a),b]),cB=a=>cf(cf(cf(b6(",",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(",",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cC=(a,b=[])=>cf(cf(cA(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cC(c,[...b,a]),()=>[b,a]),cD=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cC(b),([a,b])=>cf(cf(cf(cA(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bQ(a[1]),b]),cE=a=>cf(cD(a),([a,b])=>[function(a){let[b,c]=a;return _(b,0===v(c).length?{}:{patternProperties:c})}(a),b]),cF=a=>cf(cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>[])))),([a,b])=>[5===a.length?aD(X(a[4])):3===a.length?a[2]:4===a.length?"readonly"===a[2]?aD(a[3]):X(a[3]):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[aD(X(a[1])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[aD(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(cf(cy(a),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[X(a[0]),b]),([a,b])=>[a,b],()=>cf(cy(a),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cG=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cF(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cF(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cH=(a,b=[])=>cf(cf(cG(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cH(c,[...b,a]),()=>[b,a]),cI=a=>cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cH(b),([a,b])=>cf(cf(cf(cG(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bc(a[1]),b]),cJ=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aD(X(a[4])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[aD(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[X(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[2],b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cK=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cJ(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cJ(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cL=(a,b=[])=>cf(cf(cK(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cL(c,[...b,a]),()=>[b,a]),cM=a=>cf(cf(cL(a),([a,b])=>cf(cf(cf(cK(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),cN=a=>cf(cf(b6("(",a),([a,b])=>cf(cM(b),([b,c])=>cf(b6(")",c),([c,d])=>cf(b6("=>",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[N(a[1],a[4]),b]),cO=a=>cf(cf(b6("new",a),([a,b])=>cf(b6("(",b),([b,c])=>cf(cM(c),([c,d])=>cf(b6(")",d),([d,e])=>cf(b6("=>",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[L(a[2],a[5]),b]),cP=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cf(b6("+",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("readonly",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([b,c])=>cf(b6("[",c),([c,d])=>cf(b9(d),([d,e])=>cf(b6("in",e),([e,f])=>cf(cy(f),([f,g])=>cf(cf(cf(cf(b6("as",g),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],g],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?[a[1]]:[],b]),([g,h])=>cf(b6("]",h),([h,i])=>cf(cf(cf(cf(b6("+",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("?",i),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],i],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([i,j])=>cf(b6(":",j),([j,k])=>cf(cy(k),([k,l])=>cf(ck(l),([l,m])=>cf(b6("}",m),([m,n])=>[[a,b,c,d,e,f,g,h,i,j,k,l,m],n]))))))))))))),([a,b])=>{var c;return[j((c=a)[6])&&1===c[6].length?eE(aN(c[3]),c[5],c[6][0],bR(c[1],bS(c[8],c[10]))):eE(aN(c[3]),c[5],P(c[3]),bR(c[1],bS(c[8],c[10]))),b]}),cQ=a=>cf(b9(a),([a,b])=>[P(a),b]),cR=a=>cf(cf(cz(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cV(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[{[a[0]]:a[2]},b]),cS=(a,b=[])=>cf(cf(cR(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cS(c,[...b,a]),()=>[b,a]),cT=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cS(b),([a,b])=>cf(cf(cf(cR(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1].reduce((a,b)=>i(a,b),{}),b]),cU=(a,b=[])=>cf(cf(cV(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cU(c,[...b,a]),()=>[b,a]),cV=a=>cf(cf(cf(b5(a),([a,b])=>[BigInt(a),b]),([a,b])=>[a,b],()=>cf(cf(cc(a),([a,b])=>[parseFloat(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",a),([a,b])=>[a,b],()=>cf(b6("false",a),([a,b])=>[a,b],()=>[])),([a,b])=>["true"===a,b]),([a,b])=>[a,b],()=>cf(cf(ce(['"',"'"],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(b6("null",a),([a,b])=>[null,b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",a),([a,b])=>[void 0,b]),([a,b])=>[a,b],()=>cf(cT(a),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cU(b),([a,b])=>cf(cf(cf(cV(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>[])))))))),([a,b])=>[a,b]),cW=a=>cf(cf(cf(cX(a),([a,b])=>cf(b6("|",b),([b,c])=>cf(cW(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cX(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[]))),([a,b])=>[3===a.length?[...a[0],...a[2]]:1===a.length?[...a[0]]:[],b]),cX=a=>{let b;return cf(cf(cf(cf(cf(b6("-?(?:0|[1-9][0-9]*)n",b=a),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6(".*",b),([a,b])=>[a3(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",b),([a,b])=>[aZ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)",b),([a,b])=>[aQ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("(?!)",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("(",b),([a,b])=>cf(cY(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a5(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(bU(cd(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],b),(a,b)=>""===a?[]:[a,b],()=>[]),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>[]))))))),([a,b])=>[a,b]),([a,b])=>cf(cY(b),([b,c])=>[[a,b],c])),([a,b])=>[[a[0],...a[1]],b])},cY=a=>cf(cf(cW(a),([a,b])=>[a,b],()=>cf(cX(a),([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cZ=a=>cf(cf(b6("^",a),([a,b])=>cf(cY(b),([b,c])=>cf(b6("$",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),c$=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>c$(c,[...b,a]),()=>[b,a]),c_=a=>cf(cf(cf(b6("extends",a),([a,b])=>cf(cf(cf(c$(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?c[1]:[],b]}),c0=(a,b=[])=>cf(cf(c1(a),([a,b])=>cf(cf(cf(cf(b6(";",b),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]),([b,c])=>[[a,b],c])),([a,c])=>c0(c,[...b,a]),()=>[b,a]),c1=a=>cf(cf(cf(cf(cf(b6("export",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),([a,b])=>cf(cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(c_(d),([d,e])=>cf(cD(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let b=a[2],c=a[3],[d,e]=a[4],f=0===v(e).length?{}:{patternProperties:e};return{[a[1]]:R(b,du(c,d,f))}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(c_(c),([c,d])=>cf(cD(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[function(a){let b=a[2],[c,d]=a[3],e=0===v(d).length?{}:{patternProperties:d};return{[a[1]]:du(b,c,e)}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[{[a[1]]:R(a[2],a[4])},b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(b6("=",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[{[a[1]]:a[3]},b]),([a,b])=>[a,b],()=>[])))),([b,c])=>cf(ck(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]);function c2(a,b){return s(a,(a,c)=>(function a(b,c,d){var e,f,g,h,i;return ao(b)?(e=b.enum,a(bl(e),c,d)):aR(b)?c2(c,`${d}${aP}`):aV(b)?(f=b.const,c2(c,`${d}${f}`)):aK(b)?c2(c,`${d}-?(?:0|[1-9][0-9]*)n`):aM(b)?a(a5([aT("false"),aT("true")]),c,d):a$(b)?c2(c,`${d}${aY}`):a4(b)?c2(c,`${d}.*`):c6(b)?(g=b.pattern,c2(c,`${d}${g.slice(1,g.length-1)}`)):q(i=b)&&u(i,"action")&&"TemplateLiteral"===i.action?(h=b.parameters[0],a(c3(h,{}),c,d)):a6(b)?function b(c,d,e,f=[]){return s(c,(c,g)=>b(g,d,e,[...f,a(c,[],"")]),()=>c2(d,`${e}(${f.join("|")})`))}(b.anyOf,c,d):"(?!)"})(a,c,b),()=>b)}function c3(a,b){let c;return fa(a)?B(a9((c=c2(a,""),`^${c}$`)),{},b):c4(a,b)}function c4(a,b={}){return E("TemplateLiteral",[a],b)}function c5(a,b={}){var c;let d;return B(r(a)?c3((c=a,2===(d=cr(`\`${c}\``)).length?d[0]:au()),{}):c3(a,{}),{},b)}function c6(a){return C(a,"TemplateLiteral")}function c7(a){return z({"~kind":"ExtendsUnion"},{inferred:a})}function c8(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsUnion"===a["~kind"]&&q(a.inferred)}function c9(a){return z({"~kind":"ExtendsTrue"},{inferred:a})}function da(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsTrue"===a["~kind"]&&q(a.inferred)}function db(){return z({"~kind":"ExtendsFalse"},{})}function dc(a){return q(a)&&u(a,"~kind")&&"ExtendsFalse"===a["~kind"]}function dd(a){return c8(a)||da(a)}function de(a,b,c){return dd(a)?b(a.inferred):c()}function df(a,b,c){var d,e,f,g;return U(c)?c9(a):al(c)?(d=c.if,e=c.then,f=c.else,de(ds(a,b,d),a=>de(ds(a,b,e),a=>c9(a),()=>db()),()=>de(ds(a,b,f),a=>c9(a),()=>db()))):ao(c)?ds(a,b,bl(c.enum)):aj(c)?(g=c.name,de(ds(a,b,c.extends),c=>c9(i(i(a,c),{[g]:b})),()=>db())):aq(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),b=>a(b,c,e),()=>db()),()=>c9(b))}(a,b,c.allOf):c6(c)?ds(a,b,bn(c.pattern)):a6(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c.anyOf):ac(c)?c9(a):db()}function dg(a,b,c){return s(b,(b,d)=>s(c,(c,e)=>{let f,g,h,i;return f=aj(c)?b:c,g=aj(c)?c:b,h=$(b),i=$(c),!h&&i?db():de(ds(a,f,g),a=>dg(a,d,e),()=>db())},()=>$(b)?c9(a):db()),()=>c9(a))}function dh(a,b,c){return bK(c)?c9(a):ds(a,b,c)}function di(a,b,c){return b===c?c9(a):db()}function dj(a,b){return z({"~kind":"Inferrable"},{name:a,type:b},{})}function dk(a){return q(a)&&u(a,"~kind")&&u(a,"name")&&u(a,"type")&&"Inferrable"===a["~kind"]&&r(a.name)&&q(a.type)}function dl(a){return bE(a)?aj(a.items)?J(a.items.extends)?dj(a.items.name,a.items.extends.items):ac(a.items.extends)?dj(a.items.name,a.items.extends):void 0:au():void 0}function dm(a){return aj(a)?dj(a.name,a.extends):void 0}function dn(a,b,c=[]){return s(a,(a,d)=>de(ds({},a,b),()=>dn(d,b,[...c,a]),()=>void 0),()=>c)}function dp(a,b,c,d){let e=dn(c,d);return j(e)?c9(i(a,{[b]:a5(e)})):db()}function dq(a,b){return b?[...a].reverse():a}function dr(a,b,c){return s(b,(b,d)=>de(function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c),a=>dr(a,d,c),()=>db()),()=>c9(a))}function ds(a,b,c){var d,e,f,g,h,m,n,p,t,x,y,z,A,B,C,D,E,F,G,H,I,K,L,N;let P,Q,R,S,T,V,X,Y,Z,ab;return U(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):c7(a):J(b)?(d=b.items,J(c)?(P=aC(b),Q=aC(c),P&&Q||!P&&Q||!P||Q)?ds(a,d,c.items):db():df(a,b,c)):aK(b)?aK(c)?c9(a):df(a,b,c):aM(b)?aM(c)?c9(a):df(a,b,c):M(b)?(e=b.parameters,f=b.instanceType,U(c)||ac(c)?c9(a):M(c)?de(dg(a,e,c.parameters),a=>dh(a,f,c.instanceType),()=>db()):db()):al(b)?(g=b.if,h=b.then,m=b.else,de(ds(a,g,c),()=>ds(a,h,c),()=>ds(a,m,c))):ao(b)?(n=b.enum,ds(a,bl(n),c)):O(b)?(p=b.parameters,t=b.returnType,U(c)||ac(c)?c9(a):O(c)?de(dg(a,p,c.parameters),a=>dh(a,t,c.returnType),()=>db()):db()):aR(b)?aR(c)||a$(c)?c9(a):df(a,b,c):aq(b)?(x=b.allOf,ds(a,bm(x),c)):aV(b)?k(b.const)?(y=b.const,aV(c)?di(a,y,c.const):aK(c)?c9(a):df(a,aT(y),c)):l(b.const)?(z=b.const,aV(c)?di(a,z,c.const):aM(c)?c9(a):df(a,aT(z),c)):o(b.const)?(A=b.const,aV(c)?di(a,A,c.const):a$(c)?c9(a):df(a,aT(A),c)):r(b.const)?(B=b.const,aV(c)?di(a,B,c.const):a4(c)?c9(a):df(a,aT(B),c)):au():W(b)?aj(c)?df(a,b,c):c9(a):aX(b)?aX(c)?c9(a):df(a,b,c):a$(b)?a$(c)?c9(a):df(a,b,c):aa(b)?(C=b.properties,bC(c)?(bz(c),D=bB(c),R=v(C),function a(b,c,d,e){return s(c,(c,f)=>de(ds({},b[c],d),c=>a(b,f,d,v(c).reduce((a,b)=>({...a,[b]:u(e,b)?a6(a[b])?a5([...a[b].anyOf,c[b]]):a5([e[b],c[b]]):c[b]}),e)),()=>db()),()=>c9(e))}(C,R,D,a)):aa(c)?(S=function(a,b,c){var d;let e={};for(let d of v(c))e[d]=d in b?function(a,b,c){return aj(c)&&W(c.extends)?db():de(ds(a,b,c),a=>$(b)?$(c)?c9(a):db():c9(a),()=>db())}({},b[d],c[d]):$(c[d])?aj(c[d])?c9(i(a,{[c[d].name]:c[d].extends})):c9(a):db();let f=w(e).every(a=>dd(a)),g=f?(d=v(e),d.reduce((a,b)=>b in e&&dd(e[b])?{...a,...e[b].inferred}:au(),{})):{};return f?c9(g):db()}(a,C,c.properties),dd(S)?c9(i(a,S.inferred)):db()):df(a,_(C),c)):bC(b)?(E=bz(b),F=bB(b),bC(c)?(by(E),by(bz(c)),ds(a,F,bB(c))):aa(c)?(L=a,0===v(c.properties).length?c9(L):db()):U(c)||ac(c)?c9(a):db()):a4(b)?a4(c)?c9(a):df(a,b,c):a0(b)?a0(c)?c9(a):df(a,b,c):c6(b)?(G=b.pattern,ds(a,bn(G),c)):bd(b)?(H=b.items,T=fc(a,e9([],[]),H),bd(c)?(I=c.items,ab=q(Z=(N=V=fc(a,e9([],[]),I)).length>0?N[0]:void 0)?dl(Z):void 0,function a(b,c,d,e){return s(e,(e,f)=>{var g;let h,k;return dk(h=dl(e))?(g=h.name,j(k=dn(dq(d,c),h.type))?c9(i(b,{[g]:bc(k)})):db()):s(d,(d,g)=>de(ds(b,d,e),b=>a(b,c,g,f),()=>db()),()=>db())},()=>0===d.length?c9(b):db())}(a,X=q(ab),dq(T,X),dq(V,X))):J(c)?function a(b,c,d){let e=dm(d);return dk(e)?dp(b,e.name,c,e.type):s(c,(c,e)=>de(ds(b,c,d),b=>a(b,e,d),()=>db()),()=>c9(b))}(a,T,c.items):df(a,bc(T),c)):bI(b)?bK(c)||bI(c)?c9(a):df(a,b,c):a6(b)?(K=b.anyOf,dk(Y=dm(c))?dp(a,Y.name,K,Y.type):a6(c)?dr(a,K,c.anyOf):dr(a,K,[c])):ac(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):db():bK(b)?bK(c)?c9(a):df(a,b,c):db()}function dt(a,b,c){return fa(a)?B(bm([...a,_(b)]),{},c):du(a,b,c)}function du(a,b,c={}){return E("Interface",[a,b],c)}function dv(a){return q(a)&&u(a,"action")&&"Interface"===a.action}function dw(a,b,c={}){return dt(a,b,c)}function dx(a,b,c){return s(c,(c,d)=>!!dy(a,b,c)||dx(a,b,d),()=>!1)}function dy(a,b,c){var d;return Q(c)?(d=c.$ref,!!a.includes(d)||dy([...a,d],b,b[d])):J(c)?dy(a,b,c.items):M(c)?dx(a,b,[...c.parameters,c.instanceType]):O(c)?dx(a,b,[...c.parameters,c.returnType]):dv(c)?dx(a,b,w(c.parameters[1])):aq(c)?dx(a,b,c.allOf):aa(c)?dx(a,b,w(c.properties)):a6(c)?dx(a,b,c.anyOf):bd(c)?dx(a,b,c.items):!!bC(c)&&dy(a,b,bB(c))}function dz(a,b,c){return b.reduce((b,c)=>dA(a,c,b),c)}function dA(a,b,c){var d,e,f,g,h,i,j;return Q(b)?(d=b.$ref,c.includes(d)?c:d in a?dA(a,a[d],[...c,d]):au()):J(b)?dA(a,b.items,c):M(b)?dz(a,[...b.parameters,b.instanceType],c):O(b)?dz(a,[...b.parameters,b.returnType],c):dv(b)?(e=a,f=b.parameters[1],g=c,dz(e,w(f),g)):aq(b)?dz(a,b.allOf,c):aa(b)?(h=a,i=b.properties,j=c,dz(h,w(i),j)):a6(b)?dz(a,b.anyOf,c):bd(b)?dz(a,b.items,c):bC(b)?dA(a,bB(b),c):c}function dB(a){return a.reduce((a,b)=>[...a,dC(b)],[])}function dC(a){var b;return Q(a)?(a.$ref,T()):J(a)?I(dC(a.items),K(a)):M(a)?L(dB(a.parameters),dC(a.instanceType)):O(a)?N(dB(a.parameters),dC(a.returnType)):aq(a)?ap(dB(a.allOf)):aa(a)?_(v(b=a.properties).reduce((a,c)=>({...a,[c]:dC(b[c])}),{})):bC(a)?bx(bA(a),dC(bB(a))):a6(a)?a5(dB(a.anyOf)):bd(a)?bc(dB(a.items)):a}function dD(a,b){return function a(b,c){return c in b?Q(b[c])?a(b,b[c].$ref):b[c]:V()}(a,b)}function dE(a){var b,c;return ae(a)?(b=a.$defs,(c=a.$ref)in b?dC(b[c]):ab()):ag(a)?ab():a}function dF(a,b,c){return ds(a,dE(b),dE(c))}let dG="equal",dH="left-inside",dI="right-inside";function dJ(a,b){let c=[ac(a)?db():dF({},a,b),ac(a)?c9({}):dF({},b,a)];return dd(c[0])&&dd(c[1])?dG:dd(c[0])&&dc(c[1])?dH:dc(c[0])&&dd(c[1])?dI:"disjoint"}function dK(a){return br(a.reduce((a,b)=>{var c;let d;return aa(b)?[...a,b]:W(b)?a:U(d=bp(b))?[d]:(c=d,!1!==a.some(a=>{let b=dJ(c,a);return b===dH||b===dG}))?a:[...a.filter(a=>dJ(d,a)!==dI),d]},[]))}function dL(a,b){return b.reduce((b,c)=>[...b,...a.reduce((a,b)=>[...a,[...b,c]],[])],[])}function dM(a,b,c,d,e){let f=fe(a,b,e);return!function(a,b,c){if(!(aj(b)||dQ(b)||dd(dF({},b,c))))throw Error(`Argument for parameter ${a} does not satisfy constraint`,{cause:{parameter:a,expect:c,actual:b}})}(c,f,d),i(a,{[c]:f})}function dN(a,b,c,d){var e;let f=fd(a,b,d),g=function a(b,c,d,e){var f;return S(d)?[c,R(d.parameters,d.expression)]:Q(d)?(f=d.$ref,f in b?a(b,f,b[f],e):["(not-resolvable)",V()]):["(not-generic)",V()]}(a,"(anonymous)",c,d),h=g[0],i=g[1];return S(i)?((e=b).callstack.length>0?e.callstack[e.callstack.length-1]:"")===h?dO(P(h),f):function(a,b,c,d,e,f){let g=function(a,b,c){let d=function a(b,c=[]){return F(b)&&"Conditional"===b.action?Q(b.parameters[0])?a(b.parameters[2],a(b.parameters[3],[...c,b.parameters[0].$ref])):a(b.parameters[2],a(b.parameters[3],c)):F(b)&&"Mapped"===b.action&&F(b.parameters[1])&&"KeyOf"===b.parameters[1].action&&Q(b.parameters[1].parameters[0])?[...c,b.parameters[1].parameters[0].$ref]:c}(c),e=function a(b,c,d=[]){return s(b,(b,e)=>s(c,(c,f)=>a(e,f,[...d,[c,b]]),()=>d),()=>d)}(b,a.reduce((a,b)=>[...a,d.includes(b.name)],[]));return F(c)&&"Conditional"===c.action||F(c)&&"Mapped"===c.action?e.reduce((a,b)=>{var c;return!0===b[0]?dL(a,a6(c=b[1])?[...c.anyOf]:[c]):dL(a,[b[1]])},[[]]):[b]}(d,f,e),h=g.reduce((f,g)=>{var h,i,j,k,l;let m,n;return[...f,(h=a,i=b,j=c,k=d,l=e,m=function a(b,c,d,e){return s(d,(d,f)=>{let g,h;return g=fe(b,c,d.extends),h=fe(b,c,d.equals),s(e,(e,h)=>a(dM(b,c,d.name,g,e),c,f,h),()=>a(dM(b,c,d.name,g,h),c,f,[]))},()=>b)}(h,i,k,g),n=fe(m,e9([...i.callstack,j.$ref],i.visited),l),fe(m,e9([],[]),n))]},[]);return 1===h.length?h[0]:bo(h)}(a,b,P(h),i.parameters,i.expression,f):dO(c,f)}function dO(a,b){return z({"~kind":"Call"},{type:"call",target:a,arguments:b},{})}function dP(a,b){return dN({},e9([],[]),a,b)}function dQ(a){return C(a,"Call")}function dR(a,b){var c,d;return aV(b)?(c=a,r(d=b.const)?aT(c(d)):aT(d)):c6(b)?dR(a,bn(b.pattern)):a6(b)?a5(b.anyOf.map(b=>dR(a,b))):b}function dS(a,b={}){return E("Capitalize",[a],b)}function dT(a,b={}){return d2(a,b)}function dU(a,b={}){return E("Lowercase",[a],b)}function dV(a,b={}){return d3(a,b)}function dW(a,b={}){return E("Uncapitalize",[a],b)}function dX(a,b={}){return d4(a,b)}function dY(a,b={}){return E("Uppercase",[a],b)}function dZ(a,b={}){return d5(a,b)}let d$=a=>a[0].toUpperCase()+a.slice(1),d_=a=>a.toLowerCase(),d0=a=>a[0].toLowerCase()+a.slice(1),d1=a=>a.toUpperCase();function d2(a,b){return fa([a])?B(dR(d$,a),{},b):dS(a,b)}function d3(a,b){return fa([a])?B(dR(d_,a),{},b):dU(a,b)}function d4(a,b){return fa([a])?B(dR(d0,a),{},b):dW(a,b)}function d5(a,b){return fa([a])?B(dR(d1,a),{},b):dY(a,b)}function d6(a,b,c,d,e={}){return E("Conditional",[a,b,c,d],e)}function d7(a,b,c,d,e={}){return d8({},e9([],[]),a,b,c,d,e)}function d8(a,b,c,d,e,f,g){let h;return fa([c,d])?B(c8(h=dF(a,c,d))?a5([fe(h.inferred,b,e),fe(a,b,f)]):da(h)?fe(h.inferred,b,e):fe(a,b,f),{},g):d6(c,d,e,f,g)}function d9(a,b={}){return E("ConstructorParameters",[a],b)}function ea(a,b={}){return eb(a,b)}function eb(a,b){let c;return fa([a])?B((c=M(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):d9(a,b)}function ec(a,b,c={}){return E("Exclude",[a,b],c)}function ed(a,b,c={}){return ee(a,b,c)}function ee(a,b,c){return fa([a,b])?B(bj(a,b),{},c):ec(a,b,c)}function ef(a,b,c={}){return E("Extract",[a,b],c)}function eg(a,b,c={}){return eh(a,b,c)}function eh(a,b,c){var d;let e;return fa([a,b])?B(bo((d=a6(e=bp(a))?e.anyOf:[e],d.reduce((a,c)=>[...a,...dd(dF({},c,b))?[c]:[]],[]))),{},c):ef(a,b,c)}function ei(a){return a5(a.reduce((a,b)=>aU(b)?[...a,aT(b)]:a,[]))}function ej(a,b,c={}){return E("Index",[a,b],c)}function ek(a,b,c={}){return ex(a,j(b)?ei(b):b,c)}function el(a){var b;return ae(a)?el(dD(a.$defs,a.$ref)):al(a)?(b=a.if,el(bk(b,a.then,a.else))):aq(a)?a.allOf.reduce((a,b)=>{var c;let d,e,f,g,h,j,k;return c=el(b),d=v(a).filter(a=>!u(c,a)),e=v(c).filter(b=>!u(a,b)),f=v(a).filter(a=>u(c,a)),g=d.reduce((b,c)=>({...b,[c]:a[c]}),{}),h=e.reduce((a,b)=>({...a,[b]:c[b]}),{}),j=f.reduce((b,d)=>({...b,[d]:bm([a[d],c[d]])}),{}),k=i(g,h),i(k,j)},{}):a6(a)?s(a.anyOf,(a,b)=>(function a(b,c){return s(b,(b,d)=>{var e;return a(d,(e=el(b),v(c).filter(a=>a in e).reduce((a,b)=>({...a,[b]:bo([c[b],e[b]])}),{})))},()=>c)})(b,el(a)),()=>au()):bd(a)?el(_(bh(bc(a.items).items))):aa(a)?a.properties:{}}let em=RegExp("^(?:0|[1-9][0-9]*)$");function en(a){let b=`${a}`;return em.test(b)?parseInt(b):a}function eo(a){return a.map(a=>ep(a))}function ep(a){return aq(a)?ap(eo(a.allOf)):a6(a)?a5(eo(a.anyOf)):aV(a)?aT(en(a.const)):a}function eq(a){var b,c;return ae(a)?eq(dD(a.$defs,a.$ref)):al(a)?(b=a.if,eq(bk(b,a.then,a.else))):ao(a)?eq(bl(a.enum)):aq(a)?eq(bm(a.allOf)):aV(a)?(c=a.const,[`${c}`]):c6(a)?eq(bn(a.pattern)):a6(a)?a.anyOf.reduce((a,b)=>[...a,...eq(b)],[]):[]}function er(a,b){return b.map(b=>es(a,b))}function es(a,b){return J(b)?I(es(a,b.items)):M(b)?L(er(a,b.parameters),es(a,b.instanceType)):O(b)?N(er(a,b.parameters),es(a,b.returnType)):bd(b)?bc(er(a,b.items)):a6(b)?a5(er(a,b.anyOf)):aq(b)?ap(er(a,b.allOf)):bG(b)?_(a):b}function et(a,b){return b.reduce((b,c)=>{var d,e;let f;return[...b,(d=a,f=(e=c)in d?d[e]:V(),es(d,f))]},[])}let eu=new RegExp(bt);function ev(a){return a.map(a=>ew(a))}function ew(a){return aq(a)?ap(ev(a.allOf)):a6(a)?a5(ev(a.anyOf)):aV(a)?aT(en(a.const)):a}function ex(a,b,c){var d,e,f,g,h,i;let j;return fa([a,b])?B((d=ae(f=a)||al(f)||aq(f)||a6(f)?_(el(f)):f,J(d)?(g=d.items,dd(dF({},ep(h=b),aZ()))?g:aV(h)&&"length"===h.const?aZ():V()):aa(d)?(e=d.properties,a$(b)?(j=v(i=e).filter(a=>eu.test(a)),bo(et(i,j))):bo(et(e,eq(b)))):bd(d)?function(a,b){let c;return aV(b)&&"length"===b.const?aT(a.length):a$(b)||aR(b)?bq(a):bq((c=ew(b),a.reduceRight((a,b,d)=>dd(dF({},aT(d),c))?[b,...a]:a,[])))}(d.items,b):V()),{},c):ej(a,b,c)}function ey(a,b={}){return E("InstanceType",[a],b)}function ez(a,b={}){return eA(a,b)}function eA(a,b){return fa([a])?B(M(a)?a.instanceType:V(),{},b):ey(a,b)}function eB(a,b={}){return E("KeyOf",[a],b)}function eC(a,b={}){return eD(a,b)}function eD(a,b){var c,d;return fa([a])?B(U(d=ae(c=a)||al(c)||aq(c)||a6(c)?_(el(c)):c)?a5([aZ(),a3(),a_()]):J(d)?(d.items,aZ()):aa(d)?bq(v(d.properties).reduce((a,b)=>aU(b)?[...a,aT(en(b))]:au(),[])):bC(d)?bA(d):bd(d)?bq(d.items.map((a,b)=>aT(b))):V(),{},b):eB(a,b)}function eE(a,b,c,d,e={}){return E("Mapped",[a,b,c,d],e)}function eF(a,b,c,d,e={}){return eG({},e9([],[]),a,b,c,d,e)}function eG(a,b,c,d,e,f,g){return fa([d])?B(function(a,b,c,d,e,f){let g=function a(b){var c;return ao(b)?a(bl(b.enum)):aV(b)?o(c=b.const)?[aT(`${c}`)]:[aT(c)]:c6(b)?a(bn(b.pattern)):a6(b)?b.anyOf.reduce((b,c)=>[...b,...a(c)],[]):[b]}(d);return bm(g.reduce((d,g)=>{var h;let j,k,l;return[...d,(k=c6(h=fe(j=i(a,{[c.name]:g}),b,e))?bn(h.pattern):h,l=fe(j,b,f),aV(k)&&o(k.const)||aV(k)&&r(k.const)?{[k.const]:l}:{})]},[]).reduce((a,b)=>[...a,_(b)],[]))}(a,b,c,d,e,f),{},g):eE(c,d,e,f,g)}function eH(a,b,c,d){let e,f,g,h,j;return e=function(a){let b=v(a);return b.reduce((b,c)=>dy([c],a,a[c])?[...b,c]:b,[])}(c),f=i(a,c),g=v(c).filter(a=>e.includes(a)).reduce((a,b)=>({...a,[b]:function(a,b,c){let d=dA(a,c,[b]);return ad(v(a).filter(a=>d.includes(a)).reduce((b,c)=>{var d,e;let f=a[c],g=dv(f)?(d=f.parameters[0],e=f.parameters[1],bm([...fd(a,e9([],[]),d),_(fb({},e9([],[]),e))])):f;return{...b,[c]:g}},{}),b)}(f,b,c[b])}),{}),h=i(a,c),j=v(c).filter(a=>!e.includes(a)).reduce((a,b)=>({...a,[b]:fe(h,e9([],[]),c[b])}),{}),B({...g,...j},{},d)}function eI(a,b={}){return E("NonNullable",[a],b)}function eJ(a,b={}){return eK(a,b)}function eK(a,b){return fa([a])?B(ee(a,a5([aW(),bH()]),{}),{},b):eI(a,b)}function eL(a,b,c={}){return E("Omit",[a,b],c)}function eM(a,b,c={}){return eO(a,j(b)?ei(b):b,c)}function eN(a){let b=_(el(a));return aa(b)?b.properties:au()}function eO(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?a:{...a,[b]:c[b]},{}))}(a,b),{},c):eL(a,b,c)}function eP(a,b={}){return E("Parameters",[a],b)}function eQ(a,b={}){return eR(a,b)}function eR(a,b){let c;return fa([a])?B((c=O(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):eP(a,b)}function eS(a,b={}){return E("Partial",[a],b)}function eT(a,b={}){return eU(a,b)}function eU(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:Y(f[b])}),{})):_({})}(a),{},b):eS(a,b)}function eV(a,b,c={}){return E("Pick",[a,b],c)}function eW(a,b,c={}){return eX(a,j(b)?ei(b):b,c)}function eX(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?i(a,{[b]:c[b]}):a,{}))}(a,b),{},c):eV(a,b,c)}function eY(a,b={}){return E("ReadonlyObject",[a],b)}function eZ(a,b={}){return e_(a,b)}let e$=eZ;function e_(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return J(b)?fh(I(b.items)):ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:aE(f[b])}),{})):bd(b)?fh(bc(b.items)):a6(b)?a5(b.anyOf.map(b=>a(b))):b}(a),{},b):eY(a)}function e0(a,b={}){return E("Required",[a],b)}function e1(a,b={}){return e2(a,b)}function e2(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:bg(f[b])}),{})):_({})}(a),{},b):e0(a,b)}function e3(a,b={}){return E("ReturnType",[a],b)}function e4(a,b={}){return e5(a,b)}function e5(a,b){return fa([a])?B(O(a)?a.returnType:V(),{},b):e3(a,b)}function e6(a,b){return E("With",[a,b],{})}function e7(a,b){return e8(a,b)}function e8(a,b){return fa([a])?B(a,{},b):e6(a,b)}function e9(a,b){return{callstack:a,visited:b}}function fa(a){return s(a,(a,b)=>!Q(a)&&fa(b),()=>!0)}function fb(a,b,c){return v(c).reduce((d,e)=>({...d,[e]:fe(a,b,c[e])}),{})}function fc(a,b,c){return function a(b){return b.reduce((b,c)=>[...b,...bE(c)?bd(c.items)?a(c.items.items):aj(c.items)||Q(c.items)?[c]:[V()]:[c]],[])}(fd(a,b,c))}function fd(a,b,c){return c.map(c=>fe(a,b,c))}function fe(a,b,c){return F(c)?function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,C,D,F,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad;let ae,af,ag;return"AddImmutable"===c?(aa=a,ab=b,ac=d[0],ad=e,fg(fe(aa,ab,ac),ad)):"RemoveImmutable"===c?(f=d[0],g=fe(a,b,f),B(A(g,["~immutable"]),{},e)):"AddReadonly"===c?(h=d[0],G(fe(a,b,h),e)):"RemoveReadonly"===c?(i=d[0],be(fe(a,b,i),e)):"AddOptional"===c?(j=d[0],H(fe(a,b,j),e)):"RemoveOptional"===c?(k=d[0],bf(fe(a,b,k),e)):"Capitalize"===c?(l=d[0],d2(fe(a,b,l),e)):"Conditional"===c?(m=d[0],n=d[1],o=d[2],p=d[3],ae=fe(a,b,m),af=fe(a,b,n),d8(a,b,ae,af,o,p,e)):"ConstructorParameters"===c?(q=d[0],eb(fe(a,b,q),e)):"Evaluate"===c?(r=d[0],s=fe(a,b,r),B(bp(s),{},e)):"Exclude"===c?(t=d[0],u=d[1],ee(fe(a,b,t),fe(a,b,u),e)):"Extract"===c?(v=d[0],w=d[1],eh(fe(a,b,v),fe(a,b,w),e)):"Index"===c?(x=d[0],y=d[1],ex(fe(a,b,x),fe(a,b,y),e)):"InstanceType"===c?function(a,b,c,d={}){return eA(fe(a,b,c),d)}(a,b,d[0],e):"Interface"===c?(z=d[0],C=d[1],dt(fd(a,b,z),fb(a,b,C),e)):"KeyOf"===c?(D=d[0],eD(fe(a,b,D),e)):"Lowercase"===c?(F=d[0],d3(fe(a,b,F),e)):"Mapped"===c?(I=d[0],J=d[1],K=d[2],L=d[3],ag=fe(a,b,J),eG(a,b,I,ag,K,L,e)):"Module"===c?eH(a,b,d[0],e):"NonNullable"===c?(M=d[0],eK(fe(a,b,M),e)):"Pick"===c?(N=d[0],O=d[1],eX(fe(a,b,N),fe(a,b,O),e)):"Parameters"===c?(P=d[0],eR(fe(a,b,P),e)):"Partial"===c?(Q=d[0],eU(fe(a,b,Q),e)):"Omit"===c?(R=d[0],S=d[1],eO(fe(a,b,R),fe(a,b,S),e)):"ReadonlyObject"===c?(T=d[0],e_(fe(a,b,T),e)):"Record"===c?(U=d[0],V=d[1],bs(fe(a,b,U),fe(a,b,V),e)):"Required"===c?(W=d[0],e2(fe(a,b,W),e)):"ReturnType"===c?function(a,b,c,d={}){return e5(fe(a,b,c),d)}(a,b,d[0],e):"TemplateLiteral"===c?(X=d[0],c3(fd(a,b,X),e)):"Uncapitalize"===c?(Y=d[0],d4(fe(a,b,Y),e)):"Uppercase"===c?(Z=d[0],d5(fe(a,b,Z),e)):"With"===c?($=d[0],_=d[1],e8(fe(a,b,$),_)):E(c,d,e)}(a,b,c.action,c.parameters,c.options):function(a,b,c){var d;let e,f,g=Q(c)?(d=c.$ref,b.visited.includes(d)?c:d in a?fe(a,e9(b.callstack,[...b.visited,d]),a[d]):c):J(c)?I(fe(a,b,c.items),K(c)):dQ(c)?dN(a,b,c.target,c.arguments):M(c)?L(fd(a,b,c.parameters),fe(a,b,c.instanceType),A(c,["~kind","type","parameters","instanceType"])):O(c)?N(fd(a,b,c.parameters),fe(a,b,c.returnType),A(c,["~kind","type","parameters","returnType"])):al(c)?ak(fe(a,b,c.if),fe(a,b,c.then),fe(a,b,c.else),A(c,["~kind","if","then","else"])):aq(c)?ap(fd(a,b,c.allOf),A(c,["~kind","allOf"])):aa(c)?_(fb(a,b,c.properties),A(c,["~kind","type","properties","required"])):bC(c)?bb(bz(c),fe(a,b,bB(c))):bE(c)?bD(fe(a,b,c.items)):bd(c)?bc(fc(a,b,c.items),A(c,["~kind","type","items","minItems","additionalItems"])):a6(c)?a5(fd(a,b,c.anyOf),A(c,["~kind","anyOf"])):c;return e=$(c)?H(g,{}):g,f=aG(c)?G(e,{}):e,aC(c)?fg(f,{}):f}(a,b,c)}function ff(a,b){return fe(a,e9([],[]),b)}function fg(a,b){return B(B(a,{"~immutable":!0},{}),{},b)}function fh(a,b={}){return fg(a,b)}function fi(a,b={}){return B(bp(a),{},b)}function fj(a,b={}){return eH({},e9([],[]),a,b)}function fk(...a){let b,[c,d,e]=ah(a,{2:(a,b)=>r(a)?[{},a,b]:[a,b,{}],3:(a,b,c)=>[a,b,c],1:a=>[{},a,{}]}),f=cf(cf(cf(cf(c1(b=d),([a,b])=>cf(cf(cf(c0(b),([a,b])=>cf(cf(cf(c1(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bQ(bM(a)),b]),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("Module",[a],b)}(i(a[0],a[1][0])),b]),([a,b])=>[a,b],()=>cf(cf(cf(ci(b),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[R(a[0],a[2]),b]),([a,b])=>[a,b],()=>cf(cy(b),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]);return B(j(f)&&2===f.length?fe(c,e9([],[]),f[0]):V(),{},e)}},57856:(a,b,c)=>{c.d(b,{TQ:()=>e,p1:()=>d});let d=92;function e(a,b=d,c=40){return Object.freeze({terminal:Object.freeze({columns:b,rows:c,kittyProtocolActive:!1}),requestRender:a})}},60542:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{startTaskScheduler:()=>G});var e=c(29021),f=c(55511),g=c(75384),h=c(47128),i=c(12144),j=c(69453),k=c(65562),l=c(14916),m=c(85158),n=c(48817),o=c(32105),p=a([i,j,o]);[i,j,o]=p.then?(await p)():p;let K=new Map,L=new Map;function q(a){if(a.cwd)return a.cwd;let b=(0,g.v$)(a.boardId);return b&&(0,e.existsSync)(b.projectKey)?b.projectKey:null}async function r(a){if(a.sessionId)try{let b=await (0,j.os)(a.sessionId);if(b)return{...await (0,i.OF)(a.sessionId,b,void 0),created:!1}}catch{}let b=q(a);return b?{...await (0,i.OF)((0,f.randomUUID)(),"",b,{toolNames:l.C1}),created:!0}:null}async function s(){let a=new Set((0,i.HG)()),b=0;for(let c of(0,n.O7)(["review"]))c.sessionId&&a.has(c.sessionId)&&((0,n.w0)(c.id,{execStatus:"running"}),console.log(`[task-scheduler] #${c.number} ${c.name} 自愈:会话仍在跑 → 拉回 running`),b+=1);return b}async function t(a){let b=(0,f.randomUUID)();if(!(0,n.Im)(a.id,b))return console.log(`[task-scheduler] #${a.number} ${a.name} 派发锁被占用,跳过`),!1;let c=null;try{if(!(c=await r(a)))return console.warn(`[task-scheduler] #${a.number} ${a.name} 无可用 cwd,跳过派发`),(0,n.$j)(a.id,b),!1;let d=c;await d.session.send({type:"set_session_name",name:`#${a.number} ${a.name}`});let e=(0,g.v$)(a.boardId);if(e?.taskId&&(0,k.mE)(d.realSessionId,e.taskId),d.session.isRunning())return(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] #${a.number} ${a.name} 会话忙(复用中),标 running 不重发`),!0;return await d.session.send({type:"prompt",message:function(a){let b=[`【任务卡 #${a.number}】${a.name}`];if(a.description.trim()&&b.push("",a.description.trim()),a.attachments.length>0)for(let c of(b.push("","附件:"),a.attachments))b.push(`- ${c}`);return b.join("\n")}(a)}),(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] 派发 #${a.number} ${a.name} → session ${d.realSessionId.slice(0,8)}`),!0}catch(d){if(c?.created)try{c.session.destroy()}catch{}return(0,n.$j)(a.id,b),console.error(`[task-scheduler] 派发 #${a.number} ${a.name} 失败:`,d instanceof Error?d.message:d),!1}}function u(a){(0,h.dA)(a).catch(b=>console.warn(`[task-scheduler] reconcile ${a} 异常:`,b?.message??b))}function v(a,b){if("function"!=typeof b.onEvent)return;let c=b.onEvent(b=>{if("agent_end"!==b.type)return;c();let d=(0,n.XJ)(a.id);d&&"running"===d.execStatus&&((0,n.w0)(a.id,{execStatus:"review"}),console.log(`[task-scheduler] #${a.number} ${a.name} 执行会话结束(agent_end) → review(待审核)`))})}async function w(){let a=new Set((0,i.HG)()),b=Date.now(),c=0;for(let d of(0,n.BH)()){if(!d.sessionId||a.has(d.sessionId))continue;let e=await (0,o.Wz)(d.sessionId);e&&0!==e.lastActivityMs&&(b-e.lastActivityMs<5e3||((0,n.w0)(d.id,{execStatus:"review"}),console.log(`[task-scheduler] #${d.number} ${d.name} 执行会话已结束 → review(待审核)`),c+=1))}return c}async function x(){let a=0;for(let b of(0,n.O7)(["not_started","running","review","waiting_reply"])){if(!b.sessionId)continue;let c=(0,i.A4)(b.sessionId);c&&(c.isRunning()?"running"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"running"}),a+=1):c.hasPendingUiRequest()&&"waiting_reply"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"waiting_reply"}),a+=1))}return a}async function y(){await x(),await s(),await w(),await D(),await z(),await E();let a=0,b=(0,n.CU)(),c=Math.max(0,1-b);if(c<=0)return H({type:"skipped_gate",at:Date.now()}),0;for(let b of(0,n.uZ)().slice(0,c)){if((0,n.CU)()>=1)break;await J({kind:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()},()=>t(b))&&(a+=1,H({type:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()}))}return a}async function z(){let a=0;for(let b of(0,n.Kg)()){let c=(0,n.XJ)(b.cardId);if(c&&"waiting_reply"===c.execStatus&&c.sessionId){if((0,n.CU)()>=1)break;await J({kind:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>A(c,b))&&(a+=1,H({type:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()}))}}return a}async function A(a,b){try{let c=await (0,j.os)(a.sessionId);if(!c)return!1;let{session:d}=await (0,i.OF)(a.sessionId,c,void 0);return await d.send({type:"prompt",message:`【用户回答了你的提问】
26
+ 只输出一行 JSON(不要输出其他文字):{"kind":"sync_server|infinite_loop|rate_limit|error|asking|normal","detail":"简短说明"}`;async function n(a){let b=[`【任务卡 #${a.cardNumber}】${a.cardName}`,`任务描述:${a.taskDescription||"(空)"}`,"\n执行会话最后几条消息:",a.recentMessages||"(无消息)"].join("\n"),c=await l(a.cwd,q,b);return c&&["sync_server","infinite_loop","rate_limit","error","asking","normal"].includes(c.kind)?{kind:c.kind,detail:c.detail??""}:null}d()}catch(a){d(a)}})},32302:(a,b,c)=>{"use strict";c.d(b,{M:()=>d});let d={noExtensions:!0,noSkills:!0,noPromptTemplates:!0,noThemes:!0,noContextFiles:!1,systemPrompt:" ",appendSystemPrompt:[" "],systemPromptOverride:()=>void 0,appendSystemPromptOverride:()=>[]}},35015:(a,b,c)=>{"use strict";function d(a){let b=0===a.tools.length&&!a.loadSkills&&!a.loadExtensions,c="replace"===a.promptMode,d=[a.profileSystemPrompt];return a.inheritedParentContext&&!b&&d.push(a.inheritedParentContext),{chatOnly:b,appendSystemPrompt:d,delegatedTask:a.inheritedParentContext&&b?`${a.task}
27
+
28
+ ${a.inheritedParentContext}`:a.task,...b||c?{exactSystemPrompt:a.profileSystemPrompt}:{}}}c.d(b,{r:()=>d})},37173:(a,b,c)=>{"use strict";c.d(b,{yv:()=>f});var d=c(82249);let e=/^(?:\uFEFF)?---[ \t]*(?:\r\n|\n|\r)/;function f(a){let b=function(a){let b=e.exec(a);if(!b)return null;let c=/^---[ \t]*(?:(?:\r\n|\n|\r)|$)/gm;c.lastIndex=b[0].length;let d=c.exec(a);return d?{yaml:a.slice(b[0].length,d.index).replace(/(?:\r\n|\n|\r)$/,""),rest:a.slice(d.index+d[0].length)}:null}(a);if(!b)return{data:null,rest:a};try{let a=(0,d.Hh)(b.yaml);if(a&&"object"==typeof a&&!Array.isArray(a))return{data:a,rest:b.rest}}catch{}return{data:null,rest:b.rest}}},39065:(a,b,c)=>{"use strict";let d=c(62404),{toPromise:e,toSync:f,toSyncOptions:g}=c(13884);async function h(a,b){let c=await e(d.lock)(a,b);return e(c)}a.exports=h,a.exports.lock=h,a.exports.unlock=function(a,b){return e(d.unlock)(a,b)},a.exports.lockSync=function(a,b){let c=f(d.lock)(a,g(b));return f(c)},a.exports.unlockSync=function(a,b){return f(d.unlock)(a,g(b))},a.exports.check=function(a,b){return e(d.check)(a,b)},a.exports.checkSync=function(a,b){return f(d.check)(a,g(b))}},39466:(a,b,c)=>{var d=c(81115),e=process.cwd,f=null,g=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return f||(f=e.call(process)),f};try{process.cwd()}catch(a){}if("function"==typeof process.chdir){var h=process.chdir;process.chdir=function(a){f=null,h.call(process,a)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,h)}a.exports=function(a){var b,c,e;function f(b){return b?function(c,d,e){return b.call(a,c,d,function(a){m(a)&&(a=null),e&&e.apply(this,arguments)})}:b}function h(b){return b?function(c,d){try{return b.call(a,c,d)}catch(a){if(!m(a))throw a}}:b}function i(b){return b?function(c,d,e,f){return b.call(a,c,d,e,function(a){m(a)&&(a=null),f&&f.apply(this,arguments)})}:b}function j(b){return b?function(c,d,e){try{return b.call(a,c,d,e)}catch(a){if(!m(a))throw a}}:b}function k(b){return b?function(c,d,e){function f(a,b){b&&(b.uid<0&&(b.uid+=0x100000000),b.gid<0&&(b.gid+=0x100000000)),e&&e.apply(this,arguments)}return"function"==typeof d&&(e=d,d=null),d?b.call(a,c,d,f):b.call(a,c,f)}:b}function l(b){return b?function(c,d){var e=d?b.call(a,c,d):b.call(a,c);return e&&(e.uid<0&&(e.uid+=0x100000000),e.gid<0&&(e.gid+=0x100000000)),e}:b}function m(a){return!a||"ENOSYS"===a.code||(!process.getuid||0!==process.getuid())&&("EINVAL"===a.code||"EPERM"===a.code)}d.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&((c=a).lchmod=function(a,b,e){c.open(a,d.O_WRONLY|d.O_SYMLINK,b,function(a,d){if(a){e&&e(a);return}c.fchmod(d,b,function(a){c.close(d,function(b){e&&e(a||b)})})})},c.lchmodSync=function(a,b){var e,f=c.openSync(a,d.O_WRONLY|d.O_SYMLINK,b),g=!0;try{e=c.fchmodSync(f,b),g=!1}finally{if(g)try{c.closeSync(f)}catch(a){}else c.closeSync(f)}return e}),a.lutimes||(e=a,d.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(a,b,c,f){e.open(a,d.O_SYMLINK,function(a,d){if(a){f&&f(a);return}e.futimes(d,b,c,function(a){e.close(d,function(b){f&&f(a||b)})})})},e.lutimesSync=function(a,b,c){var f,g=e.openSync(a,d.O_SYMLINK),h=!0;try{f=e.futimesSync(g,b,c),h=!1}finally{if(h)try{e.closeSync(g)}catch(a){}else e.closeSync(g)}return f}):e.futimes&&(e.lutimes=function(a,b,c,d){d&&process.nextTick(d)},e.lutimesSync=function(){})),a.chown=i(a.chown),a.fchown=i(a.fchown),a.lchown=i(a.lchown),a.chmod=f(a.chmod),a.fchmod=f(a.fchmod),a.lchmod=f(a.lchmod),a.chownSync=j(a.chownSync),a.fchownSync=j(a.fchownSync),a.lchownSync=j(a.lchownSync),a.chmodSync=h(a.chmodSync),a.fchmodSync=h(a.fchmodSync),a.lchmodSync=h(a.lchmodSync),a.stat=k(a.stat),a.fstat=k(a.fstat),a.lstat=k(a.lstat),a.statSync=l(a.statSync),a.fstatSync=l(a.fstatSync),a.lstatSync=l(a.lstatSync),a.chmod&&!a.lchmod&&(a.lchmod=function(a,b,c){c&&process.nextTick(c)},a.lchmodSync=function(){}),a.chown&&!a.lchown&&(a.lchown=function(a,b,c,d){d&&process.nextTick(d)},a.lchownSync=function(){}),"win32"===g&&(a.rename="function"!=typeof a.rename?a.rename:function(b){function c(c,d,e){var f=Date.now(),g=0;b(c,d,function h(i){if(i&&("EACCES"===i.code||"EPERM"===i.code||"EBUSY"===i.code)&&Date.now()-f<6e4){setTimeout(function(){a.stat(d,function(a,f){a&&"ENOENT"===a.code?b(c,d,h):e(i)})},g),g<100&&(g+=10);return}e&&e(i)})}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.rename)),a.read="function"!=typeof a.read?a.read:function(b){function c(c,d,e,f,g,h){var i;if(h&&"function"==typeof h){var j=0;i=function(k,l,m){if(k&&"EAGAIN"===k.code&&j<10)return j++,b.call(a,c,d,e,f,g,i);h.apply(this,arguments)}}return b.call(a,c,d,e,f,g,i)}return Object.setPrototypeOf&&Object.setPrototypeOf(c,b),c}(a.read),a.readSync="function"!=typeof a.readSync?a.readSync:(b=a.readSync,function(c,d,e,f,g){for(var h=0;;)try{return b.call(a,c,d,e,f,g)}catch(a){if("EAGAIN"===a.code&&h<10){h++;continue}throw a}})}},41035:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$u:()=>y,I6:()=>w,IR:()=>r,gY:()=>x,o2:()=>A,ph:()=>v,pv:()=>B,rh:()=>s,st:()=>C,tP:()=>z});var e=c(75430);c(82249);var f=c(29021),g=c(33873),h=c(37173);c(12969);var i=c(83739),j=c(14916),k=a([e]);e=(k.then?(await k)():k)[0];let z="pi-web:subagent",A="pi-web:subagent-status",B="pi-web:subagent-result",C=["Agent","get_subagent_result","steer_subagent"],D=new Set(j.G1),E=new Set(C),F=new Set(["off","minimal","low","medium","high","xhigh","max"]),G=[{name:"general-purpose",displayName:"General purpose",description:"Handle a focused implementation or investigation task",systemPrompt:"Work autonomously on the delegated task. Keep the final answer concise and include important files, decisions, and remaining risks.",tools:j.G1,loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"explore",displayName:"Explore",description:"Quickly inspect a codebase without modifying it",systemPrompt:"Explore the codebase to answer the delegated question. Do not modify files. Report concrete findings with file paths and relevant symbols.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"},{name:"plan",displayName:"Plan",description:"Design an implementation plan without modifying files",systemPrompt:"Produce an implementation-ready plan for the delegated task. Inspect the repository as needed, do not modify files, and call out dependencies, risks, and verification steps.",tools:[...j.kU],loadSkills:!1,loadExtensions:!1,promptMode:"append",inheritContext:!1,runInBackground:!1,enabled:!0,scope:"builtin"}];function l(a){return"string"==typeof a&&a.trim()?a.trim():void 0}function m(a,b){return"boolean"==typeof a?a:b}function n(a,b){return"boolean"==typeof a?a:!!Array.isArray(a)||"string"==typeof a||b}function o(a){return(Array.isArray(a)?a:"string"==typeof a?a.split(","):[]).map(a=>String(a).trim()).filter(Boolean)}function p(a,b){let c=o(a);return c.includes("none")?[]:c.includes("all")||c.includes("*")?[...j.G1]:0===c.length?[...b]:[...new Set(c.filter(a=>D.has(a)))]}function q(a){return[...new Set(o(a).filter(a=>a.toLowerCase().startsWith("ext:")))]}function r(a){let b=new Map(G.map(a=>[a.name.toLowerCase(),{...a,tools:[...a.tools]}]));for(let[c,d]of[[(0,g.join)((0,e.getAgentDir)(),"agents"),"global"],[(0,g.join)((0,g.resolve)(a),".agents","agents"),"workspace"],[(0,g.join)((0,g.resolve)(a),".pi","agents"),"project"]])for(let e of function(a,b,c){return(0,f.existsSync)(a)?"global"===b||(0,i.x)(a,new Set([c]))?(0,f.readdirSync)(a,{withFileTypes:!0}).filter(a=>a.isFile()&&a.name.endsWith(".md")).map(c=>(function(a,b){try{let c=(0,f.readFileSync)(a,"utf8"),{data:d,rest:e}=(0,h.yv)(c),i=l(d?.name)??(0,g.basename)(a,".md");if(!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(i))return null;let k=l(d?.thinking),o="number"==typeof d?.max_turns?Math.floor(d.max_turns):void 0,r=p(d?.tools,j.G1),s=new Set(p(d?.disallowed_tools,[])),t=new Set(q(d?.disallowed_tools).map(a=>a.toLowerCase())),u=q(d?.tools).filter(a=>!t.has(a.toLowerCase()));return{name:i,displayName:l(d?.display_name)??i,description:l(d?.description)??i,systemPrompt:e.trim(),tools:r.filter(a=>!s.has(a)),...u.length>0?{extensionTools:u}:{},loadSkills:n(d?.load_skills??d?.skills,!1),loadExtensions:n(d?.load_extensions??d?.extensions,u.length>0),...l(d?.model)?{model:l(d?.model)}:{},...k&&F.has(k)?{thinking:k}:{},...o&&o>0?{maxTurns:o}:{},inheritContext:m(d?.inherit_context,!1),runInBackground:m(d?.run_in_background,!1),promptMode:d?.prompt_mode==="replace"?"replace":"append",...l(d?.color)?{color:l(d?.color)}:{},...d?.isolation==="worktree"||d?.isolation==="off"?{isolation:d.isolation}:{},..."boolean"==typeof d?.persist_session?{persistSession:d.persist_session}:{},enabled:m(d?.enabled,!0),scope:b,filePath:a}}catch{return null}})((0,g.join)(a,c.name),b)).filter(a=>null!==a):[]:[]}(c,d,a))b.set(e.name.toLowerCase(),e);return[...b.values()].sort((a,b)=>a.displayName.localeCompare(b.displayName))}function s(a,b){return r(a).find(a=>a.name.toLowerCase()===b.trim().toLowerCase()&&a.enabled)}function t(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function u(a){let b=a.find(a=>"custom"===a.type&&a.customType===z);if(!b||"custom"!==b.type||!t(b.data))return null;let c=b.data;return 1!==c.version||"string"!=typeof c.parentSessionId||"string"!=typeof c.parentSessionPath?null:c}function v(a){let b=u(a);if(!b)return null;let c=b.resourceSnapshot,d=t(c)&&!0===c.loadSkills,e=t(c)&&!0===c.loadExtensions;return t(c)&&1===c.version&&Array.isArray(c.appendSystemPrompt)&&c.appendSystemPrompt.every(a=>"string"==typeof a)&&Array.isArray(c.tools)&&c.tools.every(a=>"string"==typeof a&&a.length>0&&!E.has(a)&&(D.has(a)||e))?{appendSystemPrompt:[...c.appendSystemPrompt],tools:[...new Set(c.tools)],loadSkills:d,loadExtensions:e,..."string"==typeof c.exactSystemPrompt?{exactSystemPrompt:c.exactSystemPrompt}:{}}:null}function w(a,b){return[...new Set([...a,...[...b].filter(a=>!E.has(a))])]}function x(a,b){let c=b.map(a=>a.slice(4).toLowerCase());return[...a].flatMap(a=>{let b=a.path.replaceAll("\\","/").split("/").at(-2)??a.path,d=(a.sourceInfo?.source??"").replace(/^npm:/,""),e=new Set([b.toLowerCase(),d.toLowerCase()]);return c.some(b=>{if("*"===b)return!0;let[c,d]=b.split("/",2);return e.has(c)&&(!d||a.tools.has(d))})?[...a.tools.keys()].filter(a=>c.some(b=>{if("*"===b||b.endsWith("/*"))return"*"===b||e.has(b.slice(0,-2));let[c,d]=b.split("/",2);return e.has(c)&&(!d||d===a)})):[]})}function y(a,b,c){let d=u(a);if(!d)return null;let e=[...a].reverse().find(a=>"custom"===a.type&&(a.customType===B||a.customType===A)),f=e?.type==="custom"&&e.customType===B?e:void 0,g=f?.type==="custom"&&t(f.data)?f.data:void 0,h=e?.type==="custom"&&e.customType===A?e:void 0,i=h?.type==="custom"&&t(h.data)?h.data:void 0,j=g&&("completed"===g.status||"failed"===g.status||"aborted"===g.status)?g.status:i?.version===1&&("queued"===i.status||"running"===i.status)?i.status:"interrupted";return{sessionId:b,sessionPath:c,parentSessionId:d.parentSessionId,parentToolCallId:"string"==typeof d.parentToolCallId?d.parentToolCallId:"",profile:"string"==typeof d.profile?d.profile:"general-purpose",description:"string"==typeof d.description?d.description:"Subagent",task:"string"==typeof d.task?d.task:"",runInBackground:!0===d.runInBackground,status:j,createdAt:"string"==typeof d.createdAt?d.createdAt:"",...g&&"string"==typeof g.completedAt?{completedAt:g.completedAt}:{},...g&&"string"==typeof g.result?{result:g.result}:{},...g&&"string"==typeof g.error?{error:g.error}:{},..."string"==typeof d.worktreePath?{worktreePath:d.worktreePath}:{},..."string"==typeof d.worktreeBranch?{worktreeBranch:d.worktreeBranch}:{},...g&&"string"==typeof g.worktreeCleanupError?{worktreeCleanupError:g.worktreeCleanupError}:{}}}d()}catch(a){d(a)}})},45399:(a,b,c)=>{"use strict";c.d(b,{ZUJ:()=>g});var d,e,f={};c.r(f),c.d(f,{ExtendsFalse:()=>db,ExtendsTrue:()=>c9,ExtendsUnion:()=>c7,IsExtendsFalse:()=>dc,IsExtendsTrue:()=>da,IsExtendsTrueLike:()=>dd,IsExtendsUnion:()=>c8,Match:()=>de});var g={};c.r(g),c.d(g,{Any:()=>T,Array:()=>I,BigInt:()=>aJ,Boolean:()=>aL,Call:()=>dP,Capitalize:()=>dT,Codec:()=>ax,Conditional:()=>d7,Constructor:()=>L,ConstructorParameters:()=>ea,Cyclic:()=>ad,Decode:()=>ay,DecodeBuilder:()=>aw,Dependent:()=>ak,Encode:()=>az,EncodeBuilder:()=>av,Enum:()=>an,Evaluate:()=>fi,Exclude:()=>ed,Extends:()=>dF,ExtendsResult:()=>f,Extract:()=>eg,Function:()=>N,Generic:()=>R,Identifier:()=>aN,Immutable:()=>aB,Index:()=>ek,Infer:()=>ai,InstanceType:()=>ez,Instantiate:()=>ff,Integer:()=>aQ,Interface:()=>dw,Intersect:()=>ap,IsAny:()=>U,IsArray:()=>J,IsBigInt:()=>aK,IsBoolean:()=>aM,IsCall:()=>dQ,IsCodec:()=>aA,IsConstructor:()=>M,IsCyclic:()=>ae,IsDependent:()=>al,IsEnum:()=>ao,IsEnumValue:()=>am,IsFunction:()=>O,IsGeneric:()=>S,IsIdentifier:()=>aO,IsImmutable:()=>aC,IsInfer:()=>aj,IsInteger:()=>aR,IsIntersect:()=>aq,IsKind:()=>C,IsLiteral:()=>aV,IsNever:()=>W,IsNull:()=>aX,IsNumber:()=>a$,IsObject:()=>aa,IsOptional:()=>$,IsParameter:()=>a2,IsReadonly:()=>aG,IsRecord:()=>bC,IsRef:()=>Q,IsRefine:()=>aI,IsRest:()=>bE,IsSchema:()=>D,IsString:()=>a4,IsSymbol:()=>a0,IsTemplateLiteral:()=>c6,IsThis:()=>bG,IsTuple:()=>bd,IsUndefined:()=>bI,IsUnion:()=>a6,IsUnknown:()=>ac,IsUnsafe:()=>ag,IsVoid:()=>bK,KeyOf:()=>eC,Literal:()=>aT,Lowercase:()=>dV,Mapped:()=>eF,Module:()=>fj,Never:()=>V,NonNullable:()=>eJ,Null:()=>aW,Number:()=>aZ,Object:()=>_,Omit:()=>eM,Optional:()=>Z,Parameter:()=>a1,Parameters:()=>eQ,Partial:()=>eT,Pick:()=>eW,Readonly:()=>aF,ReadonlyObject:()=>eZ,ReadonlyType:()=>e$,Record:()=>bx,RecordKey:()=>bA,RecordPattern:()=>bz,RecordValue:()=>bB,Ref:()=>P,Refine:()=>aH,Required:()=>e1,Rest:()=>bD,ReturnType:()=>e4,Script:()=>fk,String:()=>a3,Symbol:()=>a_,TemplateLiteral:()=>c5,This:()=>bF,Tuple:()=>bc,Uncapitalize:()=>dX,Undefined:()=>bH,Union:()=>a5,Unknown:()=>ab,Unsafe:()=>af,Uppercase:()=>dZ,Void:()=>bJ,With:()=>e7});let h={assign:0,create:0,clone:0,discard:0,update:0};function i(a,b){return h.assign+=1,{...a,...b}}function j(a){return Array.isArray(a)}function k(a){return"bigint"==typeof a}function l(a){return"boolean"==typeof a}function m(a){return"function"==typeof a}function n(a){return null===a}function o(a){return Number.isFinite(a)}function p(a){return q(a)&&!j(a)}function q(a){return"object"==typeof a&&!n(a)}function r(a){return"string"==typeof a}function s(a,b,c){return 0===a.length?c():b(a[0],a.slice(1))}function t(a){return"__proto__"===a||"constructor"===a||"prototype"===a}function u(a,b){return t(b)?Object.prototype.hasOwnProperty.call(a,b):b in a}function v(a){return Object.getOwnPropertyNames(a)}function w(a){return Object.values(a)}function x(a){return h.clone+=1,function a(b){return globalThis.ArrayBuffer.isView(b)?b.slice():b instanceof globalThis.RegExp?new RegExp(b.source,b.flags):b instanceof globalThis.Map?new Map(a([...b.entries()])):b instanceof globalThis.Set?new Set(a([...b.values()])):j(b)?b.map(b=>a(b)):q(b)?function(b){return!function(a){if(!q(a))return!1;let b=globalThis.Object.getPrototypeOf(a);return!n(b)&&"function"==typeof b.constructor&&b.constructor!==globalThis.Object&&"Object"!==b.constructor.name}(b)?u(b,"~kind")||u(b,"~unsafe")?function(b){let c={},d=Object.getOwnPropertyDescriptors(b);for(let b of Object.keys(d)){if(t(b))continue;let e=d[b];u(e,"value")&&Object.defineProperty(c,b,{...e,value:a(e.value)})}return c}(b):function(b){let c={};for(let d of v(b))t(d)||(c[d]=a(b[d]));for(let d of Object.getOwnPropertySymbols(b))c[d]=a(b[d]);return c}(b):b}(b):b}(a)}let y={immutableTypes:!1,maxErrors:8,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function z(a,b,c={}){h.create+=1;let d={...b,...c},e=y.enumerableKind?{...d,...a}:function(a,b){for(let c of Object.keys(b))Object.defineProperty(a,c,{configurable:!0,writable:!0,enumerable:!1,value:b[c]});return a}(d,a);return y.immutableTypes?Object.freeze(e):e}function A(a,b){h.discard+=1;let c={},d=Object.getOwnPropertyDescriptors(x(a)),e=new Set(b);for(let a of Object.keys(d))e.has(a)||Object.defineProperty(c,a,d[a]);return c}function B(a,b,c){h.update+=1;let d=x(a);for(let a of Object.keys(b))Object.defineProperty(d,a,{configurable:!0,writable:!0,enumerable:y.enumerableKind,value:b[a]});for(let a of Object.keys(c))Object.defineProperty(d,a,{configurable:!0,enumerable:!0,writable:!0,value:c[a]});return d}function C(a,b){return q(a)&&u(a,"~kind")&&a["~kind"]===b}function D(a){return q(a)}function E(a,b,c){return z({"~kind":"Deferred"},{type:"deferred",action:a,parameters:b,options:c},{})}function F(a){return C(a,"Deferred")}function G(a,b){return B(B(a,{"~readonly":!0},{}),{},b)}function H(a,b){return B(B(a,{"~optional":!0},{}),{},b)}function I(a,b){return z({"~kind":"Array"},{type:"array",items:a},b)}function J(a){return C(a,"Array")}function K(a){return A(a,["~kind","type","items"])}function L(a,b,c={}){return z({"~kind":"Constructor"},{type:"constructor",parameters:a,instanceType:b},c)}function M(a){return C(a,"Constructor")}function N(a,b,c={}){return z({"~kind":"Function"},{type:"function",parameters:a,returnType:b},c)}function O(a){return C(a,"Function")}function P(a,b){return z({"~kind":"Ref"},{$ref:a},b)}function Q(a){return C(a,"Ref")}function R(a,b){return z({"~kind":"Generic"},{type:"generic",parameters:a,expression:b})}function S(a){return C(a,"Generic")}function T(a){return z({"~kind":"Any"},{},a)}function U(a){return C(a,"Any")}function V(a){return z({"~kind":"Never"},{not:{}},a)}function W(a){return C(a,"Never")}function X(a,b={}){return E("AddOptional",[a],b)}function Y(a,b={}){return H(a,b)}function Z(a){return Y(a)}function $(a){return q(a)&&u(a,"~optional")}function _(a,b={}){let c=v(a).filter(b=>!$(a[b]));return z({"~kind":"Object"},{type:"object",...c.length>0?{required:c}:{},properties:a},b)}function aa(a){return C(a,"Object")}function ab(a){return z({"~kind":"Unknown"},{},a)}function ac(a){return C(a,"Unknown")}function ad(a,b,c){return z({"~kind":"Cyclic"},{$defs:v(a).reduce((b,c)=>({...b,[c]:B(a[c],{},{$id:c})}),{}),$ref:b},c)}function ae(a){return C(a,"Cyclic")}function af(a){return B(a,{"~unsafe":null},{})}function ag(a){return p(a)&&u(a,"~unsafe")&&n(a["~unsafe"])}function ah(a,b){return b[a.length]?.(...a)??(()=>{throw Error("Invalid Arguments")})()}function ai(...a){let[b,c]=ah(a,{2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Infer"},{type:"infer",name:b,extends:c},{})}function aj(a){return C(a,"Infer")}function ak(a,b,c,d={}){return z({"~kind":"Dependent"},{if:a,then:b,else:c},d)}function al(a){return C(a,"Dependent")}function am(a){return r(a)||o(a)}function an(a,b){return z({"~kind":"Enum"},{enum:p(a)?v(a).filter(a=>isNaN(a)).reduce((b,c)=>[...b,a[c]],[]):a},b)}function ao(a){return C(a,"Enum")}function ap(a,b={}){return z({"~kind":"Intersect"},{allOf:a},b)}function aq(a){return C(a,"Intersect")}(d=e||(e={}))[d.Array=0]="Array",d[d.BigInt=1]="BigInt",d[d.Boolean=2]="Boolean",d[d.Date=3]="Date",d[d.Constructor=4]="Constructor",d[d.Function=5]="Function",d[d.Null=6]="Null",d[d.Number=7]="Number",d[d.Object=8]="Object",d[d.RegExp=9]="RegExp",d[d.String=10]="String",d[d.Symbol=11]="Symbol",d[d.TypeArray=12]="TypeArray",d[d.Undefined=13]="Undefined",BigInt("14695981039346656037");let[ar,as]=[BigInt("1099511628211"),BigInt("18446744073709551616")];Array.from({length:256}).map((a,b)=>BigInt(b));let at=new Float64Array(1);function au(){throw Error("Unreachable")}new DataView(at.buffer),new Uint8Array(at.buffer),new TextEncoder;class av{constructor(a,b){this.type=a,this.decode=b}Encode(a){let b=this.type,c=aA(b)?a=>this.decode(b["~codec"].decode(a)):this.decode,d=aA(b)?c=>b["~codec"].encode(a(c)):a;return B(this.type,{"~codec":{decode:c,encode:d}},{})}}class aw{constructor(a){this.type=a}Decode(a){return new av(this.type,a)}}function ax(a){return new aw(a)}function ay(a,b){return ax(a).Decode(b).Encode(()=>{throw Error("Encode not implemented")})}function az(a,b){return ax(a).Decode(()=>{throw Error("Decode not implemented")}).Encode(b)}function aA(a){return q(a)&&u(a,"~codec")&&q(a["~codec"])&&u(a["~codec"],"encode")&&u(a["~codec"],"decode")}function aB(a){return fh(a)}function aC(a){return q(a)&&u(a,"~immutable")}function aD(a,b={}){return E("AddReadonly",[a],b)}function aE(a,b={}){return G(a,b)}function aF(a){return aE(a)}function aG(a){return q(a)&&u(a,"~readonly")}function aH(...a){var b;let c,[d,e,f]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,()=>"Refine Error"]});return b={check:e,error:f},c=aI(d)?[...d["~refine"],b]:[b],B(d,{"~refine":c},{})}function aI(a){return q(a)&&u(a,"~refine")&&j(a["~refine"])&&function(a,b){for(let c=0;c<a.length;c++)if(!b(a[c],c))return!1;return!0}(a["~refine"],a=>p(a)&&u(a,"check")&&u(a,"error")&&m(a.check)&&m(a.error))}function aJ(a){return z({"~kind":"BigInt"},{type:"bigint"},a)}function aK(a){return C(a,"BigInt")}function aL(a){return z({"~kind":"Boolean"},{type:"boolean"},a)}function aM(a){return C(a,"Boolean")}function aN(a){return z({"~kind":"Identifier"},{name:a})}function aO(a){return C(a,"Identifier")}let aP="-?(?:0|[1-9][0-9]*)";function aQ(a){return z({"~kind":"Integer"},{type:"integer"},a)}function aR(a){return C(a,"Integer")}class aS extends Error{constructor(a){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:a},writable:!1,configurable:!1,enumerable:!1})}}function aT(a,b){return z({"~kind":"Literal"},{type:k(a)?"bigint":l(a)?"boolean":o(a)?"number":r(a)?"string":(()=>{throw new aS(a)})(),const:a},b)}function aU(a){return k(a)||l(a)||o(a)||r(a)}function aV(a){return C(a,"Literal")}function aW(a){return z({"~kind":"Null"},{type:"null"},a)}function aX(a){return C(a,"Null")}let aY="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?";function aZ(a){return z({"~kind":"Number"},{type:"number"},a)}function a$(a){return C(a,"Number")}function a_(a){return z({"~kind":"Symbol"},{type:"symbol"},a)}function a0(a){return C(a,"Symbol")}function a1(...a){let[b,c,d]=ah(a,{3:(a,b,c)=>[a,b,c],2:(a,b)=>[a,b,b],1:a=>[a,ab(),ab()]});return z({"~kind":"Parameter"},{name:b,extends:c,equals:d},{})}function a2(a){return C(a,"Parameter")}function a3(a){return z({"~kind":"String"},{type:"string"},a)}function a4(a){return C(a,"String")}function a5(a,b={}){return z({"~kind":"Union"},{anyOf:a},b)}function a6(a){return C(a,"Union")}function a7(a){let b=cZ(a);return 2===b.length?b[0]:[]}function a8(a){return 0!==a.length&&function a(b){return s(b,(b,c)=>{var d;return!!(a6(d=b)?a8(d.anyOf):!!aV(d)&&(d.const,!0))&&a(c)},()=>!0)}(a)}function a9(a){return z({"~kind":"TemplateLiteral"},{type:"string",pattern:a},{})}function ba(a){var b;let c=a7(a);return 0===c.length?a3():a8(c)?0===(b=c).length?au():1===b.length&&aV(b[0])?b[0]:a5((function a(b,c){return s(c,(c,d)=>a(function a(b,c){var d,e;return a6(c)?function b(c,d,e=[]){return s(d,(d,f)=>b(c,f,[...e,...a(c,d)]),()=>e)}(b,c.anyOf):aV(c)?(d=b,e=c.const,0===d.length?[`${e}`]:function a(b,c,d=[]){return s(b,(b,e)=>a(e,c,[...d,`${b}${c}`]),()=>d)}(d,e)):au()}(b,c),d),()=>b)})([],b).map(a=>aT(a))):a9(a)}function bb(a,b){return z({"~kind":"Record"},{type:"object",patternProperties:{[a]:b}})}function bc(a,b={}){let[c,d,e]=[a,a.length,!1];return z({"~kind":"Tuple"},{type:"array",additionalItems:e,items:c,minItems:d},b)}function bd(a){return C(a,"Tuple")}function be(a,b){return B(A(a,["~readonly"]),{},b)}function bf(a,b){return B(A(a,["~optional"]),{},b)}function bg(a,b={}){return bf(a,b)}function bh(a){return a.reduceRight((a,b,c)=>({[c]:b,...a}),{})}function bi(a){return aa(a)?a.properties:bd(a)?bh(a.items):au()}function bj(a,b){var c;let d=bp(a);return bo((c=a6(d)?d.anyOf:[d],c.reduce((a,c)=>[...a,...dd(dF({},c,b))?[]:[c]],[])))}function bk(a,b,c){return bo([ap([a,b]),bj(c,a)])}function bl(a){return bo(a.map(a=>aT(a)))}function bm(a){return bq(dK(function a(b,c=[]){return s(b,(b,d)=>a6(b)?a(d,function b(c,d,e=[]){return s(c,(c,f)=>b(f,d,[...e,...a([c],d)]),()=>e)}(b.anyOf,c)):a(d,function a(b,c,d=[]){return s(c,(c,e)=>{var f,g;let h,i,j,k,l,m,n,o,p,q;return a(b,e,[...d,(h=bp(b),i=bp(c),j=a6(h),k=a6(i),l=j||k,m=aa(h)||bd(h),n=aa(i)||bd(i),l?bm([h,i]):m&&n?(o=bi(h),_([...new Set([...v(p=bi(i)),...v(o)])].reduce((a,b)=>{var c,d;let e,f,g;return{...a,[b]:b in o?b in p?(c=o[b],d=p[b],e=!!aG(c)&&!!aG(d),f=!!$(c)&&!!$(d),g=function(a,b={}){return be(a,b)}(bg(bm([c,d]))),e&&f?aE(Y(g)):e&&!f?aE(g):!e&&f?Y(g):g):o[b]:b in p?p[b]:V()}},{}))):m&&!n?h:!m&&n?i:(q=dJ(f=h,g=i))===dH?f:q===dI||q===dG?g:V())])},()=>0===d.length?[b]:d)}(b,c)),()=>c)}(a)))}function bn(a){let b;return bp(c6(b=ba(a))?a3():b)}function bo(a){return bq(dK(a))}function bp(a){return al(a)?bk(a.if,a.then,a.else):ao(a)?bl(a.enum):aq(a)?bm(a.allOf):c6(a)?bn(a.pattern):a6(a)?bo(a.anyOf):a}function bq(a){return 1===a.length?a[0]:0===a.length?V():a5(a)}function br(a){return a.reduce((a,b)=>[...a,...a6(b)?br(b.anyOf):[b]],[])}function bs(a,b,c){return fa([a])?B(function a(b,c){var d,e,f,g,h,i;return U(b)?bb(bv,c):aM(b)?_({true:c,false:c}):ao(b)?(d=b.enum,a(bl(d),c)):aR(b)?bb(bt,c):aq(b)?(e=b.allOf,a(bm(e),c)):aV(b)?(f=b.const,g=c,r(f)||o(f)?_({[f]:g}):!1===f?_({false:g}):!0===f?_({true:g}):_({})):a$(b)?bb(bu,c):a6(b)?function(a,b){var c,d;let e=br(a),f=(c=e,d=b,!0===c.some(a=>a4(a)||a$(a)||aR(a))?bb(bv,d):void 0);return q(f)?f:_(e.reduce((a,c)=>aV(c)&&(r(c.const)||o(c.const))?{...a,[c.const]:b}:a,{}))}(b.anyOf,c):a4(b)?u(b,"pattern")&&(r(b.pattern)||b.pattern instanceof RegExp)?bb(b.pattern.toString(),c):bb(bv,c):c6(b)?(h=b.pattern,i=c,a8(a7(h))?a(bn(h),i):bb(h,i)):_({})}(a,b),{},c):bw(a,b,c)}let bt=`^${aP}$`,bu=`^${aY}$`,bv="^.*$";function bw(a,b,c={}){return E("Record",[a,b],c)}function bx(a,b,c={}){return bs(a,b,c)}function by(a){return a===bv?a3():a===bt?aQ():a===bu?aZ():ba(a)}function bz(a){return v(a.patternProperties)[0]}function bA(a){return by(bz(a))}function bB(a){return a.patternProperties[bz(a)]}function bC(a){return C(a,"Record")}function bD(a){return z({"~kind":"Rest"},{type:"rest",items:a},{})}function bE(a){return C(a,"Rest")}function bF(a){return z({"~kind":"This"},{$ref:"#"},a)}function bG(a){return C(a,"This")}function bH(a){return z({"~kind":"Undefined"},{type:"undefined"},a)}function bI(a){return C(a,"Undefined")}function bJ(a){return z({"~kind":"Void"},{type:"void"},a)}function bK(a){return C(a,"Void")}function bL(){throw Error("Unreachable")}let bM=a=>{let[b,c]=a;return[...b,...c].reduce((a,b)=>j(b)&&2===b.length?[...a,b[0]]:[...a,b],[])};function bN(a,b){return b.reduce((a,b)=>1===b.length?ej(a,b[0]):0===b.length?I(a):bL(),a)}function bO(a,b){return 3===b.length?d6(a,b[0],b[1],b[2]):a}function bP(a,b){return 3===b.length?(()=>{let[c,d,e]=b,f=bP(d,e);return"&"===c?aq(f)?ap([a,...f.allOf]):ap([a,f]):"|"===c?a6(f)?a5([a,...f.anyOf]):a5([a,f]):void bL()})():a}function bQ(a){return a.reduce((a,b)=>u(b,bt)||u(b,bu)||u(b,bv)?[a[0],i(a[1],b)]:[i(a[0],b),a[1]],[{},{}])}function bR(a,b){return"remove"===a?function(a,b={}){return E("RemoveReadonly",[a],b)}(b):"add"===a?aD(b):b}function bS(a,b){return"remove"===a?function(a,b={}){return E("RemoveOptional",[a],b)}(b):"add"===a?X(b):b}function bT(a){return 2===a.length}function bU(a,b,c){return bT(a)?b(a[0],a[1]):c()}function bV(a,b){for(let e=0;e<a.length;e++){var c,d;let f=(c=a[e],0===(d=b).indexOf(c)?[c,d.slice(c.length)]:[]);if(bT(f))return f}return[]}function bW(a,b){return Array.from({length:b-a+1},(b,c)=>String.fromCharCode(a+c))}let bX=[...bW(97,122),...bW(65,90)],bY=bW(49,57),bZ=["0",...bY];function b$(a){let b=a.indexOf("*/");return -1===b?"":a.slice(b+2)}function b_(a){let b=a.indexOf("\n");return -1===b?"":a.slice(b)}function b0(a){let b=a.trimStart();return b.startsWith("/*")?b0(b$(b.slice(2))):b.startsWith("//")?b0(b_(b.slice(2))):b}function b1(a,b){return bU(bV([a],b),(a,b)=>[a,b],()=>["",b])}function b2(a,b,c,d=""){return bU(bV(a,c),(c,e)=>b.includes(c)?b2(a,b,e,d):b2(a,b,e,`${d}${c}`),()=>[d,c])}let b3=[...bZ,"_"];function b4(a){var b;return bU(bV(["0"],b=b0(a)),(a,b)=>[a,b],()=>bU(bV(bY,b),(a,b)=>bU(b2(b3,["_"],b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]))}function b5(a){return bU(bU(b1("-",b0(a)),(a,b)=>bU(b4(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[]),(a,b)=>bU(bV(["n"],b),(b,c)=>[`${a}`,c],()=>[]),()=>[])}function b6(a,b){return""===a?["",b]:a.startsWith("\n")?bV([a],function a(b){let c=b.replace(/^[ \t\r\f\v]+/,"");return c.startsWith("/*")?a(b$(c.slice(2))):c.startsWith("//")?a(b_(c.slice(2))):c}(b)):a.startsWith(" ")?bV([a],b):bV([a],b0(b))}let b7=[...bX,"_","$"],b8=[...b7,...bZ];function b9(a){return bU(bV(b7,b0(a)),(a,b)=>bU(function a(b,c=""){return bU(bV(b8,b),(b,d)=>a(d,`${c}${b}`),()=>[c,b])}(b),(b,c)=>[`${a}${b}`,c],()=>[]),()=>[])}let ca=[...bZ,"_"];function cb(a){return bU(b2(ca,["_"],a),(a,b)=>""===a?[]:[a,b],()=>[])}function cc(a){return bU(b1("-",b0(a)),(a,b)=>{var c;return bU(bT(bV(["."],c=b0(b)))?bU(bV(["."],c),(a,b)=>bU(cb(b),(b,c)=>[`0${a}${b}`,c],()=>[]),()=>[]):bU(b4(c),(a,b)=>bU(bV(["."],b),(b,c)=>bU(cb(c),(c,d)=>[`${a}${b}${c}`,d],()=>[`${a}`,c]),()=>[`${a}`,b]),()=>[]),(b,c)=>[`${a}${b}`,c],()=>[])},()=>[])}function cd(a,b,c=""){var d;return bU(""===(d=b)?[]:[d.slice(0,1),d.slice(1)],(d,e)=>!function a(b,c){return s(b,(b,d)=>!!c.startsWith(b)||a(d,c),()=>!1)}(a,b)?cd(a,e,`${c}${d}`):[c,b],()=>[])}function ce(a,b){return bU(bV(a,b0(b)),(a,b)=>{var c;return c=`${a}${b}`,bU(bV([a],b0(c)),(b,c)=>bU(cd(["\n",a],c),(b,c)=>bU(bV([a],c),(a,c)=>[`${b}`,c],()=>[]),()=>[]),()=>[])},()=>[])}let cf=(a,b,c=()=>[])=>2===a.length?b(a):c(),cg=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a1(a[0],a[2],a[4]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("extends",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],a[2],a[2]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a1(a[0],ab(),a[2]),b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a1(a,ab(),ab()),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),ch=(a,b=[])=>cf(cf(cg(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>ch(c,[...b,a]),()=>[b,a]),ci=a=>cf(cf(b6("<",a),([a,b])=>cf(cf(cf(ch(b),([a,b])=>cf(cf(cf(cg(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cj=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cj(c,[...b,a]),()=>[b,a]),ck=a=>cf(cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),cl=a=>cf(b6("string",a),([a,b])=>[a3(),b]),cm=a=>cf(b6("number",a),([a,b])=>[aZ(),b]),cn=a=>cf(b6("integer",a),([a,b])=>[aQ(),b]),co=a=>cf(b6("symbol",a),([a,b])=>[a_(),b]),cp=a=>cf(cd(["${","`"],a),([a,b])=>[aT(a),b]),cq=a=>cf(cf(cf(cp(a),([a,b])=>cf(cf(cf(b6("${",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>cf(cq(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(cp(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>{var c;return[3===(c=a).length?[c[0],c[1],...c[2]]:[c[0]],b]}),cr=a=>cf(cf(b6("`",a),([a,b])=>cf(cq(b),([b,c])=>cf(b6("`",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),cs=(a,b=[])=>cf(cf(cf(b6("[",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(b6("[",a),([a,b])=>cf(b6("]",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,c])=>cs(c,[...b,a]),()=>[b,a]),ct=a=>cf(cf(cf(cf(cf(b6("keyof",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cf(cf(cf(b6("(",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cl(b),([a,b])=>[a,b],()=>cf(cm(b),([a,b])=>[a,b],()=>cf(cf(b6("boolean",b),([a,b])=>[aL(),b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",b),([a,b])=>[bH(),b]),([a,b])=>[a,b],()=>cf(cf(b6("null",b),([a,b])=>[aW(),b]),([a,b])=>[a,b],()=>cf(cn(b),([a,b])=>[a,b],()=>cf(cf(b6("bigint",b),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("unknown",b),([a,b])=>[ab(),b]),([a,b])=>[a,b],()=>cf(cf(b6("any",b),([a,b])=>[T(),b]),([a,b])=>[a,b],()=>cf(cf(b6("object",b),([a,b])=>[_({}),b]),([a,b])=>[a,b],()=>cf(cf(b6("never",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(co(b),([a,b])=>[a,b],()=>cf(cf(b6("void",b),([a,b])=>[bJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("this",b),([a,b])=>[bF(),b]),([a,b])=>[a,b],()=>cf(cf(b5(b),([a,b])=>[aT(BigInt(a)),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",b),([a,b])=>[a,b],()=>cf(b6("false",b),([a,b])=>[a,b],()=>[])),([a,b])=>[aT("true"===a),b]),([a,b])=>[a,b],()=>cf(cf(cc(b),([a,b])=>[aT(parseFloat(a)),b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],b),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>cf(cf(cr(b),([a,b])=>[c4(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6("else",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf(cf(b6("if",b),([a,b])=>cf(cy(b),([b,c])=>cf(b6("then",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?ak(a[1],a[3],a[5]):ak(a[1],a[3],ab()),b]),([a,b])=>[a,b],()=>cf(cE(b),([a,b])=>[a,b],()=>cf(cI(b),([a,b])=>[a,b],()=>cf(cO(b),([a,b])=>[a,b],()=>cf(cN(b),([a,b])=>[a,b],()=>cf(cP(b),([a,b])=>[a,b],()=>cf(cf(cf(b9(b),([a,b])=>cf(cf(cf(b6("<",b),([a,b])=>cf(cf(cf(cj(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6(">",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([b,c])=>[[a,b],c])),([a,b])=>{var c,d;return[(c=a[0],d=a[1],"Array"===c?I(d[0]):"Capitalize"===c?dS(d[0]):"ConstructorParameters"===c?d9(d[0]):"Evaluate"===c?function(a,b={}){return E("Evaluate",[a],b)}(d[0]):"Exclude"===c?ec(d[0],d[1]):"Extract"===c?ef(d[0],d[1]):"Index"===c?ej(d[0],d[1]):"InstanceType"===c?ey(d[0]):"Lowercase"===c?dU(d[0]):"NonNullable"===c?eI(d[0]):"Omit"===c?eL(d[0],d[1]):"Parameters"===c?eP(d[0]):"Partial"===c?eS(d[0]):"Pick"===c?eV(d[0],d[1]):"Readonly"===c?eY(d[0]):"KeyOf"===c?eB(d[0]):"Record"===c?bw(d[0],d[1]):"Required"===c?e0(d[0]):"ReturnType"===c?e3(d[0]):"Uncapitalize"===c?dW(d[0]):"Uppercase"===c?dY(d[0]):dO(P(c),d)),b]}),([a,b])=>[a,b],()=>cf(cQ(b),([a,b])=>[a,b],()=>[])))))))))))))))))))))))))))),([a,b])=>[j(a)&&3===a.length?a[1]:a,b]),([b,c])=>cf(cf(cs(c),([a,b])=>[a.reduce((a,b)=>3===b.length?[...a,[b[1]]]:[...a,[]],[]),b]),([c,d])=>cf(cf(cf(cf(b6("extends",d),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>cf(cy(d),([d,e])=>cf(b6(":",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[a,b],()=>cf([[],d],([a,b])=>[a,b],()=>[])),([a,b])=>[6===a.length?[a[1],a[3],a[5]]:[],b]),([d,e])=>cf(cf(cf(cf(b6("with",e),([a,b])=>cf(cT(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],e],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?a[1]:[],b]),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;var g=b?bO(eB(bN(c,d)),e):bO(bN(c,d),e);return j(f)&&0===f.length?g:e6(g,f)}(a),b]),cu=a=>cf(cf(cf(b6("&",a),([a,b])=>cf(ct(b),([b,c])=>cf(cu(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cv=a=>cf(cf(ct(a),([a,b])=>cf(cu(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cw=a=>cf(cf(cf(b6("|",a),([a,b])=>cf(cv(b),([b,c])=>cf(cw(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cx=a=>cf(cf(cv(a),([a,b])=>cf(cw(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a){let[b,c]=a;return bP(b,c)}(a),b]),cy=a=>cf(cf(cf(cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6("extends",c),([c,d])=>cf(cx(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b6("infer",a),([a,b])=>cf(b9(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>[])),([a,b])=>[4===a.length?ai(a[1],a[3]):2===a.length?ai(a[1],ab()):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("|",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cx(b),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("AddImmutable",[a],b)}(a[1]),b]),([a,b])=>[a,b],()=>cf(cx(a),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cz=a=>cf(cf(cf(cc(a),([a,b])=>[`${a}`,b]),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(ce(["'",'"'],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(b9(b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cf(cn(d),([a,b])=>[a,b],()=>cf(cm(d),([a,b])=>[a,b],()=>cf(cl(d),([a,b])=>[a,b],()=>cf(co(d),([a,b])=>[a,b],()=>[])))),([d,e])=>cf(b6("]",e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aR(a[3])?bt:a$(a[3])?bu:a0(a[3])||a4(a[3])?bv:bL(),b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cA=a=>cf(cf(cf(cf(cf(b6("readonly",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([a,b])=>cf(cz(b),([b,c])=>cf(cf(cf(cf(b6("?",c),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],c],([a,b])=>[a,b],()=>[])),([a,b])=>[a.length>0,b]),([c,d])=>cf(b6(":",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let[b,c,d,e,f]=a;return{[c]:b&&d?aD(X(f)):b&&!d?aD(f):!b&&d?X(f):f}}(a),b]),cB=a=>cf(cf(cf(b6(",",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(",",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6(";",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cC=(a,b=[])=>cf(cf(cA(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cC(c,[...b,a]),()=>[b,a]),cD=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cC(b),([a,b])=>cf(cf(cf(cA(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bQ(a[1]),b]),cE=a=>cf(cD(a),([a,b])=>[function(a){let[b,c]=a;return _(b,0===v(c).length?{}:{patternProperties:c})}(a),b]),cF=a=>cf(cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[a,b],()=>cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>[])))),([a,b])=>[5===a.length?aD(X(a[4])):3===a.length?a[2]:4===a.length?"readonly"===a[2]?aD(a[3]):X(a[3]):bL(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>cf(b6("?",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[aD(X(a[1])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("readonly",a),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[aD(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(cf(cy(a),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[X(a[0]),b]),([a,b])=>[a,b],()=>cf(cy(a),([a,b])=>[a,b],()=>[]))))),([a,b])=>[a,b]),cG=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cF(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cF(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cH=(a,b=[])=>cf(cf(cG(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cH(c,[...b,a]),()=>[b,a]),cI=a=>cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cH(b),([a,b])=>cf(cf(cf(cG(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[bc(a[1]),b]),cJ=a=>cf(cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(b6("readonly",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[aD(X(a[4])),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(b6("readonly",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[aD(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6("?",b),([b,c])=>cf(b6(":",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[X(a[3]),b]),([a,b])=>[a,b],()=>cf(cf(cf(b9(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[2],b]),([a,b])=>[a,b],()=>[])))),([a,b])=>[a,b]),cK=a=>cf(cf(cf(b6("...",a),([a,b])=>cf(cJ(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(cJ(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?bD(c[1]):1===c.length?c[0]:bL(),b]}),cL=(a,b=[])=>cf(cf(cK(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cL(c,[...b,a]),()=>[b,a]),cM=a=>cf(cf(cL(a),([a,b])=>cf(cf(cf(cK(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),cN=a=>cf(cf(b6("(",a),([a,b])=>cf(cM(b),([b,c])=>cf(b6(")",c),([c,d])=>cf(b6("=>",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[N(a[1],a[4]),b]),cO=a=>cf(cf(b6("new",a),([a,b])=>cf(b6("(",b),([b,c])=>cf(cM(c),([c,d])=>cf(b6(")",d),([d,e])=>cf(b6("=>",e),([e,f])=>cf(cy(f),([f,g])=>[[a,b,c,d,e,f],g])))))),([a,b])=>[L(a[2],a[5]),b]),cP=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cf(b6("+",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",b),([a,b])=>cf(b6("readonly",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("readonly",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([b,c])=>cf(b6("[",c),([c,d])=>cf(b9(d),([d,e])=>cf(b6("in",e),([e,f])=>cf(cy(f),([f,g])=>cf(cf(cf(cf(b6("as",g),([a,b])=>cf(cy(b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],g],([a,b])=>[a,b],()=>[])),([a,b])=>[2===a.length?[a[1]]:[],b]),([g,h])=>cf(b6("]",h),([h,i])=>cf(cf(cf(cf(b6("+",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("-",i),([a,b])=>cf(b6("?",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6("?",i),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],i],([a,b])=>[a,b],()=>[])))),([a,b])=>[2===a.length&&"-"===a[0]?"remove":2===a.length&&"+"===a[0]||1===a.length?"add":"none",b]),([i,j])=>cf(b6(":",j),([j,k])=>cf(cy(k),([k,l])=>cf(ck(l),([l,m])=>cf(b6("}",m),([m,n])=>[[a,b,c,d,e,f,g,h,i,j,k,l,m],n]))))))))))))),([a,b])=>{var c;return[j((c=a)[6])&&1===c[6].length?eE(aN(c[3]),c[5],c[6][0],bR(c[1],bS(c[8],c[10]))):eE(aN(c[3]),c[5],P(c[3]),bR(c[1],bS(c[8],c[10]))),b]}),cQ=a=>cf(b9(a),([a,b])=>[P(a),b]),cR=a=>cf(cf(cz(a),([a,b])=>cf(b6(":",b),([b,c])=>cf(cV(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[{[a[0]]:a[2]},b]),cS=(a,b=[])=>cf(cf(cR(a),([a,b])=>cf(cB(b),([b,c])=>[[a,b],c])),([a,c])=>cS(c,[...b,a]),()=>[b,a]),cT=a=>cf(cf(b6("{",a),([a,b])=>cf(cf(cf(cS(b),([a,b])=>cf(cf(cf(cR(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("}",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1].reduce((a,b)=>i(a,b),{}),b]),cU=(a,b=[])=>cf(cf(cV(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>cU(c,[...b,a]),()=>[b,a]),cV=a=>cf(cf(cf(b5(a),([a,b])=>[BigInt(a),b]),([a,b])=>[a,b],()=>cf(cf(cc(a),([a,b])=>[parseFloat(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("true",a),([a,b])=>[a,b],()=>cf(b6("false",a),([a,b])=>[a,b],()=>[])),([a,b])=>["true"===a,b]),([a,b])=>[a,b],()=>cf(cf(ce(['"',"'"],a),([a,b])=>[a,b]),([a,b])=>[a,b],()=>cf(cf(b6("null",a),([a,b])=>[null,b]),([a,b])=>[a,b],()=>cf(cf(b6("undefined",a),([a,b])=>[void 0,b]),([a,b])=>[a,b],()=>cf(cT(a),([a,b])=>[a,b],()=>cf(cf(cf(b6("[",a),([a,b])=>cf(cf(cf(cU(b),([a,b])=>cf(cf(cf(cV(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>cf(b6("]",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),([a,b])=>[a,b],()=>[])))))))),([a,b])=>[a,b]),cW=a=>cf(cf(cf(cX(a),([a,b])=>cf(b6("|",b),([b,c])=>cf(cW(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a,b],()=>cf(cf(cX(a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[]))),([a,b])=>[3===a.length?[...a[0],...a[2]]:1===a.length?[...a[0]]:[],b]),cX=a=>{let b;return cf(cf(cf(cf(cf(b6("-?(?:0|[1-9][0-9]*)n",b=a),([a,b])=>[aJ(),b]),([a,b])=>[a,b],()=>cf(cf(b6(".*",b),([a,b])=>[a3(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",b),([a,b])=>[aZ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("-?(?:0|[1-9][0-9]*)",b),([a,b])=>[aQ(),b]),([a,b])=>[a,b],()=>cf(cf(b6("(?!)",b),([a,b])=>[V(),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("(",b),([a,b])=>cf(cY(b),([b,c])=>cf(b6(")",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a5(a[1]),b]),([a,b])=>[a,b],()=>cf(cf(bU(cd(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],b),(a,b)=>""===a?[]:[a,b],()=>[]),([a,b])=>[aT(a),b]),([a,b])=>[a,b],()=>[]))))))),([a,b])=>[a,b]),([a,b])=>cf(cY(b),([b,c])=>[[a,b],c])),([a,b])=>[[a[0],...a[1]],b])},cY=a=>cf(cf(cW(a),([a,b])=>[a,b],()=>cf(cX(a),([a,b])=>[a,b],()=>[])),([a,b])=>[a,b]),cZ=a=>cf(cf(b6("^",a),([a,b])=>cf(cY(b),([b,c])=>cf(b6("$",c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]),c$=(a,b=[])=>cf(cf(cy(a),([a,b])=>cf(b6(",",b),([b,c])=>[[a,b],c])),([a,c])=>c$(c,[...b,a]),()=>[b,a]),c_=a=>cf(cf(cf(b6("extends",a),([a,b])=>cf(cf(cf(c$(b),([a,b])=>cf(cf(cf(cy(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bM(a),b]),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>{var c;return[2===(c=a).length?c[1]:[],b]}),c0=(a,b=[])=>cf(cf(c1(a),([a,b])=>cf(cf(cf(cf(b6(";",b),([a,b])=>cf(b6("\n",b),([b,c])=>[[a,b],c])),([a,b])=>[a,b],()=>cf(cf(b6(";",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf(cf(b6("\n",b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]),([b,c])=>[[a,b],c])),([a,c])=>c0(c,[...b,a]),()=>[b,a]),c1=a=>cf(cf(cf(cf(cf(b6("export",a),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],a],([a,b])=>[a,b],()=>[])),([a,b])=>[null,b]),([a,b])=>cf(cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(c_(d),([d,e])=>cf(cD(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[function(a){let b=a[2],c=a[3],[d,e]=a[4],f=0===v(e).length?{}:{patternProperties:e};return{[a[1]]:R(b,du(c,d,f))}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("interface",b),([a,b])=>cf(b9(b),([b,c])=>cf(c_(c),([c,d])=>cf(cD(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[function(a){let b=a[2],[c,d]=a[3],e=0===v(d).length?{}:{patternProperties:d};return{[a[1]]:du(b,c,e)}}(a),b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(ci(c),([c,d])=>cf(b6("=",d),([d,e])=>cf(cy(e),([e,f])=>[[a,b,c,d,e],f]))))),([a,b])=>[{[a[1]]:R(a[2],a[4])},b]),([a,b])=>[a,b],()=>cf(cf(cf(b6("type",b),([a,b])=>cf(b9(b),([b,c])=>cf(b6("=",c),([c,d])=>cf(cy(d),([d,e])=>[[a,b,c,d],e])))),([a,b])=>[{[a[1]]:a[3]},b]),([a,b])=>[a,b],()=>[])))),([b,c])=>cf(ck(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[a[1],b]);function c2(a,b){return s(a,(a,c)=>(function a(b,c,d){var e,f,g,h,i;return ao(b)?(e=b.enum,a(bl(e),c,d)):aR(b)?c2(c,`${d}${aP}`):aV(b)?(f=b.const,c2(c,`${d}${f}`)):aK(b)?c2(c,`${d}-?(?:0|[1-9][0-9]*)n`):aM(b)?a(a5([aT("false"),aT("true")]),c,d):a$(b)?c2(c,`${d}${aY}`):a4(b)?c2(c,`${d}.*`):c6(b)?(g=b.pattern,c2(c,`${d}${g.slice(1,g.length-1)}`)):q(i=b)&&u(i,"action")&&"TemplateLiteral"===i.action?(h=b.parameters[0],a(c3(h,{}),c,d)):a6(b)?function b(c,d,e,f=[]){return s(c,(c,g)=>b(g,d,e,[...f,a(c,[],"")]),()=>c2(d,`${e}(${f.join("|")})`))}(b.anyOf,c,d):"(?!)"})(a,c,b),()=>b)}function c3(a,b){let c;return fa(a)?B(a9((c=c2(a,""),`^${c}$`)),{},b):c4(a,b)}function c4(a,b={}){return E("TemplateLiteral",[a],b)}function c5(a,b={}){var c;let d;return B(r(a)?c3((c=a,2===(d=cr(`\`${c}\``)).length?d[0]:au()),{}):c3(a,{}),{},b)}function c6(a){return C(a,"TemplateLiteral")}function c7(a){return z({"~kind":"ExtendsUnion"},{inferred:a})}function c8(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsUnion"===a["~kind"]&&q(a.inferred)}function c9(a){return z({"~kind":"ExtendsTrue"},{inferred:a})}function da(a){return q(a)&&u(a,"~kind")&&u(a,"inferred")&&"ExtendsTrue"===a["~kind"]&&q(a.inferred)}function db(){return z({"~kind":"ExtendsFalse"},{})}function dc(a){return q(a)&&u(a,"~kind")&&"ExtendsFalse"===a["~kind"]}function dd(a){return c8(a)||da(a)}function de(a,b,c){return dd(a)?b(a.inferred):c()}function df(a,b,c){var d,e,f,g;return U(c)?c9(a):al(c)?(d=c.if,e=c.then,f=c.else,de(ds(a,b,d),a=>de(ds(a,b,e),a=>c9(a),()=>db()),()=>de(ds(a,b,f),a=>c9(a),()=>db()))):ao(c)?ds(a,b,bl(c.enum)):aj(c)?(g=c.name,de(ds(a,b,c.extends),c=>c9(i(i(a,c),{[g]:b})),()=>db())):aq(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),b=>a(b,c,e),()=>db()),()=>c9(b))}(a,b,c.allOf):c6(c)?ds(a,b,bn(c.pattern)):a6(c)?function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c.anyOf):ac(c)?c9(a):db()}function dg(a,b,c){return s(b,(b,d)=>s(c,(c,e)=>{let f,g,h,i;return f=aj(c)?b:c,g=aj(c)?c:b,h=$(b),i=$(c),!h&&i?db():de(ds(a,f,g),a=>dg(a,d,e),()=>db())},()=>$(b)?c9(a):db()),()=>c9(a))}function dh(a,b,c){return bK(c)?c9(a):ds(a,b,c)}function di(a,b,c){return b===c?c9(a):db()}function dj(a,b){return z({"~kind":"Inferrable"},{name:a,type:b},{})}function dk(a){return q(a)&&u(a,"~kind")&&u(a,"name")&&u(a,"type")&&"Inferrable"===a["~kind"]&&r(a.name)&&q(a.type)}function dl(a){return bE(a)?aj(a.items)?J(a.items.extends)?dj(a.items.name,a.items.extends.items):ac(a.items.extends)?dj(a.items.name,a.items.extends):void 0:au():void 0}function dm(a){return aj(a)?dj(a.name,a.extends):void 0}function dn(a,b,c=[]){return s(a,(a,d)=>de(ds({},a,b),()=>dn(d,b,[...c,a]),()=>void 0),()=>c)}function dp(a,b,c,d){let e=dn(c,d);return j(e)?c9(i(a,{[b]:a5(e)})):db()}function dq(a,b){return b?[...a].reverse():a}function dr(a,b,c){return s(b,(b,d)=>de(function a(b,c,d){return s(d,(d,e)=>de(ds(b,c,d),a=>c9(a),()=>a(b,c,e)),()=>db())}(a,b,c),a=>dr(a,d,c),()=>db()),()=>c9(a))}function ds(a,b,c){var d,e,f,g,h,m,n,p,t,x,y,z,A,B,C,D,E,F,G,H,I,K,L,N;let P,Q,R,S,T,V,X,Y,Z,ab;return U(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):c7(a):J(b)?(d=b.items,J(c)?(P=aC(b),Q=aC(c),P&&Q||!P&&Q||!P||Q)?ds(a,d,c.items):db():df(a,b,c)):aK(b)?aK(c)?c9(a):df(a,b,c):aM(b)?aM(c)?c9(a):df(a,b,c):M(b)?(e=b.parameters,f=b.instanceType,U(c)||ac(c)?c9(a):M(c)?de(dg(a,e,c.parameters),a=>dh(a,f,c.instanceType),()=>db()):db()):al(b)?(g=b.if,h=b.then,m=b.else,de(ds(a,g,c),()=>ds(a,h,c),()=>ds(a,m,c))):ao(b)?(n=b.enum,ds(a,bl(n),c)):O(b)?(p=b.parameters,t=b.returnType,U(c)||ac(c)?c9(a):O(c)?de(dg(a,p,c.parameters),a=>dh(a,t,c.returnType),()=>db()):db()):aR(b)?aR(c)||a$(c)?c9(a):df(a,b,c):aq(b)?(x=b.allOf,ds(a,bm(x),c)):aV(b)?k(b.const)?(y=b.const,aV(c)?di(a,y,c.const):aK(c)?c9(a):df(a,aT(y),c)):l(b.const)?(z=b.const,aV(c)?di(a,z,c.const):aM(c)?c9(a):df(a,aT(z),c)):o(b.const)?(A=b.const,aV(c)?di(a,A,c.const):a$(c)?c9(a):df(a,aT(A),c)):r(b.const)?(B=b.const,aV(c)?di(a,B,c.const):a4(c)?c9(a):df(a,aT(B),c)):au():W(b)?aj(c)?df(a,b,c):c9(a):aX(b)?aX(c)?c9(a):df(a,b,c):a$(b)?a$(c)?c9(a):df(a,b,c):aa(b)?(C=b.properties,bC(c)?(bz(c),D=bB(c),R=v(C),function a(b,c,d,e){return s(c,(c,f)=>de(ds({},b[c],d),c=>a(b,f,d,v(c).reduce((a,b)=>({...a,[b]:u(e,b)?a6(a[b])?a5([...a[b].anyOf,c[b]]):a5([e[b],c[b]]):c[b]}),e)),()=>db()),()=>c9(e))}(C,R,D,a)):aa(c)?(S=function(a,b,c){var d;let e={};for(let d of v(c))e[d]=d in b?function(a,b,c){return aj(c)&&W(c.extends)?db():de(ds(a,b,c),a=>$(b)?$(c)?c9(a):db():c9(a),()=>db())}({},b[d],c[d]):$(c[d])?aj(c[d])?c9(i(a,{[c[d].name]:c[d].extends})):c9(a):db();let f=w(e).every(a=>dd(a)),g=f?(d=v(e),d.reduce((a,b)=>b in e&&dd(e[b])?{...a,...e[b].inferred}:au(),{})):{};return f?c9(g):db()}(a,C,c.properties),dd(S)?c9(i(a,S.inferred)):db()):df(a,_(C),c)):bC(b)?(E=bz(b),F=bB(b),bC(c)?(by(E),by(bz(c)),ds(a,F,bB(c))):aa(c)?(L=a,0===v(c.properties).length?c9(L):db()):U(c)||ac(c)?c9(a):db()):a4(b)?a4(c)?c9(a):df(a,b,c):a0(b)?a0(c)?c9(a):df(a,b,c):c6(b)?(G=b.pattern,ds(a,bn(G),c)):bd(b)?(H=b.items,T=fc(a,e9([],[]),H),bd(c)?(I=c.items,ab=q(Z=(N=V=fc(a,e9([],[]),I)).length>0?N[0]:void 0)?dl(Z):void 0,function a(b,c,d,e){return s(e,(e,f)=>{var g;let h,k;return dk(h=dl(e))?(g=h.name,j(k=dn(dq(d,c),h.type))?c9(i(b,{[g]:bc(k)})):db()):s(d,(d,g)=>de(ds(b,d,e),b=>a(b,c,g,f),()=>db()),()=>db())},()=>0===d.length?c9(b):db())}(a,X=q(ab),dq(T,X),dq(V,X))):J(c)?function a(b,c,d){let e=dm(d);return dk(e)?dp(b,e.name,c,e.type):s(c,(c,e)=>de(ds(b,c,d),b=>a(b,e,d),()=>db()),()=>c9(b))}(a,T,c.items):df(a,bc(T),c)):bI(b)?bK(c)||bI(c)?c9(a):df(a,b,c):a6(b)?(K=b.anyOf,dk(Y=dm(c))?dp(a,Y.name,K,Y.type):a6(c)?dr(a,K,c.anyOf):dr(a,K,[c])):ac(b)?aj(c)?df(a,b,c):U(c)||ac(c)?c9(a):db():bK(b)?bK(c)?c9(a):df(a,b,c):db()}function dt(a,b,c){return fa(a)?B(bm([...a,_(b)]),{},c):du(a,b,c)}function du(a,b,c={}){return E("Interface",[a,b],c)}function dv(a){return q(a)&&u(a,"action")&&"Interface"===a.action}function dw(a,b,c={}){return dt(a,b,c)}function dx(a,b,c){return s(c,(c,d)=>!!dy(a,b,c)||dx(a,b,d),()=>!1)}function dy(a,b,c){var d;return Q(c)?(d=c.$ref,!!a.includes(d)||dy([...a,d],b,b[d])):J(c)?dy(a,b,c.items):M(c)?dx(a,b,[...c.parameters,c.instanceType]):O(c)?dx(a,b,[...c.parameters,c.returnType]):dv(c)?dx(a,b,w(c.parameters[1])):aq(c)?dx(a,b,c.allOf):aa(c)?dx(a,b,w(c.properties)):a6(c)?dx(a,b,c.anyOf):bd(c)?dx(a,b,c.items):!!bC(c)&&dy(a,b,bB(c))}function dz(a,b,c){return b.reduce((b,c)=>dA(a,c,b),c)}function dA(a,b,c){var d,e,f,g,h,i,j;return Q(b)?(d=b.$ref,c.includes(d)?c:d in a?dA(a,a[d],[...c,d]):au()):J(b)?dA(a,b.items,c):M(b)?dz(a,[...b.parameters,b.instanceType],c):O(b)?dz(a,[...b.parameters,b.returnType],c):dv(b)?(e=a,f=b.parameters[1],g=c,dz(e,w(f),g)):aq(b)?dz(a,b.allOf,c):aa(b)?(h=a,i=b.properties,j=c,dz(h,w(i),j)):a6(b)?dz(a,b.anyOf,c):bd(b)?dz(a,b.items,c):bC(b)?dA(a,bB(b),c):c}function dB(a){return a.reduce((a,b)=>[...a,dC(b)],[])}function dC(a){var b;return Q(a)?(a.$ref,T()):J(a)?I(dC(a.items),K(a)):M(a)?L(dB(a.parameters),dC(a.instanceType)):O(a)?N(dB(a.parameters),dC(a.returnType)):aq(a)?ap(dB(a.allOf)):aa(a)?_(v(b=a.properties).reduce((a,c)=>({...a,[c]:dC(b[c])}),{})):bC(a)?bx(bA(a),dC(bB(a))):a6(a)?a5(dB(a.anyOf)):bd(a)?bc(dB(a.items)):a}function dD(a,b){return function a(b,c){return c in b?Q(b[c])?a(b,b[c].$ref):b[c]:V()}(a,b)}function dE(a){var b,c;return ae(a)?(b=a.$defs,(c=a.$ref)in b?dC(b[c]):ab()):ag(a)?ab():a}function dF(a,b,c){return ds(a,dE(b),dE(c))}let dG="equal",dH="left-inside",dI="right-inside";function dJ(a,b){let c=[ac(a)?db():dF({},a,b),ac(a)?c9({}):dF({},b,a)];return dd(c[0])&&dd(c[1])?dG:dd(c[0])&&dc(c[1])?dH:dc(c[0])&&dd(c[1])?dI:"disjoint"}function dK(a){return br(a.reduce((a,b)=>{var c;let d;return aa(b)?[...a,b]:W(b)?a:U(d=bp(b))?[d]:(c=d,!1!==a.some(a=>{let b=dJ(c,a);return b===dH||b===dG}))?a:[...a.filter(a=>dJ(d,a)!==dI),d]},[]))}function dL(a,b){return b.reduce((b,c)=>[...b,...a.reduce((a,b)=>[...a,[...b,c]],[])],[])}function dM(a,b,c,d,e){let f=fe(a,b,e);return!function(a,b,c){if(!(aj(b)||dQ(b)||dd(dF({},b,c))))throw Error(`Argument for parameter ${a} does not satisfy constraint`,{cause:{parameter:a,expect:c,actual:b}})}(c,f,d),i(a,{[c]:f})}function dN(a,b,c,d){var e;let f=fd(a,b,d),g=function a(b,c,d,e){var f;return S(d)?[c,R(d.parameters,d.expression)]:Q(d)?(f=d.$ref,f in b?a(b,f,b[f],e):["(not-resolvable)",V()]):["(not-generic)",V()]}(a,"(anonymous)",c,d),h=g[0],i=g[1];return S(i)?((e=b).callstack.length>0?e.callstack[e.callstack.length-1]:"")===h?dO(P(h),f):function(a,b,c,d,e,f){let g=function(a,b,c){let d=function a(b,c=[]){return F(b)&&"Conditional"===b.action?Q(b.parameters[0])?a(b.parameters[2],a(b.parameters[3],[...c,b.parameters[0].$ref])):a(b.parameters[2],a(b.parameters[3],c)):F(b)&&"Mapped"===b.action&&F(b.parameters[1])&&"KeyOf"===b.parameters[1].action&&Q(b.parameters[1].parameters[0])?[...c,b.parameters[1].parameters[0].$ref]:c}(c),e=function a(b,c,d=[]){return s(b,(b,e)=>s(c,(c,f)=>a(e,f,[...d,[c,b]]),()=>d),()=>d)}(b,a.reduce((a,b)=>[...a,d.includes(b.name)],[]));return F(c)&&"Conditional"===c.action||F(c)&&"Mapped"===c.action?e.reduce((a,b)=>{var c;return!0===b[0]?dL(a,a6(c=b[1])?[...c.anyOf]:[c]):dL(a,[b[1]])},[[]]):[b]}(d,f,e),h=g.reduce((f,g)=>{var h,i,j,k,l;let m,n;return[...f,(h=a,i=b,j=c,k=d,l=e,m=function a(b,c,d,e){return s(d,(d,f)=>{let g,h;return g=fe(b,c,d.extends),h=fe(b,c,d.equals),s(e,(e,h)=>a(dM(b,c,d.name,g,e),c,f,h),()=>a(dM(b,c,d.name,g,h),c,f,[]))},()=>b)}(h,i,k,g),n=fe(m,e9([...i.callstack,j.$ref],i.visited),l),fe(m,e9([],[]),n))]},[]);return 1===h.length?h[0]:bo(h)}(a,b,P(h),i.parameters,i.expression,f):dO(c,f)}function dO(a,b){return z({"~kind":"Call"},{type:"call",target:a,arguments:b},{})}function dP(a,b){return dN({},e9([],[]),a,b)}function dQ(a){return C(a,"Call")}function dR(a,b){var c,d;return aV(b)?(c=a,r(d=b.const)?aT(c(d)):aT(d)):c6(b)?dR(a,bn(b.pattern)):a6(b)?a5(b.anyOf.map(b=>dR(a,b))):b}function dS(a,b={}){return E("Capitalize",[a],b)}function dT(a,b={}){return d2(a,b)}function dU(a,b={}){return E("Lowercase",[a],b)}function dV(a,b={}){return d3(a,b)}function dW(a,b={}){return E("Uncapitalize",[a],b)}function dX(a,b={}){return d4(a,b)}function dY(a,b={}){return E("Uppercase",[a],b)}function dZ(a,b={}){return d5(a,b)}let d$=a=>a[0].toUpperCase()+a.slice(1),d_=a=>a.toLowerCase(),d0=a=>a[0].toLowerCase()+a.slice(1),d1=a=>a.toUpperCase();function d2(a,b){return fa([a])?B(dR(d$,a),{},b):dS(a,b)}function d3(a,b){return fa([a])?B(dR(d_,a),{},b):dU(a,b)}function d4(a,b){return fa([a])?B(dR(d0,a),{},b):dW(a,b)}function d5(a,b){return fa([a])?B(dR(d1,a),{},b):dY(a,b)}function d6(a,b,c,d,e={}){return E("Conditional",[a,b,c,d],e)}function d7(a,b,c,d,e={}){return d8({},e9([],[]),a,b,c,d,e)}function d8(a,b,c,d,e,f,g){let h;return fa([c,d])?B(c8(h=dF(a,c,d))?a5([fe(h.inferred,b,e),fe(a,b,f)]):da(h)?fe(h.inferred,b,e):fe(a,b,f),{},g):d6(c,d,e,f,g)}function d9(a,b={}){return E("ConstructorParameters",[a],b)}function ea(a,b={}){return eb(a,b)}function eb(a,b){let c;return fa([a])?B((c=M(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):d9(a,b)}function ec(a,b,c={}){return E("Exclude",[a,b],c)}function ed(a,b,c={}){return ee(a,b,c)}function ee(a,b,c){return fa([a,b])?B(bj(a,b),{},c):ec(a,b,c)}function ef(a,b,c={}){return E("Extract",[a,b],c)}function eg(a,b,c={}){return eh(a,b,c)}function eh(a,b,c){var d;let e;return fa([a,b])?B(bo((d=a6(e=bp(a))?e.anyOf:[e],d.reduce((a,c)=>[...a,...dd(dF({},c,b))?[c]:[]],[]))),{},c):ef(a,b,c)}function ei(a){return a5(a.reduce((a,b)=>aU(b)?[...a,aT(b)]:a,[]))}function ej(a,b,c={}){return E("Index",[a,b],c)}function ek(a,b,c={}){return ex(a,j(b)?ei(b):b,c)}function el(a){var b;return ae(a)?el(dD(a.$defs,a.$ref)):al(a)?(b=a.if,el(bk(b,a.then,a.else))):aq(a)?a.allOf.reduce((a,b)=>{var c;let d,e,f,g,h,j,k;return c=el(b),d=v(a).filter(a=>!u(c,a)),e=v(c).filter(b=>!u(a,b)),f=v(a).filter(a=>u(c,a)),g=d.reduce((b,c)=>({...b,[c]:a[c]}),{}),h=e.reduce((a,b)=>({...a,[b]:c[b]}),{}),j=f.reduce((b,d)=>({...b,[d]:bm([a[d],c[d]])}),{}),k=i(g,h),i(k,j)},{}):a6(a)?s(a.anyOf,(a,b)=>(function a(b,c){return s(b,(b,d)=>{var e;return a(d,(e=el(b),v(c).filter(a=>a in e).reduce((a,b)=>({...a,[b]:bo([c[b],e[b]])}),{})))},()=>c)})(b,el(a)),()=>au()):bd(a)?el(_(bh(bc(a.items).items))):aa(a)?a.properties:{}}let em=RegExp("^(?:0|[1-9][0-9]*)$");function en(a){let b=`${a}`;return em.test(b)?parseInt(b):a}function eo(a){return a.map(a=>ep(a))}function ep(a){return aq(a)?ap(eo(a.allOf)):a6(a)?a5(eo(a.anyOf)):aV(a)?aT(en(a.const)):a}function eq(a){var b,c;return ae(a)?eq(dD(a.$defs,a.$ref)):al(a)?(b=a.if,eq(bk(b,a.then,a.else))):ao(a)?eq(bl(a.enum)):aq(a)?eq(bm(a.allOf)):aV(a)?(c=a.const,[`${c}`]):c6(a)?eq(bn(a.pattern)):a6(a)?a.anyOf.reduce((a,b)=>[...a,...eq(b)],[]):[]}function er(a,b){return b.map(b=>es(a,b))}function es(a,b){return J(b)?I(es(a,b.items)):M(b)?L(er(a,b.parameters),es(a,b.instanceType)):O(b)?N(er(a,b.parameters),es(a,b.returnType)):bd(b)?bc(er(a,b.items)):a6(b)?a5(er(a,b.anyOf)):aq(b)?ap(er(a,b.allOf)):bG(b)?_(a):b}function et(a,b){return b.reduce((b,c)=>{var d,e;let f;return[...b,(d=a,f=(e=c)in d?d[e]:V(),es(d,f))]},[])}let eu=new RegExp(bt);function ev(a){return a.map(a=>ew(a))}function ew(a){return aq(a)?ap(ev(a.allOf)):a6(a)?a5(ev(a.anyOf)):aV(a)?aT(en(a.const)):a}function ex(a,b,c){var d,e,f,g,h,i;let j;return fa([a,b])?B((d=ae(f=a)||al(f)||aq(f)||a6(f)?_(el(f)):f,J(d)?(g=d.items,dd(dF({},ep(h=b),aZ()))?g:aV(h)&&"length"===h.const?aZ():V()):aa(d)?(e=d.properties,a$(b)?(j=v(i=e).filter(a=>eu.test(a)),bo(et(i,j))):bo(et(e,eq(b)))):bd(d)?function(a,b){let c;return aV(b)&&"length"===b.const?aT(a.length):a$(b)||aR(b)?bq(a):bq((c=ew(b),a.reduceRight((a,b,d)=>dd(dF({},aT(d),c))?[b,...a]:a,[])))}(d.items,b):V()),{},c):ej(a,b,c)}function ey(a,b={}){return E("InstanceType",[a],b)}function ez(a,b={}){return eA(a,b)}function eA(a,b){return fa([a])?B(M(a)?a.instanceType:V(),{},b):ey(a,b)}function eB(a,b={}){return E("KeyOf",[a],b)}function eC(a,b={}){return eD(a,b)}function eD(a,b){var c,d;return fa([a])?B(U(d=ae(c=a)||al(c)||aq(c)||a6(c)?_(el(c)):c)?a5([aZ(),a3(),a_()]):J(d)?(d.items,aZ()):aa(d)?bq(v(d.properties).reduce((a,b)=>aU(b)?[...a,aT(en(b))]:au(),[])):bC(d)?bA(d):bd(d)?bq(d.items.map((a,b)=>aT(b))):V(),{},b):eB(a,b)}function eE(a,b,c,d,e={}){return E("Mapped",[a,b,c,d],e)}function eF(a,b,c,d,e={}){return eG({},e9([],[]),a,b,c,d,e)}function eG(a,b,c,d,e,f,g){return fa([d])?B(function(a,b,c,d,e,f){let g=function a(b){var c;return ao(b)?a(bl(b.enum)):aV(b)?o(c=b.const)?[aT(`${c}`)]:[aT(c)]:c6(b)?a(bn(b.pattern)):a6(b)?b.anyOf.reduce((b,c)=>[...b,...a(c)],[]):[b]}(d);return bm(g.reduce((d,g)=>{var h;let j,k,l;return[...d,(k=c6(h=fe(j=i(a,{[c.name]:g}),b,e))?bn(h.pattern):h,l=fe(j,b,f),aV(k)&&o(k.const)||aV(k)&&r(k.const)?{[k.const]:l}:{})]},[]).reduce((a,b)=>[...a,_(b)],[]))}(a,b,c,d,e,f),{},g):eE(c,d,e,f,g)}function eH(a,b,c,d){let e,f,g,h,j;return e=function(a){let b=v(a);return b.reduce((b,c)=>dy([c],a,a[c])?[...b,c]:b,[])}(c),f=i(a,c),g=v(c).filter(a=>e.includes(a)).reduce((a,b)=>({...a,[b]:function(a,b,c){let d=dA(a,c,[b]);return ad(v(a).filter(a=>d.includes(a)).reduce((b,c)=>{var d,e;let f=a[c],g=dv(f)?(d=f.parameters[0],e=f.parameters[1],bm([...fd(a,e9([],[]),d),_(fb({},e9([],[]),e))])):f;return{...b,[c]:g}},{}),b)}(f,b,c[b])}),{}),h=i(a,c),j=v(c).filter(a=>!e.includes(a)).reduce((a,b)=>({...a,[b]:fe(h,e9([],[]),c[b])}),{}),B({...g,...j},{},d)}function eI(a,b={}){return E("NonNullable",[a],b)}function eJ(a,b={}){return eK(a,b)}function eK(a,b){return fa([a])?B(ee(a,a5([aW(),bH()]),{}),{},b):eI(a,b)}function eL(a,b,c={}){return E("Omit",[a,b],c)}function eM(a,b,c={}){return eO(a,j(b)?ei(b):b,c)}function eN(a){let b=_(el(a));return aa(b)?b.properties:au()}function eO(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?a:{...a,[b]:c[b]},{}))}(a,b),{},c):eL(a,b,c)}function eP(a,b={}){return E("Parameters",[a],b)}function eQ(a,b={}){return eR(a,b)}function eR(a,b){let c;return fa([a])?B((c=O(a)?a.parameters:[],bc(fc({},e9([],[]),c))),{},b):eP(a,b)}function eS(a,b={}){return E("Partial",[a],b)}function eT(a,b={}){return eU(a,b)}function eU(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:Y(f[b])}),{})):_({})}(a),{},b):eS(a,b)}function eV(a,b,c={}){return E("Pick",[a,b],c)}function eW(a,b,c={}){return eX(a,j(b)?ei(b):b,c)}function eX(a,b,c){return fa([a,b])?B(function(a,b){let c=eN(a),d=eq(b);return _(v(c).reduce((a,b)=>d.includes(b)?i(a,{[b]:c[b]}):a,{}))}(a,b),{},c):eV(a,b,c)}function eY(a,b={}){return E("ReadonlyObject",[a],b)}function eZ(a,b={}){return e_(a,b)}let e$=eZ;function e_(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return J(b)?fh(I(b.items)):ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:aE(f[b])}),{})):bd(b)?fh(bc(b.items)):a6(b)?a5(b.anyOf.map(b=>a(b))):b}(a),{},b):eY(a)}function e0(a,b={}){return E("Required",[a],b)}function e1(a,b={}){return e2(a,b)}function e2(a,b){return fa([a])?B(function a(b){var c,d,e,f;let g;return ae(b)?(g=a(dD(c=b.$defs,d=b.$ref)),ad(i(c,{[d]:g}),d)):al(b)?(e=b.if,a(bk(e,b.then,b.else))):aq(b)?a(bm(b.allOf)):a6(b)?a5(b.anyOf.map(b=>a(b))):aa(b)?_(v(f=b.properties).reduce((a,b)=>({...a,[b]:bg(f[b])}),{})):_({})}(a),{},b):e0(a,b)}function e3(a,b={}){return E("ReturnType",[a],b)}function e4(a,b={}){return e5(a,b)}function e5(a,b){return fa([a])?B(O(a)?a.returnType:V(),{},b):e3(a,b)}function e6(a,b){return E("With",[a,b],{})}function e7(a,b){return e8(a,b)}function e8(a,b){return fa([a])?B(a,{},b):e6(a,b)}function e9(a,b){return{callstack:a,visited:b}}function fa(a){return s(a,(a,b)=>!Q(a)&&fa(b),()=>!0)}function fb(a,b,c){return v(c).reduce((d,e)=>({...d,[e]:fe(a,b,c[e])}),{})}function fc(a,b,c){return function a(b){return b.reduce((b,c)=>[...b,...bE(c)?bd(c.items)?a(c.items.items):aj(c.items)||Q(c.items)?[c]:[V()]:[c]],[])}(fd(a,b,c))}function fd(a,b,c){return c.map(c=>fe(a,b,c))}function fe(a,b,c){return F(c)?function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,C,D,F,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad;let ae,af,ag;return"AddImmutable"===c?(aa=a,ab=b,ac=d[0],ad=e,fg(fe(aa,ab,ac),ad)):"RemoveImmutable"===c?(f=d[0],g=fe(a,b,f),B(A(g,["~immutable"]),{},e)):"AddReadonly"===c?(h=d[0],G(fe(a,b,h),e)):"RemoveReadonly"===c?(i=d[0],be(fe(a,b,i),e)):"AddOptional"===c?(j=d[0],H(fe(a,b,j),e)):"RemoveOptional"===c?(k=d[0],bf(fe(a,b,k),e)):"Capitalize"===c?(l=d[0],d2(fe(a,b,l),e)):"Conditional"===c?(m=d[0],n=d[1],o=d[2],p=d[3],ae=fe(a,b,m),af=fe(a,b,n),d8(a,b,ae,af,o,p,e)):"ConstructorParameters"===c?(q=d[0],eb(fe(a,b,q),e)):"Evaluate"===c?(r=d[0],s=fe(a,b,r),B(bp(s),{},e)):"Exclude"===c?(t=d[0],u=d[1],ee(fe(a,b,t),fe(a,b,u),e)):"Extract"===c?(v=d[0],w=d[1],eh(fe(a,b,v),fe(a,b,w),e)):"Index"===c?(x=d[0],y=d[1],ex(fe(a,b,x),fe(a,b,y),e)):"InstanceType"===c?function(a,b,c,d={}){return eA(fe(a,b,c),d)}(a,b,d[0],e):"Interface"===c?(z=d[0],C=d[1],dt(fd(a,b,z),fb(a,b,C),e)):"KeyOf"===c?(D=d[0],eD(fe(a,b,D),e)):"Lowercase"===c?(F=d[0],d3(fe(a,b,F),e)):"Mapped"===c?(I=d[0],J=d[1],K=d[2],L=d[3],ag=fe(a,b,J),eG(a,b,I,ag,K,L,e)):"Module"===c?eH(a,b,d[0],e):"NonNullable"===c?(M=d[0],eK(fe(a,b,M),e)):"Pick"===c?(N=d[0],O=d[1],eX(fe(a,b,N),fe(a,b,O),e)):"Parameters"===c?(P=d[0],eR(fe(a,b,P),e)):"Partial"===c?(Q=d[0],eU(fe(a,b,Q),e)):"Omit"===c?(R=d[0],S=d[1],eO(fe(a,b,R),fe(a,b,S),e)):"ReadonlyObject"===c?(T=d[0],e_(fe(a,b,T),e)):"Record"===c?(U=d[0],V=d[1],bs(fe(a,b,U),fe(a,b,V),e)):"Required"===c?(W=d[0],e2(fe(a,b,W),e)):"ReturnType"===c?function(a,b,c,d={}){return e5(fe(a,b,c),d)}(a,b,d[0],e):"TemplateLiteral"===c?(X=d[0],c3(fd(a,b,X),e)):"Uncapitalize"===c?(Y=d[0],d4(fe(a,b,Y),e)):"Uppercase"===c?(Z=d[0],d5(fe(a,b,Z),e)):"With"===c?($=d[0],_=d[1],e8(fe(a,b,$),_)):E(c,d,e)}(a,b,c.action,c.parameters,c.options):function(a,b,c){var d;let e,f,g=Q(c)?(d=c.$ref,b.visited.includes(d)?c:d in a?fe(a,e9(b.callstack,[...b.visited,d]),a[d]):c):J(c)?I(fe(a,b,c.items),K(c)):dQ(c)?dN(a,b,c.target,c.arguments):M(c)?L(fd(a,b,c.parameters),fe(a,b,c.instanceType),A(c,["~kind","type","parameters","instanceType"])):O(c)?N(fd(a,b,c.parameters),fe(a,b,c.returnType),A(c,["~kind","type","parameters","returnType"])):al(c)?ak(fe(a,b,c.if),fe(a,b,c.then),fe(a,b,c.else),A(c,["~kind","if","then","else"])):aq(c)?ap(fd(a,b,c.allOf),A(c,["~kind","allOf"])):aa(c)?_(fb(a,b,c.properties),A(c,["~kind","type","properties","required"])):bC(c)?bb(bz(c),fe(a,b,bB(c))):bE(c)?bD(fe(a,b,c.items)):bd(c)?bc(fc(a,b,c.items),A(c,["~kind","type","items","minItems","additionalItems"])):a6(c)?a5(fd(a,b,c.anyOf),A(c,["~kind","anyOf"])):c;return e=$(c)?H(g,{}):g,f=aG(c)?G(e,{}):e,aC(c)?fg(f,{}):f}(a,b,c)}function ff(a,b){return fe(a,e9([],[]),b)}function fg(a,b){return B(B(a,{"~immutable":!0},{}),{},b)}function fh(a,b={}){return fg(a,b)}function fi(a,b={}){return B(bp(a),{},b)}function fj(a,b={}){return eH({},e9([],[]),a,b)}function fk(...a){let b,[c,d,e]=ah(a,{2:(a,b)=>r(a)?[{},a,b]:[a,b,{}],3:(a,b,c)=>[a,b,c],1:a=>[{},a,{}]}),f=cf(cf(cf(cf(c1(b=d),([a,b])=>cf(cf(cf(c0(b),([a,b])=>cf(cf(cf(c1(b),([a,b])=>[[a],b]),([a,b])=>[a,b],()=>cf([[],b],([a,b])=>[a,b],()=>[])),([b,c])=>[[a,b],c])),([a,b])=>[bQ(bM(a)),b]),([b,c])=>[[a,b],c])),([a,b])=>[function(a,b={}){return E("Module",[a],b)}(i(a[0],a[1][0])),b]),([a,b])=>[a,b],()=>cf(cf(cf(ci(b),([a,b])=>cf(b6("=",b),([b,c])=>cf(cy(c),([c,d])=>[[a,b,c],d]))),([a,b])=>[R(a[0],a[2]),b]),([a,b])=>[a,b],()=>cf(cy(b),([a,b])=>[a,b],()=>[]))),([a,b])=>[a,b]);return B(j(f)&&2===f.length?fe(c,e9([],[]),f[0]):V(),{},e)}},55950:(a,b,c)=>{"use strict";c.d(b,{V:()=>d});class d{enqueue(a,b,c,d,e){let f,g=this.parents.get(a)??{limit:1,active:0,items:[]};g.limit=Math.max(1,Math.floor(b)||1);let h=new Promise((a,b)=>{f={run:c,onState:d,onCancel:e,resolve:a,reject:b,state:"queued",cancelled:!1}});return g.items.push(f),this.parents.set(a,g),d("queued"),this.pump(a,g),{promise:h,cancel:()=>"queued"===f.state&&!f.cancelled&&(f.cancelled=!0,Promise.resolve(f.onCancel?.()).then(()=>f.resolve(void 0),a=>f.reject(a)),this.pump(a,g),!0)}}pump(a,b){for(;b.active<b.limit&&b.items.length>0;){let c=b.items.shift();c.cancelled||(c.state="running",c.onState("running"),b.active+=1,c.run().then(c.resolve,c.reject).finally(()=>{b.active-=1,this.pump(a,b),0===b.active&&0===b.items.length&&this.parents.delete(a)}))}}constructor(){this.parents=new Map}}},57856:(a,b,c)=>{"use strict";c.d(b,{TQ:()=>e,p1:()=>d});let d=92;function e(a,b=d,c=40){return Object.freeze({terminal:Object.freeze({columns:b,rows:c,kittyProtocolActive:!1}),requestRender:a})}},60542:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{startTaskScheduler:()=>G});var e=c(29021),f=c(55511),g=c(75384),h=c(47128),i=c(12144),j=c(69453),k=c(65562),l=c(14916),m=c(85158),n=c(48817),o=c(32105),p=a([i,j,o]);[i,j,o]=p.then?(await p)():p;let K=new Map,L=new Map;function q(a){if(a.cwd)return a.cwd;let b=(0,g.v$)(a.boardId);return b&&(0,e.existsSync)(b.projectKey)?b.projectKey:null}async function r(a){if(a.sessionId)try{let b=await (0,j.os)(a.sessionId);if(b)return{...await (0,i.OF)(a.sessionId,b,void 0),created:!1}}catch{}let b=q(a);return b?{...await (0,i.OF)((0,f.randomUUID)(),"",b,{toolNames:l.C1}),created:!0}:null}async function s(){let a=new Set((0,i.HG)()),b=0;for(let c of(0,n.O7)(["review"]))c.sessionId&&a.has(c.sessionId)&&((0,n.w0)(c.id,{execStatus:"running"}),console.log(`[task-scheduler] #${c.number} ${c.name} 自愈:会话仍在跑 → 拉回 running`),b+=1);return b}async function t(a){let b=(0,f.randomUUID)();if(!(0,n.Im)(a.id,b))return console.log(`[task-scheduler] #${a.number} ${a.name} 派发锁被占用,跳过`),!1;let c=null;try{if(!(c=await r(a)))return console.warn(`[task-scheduler] #${a.number} ${a.name} 无可用 cwd,跳过派发`),(0,n.$j)(a.id,b),!1;let d=c;await d.session.send({type:"set_session_name",name:`#${a.number} ${a.name}`});let e=(0,g.v$)(a.boardId);if(e?.taskId&&(0,k.mE)(d.realSessionId,e.taskId),d.session.isRunning())return(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] #${a.number} ${a.name} 会话忙(复用中),标 running 不重发`),!0;return await d.session.send({type:"prompt",message:function(a){let b=[`【任务卡 #${a.number}】${a.name}`];if(a.description.trim()&&b.push("",a.description.trim()),a.attachments.length>0)for(let c of(b.push("","附件:"),a.attachments))b.push(`- ${c}`);return b.join("\n")}(a)}),(0,n.w0)(a.id,{sessionId:d.realSessionId,execStatus:"running"}),u(a.boardId),v(a,d.session),(0,n.$j)(a.id,b),console.log(`[task-scheduler] 派发 #${a.number} ${a.name} → session ${d.realSessionId.slice(0,8)}`),!0}catch(d){if(c?.created)try{c.session.destroy()}catch{}return(0,n.$j)(a.id,b),console.error(`[task-scheduler] 派发 #${a.number} ${a.name} 失败:`,d instanceof Error?d.message:d),!1}}function u(a){(0,h.dA)(a).catch(b=>console.warn(`[task-scheduler] reconcile ${a} 异常:`,b?.message??b))}function v(a,b){if("function"!=typeof b.onEvent)return;let c=b.onEvent(b=>{if("agent_end"!==b.type)return;c();let d=(0,n.XJ)(a.id);d&&"running"===d.execStatus&&((0,n.w0)(a.id,{execStatus:"review"}),console.log(`[task-scheduler] #${a.number} ${a.name} 执行会话结束(agent_end) → review(待审核)`))})}async function w(){let a=new Set((0,i.HG)()),b=Date.now(),c=0;for(let d of(0,n.BH)()){if(!d.sessionId||a.has(d.sessionId))continue;let e=await (0,o.Wz)(d.sessionId);e&&0!==e.lastActivityMs&&(b-e.lastActivityMs<5e3||((0,n.w0)(d.id,{execStatus:"review"}),console.log(`[task-scheduler] #${d.number} ${d.name} 执行会话已结束 → review(待审核)`),c+=1))}return c}async function x(){let a=0;for(let b of(0,n.O7)(["not_started","running","review","waiting_reply"])){if(!b.sessionId)continue;let c=(0,i.A4)(b.sessionId);c&&(c.isRunning()?"running"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"running"}),a+=1):c.hasPendingUiRequest()&&"waiting_reply"!==b.execStatus&&((0,n.w0)(b.id,{execStatus:"waiting_reply"}),a+=1))}return a}async function y(){await x(),await s(),await w(),await D(),await z(),await E();let a=0,b=(0,n.CU)(),c=Math.max(0,1-b);if(c<=0)return H({type:"skipped_gate",at:Date.now()}),0;for(let b of(0,n.uZ)().slice(0,c)){if((0,n.CU)()>=1)break;await J({kind:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()},()=>t(b))&&(a+=1,H({type:"dispatch",cardNumber:b.number,cardName:b.name,at:Date.now()}))}return a}async function z(){let a=0;for(let b of(0,n.Kg)()){let c=(0,n.XJ)(b.cardId);if(c&&"waiting_reply"===c.execStatus&&c.sessionId){if((0,n.CU)()>=1)break;await J({kind:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>A(c,b))&&(a+=1,H({type:"resume",cardNumber:c.number,cardName:c.name,at:Date.now()}))}}return a}async function A(a,b){try{let c=await (0,j.os)(a.sessionId);if(!c)return!1;let{session:d}=await (0,i.OF)(a.sessionId,c,void 0);return await d.send({type:"prompt",message:`【用户回答了你的提问】
18
29
  ${b.answer}
19
30
 
20
31
  请据此继续完成任务。`}),(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] 回复续会话 #${a.number} ${a.name}`),!0}catch(b){return console.error(`[task-scheduler] 回复续会话失败 #${a.number}:`,b instanceof Error?b.message:b),!1}}function B(a){let b=a.retryCount+1;b<a.maxRetries?((0,n.w0)(a.id,{execStatus:"not_started",retryCount:b}),console.log(`[task-scheduler] #${a.number} 失败(${b}/${a.maxRetries})→ 待重试`)):((0,n.w0)(a.id,{execStatus:"failed",retryCount:b}),console.log(`[task-scheduler] #${a.number} 失败(${b}/${a.maxRetries})→ failed`))}function C(a,b){(0,n.w0)(a.id,{execStatus:"waiting_reply"}),a.sessionId&&(0,n.hG)(a.id,a.sessionId,`AI 需要你回答后继续任务。
21
- ${b.slice(0,500)}`),console.log(`[task-scheduler] #${a.number} → waiting_reply(提问入队)`)}async function D(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["review"])){let d=c.sessionId?await (0,o.Wz)(c.sessionId):null;if(d?.failure){B(c),b+=1;continue}if(!c.sessionId||!d){(0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 无执行内容 → done`),b+=1;continue}let e=L.get(c.id)??0;if(a-e<3e5)continue;L.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"review",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.s4)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:d.recentText}));g?.verdict==="done"?((0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 审核通过 → done(${g.reason})`),b+=1):g?.verdict==="failed"?(B(c),b+=1):g?.verdict==="waiting_reply"?(C(c,d.recentText),b+=1):console.log(`[task-scheduler] #${c.number} 审核未决:${g?g.reason:"AI 判定失败"}(保持 review)`)}return b}async function E(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["running"])){if(!c.sessionId)continue;let d=K.get(c.id)??0;if(a-d<6e5)continue;let e=await (0,o.Wz)(c.sessionId);if(!e||0===e.lastActivityMs||!e.lastIsCommand||a-e.lastCommandAtMs<3e5)continue;K.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"blockcheck",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.bJ)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:e.recentText}));if(g)switch(g.kind){case"sync_server":case"infinite_loop":await F(c),b+=1;break;case"rate_limit":console.log(`[task-scheduler] #${c.number} 限流退避,继续观察`);break;case"asking":C(c,e.recentText),b+=1;break;case"error":(0,n.w0)(c.id,{execStatus:"review"}),b+=1}}return b}async function F(a){try{if(a.sessionId){let b=await (0,j.os)(a.sessionId);if(b){let{session:c}=await (0,i.OF)(a.sessionId,b,void 0);await c.send({type:"abort"}),await c.send({type:"prompt",message:"检测到任务卡执行异常(可能是同步开启服务或死循环)。\n请改用 tmux 后台启动服务:tmux new-session -d '命令',不要在前台阻塞等待日志;如为死循环请重新规划步骤后继续。"}),v(a,c)}}(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] #${a.number} 阻塞处置:abort+tmux 引导,继续运行`)}catch(b){console.error(`[task-scheduler] 阻塞处置失败 #${a.number}:`,b instanceof Error?b.message:b)}}function G(){if(globalThis.__piTaskScheduler)return;let a=!1,b=setInterval(()=>{!(0,m.oT)()||a||(a=!0,y().catch(a=>{console.error("[task-scheduler] tick error:",a instanceof Error?a.message:a)}).finally(()=>{a=!1}))},1e4);b.unref?.();let c=setInterval(()=>{try{(0,m.U4)((0,m.zZ)())}catch(a){console.error("[task-scheduler] leader heartbeat error:",a instanceof Error?a.message:a)}},m.dp/3);c.unref?.();let d={timer:b,heartbeatTimer:c,startedAt:Date.now(),lastAction:{type:"none",at:0},activity:null};globalThis.__piTaskScheduler=d,console.log("[pi-web] task scheduler started (interval 10000ms, max 1)")}function H(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.lastAction=a)}function I(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.activity=a)}async function J(a,b){I(a);try{return await b()}finally{I(null)}}d()}catch(a){d(a)}})},61577:(a,b,c)=>{c.d(b,{o:()=>e});let d=new Set(["off","minimal","low","medium","high","xhigh","max"]);async function e(a,b,c){if(!b.model&&!b.thinkingLevel)return{modelDefaultChanged:!1};let e=!1;if(b.model&&c.model&&b.model.provider===c.model.provider&&b.model.modelId===c.model.modelId&&(a.setDefaultModelAndProvider(c.model.provider,c.model.modelId),e=!0),b.thinkingLevel&&(c.supportsThinking||"off"!==c.thinkingLevel)){var f;let b=(f=c.thinkingLevel,d.has(f))?c.thinkingLevel:void 0;a.setDefaultThinkingLevel(b)}return await a.flush(),{modelDefaultChanged:e}}},77605:(a,b,c)=>{c.d(b,{Ql:()=>i,Y0:()=>e,aO:()=>k,cn:()=>f,mU:()=>l,sT:()=>d,xw:()=>n});let d="pi-todo.state",e="todo",f=["pending","in_progress","completed"];function g(a){return"string"==typeof a&&f.includes(a)}function h(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function i(a){return a.some(a=>"completed"!==a.status)}function j(a,b){let c=a.trim();if(0===c.length)throw Error(`${b} cannot be empty or whitespace-only`);return c}function k(a){if(!h(a)||!Array.isArray(a.todos))return null;let b=[];for(let c of a.todos)h(c)&&"number"==typeof c.id&&Number.isFinite(c.id)&&"string"==typeof c.content&&0!==c.content.length&&g(c.status)&&b.push({id:c.id,content:c.content,status:c.status});let c=b.reduce((a,b)=>Math.max(a,b.id),0);return{todos:b,nextId:"number"==typeof a.nextId&&a.nextId>c?a.nextId:c+1}}function l(a){let b="completed"===a.status?"x":"in_progress"===a.status?"~":" ";return`[${b}] #${a.id}: ${a.content}`}function m(a,b){if(0===b.length)throw Error("update requires at least status or text parameter");let c=new Set;for(let d of b){if(c.has(d.id))throw Error(`duplicate id ${d.id} in updates`);if(c.add(d.id),void 0===d.status&&void 0===d.text)throw Error(`update item for id ${d.id} has neither status nor text`);if(void 0!==d.status&&!g(d.status))throw Error(`status only accepts ${f.join(" / ")}`);if(void 0!==d.text&&j(d.text,`update item id ${d.id}: text`),!a.todos.some(a=>a.id===d.id))throw Error(`Todo #${d.id} not found`)}return{snapshot:{todos:a.todos.map(a=>{let c=b.find(b=>b.id===a.id);return c?{...a,...void 0!==c.status?{status:c.status}:{},...void 0!==c.text?{content:c.text.trim()}:{}}:a}),nextId:a.nextId},resultText:`Updated ${b.length} todo(s)`}}function n(a,b){switch(a.action){case"list":var c;return{action:"list",snapshot:b,resultText:(c=b.todos).length>0?c.map(l).join("\n"):"No todos"};case"add":{if(void 0!==a.text&&void 0!==a.texts)throw Error('add only accepts texts array; do not also pass singular "text"');if(void 0!==a.text)throw Error('add needs texts (array). You passed singular "text" — that field is for update. Correct: {"action":"add","texts":["<your text>"]}');let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('add requires texts parameter (non-empty array). Correct: {"action":"add","texts":["..."]}');let c=b.map(a=>j(a,"texts item")),d=a.nextId,e=c.map((a,b)=>({id:d+b,content:a,status:"pending"})),f=d+e.length;return{snapshot:{todos:[...a.todos,...e],nextId:f},resultText:`Added ${e.length} todos (#${d}-#${f-1})`}}(b,a.texts??[]);return{action:"add",snapshot:c,resultText:d}}case"update":{if(void 0!==a.updates&&a.updates.length>0){let{snapshot:c,resultText:d}=m(b,a.updates);return{action:"update",snapshot:c,resultText:d}}if(void 0===a.id)throw Error('update requires id parameter. Correct: {"action":"update","id":1,"status":"in_progress"}');let{snapshot:c,resultText:d}=m(b,[{id:a.id,...void 0!==a.status?{status:a.status}:{},...void 0!==a.text?{text:a.text}:{}}]);return{action:"update",snapshot:c,resultText:d}}case"delete":{if(void 0===a.ids||0===a.ids.length){if(void 0!==a.id)throw Error('delete needs ids (array). You passed singular "id". Correct: {"action":"delete","ids":[1]}');throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}')}let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}');for(let c of b)if(!a.todos.some(a=>a.id===c))throw Error(`Todo #${c} not found`);let c=new Set(b);return{snapshot:{todos:a.todos.filter(a=>!c.has(a.id)),nextId:a.nextId},resultText:`Deleted ${b.length} todo(s)`}}(b,a.ids);return{action:"delete",snapshot:c,resultText:d}}default:throw Error(`Unknown action: ${String(a.action)}`)}}},81186:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ds:()=>j,J1:()=>h,eD:()=>i});var e=c(75430),f=c(76760),g=a([e]);e=(g.then?(await g)():g)[0];let k="pi-web-project-command-environment",l=`<inline:${k}>`;function h(a={}){let{agentBinDir:b=(0,f.join)((0,e.getAgentDir)(),"bin"),baseEnvironment:c=process.env,localOperations:d=(0,e.createLocalBashOperations)({shellPath:a.shellPath}),platform:g=process.platform}=a;return{exec(a,e,f){var h;let i,j,k,l=(h=function(a,b=process.platform){let c={...a};for(let a of Object.keys(c))(function(a,b){let c="win32"===b?a.toUpperCase():a;return"PORT"===c||"NODE_ENV"===c||c.startsWith("NEXT_")})(a,b)&&delete c[a];return c}(f.env??c,g),i="win32"===g?Object.keys(h).find(a=>"PATH"===a.toUpperCase())??"PATH":"PATH",j="win32"===g?";":":",(k=h[i]??"").split(j).filter(Boolean).includes(b)||(h[i]=[b,k].filter(Boolean).join(j)),h);return d.exec(a,e,{...f,env:l})}}}function i(a){return{name:k,hidden:!0,factory:b=>{let c=(0,e.createBashToolDefinition)(a.cwd);b.registerTool({...c,execute:(b,c,d,f,g)=>(0,e.createBashToolDefinition)(a.cwd,{commandPrefix:a.settings.getShellCommandPrefix(),operations:h({shellPath:a.settings.getShellPath()})}).execute(b,c,d,f,g)})}}}function j(a){let b=a.extensions.findIndex(a=>a.path===l);if(b<0)return a;let c=a.extensions.slice(0,b).find(a=>a.tools.has("bash"));return c?{...a,extensions:a.extensions.filter((a,c)=>c!==b),errors:a.errors.filter(a=>a.path!==l||a.error!==`Tool "bash" conflicts with ${c.path}`)}:a}d()}catch(a){d(a)}})},87509:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{U:()=>j});var e=c(28802),f=c(45399),g=c(77605),h=a([e]);function i(){return{currentTurn:0,lastTodoToolUseTurn:0}}e=(h.then?(await h)():h)[0];let k=f.ZUJ.Object({action:f.ZUJ.Union([f.ZUJ.Literal("list"),f.ZUJ.Literal("add"),f.ZUJ.Literal("update"),f.ZUJ.Literal("delete")],{description:"list | add | update | delete"}),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本,仅 update 使用(trim 后不可为空)"})),texts:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.String(),{description:"待添加的 todo 文本数组(仅 add 使用)"})),id:f.ZUJ.Optional(f.ZUJ.Number({description:"要更新的 todo id"})),ids:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Number(),{description:"要删除的 todo id 数组"})),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn,{description:"pending | in_progress | completed"})),updates:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Object({id:f.ZUJ.Number({description:"要更新的 todo id"}),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn)),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本(trim 后不可为空)"}))},{additionalProperties:!1}),{description:"批量更新数组(优先于单条 id/status/text)"}))},{additionalProperties:!1});function j(){return{name:"pi-web-todo",hidden:!0,factory:a=>{let b={todos:[],nextId:1},c=i(),d=()=>{a.appendEntry(g.sT,{todos:b.todos,nextId:b.nextId})},e=a=>{let d=a.sessionManager.getBranch();for(let a of(b.todos=[],b.nextId=1,Object.assign(c,i()),d)){if("custom"!==a.type||a.customType!==g.sT)continue;let c=(0,g.aO)(a.data);c&&(b.todos=c.todos,b.nextId=c.nextId)}c.currentTurn=function(a){let b=0;for(let c of a){if("custom"===c.type&&c.customType===g.sT){b=0;continue}c.message?.role==="assistant"&&b++}return b}(d)};a.on("session_start",async(a,b)=>e(b)),a.on("session_tree",async(a,b)=>e(b)),a.on("agent_end",async(a,c)=>{0===b.todos.length||(0,g.Ql)(b.todos)||function(a){let b,c=0,d=0;for(let e of a)"custom"===e.type&&e.customType===g.sT?(b=e.data,d=c):e.message?.role==="user"&&c++;let e=(0,g.aO)(b);return!(!e||0===e.todos.length||(0,g.Ql)(e.todos))&&c-d>=2}(c.sessionManager.getBranch())&&(b.todos=[],b.nextId=1,d())}),a.on("turn_start",async()=>{c.currentTurn++}),a.on("tool_result",async a=>{String(a.toolName??"")===g.Y0&&(c.lastTodoToolUseTurn=c.currentTurn)}),a.on("context",async a=>{if(!(0,g.Ql)(b.todos)||c.currentTurn-c.lastTodoToolUseTurn<4||(c.lastTodoToolUseTurn=c.currentTurn,0))return;let d=function(a){let b=a.filter(a=>"completed"!==a.status);if(0===b.length)return null;let c=b.filter(a=>"in_progress"===a.status),d=c.length>0?`#${c[0].id}("${c[0].content}")仍标记为 in_progress。这一步如果已经做完,立刻用 todo update 把它标成 completed,并在同一次调用里把下一项 pending 置为 in_progress,不要留下过期的 [~]。`:"还有 pending 项但没有任何 in_progress。准备继续动手前,先用 todo update 把其中一项置为 in_progress。";return["<system-reminder>","todo 工具已连续 4 轮没有被使用,但仍有未完成任务:","",...b.map(g.mU),"",d,"","只在与本轮工作相关时行动;这是一条温和提醒,不适用就忽略。绝不要向用户提及这条提醒,也不要为了回应它而新造任务。","</system-reminder>"].join("\n")}(b.todos);if(d)return{messages:[...a.messages,{role:"user",content:[{type:"text",text:d}],timestamp:Date.now()}]}}),a.registerTool({name:g.Y0,label:"Todo",description:"管理当前会话的 todo 列表。\n\n动作:\n- list: 查看全部 todo\n- add: 批量添加 todo(texts 数组)\n- update: 按 id 更新 todo——status 和/或 text;批量用 updates[]\n- delete: 按 id 删除 todo(ids 数组)\n\n规则:\n- 同一时间只有一个 todo 处于 in_progress\n- 完成一个 todo 立即标记 completed,不要攒到最后批量标记\n- 未真正完成不得标记 completed:被阻塞或测试失败时保持 in_progress",promptSnippet:"用 todo 跟踪多步骤工作;记得为验证步骤(测试、类型检查)单独建 todo。",promptGuidelines:["[Usage] 多步骤工作(3+步)时使用,AI 自发创建,无需用户触发","[验证任务] 为测试 / 类型检查等验证步骤单独建 todo,完成前确保验证通过","[批量优先] 完成多项任务时使用 updates[] 批量更新,减少工具调用次数","[自动闭合] 全部完成后自动清理,无需手动 delete","[Not for] 单步操作、简单对话"],executionMode:"sequential",parameters:k,async execute(a,c,e){if(e?.aborted)throw Error("Todo call aborted by signal.");let f=(0,g.xw)(c,b),h="list"!==f.action;h&&(b.todos=f.snapshot.todos,b.nextId=f.snapshot.nextId,d());let i=h?`${f.resultText}
22
- ${b.todos.map(a=>(0,g.mU)(a)).join("\n")||"No todos"}`:f.resultText;return{content:[{type:"text",text:i}],details:{action:f.action,todos:[...b.todos],nextId:b.nextId}}}})}}}d()}catch(a){d(a)}})},88250:(a,b,c)=>{c.d(b,{kn:()=>d});function d(){let a=(globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState);a.generation+=1,a.entries.clear(),a.inFlight.clear()}},96515:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{I:()=>j,p:()=>i});var e=c(75430),f=a([e]);e=(f.then?(await f)():f)[0];let k=new Set(["off","minimal","low","medium","high","xhigh","max"]);function g(a,b){return a.provider===b.provider&&a.id===b.modelId}function h(a,b){let c=a.toLowerCase(),d=b.filter(a=>`${a.provider}/${a.id}`.toLowerCase()===c);return d.length>0?d:b.filter(a=>a.id.toLowerCase()===c)}async function i(a,b){let c=(b??[]).map(a=>a.trim()).filter(Boolean);if(0===c.length)return{visible:await a.getAvailable(),scopedModels:[],thinkingLevelPins:{},warnings:[]};let d=await a.getAvailable();!function(a,b){for(let c of a){if(c.includes("*")||c.includes("?")||c.includes("["))continue;let a=h(c,b);if(0===a.length){let d=c.lastIndexOf(":"),e=d>=0?c.slice(d+1):"";k.has(e)&&(a=h(c.slice(0,d),b))}if(a.length>1){let b=a.map(a=>`${a.provider}/${a.id}`).sort().join(", ");throw Error(`Ambiguous enabledModels entry "${c}" matches multiple models: ${b}. Use provider/modelId.`)}}}(c,d);let{scopedModels:f,diagnostics:g}=await (0,e.resolveModelScopeWithDiagnostics)(c,{getAvailable:async()=>d}),i=g.map(a=>a.message);if(0===f.length)return{visible:d,scopedModels:[],thinkingLevelPins:{},warnings:i};let j={};for(let a of f)a.thinkingLevel&&(j[`${a.model.provider}/${a.model.id}`]=a.thinkingLevel);return{visible:f.map(a=>a.model),scopedModels:f,thinkingLevelPins:j,warnings:i}}function j(a,b={}){let c=b.requestedModel,d=b.defaultModel,e=c?a.visible.find(a=>g(a,c)):void 0;if(c&&!e)throw Error(`Model is not available in the enabled scope: ${c.provider}/${c.modelId}`);let f=e?a.scopedModels.find(a=>a.model===e||g(a.model,{provider:e.provider,modelId:e.id})):void 0,h=!e&&d?a.scopedModels.find(a=>g(a.model,d)):void 0,i=e?void 0:h??a.scopedModels[0],k=e||i||!d?void 0:a.visible.find(a=>g(a,d)),l=e??i?.model??k,m=f??i,n=b.thinkingLevel??m?.thinkingLevel;return{...l?{model:l}:{},...n?{thinkingLevel:n}:{},scopedModels:[...a.scopedModels]}}d()}catch(a){d(a)}})}};
32
+ ${b.slice(0,500)}`),console.log(`[task-scheduler] #${a.number} → waiting_reply(提问入队)`)}async function D(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["review"])){let d=c.sessionId?await (0,o.Wz)(c.sessionId):null;if(d?.failure){B(c),b+=1;continue}if(!c.sessionId||!d){(0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 无执行内容 → done`),b+=1;continue}let e=L.get(c.id)??0;if(a-e<3e5)continue;L.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"review",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.s4)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:d.recentText}));g?.verdict==="done"?((0,n.w0)(c.id,{execStatus:"done"}),console.log(`[task-scheduler] #${c.number} 审核通过 → done(${g.reason})`),b+=1):g?.verdict==="failed"?(B(c),b+=1):g?.verdict==="waiting_reply"?(C(c,d.recentText),b+=1):console.log(`[task-scheduler] #${c.number} 审核未决:${g?g.reason:"AI 判定失败"}(保持 review)`)}return b}async function E(){let a=Date.now(),b=0;for(let c of(0,n.O7)(["running"])){if(!c.sessionId)continue;let d=K.get(c.id)??0;if(a-d<6e5)continue;let e=await (0,o.Wz)(c.sessionId);if(!e||0===e.lastActivityMs||!e.lastIsCommand||a-e.lastCommandAtMs<3e5)continue;K.set(c.id,a);let f=q(c);if(!f)continue;let g=await J({kind:"blockcheck",cardNumber:c.number,cardName:c.name,at:Date.now()},()=>(0,o.bJ)({cwd:f,cardNumber:c.number,cardName:c.name,taskDescription:c.description,recentMessages:e.recentText}));if(g)switch(g.kind){case"sync_server":case"infinite_loop":await F(c),b+=1;break;case"rate_limit":console.log(`[task-scheduler] #${c.number} 限流退避,继续观察`);break;case"asking":C(c,e.recentText),b+=1;break;case"error":(0,n.w0)(c.id,{execStatus:"review"}),b+=1}}return b}async function F(a){try{if(a.sessionId){let b=await (0,j.os)(a.sessionId);if(b){let{session:c}=await (0,i.OF)(a.sessionId,b,void 0);await c.send({type:"abort"}),await c.send({type:"prompt",message:"检测到任务卡执行异常(可能是同步开启服务或死循环)。\n请改用 tmux 后台启动服务:tmux new-session -d '命令',不要在前台阻塞等待日志;如为死循环请重新规划步骤后继续。"}),v(a,c)}}(0,n.w0)(a.id,{execStatus:"running"}),console.log(`[task-scheduler] #${a.number} 阻塞处置:abort+tmux 引导,继续运行`)}catch(b){console.error(`[task-scheduler] 阻塞处置失败 #${a.number}:`,b instanceof Error?b.message:b)}}function G(){if(globalThis.__piTaskScheduler)return;let a=!1,b=setInterval(()=>{!(0,m.oT)()||a||(a=!0,y().catch(a=>{console.error("[task-scheduler] tick error:",a instanceof Error?a.message:a)}).finally(()=>{a=!1}))},1e4);b.unref?.();let c=setInterval(()=>{try{(0,m.U4)((0,m.zZ)())}catch(a){console.error("[task-scheduler] leader heartbeat error:",a instanceof Error?a.message:a)}},m.dp/3);c.unref?.();let d={timer:b,heartbeatTimer:c,startedAt:Date.now(),lastAction:{type:"none",at:0},activity:null};globalThis.__piTaskScheduler=d,console.log("[pi-web] task scheduler started (interval 10000ms, max 1)")}function H(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.lastAction=a)}function I(a){globalThis.__piTaskScheduler&&(globalThis.__piTaskScheduler.activity=a)}async function J(a,b){I(a);try{return await b()}finally{I(null)}}d()}catch(a){d(a)}})},61577:(a,b,c)=>{"use strict";c.d(b,{o:()=>e});let d=new Set(["off","minimal","low","medium","high","xhigh","max"]);async function e(a,b,c){if(!b.model&&!b.thinkingLevel)return{modelDefaultChanged:!1};let e=!1;if(b.model&&c.model&&b.model.provider===c.model.provider&&b.model.modelId===c.model.modelId&&(a.setDefaultModelAndProvider(c.model.provider,c.model.modelId),e=!0),b.thinkingLevel&&(c.supportsThinking||"off"!==c.thinkingLevel)){var f;let b=(f=c.thinkingLevel,d.has(f))?c.thinkingLevel:void 0;a.setDefaultThinkingLevel(b)}return await a.flush(),{modelDefaultChanged:e}}},62404:(a,b,c)=>{"use strict";let d=c(33873),e=c(93329),f=c(81463),g=c(75856),h=c(16176),i={};function j(a,b){return b.lockfilePath||`${a}.lock`}function k(a,b,c){if(!b.realpath)return c(null,d.resolve(a));b.fs.realpath(a,c)}function l(a,b){return a.mtime.getTime()<Date.now()-b.stale}function m(a,b,c){b.fs.rmdir(j(a,b),a=>{if(a&&"ENOENT"!==a.code)return c(a);c()})}function n(a,b,c){b.released=!0,b.updateTimeout&&clearTimeout(b.updateTimeout),i[a]===b&&delete i[a],b.options.onCompromised(c)}function o(a,b,c){k(a,b={fs:e,realpath:!0,...b},(a,d)=>{if(a)return c(a);let e=i[d];if(!e)return c(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));e.updateTimeout&&clearTimeout(e.updateTimeout),e.released=!0,delete i[d],m(d,b,c)})}g(()=>{for(let a in i){let b=i[a].options;try{b.fs.rmdirSync(j(a,b))}catch(a){}}}),a.exports.lock=function(a,b,c){(b={stale:1e4,update:null,realpath:!0,retries:0,fs:e,onCompromised:a=>{throw a},...b}).retries=b.retries||0,b.retries="number"==typeof b.retries?{retries:b.retries}:b.retries,b.stale=Math.max(b.stale||0,2e3),b.update=null==b.update?b.stale/2:b.update||0,b.update=Math.max(Math.min(b.update,b.stale/2),1e3),k(a,b,(a,d)=>{if(a)return c(a);let e=f.operation(b.retries);e.attempt(()=>{!function a(b,c,d){let e=j(b,c);c.fs.mkdir(e,f=>f?"EEXIST"!==f.code?d(f):c.stale<=0?d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b})):void c.fs.stat(e,(e,f)=>e?"ENOENT"===e.code?a(b,{...c,stale:0},d):d(e):l(f,c)?void m(b,c,e=>{if(e)return d(e);a(b,{...c,stale:0},d)}):d(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:b}))):h.probe(e,c.fs,(a,b,f)=>{if(a)return c.fs.rmdir(e,()=>{}),d(a);d(null,b,f)}))}(d,b,(a,f,g)=>{if(e.retry(a))return;if(a)return c(e.mainError());let k=i[d]={lockfilePath:j(d,b),mtime:f,mtimePrecision:g,options:b,lastUpdate:Date.now()};!function a(b,c){let d=i[b];!d.updateTimeout&&(d.updateDelay=d.updateDelay||c.update,d.updateTimeout=setTimeout(()=>{d.updateTimeout=null,c.fs.stat(d.lockfilePath,(e,f)=>{let g=d.lastUpdate+c.stale<Date.now();if(e)return"ENOENT"===e.code||g?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));if(d.mtime.getTime()!==f.mtime.getTime())return n(b,d,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let i=h.getMtime(d.mtimePrecision);c.fs.utimes(d.lockfilePath,i,i,e=>{let f=d.lastUpdate+c.stale<Date.now();if(!d.released){if(e)return"ENOENT"===e.code||f?n(b,d,Object.assign(e,{code:"ECOMPROMISED"})):(d.updateDelay=1e3,a(b,c));d.mtime=i,d.lastUpdate=Date.now(),d.updateDelay=null,a(b,c)}})})},d.updateDelay),d.updateTimeout.unref&&d.updateTimeout.unref())}(d,b),c(null,a=>{if(k.released)return a&&a(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));o(d,{...b,realpath:!1},a)})})})})},a.exports.unlock=o,a.exports.check=function(a,b,c){(b={stale:1e4,realpath:!0,fs:e,...b}).stale=Math.max(b.stale||0,2e3),k(a,b,(a,d)=>{if(a)return c(a);b.fs.stat(j(d,b),(a,d)=>a?"ENOENT"===a.code?c(null,!1):c(a):c(null,!l(d,b)))})},a.exports.getLocks=function(){return i}},67313:(a,b,c)=>{var d=c(92759);b.operation=function(a){return new d(b.timeouts(a),{forever:a&&a.forever,unref:a&&a.unref,maxRetryTime:a&&a.maxRetryTime})},b.timeouts=function(a){if(a instanceof Array)return[].concat(a);var b={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var c in a)b[c]=a[c];if(b.minTimeout>b.maxTimeout)throw Error("minTimeout is greater than maxTimeout");for(var d=[],e=0;e<b.retries;e++)d.push(this.createTimeout(e,b));return a&&a.forever&&!d.length&&d.push(this.createTimeout(e,b)),d.sort(function(a,b){return a-b}),d},b.createTimeout=function(a,b){var c=Math.round((b.randomize?Math.random()+1:1)*b.minTimeout*Math.pow(b.factor,a));return Math.min(c,b.maxTimeout)},b.wrap=function(a,c,d){if(c instanceof Array&&(d=c,c=null),!d)for(var e in d=[],a)"function"==typeof a[e]&&d.push(e);for(var f=0;f<d.length;f++){var g=d[f],h=a[g];a[g]=(function(d){var e=b.operation(c),f=Array.prototype.slice.call(arguments,1),g=f.pop();f.push(function(a){e.retry(a)||(a&&(arguments[0]=e.mainError()),g.apply(this,arguments))}),e.attempt(function(){d.apply(a,f)})}).bind(a,h),a[g].options=c}}},70274:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{N:()=>k,hd:()=>j});var e=c(73024),f=c(76760),g=c(75430);c(12969);var h=a([g]);function i(a=(0,g.getAgentDir)()){return(0,f.join)(a,"agents","settings.json")}function j(a=i()){var b,c,d;let f=function(a){if(!(0,e.existsSync)(a))return{};let b=JSON.parse((0,e.readFileSync)(a,"utf8"));if(null===b||"object"!=typeof b||Array.isArray(b))throw Error("Invalid subagent settings: expected an object");return b}(a);return c=!0===f.builtInEnabled,b=f.maxConcurrent,d="number"==typeof b&&Number.isInteger(b)&&b>=1&&b<=32?b:10,Object.defineProperty({builtInEnabled:c},"maxConcurrent",{value:d,enumerable:!1,configurable:!0})}function k(a=i()){try{return j(a).builtInEnabled}catch{return!1}}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},75856:(a,b,c)=>{var d=global.process;let e=function(a){return a&&"object"==typeof a&&"function"==typeof a.removeListener&&"function"==typeof a.emit&&"function"==typeof a.reallyExit&&"function"==typeof a.listeners&&"function"==typeof a.kill&&"number"==typeof a.pid&&"function"==typeof a.on};if(e(d)){var f,g=c(12412),h=c(30223),i=/^win/i.test(d.platform),j=c(94735);"function"!=typeof j&&(j=j.EventEmitter),d.__signal_exit_emitter__?f=d.__signal_exit_emitter__:((f=d.__signal_exit_emitter__=new j).count=0,f.emitted={}),f.infinite||(f.setMaxListeners(1/0),f.infinite=!0),a.exports=function(a,b){if(!e(global.process))return function(){};g.equal(typeof a,"function","a callback must be provided for exit handler"),!1===n&&o();var c="exit";return b&&b.alwaysLast&&(c="afterexit"),f.on(c,a),function(){f.removeListener(c,a),0===f.listeners("exit").length&&0===f.listeners("afterexit").length&&k()}};var k=function(){n&&e(global.process)&&(n=!1,h.forEach(function(a){try{d.removeListener(a,m[a])}catch(a){}}),d.emit=r,d.reallyExit=p,f.count-=1)};a.exports.unload=k;var l=function(a,b,c){f.emitted[a]||(f.emitted[a]=!0,f.emit(a,b,c))},m={};h.forEach(function(a){m[a]=function(){e(global.process)&&d.listeners(a).length===f.count&&(k(),l("exit",null,a),l("afterexit",null,a),i&&"SIGHUP"===a&&(a="SIGINT"),d.kill(d.pid,a))}}),a.exports.signals=function(){return h};var n=!1,o=function(){!n&&e(global.process)&&(n=!0,f.count+=1,h=h.filter(function(a){try{return d.on(a,m[a]),!0}catch(a){return!1}}),d.emit=s,d.reallyExit=q)};a.exports.load=o;var p=d.reallyExit,q=function(a){e(global.process)&&(d.exitCode=a||0,l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),p.call(d,d.exitCode))},r=d.emit,s=function(a,b){if(!("exit"===a&&e(global.process)))return r.apply(this,arguments);void 0!==b&&(d.exitCode=b);var c=r.apply(this,arguments);return l("exit",d.exitCode,null),l("afterexit",d.exitCode,null),c}}else a.exports=function(){return function(){}}},77605:(a,b,c)=>{"use strict";c.d(b,{Ql:()=>i,Y0:()=>e,aO:()=>k,cn:()=>f,mU:()=>l,sT:()=>d,xw:()=>n});let d="pi-todo.state",e="todo",f=["pending","in_progress","completed"];function g(a){return"string"==typeof a&&f.includes(a)}function h(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function i(a){return a.some(a=>"completed"!==a.status)}function j(a,b){let c=a.trim();if(0===c.length)throw Error(`${b} cannot be empty or whitespace-only`);return c}function k(a){if(!h(a)||!Array.isArray(a.todos))return null;let b=[];for(let c of a.todos)h(c)&&"number"==typeof c.id&&Number.isFinite(c.id)&&"string"==typeof c.content&&0!==c.content.length&&g(c.status)&&b.push({id:c.id,content:c.content,status:c.status});let c=b.reduce((a,b)=>Math.max(a,b.id),0);return{todos:b,nextId:"number"==typeof a.nextId&&a.nextId>c?a.nextId:c+1}}function l(a){let b="completed"===a.status?"x":"in_progress"===a.status?"~":" ";return`[${b}] #${a.id}: ${a.content}`}function m(a,b){if(0===b.length)throw Error("update requires at least status or text parameter");let c=new Set;for(let d of b){if(c.has(d.id))throw Error(`duplicate id ${d.id} in updates`);if(c.add(d.id),void 0===d.status&&void 0===d.text)throw Error(`update item for id ${d.id} has neither status nor text`);if(void 0!==d.status&&!g(d.status))throw Error(`status only accepts ${f.join(" / ")}`);if(void 0!==d.text&&j(d.text,`update item id ${d.id}: text`),!a.todos.some(a=>a.id===d.id))throw Error(`Todo #${d.id} not found`)}return{snapshot:{todos:a.todos.map(a=>{let c=b.find(b=>b.id===a.id);return c?{...a,...void 0!==c.status?{status:c.status}:{},...void 0!==c.text?{content:c.text.trim()}:{}}:a}),nextId:a.nextId},resultText:`Updated ${b.length} todo(s)`}}function n(a,b){switch(a.action){case"list":var c;return{action:"list",snapshot:b,resultText:(c=b.todos).length>0?c.map(l).join("\n"):"No todos"};case"add":{if(void 0!==a.text&&void 0!==a.texts)throw Error('add only accepts texts array; do not also pass singular "text"');if(void 0!==a.text)throw Error('add needs texts (array). You passed singular "text" — that field is for update. Correct: {"action":"add","texts":["<your text>"]}');let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('add requires texts parameter (non-empty array). Correct: {"action":"add","texts":["..."]}');let c=b.map(a=>j(a,"texts item")),d=a.nextId,e=c.map((a,b)=>({id:d+b,content:a,status:"pending"})),f=d+e.length;return{snapshot:{todos:[...a.todos,...e],nextId:f},resultText:`Added ${e.length} todos (#${d}-#${f-1})`}}(b,a.texts??[]);return{action:"add",snapshot:c,resultText:d}}case"update":{if(void 0!==a.updates&&a.updates.length>0){let{snapshot:c,resultText:d}=m(b,a.updates);return{action:"update",snapshot:c,resultText:d}}if(void 0===a.id)throw Error('update requires id parameter. Correct: {"action":"update","id":1,"status":"in_progress"}');let{snapshot:c,resultText:d}=m(b,[{id:a.id,...void 0!==a.status?{status:a.status}:{},...void 0!==a.text?{text:a.text}:{}}]);return{action:"update",snapshot:c,resultText:d}}case"delete":{if(void 0===a.ids||0===a.ids.length){if(void 0!==a.id)throw Error('delete needs ids (array). You passed singular "id". Correct: {"action":"delete","ids":[1]}');throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}')}let{snapshot:c,resultText:d}=function(a,b){if(0===b.length)throw Error('delete requires ids parameter (non-empty array). Correct: {"action":"delete","ids":[1]}');for(let c of b)if(!a.todos.some(a=>a.id===c))throw Error(`Todo #${c} not found`);let c=new Set(b);return{snapshot:{todos:a.todos.filter(a=>!c.has(a.id)),nextId:a.nextId},resultText:`Deleted ${b.length} todo(s)`}}(b,a.ids);return{action:"delete",snapshot:c,resultText:d}}default:throw Error(`Unknown action: ${String(a.action)}`)}}},81186:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Ds:()=>j,J1:()=>h,eD:()=>i});var e=c(75430),f=c(76760),g=a([e]);e=(g.then?(await g)():g)[0];let k="pi-web-project-command-environment",l=`<inline:${k}>`;function h(a={}){let{agentBinDir:b=(0,f.join)((0,e.getAgentDir)(),"bin"),baseEnvironment:c=process.env,localOperations:d=(0,e.createLocalBashOperations)({shellPath:a.shellPath}),platform:g=process.platform}=a;return{exec(a,e,f){var h;let i,j,k,l=(h=function(a,b=process.platform){let c={...a};for(let a of Object.keys(c))(function(a,b){let c="win32"===b?a.toUpperCase():a;return"PORT"===c||"NODE_ENV"===c||c.startsWith("NEXT_")})(a,b)&&delete c[a];return c}(f.env??c,g),i="win32"===g?Object.keys(h).find(a=>"PATH"===a.toUpperCase())??"PATH":"PATH",j="win32"===g?";":":",(k=h[i]??"").split(j).filter(Boolean).includes(b)||(h[i]=[b,k].filter(Boolean).join(j)),h);return d.exec(a,e,{...f,env:l})}}}function i(a){return{name:k,hidden:!0,factory:b=>{let c=(0,e.createBashToolDefinition)(a.cwd);b.registerTool({...c,execute:(b,c,d,f,g)=>(0,e.createBashToolDefinition)(a.cwd,{commandPrefix:a.settings.getShellCommandPrefix(),operations:h({shellPath:a.settings.getShellPath()})}).execute(b,c,d,f,g)})}}}function j(a){let b=a.extensions.findIndex(a=>a.path===l);if(b<0)return a;let c=a.extensions.slice(0,b).find(a=>a.tools.has("bash"));return c?{...a,extensions:a.extensions.filter((a,c)=>c!==b),errors:a.errors.filter(a=>a.path!==l||a.error!==`Tool "bash" conflicts with ${c.path}`)}:a}d()}catch(a){d(a)}})},81463:(a,b,c)=>{a.exports=c(67313)},82249:(a,b,c)=>{"use strict";c.d(b,{Hh:()=>ba});var d=Symbol("NOT_RESOLVED"),e=Symbol("MERGE_KEY");function f(a,b){return{tagName:a,nodeKind:"scalar",implicit:b.implicit??!1,matchByTagPrefix:b.matchByTagPrefix??!1,implicitFirstChars:b.implicitFirstChars??null,resolve:b.resolve,identify:b.identify??null,represent:b.represent??(a=>String(a)),representTagName:b.representTagName??null}}function g(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"sequence",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addItem:b.addItem,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}function h(a,b){let c=void 0===b.finalize;return{tagName:a,nodeKind:"mapping",implicit:!1,matchByTagPrefix:b.matchByTagPrefix??!1,create:b.create,addPair:b.addPair,has:b.has,keys:b.keys,get:b.get,finalize:b.finalize??(a=>a),carrierIsResult:c,identify:b.identify??null,represent:b.represent??(a=>a),representTagName:b.representTagName??null}}var i=f("tag:yaml.org,2002:str",{resolve:a=>a,identify:a=>"string"==typeof a}),j=["","~","null","Null","NULL"],k=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==j.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),l=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["n"],resolve:(a,b)=>"null"===a||b&&""===a?null:d,identify:a=>null===a,represent:()=>"null"}),m=["","~","null","Null","NULL"],n=f("tag:yaml.org,2002:null",{implicit:!0,implicitFirstChars:["","~","n","N"],resolve:a=>-1!==m.indexOf(a)?null:d,identify:a=>null===a,represent:()=>"null"}),o=["true","True","TRUE"],p=["false","False","FALSE"],q=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","T","f","F"],resolve:a=>-1!==o.indexOf(a)||-1===p.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),r=["true"],s=["false"],t=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["t","f"],resolve:a=>-1!==r.indexOf(a)||-1===s.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),u=["true","True","TRUE","y","Y","yes","Yes","YES","on","On","ON"],v=["false","False","FALSE","n","N","no","No","NO","off","Off","OFF"],w=f("tag:yaml.org,2002:bool",{implicit:!0,implicitFirstChars:["y","Y","n","N","t","T","f","F","o","O"],resolve:a=>-1!==u.indexOf(a)||-1===v.indexOf(a)&&d,identify:a=>"[object Boolean]"===Object.prototype.toString.call(a),represent:a=>a?"true":"false"}),x=RegExp("^(?:0o[0-7]+|0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),y=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),z=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!y.test(a))return d}else if(!x.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),A=RegExp("^-?(?:0|[1-9][0-9]*)$"),B=RegExp("^(?:[-+]?0b[0-1]+|[-+]?0o[0-7]+|[-+]?0x[0-9a-fA-F]+|[-+]?[0-9]+)$"),C=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){let c,e;if(b){if(!B.test(a))return d}else if(!A.test(a))return d;let f=(e=1,(("-"===(c=a)[0]||"+"===c[0])&&("-"===c[0]&&(e=-1),c=c.slice(1)),c.startsWith("0b"))?e*parseInt(c.slice(2),2):c.startsWith("0o")?e*parseInt(c.slice(2),8):c.startsWith("0x")?e*parseInt(c.slice(2),16):e*parseInt(c,10));return Number.isFinite(f)?f:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),D=RegExp("^(?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?0x[0-9a-fA-F_]+|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+|[-+]?(?:0|[1-9][0-9_]*))$"),E=f("tag:yaml.org,2002:int",{implicit:!0,implicitFirstChars:["-","+",..."0123456789"],resolve:function(a){if(!D.test(a))return d;let b=function(a){let b=a.replace(/_/g,""),c=1;if(("-"===b[0]||"+"===b[0])&&("-"===b[0]&&(c=-1),b=b.slice(1)),b.startsWith("0b"))return c*parseInt(b.slice(2),2);if(b.startsWith("0x"))return c*parseInt(b.slice(2),16);if(b.includes(":")){let a=0;for(let c of b.split(":"))a=60*a+Number(c);return c*a}return"0"!==b&&"0"===b[0]?c*parseInt(b,8):c*parseInt(b,10)}(a);return Number.isFinite(b)?b:d},identify:a=>Number.isInteger(a)&&!Object.is(a,-0)&&0>a.toString(10).indexOf("e"),represent:a=>a.toString(10)}),F=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),G=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),H=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!F.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)||G.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),I=RegExp("^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$"),J=RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),K=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-",..."0123456789"],resolve:function(a,b){if(b){if(!J.test(a))return d;let b=a.toLowerCase(),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=c*parseFloat(b);return Number.isFinite(e)?e:d}if(!I.test(a))return d;let c=Number(a);return Number.isFinite(c)?c:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),L=RegExp("^(?:[-+]?(?:(?:[0-9][0-9_]*)?\\.[0-9_]*)(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),M=RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),N=f("tag:yaml.org,2002:float",{implicit:!0,implicitFirstChars:["-","+",".",..."0123456789"],resolve:function(a){if(!L.test(a))return d;let b=a.toLowerCase().replace(/_/g,""),c="-"===b[0]?-1:1;if("+-".includes(b[0])&&(b=b.slice(1)),".inf"===b)return 1===c?1/0:-1/0;if(".nan"===b)return NaN;let e=0;if(b.includes(":")){for(let a of b.split(":"))e=60*e+Number(a);e*=c}else e=c*parseFloat(b);return Number.isFinite(e)||M.test(a)?e:d},identify:a=>"number"==typeof a&&(!Number.isInteger(a)||Object.is(a,-0)||a.toString(10).indexOf("e")>=0),represent:function(a){if(isNaN(a))return".nan";if(a===1/0)return".inf";if(a===-1/0)return"-.inf";if(Object.is(a,-0))return"-0.0";let b=a.toString(10);return/^[-+]?[0-9]+e/.test(b)?b.replace("e",".e"):b}}),O=f("tag:yaml.org,2002:merge",{implicit:!0,implicitFirstChars:["<"],resolve:(a,b)=>"<<"===a||b&&""===a?e:d}),P=/^[A-Za-z0-9+/]*={0,2}$/,Q=f("tag:yaml.org,2002:binary",{resolve:function(a){let b=a.replace(/\s/g,"");if(b.length%4!=0||!P.test(b))return d;let c=atob(b),e=new Uint8Array(c.length);for(let a=0;a<c.length;a++)e[a]=c.charCodeAt(a);return e},identify:a=>"[object Uint8Array]"===Object.prototype.toString.call(a),represent:function(a){let b="";for(let c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return btoa(b)}}),R=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),S=RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function T(a,b,c,d=0,e=0,f=0,g=0){let h=new Date(Date.UTC(a,b,c,d,e,f,g));return h.setUTCFullYear(a,b,c),h}var U=f("tag:yaml.org,2002:timestamp",{implicit:!0,implicitFirstChars:[..."0123456789"],resolve:function(a){let b=R.exec(a);if(null===b&&(b=S.exec(a)),null===b)return d;let c=+b[1],e=b[2]-1,f=+b[3];if(!b[4]){let a=T(c,e,f);return a.getUTCFullYear()!==c||a.getUTCMonth()!==e||a.getUTCDate()!==f?d:a}let g=+b[4],h=+b[5],i=+b[6],j=0;if(g>23||h>59||i>59)return d;if(b[7]){let a=b[7].slice(0,3);for(;a.length<3;)a+="0";j=+a}let k=T(c,e,f,g,h,i,j);if(k.getUTCFullYear()!==c||k.getUTCMonth()!==e||k.getUTCDate()!==f)return d;if(b[9]){let a=+b[10],c=+(b[11]||0);if(a>23||c>59)return d;let e=(60*a+c)*6e4;k.setTime(k.getTime()-("-"===b[9]?-e:e))}return k},identify:a=>a instanceof Date,represent:a=>a.toISOString()}),V=g("tag:yaml.org,2002:seq",{create:()=>[],addItem:(a,b)=>{a.push(b)},identify:Array.isArray});function W(a){if(null===a||"object"!=typeof a||Array.isArray(a))return!1;let b=Object.getPrototypeOf(a);return null===b||b===Object.prototype}function X(a,b){let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);return c}var Y=g("tag:yaml.org,2002:omap",{create:()=>({list:[],seen:new Set}),addItem:(a,b)=>{let c;if(b instanceof Map){if(1!==b.size)return"cannot resolve an ordered map item";c=b.keys().next().value}else{if(!W(b))return"cannot resolve an ordered map item";let a=Object.keys(b);if(1!==a.length)return"cannot resolve an ordered map item";c=a[0]}return a.seen.has(c)?"duplicate key in ordered map":(a.seen.add(c),a.list.push(b),"")},finalize:a=>a.list}),Z=g("tag:yaml.org,2002:pairs",{create:()=>[],addItem:(a,b)=>{if(b instanceof Map)return 1!==b.size?"cannot resolve a pairs item":(a.push(b.entries().next().value),"");if("[object Object]"!==Object.prototype.toString.call(b))return"cannot resolve a pairs item";let c=Object.keys(b);return 1!==c.length?"cannot resolve a pairs item":(a.push([c[0],b[c[0]]]),"")}}),$=h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{if(null!==b&&"object"==typeof b)return"object-based map does not support complex keys";let d=String(b);return"__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,""},has:(a,b)=>(null===b||"object"!=typeof b)&&Object.prototype.hasOwnProperty.call(a,String(b)),keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}}),_=h("tag:yaml.org,2002:set",{create:()=>new Set,identify:a=>a instanceof Set,represent:a=>{let b=new Map;for(let c of a)b.set(c,null);return b},addPair:(a,b,c)=>null!==c?"cannot resolve a set item":(a.add(b),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:()=>null}),aa=class a{tags;implicitScalarTags;implicitScalarByFirstChar;implicitScalarAnyFirstChar;defaultScalarTag;defaultSequenceTag;defaultMappingTag;exact;prefix;constructor(a){const b=function(a){let b=[];for(let c of a){let a=b.length;for(let d=0;d<b.length;d++){let e=b[d];if(e.nodeKind===c.nodeKind&&e.tagName===c.tagName&&e.matchByTagPrefix===c.matchByTagPrefix){a=d;break}}b[a]=c}return b}(a),c=[],d={scalar:Object.create(null),sequence:Object.create(null),mapping:Object.create(null)},e={scalar:[],sequence:[],mapping:[]};for(const a of b){if("scalar"===a.nodeKind&&a.implicit){if(a.matchByTagPrefix)throw Error("Implicit scalar tags cannot match by tag prefix");c.push(a)}switch(a.nodeKind){case"scalar":a.matchByTagPrefix?e.scalar.push(a):d.scalar[a.tagName]=a;break;case"sequence":a.matchByTagPrefix?e.sequence.push(a):d.sequence[a.tagName]=a;break;case"mapping":a.matchByTagPrefix?e.mapping.push(a):d.mapping[a.tagName]=a}}const f=c.filter(a=>null===a.implicitFirstChars),g=new Set;for(const a of c)if(null!==a.implicitFirstChars)for(const b of a.implicitFirstChars)g.add(b);const h=new Map;for(const a of g)h.set(a,c.filter(b=>null===b.implicitFirstChars||-1!==b.implicitFirstChars.indexOf(a)));const i=d.scalar["tag:yaml.org,2002:str"];if(!i)throw Error("schema does not define the default scalar tag (tag:yaml.org,2002:str)");this.tags=b,this.implicitScalarTags=c,this.implicitScalarByFirstChar=h,this.implicitScalarAnyFirstChar=f,this.defaultScalarTag=i,this.defaultSequenceTag=d.sequence["tag:yaml.org,2002:seq"],this.defaultMappingTag=d.mapping["tag:yaml.org,2002:map"],this.exact=d,this.prefix=e}withTags(...b){let c=[];for(let a of b)c=c.concat(a);return new a([...this.tags,...c])}},ab=new aa([i,V,$]);new aa([...ab.tags,l,t,C,K]);var ac=new aa([...ab.tags,k,q,z,H]),ad=new aa([...ab.tags,n,w,E,N,U,O,Q,Y,Z,_]);function ae(a){if(Array.isArray(a)){let b=Array.prototype.slice.call(a);for(let a=0;a<b.length;a++){if(Array.isArray(b[a]))return null;"object"==typeof b[a]&&"[object Object]"===Object.prototype.toString.call(b[a])&&(b[a]="[object Object]")}return String(b)}return"object"==typeof a&&"[object Object]"===Object.prototype.toString.call(a)?"[object Object]":String(a)}h("tag:yaml.org,2002:map",{create:()=>new Map,addPair:(a,b,c)=>(a.set(b,c),""),has:(a,b)=>a.has(b),keys:a=>a.keys(),get:(a,b)=>a.get(b),identify:a=>a instanceof Map||W(a),represent:a=>{if(a instanceof Map)return a;let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b}}),h("tag:yaml.org,2002:map",{create:()=>({}),identify:W,represent:a=>{let b=new Map;for(let c of Object.keys(a))b.set(c,a[c]);return b},addPair:(a,b,c)=>{let d=ae(b);return null===d?"nested arrays are not supported inside keys":("__proto__"===d?Object.defineProperty(a,d,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[d]=c,"")},has:(a,b)=>{let c=ae(b);return null!==c&&Object.prototype.hasOwnProperty.call(a,c)},keys:a=>Object.keys(a),get:(a,b)=>{let c=String(b);return Object.prototype.hasOwnProperty.call(a,c)?a[c]:null}});var af={maxLength:79,indent:1,linesBefore:3,linesAfter:2};function ag(a,b,c,d,e){let f="",g="",h=Math.floor(e/2)-1;return d-b>h&&(b=d-h+(f=" ... ").length),c-d>h&&(c=d+h-(g=" ...").length),{str:f+a.slice(b,c).replace(/\t/g,"→")+g,pos:d-b+f.length}}function ah(a,b){return" ".repeat(Math.max(b-a.length,0))+a}function ai(a,b){let c="";return a.mark?(a.mark.name&&(c+=`in "${a.mark.name}" `),c+=`(${a.mark.line+1}:${a.mark.column+1})`,!b&&a.mark.snippet&&(c+=`
33
+
34
+ ${a.mark.snippet}`),`${a.reason} ${c}`):a.reason}var aj=class extends Error{reason;mark;constructor(a,b){super(),this.name="YAMLException",this.reason=a,this.mark=b,this.message=ai(this,!1),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}toString(a){return`${this.name}: ${ai(this,a)}`}};function ak(a,b,c,d=""){let e=0,f=0;for(let c=0;c<b;c++){let b=a.charCodeAt(c);10===b?(e++,f=c+1):13===b&&(e++,10===a.charCodeAt(c+1)&&c++,f=c+1)}let g={name:d,buffer:a,position:b,line:e,column:b-f};throw g.snippet=function(a){let b;if(!a.buffer)return null;let c={...af,...void 0},d=/\r?\n|\r|\0/g,e=[0],f=[],g=-1;for(;b=d.exec(a.buffer);)f.push(b.index),e.push(b.index+b[0].length),a.position<=b.index&&g<0&&(g=e.length-2);g<0&&(g=e.length-1);let h="",i=Math.min(a.line+c.linesAfter,f.length).toString().length,j=c.maxLength-(c.indent+i+3);for(let b=1;b<=c.linesBefore&&!(g-b<0);b++){let d=ag(a.buffer,e[g-b],f[g-b],a.position-(e[g]-e[g-b]),j);h=`${" ".repeat(c.indent)}${ah((a.line-b+1).toString(),i)} | ${d.str}
35
+ ${h}`}let k=ag(a.buffer,e[g],f[g],a.position,j);h+=`${" ".repeat(c.indent)}${ah((a.line+1).toString(),i)} | ${k.str}
36
+ ${"-".repeat(c.indent+i+3+k.pos)}^
37
+ `;for(let b=1;b<=c.linesAfter&&!(g+b>=f.length);b++){let d=ag(a.buffer,e[g+b],f[g+b],a.position-(e[g]-e[g+b]),j);h+=`${" ".repeat(c.indent)}${ah((a.line+b+1).toString(),i)} | ${d.str}
38
+ `}return h.replace(/\n$/,"")}(g),new aj(c,g)}function al(a){switch(a){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:case 9:return" ";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1b";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"\x85";case 95:return"\xa0";case 76:return"\u2028";case 80:return"\u2029";default:return""}}var am=Array(256),an=Array(256);for(let a=0;a<256;a++)am[a]=+!!al(a),an[a]=al(a);function ao(a,b,c){let d=0;for(;b<c;){let c=a.charCodeAt(b);if(10===c)d++,b++;else if(13===c)d++,b++,10===a.charCodeAt(b)&&b++;else if(32===c||9===c)b++;else break}return{position:b,breaks:d}}function ap(a){return 1===a?" ":"\n".repeat(a-1)}function aq(a,b,c,d,e,f){let g=d<0?0:d,h=a.slice(b,c).replace(/\r\n?/g,"\n"),i=""===h?[]:(h.endsWith("\n")?h.slice(0,-1):h).split("\n"),j="",k=!1,l=0,m=!1;for(let a of i){let b=0;for(;b<g&&32===a.charCodeAt(b);)b++;if(d<0||b>=a.length){l++;continue}let c=a.slice(g),e=c.charCodeAt(0);f?32===e||9===e?(m=!0,j+="\n".repeat(k?1+l:l)):m?(m=!1,j+="\n".repeat(l+1)):0===l?k&&(j+=" "):j+="\n".repeat(l):j+="\n".repeat(k?1+l:l),j+=c,k=!0,l=0}return 3===e?j+="\n".repeat(k?1+l:l):2!==e&&k&&(j+="\n"),j}var ar=Object.assign(Object.create(null),{"!":"!","!!":"tag:yaml.org,2002:"});function as(a,b){if(a.startsWith("!<")&&a.endsWith(">"))return decodeURIComponent(a.slice(2,-1));let c=a.indexOf("!",1),d=-1===c?"!":a.slice(0,c+1);return decodeURIComponent(b?.[d]??ar[d]??d)+decodeURIComponent(a.slice(d.length))}var at={filename:"",schema:ac,json:!1,maxTotalMergeKeys:1e4,maxAliases:-1};function au(a,b){ak(a.source,a.position,b,a.filename)}function av(a,b,c,d){try{return c.finalize(d)}catch(c){if(c instanceof aj)throw c;ak(a.source,b,c instanceof Error?c.message:String(c),a.filename)}}function aw(a,b,c){let d=a[c];if(d)return d;for(let a of b)if(c.startsWith(a.tagName))return a}function ax(a,b,c,d,e,f){let g=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),h=""===g||"!"===g?e:as(g,a.tagHandlers);return{tagName:h,tag:function(a,b,c,d,e){let f=aw(b,c,d);if(f)return f;au(a,`unknown ${e} tag !<${d}>`)}(a,c,d,h,f)}}function ay(a){return"mapping"===a.nodeKind}function az(a,b,c,d){for(let e of d.keys(c)){if(-1!==a.maxTotalMergeKeys&&++a.totalMergeKeys>a.maxTotalMergeKeys&&au(a,`merge keys exceeded maxTotalMergeKeys (${a.maxTotalMergeKeys})`),b.tag.has(b.value,e))continue;let f=b.tag.addPair(b.value,e,d.get(c,e));f&&au(a,f),(b.overridable??=new Set).add(e)}}function aA(a,b,c){let d=a.frames[a.frames.length-1];if("document"===d.kind)d.value=b,d.hasValue=!0;else if("sequence"===d.kind){d.merge&&!ay(c)&&au(a,"cannot merge mappings; the provided source object is unacceptable");let e=d.tag.addItem(d.value,b,d.index++);e&&au(a,e)}else if(d.hasKey){let f=d.key;d.key=void 0,d.hasKey=!1,function(a,b,c,d,f){if(a.position=b.keyPosition,c===e){var g=a,h=b,i=d,j=f;if(g.position=h.keyPosition,ay(j))az(g,h,i,j);else if("sequence"===j.nodeKind&&Array.isArray(i))for(let a of i)az(g,h,a,h.tag);else au(g,"cannot merge mappings; the provided source object is unacceptable");return}!a.json&&b.tag.has(b.value,c)&&!b.overridable?.has(c)&&au(a,"duplicated mapping key");let k=b.tag.addPair(b.value,c,d);k&&au(a,k),b.overridable?.delete(c)}(a,d,f,b,c)}else d.key=b,d.keyPosition=a.position,d.hasKey=!0}function aB(a,b,c,d,e){if(-1!==b.anchorStart){let f={value:c,tag:d,isValueFinal:e};return a.anchors.set(a.source.slice(b.anchorStart,b.anchorEnd),f),f}return null}var aC=Object.prototype.hasOwnProperty,aD=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,aE=/[,\[\]{}]/,aF=/^(?:!|!!|![0-9A-Za-z-]+!)$/,aG=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$,_.!~*'()\[\]])`,aH=String.raw`(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\-#;/?:@&=+$.~*'()_])`,aI=RegExp(`^(?:${aG})*$`),aJ=RegExp(`^(?:${aH})+$`),aK=RegExp(`^(?:!(?:${aG})*|${aH}(?:${aG})*)$`),aL={filename:"",maxDepth:100};function aM(a,b,c,d,e,f,g){a.events.push({type:2,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aN(a,b,c,d,e,f,g){a.events.push({type:3,start:b,anchorStart:c,anchorEnd:d,tagStart:e,tagEnd:f,style:g})}function aO(a,b){a.events.splice(b.eventsLength,0,{type:3,start:b.position,anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1,style:2})}function aP(a,b,c,d,e,f,g,h,i=1,j=-1,k=!1){a.events.push({type:4,valueStart:b,valueEnd:c,anchorStart:d,anchorEnd:e,tagStart:f,tagEnd:g,style:h,chomping:i,indent:j,fast:k})}function aQ(a){a.events.push({type:6})}function aR(a){aP(a,-1,-1,-1,-1,-1,-1,1)}function aS(){return{anchorStart:-1,anchorEnd:-1,tagStart:-1,tagEnd:-1}}function aT(a){return{position:a.position,line:a.line,lineStart:a.lineStart,lineIndent:a.lineIndent,firstTabInLine:a.firstTabInLine,eventsLength:a.events.length}}function aU(a,b){a.position=b.position,a.line=b.line,a.lineStart=b.lineStart,a.lineIndent=b.lineIndent,a.firstTabInLine=b.firstTabInLine,a.events.length=b.eventsLength}function aV(a,b){ak(a.input.slice(0,a.length),a.position,b,a.filename)}function aW(a){return 10===a||13===a}function aX(a){return 9===a||32===a}function aY(a){return aX(a)||aW(a)}function aZ(a){return 0===a||aY(a)}function a$(a){return 44===a||91===a||93===a||123===a||125===a}function a_(a){10===a.input.charCodeAt(a.position)?a.position++:(a.position++,10===a.input.charCodeAt(a.position)&&a.position++),a.line++,a.lineStart=a.position,a.lineIndent=0,a.firstTabInLine=-1}function a0(a,b){let c=0,d=a.input.charCodeAt(a.position),e=a.position===a.lineStart||aY(a.input.charCodeAt(a.position-1));for(;0!==d;){for(;aX(d);)e=!0,9===d&&-1===a.firstTabInLine&&(a.firstTabInLine=a.position),d=a.input.charCodeAt(++a.position);if(b&&e&&35===d)do d=a.input.charCodeAt(++a.position);while(!aW(d)&&0!==d);if(!aW(d))break;for(a_(a),c++,e=!0,d=a.input.charCodeAt(a.position);32===d;)a.lineIndent++,d=a.input.charCodeAt(++a.position)}return c}function a1(a,b=a.position){let c=a.input.charCodeAt(b);if((45===c||46===c)&&c===a.input.charCodeAt(b+1)&&c===a.input.charCodeAt(b+2)){let c=a.input.charCodeAt(b+3);return 0===c||aY(c)}return!1}function a2(a){let b=a.input.charCodeAt(a.position);for(;0!==b&&!aW(b);)b=a.input.charCodeAt(++a.position)}function a3(a,b,c){aD.test(a.input.slice(b,c))&&aV(a,"the stream contains non-printable characters")}function a4(a,b){a0(a,!1),a.lineIndent<b&&aV(a,"deficient indentation")}function a5(a,b){let c=a.line;a0(a,!0),(a.line>c&&a.lineIndent<b||-1!==a.firstTabInLine&&a.lineIndent<b)&&aV(a,"deficient indentation")}function a6(a,b,c){if(-1!==a.firstTabInLine||45!==a.input.charCodeAt(a.position)||!aZ(a.input.charCodeAt(a.position+1)))return!1;for(aM(a,a.position,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,1);45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1));){-1!==a.firstTabInLine&&(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let c=a.line;a.position++;let d=a0(a,!0)>0;if(-1!==a.firstTabInLine&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry"),d&&a.lineIndent<=b?aR(a):a8(a,b,3,!1,!0),a0(a,!0),a.lineIndent<b||a.position>=a.length)break;a.lineIndent>b&&aV(a,"bad indentation of a sequence entry"),a.line===c&&45===a.input.charCodeAt(a.position)&&aZ(a.input.charCodeAt(a.position+1))&&aV(a,"bad indentation of a sequence entry")}return aQ(a),!0}function a7(a,b,c,d){let e=!1,f=!1,g=!1,h=!1;if(-1!==a.firstTabInLine)return!1;let i=a.input.charCodeAt(a.position);for(;0!==i;){e||-1===a.firstTabInLine||(a.position=a.firstTabInLine,aV(a,"tab characters must not be used in indentation"));let j=a.input.charCodeAt(a.position+1),k=a.line;if((63===i||58===i)&&aZ(j))g||(aN(a,a.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0),63===i?(e&&aR(a),f=!0,e=!0):(e||(aR(a),f=!0),e=!1),a.position+=1,h=!0;else{e&&(aR(a),e=!1);let b=aT(a);if(!a8(a,c,2,!1,!0))break;if(a.line===k){for(i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);if(58===i){if(aZ(i=a.input.charCodeAt(++a.position))||aV(a,"a whitespace character is expected after the key-value separator within a block mapping"),!g){for(aU(a,b),aN(a,b.position,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1),g=!0,a8(a,c,2,!1,!0),i=a.input.charCodeAt(a.position);aX(i);)i=a.input.charCodeAt(++a.position);a.position++}f=!0,e=!1,h=!1}else if(f)aV(a,"expected ':' after a mapping key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}else if(f)aV(a,"can not read a block mapping entry; a multiline key may not be an implicit key");else{if(-1!==d.anchorStart||-1!==d.tagStart)return aU(a,b),!1;return!0}}if(a8(a,b,4,!0,h)&&(h=!1),!e&&h&&(aR(a),h=!1),a0(a,!0),i=a.input.charCodeAt(a.position),(a.line===k||a.lineIndent>b)&&0!==i)aV(a,"bad indentation of a mapping entry");else if(a.lineIndent<b)break}return!!f&&(e&&aR(a),g&&aQ(a),!0)}function a8(a,b,c,d,e,f=!0){a.depth>=a.maxDepth&&aV(a,`nesting exceeded maxDepth (${a.maxDepth})`),a.depth++;let g=1,h=!1,i=!1,j=null,k=aS(),l=4===c||3===c,m=l,n=l;if(d&&a0(a,!0)&&(h=!0,g=a.lineIndent>b?1:a.lineIndent===b?0:-1),1===g)for(;;){let d=a.input.charCodeAt(a.position),e=aT(a);if(h&&1!==g&&(33===d||38===d))break;if(h&&n&&(-1!==k.tagStart||-1!==k.anchorStart)&&(33===d||38===d)){let c=aT(a),d=b+1;if(a7(a,a.position-a.lineStart,d,k)&&a.events[c.eventsLength]?.type===3)return a.depth--,!0;aU(a,c)}if(h&&(33===d&&-1!==k.tagStart||38===d&&-1!==k.anchorStart)||!function(a,b,c){let d;if(33!==a.input.charCodeAt(a.position))return!1;-1!==b.tagStart&&aV(a,"duplication of a tag property");let e=a.position,f=!1,g=!1,h="!",i=a.input.charCodeAt(++a.position);60===i?(f=!0,i=a.input.charCodeAt(++a.position)):33===i&&(g=!0,h="!!",i=a.input.charCodeAt(++a.position));let j=a.position;if(f){for(;0!==i&&62!==i;)i=a.input.charCodeAt(++a.position);62!==i&&aV(a,"unexpected end of the stream within a verbatim tag"),d=a.input.slice(j,a.position),a.position++}else{for(;0!==i&&!aY(i)&&!(c&&a$(i));)33===i&&(g?aV(a,"tag suffix cannot contain exclamation marks"):(h=a.input.slice(j-1,a.position+1),aF.test(h)||aV(a,"named tag handle cannot contain such characters"),g=!0,j=a.position+1)),i=a.input.charCodeAt(++a.position);d=a.input.slice(j,a.position),aE.test(d)&&aV(a,"tag suffix cannot contain flow indicator characters")}return!d||(f?aI.test(d):aJ.test(d))||aV(a,`tag name cannot contain such characters: ${d}`),f||"!"===h||"!!"===h||aC.call(a.tagHandlers,h)||aV(a,`undeclared tag handle "${h}"`),b.tagStart=e,b.tagEnd=a.position,!0}(a,k,1===c)&&!function(a,b){if(38!==a.input.charCodeAt(a.position))return!1;-1!==b.anchorStart&&aV(a,"duplication of an anchor property"),a.position++;let c=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===c&&aV(a,"name of an anchor node must contain at least one character"),b.anchorStart=c,b.anchorEnd=a.position,!0}(a,k))break;null===j&&(j=e),a0(a,!0)?(h=!0,m=n,g=a.lineIndent>b?1:a.lineIndent===b?0:-1):m=!1}if(m&&(m=h||e),1===g||4===c){let d=1===c||2===c?b:b+1,e=a.position-a.lineStart;if(1===g)if(m&&(a6(a,e,k)||a7(a,e,d,k))||function(a,b,c){let d=a.input.charCodeAt(a.position),e=123===d,f=a.position,g=!0;if(91!==d&&123!==d)return!1;let h=e?125:93;for(e?aN(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2):aM(a,f,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2),a.position++;0!==a.input.charCodeAt(a.position);){a5(a,b);let c=a.input.charCodeAt(a.position);if(c===h)return a.position++,aQ(a),!0;g?44===c&&aV(a,"expected the node content, but found ','"):aV(a,"missed comma between flow collection entries");let d=!1,f=!1;63===c&&aY(a.input.charCodeAt(a.position+1))&&(d=f=!0,a.position+=1,a5(a,b));let i=a.line,j=aT(a),k=a8(a,b,1,!1,!0);a5(a,b),c=a.input.charCodeAt(a.position),(e||f||a.line===i)&&58===c?(d=!0,a.position++,a5(a,b),e||aO(a,j),k||aR(a),a8(a,b,1,!1,!0)||aR(a),a5(a,b),e||aQ(a)):e&&d?(k||aR(a),aR(a)):e?aR(a):d&&(aO(a,j),k||aR(a),aR(a),aQ(a)),44===(c=a.input.charCodeAt(a.position))?(g=!0,a.position++):g=!1}aV(a,"unexpected end of the stream within a flow collection")}(a,d,k))i=!0;else{let b=a.input.charCodeAt(a.position);if(null!==j&&f&&n&&!m&&124!==b&&62!==b){let b=aT(a),c=j.position-j.lineStart;aU(a,j),a7(a,c,d,aS())&&a.events[b.eventsLength]?.type===3?i=!0:aU(a,b)}!i&&(l&&function(a,b,c){let d=a.input.charCodeAt(a.position),e=1,f=-1,g=!1;if(124!==d&&62!==d)return!1;for(a.position++;0!==a.input.charCodeAt(a.position);){let c=a.input.charCodeAt(a.position),d=c>=48&&c<=57?c-48:-1;if(43===c||45===c)1!==e&&aV(a,"repeat of a chomping mode identifier"),e=43===c?3:2,a.position++;else if(d>=0)0===d&&aV(a,"bad explicit indentation width of a block scalar; it cannot be less than one"),g&&aV(a,"repeat of an indentation width identifier"),f=b+d-1,g=!0,a.position++;else break}let h=!1;for(;aX(a.input.charCodeAt(a.position));)h=!0,a.position++;h&&35===a.input.charCodeAt(a.position)&&a2(a),aW(a.input.charCodeAt(a.position))?a_(a):0!==a.input.charCodeAt(a.position)&&aV(a,"a line break is expected");let i=g?f:-1,j=0,k=a.position,l=a.position;for(;0!==a.input.charCodeAt(a.position);){let c=a.position,d=0;for(;32===a.input.charCodeAt(c+d);)d++;let e=a.input.charCodeAt(c+d);if(0===e){i>=0?d>i&&(l=c+d):d>0&&(l=c+d);break}if(c===a.lineStart&&a1(a,c))break;if(!g&&-1===i&&aW(e)&&(j=Math.max(j,d)),g||-1!==i||aW(e)||(9===e&&d<b&&(a.position=c+d,aV(a,"tab characters must not be used in indentation")),d<j&&(a.position=c+d,aV(a,"bad indentation of a mapping entry"))),-1===i&&0!==e&&!aW(e)&&d<b){a.lineIndent=d,a.position=c+d;break}g||0===e||aW(e)||-1!==i||(i=d);let f=-1===i?b+1:i;if(0!==e&&!aW(e)&&d<f){a.lineIndent=d,a.position=c+d;break}a2(a),l=a.position,aW(a.input.charCodeAt(a.position))&&(a_(a),l=a.position)}return a3(a,k,l),aP(a,k,l,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,124===d?4:5,e,i),!0}(a,d,k)||function(a,b,c){if(39!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(39===f){if(39===a.input.charCodeAt(a.position+1)){e=!1,a.position+=2;continue}let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,2,1,-1,e),!0}aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a single quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a single quoted scalar")}(a,d,k)||function(a,b,c){if(34!==a.input.charCodeAt(a.position))return!1;a.position++;let d=a.position,e=!0;for(;0!==a.input.charCodeAt(a.position);){let f=a.input.charCodeAt(a.position);if(34===f){let b=a.position;return a.position++,aP(a,d,b,c.anchorStart,c.anchorEnd,c.tagStart,c.tagEnd,3,1,-1,e),!0}if(92===f){e=!1;let c=a.input.charCodeAt(++a.position);if(aW(c))a4(a,b);else if(48===c||97===c||98===c||116===c||9===c||110===c||118===c||102===c||114===c||101===c||32===c||34===c||47===c||92===c||78===c||95===c||76===c||80===c)a.position++;else{let b=120===c?2:117===c?4:8*(85===c);for(0===b&&aV(a,"unknown escape sequence");b-- >0;)a.position++,0>function(a){if(a>=48&&a<=57)return a-48;let b=32|a;return b>=97&&b<=102?b-97+10:-1}(a.input.charCodeAt(a.position))&&aV(a,"expected hexadecimal character");a.position++}}else aW(f)?(e=!1,a4(a,b)):a.position===a.lineStart&&a1(a)?aV(a,"unexpected end of the document within a double quoted scalar"):9!==f&&f<32?aV(a,"expected valid JSON character"):a.position++}aV(a,"unexpected end of the stream within a double quoted scalar")}(a,d,k)||function(a,b){var c;if(42!==a.input.charCodeAt(a.position))return!1;(-1!==b.anchorStart||-1!==b.tagStart)&&aV(a,"alias node should not have any properties"),a.position++;let d=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position))&&!a$(a.input.charCodeAt(a.position));)a.position++;return a.position===d&&aV(a,"name of an alias node must contain at least one character"),c=a.position,a.events.push({type:5,anchorStart:d,anchorEnd:c}),!0}(a,k)||function(a,b,c,d){if(!function(a,b){let c=a.input.charCodeAt(a.position),d=1===b;if(0===c||aY(c)||35===c||38===c||42===c||33===c||124===c||62===c||39===c||34===c||37===c||64===c||96===c||d&&a$(c))return!1;if(63===c||45===c){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||d&&a$(b))return!1}return!0}(a,c))return!1;let e=a.position,f=a.position,g=a.input.charCodeAt(a.position),h=1===c,i=!1;for(;0!==g&&!(a.position===a.lineStart&&a1(a));){if(58===g){let b=a.input.charCodeAt(a.position+1);if(aZ(b)||h&&a$(b))break}else if(35===g){if(aY(a.input.charCodeAt(a.position-1)))break}else if(h&&a$(g))break;else if(aW(g)){let c=a.position,d=a.line,e=a.lineStart,f=a.lineIndent;if(a0(a,!1),a.lineIndent>=b){i=!0,g=a.input.charCodeAt(a.position);continue}a.position=c,a.line=d,a.lineStart=e,a.lineIndent=f;break}aX(g)||(f=a.position+1),g=a.input.charCodeAt(++a.position)}return f!==e&&(a3(a,e,f),aP(a,e,f,d.anchorStart,d.anchorEnd,d.tagStart,d.tagEnd,1,1,-1,!i),!0)}(a,d,c,k))&&(i=!0)}else 0===g&&(i=m&&a6(a,e,k))}return l=l&&!i,!i&&(-1!==k.anchorStart||-1!==k.tagStart||l)&&(aP(a,-1,-1,k.anchorStart,k.anchorEnd,k.tagStart,k.tagEnd,1),i=!0),a.depth--,i||-1!==k.anchorStart||-1!==k.tagStart}var a9={...aL,...at};function ba(a,b){let c=function(a,b={}){let c={...a9,...b},f=String(a),g=Object.keys(aL),h=Object.keys(at);return function(a,b){let c={...at,...b,events:a,documents:[],eventIndex:0,position:0,frames:[],anchors:new Map,tagHandlers:Object.create(null),totalMergeKeys:0,aliasCount:0};for(;c.eventIndex<c.events.length;){let a=c.events[c.eventIndex++];switch(c.position="tagStart"in a&&-1!==a.tagStart?a.tagStart:"anchorStart"in a&&-1!==a.anchorStart?a.anchorStart:"valueStart"in a&&-1!==a.valueStart?a.valueStart:"start"in a?a.start:0,a.type){case 1:for(let b of(c.anchors=new Map,c.aliasCount=0,c.tagHandlers=Object.create(null),a.directives))"tag"===b.kind&&(c.tagHandlers[b.handle]=b.prefix);c.frames.push({kind:"document",position:c.position,value:void 0,hasValue:!1});break;case 4:{let{value:b,tag:e}=function(a,b){let c=function(a,b){if(-1===b.valueStart)return"";let{valueStart:c,valueEnd:d}=b;if(b.fast)return a.slice(c,d);switch(b.style){case 2:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(39===b)d+=a.slice(f,e)+"'",e+=2,f=g=e;else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 3:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(92===b){d+=a.slice(f,e),e++;let b=a.charCodeAt(e);if(10===b||13===b)e=ao(a,e,c).position;else if(b<256&&am[b])d+=an[b],e++;else{var h,i;let c=120===b?2:117===b?4:8,f=0;for(;c>0;c--)e++,f=(f<<4)+((h=a.charCodeAt(e))>=48&&h<=57?h-48:(32|h)-97+10);d+=(i=f)<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320),e++}f=g=e}else if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,c)}(a,c,d);case 4:return aq(a,c,d,b.indent,b.chomping,!1);case 5:return aq(a,c,d,b.indent,b.chomping,!0);default:return function(a,b,c){let d="",e=b,f=b,g=b;for(;e<c;){let b=a.charCodeAt(e);if(10===b||13===b){d+=a.slice(f,g);let b=ao(a,e,c);d+=ap(b.breaks),e=f=g=b.position}else e++,32!==b&&9!==b&&(g=e)}return d+a.slice(f,g)}(a,c,d)}}(a.source,b),e=-1===b.tagStart?"":a.source.slice(b.tagStart,b.tagEnd),f=a.schema.defaultScalarTag;if(""!==e){if("!"===e)return{value:c,tag:f};let b=as(e,a.tagHandlers),g=aw(a.schema.exact.scalar,a.schema.prefix.scalar,b);if(g){let e=g.resolve(c,!0,b);return e===d&&au(a,`cannot resolve a node with !<${b}> explicit tag`),{value:e,tag:g}}let h=aw(a.schema.exact.mapping,a.schema.prefix.mapping,b)??aw(a.schema.exact.sequence,a.schema.prefix.sequence,b);if(h){""!==c&&au(a,`cannot resolve a node with !<${b}> explicit tag`);let d=h.create(b);return{value:h.carrierIsResult?d:av(a,a.position,h,d),tag:h}}au(a,`unknown scalar tag !<${b}>`)}if(1===b.style)for(let b of a.schema.implicitScalarByFirstChar.get(c.charAt(0))??a.schema.implicitScalarAnyFirstChar){let a=b.resolve(c,!1,b.tagName);if(a!==d)return{value:a,tag:b}}return{value:f.resolve(c,!1,f.tagName),tag:f}}(c,a);aB(c,a,b,e,!0),aA(c,b,e);break}case 2:{let b=ax(c,a,c.schema.exact.sequence,c.schema.prefix.sequence,"tag:yaml.org,2002:seq","sequence"),d=b.tag.create(b.tagName),f=aB(c,a,d,b.tag,b.tag.carrierIsResult),g=c.frames[c.frames.length-1],h=void 0!==g&&"mapping"===g.kind&&g.hasKey&&g.key===e;c.frames.push({kind:"sequence",position:c.position,value:d,tag:b.tag,anchor:f,index:0,merge:h});break}case 3:{let b=ax(c,a,c.schema.exact.mapping,c.schema.prefix.mapping,"tag:yaml.org,2002:map","mapping"),d=b.tag.create(b.tagName),e=aB(c,a,d,b.tag,b.tag.carrierIsResult);c.frames.push({kind:"mapping",position:c.position,value:d,tag:b.tag,anchor:e,key:void 0,keyPosition:c.position,hasKey:!1,overridable:null});break}case 5:{-1!==c.maxAliases&&++c.aliasCount>c.maxAliases&&au(c,`aliases exceeded maxAliases (${c.maxAliases})`);let b=c.source.slice(a.anchorStart,a.anchorEnd),d=c.anchors.get(b);d||au(c,`unidentified alias "${b}"`),d.isValueFinal||au(c,`recursive alias "${b}" is not supported for tag ${d.tag.tagName} because it uses finalize()`),aA(c,d.value,d.tag);break}case 6:{let a=c.frames.pop();if("mapping"===a.kind&&a.hasKey&&(c.position=a.keyPosition,au(c,"incomplete mapping pair in event stream")),"document"===a.kind)c.documents.push(a.value);else{let b=a.tag.carrierIsResult?a.value:av(c,a.position,a.tag,a.value);a.anchor&&(a.anchor.value=b,a.anchor.isValueFinal=!0),aA(c,b,a.tag)}}}}return c.documents}(function(a,b){let c=a.length,d={...aL,...b,input:`${a}\0`,length:c,position:0,line:0,lineStart:0,lineIndent:0,firstTabInLine:-1,depth:0,directives:[],tagHandlers:Object.create(null),events:[]},e=a.indexOf("\0");for(-1!==e&&ak(a,e,"null byte is not allowed in input",d.filename),65279===d.input.charCodeAt(d.position)&&d.position++;d.position<d.length&&(a0(d,!0),!(d.position>=d.length));){let a=d.position;!function(a){var b;a.directives=[],a.tagHandlers=Object.create(null);let c=!1;for(a0(a,!0);function(a){if(a.lineIndent>0||37!==a.input.charCodeAt(a.position))return!1;a.position++;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;let c=a.input.slice(b,a.position),d=[];for(0===c.length&&aV(a,"directive name must not be less than one character in length");0!==a.input.charCodeAt(a.position)&&!aW(a.input.charCodeAt(a.position));){for(;aX(a.input.charCodeAt(a.position));)a.position++;if(35===a.input.charCodeAt(a.position)||aW(a.input.charCodeAt(a.position))||0===a.input.charCodeAt(a.position))break;let b=a.position;for(;0!==a.input.charCodeAt(a.position)&&!aY(a.input.charCodeAt(a.position));)a.position++;d.push(a.input.slice(b,a.position))}if(aW(a.input.charCodeAt(a.position))&&a_(a),"YAML"===c){a.directives.some(a=>"yaml"===a.kind)&&aV(a,"duplication of %YAML directive"),1!==d.length&&aV(a,"YAML directive accepts exactly one argument");let b=/^([0-9]+)\.([0-9]+)$/.exec(d[0]);null===b&&aV(a,"ill-formed argument of the YAML directive"),1!==parseInt(b[1],10)&&aV(a,"unacceptable YAML version of the document"),a.directives.push({kind:"yaml",version:d[0]})}else if("TAG"===c){2!==d.length&&aV(a,"TAG directive accepts exactly two arguments");let[b,c]=d;aF.test(b)||aV(a,"ill-formed tag handle (first argument) of the TAG directive"),aC.call(a.tagHandlers,b)&&aV(a,`there is a previously declared suffix for "${b}" tag handle`),aK.test(c)||aV(a,"ill-formed tag prefix (second argument) of the TAG directive"),a.tagHandlers[b]=c,a.directives.push({kind:"tag",handle:b,prefix:c})}return!0}(a);)c=!0,a0(a,!0);let d=!1,e=!1,f=!0;if(0===a.lineIndent&&45===a.input.charCodeAt(a.position)&&45===a.input.charCodeAt(a.position+1)&&45===a.input.charCodeAt(a.position+2)&&aZ(a.input.charCodeAt(a.position+3))){d=!0;let b=a.line;a.position+=3,a0(a,!0),f=a.line>b}else c&&aV(a,"directives end mark is expected");let g=a.events.length;if(!d&&a.position===a.lineStart&&46===a.input.charCodeAt(a.position)&&a1(a)){a.position+=3,a0(a,!0);return}if(b=d,a.events.push({type:1,explicitStart:b,explicitEnd:!1,directives:a.directives}),a8(a,a.lineIndent-1,4,!1,f,f)||aR(a),a0(a,!0),a.position===a.lineStart&&a1(a)&&(e=46===a.input.charCodeAt(a.position))){let b=a.line;a.position+=3,a0(a,!0),a.line===b&&a.position<a.length&&aV(a,"end of the stream or a document separator is expected")}let h=a.events[g];h?.type===1&&(h.explicitEnd=e),aQ(a),e||!(a.position<a.length)||a.position===a.lineStart&&a1(a)||aV(a,"end of the stream or a document separator is expected")}(d),d.position===a&&aV(d,"can not read a document")}return d.events}(f,X(c,g)),{...X(c,h),source:f})}(a,b);if(0===c.length)throw new aj("expected a document, but the input is empty");if(1===c.length)return c[0];throw new aj("expected a single document in the stream, but found more")}Symbol("INVALID"),Symbol("visit:break"),Symbol("visit:skip");var bb={};bb[0]="\\0",bb[7]="\\a",bb[8]="\\b",bb[9]="\\t",bb[10]="\\n",bb[11]="\\v",bb[12]="\\f",bb[13]="\\r",bb[27]="\\e",bb[34]='\\"',bb[92]="\\\\",bb[133]="\\N",bb[160]="\\_",bb[8232]="\\L",bb[8233]="\\P",ad.withTags({...E,resolve:(a,b,c)=>{let e=E.resolve(a,b,c);return e===d?z.resolve(a,b,c):e}},{...N,resolve:(a,b,c)=>{let e=N.resolve(a,b,c);return e===d?H.resolve(a,b,c):e}})},83739:(a,b,c)=>{"use strict";c.d(b,{o:()=>h,x:()=>i});var d=c(29021),e=c(33873),f=c.n(e),g=c(15011);function h(a,b){for(let c of b){let b=(0,g.uK)(a)||(0,g.uK)(c),d=b?f().win32:f(),e=b?"\\":f().sep,h=d.resolve(a),i=d.resolve(c),j=b?h.toLowerCase():h,k=b?i.toLowerCase():i,l=k.endsWith(e)?k:k+e;if(j===k||j.startsWith(l))return!0}return!1}function i(a,b){let c;try{c=(0,d.realpathSync)(a)}catch{return!1}let e=new Set;for(let a of b)try{e.add((0,d.realpathSync)(a))}catch{}return h(c,e)}},84851:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{s:()=>t});var e=c(75430),f=c(8084),g=c(41035),h=c(35015),i=c(16983),j=c(15253),k=c(5564),l=c(70274),m=c(55950),n=c(88002),o=c(77598),p=a([e,f,g,j,k,l]);[e,f,g,j,k,l]=p.then?(await p)():p;let u=new Set(["off","minimal","low","medium","high","xhigh","max"]);function q(){return globalThis.__piSubagentRuns||(globalThis.__piSubagentRuns=new Map),globalThis.__piSubagentRuns}function r(){return globalThis.__piSubagentQueue||(globalThis.__piSubagentQueue=new m.V),globalThis.__piSubagentQueue}async function s(a,b){if(b)try{await (0,n.IL)(a,b.path);return}catch(a){return`Worktree retained at ${b.path}: ${a instanceof Error?a.message:String(a)}`}}function t(a){async function b(b){let d;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let e=b.parentContext.sessionManager.getSessionId(),f=await c(b.sessionId);if(!f)throw Error(`Subagent not found: ${b.sessionId}`);if(f.parentSessionId!==e)throw Error("Subagent does not belong to this parent session");if("running"===f.status||"queued"===f.status)throw Error("Subagent is already running");let h=a.getSession(e);if(!h?.isAlive())throw Error("Parent session is no longer available");let i=f.sessionPath||await a.resolveSessionPath(b.sessionId);if(!i)throw Error(`Subagent session file not found: ${b.sessionId}`);let j=a.getSession(b.sessionId);if(j?.isAlive()||(j=await a.reopenSession(b.sessionId,i)),!j.isAlive())throw Error("Subagent session is no longer available");if(j.isRunning())throw Error("Subagent is already running");let k=b.runInBackground??f.runInBackground,m={...f,parentToolCallId:b.parentToolCallId,task:b.task,description:b.description.trim()||f.description,runInBackground:k,status:"queued",completedAt:void 0,result:void 0,error:void 0},n=j.inner.sessionManager,o=new Promise(a=>{d=a}),p={run:m,completion:o,abortRequested:!1};q().set(b.sessionId,p),b.onUpdate?.(m),a.invalidateSessionList();let s=()=>{p.abortRequested=!0,"queued"===p.run.status?p.cancelQueued?.():j.inner.abort()};k||b.signal?.addEventListener("abort",s,{once:!0});let t=async()=>{let c;if(p.abortRequested){let a={...m,status:"aborted",completedAt:new Date().toISOString()};return n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:a.completedAt}),p.run=a,q().delete(b.sessionId),d(a),a}p.run={...p.run,status:"running"},n.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(p.run);try{await j.inner.prompt(b.task,{source:"rpc"});let a=j.inner.getLastAssistantText()?.trim();c={...m,status:p.abortRequested?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(a){c={...m,status:p.abortRequested||b.signal?.aborted?"aborted":"failed",completedAt:new Date().toISOString(),...!p.abortRequested&&!b.signal?.aborted?{error:a instanceof Error?a.message:String(a)}:{}}}finally{b.signal?.removeEventListener("abort",s)}return n.appendCustomEntry(g.pv,{version:1,status:c.status,completedAt:c.completedAt,...c.result?{result:c.result}:{},...c.error?{error:c.error}:{}}),p.run=c,b.onUpdate?.(c),q().delete(b.sessionId),a.invalidateSessionList(),c},u=r().enqueue(e,(0,l.hd)().maxConcurrent,t,c=>{"queued"===c&&n.appendCustomEntry(g.o2,{version:1,status:"queued"}),p.run={...p.run,status:c},b.onUpdate?.(p.run),a.invalidateSessionList()},()=>{if("queued"!==p.run.status)return;let c={...m,status:"aborted",completedAt:new Date().toISOString()};n.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:c.completedAt}),p.run=c,b.onUpdate?.(c),q().delete(b.sessionId),a.invalidateSessionList(),d(c)});return p.cancelQueued=u.cancel,u.promise.then(d,a=>d({...m,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})),{run:p.run,completion:o}}async function c(b){let c=q().get(b);if(c)return c.run;let d=a.getSession(b);if(d?.isAlive()){let a=(0,g.$u)(d.inner.sessionManager.getEntries(),b,d.sessionFile);if(a&&d.isRunning())return{...a,status:"running"};if(a)return a}let f=await a.resolveSessionPath(b);if(!f)return null;let h=e.SessionManager.open(f);return(0,g.$u)(h.getEntries(),b,f)}async function d(b,c){let d=a.getSession(b);if(!d?.isAlive()||!d.isRunning())throw Error("Subagent is not running");if(!c.trim())throw Error("Steering message is required");await d.inner.steer(c.trim())}async function m(b){let c=a.getSession(b.parentSessionId);if(!c?.isAlive()){let d=await a.resolveSessionPath(b.parentSessionId);if(!d)throw Error(`Parent session not found: ${b.parentSessionId}`);c=await a.reopenSession(b.parentSessionId,d)}if(await c.waitUntilReady(),!c.isAlive())throw Error(`Parent session is no longer available: ${b.parentSessionId}`);await c.inner.sendCustomMessage({customType:"pi-web:subagent-notification",content:(0,f.J8)(b),display:!0,details:(0,f.o2)(b)},{deliverAs:"followUp",triggerTurn:!0})}async function p(b){let c=a.getSession(b),d=q().get(b);if(d?.run.status==="queued"){if(d.abortRequested=!0,!d.cancelQueued?.())throw Error("Subagent is no longer queued");return}if(!c?.isAlive()||!c.isRunning())throw Error("Subagent is not running");d&&(d.abortRequested=!0),await c.inner.abort()}return{extensionRuntime:{start:async function(b){let c;if(!(a.isBuiltInSubagentsEnabled??l.N)())throw Error("Pi Web built-in sub-agents are disabled");let d=b.parentContext.sessionManager.getSessionId(),f=a.getSession(d);if(!f?.isAlive())throw Error("Parent session is no longer available");if(!f.sessionFile)throw Error("Parent session must be persisted before starting a subagent");try{let m,p,t,v=(0,g.rh)(f.cwd,b.profile);if(!v)throw Error(`Unknown or disabled subagent profile: ${b.profile}`);let w=b.runInBackground??v.runInBackground,x="off"===v.isolation?void 0:b.isolation??v.isolation;"worktree"===x&&(c=await (0,n.l)(f.cwd,`pi-web-agent-${(0,o.randomUUID)()}`));let y=c?.path??f.cwd,z=b.inheritContext??v.inheritContext,A=b.maxTurns??v.maxTurns;if(void 0!==A&&(!Number.isFinite(A)||A<0))throw Error("max_turns must be a non-negative number");let B=A&&A>0?Math.floor(A):void 0,C=b.thinking??v.thinking??f.inner.agent.state?.thinkingLevel;if(C&&!u.has(C))throw Error(`Invalid subagent thinking level: ${C}`);let D=(0,e.getAgentDir)(),E=f.inner.modelRuntime,F=e.SettingsManager.create(y,D),G=z?`The following is the active conversation context from the parent session. Use it only as background for the delegated task:
39
+ ${p=f.inner.sessionManager.buildSessionContext().messages,(t=JSON.stringify(p)).length<=5e4?t:`${t.slice(0,5e4)}
40
+ [Parent context truncated]`}`:void 0,H=(0,i.vH)(f.cwd,b.inputFiles??[]),I=(0,h.r)({profileSystemPrompt:v.systemPrompt,tools:v.tools,loadSkills:v.loadSkills,loadExtensions:v.loadExtensions,promptMode:v.promptMode,task:(0,i.jN)(b.task,H),inheritedParentContext:G}),{chatOnly:J,appendSystemPrompt:K,delegatedTask:L}=I;J||(0,e.initTheme)();let M=await (0,e.createAgentSessionServices)({cwd:y,agentDir:D,modelRuntime:E,settingsManager:F,resourceLoaderOptions:{noExtensions:!v.loadExtensions,noSkills:!v.loadSkills,noPromptTemplates:!0,noThemes:!0,noContextFiles:!0,...J||void 0!==I.exactSystemPrompt?{systemPrompt:" ",systemPromptOverride:()=>void 0}:{},appendSystemPrompt:K},...v.loadExtensions||v.loadSkills?{resourceLoaderReloadOptions:(0,j.Fk)(y,D)}:{}}),N=v.loadExtensions?v.extensionTools?.length?(0,g.gY)(M.resourceLoader.getExtensions().extensions,v.extensionTools):M.resourceLoader.getExtensions().extensions.flatMap(a=>[...a.tools.keys()]):[],O=(0,k.wQ)((0,g.I6)(v.tools,N),F.getDefaultTools()),P=c?e.SessionManager.create(y,void 0,{parentSession:f.sessionFile}):e.SessionManager.create(f.cwd,void 0,{parentSession:f.sessionFile}),Q=new Date().toISOString(),R={version:1,parentSessionId:d,parentSessionPath:f.sessionFile,parentToolCallId:b.parentToolCallId,profile:v.name,description:b.description.trim()||v.displayName,task:b.task,runInBackground:w,createdAt:Q,resourceSnapshot:{version:1,appendSystemPrompt:[...K],tools:[...O],loadSkills:v.loadSkills,loadExtensions:v.loadExtensions,...void 0!==I.exactSystemPrompt?{exactSystemPrompt:I.exactSystemPrompt}:{}},...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}};P.appendCustomEntry(g.tP,R),P.appendSessionInfo(R.description);let S=function(a,b){if(!b?.trim())return;let c=b.trim(),d=c.indexOf("/");if(d>0){let b=c.slice(0,d),e=c.slice(d+1),f=a.getModel(b,e);if(!f)throw Error(`Subagent model not found: ${c}`);return f}let e=a.getModels().filter(a=>a.id===c);if(1===e.length)return e[0];if(0===e.length)throw Error(`Subagent model not found: ${c}`);throw Error(`Subagent model is ambiguous; use provider/modelId: ${c}`)}(E,b.model??v.model),T=f.inner.model,{session:U}=await (0,e.createAgentSessionFromServices)({services:M,sessionManager:P,model:S??T,...C?{thinkingLevel:C}:{},tools:O,excludeTools:[...g.st]});a.registerSession(U,{...void 0!==I.exactSystemPrompt?{exactSystemPrompt:I.exactSystemPrompt}:{},chatOnly:J});let V={sessionId:U.sessionId,sessionPath:U.sessionFile??P.getSessionFile()??"",parentSessionId:d,parentToolCallId:b.parentToolCallId,profile:v.name,description:R.description,task:b.task,runInBackground:w,status:"queued",createdAt:Q,...c?{worktreePath:c.path,worktreeBranch:c.branch}:{}},W=0,X=!1,Y=!1,Z=B?U.subscribe(a=>{"turn_end"===a.type&&(W+=1,!Y&&W>=B?(Y=!0,U.steer("You have reached your turn limit. Wrap up immediately and provide your final answer now.")):Y&&W>=B+1&&(X=!0,U.abort()))}):()=>{},$=new Promise(a=>{m=a}),_={run:V,completion:$,abortRequested:!1};q().set(V.sessionId,_),b.onUpdate?.(V),a.invalidateSessionList();let aa=()=>{_.abortRequested=!0,"queued"===_.run.status?_.cancelQueued?.():U.abort()};w||b.signal?.addEventListener("abort",aa,{once:!0});let ab=async()=>{let d;if(_.abortRequested){let d={...V,status:"aborted",completedAt:new Date().toISOString()};return P.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:d.completedAt}),await s(f.cwd,c),_.run=d,b.onUpdate?.(d),q().delete(V.sessionId),a.invalidateSessionList(),d}_.run={..._.run,status:"running"},P.appendCustomEntry(g.o2,{version:1,status:"running"}),b.onUpdate?.(_.run),a.invalidateSessionList();try{await U.prompt(L,{source:"rpc",...J?{preflightResult:a=>{a&&U.agent.state&&(U.agent.state.systemPrompt=v.systemPrompt)}}:{}});let a=U.getLastAssistantText()?.trim(),b=_.abortRequested&&!X;d={...V,status:b?"aborted":"completed",completedAt:new Date().toISOString(),...a?{result:a}:{}}}catch(e){let a=U.getLastAssistantText()?.trim(),c=_.abortRequested||b.signal?.aborted;d={...V,status:c?"aborted":X?"completed":"failed",completedAt:new Date().toISOString(),...a?{result:a}:{},...!c&&!X?{error:e instanceof Error?e.message:String(e)}:{}}}finally{Z(),b.signal?.removeEventListener("abort",aa)}let e=await s(f.cwd,c);e&&(d={...d,worktreeCleanupError:e});let h={version:1,status:d.status,completedAt:d.completedAt,...d.result?{result:d.result}:{},...d.error?{error:d.error}:{},...d.worktreeCleanupError?{worktreeCleanupError:d.worktreeCleanupError}:{}};return P.appendCustomEntry(g.pv,h),_.run=d,b.onUpdate?.(d),q().delete(V.sessionId),a.invalidateSessionList(),d},ac=async()=>{if("queued"!==_.run.status)return;let d={...V,status:"aborted",completedAt:new Date().toISOString()},e=await s(f.cwd,c),h=e?{...d,worktreeCleanupError:e}:d;P.appendCustomEntry(g.pv,{version:1,status:"aborted",completedAt:h.completedAt,...e?{worktreeCleanupError:e}:{}}),_.run=h,b.onUpdate?.(h),q().delete(V.sessionId),a.invalidateSessionList(),m(h)},ad=r().enqueue(d,(0,l.hd)().maxConcurrent,ab,c=>{"queued"===c&&P.appendCustomEntry(g.o2,{version:1,status:"queued"}),b.onUpdate?.({..._.run,status:c}),_.run={..._.run,status:c},a.invalidateSessionList()},ac);return _.cancelQueued=ad.cancel,ad.promise.then(m,a=>{m({...V,status:"failed",completedAt:new Date().toISOString(),error:a instanceof Error?a.message:String(a)})}),{run:_.run,completion:_.completion}}catch(a){if(c)try{await (0,n.IL)(f.cwd,c.path)}catch{}throw a}},resume:b,get:c,steer:d,notifyParent:m},get:c,steer:d,abort:p}}d()}catch(a){d(a)}})},87509:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{U:()=>j});var e=c(28802),f=c(45399),g=c(77605),h=a([e]);function i(){return{currentTurn:0,lastTodoToolUseTurn:0}}e=(h.then?(await h)():h)[0];let k=f.ZUJ.Object({action:f.ZUJ.Union([f.ZUJ.Literal("list"),f.ZUJ.Literal("add"),f.ZUJ.Literal("update"),f.ZUJ.Literal("delete")],{description:"list | add | update | delete"}),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本,仅 update 使用(trim 后不可为空)"})),texts:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.String(),{description:"待添加的 todo 文本数组(仅 add 使用)"})),id:f.ZUJ.Optional(f.ZUJ.Number({description:"要更新的 todo id"})),ids:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Number(),{description:"要删除的 todo id 数组"})),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn,{description:"pending | in_progress | completed"})),updates:f.ZUJ.Optional(f.ZUJ.Array(f.ZUJ.Object({id:f.ZUJ.Number({description:"要更新的 todo id"}),status:f.ZUJ.Optional((0,e.StringEnum)(g.cn)),text:f.ZUJ.Optional(f.ZUJ.String({description:"新文本(trim 后不可为空)"}))},{additionalProperties:!1}),{description:"批量更新数组(优先于单条 id/status/text)"}))},{additionalProperties:!1});function j(){return{name:"pi-web-todo",hidden:!0,factory:a=>{let b={todos:[],nextId:1},c=i(),d=()=>{a.appendEntry(g.sT,{todos:b.todos,nextId:b.nextId})},e=a=>{let d=a.sessionManager.getBranch();for(let a of(b.todos=[],b.nextId=1,Object.assign(c,i()),d)){if("custom"!==a.type||a.customType!==g.sT)continue;let c=(0,g.aO)(a.data);c&&(b.todos=c.todos,b.nextId=c.nextId)}c.currentTurn=function(a){let b=0;for(let c of a){if("custom"===c.type&&c.customType===g.sT){b=0;continue}c.message?.role==="assistant"&&b++}return b}(d)};a.on("session_start",async(a,b)=>e(b)),a.on("session_tree",async(a,b)=>e(b)),a.on("agent_end",async(a,c)=>{0===b.todos.length||(0,g.Ql)(b.todos)||function(a){let b,c=0,d=0;for(let e of a)"custom"===e.type&&e.customType===g.sT?(b=e.data,d=c):e.message?.role==="user"&&c++;let e=(0,g.aO)(b);return!(!e||0===e.todos.length||(0,g.Ql)(e.todos))&&c-d>=2}(c.sessionManager.getBranch())&&(b.todos=[],b.nextId=1,d())}),a.on("turn_start",async()=>{c.currentTurn++}),a.on("tool_result",async a=>{String(a.toolName??"")===g.Y0&&(c.lastTodoToolUseTurn=c.currentTurn)}),a.on("context",async a=>{if(!(0,g.Ql)(b.todos)||c.currentTurn-c.lastTodoToolUseTurn<4||(c.lastTodoToolUseTurn=c.currentTurn,0))return;let d=function(a){let b=a.filter(a=>"completed"!==a.status);if(0===b.length)return null;let c=b.filter(a=>"in_progress"===a.status),d=c.length>0?`#${c[0].id}("${c[0].content}")仍标记为 in_progress。这一步如果已经做完,立刻用 todo update 把它标成 completed,并在同一次调用里把下一项 pending 置为 in_progress,不要留下过期的 [~]。`:"还有 pending 项但没有任何 in_progress。准备继续动手前,先用 todo update 把其中一项置为 in_progress。";return["<system-reminder>","todo 工具已连续 4 轮没有被使用,但仍有未完成任务:","",...b.map(g.mU),"",d,"","只在与本轮工作相关时行动;这是一条温和提醒,不适用就忽略。绝不要向用户提及这条提醒,也不要为了回应它而新造任务。","</system-reminder>"].join("\n")}(b.todos);if(d)return{messages:[...a.messages,{role:"user",content:[{type:"text",text:d}],timestamp:Date.now()}]}}),a.registerTool({name:g.Y0,label:"Todo",description:"管理当前会话的 todo 列表。\n\n动作:\n- list: 查看全部 todo\n- add: 批量添加 todo(texts 数组)\n- update: 按 id 更新 todo——status 和/或 text;批量用 updates[]\n- delete: 按 id 删除 todo(ids 数组)\n\n规则:\n- 同一时间只有一个 todo 处于 in_progress\n- 完成一个 todo 立即标记 completed,不要攒到最后批量标记\n- 未真正完成不得标记 completed:被阻塞或测试失败时保持 in_progress",promptSnippet:"用 todo 跟踪多步骤工作;记得为验证步骤(测试、类型检查)单独建 todo。",promptGuidelines:["[Usage] 多步骤工作(3+步)时使用,AI 自发创建,无需用户触发","[验证任务] 为测试 / 类型检查等验证步骤单独建 todo,完成前确保验证通过","[批量优先] 完成多项任务时使用 updates[] 批量更新,减少工具调用次数","[自动闭合] 全部完成后自动清理,无需手动 delete","[Not for] 单步操作、简单对话"],executionMode:"sequential",parameters:k,async execute(a,c,e){if(e?.aborted)throw Error("Todo call aborted by signal.");let f=(0,g.xw)(c,b),h="list"!==f.action;h&&(b.todos=f.snapshot.todos,b.nextId=f.snapshot.nextId,d());let i=h?`${f.resultText}
41
+ ${b.todos.map(a=>(0,g.mU)(a)).join("\n")||"No todos"}`:f.resultText;return{content:[{type:"text",text:i}],details:{action:f.action,todos:[...b.todos],nextId:b.nextId}}}})}}}d()}catch(a){d(a)}})},88250:(a,b,c)=>{"use strict";function d(){let a=(globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState);a.generation+=1,a.entries.clear(),a.inFlight.clear()}c.d(b,{kn:()=>d})},92759:a=>{function b(a,b){"boolean"==typeof b&&(b={forever:b}),this._originalTimeouts=JSON.parse(JSON.stringify(a)),this._timeouts=a,this._options=b||{},this._maxRetryTime=b&&b.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}a.exports=b,b.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},b.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},b.prototype.retry=function(a){if(this._timeout&&clearTimeout(this._timeout),!a)return!1;var b=new Date().getTime();if(a&&b-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(a);var c=this._timeouts.shift();if(void 0===c)if(!this._cachedTimeouts)return!1;else this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),c=this._timeouts.shift();var d=this,e=setTimeout(function(){d._attempts++,d._operationTimeoutCb&&(d._timeout=setTimeout(function(){d._operationTimeoutCb(d._attempts)},d._operationTimeout),d._options.unref&&d._timeout.unref()),d._fn(d._attempts)},c);return this._options.unref&&e.unref(),!0},b.prototype.attempt=function(a,b){this._fn=a,b&&(b.timeout&&(this._operationTimeout=b.timeout),b.cb&&(this._operationTimeoutCb=b.cb));var c=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){c._operationTimeoutCb()},c._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)},b.prototype.try=function(a){console.log("Using RetryOperation.try() is deprecated"),this.attempt(a)},b.prototype.start=function(a){console.log("Using RetryOperation.start() is deprecated"),this.attempt(a)},b.prototype.start=b.prototype.try,b.prototype.errors=function(){return this._errors},b.prototype.attempts=function(){return this._attempts},b.prototype.mainError=function(){if(0===this._errors.length)return null;for(var a={},b=null,c=0,d=0;d<this._errors.length;d++){var e=this._errors[d],f=e.message,g=(a[f]||0)+1;a[f]=g,g>=c&&(b=e,c=g)}return b}},93329:(a,b,c)=>{var d,e,f,g=c(29021),h=c(39466),i=c(18827),j=c(12817),k=c(28354);function l(a,b){Object.defineProperty(a,d,{get:function(){return b}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(d=Symbol.for("graceful-fs.queue"),e=Symbol.for("graceful-fs.previous")):(d="___graceful-fs.queue",e="___graceful-fs.previous");var m=function(){};function n(a){h(a),a.gracefulify=n,a.createReadStream=function(b,c){return new a.ReadStream(b,c)},a.createWriteStream=function(b,c){return new a.WriteStream(b,c)};var b=a.readFile;a.readFile=function(a,c,d){return"function"==typeof c&&(d=c,c=null),function a(c,d,e,f){return b(c,d,function(b){b&&("EMFILE"===b.code||"ENFILE"===b.code)?o([a,[c,d,e],b,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,c,d)};var c=a.writeFile;a.writeFile=function(a,b,d,e){return"function"==typeof d&&(e=d,d=null),function a(b,d,e,f,g){return c(b,d,e,function(c){c&&("EMFILE"===c.code||"ENFILE"===c.code)?o([a,[b,d,e,f],c,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,d,e)};var d=a.appendFile;d&&(a.appendFile=function(a,b,c,e){return"function"==typeof c&&(e=c,c=null),function a(b,c,e,f,g){return d(b,c,e,function(d){d&&("EMFILE"===d.code||"ENFILE"===d.code)?o([a,[b,c,e,f],d,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,e)});var e=a.copyFile;e&&(a.copyFile=function(a,b,c,d){return"function"==typeof c&&(d=c,c=0),function a(b,c,d,f,g){return e(b,c,d,function(e){e&&("EMFILE"===e.code||"ENFILE"===e.code)?o([a,[b,c,d,f],e,g||Date.now(),Date.now()]):"function"==typeof f&&f.apply(this,arguments)})}(a,b,c,d)});var f=a.readdir;a.readdir=function(a,b,c){"function"==typeof b&&(c=b,b=null);var d=g.test(process.version)?function(a,b,c,d){return f(a,e(a,b,c,d))}:function(a,b,c,d){return f(a,b,e(a,b,c,d))};return d(a,b,c);function e(a,b,c,e){return function(f,g){f&&("EMFILE"===f.code||"ENFILE"===f.code)?o([d,[a,b,c],f,e||Date.now(),Date.now()]):(g&&g.sort&&g.sort(),"function"==typeof c&&c.call(this,f,g))}}};var g=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var j=i(a);q=j.ReadStream,r=j.WriteStream}var k=a.ReadStream;k&&(q.prototype=Object.create(k.prototype),q.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.autoClose&&a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c),a.read())})});var l=a.WriteStream;l&&(r.prototype=Object.create(l.prototype),r.prototype.open=function(){var a=this;t(a.path,a.flags,a.mode,function(b,c){b?(a.destroy(),a.emit("error",b)):(a.fd=c,a.emit("open",c))})}),Object.defineProperty(a,"ReadStream",{get:function(){return q},set:function(a){q=a},enumerable:!0,configurable:!0}),Object.defineProperty(a,"WriteStream",{get:function(){return r},set:function(a){r=a},enumerable:!0,configurable:!0});var m=q;Object.defineProperty(a,"FileReadStream",{get:function(){return m},set:function(a){m=a},enumerable:!0,configurable:!0});var p=r;function q(a,b){return this instanceof q?(k.apply(this,arguments),this):q.apply(Object.create(q.prototype),arguments)}function r(a,b){return this instanceof r?(l.apply(this,arguments),this):r.apply(Object.create(r.prototype),arguments)}Object.defineProperty(a,"FileWriteStream",{get:function(){return p},set:function(a){p=a},enumerable:!0,configurable:!0});var s=a.open;function t(a,b,c,d){return"function"==typeof c&&(d=c,c=null),function a(b,c,d,e,f){return s(b,c,d,function(g,h){g&&("EMFILE"===g.code||"ENFILE"===g.code)?o([a,[b,c,d,e],g,f||Date.now(),Date.now()]):"function"==typeof e&&e.apply(this,arguments)})}(a,b,c,d)}return a.open=t,a}function o(a){m("ENQUEUE",a[0].name,a[1]),g[d].push(a),q()}function p(){for(var a=Date.now(),b=0;b<g[d].length;++b)g[d][b].length>2&&(g[d][b][3]=a,g[d][b][4]=a);q()}function q(){if(clearTimeout(f),f=void 0,0!==g[d].length){var a=g[d].shift(),b=a[0],c=a[1],e=a[2],h=a[3],i=a[4];if(void 0===h)m("RETRY",b.name,c),b.apply(null,c);else if(Date.now()-h>=6e4){m("TIMEOUT",b.name,c);var j=c.pop();"function"==typeof j&&j.call(null,e)}else Date.now()-i>=Math.min(1.2*Math.max(i-h,1),100)?(m("RETRY",b.name,c),b.apply(null,c.concat([h]))):g[d].push(a);void 0===f&&(f=setTimeout(q,0))}}k.debuglog?m=k.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(m=function(){var a=k.format.apply(k,arguments);console.error(a="GFS4: "+a.split(/\n/).join("\nGFS4: "))}),!g[d]&&(l(g,global[d]||[]),g.close=function(a){function b(b,c){return a.call(g,b,function(a){a||p(),"function"==typeof c&&c.apply(this,arguments)})}return Object.defineProperty(b,e,{value:a}),b}(g.close),g.closeSync=function(a){function b(b){a.apply(g,arguments),p()}return Object.defineProperty(b,e,{value:a}),b}(g.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){m(g[d]),c(12412).equal(g[d].length,0)})),global[d]||l(global,g[d]),a.exports=n(j(g)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!g.__patched&&(a.exports=n(g),g.__patched=!0)},96515:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{I:()=>j,p:()=>i});var e=c(75430),f=a([e]);e=(f.then?(await f)():f)[0];let k=new Set(["off","minimal","low","medium","high","xhigh","max"]);function g(a,b){return a.provider===b.provider&&a.id===b.modelId}function h(a,b){let c=a.toLowerCase(),d=b.filter(a=>`${a.provider}/${a.id}`.toLowerCase()===c);return d.length>0?d:b.filter(a=>a.id.toLowerCase()===c)}async function i(a,b){let c=(b??[]).map(a=>a.trim()).filter(Boolean);if(0===c.length)return{visible:await a.getAvailable(),scopedModels:[],thinkingLevelPins:{},warnings:[]};let d=await a.getAvailable();!function(a,b){for(let c of a){if(c.includes("*")||c.includes("?")||c.includes("["))continue;let a=h(c,b);if(0===a.length){let d=c.lastIndexOf(":"),e=d>=0?c.slice(d+1):"";k.has(e)&&(a=h(c.slice(0,d),b))}if(a.length>1){let b=a.map(a=>`${a.provider}/${a.id}`).sort().join(", ");throw Error(`Ambiguous enabledModels entry "${c}" matches multiple models: ${b}. Use provider/modelId.`)}}}(c,d);let{scopedModels:f,diagnostics:g}=await (0,e.resolveModelScopeWithDiagnostics)(c,{getAvailable:async()=>d}),i=g.map(a=>a.message);if(0===f.length)return{visible:d,scopedModels:[],thinkingLevelPins:{},warnings:i};let j={};for(let a of f)a.thinkingLevel&&(j[`${a.model.provider}/${a.model.id}`]=a.thinkingLevel);return{visible:f.map(a=>a.model),scopedModels:f,thinkingLevelPins:j,warnings:i}}function j(a,b={}){let c=b.requestedModel,d=b.defaultModel,e=c?a.visible.find(a=>g(a,c)):void 0;if(c&&!e)throw Error(`Model is not available in the enabled scope: ${c.provider}/${c.modelId}`);let f=e?a.scopedModels.find(a=>a.model===e||g(a.model,{provider:e.provider,modelId:e.id})):void 0,h=!e&&d?a.scopedModels.find(a=>g(a.model,d)):void 0,i=e?void 0:h??a.scopedModels[0],k=e||i||!d?void 0:a.visible.find(a=>g(a,d)),l=e??i?.model??k,m=f??i,n=b.thinkingLevel??m?.thinkingLevel;return{...l?{model:l}:{},...n?{thinkingLevel:n}:{},scopedModels:[...a.scopedModels]}}d()}catch(a){d(a)}})}};