@ashx-j/lunr 0.2.25 → 0.2.27

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 (729) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/LICENSE +22 -0
  3. package/dist/builtin-extensions/ashxj-thinking.d.ts +1 -1
  4. package/dist/builtin-extensions/ashxj-thinking.d.ts.map +1 -1
  5. package/dist/builtin-extensions/ashxj-thinking.js +1 -1
  6. package/dist/builtin-extensions/ashxj-thinking.js.map +1 -1
  7. package/dist/builtin-extensions/ashxj-tui.d.ts +11 -1
  8. package/dist/builtin-extensions/ashxj-tui.d.ts.map +1 -1
  9. package/dist/builtin-extensions/ashxj-tui.js +6 -10
  10. package/dist/builtin-extensions/ashxj-tui.js.map +1 -1
  11. package/dist/builtin-extensions/index.d.ts.map +1 -1
  12. package/dist/builtin-extensions/index.js +1 -0
  13. package/dist/builtin-extensions/index.js.map +1 -1
  14. package/dist/builtin-extensions/lunr-computer-use.d.ts +3 -0
  15. package/dist/builtin-extensions/lunr-computer-use.d.ts.map +1 -0
  16. package/dist/builtin-extensions/lunr-computer-use.js +179 -0
  17. package/dist/builtin-extensions/lunr-computer-use.js.map +1 -0
  18. package/dist/builtin-extensions/lunr-cron.d.ts +4 -5
  19. package/dist/builtin-extensions/lunr-cron.d.ts.map +1 -1
  20. package/dist/builtin-extensions/lunr-cron.js +94 -108
  21. package/dist/builtin-extensions/lunr-cron.js.map +1 -1
  22. package/dist/builtin-extensions/lunr-local-providers/local-servers.d.ts.map +1 -1
  23. package/dist/builtin-extensions/lunr-local-providers/local-servers.js +3 -1
  24. package/dist/builtin-extensions/lunr-local-providers/local-servers.js.map +1 -1
  25. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.d.ts.map +1 -1
  26. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js +2 -2
  27. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js.map +1 -1
  28. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.d.ts.map +1 -1
  29. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js +1 -1
  30. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js.map +1 -1
  31. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.d.ts.map +1 -1
  32. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js +1 -1
  33. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js.map +1 -1
  34. package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
  35. package/dist/builtin-extensions/pi-intercom/index.js +2 -2
  36. package/dist/builtin-extensions/pi-intercom/index.js.map +1 -1
  37. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts +1 -1
  38. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts.map +1 -1
  39. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js +1 -1
  40. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js.map +1 -1
  41. package/dist/builtin-extensions/pi-lsp-extension/src/index.d.ts.map +1 -1
  42. package/dist/builtin-extensions/pi-lsp-extension/src/index.js +1 -15
  43. package/dist/builtin-extensions/pi-lsp-extension/src/index.js.map +1 -1
  44. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts +6 -0
  45. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts.map +1 -1
  46. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js +187 -132
  47. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js.map +1 -1
  48. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts +8 -0
  49. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts.map +1 -1
  50. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js +142 -112
  51. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js.map +1 -1
  52. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts +12 -1
  53. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts.map +1 -1
  54. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js +14 -7
  55. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js.map +1 -1
  56. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts +11 -3
  57. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts.map +1 -1
  58. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js +67 -41
  59. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js.map +1 -1
  60. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts +4 -2
  61. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts.map +1 -1
  62. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js +3 -0
  63. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js.map +1 -1
  64. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts +2 -1
  65. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts.map +1 -1
  66. package/dist/builtin-extensions/pi-mcp-adapter/commands.js +6 -6
  67. package/dist/builtin-extensions/pi-mcp-adapter/commands.js.map +1 -1
  68. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts +1 -1
  69. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts.map +1 -1
  70. package/dist/builtin-extensions/pi-mcp-adapter/config.js +11 -5
  71. package/dist/builtin-extensions/pi-mcp-adapter/config.js.map +1 -1
  72. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.d.ts.map +1 -1
  73. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js +2 -2
  74. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js.map +1 -1
  75. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.d.ts.map +1 -1
  76. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js +1 -1
  77. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js.map +1 -1
  78. package/dist/builtin-extensions/pi-mcp-adapter/index.d.ts.map +1 -1
  79. package/dist/builtin-extensions/pi-mcp-adapter/index.js +48 -40
  80. package/dist/builtin-extensions/pi-mcp-adapter/index.js.map +1 -1
  81. package/dist/builtin-extensions/pi-mcp-adapter/init.d.ts.map +1 -1
  82. package/dist/builtin-extensions/pi-mcp-adapter/init.js +3 -1
  83. package/dist/builtin-extensions/pi-mcp-adapter/init.js.map +1 -1
  84. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts +12 -40
  85. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts.map +1 -1
  86. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js +166 -235
  87. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js.map +1 -1
  88. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts +5 -0
  89. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts.map +1 -1
  90. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js +43 -13
  91. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js.map +1 -1
  92. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts +14 -3
  93. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts.map +1 -1
  94. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js +73 -21
  95. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js.map +1 -1
  96. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.d.ts.map +1 -1
  97. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js +4 -4
  98. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js.map +1 -1
  99. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.d.ts.map +1 -1
  100. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js +2 -2
  101. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js.map +1 -1
  102. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts +2 -0
  103. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts.map +1 -1
  104. package/dist/builtin-extensions/pi-mcp-adapter/state.js.map +1 -1
  105. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts +1 -1
  106. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts.map +1 -1
  107. package/dist/builtin-extensions/pi-ollama-cloud/index.js +1 -1
  108. package/dist/builtin-extensions/pi-ollama-cloud/index.js.map +1 -1
  109. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts +11 -5
  110. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts.map +1 -1
  111. package/dist/builtin-extensions/pi-ollama-cloud/models.js +12 -32
  112. package/dist/builtin-extensions/pi-ollama-cloud/models.js.map +1 -1
  113. package/dist/builtin-extensions/pi-prompt-template-model/index.d.ts.map +1 -1
  114. package/dist/builtin-extensions/pi-prompt-template-model/index.js +5 -3
  115. package/dist/builtin-extensions/pi-prompt-template-model/index.js.map +1 -1
  116. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts +2 -1
  117. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts.map +1 -1
  118. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js +21 -12
  119. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js.map +1 -1
  120. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.d.ts.map +1 -1
  121. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js +7 -24
  122. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js.map +1 -1
  123. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
  124. package/dist/builtin-extensions/pi-subagents/src/extension/index.js +39 -77
  125. package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
  126. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts.map +1 -1
  127. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js +1 -1
  128. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js.map +1 -1
  129. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts +4 -4
  130. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
  131. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js +8 -5
  132. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js.map +1 -1
  133. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts +1 -1
  134. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
  135. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js +15 -31
  136. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js.map +1 -1
  137. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
  138. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js +7 -2
  139. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
  140. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts +1 -0
  141. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  142. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +21 -4
  143. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  144. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
  145. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +11 -4
  146. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
  147. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  148. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +121 -25
  149. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  150. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  151. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +25 -5
  152. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  153. package/dist/builtin-extensions/pi-subagents/src/runs/shared/chain-outputs.d.ts +1 -0
  154. package/dist/builtin-extensions/pi-subagents/src/runs/shared/chain-outputs.d.ts.map +1 -1
  155. package/dist/builtin-extensions/pi-subagents/src/runs/shared/chain-outputs.js +5 -0
  156. package/dist/builtin-extensions/pi-subagents/src/runs/shared/chain-outputs.js.map +1 -1
  157. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts +1 -1
  158. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts.map +1 -1
  159. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js +2 -0
  160. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js.map +1 -1
  161. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts +1 -1
  162. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts.map +1 -1
  163. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js +1 -1
  164. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js.map +1 -1
  165. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +7 -8
  166. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  167. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js +60 -32
  168. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  169. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts +1 -1
  170. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts.map +1 -1
  171. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js +15 -5
  172. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js.map +1 -1
  173. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
  174. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +4 -3
  175. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
  176. package/dist/builtin-extensions/pi-subagents/src/tui/communication.d.ts.map +1 -1
  177. package/dist/builtin-extensions/pi-subagents/src/tui/communication.js +1 -1
  178. package/dist/builtin-extensions/pi-subagents/src/tui/communication.js.map +1 -1
  179. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +2 -1
  180. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
  181. package/dist/builtin-extensions/pi-subagents/src/tui/render.js +22 -11
  182. package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
  183. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.d.ts.map +1 -1
  184. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js +3 -3
  185. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js.map +1 -1
  186. package/dist/builtin-extensions/pi-tps.d.ts.map +1 -1
  187. package/dist/builtin-extensions/pi-tps.js +20 -17
  188. package/dist/builtin-extensions/pi-tps.js.map +1 -1
  189. package/dist/builtin-extensions/pi-web-access/activity.d.ts +1 -0
  190. package/dist/builtin-extensions/pi-web-access/activity.d.ts.map +1 -1
  191. package/dist/builtin-extensions/pi-web-access/activity.js +27 -5
  192. package/dist/builtin-extensions/pi-web-access/activity.js.map +1 -1
  193. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts +3 -0
  194. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts.map +1 -0
  195. package/dist/builtin-extensions/pi-web-access/bounded-body.js +43 -0
  196. package/dist/builtin-extensions/pi-web-access/bounded-body.js.map +1 -0
  197. package/dist/builtin-extensions/pi-web-access/content-page.d.ts +24 -0
  198. package/dist/builtin-extensions/pi-web-access/content-page.d.ts.map +1 -0
  199. package/dist/builtin-extensions/pi-web-access/content-page.js +57 -0
  200. package/dist/builtin-extensions/pi-web-access/content-page.js.map +1 -0
  201. package/dist/builtin-extensions/pi-web-access/extract.d.ts.map +1 -1
  202. package/dist/builtin-extensions/pi-web-access/extract.js +7 -2
  203. package/dist/builtin-extensions/pi-web-access/extract.js.map +1 -1
  204. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts +0 -1
  205. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts.map +1 -1
  206. package/dist/builtin-extensions/pi-web-access/github-extract.js +147 -36
  207. package/dist/builtin-extensions/pi-web-access/github-extract.js.map +1 -1
  208. package/dist/builtin-extensions/pi-web-access/index.d.ts.map +1 -1
  209. package/dist/builtin-extensions/pi-web-access/index.js +48 -73
  210. package/dist/builtin-extensions/pi-web-access/index.js.map +1 -1
  211. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts +12 -4
  212. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts.map +1 -1
  213. package/dist/builtin-extensions/pi-web-access/session-cleanup.js +35 -12
  214. package/dist/builtin-extensions/pi-web-access/session-cleanup.js.map +1 -1
  215. package/dist/builtin-extensions/pi-web-access/storage.d.ts +9 -6
  216. package/dist/builtin-extensions/pi-web-access/storage.d.ts.map +1 -1
  217. package/dist/builtin-extensions/pi-web-access/storage.js +36 -24
  218. package/dist/builtin-extensions/pi-web-access/storage.js.map +1 -1
  219. package/dist/builtin-extensions/simple-pi-memory.d.ts +1 -1
  220. package/dist/builtin-extensions/simple-pi-memory.d.ts.map +1 -1
  221. package/dist/builtin-extensions/simple-pi-memory.js +1 -1
  222. package/dist/builtin-extensions/simple-pi-memory.js.map +1 -1
  223. package/dist/cli/install-cli.d.ts.map +1 -1
  224. package/dist/cli/install-cli.js +38 -30
  225. package/dist/cli/install-cli.js.map +1 -1
  226. package/dist/core/agent-session-runtime.d.ts +13 -0
  227. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  228. package/dist/core/agent-session-runtime.js +75 -11
  229. package/dist/core/agent-session-runtime.js.map +1 -1
  230. package/dist/core/agent-session-services.d.ts +1 -0
  231. package/dist/core/agent-session-services.d.ts.map +1 -1
  232. package/dist/core/agent-session-services.js +1 -0
  233. package/dist/core/agent-session-services.js.map +1 -1
  234. package/dist/core/agent-session.d.ts +40 -6
  235. package/dist/core/agent-session.d.ts.map +1 -1
  236. package/dist/core/agent-session.js +309 -76
  237. package/dist/core/agent-session.js.map +1 -1
  238. package/dist/core/browser/runtime.d.ts +2 -0
  239. package/dist/core/browser/runtime.d.ts.map +1 -1
  240. package/dist/core/browser/runtime.js +80 -45
  241. package/dist/core/browser/runtime.js.map +1 -1
  242. package/dist/core/browser/setup.d.ts.map +1 -1
  243. package/dist/core/browser/setup.js +12 -1
  244. package/dist/core/browser/setup.js.map +1 -1
  245. package/dist/core/computer-use/adapter.d.ts +28 -0
  246. package/dist/core/computer-use/adapter.d.ts.map +1 -0
  247. package/dist/core/computer-use/adapter.js +138 -0
  248. package/dist/core/computer-use/adapter.js.map +1 -0
  249. package/dist/core/computer-use/image.d.ts +27 -0
  250. package/dist/core/computer-use/image.d.ts.map +1 -0
  251. package/dist/core/computer-use/image.js +84 -0
  252. package/dist/core/computer-use/image.js.map +1 -0
  253. package/dist/core/computer-use/lease.d.ts +18 -0
  254. package/dist/core/computer-use/lease.d.ts.map +1 -0
  255. package/dist/core/computer-use/lease.js +129 -0
  256. package/dist/core/computer-use/lease.js.map +1 -0
  257. package/dist/core/computer-use/macos-runtime.d.ts +14 -0
  258. package/dist/core/computer-use/macos-runtime.d.ts.map +1 -0
  259. package/dist/core/computer-use/macos-runtime.js +148 -0
  260. package/dist/core/computer-use/macos-runtime.js.map +1 -0
  261. package/dist/core/computer-use/policy.d.ts +19 -0
  262. package/dist/core/computer-use/policy.d.ts.map +1 -0
  263. package/dist/core/computer-use/policy.js +67 -0
  264. package/dist/core/computer-use/policy.js.map +1 -0
  265. package/dist/core/computer-use/release.generated.d.ts +31 -0
  266. package/dist/core/computer-use/release.generated.d.ts.map +1 -0
  267. package/dist/core/computer-use/release.generated.js +36 -0
  268. package/dist/core/computer-use/release.generated.js.map +1 -0
  269. package/dist/core/computer-use/runtime.d.ts +13 -0
  270. package/dist/core/computer-use/runtime.d.ts.map +1 -0
  271. package/dist/core/computer-use/runtime.js +158 -0
  272. package/dist/core/computer-use/runtime.js.map +1 -0
  273. package/dist/core/computer-use/schemas.d.ts +100 -0
  274. package/dist/core/computer-use/schemas.d.ts.map +1 -0
  275. package/dist/core/computer-use/schemas.js +96 -0
  276. package/dist/core/computer-use/schemas.js.map +1 -0
  277. package/dist/core/computer-use/windows-desktop.d.ts +3 -0
  278. package/dist/core/computer-use/windows-desktop.d.ts.map +1 -0
  279. package/dist/core/computer-use/windows-desktop.js +48 -0
  280. package/dist/core/computer-use/windows-desktop.js.map +1 -0
  281. package/dist/core/computer-use/workflow.d.ts +38 -0
  282. package/dist/core/computer-use/workflow.d.ts.map +1 -0
  283. package/dist/core/computer-use/workflow.js +900 -0
  284. package/dist/core/computer-use/workflow.js.map +1 -0
  285. package/dist/core/cron/jobs.d.ts +26 -8
  286. package/dist/core/cron/jobs.d.ts.map +1 -1
  287. package/dist/core/cron/jobs.js +357 -232
  288. package/dist/core/cron/jobs.js.map +1 -1
  289. package/dist/core/cron/origin-context.d.ts +1 -0
  290. package/dist/core/cron/origin-context.d.ts.map +1 -1
  291. package/dist/core/cron/origin-context.js.map +1 -1
  292. package/dist/core/cron/scheduler.d.ts +22 -17
  293. package/dist/core/cron/scheduler.d.ts.map +1 -1
  294. package/dist/core/cron/scheduler.js +153 -73
  295. package/dist/core/cron/scheduler.js.map +1 -1
  296. package/dist/core/extensions/index.d.ts +1 -1
  297. package/dist/core/extensions/index.d.ts.map +1 -1
  298. package/dist/core/extensions/index.js.map +1 -1
  299. package/dist/core/extensions/loader.d.ts.map +1 -1
  300. package/dist/core/extensions/loader.js +4 -0
  301. package/dist/core/extensions/loader.js.map +1 -1
  302. package/dist/core/extensions/runner.d.ts +1 -0
  303. package/dist/core/extensions/runner.d.ts.map +1 -1
  304. package/dist/core/extensions/runner.js +8 -0
  305. package/dist/core/extensions/runner.js.map +1 -1
  306. package/dist/core/extensions/types.d.ts +8 -0
  307. package/dist/core/extensions/types.d.ts.map +1 -1
  308. package/dist/core/extensions/types.js.map +1 -1
  309. package/dist/core/footer-data-provider.d.ts +4 -0
  310. package/dist/core/footer-data-provider.d.ts.map +1 -1
  311. package/dist/core/footer-data-provider.js +22 -1
  312. package/dist/core/footer-data-provider.js.map +1 -1
  313. package/dist/core/large-subagent-launch.d.ts +1 -1
  314. package/dist/core/large-subagent-launch.d.ts.map +1 -1
  315. package/dist/core/large-subagent-launch.js +7 -7
  316. package/dist/core/large-subagent-launch.js.map +1 -1
  317. package/dist/core/model-registry.d.ts +2 -0
  318. package/dist/core/model-registry.d.ts.map +1 -1
  319. package/dist/core/model-registry.js +5 -0
  320. package/dist/core/model-registry.js.map +1 -1
  321. package/dist/core/model-runtime.d.ts +4 -1
  322. package/dist/core/model-runtime.d.ts.map +1 -1
  323. package/dist/core/model-runtime.js +40 -4
  324. package/dist/core/model-runtime.js.map +1 -1
  325. package/dist/core/package-manager.d.ts.map +1 -1
  326. package/dist/core/package-manager.js.map +1 -1
  327. package/dist/core/permissions.d.ts +4 -4
  328. package/dist/core/permissions.d.ts.map +1 -1
  329. package/dist/core/permissions.js +25 -38
  330. package/dist/core/permissions.js.map +1 -1
  331. package/dist/core/plan-mode.d.ts +5 -13
  332. package/dist/core/plan-mode.d.ts.map +1 -1
  333. package/dist/core/plan-mode.js +135 -116
  334. package/dist/core/plan-mode.js.map +1 -1
  335. package/dist/core/project-trust.d.ts.map +1 -1
  336. package/dist/core/project-trust.js +1 -1
  337. package/dist/core/project-trust.js.map +1 -1
  338. package/dist/core/prompt-resource-bridge.d.ts +12 -0
  339. package/dist/core/prompt-resource-bridge.d.ts.map +1 -0
  340. package/dist/core/prompt-resource-bridge.js +9 -0
  341. package/dist/core/prompt-resource-bridge.js.map +1 -0
  342. package/dist/core/protected-targets.d.ts +6 -0
  343. package/dist/core/protected-targets.d.ts.map +1 -0
  344. package/dist/core/protected-targets.js +45 -0
  345. package/dist/core/protected-targets.js.map +1 -0
  346. package/dist/core/resource-loader.d.ts.map +1 -1
  347. package/dist/core/resource-loader.js +7 -0
  348. package/dist/core/resource-loader.js.map +1 -1
  349. package/dist/core/rollback.d.ts +19 -3
  350. package/dist/core/rollback.d.ts.map +1 -1
  351. package/dist/core/rollback.js +172 -56
  352. package/dist/core/rollback.js.map +1 -1
  353. package/dist/core/runtime-credentials.d.ts +3 -0
  354. package/dist/core/runtime-credentials.d.ts.map +1 -1
  355. package/dist/core/runtime-credentials.js +14 -1
  356. package/dist/core/runtime-credentials.js.map +1 -1
  357. package/dist/core/sdk.d.ts +3 -0
  358. package/dist/core/sdk.d.ts.map +1 -1
  359. package/dist/core/sdk.js +1 -0
  360. package/dist/core/sdk.js.map +1 -1
  361. package/dist/core/session-manager.d.ts +6 -0
  362. package/dist/core/session-manager.d.ts.map +1 -1
  363. package/dist/core/session-manager.js +95 -32
  364. package/dist/core/session-manager.js.map +1 -1
  365. package/dist/core/session-ownership.d.ts.map +1 -1
  366. package/dist/core/session-ownership.js +8 -3
  367. package/dist/core/session-ownership.js.map +1 -1
  368. package/dist/core/session-retention.d.ts.map +1 -1
  369. package/dist/core/session-retention.js +18 -7
  370. package/dist/core/session-retention.js.map +1 -1
  371. package/dist/core/session-startup-settings.d.ts +10 -0
  372. package/dist/core/session-startup-settings.d.ts.map +1 -0
  373. package/dist/core/session-startup-settings.js +70 -0
  374. package/dist/core/session-startup-settings.js.map +1 -0
  375. package/dist/core/settings-manager.d.ts +6 -0
  376. package/dist/core/settings-manager.d.ts.map +1 -1
  377. package/dist/core/settings-manager.js +19 -0
  378. package/dist/core/settings-manager.js.map +1 -1
  379. package/dist/core/subagent-event-transport.d.ts +3 -0
  380. package/dist/core/subagent-event-transport.d.ts.map +1 -0
  381. package/dist/core/subagent-event-transport.js +61 -0
  382. package/dist/core/subagent-event-transport.js.map +1 -0
  383. package/dist/core/subscriptions.d.ts +16 -7
  384. package/dist/core/subscriptions.d.ts.map +1 -1
  385. package/dist/core/subscriptions.js +96 -55
  386. package/dist/core/subscriptions.js.map +1 -1
  387. package/dist/core/trust-manager.d.ts +2 -1
  388. package/dist/core/trust-manager.d.ts.map +1 -1
  389. package/dist/core/trust-manager.js +6 -1
  390. package/dist/core/trust-manager.js.map +1 -1
  391. package/dist/core/update-check.d.ts.map +1 -1
  392. package/dist/core/update-check.js.map +1 -1
  393. package/dist/core/usage-adapters/kimi-coding.d.ts +2 -2
  394. package/dist/core/usage-adapters/kimi-coding.d.ts.map +1 -1
  395. package/dist/core/usage-adapters/kimi-coding.js +2 -2
  396. package/dist/core/usage-adapters/kimi-coding.js.map +1 -1
  397. package/dist/core/usage-adapters/openai-codex.d.ts +3 -2
  398. package/dist/core/usage-adapters/openai-codex.d.ts.map +1 -1
  399. package/dist/core/usage-adapters/openai-codex.js +3 -3
  400. package/dist/core/usage-adapters/openai-codex.js.map +1 -1
  401. package/dist/core/usage-adapters/xai.d.ts +2 -2
  402. package/dist/core/usage-adapters/xai.d.ts.map +1 -1
  403. package/dist/core/usage-adapters/xai.js +3 -3
  404. package/dist/core/usage-adapters/xai.js.map +1 -1
  405. package/dist/core/usage-adapters/zai.d.ts +2 -2
  406. package/dist/core/usage-adapters/zai.d.ts.map +1 -1
  407. package/dist/core/usage-adapters/zai.js +2 -2
  408. package/dist/core/usage-adapters/zai.js.map +1 -1
  409. package/dist/core/usage-service.d.ts +9 -2
  410. package/dist/core/usage-service.d.ts.map +1 -1
  411. package/dist/core/usage-service.js +95 -50
  412. package/dist/core/usage-service.js.map +1 -1
  413. package/dist/gateway/adapters/discord.d.ts.map +1 -1
  414. package/dist/gateway/adapters/discord.js +2 -2
  415. package/dist/gateway/adapters/discord.js.map +1 -1
  416. package/dist/gateway/agent-bridge.d.ts +9 -1
  417. package/dist/gateway/agent-bridge.d.ts.map +1 -1
  418. package/dist/gateway/agent-bridge.js +91 -37
  419. package/dist/gateway/agent-bridge.js.map +1 -1
  420. package/dist/gateway/approval.d.ts.map +1 -1
  421. package/dist/gateway/approval.js +3 -3
  422. package/dist/gateway/approval.js.map +1 -1
  423. package/dist/gateway/authz.d.ts +4 -4
  424. package/dist/gateway/authz.d.ts.map +1 -1
  425. package/dist/gateway/authz.js +8 -12
  426. package/dist/gateway/authz.js.map +1 -1
  427. package/dist/gateway/buttons.d.ts +8 -1
  428. package/dist/gateway/buttons.d.ts.map +1 -1
  429. package/dist/gateway/buttons.js +76 -18
  430. package/dist/gateway/buttons.js.map +1 -1
  431. package/dist/gateway/commands.d.ts +1 -0
  432. package/dist/gateway/commands.d.ts.map +1 -1
  433. package/dist/gateway/commands.js +12 -10
  434. package/dist/gateway/commands.js.map +1 -1
  435. package/dist/gateway/cron.d.ts +12 -11
  436. package/dist/gateway/cron.d.ts.map +1 -1
  437. package/dist/gateway/cron.js +85 -62
  438. package/dist/gateway/cron.js.map +1 -1
  439. package/dist/gateway/index.d.ts.map +1 -1
  440. package/dist/gateway/index.js +5 -4
  441. package/dist/gateway/index.js.map +1 -1
  442. package/dist/gateway/mobile-commands.d.ts +1 -0
  443. package/dist/gateway/mobile-commands.d.ts.map +1 -1
  444. package/dist/gateway/mobile-commands.js +64 -22
  445. package/dist/gateway/mobile-commands.js.map +1 -1
  446. package/dist/gateway/presenter.d.ts +12 -2
  447. package/dist/gateway/presenter.d.ts.map +1 -1
  448. package/dist/gateway/presenter.js +74 -39
  449. package/dist/gateway/presenter.js.map +1 -1
  450. package/dist/gateway/router.d.ts +2 -2
  451. package/dist/gateway/router.d.ts.map +1 -1
  452. package/dist/gateway/router.js +22 -9
  453. package/dist/gateway/router.js.map +1 -1
  454. package/dist/gateway/service.d.ts +2 -0
  455. package/dist/gateway/service.d.ts.map +1 -1
  456. package/dist/gateway/service.js +153 -0
  457. package/dist/gateway/service.js.map +1 -1
  458. package/dist/gateway/setup.d.ts.map +1 -1
  459. package/dist/gateway/setup.js +6 -4
  460. package/dist/gateway/setup.js.map +1 -1
  461. package/dist/main.d.ts.map +1 -1
  462. package/dist/main.js +86 -33
  463. package/dist/main.js.map +1 -1
  464. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  465. package/dist/modes/interactive/components/assistant-message.js +6 -4
  466. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  467. package/dist/modes/interactive/components/copyable-text.d.ts.map +1 -1
  468. package/dist/modes/interactive/components/copyable-text.js +3 -2
  469. package/dist/modes/interactive/components/copyable-text.js.map +1 -1
  470. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  471. package/dist/modes/interactive/components/extension-editor.js +1 -1
  472. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  473. package/dist/modes/interactive/components/settings-selector.d.ts +4 -0
  474. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  475. package/dist/modes/interactive/components/settings-selector.js +20 -0
  476. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  477. package/dist/modes/interactive/interactive-mode.d.ts +2 -2
  478. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  479. package/dist/modes/interactive/interactive-mode.js +104 -109
  480. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  481. package/dist/modes/interactive/smooth-streaming.d.ts.map +1 -1
  482. package/dist/modes/interactive/smooth-streaming.js.map +1 -1
  483. package/dist/modes/print-mode.d.ts.map +1 -1
  484. package/dist/modes/print-mode.js +9 -1
  485. package/dist/modes/print-mode.js.map +1 -1
  486. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  487. package/dist/modes/rpc/rpc-mode.js +2 -1
  488. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  489. package/dist/node-runtime/adapter-247RTYLS.js +16 -0
  490. package/dist/node-runtime/agent-session-services-KDMSPQDY.js +53 -0
  491. package/dist/node-runtime/{brave-UWDA3I22.js → brave-2AFFAXNN.js} +1 -1
  492. package/dist/node-runtime/{builtin-extensions-ZLAX7TUH.js → builtin-extensions-OX6KELNX.js} +9 -7
  493. package/dist/node-runtime/{chunk-QH6YL7VK.js → chunk-252ZVPPF.js} +3 -3
  494. package/dist/node-runtime/{chunk-PCEW76PM.js → chunk-2OIPYKLZ.js} +6 -6
  495. package/dist/node-runtime/{chunk-XBWPBZBN.js → chunk-2SWW7KMW.js} +1 -1
  496. package/dist/node-runtime/{chunk-UQUCFAJ3.js → chunk-2VIW3IMF.js} +40 -7
  497. package/dist/node-runtime/{chunk-UOEDI7RP.js → chunk-4KNKQGHM.js} +2 -2
  498. package/dist/node-runtime/{chunk-FQMM2EZ2.js → chunk-64XTQNLA.js} +29 -7
  499. package/dist/node-runtime/{chunk-NRKGMJYU.js → chunk-6O3IW3IA.js} +2 -2
  500. package/dist/node-runtime/{chunk-5ZQXRPMC.js → chunk-6ZZHGUSA.js} +2 -2
  501. package/dist/node-runtime/chunk-A2WO6WIN.js +1197 -0
  502. package/dist/node-runtime/{chunk-ZXSGTGJ6.js → chunk-APVM5NEU.js} +169 -148
  503. package/dist/node-runtime/{chunk-RC7DMV45.js → chunk-AYHH7YSD.js} +205 -144
  504. package/dist/node-runtime/{chunk-LWYIVUGV.js → chunk-B2IBAXNX.js} +48 -31
  505. package/dist/node-runtime/{chunk-M3LZLQW2.js → chunk-BDRGN3L2.js} +1 -0
  506. package/dist/node-runtime/{chunk-GJ2RDBRL.js → chunk-BYC6RKCN.js} +4 -2
  507. package/dist/node-runtime/{chunk-KWIYUUZK.js → chunk-C3P6Q3B2.js} +469 -283
  508. package/dist/node-runtime/{chunk-YCUZEGJG.js → chunk-DQSCFU7R.js} +17 -8
  509. package/dist/node-runtime/chunk-EBLAZVSA.js +4170 -0
  510. package/dist/node-runtime/{chunk-2KIPT4HJ.js → chunk-EPR2F3GU.js} +68 -20
  511. package/dist/node-runtime/{chunk-CSFI6YXL.js → chunk-ES6PBSIE.js} +1 -1
  512. package/dist/node-runtime/{chunk-IF24A3FH.js → chunk-EVM653DD.js} +4 -4
  513. package/dist/node-runtime/{chunk-HTFRRDSF.js → chunk-F2SMQ6ES.js} +3 -2
  514. package/dist/node-runtime/chunk-F2V2F4ZG.js +114 -0
  515. package/dist/node-runtime/chunk-FE3WZI7F.js +290 -0
  516. package/dist/node-runtime/{chunk-GYIXXQAO.js → chunk-FIRA54AC.js} +2 -5
  517. package/dist/node-runtime/{chunk-6VYZ5UFP.js → chunk-FLGEEH27.js} +1 -1
  518. package/dist/node-runtime/{chunk-5EFIU3OM.js → chunk-FTKEZL27.js} +1 -1
  519. package/dist/node-runtime/chunk-FY4A63RK.js +73 -0
  520. package/dist/node-runtime/chunk-FYIFPFXE.js +98 -0
  521. package/dist/node-runtime/{chunk-HMBGROQK.js → chunk-GLDXBBL6.js} +3 -3
  522. package/dist/node-runtime/{chunk-KWA4OC2J.js → chunk-H6YBCWKG.js} +1 -1
  523. package/dist/node-runtime/{chunk-2MI5OPMN.js → chunk-HNNHHJAB.js} +68 -50
  524. package/dist/node-runtime/{chunk-6XL67VVY.js → chunk-HUD2RFJW.js} +17 -2
  525. package/dist/node-runtime/{chunk-I54LGHWM.js → chunk-I2H5QMWW.js} +3 -3
  526. package/dist/node-runtime/chunk-IAZSK7KK.js +108 -0
  527. package/dist/node-runtime/{chunk-2HHLJWGD.js → chunk-IHHTWSXN.js} +9 -9
  528. package/dist/node-runtime/{chunk-DAPBPCBP.js → chunk-IPP5BIV5.js} +25 -3
  529. package/dist/node-runtime/{chunk-QFWG2RVL.js → chunk-IXG6F4NT.js} +11 -0
  530. package/dist/node-runtime/{chunk-RDDAZOMU.js → chunk-JL4HYQXK.js} +1 -1
  531. package/dist/node-runtime/{chunk-CDVHZOOK.js → chunk-JQYNHAKX.js} +1 -1
  532. package/dist/node-runtime/{chunk-WF7PGWRZ.js → chunk-JWEVT363.js} +37 -28
  533. package/dist/node-runtime/{chunk-2HMIRK7W.js → chunk-LHV3V67B.js} +5 -5
  534. package/dist/node-runtime/{chunk-UAEOTO52.js → chunk-MNQXDFPV.js} +6 -2
  535. package/dist/node-runtime/{chunk-IJIFHRTB.js → chunk-MQPKUHRN.js} +165 -85
  536. package/dist/node-runtime/{chunk-MPKSOJBT.js → chunk-NHATCSOI.js} +4 -7
  537. package/dist/node-runtime/{chunk-RMQZU2YU.js → chunk-NNNR3QIY.js} +1 -1
  538. package/dist/node-runtime/{chunk-RWTKOC3B.js → chunk-QBTJG3UM.js} +1 -1
  539. package/dist/node-runtime/{chunk-E4D3IGP2.js → chunk-QNVMKNNN.js} +20 -17
  540. package/dist/node-runtime/{chunk-GS42T6MX.js → chunk-QW3AAHWN.js} +1 -1
  541. package/dist/node-runtime/{chunk-7S3T6YEA.js → chunk-R4WSB2MQ.js} +5 -5
  542. package/dist/node-runtime/{chunk-B4HP6ZWM.js → chunk-RHCGYWO7.js} +1 -1
  543. package/dist/node-runtime/{chunk-3XPLBUEM.js → chunk-RLGY2QIL.js} +49 -59
  544. package/dist/node-runtime/{chunk-KKUTQQV7.js → chunk-RYRGL7P4.js} +1 -1
  545. package/dist/node-runtime/{chunk-AD6VXAO7.js → chunk-TCT6PCUR.js} +47 -115
  546. package/dist/node-runtime/chunk-U5F4IC7R.js +53 -0
  547. package/dist/node-runtime/{chunk-OCVIXVTZ.js → chunk-UBWW2PID.js} +13 -2
  548. package/dist/node-runtime/{chunk-HFVZUPFJ.js → chunk-UNUZICC4.js} +3 -3
  549. package/dist/node-runtime/{chunk-LQP3RB67.js → chunk-UYRKUKFE.js} +1 -1
  550. package/dist/node-runtime/{chunk-DSIKTUPW.js → chunk-VSUEAI7O.js} +2993 -3820
  551. package/dist/node-runtime/{chunk-NAY6UUQZ.js → chunk-WDIVLMOH.js} +1 -1
  552. package/dist/node-runtime/{chunk-E24EO34J.js → chunk-WPXUR3HE.js} +1 -1
  553. package/dist/node-runtime/{chunk-SLVOAQOY.js → chunk-WXYNALHD.js} +113 -1
  554. package/dist/node-runtime/{chunk-KJ6DWS3K.js → chunk-XEOCUEUJ.js} +121 -60
  555. package/dist/node-runtime/chunk-YD3IZAZ7.js +47 -0
  556. package/dist/node-runtime/chunk-YSB6URMT.js +41 -0
  557. package/dist/node-runtime/{chunk-VQFSUJJG.js → chunk-ZDJUR45D.js} +430 -129
  558. package/dist/node-runtime/{chunk-YDO2F2IA.js → chunk-ZEVFBFNF.js} +95 -142
  559. package/dist/node-runtime/chunk-ZIQUS5QO.js +180 -0
  560. package/dist/node-runtime/cli-runtime.js +4 -4
  561. package/dist/node-runtime/{command-6WDOYKS6.js → command-3HMSY6W2.js} +5 -5
  562. package/dist/node-runtime/{commands-NZLSOHPE.js → commands-D6A6H4TS.js} +11 -16
  563. package/dist/node-runtime/commands-OCSSEEWJ.js +37 -0
  564. package/dist/node-runtime/{config-QDD5PUE2.js → config-CU7M7BTK.js} +1 -1
  565. package/dist/node-runtime/{config-D4QUPAHX.js → config-DS7XLMEM.js} +2 -2
  566. package/dist/node-runtime/{direct-tool-executor-77GW4F5P.js → direct-tool-executor-2QJXVQD2.js} +8 -10
  567. package/dist/node-runtime/{exa-LL64QZR2.js → exa-6VBZNPGE.js} +1 -1
  568. package/dist/node-runtime/{export-html-VM4J2MNR.js → export-html-BRWF5AHI.js} +4 -4
  569. package/dist/node-runtime/{extension-input-E7BJZ35H.js → extension-input-VBBMX7YV.js} +5 -5
  570. package/dist/node-runtime/{extension-selector-WU42XDTU.js → extension-selector-T5AOG5XB.js} +5 -5
  571. package/dist/node-runtime/{extract-EQJE7FZZ.js → extract-BFX2N35A.js} +3 -3
  572. package/dist/node-runtime/{gateway-INAYBF4Q.js → gateway-6623C2U3.js} +61 -53
  573. package/dist/node-runtime/{gemini-search-35OCRFLN.js → gemini-search-C66QHDT6.js} +2 -2
  574. package/dist/node-runtime/{gemini-url-context-UQY3PHHW.js → gemini-url-context-T7DEK73R.js} +3 -3
  575. package/dist/node-runtime/{github-extract-F64RZOEA.js → github-extract-HOGE3D6F.js} +107 -38
  576. package/dist/node-runtime/{goal-NJEE5CTU.js → goal-AIHEDUYA.js} +5 -5
  577. package/dist/node-runtime/index.js +54 -48
  578. package/dist/node-runtime/{init-HS6NQXSK.js → init-JBQJIPYI.js} +3 -4
  579. package/dist/node-runtime/{install-cli-KL4UDDAD.js → install-cli-INGHIVBY.js} +30 -25
  580. package/dist/node-runtime/interactive-mode-FM5DNUSW.js +74 -0
  581. package/dist/node-runtime/{interactive-view-NGFAMHPW.js → interactive-view-K33PM4OS.js} +8 -8
  582. package/dist/node-runtime/{lsp-manager-3ASUSO4T.js → lsp-manager-S554V5HR.js} +240 -155
  583. package/dist/node-runtime/{lunr-browser-IR7TL3J7.js → lunr-browser-H4FDOR3C.js} +7 -7
  584. package/dist/node-runtime/lunr-computer-use-VDP2QNRQ.js +158 -0
  585. package/dist/node-runtime/{lunr-cron-LWIZJM2N.js → lunr-cron-LKVA5CZZ.js} +94 -79
  586. package/dist/node-runtime/main.js +42 -39
  587. package/dist/node-runtime/{mobile-commands-J7OJEKFO.js → mobile-commands-XT3NQXLD.js} +13 -12
  588. package/dist/node-runtime/{model-runtime-OO5HFLWE.js → model-runtime-MZ2JMDV4.js} +4 -4
  589. package/dist/node-runtime/{openai-search-B3MSNCQA.js → openai-search-K72LJDYN.js} +1 -1
  590. package/dist/node-runtime/{package-manager-cli-VYZM5WHN.js → package-manager-cli-CYM262SI.js} +20 -19
  591. package/dist/node-runtime/{parallel-AI2MNSCU.js → parallel-X724NCNU.js} +1 -1
  592. package/dist/node-runtime/{perplexity-QVJW3I35.js → perplexity-RDHQHVMK.js} +2 -2
  593. package/dist/node-runtime/{pi-intercom-QM53RLTS.js → pi-intercom-NHHEPBMI.js} +2 -2
  594. package/dist/node-runtime/{pi-mcp-adapter-5UKBZP44.js → pi-mcp-adapter-PP3GQJQ2.js} +98 -94
  595. package/dist/node-runtime/{pi-ollama-cloud-2F3Y2QNM.js → pi-ollama-cloud-4MNWIMFN.js} +11 -24
  596. package/dist/node-runtime/{pi-prompt-template-model-QWTCGLJU.js → pi-prompt-template-model-FTGELLS5.js} +32 -36
  597. package/dist/node-runtime/{pi-subagents-DNY7EAIG.js → pi-subagents-LT3CTO4E.js} +114 -116
  598. package/dist/node-runtime/{pi-web-access-WTGMNZ32.js → pi-web-access-Z3LP246C.js} +144 -108
  599. package/dist/node-runtime/{print-mode-XSFM26EL.js → print-mode-2XHN5SUA.js} +4 -3
  600. package/dist/node-runtime/{process-registry-4FAKZQOL.js → process-registry-Q4QWIU33.js} +3 -3
  601. package/dist/node-runtime/{proxy-modes-LGEUYD7R.js → proxy-modes-VEGC6QG5.js} +9 -13
  602. package/dist/node-runtime/rpc-entry.js +42 -39
  603. package/dist/node-runtime/{rpc-mode-O3XV4SID.js → rpc-mode-32DHJPEJ.js} +4 -4
  604. package/dist/node-runtime/{runtime-4VA6JKNF.js → runtime-EDUUGAQD.js} +56 -46
  605. package/dist/node-runtime/runtime-UGXM4NPQ.js +21 -0
  606. package/dist/node-runtime/{runtime-bridges-VRDDR73P.js → runtime-bridges-DNKMNJCF.js} +8 -7
  607. package/dist/node-runtime/{service-MDQIPQ26.js → service-IHLGFLBT.js} +6 -4
  608. package/dist/node-runtime/{session-handoff-GWARVEWT.js → session-handoff-LNSPDTKY.js} +4 -4
  609. package/dist/node-runtime/{session-manager-JB5J6XBN.js → session-manager-YIFIAVGC.js} +3 -3
  610. package/dist/node-runtime/{session-selector-GIM4DHQ2.js → session-selector-I73U3EIO.js} +7 -7
  611. package/dist/node-runtime/{settings-manager-J4SPQPDJ.js → settings-manager-P2TKGYTR.js} +6 -5
  612. package/dist/node-runtime/{setup-JBKOLJ6F.js → setup-H7CCELIL.js} +15 -1
  613. package/dist/node-runtime/{setup-CQ2NLVK5.js → setup-OLQ4GXWS.js} +22 -21
  614. package/dist/node-runtime/{src-IVPNZ2BX.js → src-6RV4PXKJ.js} +64 -36
  615. package/dist/node-runtime/{subagent-executor-KZZQGAKV.js → subagent-executor-Q5F7DBVM.js} +141 -62
  616. package/dist/node-runtime/{tavily-WEZFVFP7.js → tavily-KZBFYQB6.js} +1 -1
  617. package/dist/node-runtime/{theme-UOO5RVFN.js → theme-YLVZKKZD.js} +2 -2
  618. package/dist/node-runtime/{trust-manager-MMISNCYO.js → trust-manager-ZCU76D23.js} +2 -2
  619. package/dist/node-runtime/{update-cli-GTFJC7XK.js → update-cli-F3XXJANQ.js} +7 -6
  620. package/dist/node-runtime/{usage-service-LFB2SWYV.js → usage-service-CPAGBED5.js} +1 -1
  621. package/dist/node-runtime/{video-extract-OOZHR7SU.js → video-extract-UPKYIBW3.js} +3 -3
  622. package/dist/node-runtime/workflow-ICDI4N3J.js +767 -0
  623. package/dist/node-runtime/{youtube-extract-FNPAUNHU.js → youtube-extract-77NT7FWH.js} +4 -4
  624. package/dist/utils/clipboard-image.d.ts.map +1 -1
  625. package/dist/utils/clipboard-image.js.map +1 -1
  626. package/dist/utils/exif-orientation.d.ts.map +1 -1
  627. package/dist/utils/exif-orientation.js +25 -10
  628. package/dist/utils/exif-orientation.js.map +1 -1
  629. package/dist/utils/image-resize-core.d.ts +2 -0
  630. package/dist/utils/image-resize-core.d.ts.map +1 -1
  631. package/dist/utils/image-resize-core.js +12 -0
  632. package/dist/utils/image-resize-core.js.map +1 -1
  633. package/dist/utils/paths.d.ts +4 -0
  634. package/dist/utils/paths.d.ts.map +1 -1
  635. package/dist/utils/paths.js +33 -2
  636. package/dist/utils/paths.js.map +1 -1
  637. package/dist/utils/sanitize-terminal-text.d.ts +7 -0
  638. package/dist/utils/sanitize-terminal-text.d.ts.map +1 -0
  639. package/dist/utils/sanitize-terminal-text.js +67 -0
  640. package/dist/utils/sanitize-terminal-text.js.map +1 -0
  641. package/docs/browser.md +1 -1
  642. package/docs/computer-use.md +362 -0
  643. package/docs/custom-provider.md +3 -3
  644. package/docs/extensions.md +8 -4
  645. package/docs/features.md +22 -12
  646. package/docs/keybindings.md +1 -1
  647. package/docs/models.md +5 -5
  648. package/docs/packages.md +1 -1
  649. package/docs/providers.md +2 -2
  650. package/docs/rpc.md +7 -7
  651. package/docs/security.md +10 -5
  652. package/docs/sessions.md +2 -2
  653. package/docs/skills.md +1 -1
  654. package/docs/terminal-setup.md +7 -7
  655. package/docs/themes.md +1 -1
  656. package/docs/usage.md +1 -1
  657. package/examples/extensions/auto-commit-on-exit.ts +1 -1
  658. package/examples/extensions/bash-spawn-hook.ts +1 -1
  659. package/examples/extensions/built-in-tool-renderer.ts +1 -1
  660. package/examples/extensions/claude-rules.ts +1 -1
  661. package/examples/extensions/commands.ts +1 -1
  662. package/examples/extensions/custom-compaction.ts +1 -1
  663. package/examples/extensions/custom-provider-anthropic/index.ts +3 -3
  664. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  665. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  666. package/examples/extensions/custom-provider-gitlab-duo/index.ts +1 -1
  667. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  668. package/examples/extensions/doom-overlay/index.ts +1 -1
  669. package/examples/extensions/git-merge-and-resolve.ts +2 -2
  670. package/examples/extensions/gondolin/index.ts +1 -1
  671. package/examples/extensions/gondolin/package-lock.json +2 -2
  672. package/examples/extensions/gondolin/package.json +1 -1
  673. package/examples/extensions/hidden-thinking-label.ts +1 -1
  674. package/examples/extensions/inline-bash.ts +2 -2
  675. package/examples/extensions/input-transform-streaming.ts +2 -2
  676. package/examples/extensions/input-transform.ts +2 -2
  677. package/examples/extensions/interactive-shell.ts +1 -1
  678. package/examples/extensions/kimi-deferred-tools.ts +1 -1
  679. package/examples/extensions/mac-system-theme.ts +1 -1
  680. package/examples/extensions/minimal-mode.ts +1 -1
  681. package/examples/extensions/modal-editor.ts +1 -1
  682. package/examples/extensions/model-status.ts +1 -1
  683. package/examples/extensions/notify.ts +3 -3
  684. package/examples/extensions/overlay-qa-tests.ts +1 -1
  685. package/examples/extensions/overlay-test.ts +1 -1
  686. package/examples/extensions/pirate.ts +1 -1
  687. package/examples/extensions/preset.ts +3 -3
  688. package/examples/extensions/project-trust.ts +4 -4
  689. package/examples/extensions/prompt-customizer.ts +1 -1
  690. package/examples/extensions/rainbow-editor.ts +1 -1
  691. package/examples/extensions/rpc-demo.ts +1 -1
  692. package/examples/extensions/sandbox/index.ts +7 -7
  693. package/examples/extensions/sandbox/package-lock.json +2 -2
  694. package/examples/extensions/sandbox/package.json +1 -1
  695. package/examples/extensions/shutdown-command.ts +5 -5
  696. package/examples/extensions/ssh.ts +2 -2
  697. package/examples/extensions/subagent/README.md +3 -3
  698. package/examples/extensions/subagent/index.ts +2 -2
  699. package/examples/extensions/titlebar-spinner.ts +1 -1
  700. package/examples/extensions/tool-override.ts +1 -1
  701. package/examples/extensions/tools.ts +1 -1
  702. package/examples/extensions/with-deps/package-lock.json +2 -2
  703. package/examples/extensions/with-deps/package.json +1 -1
  704. package/examples/extensions/working-indicator.ts +1 -1
  705. package/examples/extensions/working-message-test.ts +1 -1
  706. package/examples/sdk/01-minimal.ts +1 -1
  707. package/examples/sdk/03-custom-prompt.ts +1 -1
  708. package/examples/sdk/04-skills.ts +1 -1
  709. package/examples/sdk/06-extensions.ts +2 -2
  710. package/examples/sdk/08-prompt-templates.ts +1 -1
  711. package/install-lock/package-lock.json +3841 -0
  712. package/install-lock/package.json +18 -0
  713. package/native/computer-use/LICENSE.md +21 -0
  714. package/npm-shrinkwrap.json +3858 -0
  715. package/package.json +15 -9
  716. package/dist/modes/interactive/components/exit-card.d.ts +0 -22
  717. package/dist/modes/interactive/components/exit-card.d.ts.map +0 -1
  718. package/dist/modes/interactive/components/exit-card.js +0 -69
  719. package/dist/modes/interactive/components/exit-card.js.map +0 -1
  720. package/dist/node-runtime/agent-session-services-YXXFCP5J.js +0 -49
  721. package/dist/node-runtime/chunk-4HXHDDCF.js +0 -16
  722. package/dist/node-runtime/chunk-4TLO4PO2.js +0 -3427
  723. package/dist/node-runtime/chunk-AUXVGBO4.js +0 -19
  724. package/dist/node-runtime/chunk-OVX6X377.js +0 -50
  725. package/dist/node-runtime/chunk-QTU6AKNJ.js +0 -773
  726. package/dist/node-runtime/chunk-TORR5XBV.js +0 -356
  727. package/dist/node-runtime/commands-QC6VUZJQ.js +0 -36
  728. package/dist/node-runtime/interactive-mode-Z5M7WYYZ.js +0 -72
  729. package/dist/node-runtime/mcp-auth-flow-QIXHW6QN.js +0 -32
