@ashx-j/lunr 0.2.26 → 0.2.28

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 (697) hide show
  1. package/CHANGELOG.md +25 -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/lunr-cron.d.ts +4 -5
  12. package/dist/builtin-extensions/lunr-cron.d.ts.map +1 -1
  13. package/dist/builtin-extensions/lunr-cron.js +94 -108
  14. package/dist/builtin-extensions/lunr-cron.js.map +1 -1
  15. package/dist/builtin-extensions/lunr-local-providers/local-servers.d.ts.map +1 -1
  16. package/dist/builtin-extensions/lunr-local-providers/local-servers.js +3 -1
  17. package/dist/builtin-extensions/lunr-local-providers/local-servers.js.map +1 -1
  18. package/dist/builtin-extensions/narumiruna-pi-goal/src/accounting.d.ts.map +1 -1
  19. package/dist/builtin-extensions/narumiruna-pi-goal/src/accounting.js +5 -2
  20. package/dist/builtin-extensions/narumiruna-pi-goal/src/accounting.js.map +1 -1
  21. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.d.ts.map +1 -1
  22. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js +2 -2
  23. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js.map +1 -1
  24. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.d.ts.map +1 -1
  25. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js +1 -1
  26. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js.map +1 -1
  27. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.d.ts.map +1 -1
  28. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js +1 -1
  29. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js.map +1 -1
  30. package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
  31. package/dist/builtin-extensions/pi-intercom/index.js +2 -2
  32. package/dist/builtin-extensions/pi-intercom/index.js.map +1 -1
  33. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts +1 -1
  34. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts.map +1 -1
  35. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js +1 -1
  36. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js.map +1 -1
  37. package/dist/builtin-extensions/pi-lsp-extension/src/index.d.ts.map +1 -1
  38. package/dist/builtin-extensions/pi-lsp-extension/src/index.js +1 -15
  39. package/dist/builtin-extensions/pi-lsp-extension/src/index.js.map +1 -1
  40. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts +6 -0
  41. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts.map +1 -1
  42. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js +187 -132
  43. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js.map +1 -1
  44. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts +8 -0
  45. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts.map +1 -1
  46. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js +142 -112
  47. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js.map +1 -1
  48. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts +12 -1
  49. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts.map +1 -1
  50. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js +14 -7
  51. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js.map +1 -1
  52. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts +11 -3
  53. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts.map +1 -1
  54. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js +67 -41
  55. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js.map +1 -1
  56. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts +4 -2
  57. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts.map +1 -1
  58. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js +3 -0
  59. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js.map +1 -1
  60. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts +2 -1
  61. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts.map +1 -1
  62. package/dist/builtin-extensions/pi-mcp-adapter/commands.js +6 -6
  63. package/dist/builtin-extensions/pi-mcp-adapter/commands.js.map +1 -1
  64. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts +1 -1
  65. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts.map +1 -1
  66. package/dist/builtin-extensions/pi-mcp-adapter/config.js +11 -5
  67. package/dist/builtin-extensions/pi-mcp-adapter/config.js.map +1 -1
  68. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.d.ts.map +1 -1
  69. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js +2 -2
  70. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js.map +1 -1
  71. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.d.ts.map +1 -1
  72. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js +1 -1
  73. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js.map +1 -1
  74. package/dist/builtin-extensions/pi-mcp-adapter/index.d.ts.map +1 -1
  75. package/dist/builtin-extensions/pi-mcp-adapter/index.js +48 -40
  76. package/dist/builtin-extensions/pi-mcp-adapter/index.js.map +1 -1
  77. package/dist/builtin-extensions/pi-mcp-adapter/init.d.ts.map +1 -1
  78. package/dist/builtin-extensions/pi-mcp-adapter/init.js +3 -1
  79. package/dist/builtin-extensions/pi-mcp-adapter/init.js.map +1 -1
  80. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts +12 -40
  81. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts.map +1 -1
  82. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js +166 -235
  83. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js.map +1 -1
  84. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts +5 -0
  85. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts.map +1 -1
  86. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js +43 -13
  87. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js.map +1 -1
  88. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts +14 -3
  89. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts.map +1 -1
  90. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js +73 -21
  91. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js.map +1 -1
  92. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.d.ts.map +1 -1
  93. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js +4 -4
  94. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js.map +1 -1
  95. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.d.ts.map +1 -1
  96. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js +2 -2
  97. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js.map +1 -1
  98. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts +2 -0
  99. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts.map +1 -1
  100. package/dist/builtin-extensions/pi-mcp-adapter/state.js.map +1 -1
  101. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts +1 -1
  102. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts.map +1 -1
  103. package/dist/builtin-extensions/pi-ollama-cloud/index.js +1 -1
  104. package/dist/builtin-extensions/pi-ollama-cloud/index.js.map +1 -1
  105. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts +11 -5
  106. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts.map +1 -1
  107. package/dist/builtin-extensions/pi-ollama-cloud/models.js +12 -32
  108. package/dist/builtin-extensions/pi-ollama-cloud/models.js.map +1 -1
  109. package/dist/builtin-extensions/pi-prompt-template-model/index.d.ts.map +1 -1
  110. package/dist/builtin-extensions/pi-prompt-template-model/index.js +5 -3
  111. package/dist/builtin-extensions/pi-prompt-template-model/index.js.map +1 -1
  112. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts +2 -1
  113. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts.map +1 -1
  114. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js +21 -12
  115. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js.map +1 -1
  116. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.d.ts.map +1 -1
  117. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js +7 -24
  118. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js.map +1 -1
  119. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
  120. package/dist/builtin-extensions/pi-subagents/src/extension/index.js +39 -77
  121. package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
  122. package/dist/builtin-extensions/pi-subagents/src/runs/background/chain-root-attachment.d.ts +4 -1
  123. package/dist/builtin-extensions/pi-subagents/src/runs/background/chain-root-attachment.d.ts.map +1 -1
  124. package/dist/builtin-extensions/pi-subagents/src/runs/background/chain-root-attachment.js +2 -0
  125. package/dist/builtin-extensions/pi-subagents/src/runs/background/chain-root-attachment.js.map +1 -1
  126. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts +6 -1
  127. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
  128. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js +17 -31
  129. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js.map +1 -1
  130. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
  131. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js +7 -2
  132. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
  133. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts +5 -1
  134. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  135. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +78 -42
  136. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  137. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
  138. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +8 -1
  139. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
  140. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts +0 -3
  141. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  142. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +134 -28
  143. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  144. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  145. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +26 -5
  146. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  147. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts +1 -1
  148. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts.map +1 -1
  149. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js +1 -1
  150. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js.map +1 -1
  151. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +7 -8
  152. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  153. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js +60 -32
  154. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  155. package/dist/builtin-extensions/pi-subagents/src/shared/session-tokens.d.ts +7 -1
  156. package/dist/builtin-extensions/pi-subagents/src/shared/session-tokens.d.ts.map +1 -1
  157. package/dist/builtin-extensions/pi-subagents/src/shared/session-tokens.js +70 -38
  158. package/dist/builtin-extensions/pi-subagents/src/shared/session-tokens.js.map +1 -1
  159. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +9 -0
  160. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts.map +1 -1
  161. package/dist/builtin-extensions/pi-subagents/src/shared/types.js.map +1 -1
  162. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts +1 -1
  163. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts.map +1 -1
  164. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js +15 -5
  165. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js.map +1 -1
  166. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
  167. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +4 -3
  168. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
  169. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
  170. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js +13 -62
  171. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js.map +1 -1
  172. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +1 -1
  173. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
  174. package/dist/builtin-extensions/pi-subagents/src/tui/render.js +18 -9
  175. package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
  176. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.d.ts.map +1 -1
  177. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js +3 -3
  178. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js.map +1 -1
  179. package/dist/builtin-extensions/pi-tps.d.ts.map +1 -1
  180. package/dist/builtin-extensions/pi-tps.js +28 -17
  181. package/dist/builtin-extensions/pi-tps.js.map +1 -1
  182. package/dist/builtin-extensions/pi-web-access/activity.d.ts +1 -0
  183. package/dist/builtin-extensions/pi-web-access/activity.d.ts.map +1 -1
  184. package/dist/builtin-extensions/pi-web-access/activity.js +27 -5
  185. package/dist/builtin-extensions/pi-web-access/activity.js.map +1 -1
  186. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts +3 -0
  187. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts.map +1 -0
  188. package/dist/builtin-extensions/pi-web-access/bounded-body.js +43 -0
  189. package/dist/builtin-extensions/pi-web-access/bounded-body.js.map +1 -0
  190. package/dist/builtin-extensions/pi-web-access/content-page.d.ts +24 -0
  191. package/dist/builtin-extensions/pi-web-access/content-page.d.ts.map +1 -0
  192. package/dist/builtin-extensions/pi-web-access/content-page.js +57 -0
  193. package/dist/builtin-extensions/pi-web-access/content-page.js.map +1 -0
  194. package/dist/builtin-extensions/pi-web-access/extract.d.ts.map +1 -1
  195. package/dist/builtin-extensions/pi-web-access/extract.js +7 -2
  196. package/dist/builtin-extensions/pi-web-access/extract.js.map +1 -1
  197. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts +0 -1
  198. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts.map +1 -1
  199. package/dist/builtin-extensions/pi-web-access/github-extract.js +147 -36
  200. package/dist/builtin-extensions/pi-web-access/github-extract.js.map +1 -1
  201. package/dist/builtin-extensions/pi-web-access/index.d.ts.map +1 -1
  202. package/dist/builtin-extensions/pi-web-access/index.js +48 -73
  203. package/dist/builtin-extensions/pi-web-access/index.js.map +1 -1
  204. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts +12 -4
  205. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts.map +1 -1
  206. package/dist/builtin-extensions/pi-web-access/session-cleanup.js +35 -12
  207. package/dist/builtin-extensions/pi-web-access/session-cleanup.js.map +1 -1
  208. package/dist/builtin-extensions/pi-web-access/storage.d.ts +9 -6
  209. package/dist/builtin-extensions/pi-web-access/storage.d.ts.map +1 -1
  210. package/dist/builtin-extensions/pi-web-access/storage.js +36 -24
  211. package/dist/builtin-extensions/pi-web-access/storage.js.map +1 -1
  212. package/dist/builtin-extensions/simple-pi-memory.d.ts +1 -1
  213. package/dist/builtin-extensions/simple-pi-memory.d.ts.map +1 -1
  214. package/dist/builtin-extensions/simple-pi-memory.js +1 -1
  215. package/dist/builtin-extensions/simple-pi-memory.js.map +1 -1
  216. package/dist/catalog/models.json +1 -1
  217. package/dist/catalog/providers/google-vertex.json +1 -1
  218. package/dist/catalog/providers/google.json +1 -1
  219. package/dist/catalog/publication.json +3 -3
  220. package/dist/cli/install-cli.d.ts.map +1 -1
  221. package/dist/cli/install-cli.js +38 -30
  222. package/dist/cli/install-cli.js.map +1 -1
  223. package/dist/core/agent-session-runtime.d.ts +13 -0
  224. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  225. package/dist/core/agent-session-runtime.js +75 -11
  226. package/dist/core/agent-session-runtime.js.map +1 -1
  227. package/dist/core/agent-session-services.d.ts +1 -0
  228. package/dist/core/agent-session-services.d.ts.map +1 -1
  229. package/dist/core/agent-session-services.js +1 -0
  230. package/dist/core/agent-session-services.js.map +1 -1
  231. package/dist/core/agent-session.d.ts +46 -21
  232. package/dist/core/agent-session.d.ts.map +1 -1
  233. package/dist/core/agent-session.js +344 -126
  234. package/dist/core/agent-session.js.map +1 -1
  235. package/dist/core/browser/runtime.d.ts +2 -0
  236. package/dist/core/browser/runtime.d.ts.map +1 -1
  237. package/dist/core/browser/runtime.js +80 -45
  238. package/dist/core/browser/runtime.js.map +1 -1
  239. package/dist/core/browser/setup.d.ts.map +1 -1
  240. package/dist/core/browser/setup.js +12 -1
  241. package/dist/core/browser/setup.js.map +1 -1
  242. package/dist/core/cache-stats.d.ts +1 -1
  243. package/dist/core/cache-stats.d.ts.map +1 -1
  244. package/dist/core/cache-stats.js +1 -1
  245. package/dist/core/cache-stats.js.map +1 -1
  246. package/dist/core/compaction/branch-summarization.d.ts +2 -1
  247. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  248. package/dist/core/compaction/branch-summarization.js +1 -0
  249. package/dist/core/compaction/branch-summarization.js.map +1 -1
  250. package/dist/core/compaction/compaction.d.ts +5 -11
  251. package/dist/core/compaction/compaction.d.ts.map +1 -1
  252. package/dist/core/compaction/compaction.js +38 -92
  253. package/dist/core/compaction/compaction.js.map +1 -1
  254. package/dist/core/computer-use/adapter.d.ts.map +1 -1
  255. package/dist/core/computer-use/adapter.js +7 -2
  256. package/dist/core/computer-use/adapter.js.map +1 -1
  257. package/dist/core/computer-use/image.d.ts.map +1 -1
  258. package/dist/core/computer-use/image.js +17 -5
  259. package/dist/core/computer-use/image.js.map +1 -1
  260. package/dist/core/computer-use/schemas.d.ts.map +1 -1
  261. package/dist/core/computer-use/schemas.js +23 -6
  262. package/dist/core/computer-use/schemas.js.map +1 -1
  263. package/dist/core/computer-use/workflow.d.ts.map +1 -1
  264. package/dist/core/computer-use/workflow.js +459 -119
  265. package/dist/core/computer-use/workflow.js.map +1 -1
  266. package/dist/core/context-breakdown.d.ts +2 -2
  267. package/dist/core/context-breakdown.d.ts.map +1 -1
  268. package/dist/core/context-breakdown.js +22 -20
  269. package/dist/core/context-breakdown.js.map +1 -1
  270. package/dist/core/cron/jobs.d.ts +26 -8
  271. package/dist/core/cron/jobs.d.ts.map +1 -1
  272. package/dist/core/cron/jobs.js +357 -232
  273. package/dist/core/cron/jobs.js.map +1 -1
  274. package/dist/core/cron/origin-context.d.ts +1 -0
  275. package/dist/core/cron/origin-context.d.ts.map +1 -1
  276. package/dist/core/cron/origin-context.js.map +1 -1
  277. package/dist/core/cron/scheduler.d.ts +22 -17
  278. package/dist/core/cron/scheduler.d.ts.map +1 -1
  279. package/dist/core/cron/scheduler.js +153 -73
  280. package/dist/core/cron/scheduler.js.map +1 -1
  281. package/dist/core/extensions/index.d.ts +1 -1
  282. package/dist/core/extensions/index.d.ts.map +1 -1
  283. package/dist/core/extensions/index.js.map +1 -1
  284. package/dist/core/extensions/runner.d.ts +1 -0
  285. package/dist/core/extensions/runner.d.ts.map +1 -1
  286. package/dist/core/extensions/runner.js +8 -0
  287. package/dist/core/extensions/runner.js.map +1 -1
  288. package/dist/core/extensions/types.d.ts +11 -1
  289. package/dist/core/extensions/types.d.ts.map +1 -1
  290. package/dist/core/extensions/types.js.map +1 -1
  291. package/dist/core/footer-data-provider.d.ts +4 -0
  292. package/dist/core/footer-data-provider.d.ts.map +1 -1
  293. package/dist/core/footer-data-provider.js +22 -1
  294. package/dist/core/footer-data-provider.js.map +1 -1
  295. package/dist/core/large-subagent-launch.d.ts +1 -1
  296. package/dist/core/large-subagent-launch.d.ts.map +1 -1
  297. package/dist/core/large-subagent-launch.js +7 -7
  298. package/dist/core/large-subagent-launch.js.map +1 -1
  299. package/dist/core/model-registry.d.ts +2 -0
  300. package/dist/core/model-registry.d.ts.map +1 -1
  301. package/dist/core/model-registry.js +5 -0
  302. package/dist/core/model-registry.js.map +1 -1
  303. package/dist/core/model-runtime.d.ts +4 -1
  304. package/dist/core/model-runtime.d.ts.map +1 -1
  305. package/dist/core/model-runtime.js +40 -4
  306. package/dist/core/model-runtime.js.map +1 -1
  307. package/dist/core/package-manager.d.ts.map +1 -1
  308. package/dist/core/package-manager.js.map +1 -1
  309. package/dist/core/permissions.d.ts +3 -3
  310. package/dist/core/permissions.d.ts.map +1 -1
  311. package/dist/core/permissions.js +11 -35
  312. package/dist/core/permissions.js.map +1 -1
  313. package/dist/core/plan-mode.d.ts +5 -13
  314. package/dist/core/plan-mode.d.ts.map +1 -1
  315. package/dist/core/plan-mode.js +126 -116
  316. package/dist/core/plan-mode.js.map +1 -1
  317. package/dist/core/project-trust.d.ts.map +1 -1
  318. package/dist/core/project-trust.js +1 -1
  319. package/dist/core/project-trust.js.map +1 -1
  320. package/dist/core/prompt-resource-bridge.d.ts +12 -0
  321. package/dist/core/prompt-resource-bridge.d.ts.map +1 -0
  322. package/dist/core/prompt-resource-bridge.js +9 -0
  323. package/dist/core/prompt-resource-bridge.js.map +1 -0
  324. package/dist/core/protected-targets.d.ts +6 -0
  325. package/dist/core/protected-targets.d.ts.map +1 -0
  326. package/dist/core/protected-targets.js +45 -0
  327. package/dist/core/protected-targets.js.map +1 -0
  328. package/dist/core/resource-loader.d.ts.map +1 -1
  329. package/dist/core/resource-loader.js +7 -0
  330. package/dist/core/resource-loader.js.map +1 -1
  331. package/dist/core/rollback.d.ts +19 -3
  332. package/dist/core/rollback.d.ts.map +1 -1
  333. package/dist/core/rollback.js +172 -56
  334. package/dist/core/rollback.js.map +1 -1
  335. package/dist/core/runtime-credentials.d.ts +3 -0
  336. package/dist/core/runtime-credentials.d.ts.map +1 -1
  337. package/dist/core/runtime-credentials.js +14 -1
  338. package/dist/core/runtime-credentials.js.map +1 -1
  339. package/dist/core/sdk.d.ts +3 -0
  340. package/dist/core/sdk.d.ts.map +1 -1
  341. package/dist/core/sdk.js +1 -0
  342. package/dist/core/sdk.js.map +1 -1
  343. package/dist/core/session-manager.d.ts +11 -1
  344. package/dist/core/session-manager.d.ts.map +1 -1
  345. package/dist/core/session-manager.js +111 -33
  346. package/dist/core/session-manager.js.map +1 -1
  347. package/dist/core/session-ownership.d.ts.map +1 -1
  348. package/dist/core/session-ownership.js +8 -3
  349. package/dist/core/session-ownership.js.map +1 -1
  350. package/dist/core/session-retention.d.ts.map +1 -1
  351. package/dist/core/session-retention.js +18 -7
  352. package/dist/core/session-retention.js.map +1 -1
  353. package/dist/core/session-startup-settings.d.ts +10 -0
  354. package/dist/core/session-startup-settings.d.ts.map +1 -0
  355. package/dist/core/session-startup-settings.js +70 -0
  356. package/dist/core/session-startup-settings.js.map +1 -0
  357. package/dist/core/subscriptions.d.ts +16 -7
  358. package/dist/core/subscriptions.d.ts.map +1 -1
  359. package/dist/core/subscriptions.js +96 -55
  360. package/dist/core/subscriptions.js.map +1 -1
  361. package/dist/core/trust-manager.d.ts +2 -1
  362. package/dist/core/trust-manager.d.ts.map +1 -1
  363. package/dist/core/trust-manager.js +6 -1
  364. package/dist/core/trust-manager.js.map +1 -1
  365. package/dist/core/update-check.d.ts.map +1 -1
  366. package/dist/core/update-check.js.map +1 -1
  367. package/dist/core/usage-accounting.d.ts +47 -0
  368. package/dist/core/usage-accounting.d.ts.map +1 -0
  369. package/dist/core/usage-accounting.js +205 -0
  370. package/dist/core/usage-accounting.js.map +1 -0
  371. package/dist/core/usage-adapters/kimi-coding.d.ts +2 -2
  372. package/dist/core/usage-adapters/kimi-coding.d.ts.map +1 -1
  373. package/dist/core/usage-adapters/kimi-coding.js +2 -2
  374. package/dist/core/usage-adapters/kimi-coding.js.map +1 -1
  375. package/dist/core/usage-adapters/openai-codex.d.ts +3 -2
  376. package/dist/core/usage-adapters/openai-codex.d.ts.map +1 -1
  377. package/dist/core/usage-adapters/openai-codex.js +3 -3
  378. package/dist/core/usage-adapters/openai-codex.js.map +1 -1
  379. package/dist/core/usage-adapters/xai.d.ts +2 -2
  380. package/dist/core/usage-adapters/xai.d.ts.map +1 -1
  381. package/dist/core/usage-adapters/xai.js +3 -3
  382. package/dist/core/usage-adapters/xai.js.map +1 -1
  383. package/dist/core/usage-adapters/zai.d.ts +2 -2
  384. package/dist/core/usage-adapters/zai.d.ts.map +1 -1
  385. package/dist/core/usage-adapters/zai.js +2 -2
  386. package/dist/core/usage-adapters/zai.js.map +1 -1
  387. package/dist/core/usage-history.d.ts +1 -18
  388. package/dist/core/usage-history.d.ts.map +1 -1
  389. package/dist/core/usage-history.js +46 -114
  390. package/dist/core/usage-history.js.map +1 -1
  391. package/dist/core/usage-service.d.ts +9 -2
  392. package/dist/core/usage-service.d.ts.map +1 -1
  393. package/dist/core/usage-service.js +95 -50
  394. package/dist/core/usage-service.js.map +1 -1
  395. package/dist/gateway/agent-bridge.d.ts +9 -1
  396. package/dist/gateway/agent-bridge.d.ts.map +1 -1
  397. package/dist/gateway/agent-bridge.js +91 -37
  398. package/dist/gateway/agent-bridge.js.map +1 -1
  399. package/dist/gateway/buttons.d.ts +8 -1
  400. package/dist/gateway/buttons.d.ts.map +1 -1
  401. package/dist/gateway/buttons.js +76 -18
  402. package/dist/gateway/buttons.js.map +1 -1
  403. package/dist/gateway/commands.d.ts +1 -0
  404. package/dist/gateway/commands.d.ts.map +1 -1
  405. package/dist/gateway/commands.js +10 -4
  406. package/dist/gateway/commands.js.map +1 -1
  407. package/dist/gateway/cron.d.ts +12 -11
  408. package/dist/gateway/cron.d.ts.map +1 -1
  409. package/dist/gateway/cron.js +65 -56
  410. package/dist/gateway/cron.js.map +1 -1
  411. package/dist/gateway/index.d.ts.map +1 -1
  412. package/dist/gateway/index.js +2 -1
  413. package/dist/gateway/index.js.map +1 -1
  414. package/dist/gateway/mobile-commands.d.ts +1 -0
  415. package/dist/gateway/mobile-commands.d.ts.map +1 -1
  416. package/dist/gateway/mobile-commands.js +69 -15
  417. package/dist/gateway/mobile-commands.js.map +1 -1
  418. package/dist/gateway/presenter.d.ts +12 -2
  419. package/dist/gateway/presenter.d.ts.map +1 -1
  420. package/dist/gateway/presenter.js +73 -38
  421. package/dist/gateway/presenter.js.map +1 -1
  422. package/dist/gateway/router.d.ts +2 -2
  423. package/dist/gateway/router.d.ts.map +1 -1
  424. package/dist/gateway/router.js +17 -2
  425. package/dist/gateway/router.js.map +1 -1
  426. package/dist/gateway/service.d.ts +2 -0
  427. package/dist/gateway/service.d.ts.map +1 -1
  428. package/dist/gateway/service.js +153 -0
  429. package/dist/gateway/service.js.map +1 -1
  430. package/dist/main.d.ts.map +1 -1
  431. package/dist/main.js +86 -33
  432. package/dist/main.js.map +1 -1
  433. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  434. package/dist/modes/interactive/components/assistant-message.js +6 -4
  435. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  436. package/dist/modes/interactive/components/context-view.d.ts.map +1 -1
  437. package/dist/modes/interactive/components/context-view.js +2 -2
  438. package/dist/modes/interactive/components/context-view.js.map +1 -1
  439. package/dist/modes/interactive/components/copyable-text.d.ts.map +1 -1
  440. package/dist/modes/interactive/components/copyable-text.js +3 -2
  441. package/dist/modes/interactive/components/copyable-text.js.map +1 -1
  442. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  443. package/dist/modes/interactive/components/extension-editor.js +1 -1
  444. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  445. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  446. package/dist/modes/interactive/components/footer.js +8 -12
  447. package/dist/modes/interactive/components/footer.js.map +1 -1
  448. package/dist/modes/interactive/components/usage-view.d.ts +5 -0
  449. package/dist/modes/interactive/components/usage-view.d.ts.map +1 -1
  450. package/dist/modes/interactive/components/usage-view.js +21 -6
  451. package/dist/modes/interactive/components/usage-view.js.map +1 -1
  452. package/dist/modes/interactive/interactive-mode.d.ts +3 -7
  453. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  454. package/dist/modes/interactive/interactive-mode.js +151 -131
  455. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  456. package/dist/modes/interactive/smooth-streaming.d.ts.map +1 -1
  457. package/dist/modes/interactive/smooth-streaming.js.map +1 -1
  458. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  459. package/dist/modes/rpc/rpc-mode.js +2 -1
  460. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  461. package/dist/node-runtime/{adapter-VFG7WNPX.js → adapter-247RTYLS.js} +4 -5
  462. package/dist/node-runtime/agent-session-services-RTUGP3XR.js +54 -0
  463. package/dist/node-runtime/{brave-UWDA3I22.js → brave-2AFFAXNN.js} +1 -1
  464. package/dist/node-runtime/{builtin-extensions-I2HIFEMY.js → builtin-extensions-N4EUD6SB.js} +8 -7
  465. package/dist/node-runtime/{chunk-QH6YL7VK.js → chunk-252ZVPPF.js} +3 -3
  466. package/dist/node-runtime/{chunk-PCEW76PM.js → chunk-2OIPYKLZ.js} +6 -6
  467. package/dist/node-runtime/{chunk-XBWPBZBN.js → chunk-2SWW7KMW.js} +1 -1
  468. package/dist/node-runtime/{chunk-UQUCFAJ3.js → chunk-2VIW3IMF.js} +40 -7
  469. package/dist/node-runtime/{chunk-UOEDI7RP.js → chunk-4KNKQGHM.js} +2 -2
  470. package/dist/node-runtime/chunk-4QRUZ64T.js +1203 -0
  471. package/dist/node-runtime/{chunk-FQMM2EZ2.js → chunk-64XTQNLA.js} +29 -7
  472. package/dist/node-runtime/{chunk-SPVDBUOS.js → chunk-6O3IW3IA.js} +2 -2
  473. package/dist/node-runtime/{chunk-5ZQXRPMC.js → chunk-6ZZHGUSA.js} +2 -2
  474. package/dist/node-runtime/{chunk-WIF24I7G.js → chunk-APVM5NEU.js} +149 -144
  475. package/dist/node-runtime/{chunk-LWYIVUGV.js → chunk-B2IBAXNX.js} +48 -31
  476. package/dist/node-runtime/{chunk-M3LZLQW2.js → chunk-BDRGN3L2.js} +1 -0
  477. package/dist/node-runtime/{chunk-LJTIVM7I.js → chunk-BMRXLQWQ.js} +464 -160
  478. package/dist/node-runtime/{chunk-GJ2RDBRL.js → chunk-BYC6RKCN.js} +4 -2
  479. package/dist/node-runtime/{chunk-T4DA4XE7.js → chunk-DFMPRAQQ.js} +162 -82
  480. package/dist/node-runtime/{chunk-SN2KSMPQ.js → chunk-DQSCFU7R.js} +13 -7
  481. package/dist/node-runtime/{chunk-UVWCDQYF.js → chunk-E5DQGNJI.js} +455 -278
  482. package/dist/node-runtime/{chunk-4SBQAI4T.js → chunk-EBLAZVSA.js} +2058 -73
  483. package/dist/node-runtime/{chunk-CSFI6YXL.js → chunk-ES6PBSIE.js} +1 -1
  484. package/dist/node-runtime/{chunk-IF24A3FH.js → chunk-EVM653DD.js} +4 -4
  485. package/dist/node-runtime/{chunk-HTFRRDSF.js → chunk-F2SMQ6ES.js} +3 -2
  486. package/dist/node-runtime/chunk-F2V2F4ZG.js +114 -0
  487. package/dist/node-runtime/{chunk-IKU6Y7DL.js → chunk-FE3WZI7F.js} +9 -6
  488. package/dist/node-runtime/{chunk-6VYZ5UFP.js → chunk-FLGEEH27.js} +1 -1
  489. package/dist/node-runtime/{chunk-5EFIU3OM.js → chunk-FTKEZL27.js} +1 -1
  490. package/dist/node-runtime/{chunk-RGQAEOM5.js → chunk-FYIFPFXE.js} +23 -6
  491. package/dist/node-runtime/{chunk-HMBGROQK.js → chunk-GLDXBBL6.js} +3 -3
  492. package/dist/node-runtime/{chunk-KWA4OC2J.js → chunk-H6YBCWKG.js} +1 -1
  493. package/dist/node-runtime/{chunk-2MI5OPMN.js → chunk-HNNHHJAB.js} +68 -50
  494. package/dist/node-runtime/{chunk-I74LN5JG.js → chunk-HUD2RFJW.js} +2 -2
  495. package/dist/node-runtime/{chunk-XHIRAZ26.js → chunk-IAZSK7KK.js} +1 -1
  496. package/dist/node-runtime/{chunk-GYIXXQAO.js → chunk-ICKGAKWX.js} +23 -59
  497. package/dist/node-runtime/{chunk-X3PGBLQ7.js → chunk-IHHTWSXN.js} +9 -9
  498. package/dist/node-runtime/{chunk-DAPBPCBP.js → chunk-IPP5BIV5.js} +25 -3
  499. package/dist/node-runtime/{chunk-QFWG2RVL.js → chunk-IXG6F4NT.js} +11 -0
  500. package/dist/node-runtime/{chunk-L24TPBS4.js → chunk-JEK35V2M.js} +45 -31
  501. package/dist/node-runtime/{chunk-RDDAZOMU.js → chunk-JL4HYQXK.js} +1 -1
  502. package/dist/node-runtime/{chunk-2HMIRK7W.js → chunk-LHV3V67B.js} +5 -5
  503. package/dist/node-runtime/{chunk-UAEOTO52.js → chunk-MNQXDFPV.js} +6 -2
  504. package/dist/node-runtime/{chunk-MPKSOJBT.js → chunk-NHATCSOI.js} +4 -7
  505. package/dist/node-runtime/{chunk-RMQZU2YU.js → chunk-NNNR3QIY.js} +1 -1
  506. package/dist/node-runtime/{chunk-2KIPT4HJ.js → chunk-PWHTSQC4.js} +83 -21
  507. package/dist/node-runtime/{chunk-RWTKOC3B.js → chunk-QBTJG3UM.js} +1 -1
  508. package/dist/node-runtime/{chunk-RCR3XAQY.js → chunk-QT3F6UEV.js} +233 -169
  509. package/dist/node-runtime/{chunk-GS42T6MX.js → chunk-QW3AAHWN.js} +1 -1
  510. package/dist/node-runtime/{chunk-DVQSHCVP.js → chunk-R4WSB2MQ.js} +5 -5
  511. package/dist/node-runtime/{chunk-B4HP6ZWM.js → chunk-RHCGYWO7.js} +1 -1
  512. package/dist/node-runtime/{chunk-2CFDTH5B.js → chunk-RLGY2QIL.js} +45 -59
  513. package/dist/node-runtime/{chunk-CDVHZOOK.js → chunk-RY3FJ6WI.js} +29 -27
  514. package/dist/node-runtime/{chunk-KKUTQQV7.js → chunk-RYRGL7P4.js} +1 -1
  515. package/dist/node-runtime/{chunk-I54LGHWM.js → chunk-STMX7W5I.js} +3 -3
  516. package/dist/node-runtime/chunk-SWWHZ2RI.js +158 -0
  517. package/dist/node-runtime/{chunk-5Q4A37RB.js → chunk-TCT6PCUR.js} +32 -11
  518. package/dist/node-runtime/{chunk-P7XBVXGT.js → chunk-U3YVZ6UC.js} +18 -14
  519. package/dist/node-runtime/{chunk-D5UCKPBQ.js → chunk-UBWW2PID.js} +1 -1
  520. package/dist/node-runtime/{chunk-E75WFZ33.js → chunk-UNUZICC4.js} +3 -3
  521. package/dist/node-runtime/{chunk-RAK2QA2B.js → chunk-UYRKUKFE.js} +4 -4
  522. package/dist/node-runtime/{chunk-LWJXTA6Z.js → chunk-VSUEAI7O.js} +1377 -45
  523. package/dist/node-runtime/{chunk-NAY6UUQZ.js → chunk-WDIVLMOH.js} +1 -1
  524. package/dist/node-runtime/{chunk-E24EO34J.js → chunk-WPXUR3HE.js} +1 -1
  525. package/dist/node-runtime/{chunk-SLVOAQOY.js → chunk-WXYNALHD.js} +113 -1
  526. package/dist/node-runtime/{chunk-KJ6DWS3K.js → chunk-XEOCUEUJ.js} +121 -60
  527. package/dist/node-runtime/chunk-YD3IZAZ7.js +47 -0
  528. package/dist/node-runtime/chunk-YSB6URMT.js +41 -0
  529. package/dist/node-runtime/{chunk-YWOJIGFY.js → chunk-ZEVFBFNF.js} +95 -142
  530. package/dist/node-runtime/{chunk-5B6VKFEV.js → chunk-ZIQUS5QO.js} +1 -1
  531. package/dist/node-runtime/cli-runtime.js +4 -4
  532. package/dist/node-runtime/{command-FSBU2EVZ.js → command-YRT7I2BW.js} +5 -5
  533. package/dist/node-runtime/{commands-NAAL7KNT.js → commands-2ETOWWRA.js} +16 -16
  534. package/dist/node-runtime/{commands-EMBQQVVT.js → commands-D6A6H4TS.js} +11 -18
  535. package/dist/node-runtime/{config-QDD5PUE2.js → config-CU7M7BTK.js} +1 -1
  536. package/dist/node-runtime/{config-D4QUPAHX.js → config-DS7XLMEM.js} +2 -2
  537. package/dist/node-runtime/{direct-tool-executor-4D7UXYU4.js → direct-tool-executor-2QJXVQD2.js} +6 -11
  538. package/dist/node-runtime/{exa-LL64QZR2.js → exa-6VBZNPGE.js} +1 -1
  539. package/dist/node-runtime/{export-html-VM4J2MNR.js → export-html-DBQRRMAY.js} +4 -4
  540. package/dist/node-runtime/{extension-input-E7BJZ35H.js → extension-input-VBBMX7YV.js} +5 -5
  541. package/dist/node-runtime/{extension-selector-WU42XDTU.js → extension-selector-T5AOG5XB.js} +5 -5
  542. package/dist/node-runtime/{extract-EQJE7FZZ.js → extract-BFX2N35A.js} +3 -3
  543. package/dist/node-runtime/{gateway-DQM333YV.js → gateway-V6K2CDWN.js} +51 -42
  544. package/dist/node-runtime/{gemini-search-35OCRFLN.js → gemini-search-C66QHDT6.js} +2 -2
  545. package/dist/node-runtime/{gemini-url-context-UQY3PHHW.js → gemini-url-context-T7DEK73R.js} +3 -3
  546. package/dist/node-runtime/{github-extract-F64RZOEA.js → github-extract-HOGE3D6F.js} +107 -38
  547. package/dist/node-runtime/{goal-NJEE5CTU.js → goal-J7TYMOBK.js} +14 -8
  548. package/dist/node-runtime/index.js +51 -48
  549. package/dist/node-runtime/{init-P5AUV77I.js → init-JBQJIPYI.js} +3 -6
  550. package/dist/node-runtime/{install-cli-NN4YAU44.js → install-cli-INGHIVBY.js} +30 -25
  551. package/dist/node-runtime/interactive-mode-ASZ7APYP.js +75 -0
  552. package/dist/node-runtime/{interactive-view-NGFAMHPW.js → interactive-view-K33PM4OS.js} +8 -8
  553. package/dist/node-runtime/{lsp-manager-3ASUSO4T.js → lsp-manager-S554V5HR.js} +240 -155
  554. package/dist/node-runtime/{lunr-browser-IR7TL3J7.js → lunr-browser-H4FDOR3C.js} +7 -7
  555. package/dist/node-runtime/{lunr-computer-use-Y23CCDIJ.js → lunr-computer-use-VDP2QNRQ.js} +9 -9
  556. package/dist/node-runtime/{lunr-cron-USHC4LXH.js → lunr-cron-WD3YH4CR.js} +93 -80
  557. package/dist/node-runtime/main.js +43 -41
  558. package/dist/node-runtime/{mobile-commands-O5LCHL32.js → mobile-commands-ICUXFW5V.js} +12 -12
  559. package/dist/node-runtime/{model-runtime-OO5HFLWE.js → model-runtime-MZ2JMDV4.js} +4 -4
  560. package/dist/node-runtime/{openai-search-B3MSNCQA.js → openai-search-K72LJDYN.js} +1 -1
  561. package/dist/node-runtime/{package-manager-cli-Q7BL6KZO.js → package-manager-cli-CYM262SI.js} +20 -20
  562. package/dist/node-runtime/{parallel-AI2MNSCU.js → parallel-X724NCNU.js} +1 -1
  563. package/dist/node-runtime/{perplexity-QVJW3I35.js → perplexity-RDHQHVMK.js} +2 -2
  564. package/dist/node-runtime/{pi-intercom-QM53RLTS.js → pi-intercom-NHHEPBMI.js} +2 -2
  565. package/dist/node-runtime/{pi-mcp-adapter-3PHF4KZ4.js → pi-mcp-adapter-PP3GQJQ2.js} +98 -94
  566. package/dist/node-runtime/{pi-ollama-cloud-2F3Y2QNM.js → pi-ollama-cloud-4MNWIMFN.js} +11 -24
  567. package/dist/node-runtime/{pi-prompt-template-model-QWTCGLJU.js → pi-prompt-template-model-FTGELLS5.js} +32 -36
  568. package/dist/node-runtime/{pi-subagents-7IBSSGEW.js → pi-subagents-QPU3OXE4.js} +114 -167
  569. package/dist/node-runtime/{pi-web-access-WTGMNZ32.js → pi-web-access-Z3LP246C.js} +144 -108
  570. package/dist/node-runtime/{print-mode-XQ76CYMT.js → print-mode-2XHN5SUA.js} +3 -3
  571. package/dist/node-runtime/{process-registry-4FAKZQOL.js → process-registry-Q4QWIU33.js} +3 -3
  572. package/dist/node-runtime/{proxy-modes-5FAPSZEZ.js → proxy-modes-VEGC6QG5.js} +8 -15
  573. package/dist/node-runtime/rpc-entry.js +43 -41
  574. package/dist/node-runtime/{rpc-mode-O3XV4SID.js → rpc-mode-32DHJPEJ.js} +4 -4
  575. package/dist/node-runtime/{runtime-4VA6JKNF.js → runtime-EDUUGAQD.js} +56 -46
  576. package/dist/node-runtime/{runtime-EFPPD2UW.js → runtime-UGXM4NPQ.js} +2 -2
  577. package/dist/node-runtime/{runtime-bridges-7WVCLI76.js → runtime-bridges-DNKMNJCF.js} +7 -7
  578. package/dist/node-runtime/{service-MDQIPQ26.js → service-IHLGFLBT.js} +6 -4
  579. package/dist/node-runtime/{session-handoff-GWARVEWT.js → session-handoff-LYH53ESV.js} +4 -4
  580. package/dist/node-runtime/{session-manager-JB5J6XBN.js → session-manager-ZJ3N5Q74.js} +3 -3
  581. package/dist/node-runtime/{session-selector-GIM4DHQ2.js → session-selector-I73U3EIO.js} +7 -7
  582. package/dist/node-runtime/{settings-manager-DJDM5AHM.js → settings-manager-P2TKGYTR.js} +5 -5
  583. package/dist/node-runtime/{setup-JBKOLJ6F.js → setup-H7CCELIL.js} +15 -1
  584. package/dist/node-runtime/{setup-PFBWRNUI.js → setup-OLQ4GXWS.js} +17 -17
  585. package/dist/node-runtime/{src-IVPNZ2BX.js → src-6RV4PXKJ.js} +64 -36
  586. package/dist/node-runtime/{subagent-executor-LPZ4BHWE.js → subagent-executor-UI6SHG3X.js} +412 -288
  587. package/dist/node-runtime/{tavily-WEZFVFP7.js → tavily-KZBFYQB6.js} +1 -1
  588. package/dist/node-runtime/{theme-UOO5RVFN.js → theme-YLVZKKZD.js} +2 -2
  589. package/dist/node-runtime/{trust-manager-MMISNCYO.js → trust-manager-ZCU76D23.js} +2 -2
  590. package/dist/node-runtime/{update-cli-HNMOTNGX.js → update-cli-F3XXJANQ.js} +6 -6
  591. package/dist/node-runtime/{usage-service-LFB2SWYV.js → usage-service-CPAGBED5.js} +1 -1
  592. package/dist/node-runtime/{video-extract-OOZHR7SU.js → video-extract-UPKYIBW3.js} +3 -3
  593. package/dist/node-runtime/{workflow-OHPBEFO4.js → workflow-ICDI4N3J.js} +208 -78
  594. package/dist/node-runtime/{youtube-extract-FNPAUNHU.js → youtube-extract-77NT7FWH.js} +4 -4
  595. package/dist/utils/clipboard-image.d.ts.map +1 -1
  596. package/dist/utils/clipboard-image.js.map +1 -1
  597. package/dist/utils/exif-orientation.d.ts.map +1 -1
  598. package/dist/utils/exif-orientation.js +25 -10
  599. package/dist/utils/exif-orientation.js.map +1 -1
  600. package/dist/utils/image-resize-core.d.ts.map +1 -1
  601. package/dist/utils/image-resize-core.js +2 -0
  602. package/dist/utils/image-resize-core.js.map +1 -1
  603. package/dist/utils/paths.d.ts +4 -0
  604. package/dist/utils/paths.d.ts.map +1 -1
  605. package/dist/utils/paths.js +33 -2
  606. package/dist/utils/paths.js.map +1 -1
  607. package/dist/utils/sanitize-terminal-text.d.ts +7 -0
  608. package/dist/utils/sanitize-terminal-text.d.ts.map +1 -0
  609. package/dist/utils/sanitize-terminal-text.js +67 -0
  610. package/dist/utils/sanitize-terminal-text.js.map +1 -0
  611. package/docs/browser.md +1 -1
  612. package/docs/custom-provider.md +3 -3
  613. package/docs/extensions.md +8 -4
  614. package/docs/features.md +25 -7
  615. package/docs/keybindings.md +1 -1
  616. package/docs/models.md +5 -5
  617. package/docs/packages.md +1 -1
  618. package/docs/providers.md +2 -2
  619. package/docs/rpc.md +7 -7
  620. package/docs/security.md +10 -5
  621. package/docs/sessions.md +2 -2
  622. package/docs/skills.md +1 -1
  623. package/docs/terminal-setup.md +7 -7
  624. package/docs/themes.md +1 -1
  625. package/docs/usage.md +1 -1
  626. package/examples/extensions/auto-commit-on-exit.ts +1 -1
  627. package/examples/extensions/bash-spawn-hook.ts +1 -1
  628. package/examples/extensions/built-in-tool-renderer.ts +1 -1
  629. package/examples/extensions/claude-rules.ts +1 -1
  630. package/examples/extensions/commands.ts +1 -1
  631. package/examples/extensions/custom-compaction.ts +1 -1
  632. package/examples/extensions/custom-provider-anthropic/index.ts +3 -3
  633. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  634. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  635. package/examples/extensions/custom-provider-gitlab-duo/index.ts +1 -1
  636. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  637. package/examples/extensions/doom-overlay/index.ts +1 -1
  638. package/examples/extensions/git-merge-and-resolve.ts +2 -2
  639. package/examples/extensions/gondolin/index.ts +1 -1
  640. package/examples/extensions/gondolin/package-lock.json +2 -2
  641. package/examples/extensions/gondolin/package.json +1 -1
  642. package/examples/extensions/hidden-thinking-label.ts +1 -1
  643. package/examples/extensions/inline-bash.ts +2 -2
  644. package/examples/extensions/input-transform-streaming.ts +2 -2
  645. package/examples/extensions/input-transform.ts +2 -2
  646. package/examples/extensions/interactive-shell.ts +1 -1
  647. package/examples/extensions/kimi-deferred-tools.ts +1 -1
  648. package/examples/extensions/mac-system-theme.ts +1 -1
  649. package/examples/extensions/minimal-mode.ts +1 -1
  650. package/examples/extensions/modal-editor.ts +1 -1
  651. package/examples/extensions/model-status.ts +1 -1
  652. package/examples/extensions/notify.ts +3 -3
  653. package/examples/extensions/overlay-qa-tests.ts +1 -1
  654. package/examples/extensions/overlay-test.ts +1 -1
  655. package/examples/extensions/pirate.ts +1 -1
  656. package/examples/extensions/preset.ts +3 -3
  657. package/examples/extensions/project-trust.ts +4 -4
  658. package/examples/extensions/prompt-customizer.ts +1 -1
  659. package/examples/extensions/rainbow-editor.ts +1 -1
  660. package/examples/extensions/rpc-demo.ts +1 -1
  661. package/examples/extensions/sandbox/index.ts +7 -7
  662. package/examples/extensions/sandbox/package-lock.json +2 -2
  663. package/examples/extensions/sandbox/package.json +1 -1
  664. package/examples/extensions/shutdown-command.ts +5 -5
  665. package/examples/extensions/ssh.ts +2 -2
  666. package/examples/extensions/subagent/README.md +3 -3
  667. package/examples/extensions/subagent/index.ts +2 -2
  668. package/examples/extensions/titlebar-spinner.ts +1 -1
  669. package/examples/extensions/tool-override.ts +1 -1
  670. package/examples/extensions/tools.ts +1 -1
  671. package/examples/extensions/with-deps/package-lock.json +2 -2
  672. package/examples/extensions/with-deps/package.json +1 -1
  673. package/examples/extensions/working-indicator.ts +1 -1
  674. package/examples/extensions/working-message-test.ts +1 -1
  675. package/examples/sdk/01-minimal.ts +1 -1
  676. package/examples/sdk/03-custom-prompt.ts +1 -1
  677. package/examples/sdk/04-skills.ts +1 -1
  678. package/examples/sdk/06-extensions.ts +2 -2
  679. package/examples/sdk/08-prompt-templates.ts +1 -1
  680. package/install-lock/package-lock.json +24 -24
  681. package/install-lock/package.json +2 -2
  682. package/npm-shrinkwrap.json +60 -24
  683. package/package.json +9 -9
  684. package/dist/modes/interactive/components/exit-card.d.ts +0 -22
  685. package/dist/modes/interactive/components/exit-card.d.ts.map +0 -1
  686. package/dist/modes/interactive/components/exit-card.js +0 -69
  687. package/dist/modes/interactive/components/exit-card.js.map +0 -1
  688. package/dist/node-runtime/agent-session-services-5YXS2PLF.js +0 -51
  689. package/dist/node-runtime/chunk-2IDTZAG5.js +0 -1415
  690. package/dist/node-runtime/chunk-3MISGG4S.js +0 -769
  691. package/dist/node-runtime/chunk-4HXHDDCF.js +0 -16
  692. package/dist/node-runtime/chunk-5B5QN3ZQ.js +0 -356
  693. package/dist/node-runtime/chunk-7IQGBKBJ.js +0 -2033
  694. package/dist/node-runtime/chunk-AUXVGBO4.js +0 -19
  695. package/dist/node-runtime/chunk-PTFBPO3C.js +0 -50
  696. package/dist/node-runtime/interactive-mode-YOHZVMKX.js +0 -74
  697. package/dist/node-runtime/mcp-auth-flow-QVLFVLEO.js +0 -33