@@ -390,6 +390,7 @@ var require_main2 = __commonJS({
390
390
  import { resolve, join } from "node:path";
391
391
  import { pathToFileURL as pathToFileURL2 } from "node:url";
392
392
  import { existsSync, readFileSync, readdirSync, unlinkSync } from "node:fs";
393
+ import { setTimeout as delay } from "node:timers/promises";
393
394
  import { spawn as spawnChild } from "node:child_process";
394
395
 
395
396
  // packages/coding-agent/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js
@@ -408,6 +409,9 @@ var LspClient = class {
408
409
  _disposed = !1;
409
410
  /** True if connected to a daemon socket (server init handled by daemon) */
410
411
  _isDaemonClient = !1;
412
+ stop = new AbortController();
413
+ startPromise = null;
414
+ shutdownPromise = null;
411
415
  languageId;
412
416
  command;
413
417
  rootDir;
@@ -432,8 +436,18 @@ var LspClient = class {
432
436
  return new Map(this._diagnostics);
433
437
  }
434
438
  /** Start the LSP server and perform the initialize handshake */
435
- async start() {
436
- this._initialized || this._disposed || (this.options.socketPath ? await this.connectToSocket(this.options.socketPath) : await this.spawnDirect());
439
+ start() {
440
+ return this._disposed ? Promise.reject(new Error("LSP client shut down")) : this.startPromise ? this.startPromise : (this.startPromise = (this.options.socketPath ? this.connectToSocket(this.options.socketPath) : this.spawnDirect()).catch(async (error) => {
441
+ throw await this.shutdown(), error;
442
+ }), this.startPromise);
443
+ }
444
+ /** Cancel an owned handshake without waiting for the remote server. */
445
+ waitForStart(pending) {
446
+ let signal = this.stop.signal;
447
+ return signal.throwIfAborted(), new Promise((resolve2, reject) => {
448
+ let aborted = () => reject(signal.reason);
449
+ signal.addEventListener("abort", aborted, { once: !0 }), pending.then(resolve2, reject).finally(() => signal.removeEventListener("abort", aborted));
450
+ });
437
451
  }
438
452
  /** Register shared connection handlers (diagnostics, workspace/configuration, errors) */
439
453
  registerConnectionHandlers() {
@@ -451,64 +465,63 @@ var LspClient = class {
451
465
  /** Connect to an existing LSP daemon via Unix socket (no init handshake needed) */
452
466
  async connectToSocket(socketPath) {
453
467
  return this._isDaemonClient = !0, new Promise((resolve2, reject) => {
454
- let settled = !1, settle = (fn) => {
455
- settled || (settled = !0, fn());
468
+ let settled = !1, connected = !1, timeout, settle = (error) => {
469
+ settled || (settled = !0, clearTimeout(timeout), this.stop.signal.removeEventListener("abort", aborted), error ? reject(error) : resolve2());
470
+ }, aborted = () => {
471
+ settle(new Error("LSP client shut down")), socket.destroy();
456
472
  }, socket = netConnect(socketPath, () => {
457
- this.socket = socket;
458
- let reader = new import_node.SocketMessageReader(socket), writer = new import_node.SocketMessageWriter(socket);
459
- this.connection = (0, import_node.createMessageConnection)(reader, writer), this.registerConnectionHandlers(), this.connection.listen(), this._initialized = !0, settle(() => resolve2());
473
+ if (this._disposed || settled) {
474
+ socket.destroy();
475
+ return;
476
+ }
477
+ try {
478
+ let reader = new import_node.SocketMessageReader(socket), writer = new import_node.SocketMessageWriter(socket);
479
+ this.connection = (0, import_node.createMessageConnection)(reader, writer), this.registerConnectionHandlers(), this.connection.listen(), this._initialized = !0, connected = !0, settle();
480
+ } catch (error) {
481
+ settle(error instanceof Error ? error : new Error(String(error))), socket.destroy();
482
+ }
460
483
  });
461
- socket.on("error", (err) => {
462
- this._initialized ? this._initialized = !1 : settle(() => reject(new Error(`Failed to connect to LSP daemon: ${err.message}`)));
484
+ this.socket = socket, socket.on("error", (err) => {
485
+ settle(new Error(`Failed to connect to LSP daemon: ${err.message}`)), this._initialized = !1;
463
486
  }), socket.on("close", () => {
464
- this._disposed || (this._initialized = !1, this.options.onUnexpectedExit?.(null));
465
- }), setTimeout(() => {
466
- settled || (socket.destroy(), settle(() => reject(new Error("Timeout connecting to LSP daemon socket"))));
467
- }, 1e4);
487
+ settle(new Error("LSP daemon socket closed during startup")), this._disposed || (this._initialized = !1, connected && this.options.onUnexpectedExit?.(null));
488
+ }), timeout = setTimeout(() => {
489
+ settle(new Error("Timeout connecting to LSP daemon socket")), socket.destroy();
490
+ }, 1e4), this.stop.signal.addEventListener("abort", aborted, { once: !0 }), this.stop.signal.aborted && aborted();
468
491
  });
469
492
  }
470
493
  /** Spawn LSP server directly as child process with stdio */
471
494
  async spawnDirect() {
472
495
  let env = { ...process.env, ...this.options.env };
473
- if (this.process = spawn(this.options.command, this.options.args, {
496
+ this.process = spawn(this.options.command, this.options.args, {
474
497
  stdio: ["pipe", "pipe", "pipe"],
475
498
  env,
476
499
  cwd: this.rootDir
477
- }), !this.process.stdout || !this.process.stdin)
500
+ });
501
+ let child = this.process;
502
+ for (let stream of [child.stdin, child.stdout, child.stderr])
503
+ stream?.on("error", (err) => {
504
+ this._disposed || console.error(`[LSP ${this.languageId}] Transport error: ${err.message}`);
505
+ });
506
+ child.on("error", (err) => {
507
+ this._disposed || console.error(`[LSP ${this.languageId}] Process error: ${err.message}`), this._initialized = !1, this.disposeConnection();
508
+ });
509
+ let wasInitialized = !1;
510
+ if (child.on("exit", (code) => {
511
+ this._disposed || (this._initialized = !1, this.disposeConnection(), wasInitialized && this.options.onUnexpectedExit?.(code));
512
+ }), !child.stdout || !child.stdin)
478
513
  throw new Error(`Failed to spawn LSP server: ${this.options.command}`);
479
- await new Promise((resolve2, reject) => {
514
+ await this.waitForStart(new Promise((resolve2, reject) => {
480
515
  let onSpawn = () => {
481
516
  cleanup(), resolve2();
482
517
  }, onError = (err) => {
483
518
  cleanup(), reject(new Error(`Failed to spawn LSP server "${this.options.command}": ${err.message}`));
484
519
  }, cleanup = () => {
485
- this.process?.removeListener("spawn", onSpawn), this.process?.removeListener("error", onError);
520
+ child.removeListener("spawn", onSpawn), child.removeListener("error", onError), this.stop.signal.removeEventListener("abort", cleanup);
486
521
  };
487
- this.process.on("spawn", onSpawn), this.process.on("error", onError);
488
- }), this.process.stderr?.resume();
489
- let stdin = this.process.stdin, originalWrite = stdin.write;
490
- stdin.write = function(...args) {
491
- if (this.destroyed || this.writableEnded || this.writableFinished) {
492
- let cb = args[args.length - 1];
493
- return typeof cb == "function" && process.nextTick(cb), !1;
494
- }
495
- try {
496
- return originalWrite.apply(this, args);
497
- } catch (err) {
498
- if (err?.code === "EPIPE" || err?.code === "ERR_STREAM_DESTROYED") {
499
- let cb = args[args.length - 1];
500
- return typeof cb == "function" && process.nextTick(cb), !1;
501
- }
502
- throw err;
503
- }
504
- }, stdin.on("error", (err) => {
505
- err?.code !== "EPIPE" && console.error(`[LSP ${this.languageId}] stdin error: ${err.message}`);
506
- }), this.process.on("error", (err) => {
507
- console.error(`[LSP ${this.languageId}] Process error: ${err.message}`), this._initialized = !1, this.disposeConnection();
508
- }), this.process.on("exit", (code) => {
509
- this._disposed || (console.error(`[LSP ${this.languageId}] Server exited with code ${code}`), this._initialized = !1, this.disposeConnection(), this.options.onUnexpectedExit?.(code));
510
- });
511
- let reader = new import_node.StreamMessageReader(this.process.stdout), writer = new import_node.StreamMessageWriter(this.process.stdin);
522
+ child.once("spawn", onSpawn), child.once("error", onError), this.stop.signal.addEventListener("abort", cleanup, { once: !0 });
523
+ })), this.stop.signal.throwIfAborted(), child.stderr?.resume();
524
+ let reader = new import_node.StreamMessageReader(child.stdout), writer = new import_node.StreamMessageWriter(child.stdin);
512
525
  this.connection = (0, import_node.createMessageConnection)(reader, writer), this.registerConnectionHandlers(), this.connection.listen();
513
526
  let rootUri = pathToFileURL(this.rootDir).toString(), defaultFolder = { uri: rootUri, name: this.rootDir.split("/").pop() ?? "workspace" }, workspaceFolders = this.options.workspaceFolders && this.options.workspaceFolders.length > 0 ? this.options.workspaceFolders : [defaultFolder], initParams = {
514
527
  processId: process.pid,
@@ -547,8 +560,8 @@ var LspClient = class {
547
560
  rootUri,
548
561
  workspaceFolders,
549
562
  ...this.options.initializationOptions ? { initializationOptions: this.options.initializationOptions } : {}
550
- }, result = await this.connection.sendRequest("initialize", initParams);
551
- this._serverCapabilities = result.capabilities, this.connection.sendNotification("initialized", {}), this._initialized = !0;
563
+ }, result = await this.waitForStart(this.connection.sendRequest("initialize", initParams));
564
+ this.stop.signal.throwIfAborted(), this._serverCapabilities = result.capabilities, await this.waitForStart(this.connection.sendNotification("initialized", {})), this.stop.signal.throwIfAborted(), this._initialized = !0, wasInitialized = !0;
552
565
  }
553
566
  /** Safely dispose the connection without throwing */
554
567
  disposeConnection() {
@@ -566,7 +579,17 @@ var LspClient = class {
566
579
  }
567
580
  /** Send a notification to the LSP server */
568
581
  sendNotification(method, params) {
569
- !this.connection || !this._initialized || this.connection.sendNotification(method, params);
582
+ if (!this.connection || !this._initialized)
583
+ return;
584
+ let report = (error) => {
585
+ let message = error instanceof Error ? error.message : String(error);
586
+ this._disposed || console.error(`[LSP ${this.languageId}] Notification failed: ${message}`);
587
+ };
588
+ try {
589
+ this.connection.sendNotification(method, params).catch(report);
590
+ } catch (error) {
591
+ report(error);
592
+ }
570
593
  }
571
594
  /** Notify server of a newly opened document */
572
595
  didOpen(uri, languageId, version, text) {
@@ -588,31 +611,60 @@ var LspClient = class {
588
611
  });
589
612
  }
590
613
  /** Gracefully shut down or disconnect from the server */
591
- async shutdown() {
592
- if (!this._disposed) {
593
- if (this._disposed = !0, this._initialized = !1, this._isDaemonClient) {
594
- this.disposeConnection(), this.socket && this.socket.destroy(), this.socket = null;
595
- return;
596
- }
614
+ shutdown() {
615
+ if (this.shutdownPromise)
616
+ return this.shutdownPromise;
617
+ let initialized = this._initialized;
618
+ return this._disposed = !0, this._initialized = !1, this.stop.abort(new Error("LSP client shut down")), this.shutdownPromise = this.shutdownOwnedTransport(initialized), this.shutdownPromise;
619
+ }
620
+ async shutdownOwnedTransport(initialized) {
621
+ let child = this.process, connection = this.connection;
622
+ if (this.process = null, this._isDaemonClient) {
623
+ this.disposeConnection(), this.socket?.destroy(), this.socket = null;
624
+ return;
625
+ }
626
+ if (connection && initialized) {
627
+ let timeout;
597
628
  try {
598
- if (this.connection) {
599
- let shutdownReq = this.connection.sendRequest("shutdown").catch(() => {
629
+ let graceful = async () => {
630
+ await connection.sendRequest("shutdown").catch(() => {
631
+ }), await connection.sendNotification("exit").catch(() => {
600
632
  });
601
- await Promise.race([
602
- shutdownReq,
603
- new Promise((resolve2) => setTimeout(resolve2, 3e3))
604
- ]);
605
- try {
606
- this.connection.sendNotification("exit");
607
- } catch {
608
- }
609
- }
633
+ };
634
+ await Promise.race([
635
+ graceful().catch(() => {
636
+ }),
637
+ new Promise((resolve2) => {
638
+ timeout = setTimeout(resolve2, 3e3);
639
+ })
640
+ ]);
610
641
  } catch {
642
+ } finally {
643
+ clearTimeout(timeout);
611
644
  }
612
- this.disposeConnection(), this.process && (this.process.kill("SIGTERM"), setTimeout(() => {
613
- this.process && !this.process.killed && this.process.kill("SIGKILL");
614
- }, 2e3)), this.process = null;
615
645
  }
646
+ this.disposeConnection(), !(!child || child.exitCode !== null || child.signalCode !== null) && await new Promise((resolve2, reject) => {
647
+ let forceTimer, exitTimer, cleanup = () => {
648
+ clearTimeout(forceTimer), clearTimeout(exitTimer), child.removeListener("exit", exited);
649
+ }, exited = () => {
650
+ cleanup(), resolve2();
651
+ }, signalChild = (signal) => {
652
+ try {
653
+ child.kill(signal);
654
+ } catch (error) {
655
+ cleanup(), reject(error);
656
+ }
657
+ };
658
+ child.once("exit", exited), forceTimer = setTimeout(() => {
659
+ if (child.exitCode !== null || child.signalCode !== null) {
660
+ exited();
661
+ return;
662
+ }
663
+ exitTimer = setTimeout(() => {
664
+ cleanup(), reject(new Error(`LSP ${this.languageId} process did not exit after SIGKILL`));
665
+ }, 1e3), signalChild("SIGKILL");
666
+ }, 2e3), signalChild("SIGTERM");
667
+ });
616
668
  }
617
669
  };
618
670
 
@@ -656,6 +708,10 @@ var DEFAULT_SERVERS = {
656
708
  _sessionId;
657
709
  _lombokJarPath = null;
658
710
  _shuttingDown = !1;
711
+ stop = new AbortController();
712
+ pendingClients = /* @__PURE__ */ new Set();
713
+ restartTimers = /* @__PURE__ */ new Set();
714
+ shutdownPromise = null;
659
715
  _restartAttempts = /* @__PURE__ */ new Map();
660
716
  _restartBackoff = /* @__PURE__ */ new Map();
661
717
  static MAX_RESTART_ATTEMPTS = 3;
@@ -814,17 +870,17 @@ var DEFAULT_SERVERS = {
814
870
  * Returns null if no server is configured for this language.
815
871
  */
816
872
  async getClientForLanguage(languageId) {
873
+ if (this._shuttingDown)
874
+ return null;
817
875
  let existing = this.clients.get(languageId);
818
876
  if (existing && existing.initialized && !existing.disposed)
819
877
  return existing;
820
878
  if (this.startingServers.get(languageId))
821
879
  return null;
822
880
  let config = this.serverConfigs.get(languageId);
823
- if (!config)
824
- return null;
825
- let startPromise = this.startServer(languageId, config);
826
- return this.startingServers.set(languageId, startPromise), startPromise.catch((err) => {
827
- this.startingServers.delete(languageId);
881
+ return config && this.trackStart(languageId, config).catch((err) => {
882
+ if (this._shuttingDown)
883
+ return;
828
884
  let message = `Failed to start LSP server for ${languageId}: ${err.message}`;
829
885
  this._callbacks.onServerError?.(languageId, message);
830
886
  }), null;
@@ -841,18 +897,18 @@ var DEFAULT_SERVERS = {
841
897
  * is fire-and-forget — intended for session_start auto-start.
842
898
  */
843
899
  startEagerly(languageIds) {
844
- for (let languageId of languageIds) {
845
- let existing = this.clients.get(languageId);
846
- if (existing && existing.initialized && !existing.disposed || this.startingServers.has(languageId))
847
- continue;
848
- let config = this.serverConfigs.get(languageId);
849
- if (!config)
850
- continue;
851
- let startPromise = this.startServer(languageId, config);
852
- this.startingServers.set(languageId, startPromise), startPromise.catch((err) => {
853
- this.startingServers.delete(languageId), this._callbacks.onServerError?.(languageId, `Auto-start failed: ${err.message}`);
854
- });
855
- }
900
+ if (!this._shuttingDown)
901
+ for (let languageId of languageIds) {
902
+ let existing = this.clients.get(languageId);
903
+ if (existing && existing.initialized && !existing.disposed || this.startingServers.has(languageId))
904
+ continue;
905
+ let config = this.serverConfigs.get(languageId);
906
+ if (!config)
907
+ continue;
908
+ this.trackStart(languageId, config).catch((err) => {
909
+ this._shuttingDown || this._callbacks.onServerError?.(languageId, `Auto-start failed: ${err.message}`);
910
+ });
911
+ }
856
912
  }
857
913
  /**
858
914
  * Ensure workspace provider is ready (one-time per session).
@@ -862,88 +918,98 @@ var DEFAULT_SERVERS = {
862
918
  if (this._workspaceReady)
863
919
  return;
864
920
  if (this._workspaceReadying) {
865
- await this._workspaceReadying;
921
+ await this.waitForStart(this._workspaceReadying);
866
922
  return;
867
923
  }
868
- this._callbacks.onWorkspaceSetupStart?.();
924
+ this._callbacks.onWorkspaceSetupStart?.(), this.stop.signal.throwIfAborted();
869
925
  let start = Date.now();
870
926
  this._workspaceReadying = this._workspace.ensureReady(this._sessionId);
871
927
  try {
872
- let success = await this._workspaceReadying;
928
+ let success = await this.waitForStart(this._workspaceReadying);
873
929
  this._callbacks.onWorkspaceSetupEnd?.(success, Date.now() - start);
874
930
  } finally {
875
931
  this._workspaceReady = !0, this._workspaceReadying = null;
876
932
  }
877
933
  }
934
+ /** Keep starts registered until their owned clients have either attached or closed. */
935
+ trackStart(languageId, config) {
936
+ this.stop.signal.throwIfAborted();
937
+ let existing = this.startingServers.get(languageId);
938
+ if (existing)
939
+ return existing;
940
+ let pending = Promise.resolve().then(() => this.startServer(languageId, config)).finally(() => {
941
+ this.startingServers.get(languageId) === pending && this.startingServers.delete(languageId);
942
+ });
943
+ return this.startingServers.set(languageId, pending), pending;
944
+ }
945
+ waitForStart(pending) {
946
+ let signal = this.stop.signal;
947
+ return signal.throwIfAborted(), new Promise((resolve2, reject) => {
948
+ let aborted = () => reject(signal.reason);
949
+ signal.addEventListener("abort", aborted, { once: !0 }), pending.then(resolve2, reject).finally(() => signal.removeEventListener("abort", aborted));
950
+ });
951
+ }
878
952
  async startServer(languageId, config) {
879
- await this.ensureWorkspace();
953
+ this.stop.signal.throwIfAborted(), await this.ensureWorkspace(), this.stop.signal.throwIfAborted();
880
954
  let stateDir = this._workspace.stateDir, folders = this._workspace.getWorkspaceFolders(), workspaceFolders = folders.length > 0 ? folders : void 0, initializationOptions = config.initializationOptions ?? (languageId === "java" ? this.getJavaInitializationOptions() : void 0), effectiveArgs = config.args;
881
955
  if (languageId === "java") {
882
956
  let lombokJar = this.findLombokJar();
883
957
  lombokJar && (effectiveArgs = [`--jvm-arg=-javaagent:${lombokJar}`, ...config.args]);
884
958
  }
885
- let onUnexpectedExit = (code) => this.handleUnexpectedExit(languageId, code), socketPath = this.getSocketPath(languageId);
959
+ let onUnexpectedExit = (code) => this.handleUnexpectedExit(languageId, code), connectClient = async (socketPath2) => {
960
+ this.stop.signal.throwIfAborted();
961
+ let client = new LspClient({
962
+ command: config.command,
963
+ args: effectiveArgs,
964
+ rootDir: this.rootDir,
965
+ languageId,
966
+ socketPath: socketPath2,
967
+ env: config.env,
968
+ workspaceFolders,
969
+ initializationOptions,
970
+ settings: config.settings,
971
+ onUnexpectedExit
972
+ });
973
+ this.pendingClients.add(client);
974
+ try {
975
+ if (await this.waitForStart(client.start()), this.stop.signal.throwIfAborted(), !client.initialized || client.disposed)
976
+ throw new Error("LSP client closed during startup");
977
+ return this.clients.set(languageId, client), this._callbacks.onServerReady?.(languageId), this._restartAttempts.delete(languageId), this._restartBackoff.delete(languageId), this.triggerPostInit(languageId, client), client;
978
+ } catch (error) {
979
+ throw await client.shutdown(), error;
980
+ } finally {
981
+ this.pendingClients.delete(client);
982
+ }
983
+ }, socketPath = this.getSocketPath(languageId);
886
984
  if (socketPath && this.isDaemonAlive(languageId)) {
887
985
  this._callbacks.onServerStart?.(languageId, `${config.command} (shared)`);
888
986
  try {
889
- let client2 = new LspClient({
890
- command: config.command,
891
- args: effectiveArgs,
892
- rootDir: this.rootDir,
893
- languageId,
894
- socketPath,
895
- initializationOptions,
896
- settings: config.settings,
897
- onUnexpectedExit
898
- });
899
- return await client2.start(), this.clients.set(languageId, client2), this.startingServers.delete(languageId), this._callbacks.onServerReady?.(languageId), this._restartAttempts.delete(languageId), this._restartBackoff.delete(languageId), this.triggerPostInit(languageId, client2), client2;
987
+ return await connectClient(socketPath);
900
988
  } catch {
989
+ this.stop.signal.throwIfAborted();
901
990
  }
902
991
  }
903
- if (this._callbacks.onServerStart?.(languageId, config.command), stateDir)
992
+ if (this.stop.signal.throwIfAborted(), this._callbacks.onServerStart?.(languageId, config.command), stateDir)
904
993
  try {
905
- await this.spawnDaemon(languageId, config, effectiveArgs, workspaceFolders, initializationOptions), await new Promise((r) => setTimeout(r, 500));
906
- let daemonSocket = this.getSocketPath(languageId), lastErr = null;
907
- for (let attempt = 0; attempt < 60; attempt++)
994
+ await this.spawnDaemon(languageId, config, effectiveArgs, workspaceFolders, initializationOptions), await delay(500, void 0, { signal: this.stop.signal });
995
+ let daemonSocket = this.getSocketPath(languageId), lastErr;
996
+ for (let attempt = 0; attempt < 60; attempt++) {
997
+ this.stop.signal.throwIfAborted();
908
998
  try {
909
- let client2 = new LspClient({
910
- command: config.command,
911
- args: effectiveArgs,
912
- rootDir: this.rootDir,
913
- languageId,
914
- socketPath: daemonSocket,
915
- initializationOptions,
916
- settings: config.settings,
917
- onUnexpectedExit
918
- });
919
- return await client2.start(), this.clients.set(languageId, client2), this.startingServers.delete(languageId), this._callbacks.onServerReady?.(languageId), this._restartAttempts.delete(languageId), this._restartBackoff.delete(languageId), this.triggerPostInit(languageId, client2), client2;
920
- } catch (err) {
921
- if (lastErr = err, !this.isDaemonAlive(languageId))
922
- throw new Error(`Daemon for ${languageId} died during startup: ${err.message}`);
923
- await new Promise((r) => setTimeout(r, 5e3));
999
+ return await connectClient(daemonSocket);
1000
+ } catch (error) {
1001
+ if (this.stop.signal.throwIfAborted(), lastErr = error, !this.isDaemonAlive(languageId))
1002
+ throw error;
1003
+ await delay(5e3, void 0, { signal: this.stop.signal });
924
1004
  }
1005
+ }
925
1006
  throw lastErr ?? new Error("Failed to connect to daemon");
926
- } catch (err) {
927
- this._callbacks.onServerError?.(languageId, `Daemon mode failed, falling back to direct: ${err.message}`), this.startingServers.delete(languageId);
1007
+ } catch (error) {
1008
+ this.stop.signal.throwIfAborted();
1009
+ let message = error instanceof Error ? error.message : String(error);
1010
+ this._callbacks.onServerError?.(languageId, `Daemon mode failed, falling back to direct: ${message}`);
928
1011
  }
929
- let client = new LspClient({
930
- command: config.command,
931
- args: effectiveArgs,
932
- rootDir: this.rootDir,
933
- languageId,
934
- env: config.env,
935
- workspaceFolders,
936
- initializationOptions,
937
- settings: config.settings,
938
- onUnexpectedExit
939
- });
940
- try {
941
- return await client.start(), this.clients.set(languageId, client), this.startingServers.delete(languageId), this._callbacks.onServerReady?.(languageId), this._restartAttempts.delete(languageId), this._restartBackoff.delete(languageId), this.triggerPostInit(languageId, client), client;
942
- } catch (err) {
943
- this.startingServers.delete(languageId);
944
- let message = `Failed to start LSP server for ${languageId} (${config.command}): ${err.message}`;
945
- throw this._callbacks.onServerError?.(languageId, message), new Error(message);
946
- }
1012
+ return connectClient();
947
1013
  }
948
1014
  /**
949
1015
  * Post-initialization hook for language-specific setup.
@@ -976,6 +1042,7 @@ var DEFAULT_SERVERS = {
976
1042
  }
977
1043
  /** Spawn an LSP daemon as a detached background process */
978
1044
  async spawnDaemon(languageId, config, effectiveArgs, workspaceFolders, initializationOptions) {
1045
+ this.stop.signal.throwIfAborted();
979
1046
  let socketPath = this.getSocketPath(languageId), daemonScript = new URL("./lsp-daemon.ts", new URL("../builtin-extensions/pi-lsp-extension/src/lsp-manager.js", import.meta.url).href).pathname, launcherScript = new URL("./lsp-daemon-launcher.cjs", new URL("../builtin-extensions/pi-lsp-extension/src/lsp-manager.js", import.meta.url).href).pathname, jitiPath;
980
1047
  try {
981
1048
  jitiPath = __require.resolve("jiti");
@@ -992,7 +1059,8 @@ var DEFAULT_SERVERS = {
992
1059
  LSP_ROOT_DIR: this.rootDir,
993
1060
  LSP_LANGUAGE_ID: languageId
994
1061
  };
995
- workspaceFolders && workspaceFolders.length > 0 && (env.LSP_WORKSPACE_FOLDERS = JSON.stringify(workspaceFolders)), initializationOptions && (env.LSP_INITIALIZATION_OPTIONS = JSON.stringify(initializationOptions)), config.settings && (env.LSP_SETTINGS = JSON.stringify(config.settings)), spawnChild(
1062
+ workspaceFolders && workspaceFolders.length > 0 && (env.LSP_WORKSPACE_FOLDERS = JSON.stringify(workspaceFolders)), initializationOptions && (env.LSP_INITIALIZATION_OPTIONS = JSON.stringify(initializationOptions)), config.settings && (env.LSP_SETTINGS = JSON.stringify(config.settings));
1063
+ let child = spawnChild(
996
1064
  process.execPath,
997
1065
  // node
998
1066
  [launcherScript, jitiPath, daemonScript, socketPath, config.command, ...effectiveArgs],
@@ -1002,7 +1070,12 @@ var DEFAULT_SERVERS = {
1002
1070
  detached: !0,
1003
1071
  stdio: "ignore"
1004
1072
  }
1005
- ).unref();
1073
+ );
1074
+ child.unref(), await this.waitForStart(new Promise((resolve2, reject) => {
1075
+ child.on("error", (error) => {
1076
+ reject(error), this._shuttingDown || this._callbacks.onServerError?.(languageId, error.message);
1077
+ }), child.once("spawn", resolve2);
1078
+ }));
1006
1079
  }
1007
1080
  /** Get status of all configured/running servers */
1008
1081
  getStatus() {
@@ -1030,31 +1103,42 @@ var DEFAULT_SERVERS = {
1030
1103
  handleUnexpectedExit(languageId, code) {
1031
1104
  if (this._shuttingDown)
1032
1105
  return;
1033
- this.clients.delete(languageId), this.startingServers.delete(languageId);
1106
+ this.clients.delete(languageId);
1034
1107
  let attempts = this._restartAttempts.get(languageId) ?? 0;
1035
1108
  if (attempts >= _LspManager.MAX_RESTART_ATTEMPTS) {
1036
1109
  this._callbacks.onServerError?.(languageId, `LSP server for ${languageId} crashed ${attempts} times \u2014 giving up auto-restart`), this._callbacks.onServerCrash?.(languageId, !1, attempts);
1037
1110
  return;
1038
1111
  }
1039
1112
  let backoff = this._restartBackoff.get(languageId) ?? _LspManager.INITIAL_BACKOFF_MS;
1040
- this._restartAttempts.set(languageId, attempts + 1), this._restartBackoff.set(languageId, Math.min(backoff * 2, _LspManager.MAX_BACKOFF_MS)), this._callbacks.onServerCrash?.(languageId, !0, attempts + 1), setTimeout(() => {
1041
- if (this._shuttingDown)
1113
+ this._restartAttempts.set(languageId, attempts + 1), this._restartBackoff.set(languageId, Math.min(backoff * 2, _LspManager.MAX_BACKOFF_MS)), this._callbacks.onServerCrash?.(languageId, !0, attempts + 1);
1114
+ let timer = setTimeout(() => {
1115
+ if (this.restartTimers.delete(timer), this._shuttingDown)
1042
1116
  return;
1043
1117
  let config = this.serverConfigs.get(languageId);
1044
1118
  if (!config)
1045
1119
  return;
1046
- let startPromise = this.startServer(languageId, config);
1047
- this.startingServers.set(languageId, startPromise), startPromise.catch((err) => {
1048
- this.startingServers.delete(languageId), this._callbacks.onServerError?.(languageId, `Auto-restart failed for ${languageId}: ${err.message}`), this.handleUnexpectedExit(languageId, null);
1120
+ this.trackStart(languageId, config).catch((err) => {
1121
+ this._shuttingDown || (this._callbacks.onServerError?.(languageId, `Auto-restart failed for ${languageId}: ${err.message}`), this.handleUnexpectedExit(languageId, null));
1049
1122
  });
1050
1123
  }, backoff);
1124
+ this.restartTimers.add(timer);
1051
1125
  }
1052
1126
  /** Shut down all clients (disconnect from daemons, kill direct servers) */
1053
- async shutdownAll() {
1054
- this._workspace.shutdown(), this._shuttingDown = !0;
1055
- let shutdowns = [...this.clients.values()].map((client) => client.shutdown().catch(() => {
1056
- }));
1057
- await Promise.all(shutdowns), this.clients.clear(), this.startingServers.clear();
1127
+ shutdownAll() {
1128
+ if (this.shutdownPromise)
1129
+ return this.shutdownPromise;
1130
+ this._shuttingDown = !0, this.stop.abort(new Error("LSP manager shut down"));
1131
+ for (let timer of this.restartTimers)
1132
+ clearTimeout(timer);
1133
+ return this.restartTimers.clear(), this.shutdownPromise = this.shutdownClients(), this.shutdownPromise;
1134
+ }
1135
+ async shutdownClients() {
1136
+ try {
1137
+ this._workspace.shutdown();
1138
+ } finally {
1139
+ let clients = /* @__PURE__ */ new Set([...this.clients.values(), ...this.pendingClients]);
1140
+ await Promise.allSettled([...clients].map((client) => client.shutdown())), await Promise.allSettled([...this.startingServers.values()]), this.clients.clear(), this.startingServers.clear();
1141
+ }
1058
1142
  }
1059
1143
  /**
1060
1144
  * Restart a specific language server. Shuts down the existing client
@@ -1062,16 +1146,17 @@ var DEFAULT_SERVERS = {
1062
1146
  * Returns once the new server is initialized, or throws on failure.
1063
1147
  */
1064
1148
  async restartServer(languageId) {
1149
+ this.stop.signal.throwIfAborted();
1150
+ let pending = this.startingServers.get(languageId);
1151
+ pending && await pending.catch(() => {
1152
+ }), this.stop.signal.throwIfAborted();
1065
1153
  let existing = this.clients.get(languageId);
1066
1154
  existing && (await existing.shutdown().catch(() => {
1067
- }), this.clients.delete(languageId)), this.killDaemon(languageId);
1068
- let pending = this.startingServers.get(languageId);
1069
- pending && (await pending.catch(() => {
1070
- }), this.startingServers.delete(languageId));
1155
+ }), this.clients.get(languageId) === existing && this.clients.delete(languageId)), this.stop.signal.throwIfAborted(), this.killDaemon(languageId);
1071
1156
  let config = this.serverConfigs.get(languageId);
1072
1157
  if (!config)
1073
1158
  throw new Error(`No server configured for ${languageId}`);
1074
- await this.startServer(languageId, config);
1159
+ await this.trackStart(languageId, config);
1075
1160
  }
1076
1161
  /** Kill a running daemon for a language (if any) */
1077
1162
  killDaemon(languageId) {
@@ -1,15 +1,15 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  toolStatusDotFromContext
4
- } from "./chunk-5ZQXRPMC.js";
4
+ } from "./chunk-6ZZHGUSA.js";
5
5
  import {
6
6
  onBrowserEnabledChange,
7
7
  readBrowserSettings
8
- } from "./chunk-UOEDI7RP.js";
9
- import "./chunk-2HMIRK7W.js";
10
- import "./chunk-CSFI6YXL.js";
11
- import "./chunk-B4HP6ZWM.js";
12
- import "./chunk-FQMM2EZ2.js";
8
+ } from "./chunk-4KNKQGHM.js";
9
+ import "./chunk-LHV3V67B.js";
10
+ import "./chunk-ES6PBSIE.js";
11
+ import "./chunk-RHCGYWO7.js";
12
+ import "./chunk-64XTQNLA.js";
13
13
  import "./chunk-Q4Q6D4IY.js";
14
14
  import "./chunk-BRJX2PRC.js";
15
15
 
@@ -159,7 +159,7 @@ function browserExtension(pi) {
159
159
  async execute(_id, input, signal) {
160
160
  if (!enabled)
161
161
  throw await close(), new Error("Browser is disabled. The user can enable Browser in /settings.");
162
- let current = generation, { BrowserSession } = await import("./runtime-4VA6JKNF.js");
162
+ let current = generation, { BrowserSession } = await import("./runtime-EDUUGAQD.js");
163
163
  if (current !== generation || signal?.aborted)
164
164
  throw new Error("Browser call cancelled during initialization.");
165
165
  return session ??= new BrowserSession(readBrowserSettings().allowPrivate), session.run(input, signal);