@@ -121,6 +121,13 @@ Connection: close\r
121
121
  }
122
122
 
123
123
  // packages/coding-agent/dist/core/browser/runtime.js
124
+ function closeOwnedResources(owner) {
125
+ return owner?.browser && (owner.browserClose ??= Promise.resolve().then(() => owner.browser.close())), owner?.proxy && (owner.proxyClose ??= Promise.resolve().then(() => owner.proxy.close())), Promise.allSettled([owner?.browserClose, owner?.proxyClose]).then((results) => {
126
+ for (let result of results)
127
+ if (result.status === "rejected")
128
+ throw result.reason;
129
+ });
130
+ }
124
131
  function boundedBrowserText(text) {
125
132
  let result = truncateHead(text.replace(/[\x00-\x08\x0b-\x1f\x7f-\x9f]/g, ""), { maxBytes: 16384, maxLines: 300 });
126
133
  return result.content + (result.truncated ? `
@@ -141,6 +148,8 @@ async function uniqueTarget(page, input) {
141
148
  }
142
149
  var BrowserSession = class {
143
150
  resources;
151
+ owner;
152
+ activeCancellation;
144
153
  queue = Promise.resolve();
145
154
  closing = Promise.resolve();
146
155
  generation = 0;
@@ -152,20 +161,11 @@ var BrowserSession = class {
152
161
  this.allowPrivate = allowPrivate, this.idleMs = idleMs;
153
162
  }
154
163
  async close() {
155
- this.generation++, clearTimeout(this.idle);
156
- let pending = this.resources;
157
- this.resources = void 0;
158
- let previous = this.closing, closing = (async () => {
159
- await previous;
160
- let resources = await pending?.catch(() => {
161
- });
162
- if (resources)
163
- try {
164
- await resources.browser.close();
165
- } finally {
166
- await resources.proxy.close();
167
- }
168
- })();
164
+ this.generation++, clearTimeout(this.idle), this.activeCancellation?.abort();
165
+ let owner = this.owner;
166
+ this.owner = void 0, this.resources = void 0;
167
+ let closing = Promise.all([this.closing, closeOwnedResources(owner)]).then(() => {
168
+ });
169
169
  return this.closing = closing.catch(() => {
170
170
  }), closing;
171
171
  }
@@ -178,38 +178,40 @@ var BrowserSession = class {
178
178
  if (signal?.aborted || generation !== this.generation)
179
179
  throw new Error("Browser operation cancelled; navigate again in a new call.");
180
180
  clearTimeout(this.idle);
181
- let cancellation = new AbortController(), abort = () => {
182
- cancellation.abort(), this.close().catch(() => {
181
+ let cancellation = new AbortController();
182
+ this.activeCancellation = cancellation;
183
+ let ownedGeneration = generation, abort = () => {
184
+ cancellation.abort(), ownedGeneration === this.generation && this.close().catch(() => {
183
185
  });
184
- };
186
+ }, cancellationError = new Error("Browser cancelled or exceeded 30s; browser cleanup requested. External effects may already have occurred."), checkCurrent = () => {
187
+ if (cancellation.signal.aborted || generation !== this.generation)
188
+ throw cancellationError;
189
+ }, rejectCancellation, interrupted = new Promise((_resolve, reject) => {
190
+ rejectCancellation = () => reject(cancellationError), cancellation.signal.addEventListener("abort", rejectCancellation, { once: !0 });
191
+ }), wait = (pending) => Promise.race([pending, interrupted]);
185
192
  signal?.addEventListener("abort", abort, { once: !0 });
186
193
  let deadline = setTimeout(abort, 3e4);
187
194
  try {
188
- if (input.action === "close")
189
- return await this.close(), {
195
+ if (input.action === "close") {
196
+ this.activeCancellation = void 0;
197
+ let closing = this.close();
198
+ return ownedGeneration = this.generation, await wait(closing), {
190
199
  content: [{ type: "text", text: "Browser closed; ephemeral cookies and tabs discarded." }],
191
200
  details: { action: input.action }
192
201
  };
193
- if (await this.closing, signal?.aborted || generation !== this.generation)
194
- throw new Error("Browser operation cancelled.");
195
- if (!this.resources && input.action !== "navigate" && !(input.action === "tabs" && input.operation === "create"))
202
+ }
203
+ if (await wait(this.closing), checkCurrent(), !this.resources && input.action !== "navigate" && !(input.action === "tabs" && input.operation === "create"))
196
204
  throw new Error("No browser is open. Use navigate or tabs/create first. Idle cleanup discards tabs after 5 minutes.");
197
- this.resources ??= this.open().catch((error) => {
198
- throw generation === this.generation && (this.resources = void 0), error;
199
- });
200
- let resources = await this.resources;
201
- if (generation !== this.generation)
202
- throw new Error("Browser operation cancelled.");
203
- let content = await Promise.race([
204
- this.perform(resources, input),
205
- new Promise((_resolve, reject) => {
206
- let cancelled = () => reject(new Error("Browser cancelled or exceeded 30s; browser closed. External effects may already have occurred."));
207
- cancellation.signal.aborted ? cancelled() : cancellation.signal.addEventListener("abort", cancelled, { once: !0 });
208
- })
209
- ]);
210
- if (signal?.aborted || generation !== this.generation)
211
- throw new Error("Browser operation cancelled; external effects may already have occurred. Inspect before retrying.");
212
- return this.idle = setTimeout(() => {
205
+ if (!this.resources) {
206
+ let owner = { generation };
207
+ this.owner = owner, this.resources = this.open(owner).catch((error) => {
208
+ throw this.owner === owner && (this.resources = void 0, this.owner = void 0), error;
209
+ });
210
+ }
211
+ let resources = await wait(this.resources);
212
+ checkCurrent();
213
+ let content = await wait(this.perform(resources, input));
214
+ return checkCurrent(), this.idle = setTimeout(() => {
213
215
  this.close().catch(() => {
214
216
  });
215
217
  }, this.idleMs), this.idle.unref(), { content, details: { action: input.action } };
@@ -221,7 +223,7 @@ var BrowserSession = class {
221
223
  let message = error instanceof Error ? error.message : String(error);
222
224
  throw new Error(boundedBrowserText(message));
223
225
  } finally {
224
- clearTimeout(deadline), signal?.removeEventListener("abort", abort);
226
+ clearTimeout(deadline), signal?.removeEventListener("abort", abort), cancellation.signal.removeEventListener("abort", rejectCancellation), this.activeCancellation === cancellation && (this.activeCancellation = void 0);
225
227
  }
226
228
  });
227
229
  this.queue = operation.catch(() => {
@@ -232,31 +234,39 @@ var BrowserSession = class {
232
234
  this.queued--;
233
235
  }
234
236
  }
235
- async open() {
236
- let proxy = await createBrowserProxy(this.allowPrivate), browser;
237
+ async open(owner) {
238
+ let checkCurrent = () => {
239
+ if (owner.generation !== this.generation)
240
+ throw new Error("Browser operation cancelled.");
241
+ };
237
242
  try {
243
+ let proxy = await createBrowserProxy(this.allowPrivate);
244
+ owner.proxy = proxy, checkCurrent();
238
245
  let { chromium } = await import("playwright-core");
239
- browser = await chromium.launch({
246
+ checkCurrent();
247
+ let browser = await chromium.launch({
240
248
  headless: !0,
241
249
  timeout: 15e3,
242
250
  chromiumSandbox: !0,
243
251
  proxy: { server: proxy.url, bypass: "<-loopback>" },
244
252
  args: ["--disable-quic", "--force-webrtc-ip-handling-policy=disable_non_proxied_udp"]
245
253
  });
254
+ owner.browser = browser, checkCurrent();
246
255
  let context = await browser.newContext({
247
256
  acceptDownloads: !1,
248
257
  serviceWorkers: "block",
249
258
  permissions: [],
250
259
  viewport: { width: 1280, height: 800 }
251
260
  });
252
- context.setDefaultTimeout(1e4), context.setDefaultNavigationTimeout(15e3), await context.route("**/*", async (route) => {
261
+ owner.generation !== this.generation && (context.close().catch(() => {
262
+ }), checkCurrent()), context.setDefaultTimeout(1e4), context.setDefaultNavigationTimeout(15e3), await context.route("**/*", async (route) => {
253
263
  try {
254
264
  browserUrl(route.request().url()), await route.continue();
255
265
  } catch {
256
266
  await route.abort().catch(() => {
257
267
  });
258
268
  }
259
- }), await context.routeWebSocket("**/*", (socket) => socket.close());
269
+ }), checkCurrent(), await context.routeWebSocket("**/*", (socket) => socket.close()), checkCurrent();
260
270
  let resources = { browser, context, proxy, pages: /* @__PURE__ */ new Map(), nextId: 1 };
261
271
  return context.on("page", (page) => {
262
272
  if (resources.pages.size >= 4) {
@@ -274,8 +284,8 @@ var BrowserSession = class {
274
284
  });
275
285
  }), resources;
276
286
  } catch (error) {
277
- await browser?.close().catch(() => {
278
- }), await proxy.close();
287
+ await closeOwnedResources(owner).catch(() => {
288
+ });
279
289
  let message = error instanceof Error ? error.message : String(error);
280
290
  throw new Error(`Browser launch failed. Matching Chromium may be missing after --ignore-scripts or offline installation. Ask the user to run lunr browser install when online. Nothing was installed by this call. ${message}`);
281
291
  }
@@ -6,9 +6,9 @@ import {
6
6
  resolveRuntimeArchive,
7
7
  runtimeEnvironment,
8
8
  runtimeInventory
9
- } from "./chunk-5B6VKFEV.js";
9
+ } from "./chunk-ZIQUS5QO.js";
10
10
  import "./chunk-URD2SLIT.js";
11
- import "./chunk-FQMM2EZ2.js";
11
+ import "./chunk-64XTQNLA.js";
12
12
  import "./chunk-Q4Q6D4IY.js";
13
13
  import "./chunk-BRJX2PRC.js";
14
14
  export {
@@ -1,19 +1,19 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  bindRuntimeBridges
4
- } from "./chunk-SPVDBUOS.js";
5
- import "./chunk-I74LN5JG.js";
6
- import "./chunk-UOEDI7RP.js";
7
- import "./chunk-2HMIRK7W.js";
4
+ } from "./chunk-6O3IW3IA.js";
5
+ import "./chunk-HUD2RFJW.js";
6
+ import "./chunk-4KNKQGHM.js";
7
+ import "./chunk-LHV3V67B.js";
8
8
  import "./chunk-URD2SLIT.js";
9
9
  import "./chunk-FY4A63RK.js";
10
10
  import "./chunk-4EULYYR4.js";
11
11
  import "./chunk-UJOCPOMX.js";
12
12
  import "./chunk-2TKODGBZ.js";
13
- import "./chunk-2MI5OPMN.js";
13
+ import "./chunk-HNNHHJAB.js";
14
14
  import "./chunk-IMLCWLPI.js";
15
- import "./chunk-B4HP6ZWM.js";
16
- import "./chunk-FQMM2EZ2.js";
15
+ import "./chunk-RHCGYWO7.js";
16
+ import "./chunk-64XTQNLA.js";
17
17
  import "./chunk-Q4Q6D4IY.js";
18
18
  import "./chunk-BRJX2PRC.js";
19
19
  export {
@@ -13,9 +13,10 @@ import {
13
13
  serviceStatusText,
14
14
  startGatewayService,
15
15
  startupSpec,
16
- stopGatewayService
17
- } from "./chunk-SLVOAQOY.js";
18
- import "./chunk-FQMM2EZ2.js";
16
+ stopGatewayService,
17
+ teardownGatewayService
18
+ } from "./chunk-WXYNALHD.js";
19
+ import "./chunk-64XTQNLA.js";
19
20
  import "./chunk-Q4Q6D4IY.js";
20
21
  import "./chunk-BRJX2PRC.js";
21
22
  export {
@@ -32,5 +33,6 @@ export {
32
33
  serviceStatusText,
33
34
  startGatewayService,
34
35
  startupSpec,
35
- stopGatewayService
36
+ stopGatewayService,
37
+ teardownGatewayService
36
38
  };
@@ -11,11 +11,11 @@ import {
11
11
  recordTuiActivity,
12
12
  registerTransferHandler,
13
13
  requestSessionTransfer
14
- } from "./chunk-I54LGHWM.js";
15
- import "./chunk-2KIPT4HJ.js";
14
+ } from "./chunk-STMX7W5I.js";
15
+ import "./chunk-PWHTSQC4.js";
16
16
  import "./chunk-FVDOXRUD.js";
17
- import "./chunk-UAEOTO52.js";
18
- import "./chunk-FQMM2EZ2.js";
17
+ import "./chunk-MNQXDFPV.js";
18
+ import "./chunk-64XTQNLA.js";
19
19
  import "./chunk-Q4Q6D4IY.js";
20
20
  import "./chunk-BRJX2PRC.js";
21
21
  export {
@@ -12,10 +12,10 @@ import {
12
12
  migrateSessionEntries,
13
13
  parseSessionEntries,
14
14
  sessionEntryToContextMessages
15
- } from "./chunk-2KIPT4HJ.js";
15
+ } from "./chunk-PWHTSQC4.js";
16
16
  import "./chunk-FVDOXRUD.js";
17
- import "./chunk-UAEOTO52.js";
18
- import "./chunk-FQMM2EZ2.js";
17
+ import "./chunk-MNQXDFPV.js";
18
+ import "./chunk-64XTQNLA.js";
19
19
  import "./chunk-Q4Q6D4IY.js";
20
20
  import "./chunk-BRJX2PRC.js";
21
21
  export {
@@ -1,13 +1,13 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  SessionSelectorComponent
4
- } from "./chunk-PCEW76PM.js";
5
- import "./chunk-UAEOTO52.js";
6
- import "./chunk-5EFIU3OM.js";
7
- import "./chunk-6VYZ5UFP.js";
8
- import "./chunk-GS42T6MX.js";
9
- import "./chunk-RDDAZOMU.js";
10
- import "./chunk-FQMM2EZ2.js";
4
+ } from "./chunk-2OIPYKLZ.js";
5
+ import "./chunk-MNQXDFPV.js";
6
+ import "./chunk-FTKEZL27.js";
7
+ import "./chunk-FLGEEH27.js";
8
+ import "./chunk-QW3AAHWN.js";
9
+ import "./chunk-JL4HYQXK.js";
10
+ import "./chunk-64XTQNLA.js";
11
11
  import "./chunk-Q4Q6D4IY.js";
12
12
  import "./chunk-BRJX2PRC.js";
13
13
  export {
@@ -8,15 +8,15 @@ import {
8
8
  bindSubagentCommunicationSetting,
9
9
  parseSkillTagCharacter,
10
10
  subagentCommunicationEnabled
11
- } from "./chunk-I74LN5JG.js";
12
- import "./chunk-UOEDI7RP.js";
13
- import "./chunk-2HMIRK7W.js";
11
+ } from "./chunk-HUD2RFJW.js";
12
+ import "./chunk-4KNKQGHM.js";
13
+ import "./chunk-LHV3V67B.js";
14
14
  import "./chunk-URD2SLIT.js";
15
15
  import "./chunk-FY4A63RK.js";
16
16
  import "./chunk-UJOCPOMX.js";
17
17
  import "./chunk-IMLCWLPI.js";
18
- import "./chunk-B4HP6ZWM.js";
19
- import "./chunk-FQMM2EZ2.js";
18
+ import "./chunk-RHCGYWO7.js";
19
+ import "./chunk-64XTQNLA.js";
20
20
  import "./chunk-Q4Q6D4IY.js";
21
21
  import "./chunk-BRJX2PRC.js";
22
22
  export {
@@ -1,13 +1,27 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+ import {
3
+ isBunBinary
4
+ } from "./chunk-64XTQNLA.js";
5
+ import "./chunk-Q4Q6D4IY.js";
2
6
  import "./chunk-BRJX2PRC.js";
3
7
 
4
8
  // packages/coding-agent/dist/core/browser/setup.js
5
9
  import { spawn } from "node:child_process";
6
10
  import { fileURLToPath } from "node:url";
7
11
  async function installBrowser(explicit = !0) {
12
+ if (isBunBinary) {
13
+ let notice = "Chromium installation is unavailable in the compiled standalone executable. Install the same lunR version through npm and run lunr browser install there. Use the same PLAYWRIGHT_BROWSERS_PATH for installation and standalone execution.";
14
+ if (explicit)
15
+ throw new Error(notice);
16
+ console.warn(notice);
17
+ return;
18
+ }
8
19
  let script = fileURLToPath(new URL("../../../scripts/install-browser.mjs", new URL("../core/browser/setup.js", import.meta.url).href));
9
20
  await new Promise((resolve, reject) => {
10
- let child = spawn(process.execPath, [script, ...explicit ? ["--explicit"] : []], { stdio: "inherit", windowsHide: !0 });
21
+ let child = spawn(process.execPath, [script, ...explicit ? ["--explicit"] : []], {
22
+ stdio: "inherit",
23
+ windowsHide: !0
24
+ });
11
25
  child.once("error", reject), child.once("exit", (code) => {
12
26
  code === 0 ? resolve() : reject(new Error(`Chromium setup failed (${code}). Retry lunr browser install when online.`));
13
27
  });
@@ -4,49 +4,49 @@ import {
4
4
  } from "./chunk-H4K3JDRB.js";
5
5
  import {
6
6
  createPairingStore
7
- } from "./chunk-RMQZU2YU.js";
7
+ } from "./chunk-NNNR3QIY.js";
8
8
  import {
9
9
  configureStartup,
10
10
  loadServiceSettings,
11
11
  startGatewayService
12
- } from "./chunk-SLVOAQOY.js";
12
+ } from "./chunk-WXYNALHD.js";
13
13
  import {
14
14
  createStartupTui,
15
15
  showStartupInput,
16
16
  startStartupTui
17
- } from "./chunk-X3PGBLQ7.js";
17
+ } from "./chunk-IHHTWSXN.js";
18
18
  import "./chunk-YPHAIRZT.js";
19
- import "./chunk-RAK2QA2B.js";
20
- import "./chunk-DVGWF6A2.js";
19
+ import "./chunk-UYRKUKFE.js";
21
20
  import "./chunk-OBMWP3I5.js";
21
+ import "./chunk-DVGWF6A2.js";
22
22
  import {
23
23
  SettingsManager
24
- } from "./chunk-I74LN5JG.js";
25
- import "./chunk-UOEDI7RP.js";
24
+ } from "./chunk-HUD2RFJW.js";
25
+ import "./chunk-4KNKQGHM.js";
26
26
  import {
27
27
  loadInstallFeatures,
28
28
  saveInstallFeatures
29
- } from "./chunk-2HMIRK7W.js";
29
+ } from "./chunk-LHV3V67B.js";
30
30
  import "./chunk-URD2SLIT.js";
31
31
  import "./chunk-CGBXPL3E.js";
32
32
  import "./chunk-FY4A63RK.js";
33
33
  import "./chunk-UJOCPOMX.js";
34
34
  import "./chunk-IMLCWLPI.js";
35
- import "./chunk-5EFIU3OM.js";
35
+ import "./chunk-FTKEZL27.js";
36
36
  import {
37
37
  loadGatewayConfig,
38
38
  saveGatewayConfig
39
- } from "./chunk-B4HP6ZWM.js";
40
- import "./chunk-QH6YL7VK.js";
41
- import "./chunk-HMBGROQK.js";
39
+ } from "./chunk-RHCGYWO7.js";
40
+ import "./chunk-252ZVPPF.js";
41
+ import "./chunk-GLDXBBL6.js";
42
42
  import "./chunk-I6R76AG7.js";
43
- import "./chunk-6VYZ5UFP.js";
44
- import "./chunk-GS42T6MX.js";
43
+ import "./chunk-FLGEEH27.js";
44
+ import "./chunk-QW3AAHWN.js";
45
45
  import {
46
46
  getSelectListTheme,
47
47
  theme
48
- } from "./chunk-RDDAZOMU.js";
49
- import "./chunk-FQMM2EZ2.js";
48
+ } from "./chunk-JL4HYQXK.js";
49
+ import "./chunk-64XTQNLA.js";
50
50
  import "./chunk-Q4Q6D4IY.js";
51
51
  import "./chunk-BRJX2PRC.js";
52
52
 
@@ -157,7 +157,7 @@ Guide: https://docs.discord.com/developers/quick-start/getting-started`);
157
157
  { label: "When the computer boots", value: "boot" }
158
158
  ], loadServiceSettings().startup);
159
159
  startup === "boot" && console.log("Boot startup may require administrator permission or OS-managed account credentials. lunR does not save your account password.");
160
- let { ModelRuntime } = await import("./model-runtime-OO5HFLWE.js"), models = await (await ModelRuntime.create({ allowModelNetwork: !1 })).getAvailable();
160
+ let { ModelRuntime } = await import("./model-runtime-MZ2JMDV4.js"), models = await (await ModelRuntime.create({ allowModelNetwork: !1 })).getAvailable();
161
161
  if (!models.length)
162
162
  throw new Error("No saved model credentials found. Open lunr locally and use /login, then rerun gateway setup. Nothing saved.");
163
163
  let settings = SettingsManager.create(cfg.defaultProject), providers = [...new Set(models.map((model2) => model2.provider))], provider = await choose("Model provider", providers.map((value) => ({ label: value, value })), settings.getDefaultProvider()), choices = models.filter((model2) => model2.provider === provider), model = await choose("Model", choices.map((value) => ({ label: value.id, value })), choices.find((model2) => model2.id === settings.getDefaultModel()));
@@ -22,16 +22,26 @@ import {
22
22
  import {
23
23
  typebox_exports
24
24
  } from "./chunk-PL6JKXWI.js";
25
+ import {
26
+ withFileMutationQueue
27
+ } from "./chunk-YSB6URMT.js";
25
28
  import {
26
29
  DEFAULT_MAX_BYTES,
27
30
  DEFAULT_MAX_LINES,
28
31
  truncateHead
29
32
  } from "./chunk-53YJI7JU.js";
33
+ import {
34
+ protectedTargetWriteReason,
35
+ resolveToCwd
36
+ } from "./chunk-F2V2F4ZG.js";
37
+ import "./chunk-BDRGN3L2.js";
30
38
  import {
31
39
  isEditToolResult,
32
40
  isReadToolResult,
33
41
  isWriteToolResult
34
42
  } from "./chunk-OR4L3IB2.js";
43
+ import "./chunk-64XTQNLA.js";
44
+ import "./chunk-Q4Q6D4IY.js";
35
45
  import {
36
46
  __toESM
37
47
  } from "./chunk-BRJX2PRC.js";
@@ -41,7 +51,7 @@ var import_vscode_languageserver_protocol3 = __toESM(require_api(), 1);
41
51
 
42
52
  // packages/coding-agent/dist/builtin-extensions/pi-lsp-extension/src/runtime.js
43
53
  var defaultLoaders = {
44
- loadLspManager: () => import("./lsp-manager-3ASUSO4T.js"),
54
+ loadLspManager: () => import("./lsp-manager-S554V5HR.js"),
45
55
  loadFileSync: () => import("./file-sync-HCOP2QVF.js"),
46
56
  loadTreeSitter: () => import("./parser-manager-TQHWYDH7.js"),
47
57
  loadWorkspaceIndex: () => import("./workspace-index-6DBXSTJ6.js")
@@ -1587,6 +1597,7 @@ function hasErrors(node) {
1587
1597
  }
1588
1598
 
1589
1599
  // packages/coding-agent/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js
1600
+ import { createHash } from "node:crypto";
1590
1601
  import { resolve as resolve2 } from "node:path";
1591
1602
  import { readdir as readdir2, readFile as readFile8, stat } from "node:fs/promises";
1592
1603
  async function searchFiles(pattern, rootDir, treeSitter, options = {}) {
@@ -1600,12 +1611,13 @@ async function searchFiles(pattern, rootDir, treeSitter, options = {}) {
1600
1611
  let content = await readFile8(file, "utf-8"), tree = await treeSitter.parseWithLanguage(file, content, pattern.languageId);
1601
1612
  if (!tree)
1602
1613
  continue;
1603
- let fileMatches = findMatches(tree.rootNode, pattern.root);
1614
+ let sourceHash = createHash("sha256").update(content).digest("hex"), fileMatches = findMatches(tree.rootNode, pattern.root);
1604
1615
  for (let m of fileMatches) {
1605
1616
  if (matches.length >= maxResults)
1606
1617
  break;
1607
1618
  matches.push({
1608
1619
  file,
1620
+ sourceHash,
1609
1621
  line: m.node.startPosition.row + 1,
1610
1622
  column: m.node.startPosition.column + 1,
1611
1623
  matchedText: m.node.text,
@@ -1800,6 +1812,8 @@ function createCodeSearchTool(rootDirOrGetter, treeSitter) {
1800
1812
  import { relative as relative8 } from "node:path";
1801
1813
 
1802
1814
  // packages/coding-agent/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js
1815
+ import { createHash as createHash2 } from "node:crypto";
1816
+ import { dirname } from "node:path";
1803
1817
  import { readFile as readFile9, writeFile } from "node:fs/promises";
1804
1818
  var METAVAR_REF_RE = /\$\$\$([A-Z_][A-Z0-9_]*)|\$([A-Z_][A-Z0-9_]*)/g;
1805
1819
  function substituteCaptures(template, captures) {
@@ -1824,28 +1838,47 @@ function computeRewrites(matches, replacementTemplate) {
1824
1838
  };
1825
1839
  });
1826
1840
  }
1827
- async function applyRewrites(matches, replacementTemplate) {
1841
+ async function applyRewrites(matches, replacementTemplate, cwd) {
1828
1842
  let byFile = /* @__PURE__ */ new Map();
1829
- for (let m of matches) {
1830
- let existing = byFile.get(m.file);
1831
- existing ? existing.push(m) : byFile.set(m.file, [m]);
1843
+ for (let match of matches) {
1844
+ let existing = byFile.get(match.file);
1845
+ existing ? existing.push(match) : byFile.set(match.file, [match]);
1846
+ }
1847
+ let result = { changes: [], filesModified: 0, modifiedFiles: [], failures: [], skippedFiles: [] }, files = [...byFile.keys()];
1848
+ for (let file of files) {
1849
+ let reason = protectedTargetWriteReason(file, cwd ?? dirname(file));
1850
+ reason && result.failures.push({ file, reason });
1832
1851
  }
1833
- let changes = [], filesModified = 0;
1852
+ if (result.failures.length)
1853
+ return result.skippedFiles = files.filter((file) => !result.failures.some((failure) => failure.file === file)), result;
1834
1854
  for (let [file, fileMatches] of byFile) {
1835
- let sorted = [...fileMatches].sort((a, b) => b.startIndex - a.startIndex), content = await readFile9(file, "utf-8"), modified = !1;
1836
- for (let m of sorted) {
1837
- let raw = substituteCaptures(replacementTemplate, m.captures), replacement = preserveTrailingSemicolon(m.matchedText, raw);
1838
- replacement !== m.matchedText && (content = content.slice(0, m.startIndex) + replacement + content.slice(m.endIndex), modified = !0), changes.push({
1839
- file,
1840
- line: m.line,
1841
- column: m.column,
1842
- before: m.matchedText,
1843
- after: replacement
1855
+ let writeAttempted = !1;
1856
+ try {
1857
+ let applied = await withFileMutationQueue(file, async () => {
1858
+ let reason = protectedTargetWriteReason(file, cwd ?? dirname(file));
1859
+ if (reason)
1860
+ throw new Error(reason);
1861
+ let source = await readFile9(file, "utf-8"), sourceHash = createHash2("sha256").update(source).digest("hex"), sorted = [...fileMatches].sort((a, b) => b.startIndex - a.startIndex), nextStart = source.length;
1862
+ for (let match of sorted) {
1863
+ if (match.sourceHash !== sourceHash || !Number.isInteger(match.startIndex) || !Number.isInteger(match.endIndex) || match.startIndex < 0 || match.endIndex > nextStart || match.startIndex > match.endIndex || source.slice(match.startIndex, match.endIndex) !== match.matchedText)
1864
+ throw new Error("Source changed or match offsets are invalid. Search again before applying a rewrite.");
1865
+ nextStart = match.startIndex;
1866
+ }
1867
+ let content = source, changes = [];
1868
+ for (let match of sorted) {
1869
+ let raw = substituteCaptures(replacementTemplate, match.captures), replacement = preserveTrailingSemicolon(match.matchedText, raw);
1870
+ content = content.slice(0, match.startIndex) + replacement + content.slice(match.endIndex), changes.push({ file, line: match.line, column: match.column, before: match.matchedText, after: replacement });
1871
+ }
1872
+ let modified = content !== source;
1873
+ return modified && (writeAttempted = !0, await writeFile(file, content, "utf-8")), { changes: changes.reverse(), modified };
1844
1874
  });
1875
+ result.changes.push(...applied.changes), applied.modified && result.modifiedFiles.push(file);
1876
+ } catch (error) {
1877
+ result.failures.push({ file, reason: error instanceof Error ? error.message : String(error), writeAttempted }), result.skippedFiles = files.slice(files.indexOf(file) + 1);
1878
+ break;
1845
1879
  }
1846
- modified && (await writeFile(file, content, "utf-8"), filesModified++);
1847
1880
  }
1848
- return changes.reverse(), { changes, filesModified };
1881
+ return result.filesModified = result.modifiedFiles.length, result;
1849
1882
  }
1850
1883
 
1851
1884
  // packages/coding-agent/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js
@@ -1861,7 +1894,7 @@ function createCodeRewriteTool(rootDirOrGetter, treeSitter, fileChangeCallback)
1861
1894
  return {
1862
1895
  name: "code_rewrite",
1863
1896
  label: "Code Rewrite",
1864
- description: "Transform code matching a structural pattern into a replacement. Use $NAME to capture and reuse single nodes, $$$NAME for sequences. Defaults to dry-run mode (preview only). Set dry_run=false to apply changes. For symbol renames, prefer lsp_rename instead (semantically correct).",
1897
+ description: "Transform code matching a structural pattern into a replacement. Use $NAME to capture and reuse single nodes, $$$NAME for sequences. Defaults to dry-run mode (preview only). Set dry_run=false to apply changes. Apply rejects protected targets and stale source snapshots. Files apply sequentially; a later failure leaves earlier changes in place and reports skipped files. Search again after a stale-source failure. Inspect failed writes before retrying. For symbol renames, prefer lsp_rename instead (semantically correct).",
1865
1898
  parameters: RewriteParams,
1866
1899
  async execute(_toolCallId, params) {
1867
1900
  let rootDir = getRootDir(), { pattern: patternStr, replacement, language, path, dry_run } = params, isDryRun = dry_run !== !1, compiled;
@@ -1869,7 +1902,7 @@ function createCodeRewriteTool(rootDirOrGetter, treeSitter, fileChangeCallback)
1869
1902
  compiled = await compilePattern(patternStr, language, treeSitter);
1870
1903
  } catch (e) {
1871
1904
  return {
1872
- content: [{ type: "text", text: `Error: ${e.message}` }],
1905
+ content: [{ type: "text", text: `Error: ${e instanceof Error ? e.message : String(e)}` }],
1873
1906
  details: { matchCount: 0, filesModified: 0, dryRun: isDryRun }
1874
1907
  };
1875
1908
  }
@@ -1883,7 +1916,7 @@ function createCodeRewriteTool(rootDirOrGetter, treeSitter, fileChangeCallback)
1883
1916
  };
1884
1917
  }
1885
1918
  let matches = await searchFiles(compiled, rootDir, treeSitter, {
1886
- path,
1919
+ path: path ? resolveToCwd(path, rootDir) : void 0,
1887
1920
  maxResults: 500
1888
1921
  });
1889
1922
  if (matches.length === 0)
@@ -1919,13 +1952,16 @@ function createCodeRewriteTool(rootDirOrGetter, treeSitter, fileChangeCallback)
1919
1952
  details: { matchCount: matches.length, filesModified: uniqueFiles.size, dryRun: !0 }
1920
1953
  };
1921
1954
  }
1922
- let result = await applyRewrites(matches, replacement);
1923
- if (fileChangeCallback && result.filesModified > 0) {
1924
- let modifiedFiles = new Set(result.changes.map((c) => c.file));
1925
- for (let file of modifiedFiles)
1955
+ let result = await applyRewrites(matches, replacement, rootDir);
1956
+ if (fileChangeCallback && result.filesModified > 0)
1957
+ for (let file of result.modifiedFiles)
1926
1958
  fileChangeCallback.onFileModified(file);
1927
- }
1928
1959
  let lines = [];
1960
+ if (result.failures.length) {
1961
+ lines.push(`Rewrite stopped. ${result.filesModified} file(s) changed before failure; earlier changes remain. ${result.skippedFiles.length} file(s) skipped.`), result.failures.some((failure) => failure.writeAttempted) && lines.push("A failed write may have partially changed its target. Inspect that file before retrying.");
1962
+ for (let failure of result.failures)
1963
+ lines.push(`${relative8(rootDir, failure.file)}: ${failure.reason}`);
1964
+ }
1929
1965
  lines.push(`Applied ${result.changes.length} change${result.changes.length !== 1 ? "s" : ""} across ${result.filesModified} file${result.filesModified !== 1 ? "s" : ""}:
1930
1966
  `);
1931
1967
  for (let c of result.changes) {
@@ -1938,7 +1974,7 @@ function createCodeRewriteTool(rootDirOrGetter, treeSitter, fileChangeCallback)
1938
1974
 
1939
1975
  [Truncated: showing ${truncation.outputLines} of ${truncation.totalLines} lines]`), {
1940
1976
  content: [{ type: "text", text: output }],
1941
- details: { matchCount: matches.length, filesModified: result.filesModified, dryRun: !1 }
1977
+ details: { matchCount: matches.length, filesModified: result.filesModified, dryRun: !1, failures: result.failures, skippedFiles: result.skippedFiles }
1942
1978
  };
1943
1979
  }
1944
1980
  };
@@ -2141,14 +2177,6 @@ function registerToolWithRuntime(pi, tool, ensure, host) {
2141
2177
  });
2142
2178
  }
2143
2179
  function lspExtension(pi) {
2144
- let origListeners = process.listeners("uncaughtException");
2145
- process.on("uncaughtException", (err) => {
2146
- if (err?.code !== "EPIPE") {
2147
- for (let listener of origListeners)
2148
- listener(err);
2149
- origListeners.length === 0 && console.error("[LSP] Uncaught exception:", err);
2150
- }
2151
- });
2152
2180
  let host = new LspRuntimeHost(), pendingProvider = null, latestCtx = null, projectConfig = null, sessionCwd = process.cwd(), withLatestCtx = (fn) => {
2153
2181
  let ctx = latestCtx;
2154
2182
  if (ctx)
@@ -2219,7 +2247,7 @@ function lspExtension(pi) {
2219
2247
  }
2220
2248
  }), ensureRuntime = async () => host.ensureServices(buildBindOptions(sessionCwd || process.cwd()));
2221
2249
  pi.on("session_start", async (_event, ctx) => {
2222
- latestCtx = ctx, sessionCwd = ctx.cwd, projectConfig = loadProjectConfig(ctx.cwd), await host.bindSession(buildBindOptions(ctx.cwd));
2250
+ latestCtx = ctx, sessionCwd = ctx.cwd, projectConfig = ctx.isProjectTrusted() ? loadProjectConfig(ctx.cwd) : null, await host.bindSession(buildBindOptions(ctx.cwd));
2223
2251
  let statusText = pendingProvider?.getStatusText?.() ?? "";
2224
2252
  if (statusText ? ctx.ui.setStatus("lsp", ctx.ui.theme.fg("accent", `LSP: ${statusText}`)) : ctx.ui.setStatus("lsp", ctx.ui.theme.fg("dim", "LSP: idle")), projectConfig?.autoStart && projectConfig.autoStart.length > 0) {
2225
2253
  let langs = projectConfig.autoStart, generation = host.getGeneration();