@ashx-j/lunr 0.2.26 → 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 (639) hide show
  1. package/CHANGELOG.md +16 -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/commands.d.ts.map +1 -1
  19. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js +2 -2
  20. package/dist/builtin-extensions/narumiruna-pi-goal/src/commands.js.map +1 -1
  21. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.d.ts.map +1 -1
  22. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js +1 -1
  23. package/dist/builtin-extensions/narumiruna-pi-goal/src/goal.js.map +1 -1
  24. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.d.ts.map +1 -1
  25. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js +1 -1
  26. package/dist/builtin-extensions/narumiruna-pi-goal/src/runtime.js.map +1 -1
  27. package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
  28. package/dist/builtin-extensions/pi-intercom/index.js +2 -2
  29. package/dist/builtin-extensions/pi-intercom/index.js.map +1 -1
  30. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts +1 -1
  31. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.d.ts.map +1 -1
  32. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js +1 -1
  33. package/dist/builtin-extensions/pi-lsp-extension/bemol-extension/index.js.map +1 -1
  34. package/dist/builtin-extensions/pi-lsp-extension/src/index.d.ts.map +1 -1
  35. package/dist/builtin-extensions/pi-lsp-extension/src/index.js +1 -15
  36. package/dist/builtin-extensions/pi-lsp-extension/src/index.js.map +1 -1
  37. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts +6 -0
  38. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.d.ts.map +1 -1
  39. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js +187 -132
  40. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-client.js.map +1 -1
  41. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts +8 -0
  42. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.d.ts.map +1 -1
  43. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js +142 -112
  44. package/dist/builtin-extensions/pi-lsp-extension/src/lsp-manager.js.map +1 -1
  45. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts +12 -1
  46. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.d.ts.map +1 -1
  47. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js +14 -7
  48. package/dist/builtin-extensions/pi-lsp-extension/src/tools/code-rewrite.js.map +1 -1
  49. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts +11 -3
  50. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.d.ts.map +1 -1
  51. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js +67 -41
  52. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/rewrite-engine.js.map +1 -1
  53. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts +4 -2
  54. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.d.ts.map +1 -1
  55. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js +3 -0
  56. package/dist/builtin-extensions/pi-lsp-extension/src/tree-sitter/search-engine.js.map +1 -1
  57. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts +2 -1
  58. package/dist/builtin-extensions/pi-mcp-adapter/commands.d.ts.map +1 -1
  59. package/dist/builtin-extensions/pi-mcp-adapter/commands.js +6 -6
  60. package/dist/builtin-extensions/pi-mcp-adapter/commands.js.map +1 -1
  61. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts +1 -1
  62. package/dist/builtin-extensions/pi-mcp-adapter/config.d.ts.map +1 -1
  63. package/dist/builtin-extensions/pi-mcp-adapter/config.js +11 -5
  64. package/dist/builtin-extensions/pi-mcp-adapter/config.js.map +1 -1
  65. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.d.ts.map +1 -1
  66. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js +2 -2
  67. package/dist/builtin-extensions/pi-mcp-adapter/direct-tool-executor.js.map +1 -1
  68. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.d.ts.map +1 -1
  69. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js +1 -1
  70. package/dist/builtin-extensions/pi-mcp-adapter/host-html-template.js.map +1 -1
  71. package/dist/builtin-extensions/pi-mcp-adapter/index.d.ts.map +1 -1
  72. package/dist/builtin-extensions/pi-mcp-adapter/index.js +48 -40
  73. package/dist/builtin-extensions/pi-mcp-adapter/index.js.map +1 -1
  74. package/dist/builtin-extensions/pi-mcp-adapter/init.d.ts.map +1 -1
  75. package/dist/builtin-extensions/pi-mcp-adapter/init.js +3 -1
  76. package/dist/builtin-extensions/pi-mcp-adapter/init.js.map +1 -1
  77. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts +12 -40
  78. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.d.ts.map +1 -1
  79. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js +166 -235
  80. package/dist/builtin-extensions/pi-mcp-adapter/mcp-auth-flow.js.map +1 -1
  81. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts +5 -0
  82. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.d.ts.map +1 -1
  83. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js +43 -13
  84. package/dist/builtin-extensions/pi-mcp-adapter/mcp-callback-server.js.map +1 -1
  85. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts +14 -3
  86. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.d.ts.map +1 -1
  87. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js +73 -21
  88. package/dist/builtin-extensions/pi-mcp-adapter/mcp-oauth-provider.js.map +1 -1
  89. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.d.ts.map +1 -1
  90. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js +4 -4
  91. package/dist/builtin-extensions/pi-mcp-adapter/proxy-modes.js.map +1 -1
  92. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.d.ts.map +1 -1
  93. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js +2 -2
  94. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js.map +1 -1
  95. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts +2 -0
  96. package/dist/builtin-extensions/pi-mcp-adapter/state.d.ts.map +1 -1
  97. package/dist/builtin-extensions/pi-mcp-adapter/state.js.map +1 -1
  98. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts +1 -1
  99. package/dist/builtin-extensions/pi-ollama-cloud/index.d.ts.map +1 -1
  100. package/dist/builtin-extensions/pi-ollama-cloud/index.js +1 -1
  101. package/dist/builtin-extensions/pi-ollama-cloud/index.js.map +1 -1
  102. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts +11 -5
  103. package/dist/builtin-extensions/pi-ollama-cloud/models.d.ts.map +1 -1
  104. package/dist/builtin-extensions/pi-ollama-cloud/models.js +12 -32
  105. package/dist/builtin-extensions/pi-ollama-cloud/models.js.map +1 -1
  106. package/dist/builtin-extensions/pi-prompt-template-model/index.d.ts.map +1 -1
  107. package/dist/builtin-extensions/pi-prompt-template-model/index.js +5 -3
  108. package/dist/builtin-extensions/pi-prompt-template-model/index.js.map +1 -1
  109. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts +2 -1
  110. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.d.ts.map +1 -1
  111. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js +21 -12
  112. package/dist/builtin-extensions/pi-prompt-template-model/prompt-loader.js.map +1 -1
  113. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.d.ts.map +1 -1
  114. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js +7 -24
  115. package/dist/builtin-extensions/pi-prompt-template-model/tool-manager.js.map +1 -1
  116. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
  117. package/dist/builtin-extensions/pi-subagents/src/extension/index.js +39 -77
  118. package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
  119. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts +1 -1
  120. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
  121. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js +15 -31
  122. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js.map +1 -1
  123. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
  124. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js +7 -2
  125. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
  126. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  127. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +10 -2
  128. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  129. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
  130. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +8 -1
  131. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
  132. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  133. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +106 -24
  134. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  135. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  136. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +25 -5
  137. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  138. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts +1 -1
  139. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts.map +1 -1
  140. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js +1 -1
  141. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js.map +1 -1
  142. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +7 -8
  143. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  144. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js +60 -32
  145. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  146. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts +1 -1
  147. package/dist/builtin-extensions/pi-subagents/src/shared/utils.d.ts.map +1 -1
  148. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js +15 -5
  149. package/dist/builtin-extensions/pi-subagents/src/shared/utils.js.map +1 -1
  150. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
  151. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +4 -3
  152. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
  153. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +1 -1
  154. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
  155. package/dist/builtin-extensions/pi-subagents/src/tui/render.js +17 -8
  156. package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
  157. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.d.ts.map +1 -1
  158. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js +3 -3
  159. package/dist/builtin-extensions/pi-subagents/src/watchdog/review.js.map +1 -1
  160. package/dist/builtin-extensions/pi-tps.d.ts.map +1 -1
  161. package/dist/builtin-extensions/pi-tps.js +20 -17
  162. package/dist/builtin-extensions/pi-tps.js.map +1 -1
  163. package/dist/builtin-extensions/pi-web-access/activity.d.ts +1 -0
  164. package/dist/builtin-extensions/pi-web-access/activity.d.ts.map +1 -1
  165. package/dist/builtin-extensions/pi-web-access/activity.js +27 -5
  166. package/dist/builtin-extensions/pi-web-access/activity.js.map +1 -1
  167. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts +3 -0
  168. package/dist/builtin-extensions/pi-web-access/bounded-body.d.ts.map +1 -0
  169. package/dist/builtin-extensions/pi-web-access/bounded-body.js +43 -0
  170. package/dist/builtin-extensions/pi-web-access/bounded-body.js.map +1 -0
  171. package/dist/builtin-extensions/pi-web-access/content-page.d.ts +24 -0
  172. package/dist/builtin-extensions/pi-web-access/content-page.d.ts.map +1 -0
  173. package/dist/builtin-extensions/pi-web-access/content-page.js +57 -0
  174. package/dist/builtin-extensions/pi-web-access/content-page.js.map +1 -0
  175. package/dist/builtin-extensions/pi-web-access/extract.d.ts.map +1 -1
  176. package/dist/builtin-extensions/pi-web-access/extract.js +7 -2
  177. package/dist/builtin-extensions/pi-web-access/extract.js.map +1 -1
  178. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts +0 -1
  179. package/dist/builtin-extensions/pi-web-access/github-extract.d.ts.map +1 -1
  180. package/dist/builtin-extensions/pi-web-access/github-extract.js +147 -36
  181. package/dist/builtin-extensions/pi-web-access/github-extract.js.map +1 -1
  182. package/dist/builtin-extensions/pi-web-access/index.d.ts.map +1 -1
  183. package/dist/builtin-extensions/pi-web-access/index.js +48 -73
  184. package/dist/builtin-extensions/pi-web-access/index.js.map +1 -1
  185. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts +12 -4
  186. package/dist/builtin-extensions/pi-web-access/session-cleanup.d.ts.map +1 -1
  187. package/dist/builtin-extensions/pi-web-access/session-cleanup.js +35 -12
  188. package/dist/builtin-extensions/pi-web-access/session-cleanup.js.map +1 -1
  189. package/dist/builtin-extensions/pi-web-access/storage.d.ts +9 -6
  190. package/dist/builtin-extensions/pi-web-access/storage.d.ts.map +1 -1
  191. package/dist/builtin-extensions/pi-web-access/storage.js +36 -24
  192. package/dist/builtin-extensions/pi-web-access/storage.js.map +1 -1
  193. package/dist/builtin-extensions/simple-pi-memory.d.ts +1 -1
  194. package/dist/builtin-extensions/simple-pi-memory.d.ts.map +1 -1
  195. package/dist/builtin-extensions/simple-pi-memory.js +1 -1
  196. package/dist/builtin-extensions/simple-pi-memory.js.map +1 -1
  197. package/dist/cli/install-cli.d.ts.map +1 -1
  198. package/dist/cli/install-cli.js +38 -30
  199. package/dist/cli/install-cli.js.map +1 -1
  200. package/dist/core/agent-session-runtime.d.ts +13 -0
  201. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  202. package/dist/core/agent-session-runtime.js +75 -11
  203. package/dist/core/agent-session-runtime.js.map +1 -1
  204. package/dist/core/agent-session-services.d.ts +1 -0
  205. package/dist/core/agent-session-services.d.ts.map +1 -1
  206. package/dist/core/agent-session-services.js +1 -0
  207. package/dist/core/agent-session-services.js.map +1 -1
  208. package/dist/core/agent-session.d.ts +40 -6
  209. package/dist/core/agent-session.d.ts.map +1 -1
  210. package/dist/core/agent-session.js +309 -76
  211. package/dist/core/agent-session.js.map +1 -1
  212. package/dist/core/browser/runtime.d.ts +2 -0
  213. package/dist/core/browser/runtime.d.ts.map +1 -1
  214. package/dist/core/browser/runtime.js +80 -45
  215. package/dist/core/browser/runtime.js.map +1 -1
  216. package/dist/core/browser/setup.d.ts.map +1 -1
  217. package/dist/core/browser/setup.js +12 -1
  218. package/dist/core/browser/setup.js.map +1 -1
  219. package/dist/core/computer-use/adapter.d.ts.map +1 -1
  220. package/dist/core/computer-use/adapter.js +7 -2
  221. package/dist/core/computer-use/adapter.js.map +1 -1
  222. package/dist/core/computer-use/image.d.ts.map +1 -1
  223. package/dist/core/computer-use/image.js +17 -5
  224. package/dist/core/computer-use/image.js.map +1 -1
  225. package/dist/core/computer-use/schemas.d.ts.map +1 -1
  226. package/dist/core/computer-use/schemas.js +23 -6
  227. package/dist/core/computer-use/schemas.js.map +1 -1
  228. package/dist/core/computer-use/workflow.d.ts.map +1 -1
  229. package/dist/core/computer-use/workflow.js +459 -119
  230. package/dist/core/computer-use/workflow.js.map +1 -1
  231. package/dist/core/cron/jobs.d.ts +26 -8
  232. package/dist/core/cron/jobs.d.ts.map +1 -1
  233. package/dist/core/cron/jobs.js +357 -232
  234. package/dist/core/cron/jobs.js.map +1 -1
  235. package/dist/core/cron/origin-context.d.ts +1 -0
  236. package/dist/core/cron/origin-context.d.ts.map +1 -1
  237. package/dist/core/cron/origin-context.js.map +1 -1
  238. package/dist/core/cron/scheduler.d.ts +22 -17
  239. package/dist/core/cron/scheduler.d.ts.map +1 -1
  240. package/dist/core/cron/scheduler.js +153 -73
  241. package/dist/core/cron/scheduler.js.map +1 -1
  242. package/dist/core/extensions/index.d.ts +1 -1
  243. package/dist/core/extensions/index.d.ts.map +1 -1
  244. package/dist/core/extensions/index.js.map +1 -1
  245. package/dist/core/extensions/runner.d.ts +1 -0
  246. package/dist/core/extensions/runner.d.ts.map +1 -1
  247. package/dist/core/extensions/runner.js +8 -0
  248. package/dist/core/extensions/runner.js.map +1 -1
  249. package/dist/core/extensions/types.d.ts +8 -0
  250. package/dist/core/extensions/types.d.ts.map +1 -1
  251. package/dist/core/extensions/types.js.map +1 -1
  252. package/dist/core/footer-data-provider.d.ts +4 -0
  253. package/dist/core/footer-data-provider.d.ts.map +1 -1
  254. package/dist/core/footer-data-provider.js +22 -1
  255. package/dist/core/footer-data-provider.js.map +1 -1
  256. package/dist/core/large-subagent-launch.d.ts +1 -1
  257. package/dist/core/large-subagent-launch.d.ts.map +1 -1
  258. package/dist/core/large-subagent-launch.js +7 -7
  259. package/dist/core/large-subagent-launch.js.map +1 -1
  260. package/dist/core/model-registry.d.ts +2 -0
  261. package/dist/core/model-registry.d.ts.map +1 -1
  262. package/dist/core/model-registry.js +5 -0
  263. package/dist/core/model-registry.js.map +1 -1
  264. package/dist/core/model-runtime.d.ts +4 -1
  265. package/dist/core/model-runtime.d.ts.map +1 -1
  266. package/dist/core/model-runtime.js +40 -4
  267. package/dist/core/model-runtime.js.map +1 -1
  268. package/dist/core/package-manager.d.ts.map +1 -1
  269. package/dist/core/package-manager.js.map +1 -1
  270. package/dist/core/permissions.d.ts +3 -3
  271. package/dist/core/permissions.d.ts.map +1 -1
  272. package/dist/core/permissions.js +11 -35
  273. package/dist/core/permissions.js.map +1 -1
  274. package/dist/core/plan-mode.d.ts +5 -13
  275. package/dist/core/plan-mode.d.ts.map +1 -1
  276. package/dist/core/plan-mode.js +126 -116
  277. package/dist/core/plan-mode.js.map +1 -1
  278. package/dist/core/project-trust.d.ts.map +1 -1
  279. package/dist/core/project-trust.js +1 -1
  280. package/dist/core/project-trust.js.map +1 -1
  281. package/dist/core/prompt-resource-bridge.d.ts +12 -0
  282. package/dist/core/prompt-resource-bridge.d.ts.map +1 -0
  283. package/dist/core/prompt-resource-bridge.js +9 -0
  284. package/dist/core/prompt-resource-bridge.js.map +1 -0
  285. package/dist/core/protected-targets.d.ts +6 -0
  286. package/dist/core/protected-targets.d.ts.map +1 -0
  287. package/dist/core/protected-targets.js +45 -0
  288. package/dist/core/protected-targets.js.map +1 -0
  289. package/dist/core/resource-loader.d.ts.map +1 -1
  290. package/dist/core/resource-loader.js +7 -0
  291. package/dist/core/resource-loader.js.map +1 -1
  292. package/dist/core/rollback.d.ts +19 -3
  293. package/dist/core/rollback.d.ts.map +1 -1
  294. package/dist/core/rollback.js +172 -56
  295. package/dist/core/rollback.js.map +1 -1
  296. package/dist/core/runtime-credentials.d.ts +3 -0
  297. package/dist/core/runtime-credentials.d.ts.map +1 -1
  298. package/dist/core/runtime-credentials.js +14 -1
  299. package/dist/core/runtime-credentials.js.map +1 -1
  300. package/dist/core/sdk.d.ts +3 -0
  301. package/dist/core/sdk.d.ts.map +1 -1
  302. package/dist/core/sdk.js +1 -0
  303. package/dist/core/sdk.js.map +1 -1
  304. package/dist/core/session-manager.d.ts +6 -0
  305. package/dist/core/session-manager.d.ts.map +1 -1
  306. package/dist/core/session-manager.js +95 -32
  307. package/dist/core/session-manager.js.map +1 -1
  308. package/dist/core/session-ownership.d.ts.map +1 -1
  309. package/dist/core/session-ownership.js +8 -3
  310. package/dist/core/session-ownership.js.map +1 -1
  311. package/dist/core/session-retention.d.ts.map +1 -1
  312. package/dist/core/session-retention.js +18 -7
  313. package/dist/core/session-retention.js.map +1 -1
  314. package/dist/core/session-startup-settings.d.ts +10 -0
  315. package/dist/core/session-startup-settings.d.ts.map +1 -0
  316. package/dist/core/session-startup-settings.js +70 -0
  317. package/dist/core/session-startup-settings.js.map +1 -0
  318. package/dist/core/subscriptions.d.ts +16 -7
  319. package/dist/core/subscriptions.d.ts.map +1 -1
  320. package/dist/core/subscriptions.js +96 -55
  321. package/dist/core/subscriptions.js.map +1 -1
  322. package/dist/core/trust-manager.d.ts +2 -1
  323. package/dist/core/trust-manager.d.ts.map +1 -1
  324. package/dist/core/trust-manager.js +6 -1
  325. package/dist/core/trust-manager.js.map +1 -1
  326. package/dist/core/update-check.d.ts.map +1 -1
  327. package/dist/core/update-check.js.map +1 -1
  328. package/dist/core/usage-adapters/kimi-coding.d.ts +2 -2
  329. package/dist/core/usage-adapters/kimi-coding.d.ts.map +1 -1
  330. package/dist/core/usage-adapters/kimi-coding.js +2 -2
  331. package/dist/core/usage-adapters/kimi-coding.js.map +1 -1
  332. package/dist/core/usage-adapters/openai-codex.d.ts +3 -2
  333. package/dist/core/usage-adapters/openai-codex.d.ts.map +1 -1
  334. package/dist/core/usage-adapters/openai-codex.js +3 -3
  335. package/dist/core/usage-adapters/openai-codex.js.map +1 -1
  336. package/dist/core/usage-adapters/xai.d.ts +2 -2
  337. package/dist/core/usage-adapters/xai.d.ts.map +1 -1
  338. package/dist/core/usage-adapters/xai.js +3 -3
  339. package/dist/core/usage-adapters/xai.js.map +1 -1
  340. package/dist/core/usage-adapters/zai.d.ts +2 -2
  341. package/dist/core/usage-adapters/zai.d.ts.map +1 -1
  342. package/dist/core/usage-adapters/zai.js +2 -2
  343. package/dist/core/usage-adapters/zai.js.map +1 -1
  344. package/dist/core/usage-service.d.ts +9 -2
  345. package/dist/core/usage-service.d.ts.map +1 -1
  346. package/dist/core/usage-service.js +95 -50
  347. package/dist/core/usage-service.js.map +1 -1
  348. package/dist/gateway/agent-bridge.d.ts +9 -1
  349. package/dist/gateway/agent-bridge.d.ts.map +1 -1
  350. package/dist/gateway/agent-bridge.js +91 -37
  351. package/dist/gateway/agent-bridge.js.map +1 -1
  352. package/dist/gateway/buttons.d.ts +8 -1
  353. package/dist/gateway/buttons.d.ts.map +1 -1
  354. package/dist/gateway/buttons.js +76 -18
  355. package/dist/gateway/buttons.js.map +1 -1
  356. package/dist/gateway/commands.d.ts +1 -0
  357. package/dist/gateway/commands.d.ts.map +1 -1
  358. package/dist/gateway/commands.js +10 -4
  359. package/dist/gateway/commands.js.map +1 -1
  360. package/dist/gateway/cron.d.ts +12 -11
  361. package/dist/gateway/cron.d.ts.map +1 -1
  362. package/dist/gateway/cron.js +65 -56
  363. package/dist/gateway/cron.js.map +1 -1
  364. package/dist/gateway/index.d.ts.map +1 -1
  365. package/dist/gateway/index.js +2 -1
  366. package/dist/gateway/index.js.map +1 -1
  367. package/dist/gateway/mobile-commands.d.ts +1 -0
  368. package/dist/gateway/mobile-commands.d.ts.map +1 -1
  369. package/dist/gateway/mobile-commands.js +56 -14
  370. package/dist/gateway/mobile-commands.js.map +1 -1
  371. package/dist/gateway/presenter.d.ts +12 -2
  372. package/dist/gateway/presenter.d.ts.map +1 -1
  373. package/dist/gateway/presenter.js +73 -38
  374. package/dist/gateway/presenter.js.map +1 -1
  375. package/dist/gateway/router.d.ts +2 -2
  376. package/dist/gateway/router.d.ts.map +1 -1
  377. package/dist/gateway/router.js +17 -2
  378. package/dist/gateway/router.js.map +1 -1
  379. package/dist/gateway/service.d.ts +2 -0
  380. package/dist/gateway/service.d.ts.map +1 -1
  381. package/dist/gateway/service.js +153 -0
  382. package/dist/gateway/service.js.map +1 -1
  383. package/dist/main.d.ts.map +1 -1
  384. package/dist/main.js +86 -33
  385. package/dist/main.js.map +1 -1
  386. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  387. package/dist/modes/interactive/components/assistant-message.js +6 -4
  388. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  389. package/dist/modes/interactive/components/copyable-text.d.ts.map +1 -1
  390. package/dist/modes/interactive/components/copyable-text.js +3 -2
  391. package/dist/modes/interactive/components/copyable-text.js.map +1 -1
  392. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  393. package/dist/modes/interactive/components/extension-editor.js +1 -1
  394. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  395. package/dist/modes/interactive/interactive-mode.d.ts +2 -2
  396. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  397. package/dist/modes/interactive/interactive-mode.js +96 -109
  398. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  399. package/dist/modes/interactive/smooth-streaming.d.ts.map +1 -1
  400. package/dist/modes/interactive/smooth-streaming.js.map +1 -1
  401. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  402. package/dist/modes/rpc/rpc-mode.js +2 -1
  403. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  404. package/dist/node-runtime/{adapter-VFG7WNPX.js → adapter-247RTYLS.js} +4 -5
  405. package/dist/node-runtime/agent-session-services-KDMSPQDY.js +53 -0
  406. package/dist/node-runtime/{brave-UWDA3I22.js → brave-2AFFAXNN.js} +1 -1
  407. package/dist/node-runtime/{builtin-extensions-I2HIFEMY.js → builtin-extensions-OX6KELNX.js} +8 -7
  408. package/dist/node-runtime/{chunk-QH6YL7VK.js → chunk-252ZVPPF.js} +3 -3
  409. package/dist/node-runtime/{chunk-PCEW76PM.js → chunk-2OIPYKLZ.js} +6 -6
  410. package/dist/node-runtime/{chunk-XBWPBZBN.js → chunk-2SWW7KMW.js} +1 -1
  411. package/dist/node-runtime/{chunk-UQUCFAJ3.js → chunk-2VIW3IMF.js} +40 -7
  412. package/dist/node-runtime/{chunk-UOEDI7RP.js → chunk-4KNKQGHM.js} +2 -2
  413. package/dist/node-runtime/{chunk-FQMM2EZ2.js → chunk-64XTQNLA.js} +29 -7
  414. package/dist/node-runtime/{chunk-SPVDBUOS.js → chunk-6O3IW3IA.js} +2 -2
  415. package/dist/node-runtime/{chunk-5ZQXRPMC.js → chunk-6ZZHGUSA.js} +2 -2
  416. package/dist/node-runtime/chunk-A2WO6WIN.js +1197 -0
  417. package/dist/node-runtime/{chunk-WIF24I7G.js → chunk-APVM5NEU.js} +149 -144
  418. package/dist/node-runtime/{chunk-RCR3XAQY.js → chunk-AYHH7YSD.js} +177 -144
  419. package/dist/node-runtime/{chunk-LWYIVUGV.js → chunk-B2IBAXNX.js} +48 -31
  420. package/dist/node-runtime/{chunk-M3LZLQW2.js → chunk-BDRGN3L2.js} +1 -0
  421. package/dist/node-runtime/{chunk-GJ2RDBRL.js → chunk-BYC6RKCN.js} +4 -2
  422. package/dist/node-runtime/{chunk-UVWCDQYF.js → chunk-C3P6Q3B2.js} +455 -278
  423. package/dist/node-runtime/{chunk-SN2KSMPQ.js → chunk-DQSCFU7R.js} +13 -7
  424. package/dist/node-runtime/{chunk-4SBQAI4T.js → chunk-EBLAZVSA.js} +2058 -73
  425. package/dist/node-runtime/{chunk-2KIPT4HJ.js → chunk-EPR2F3GU.js} +68 -20
  426. package/dist/node-runtime/{chunk-CSFI6YXL.js → chunk-ES6PBSIE.js} +1 -1
  427. package/dist/node-runtime/{chunk-IF24A3FH.js → chunk-EVM653DD.js} +4 -4
  428. package/dist/node-runtime/{chunk-HTFRRDSF.js → chunk-F2SMQ6ES.js} +3 -2
  429. package/dist/node-runtime/chunk-F2V2F4ZG.js +114 -0
  430. package/dist/node-runtime/{chunk-IKU6Y7DL.js → chunk-FE3WZI7F.js} +9 -6
  431. package/dist/node-runtime/{chunk-GYIXXQAO.js → chunk-FIRA54AC.js} +2 -5
  432. package/dist/node-runtime/{chunk-6VYZ5UFP.js → chunk-FLGEEH27.js} +1 -1
  433. package/dist/node-runtime/{chunk-5EFIU3OM.js → chunk-FTKEZL27.js} +1 -1
  434. package/dist/node-runtime/{chunk-RGQAEOM5.js → chunk-FYIFPFXE.js} +23 -6
  435. package/dist/node-runtime/{chunk-HMBGROQK.js → chunk-GLDXBBL6.js} +3 -3
  436. package/dist/node-runtime/{chunk-KWA4OC2J.js → chunk-H6YBCWKG.js} +1 -1
  437. package/dist/node-runtime/{chunk-2MI5OPMN.js → chunk-HNNHHJAB.js} +68 -50
  438. package/dist/node-runtime/{chunk-I74LN5JG.js → chunk-HUD2RFJW.js} +2 -2
  439. package/dist/node-runtime/{chunk-I54LGHWM.js → chunk-I2H5QMWW.js} +3 -3
  440. package/dist/node-runtime/{chunk-XHIRAZ26.js → chunk-IAZSK7KK.js} +1 -1
  441. package/dist/node-runtime/{chunk-X3PGBLQ7.js → chunk-IHHTWSXN.js} +9 -9
  442. package/dist/node-runtime/{chunk-DAPBPCBP.js → chunk-IPP5BIV5.js} +25 -3
  443. package/dist/node-runtime/{chunk-QFWG2RVL.js → chunk-IXG6F4NT.js} +11 -0
  444. package/dist/node-runtime/{chunk-RDDAZOMU.js → chunk-JL4HYQXK.js} +1 -1
  445. package/dist/node-runtime/{chunk-CDVHZOOK.js → chunk-JQYNHAKX.js} +1 -1
  446. package/dist/node-runtime/{chunk-L24TPBS4.js → chunk-JWEVT363.js} +37 -29
  447. package/dist/node-runtime/{chunk-2HMIRK7W.js → chunk-LHV3V67B.js} +5 -5
  448. package/dist/node-runtime/{chunk-UAEOTO52.js → chunk-MNQXDFPV.js} +6 -2
  449. package/dist/node-runtime/{chunk-T4DA4XE7.js → chunk-MQPKUHRN.js} +162 -82
  450. package/dist/node-runtime/{chunk-MPKSOJBT.js → chunk-NHATCSOI.js} +4 -7
  451. package/dist/node-runtime/{chunk-RMQZU2YU.js → chunk-NNNR3QIY.js} +1 -1
  452. package/dist/node-runtime/{chunk-RWTKOC3B.js → chunk-QBTJG3UM.js} +1 -1
  453. package/dist/node-runtime/{chunk-P7XBVXGT.js → chunk-QNVMKNNN.js} +18 -14
  454. package/dist/node-runtime/{chunk-GS42T6MX.js → chunk-QW3AAHWN.js} +1 -1
  455. package/dist/node-runtime/{chunk-DVQSHCVP.js → chunk-R4WSB2MQ.js} +5 -5
  456. package/dist/node-runtime/{chunk-B4HP6ZWM.js → chunk-RHCGYWO7.js} +1 -1
  457. package/dist/node-runtime/{chunk-2CFDTH5B.js → chunk-RLGY2QIL.js} +45 -59
  458. package/dist/node-runtime/{chunk-KKUTQQV7.js → chunk-RYRGL7P4.js} +1 -1
  459. package/dist/node-runtime/{chunk-5Q4A37RB.js → chunk-TCT6PCUR.js} +32 -11
  460. package/dist/node-runtime/{chunk-D5UCKPBQ.js → chunk-UBWW2PID.js} +1 -1
  461. package/dist/node-runtime/{chunk-E75WFZ33.js → chunk-UNUZICC4.js} +3 -3
  462. package/dist/node-runtime/{chunk-RAK2QA2B.js → chunk-UYRKUKFE.js} +4 -4
  463. package/dist/node-runtime/{chunk-LWJXTA6Z.js → chunk-VSUEAI7O.js} +1377 -45
  464. package/dist/node-runtime/{chunk-NAY6UUQZ.js → chunk-WDIVLMOH.js} +1 -1
  465. package/dist/node-runtime/{chunk-E24EO34J.js → chunk-WPXUR3HE.js} +1 -1
  466. package/dist/node-runtime/{chunk-SLVOAQOY.js → chunk-WXYNALHD.js} +113 -1
  467. package/dist/node-runtime/{chunk-KJ6DWS3K.js → chunk-XEOCUEUJ.js} +121 -60
  468. package/dist/node-runtime/chunk-YD3IZAZ7.js +47 -0
  469. package/dist/node-runtime/chunk-YSB6URMT.js +41 -0
  470. package/dist/node-runtime/{chunk-LJTIVM7I.js → chunk-ZDJUR45D.js} +427 -126
  471. package/dist/node-runtime/{chunk-YWOJIGFY.js → chunk-ZEVFBFNF.js} +95 -142
  472. package/dist/node-runtime/{chunk-5B6VKFEV.js → chunk-ZIQUS5QO.js} +1 -1
  473. package/dist/node-runtime/cli-runtime.js +4 -4
  474. package/dist/node-runtime/{command-FSBU2EVZ.js → command-3HMSY6W2.js} +5 -5
  475. package/dist/node-runtime/{commands-EMBQQVVT.js → commands-D6A6H4TS.js} +11 -18
  476. package/dist/node-runtime/{commands-NAAL7KNT.js → commands-OCSSEEWJ.js} +16 -16
  477. package/dist/node-runtime/{config-QDD5PUE2.js → config-CU7M7BTK.js} +1 -1
  478. package/dist/node-runtime/{config-D4QUPAHX.js → config-DS7XLMEM.js} +2 -2
  479. package/dist/node-runtime/{direct-tool-executor-4D7UXYU4.js → direct-tool-executor-2QJXVQD2.js} +6 -11
  480. package/dist/node-runtime/{exa-LL64QZR2.js → exa-6VBZNPGE.js} +1 -1
  481. package/dist/node-runtime/{export-html-VM4J2MNR.js → export-html-BRWF5AHI.js} +4 -4
  482. package/dist/node-runtime/{extension-input-E7BJZ35H.js → extension-input-VBBMX7YV.js} +5 -5
  483. package/dist/node-runtime/{extension-selector-WU42XDTU.js → extension-selector-T5AOG5XB.js} +5 -5
  484. package/dist/node-runtime/{extract-EQJE7FZZ.js → extract-BFX2N35A.js} +3 -3
  485. package/dist/node-runtime/{gateway-DQM333YV.js → gateway-6623C2U3.js} +51 -42
  486. package/dist/node-runtime/{gemini-search-35OCRFLN.js → gemini-search-C66QHDT6.js} +2 -2
  487. package/dist/node-runtime/{gemini-url-context-UQY3PHHW.js → gemini-url-context-T7DEK73R.js} +3 -3
  488. package/dist/node-runtime/{github-extract-F64RZOEA.js → github-extract-HOGE3D6F.js} +107 -38
  489. package/dist/node-runtime/{goal-NJEE5CTU.js → goal-AIHEDUYA.js} +5 -5
  490. package/dist/node-runtime/index.js +50 -48
  491. package/dist/node-runtime/{init-P5AUV77I.js → init-JBQJIPYI.js} +3 -6
  492. package/dist/node-runtime/{install-cli-NN4YAU44.js → install-cli-INGHIVBY.js} +30 -25
  493. package/dist/node-runtime/interactive-mode-FM5DNUSW.js +74 -0
  494. package/dist/node-runtime/{interactive-view-NGFAMHPW.js → interactive-view-K33PM4OS.js} +8 -8
  495. package/dist/node-runtime/{lsp-manager-3ASUSO4T.js → lsp-manager-S554V5HR.js} +240 -155
  496. package/dist/node-runtime/{lunr-browser-IR7TL3J7.js → lunr-browser-H4FDOR3C.js} +7 -7
  497. package/dist/node-runtime/{lunr-computer-use-Y23CCDIJ.js → lunr-computer-use-VDP2QNRQ.js} +9 -9
  498. package/dist/node-runtime/{lunr-cron-USHC4LXH.js → lunr-cron-LKVA5CZZ.js} +93 -80
  499. package/dist/node-runtime/main.js +42 -41
  500. package/dist/node-runtime/{mobile-commands-O5LCHL32.js → mobile-commands-XT3NQXLD.js} +12 -12
  501. package/dist/node-runtime/{model-runtime-OO5HFLWE.js → model-runtime-MZ2JMDV4.js} +4 -4
  502. package/dist/node-runtime/{openai-search-B3MSNCQA.js → openai-search-K72LJDYN.js} +1 -1
  503. package/dist/node-runtime/{package-manager-cli-Q7BL6KZO.js → package-manager-cli-CYM262SI.js} +20 -20
  504. package/dist/node-runtime/{parallel-AI2MNSCU.js → parallel-X724NCNU.js} +1 -1
  505. package/dist/node-runtime/{perplexity-QVJW3I35.js → perplexity-RDHQHVMK.js} +2 -2
  506. package/dist/node-runtime/{pi-intercom-QM53RLTS.js → pi-intercom-NHHEPBMI.js} +2 -2
  507. package/dist/node-runtime/{pi-mcp-adapter-3PHF4KZ4.js → pi-mcp-adapter-PP3GQJQ2.js} +98 -94
  508. package/dist/node-runtime/{pi-ollama-cloud-2F3Y2QNM.js → pi-ollama-cloud-4MNWIMFN.js} +11 -24
  509. package/dist/node-runtime/{pi-prompt-template-model-QWTCGLJU.js → pi-prompt-template-model-FTGELLS5.js} +32 -36
  510. package/dist/node-runtime/{pi-subagents-7IBSSGEW.js → pi-subagents-LT3CTO4E.js} +98 -106
  511. package/dist/node-runtime/{pi-web-access-WTGMNZ32.js → pi-web-access-Z3LP246C.js} +144 -108
  512. package/dist/node-runtime/{print-mode-XQ76CYMT.js → print-mode-2XHN5SUA.js} +3 -3
  513. package/dist/node-runtime/{process-registry-4FAKZQOL.js → process-registry-Q4QWIU33.js} +3 -3
  514. package/dist/node-runtime/{proxy-modes-5FAPSZEZ.js → proxy-modes-VEGC6QG5.js} +8 -15
  515. package/dist/node-runtime/rpc-entry.js +42 -41
  516. package/dist/node-runtime/{rpc-mode-O3XV4SID.js → rpc-mode-32DHJPEJ.js} +4 -4
  517. package/dist/node-runtime/{runtime-4VA6JKNF.js → runtime-EDUUGAQD.js} +56 -46
  518. package/dist/node-runtime/{runtime-EFPPD2UW.js → runtime-UGXM4NPQ.js} +2 -2
  519. package/dist/node-runtime/{runtime-bridges-7WVCLI76.js → runtime-bridges-DNKMNJCF.js} +7 -7
  520. package/dist/node-runtime/{service-MDQIPQ26.js → service-IHLGFLBT.js} +6 -4
  521. package/dist/node-runtime/{session-handoff-GWARVEWT.js → session-handoff-LNSPDTKY.js} +4 -4
  522. package/dist/node-runtime/{session-manager-JB5J6XBN.js → session-manager-YIFIAVGC.js} +3 -3
  523. package/dist/node-runtime/{session-selector-GIM4DHQ2.js → session-selector-I73U3EIO.js} +7 -7
  524. package/dist/node-runtime/{settings-manager-DJDM5AHM.js → settings-manager-P2TKGYTR.js} +5 -5
  525. package/dist/node-runtime/{setup-JBKOLJ6F.js → setup-H7CCELIL.js} +15 -1
  526. package/dist/node-runtime/{setup-PFBWRNUI.js → setup-OLQ4GXWS.js} +17 -17
  527. package/dist/node-runtime/{src-IVPNZ2BX.js → src-6RV4PXKJ.js} +64 -36
  528. package/dist/node-runtime/{subagent-executor-LPZ4BHWE.js → subagent-executor-Q5F7DBVM.js} +119 -58
  529. package/dist/node-runtime/{tavily-WEZFVFP7.js → tavily-KZBFYQB6.js} +1 -1
  530. package/dist/node-runtime/{theme-UOO5RVFN.js → theme-YLVZKKZD.js} +2 -2
  531. package/dist/node-runtime/{trust-manager-MMISNCYO.js → trust-manager-ZCU76D23.js} +2 -2
  532. package/dist/node-runtime/{update-cli-HNMOTNGX.js → update-cli-F3XXJANQ.js} +6 -6
  533. package/dist/node-runtime/{usage-service-LFB2SWYV.js → usage-service-CPAGBED5.js} +1 -1
  534. package/dist/node-runtime/{video-extract-OOZHR7SU.js → video-extract-UPKYIBW3.js} +3 -3
  535. package/dist/node-runtime/{workflow-OHPBEFO4.js → workflow-ICDI4N3J.js} +208 -78
  536. package/dist/node-runtime/{youtube-extract-FNPAUNHU.js → youtube-extract-77NT7FWH.js} +4 -4
  537. package/dist/utils/clipboard-image.d.ts.map +1 -1
  538. package/dist/utils/clipboard-image.js.map +1 -1
  539. package/dist/utils/exif-orientation.d.ts.map +1 -1
  540. package/dist/utils/exif-orientation.js +25 -10
  541. package/dist/utils/exif-orientation.js.map +1 -1
  542. package/dist/utils/image-resize-core.d.ts.map +1 -1
  543. package/dist/utils/image-resize-core.js +2 -0
  544. package/dist/utils/image-resize-core.js.map +1 -1
  545. package/dist/utils/paths.d.ts +4 -0
  546. package/dist/utils/paths.d.ts.map +1 -1
  547. package/dist/utils/paths.js +33 -2
  548. package/dist/utils/paths.js.map +1 -1
  549. package/dist/utils/sanitize-terminal-text.d.ts +7 -0
  550. package/dist/utils/sanitize-terminal-text.d.ts.map +1 -0
  551. package/dist/utils/sanitize-terminal-text.js +67 -0
  552. package/dist/utils/sanitize-terminal-text.js.map +1 -0
  553. package/docs/browser.md +1 -1
  554. package/docs/custom-provider.md +3 -3
  555. package/docs/extensions.md +8 -4
  556. package/docs/features.md +15 -7
  557. package/docs/keybindings.md +1 -1
  558. package/docs/models.md +5 -5
  559. package/docs/packages.md +1 -1
  560. package/docs/providers.md +2 -2
  561. package/docs/rpc.md +7 -7
  562. package/docs/security.md +10 -5
  563. package/docs/sessions.md +2 -2
  564. package/docs/skills.md +1 -1
  565. package/docs/terminal-setup.md +7 -7
  566. package/docs/themes.md +1 -1
  567. package/docs/usage.md +1 -1
  568. package/examples/extensions/auto-commit-on-exit.ts +1 -1
  569. package/examples/extensions/bash-spawn-hook.ts +1 -1
  570. package/examples/extensions/built-in-tool-renderer.ts +1 -1
  571. package/examples/extensions/claude-rules.ts +1 -1
  572. package/examples/extensions/commands.ts +1 -1
  573. package/examples/extensions/custom-compaction.ts +1 -1
  574. package/examples/extensions/custom-provider-anthropic/index.ts +3 -3
  575. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  576. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  577. package/examples/extensions/custom-provider-gitlab-duo/index.ts +1 -1
  578. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  579. package/examples/extensions/doom-overlay/index.ts +1 -1
  580. package/examples/extensions/git-merge-and-resolve.ts +2 -2
  581. package/examples/extensions/gondolin/index.ts +1 -1
  582. package/examples/extensions/gondolin/package-lock.json +2 -2
  583. package/examples/extensions/gondolin/package.json +1 -1
  584. package/examples/extensions/hidden-thinking-label.ts +1 -1
  585. package/examples/extensions/inline-bash.ts +2 -2
  586. package/examples/extensions/input-transform-streaming.ts +2 -2
  587. package/examples/extensions/input-transform.ts +2 -2
  588. package/examples/extensions/interactive-shell.ts +1 -1
  589. package/examples/extensions/kimi-deferred-tools.ts +1 -1
  590. package/examples/extensions/mac-system-theme.ts +1 -1
  591. package/examples/extensions/minimal-mode.ts +1 -1
  592. package/examples/extensions/modal-editor.ts +1 -1
  593. package/examples/extensions/model-status.ts +1 -1
  594. package/examples/extensions/notify.ts +3 -3
  595. package/examples/extensions/overlay-qa-tests.ts +1 -1
  596. package/examples/extensions/overlay-test.ts +1 -1
  597. package/examples/extensions/pirate.ts +1 -1
  598. package/examples/extensions/preset.ts +3 -3
  599. package/examples/extensions/project-trust.ts +4 -4
  600. package/examples/extensions/prompt-customizer.ts +1 -1
  601. package/examples/extensions/rainbow-editor.ts +1 -1
  602. package/examples/extensions/rpc-demo.ts +1 -1
  603. package/examples/extensions/sandbox/index.ts +7 -7
  604. package/examples/extensions/sandbox/package-lock.json +2 -2
  605. package/examples/extensions/sandbox/package.json +1 -1
  606. package/examples/extensions/shutdown-command.ts +5 -5
  607. package/examples/extensions/ssh.ts +2 -2
  608. package/examples/extensions/subagent/README.md +3 -3
  609. package/examples/extensions/subagent/index.ts +2 -2
  610. package/examples/extensions/titlebar-spinner.ts +1 -1
  611. package/examples/extensions/tool-override.ts +1 -1
  612. package/examples/extensions/tools.ts +1 -1
  613. package/examples/extensions/with-deps/package-lock.json +2 -2
  614. package/examples/extensions/with-deps/package.json +1 -1
  615. package/examples/extensions/working-indicator.ts +1 -1
  616. package/examples/extensions/working-message-test.ts +1 -1
  617. package/examples/sdk/01-minimal.ts +1 -1
  618. package/examples/sdk/03-custom-prompt.ts +1 -1
  619. package/examples/sdk/04-skills.ts +1 -1
  620. package/examples/sdk/06-extensions.ts +2 -2
  621. package/examples/sdk/08-prompt-templates.ts +1 -1
  622. package/install-lock/package-lock.json +24 -24
  623. package/install-lock/package.json +2 -2
  624. package/npm-shrinkwrap.json +60 -24
  625. package/package.json +9 -9
  626. package/dist/modes/interactive/components/exit-card.d.ts +0 -22
  627. package/dist/modes/interactive/components/exit-card.d.ts.map +0 -1
  628. package/dist/modes/interactive/components/exit-card.js +0 -69
  629. package/dist/modes/interactive/components/exit-card.js.map +0 -1
  630. package/dist/node-runtime/agent-session-services-5YXS2PLF.js +0 -51
  631. package/dist/node-runtime/chunk-2IDTZAG5.js +0 -1415
  632. package/dist/node-runtime/chunk-3MISGG4S.js +0 -769
  633. package/dist/node-runtime/chunk-4HXHDDCF.js +0 -16
  634. package/dist/node-runtime/chunk-5B5QN3ZQ.js +0 -356
  635. package/dist/node-runtime/chunk-7IQGBKBJ.js +0 -2033
  636. package/dist/node-runtime/chunk-AUXVGBO4.js +0 -19
  637. package/dist/node-runtime/chunk-PTFBPO3C.js +0 -50
  638. package/dist/node-runtime/interactive-mode-YOHZVMKX.js +0 -74
  639. package/dist/node-runtime/mcp-auth-flow-QVLFVLEO.js +0 -33
@@ -6,26 +6,21 @@ import {
6
6
  resolveMcpOutputGuardOptions,
7
7
  resolveMcpResultContent,
8
8
  transformMcpContent
9
- } from "./chunk-E75WFZ33.js";
9
+ } from "./chunk-UNUZICC4.js";
10
10
  import {
11
11
  formatSchema,
12
12
  getFailureAgeSeconds,
13
- lazyConnect
14
- } from "./chunk-4SBQAI4T.js";
15
- import "./chunk-LWJXTA6Z.js";
16
- import {
17
- authenticate,
13
+ lazyConnect,
18
14
  supportsOAuth
19
- } from "./chunk-7IQGBKBJ.js";
15
+ } from "./chunk-EBLAZVSA.js";
20
16
  import {
21
17
  UrlElicitationRequiredError
22
- } from "./chunk-2IDTZAG5.js";
18
+ } from "./chunk-VSUEAI7O.js";
23
19
  import {
24
20
  abortable,
25
21
  formatAuthRequiredMessage,
26
22
  throwIfAborted
27
- } from "./chunk-LWYIVUGV.js";
28
- import "./chunk-4HXHDDCF.js";
23
+ } from "./chunk-B2IBAXNX.js";
29
24
  import "./chunk-ARC4KOTI.js";
30
25
  import "./chunk-BI3DHYCN.js";
31
26
  import "./chunk-Q4Q6D4IY.js";
@@ -51,7 +46,7 @@ async function attemptDirectAutoAuth(state, serverName, signal) {
51
46
  message: getDirectAuthRequiredMessage(state, serverName, `MCP server "${serverName}" requires OAuth authentication. Run mcp({ action: "auth-start", server: "${serverName}" }) to get a browser URL, or /mcp-auth ${serverName} in an interactive local session.`)
52
47
  };
53
48
  try {
54
- return await abortable(authenticate(serverName, definition.url, definition), signal), throwIfAborted(signal), { status: "success" };
49
+ return await abortable(state.authFlow.authenticate(serverName, definition.url, definition), signal), throwIfAborted(signal), { status: "success" };
55
50
  } catch (error) {
56
51
  throwIfAborted(signal);
57
52
  let message = error instanceof Error ? error.message : String(error);
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  activityMonitor
4
- } from "./chunk-DAPBPCBP.js";
4
+ } from "./chunk-IPP5BIV5.js";
5
5
  import {
6
6
  getWebSearchConfigPath
7
7
  } from "./chunk-VRB2IYGG.js";
@@ -1,19 +1,19 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  SessionManager
4
- } from "./chunk-2KIPT4HJ.js";
4
+ } from "./chunk-EPR2F3GU.js";
5
5
  import "./chunk-FVDOXRUD.js";
6
- import "./chunk-UAEOTO52.js";
6
+ import "./chunk-MNQXDFPV.js";
7
7
  import {
8
8
  getResolvedThemeColors,
9
9
  getThemeExportColors
10
- } from "./chunk-RDDAZOMU.js";
10
+ } from "./chunk-JL4HYQXK.js";
11
11
  import {
12
12
  APP_NAME,
13
13
  getExportTemplateDir,
14
14
  normalizePath,
15
15
  resolvePath
16
- } from "./chunk-FQMM2EZ2.js";
16
+ } from "./chunk-64XTQNLA.js";
17
17
  import "./chunk-Q4Q6D4IY.js";
18
18
  import "./chunk-BRJX2PRC.js";
19
19
 
@@ -1,12 +1,12 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  ExtensionInputComponent
4
- } from "./chunk-HMBGROQK.js";
4
+ } from "./chunk-GLDXBBL6.js";
5
5
  import "./chunk-I6R76AG7.js";
6
- import "./chunk-6VYZ5UFP.js";
7
- import "./chunk-GS42T6MX.js";
8
- import "./chunk-RDDAZOMU.js";
9
- import "./chunk-FQMM2EZ2.js";
6
+ import "./chunk-FLGEEH27.js";
7
+ import "./chunk-QW3AAHWN.js";
8
+ import "./chunk-JL4HYQXK.js";
9
+ import "./chunk-64XTQNLA.js";
10
10
  import "./chunk-Q4Q6D4IY.js";
11
11
  import "./chunk-BRJX2PRC.js";
12
12
  export {
@@ -1,12 +1,12 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  ExtensionSelectorComponent
4
- } from "./chunk-QH6YL7VK.js";
4
+ } from "./chunk-252ZVPPF.js";
5
5
  import "./chunk-I6R76AG7.js";
6
- import "./chunk-6VYZ5UFP.js";
7
- import "./chunk-GS42T6MX.js";
8
- import "./chunk-RDDAZOMU.js";
9
- import "./chunk-FQMM2EZ2.js";
6
+ import "./chunk-FLGEEH27.js";
7
+ import "./chunk-QW3AAHWN.js";
8
+ import "./chunk-JL4HYQXK.js";
9
+ import "./chunk-64XTQNLA.js";
10
10
  import "./chunk-Q4Q6D4IY.js";
11
11
  import "./chunk-BRJX2PRC.js";
12
12
  export {
@@ -4,9 +4,9 @@ import {
4
4
  extractHeadingTitle,
5
5
  fetchAllContent,
6
6
  loadSsrfAllowRanges
7
- } from "./chunk-UQUCFAJ3.js";
8
- import "./chunk-NAY6UUQZ.js";
9
- import "./chunk-DAPBPCBP.js";
7
+ } from "./chunk-2VIW3IMF.js";
8
+ import "./chunk-WDIVLMOH.js";
9
+ import "./chunk-IPP5BIV5.js";
10
10
  import "./chunk-VRB2IYGG.js";
11
11
  import "./chunk-BRJX2PRC.js";
12
12
  export {
@@ -3,20 +3,18 @@ import {
3
3
  AgentBridge,
4
4
  QUEUED,
5
5
  startGatewayCron
6
- } from "./chunk-UVWCDQYF.js";
6
+ } from "./chunk-C3P6Q3B2.js";
7
7
  import {
8
8
  CHAT_COMMANDS,
9
9
  botCommandSpecs,
10
10
  runChatCommand,
11
11
  sendCommandReply
12
- } from "./chunk-P7XBVXGT.js";
13
- import {
14
- resolveWithinRoots
15
- } from "./chunk-5B5QN3ZQ.js";
12
+ } from "./chunk-QNVMKNNN.js";
16
13
  import {
17
14
  acceptGatewayInput,
18
15
  addAllowedUser,
19
16
  bindConversation,
17
+ canDeliverGatewayText,
20
18
  conversationBinding,
21
19
  gatewayEpoch,
22
20
  getSession,
@@ -29,40 +27,43 @@ import {
29
27
  registerGatewayApprovalHandler,
30
28
  rememberGatewayRole,
31
29
  requireAuthorized,
30
+ resolveWithinRoots,
32
31
  runWithApprovalContext,
33
32
  splitMessage,
34
33
  startButtonSweeper,
35
34
  startGatewayPresenter,
36
35
  stopButtonSweeper,
37
36
  stopGatewayPresenter
38
- } from "./chunk-3MISGG4S.js";
37
+ } from "./chunk-A2WO6WIN.js";
39
38
  import {
40
39
  createPairingStore
41
- } from "./chunk-RMQZU2YU.js";
40
+ } from "./chunk-NNNR3QIY.js";
42
41
  import {
43
42
  claimGateway
44
- } from "./chunk-SLVOAQOY.js";
43
+ } from "./chunk-WXYNALHD.js";
45
44
  import "./chunk-CJECDQKP.js";
46
- import "./chunk-CDVHZOOK.js";
47
- import "./chunk-XHIRAZ26.js";
48
- import "./chunk-5Q4A37RB.js";
45
+ import "./chunk-JQYNHAKX.js";
46
+ import "./chunk-IAZSK7KK.js";
47
+ import "./chunk-TCT6PCUR.js";
49
48
  import {
50
49
  isFeatureEnabled
51
- } from "./chunk-2HMIRK7W.js";
52
- import "./chunk-GYIXXQAO.js";
53
- import "./chunk-GJ2RDBRL.js";
50
+ } from "./chunk-LHV3V67B.js";
51
+ import "./chunk-URD2SLIT.js";
52
+ import "./chunk-FIRA54AC.js";
53
+ import "./chunk-BYC6RKCN.js";
54
54
  import "./chunk-CGBXPL3E.js";
55
55
  import "./chunk-BBUVIEZB.js";
56
- import "./chunk-WIF24I7G.js";
57
- import "./chunk-M3LZLQW2.js";
56
+ import "./chunk-APVM5NEU.js";
57
+ import "./chunk-F2V2F4ZG.js";
58
+ import "./chunk-BDRGN3L2.js";
58
59
  import "./chunk-FY4A63RK.js";
59
- import "./chunk-KKUTQQV7.js";
60
- import "./chunk-CSFI6YXL.js";
61
- import "./chunk-I54LGHWM.js";
62
- import "./chunk-2KIPT4HJ.js";
60
+ import "./chunk-RYRGL7P4.js";
61
+ import "./chunk-ES6PBSIE.js";
62
+ import "./chunk-I2H5QMWW.js";
63
+ import "./chunk-EPR2F3GU.js";
63
64
  import "./chunk-FVDOXRUD.js";
64
65
  import "./chunk-IMLCWLPI.js";
65
- import "./chunk-UAEOTO52.js";
66
+ import "./chunk-MNQXDFPV.js";
66
67
  import "./chunk-RQ2Q5IYR.js";
67
68
  import {
68
69
  gatewayConfigPath,
@@ -70,10 +71,10 @@ import {
70
71
  platformConfigFor,
71
72
  resolvePlatformToken,
72
73
  saveGatewayConfig
73
- } from "./chunk-B4HP6ZWM.js";
74
- import "./chunk-E24EO34J.js";
75
- import "./chunk-RDDAZOMU.js";
76
- import "./chunk-FQMM2EZ2.js";
74
+ } from "./chunk-RHCGYWO7.js";
75
+ import "./chunk-WPXUR3HE.js";
76
+ import "./chunk-JL4HYQXK.js";
77
+ import "./chunk-64XTQNLA.js";
77
78
  import "./chunk-Q4Q6D4IY.js";
78
79
  import "./chunk-BRJX2PRC.js";
79
80
 
@@ -369,7 +370,7 @@ var DiscordAdapter = class {
369
370
  return await interaction.respond([]), !0;
370
371
  let query = String(interaction.options.getFocused()).toLowerCase(), values = [];
371
372
  if (interaction.commandName === "mode" && (values = ["yolo", "auto", "read-only"]), this.commandSuggestions && ["thinking", "model"].includes(interaction.commandName) && (values = [...await this.commandSuggestions(source, interaction.commandName)]), interaction.commandName === "project" && (values = cfg.projectRoots ?? []), interaction.commandName === "sessions") {
372
- let { SessionManager } = await import("./session-manager-JB5J6XBN.js");
373
+ let { SessionManager } = await import("./session-manager-YIFIAVGC.js");
373
374
  values = (await Promise.race([
374
375
  SessionManager.listAll(),
375
376
  new Promise((resolve) => setTimeout(() => resolve([]), 1500))
@@ -1184,7 +1185,7 @@ function createRouter(deps) {
1184
1185
  return !1;
1185
1186
  let firstToken = text.split(/\s+/, 1)[0].toLowerCase(), commandWord = firstToken.split("@")[0].slice(1), args = text.slice(firstToken.length).trim();
1186
1187
  if (deps.remoteControls) {
1187
- let { handleMobileCommand, cancelMobileTransfer } = await import("./mobile-commands-O5LCHL32.js");
1188
+ let { handleMobileCommand, cancelMobileTransfer } = await import("./mobile-commands-XT3NQXLD.js");
1188
1189
  if (["stop", "stopall", "new", "cancel"].includes(commandWord) && cancelMobileTransfer(key), commandWord === "cancel")
1189
1190
  return invalidateGatewayDialogs(key), await adapter.send(event.source.chatId, "Cancelled the pending selection or transfer.", {
1190
1191
  threadId: event.source.threadId
@@ -1226,6 +1227,8 @@ function createRouter(deps) {
1226
1227
  return runWithApprovalContext({ key, adapter, source: event.source }, () => runChatCommand(cmd, ctx));
1227
1228
  }
1228
1229
  async function deliver(adapter, event, text, key, cfg, opts) {
1230
+ if (opts.valid && !opts.valid() || !canDeliverGatewayText(key, event.source, cfg, pairing))
1231
+ return;
1229
1232
  let filtered = applySilenceFilter(text);
1230
1233
  if (filtered !== null) {
1231
1234
  if (opts.editMessageId) {
@@ -1249,9 +1252,11 @@ function createRouter(deps) {
1249
1252
  }
1250
1253
  }
1251
1254
  async function runTurn(adapter, event, key, cfg) {
1252
- let epoch = gatewayEpoch(key), streaming = cfg.streaming.enabled && typeof adapter.editMessage == "function", consumer;
1255
+ let epoch = gatewayEpoch(key), streaming = cfg.streaming.enabled && typeof adapter.editMessage == "function", denied = !1, valid = () => (denied || (denied = !canDeliverGatewayText(key, event.source, cfg, pairing)), !denied), consumer;
1253
1256
  streaming && (consumer = new StreamConsumer({
1254
1257
  sendInitial: async (text) => {
1258
+ if (!valid() || gatewayEpoch(key) !== epoch)
1259
+ return null;
1255
1260
  let result2 = await adapter.send(event.source.chatId, text, {
1256
1261
  replyTo: event.messageId,
1257
1262
  threadId: event.source.threadId
@@ -1259,6 +1264,8 @@ function createRouter(deps) {
1259
1264
  return result2.success ? result2.messageId ?? null : null;
1260
1265
  },
1261
1266
  edit: async (messageId, text) => {
1267
+ if (!valid() || gatewayEpoch(key) !== epoch)
1268
+ return;
1262
1269
  let result2 = await adapter.editMessage(event.source.chatId, messageId, text);
1263
1270
  if (!result2.success)
1264
1271
  throw new Error(result2.error ?? "Preview edit failed");
@@ -1279,7 +1286,8 @@ function createRouter(deps) {
1279
1286
  result !== QUEUED && (consumer && await consumer.finalize(), await deliver(adapter, event, result, key, cfg, {
1280
1287
  reply: !consumer,
1281
1288
  editMessageId: consumer?.sentMessageId ?? void 0,
1282
- previewTruncated: consumer?.truncated ?? !1
1289
+ previewTruncated: consumer?.truncated ?? !1,
1290
+ valid
1283
1291
  }));
1284
1292
  }
1285
1293
  return {
@@ -1408,19 +1416,20 @@ async function runDaemon() {
1408
1416
  let router = createRouter({ adapters, cfg, pairing, bridge, reloadConfig: !0, remoteControls: !0 }), finish, stopped = new Promise((resolve) => {
1409
1417
  finish = resolve;
1410
1418
  }), stopping = !1, cron, platformStatus = {}, retries = /* @__PURE__ */ new Set(), shutdown = () => {
1411
- if (!stopping) {
1412
- stopping = !0, owner.update(platformStatus, "stopping"), cron?.stop();
1413
- for (let timer of retries)
1414
- clearTimeout(timer);
1415
- stopButtonSweeper(), (async () => {
1416
- await bridge.shutdown(), await Promise.all([...adapters.values()].map((adapter) => adapter.disconnect().catch(() => {
1417
- }))), stopGatewayPresenter(), owner.release(), process.removeListener("SIGINT", shutdown), process.removeListener("SIGTERM", shutdown), finish();
1418
- })().catch((error) => {
1419
- console.error("Gateway shutdown failed:", error instanceof Error ? error.message : String(error)), stopping = !1, owner.update(platformStatus, Object.values(platformStatus).includes("connected") ? "ready" : "starting"), startButtonSweeper(), cron = startGatewayCron({ adapters, cfg });
1420
- for (let [platform, adapter] of adapters)
1421
- platformStatus[platform] !== "connected" && connect(platform, adapter);
1422
- });
1423
- }
1419
+ if (stopping)
1420
+ return;
1421
+ stopping = !0, owner.update(platformStatus, "stopping");
1422
+ let cronStopped = cron?.stop();
1423
+ for (let timer of retries)
1424
+ clearTimeout(timer);
1425
+ stopButtonSweeper(), (async () => {
1426
+ await cronStopped, await bridge.shutdown(), await Promise.all([...adapters.values()].map((adapter) => adapter.disconnect().catch(() => {
1427
+ }))), stopGatewayPresenter(), owner.release(), process.removeListener("SIGINT", shutdown), process.removeListener("SIGTERM", shutdown), finish();
1428
+ })().catch((error) => {
1429
+ console.error("Gateway shutdown failed:", error instanceof Error ? error.message : String(error)), stopping = !1, owner.update(platformStatus, Object.values(platformStatus).includes("connected") ? "ready" : "starting"), startButtonSweeper(), cron = startGatewayCron({ adapters, cfg });
1430
+ for (let [platform, adapter] of adapters)
1431
+ platformStatus[platform] !== "connected" && connect(platform, adapter);
1432
+ });
1424
1433
  }, owner = claimGateway(shutdown);
1425
1434
  process.on("SIGINT", shutdown), process.on("SIGTERM", shutdown), startGatewayPresenter(adapters), startButtonSweeper();
1426
1435
  let connect = async (platform, adapter) => {
@@ -8,10 +8,10 @@ import {
8
8
  loadParallel,
9
9
  loadPerplexity,
10
10
  loadTavily
11
- } from "./chunk-NAY6UUQZ.js";
11
+ } from "./chunk-WDIVLMOH.js";
12
12
  import {
13
13
  activityMonitor
14
- } from "./chunk-DAPBPCBP.js";
14
+ } from "./chunk-IPP5BIV5.js";
15
15
  import {
16
16
  getWebSearchConfigPath
17
17
  } from "./chunk-VRB2IYGG.js";
@@ -14,11 +14,11 @@ import {
14
14
  } from "./chunk-3WFAEVKS.js";
15
15
  import {
16
16
  extractHeadingTitle
17
- } from "./chunk-UQUCFAJ3.js";
18
- import "./chunk-NAY6UUQZ.js";
17
+ } from "./chunk-2VIW3IMF.js";
18
+ import "./chunk-WDIVLMOH.js";
19
19
  import {
20
20
  activityMonitor
21
- } from "./chunk-DAPBPCBP.js";
21
+ } from "./chunk-IPP5BIV5.js";
22
22
  import "./chunk-VRB2IYGG.js";
23
23
  import "./chunk-BRJX2PRC.js";
24
24
 
@@ -1,10 +1,10 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
- registerSessionCleanup
4
- } from "./chunk-AUXVGBO4.js";
3
+ getWebSession
4
+ } from "./chunk-YD3IZAZ7.js";
5
5
  import {
6
6
  activityMonitor
7
- } from "./chunk-DAPBPCBP.js";
7
+ } from "./chunk-IPP5BIV5.js";
8
8
  import {
9
9
  getWebSearchConfigPath
10
10
  } from "./chunk-VRB2IYGG.js";
@@ -217,7 +217,47 @@ var CONFIG_PATH = getWebSearchConfigPath(), BINARY_EXTENSIONS = /* @__PURE__ */
217
217
  ".gradle",
218
218
  ".idea",
219
219
  ".vscode"
220
- ]), MAX_INLINE_FILE_CHARS2 = 1e5, MAX_TREE_ENTRIES2 = 200, cloneCache = /* @__PURE__ */ new Map(), cachedConfig = null;
220
+ ]), MAX_INLINE_FILE_CHARS2 = 1e5, MAX_TREE_ENTRIES2 = 200, CLONE_TERMINATION_GRACE_MS = 1e3, CLONE_EXIT_CONFIRMATION_MS = 1e3, cloneCache = /* @__PURE__ */ new Map(), standaloneOwner = /* @__PURE__ */ Symbol("standalone clone caller");
221
+ function removeClone(key, entry) {
222
+ if (cloneCache.get(key) === entry) {
223
+ try {
224
+ rmSync(entry.localPath, { recursive: !0, force: !0 });
225
+ } catch {
226
+ }
227
+ cloneCache.delete(key), cloneCache.size === 0 && (cachedConfig = null);
228
+ }
229
+ }
230
+ async function finishClone(key, entry) {
231
+ let deadline;
232
+ try {
233
+ await Promise.race([
234
+ entry.clonePromise.catch(() => {
235
+ }),
236
+ new Promise((_resolve, reject) => {
237
+ deadline = setTimeout(() => reject(new Error("GitHub clone cleanup could not confirm command completion after termination; clone retained until completion")), CLONE_TERMINATION_GRACE_MS + CLONE_EXIT_CONFIRMATION_MS);
238
+ })
239
+ ]);
240
+ } catch (error) {
241
+ throw entry.clonePromise.catch(() => {
242
+ }).then(() => removeClone(key, entry)), error;
243
+ } finally {
244
+ clearTimeout(deadline);
245
+ }
246
+ removeClone(key, entry);
247
+ }
248
+ function acquireClone(key, entry) {
249
+ let owner = getWebSession() ?? standaloneOwner;
250
+ if (typeof owner != "symbol" && owner.closed)
251
+ throw new Error("Web session closed");
252
+ entry.owners.has(owner) || (entry.owners.add(owner), typeof owner != "symbol" && owner.cleanups.add(async () => {
253
+ entry.owners.delete(owner), !(entry.owners.size > 0) && (entry.controller.abort(), entry.cleanup = finishClone(key, entry), await entry.cleanup);
254
+ }));
255
+ }
256
+ async function findClone(key) {
257
+ let entry = cloneCache.get(key);
258
+ return entry?.cleanup ? (await entry.cleanup, findClone(key)) : (entry && !getWebSession()?.closed && acquireClone(key, entry), entry);
259
+ }
260
+ var cachedConfig = null;
221
261
  function normalizeEnabled(value, fallback) {
222
262
  return typeof value == "boolean" ? value : fallback;
223
263
  }
@@ -332,22 +372,36 @@ function cloneDir(config, owner, repo, ref) {
332
372
  return join(config.clonePath, owner, dirName);
333
373
  }
334
374
  function execClone(args, localPath, timeoutMs, signal) {
335
- return new Promise((resolve) => {
336
- let child = execFile2(args[0], args.slice(1), { timeout: timeoutMs }, (err) => {
337
- if (err) {
375
+ return signal?.aborted ? Promise.resolve(null) : new Promise((resolve) => {
376
+ let failed = !1, exited = !1, closed = !1, stopping = !1, escalation, child = execFile2(args[0], args.slice(1), {}, (err) => {
377
+ failed = !!err;
378
+ }), stop = () => {
379
+ if (!(stopping || closed)) {
380
+ stopping = !0, escalation = setTimeout(() => {
381
+ try {
382
+ child.kill("SIGKILL");
383
+ } catch {
384
+ }
385
+ }, CLONE_TERMINATION_GRACE_MS);
338
386
  try {
339
- rmSync(localPath, { recursive: !0, force: !0 });
387
+ child.kill("SIGTERM");
340
388
  } catch {
341
389
  }
342
- resolve(null);
343
- return;
344
390
  }
345
- resolve(localPath);
346
- });
347
- if (signal) {
348
- let onAbort = () => child.kill();
349
- signal.addEventListener("abort", onAbort, { once: !0 }), child.on("exit", () => signal.removeEventListener("abort", onAbort));
350
- }
391
+ }, timeout = setTimeout(stop, timeoutMs);
392
+ child.once("exit", () => {
393
+ exited = !0;
394
+ }), child.once("close", () => {
395
+ if (!(child.pid && !exited))
396
+ if (closed = !0, clearTimeout(timeout), clearTimeout(escalation), signal?.removeEventListener("abort", stop), failed || stopping) {
397
+ try {
398
+ rmSync(localPath, { recursive: !0, force: !0 });
399
+ } catch {
400
+ }
401
+ resolve(null);
402
+ } else
403
+ resolve(localPath);
404
+ }), signal?.addEventListener("abort", stop, { once: !0 });
351
405
  });
352
406
  }
353
407
  async function cloneRepo(owner, repo, ref, config, signal) {
@@ -356,8 +410,10 @@ async function cloneRepo(owner, repo, ref, config, signal) {
356
410
  rmSync(localPath, { recursive: !0, force: !0 });
357
411
  } catch {
358
412
  }
359
- let timeoutMs = config.cloneTimeoutSeconds * 1e3;
360
- if (await checkGhAvailable()) {
413
+ let timeoutMs = config.cloneTimeoutSeconds * 1e3, hasGh = await checkGhAvailable();
414
+ if (signal?.aborted)
415
+ return null;
416
+ if (hasGh) {
361
417
  let args2 = ["gh", "repo", "clone", `${owner}/${repo}`, localPath, "--", "--depth", "1", "--single-branch"];
362
418
  return ref && args2.push("--branch", ref), execClone(args2, localPath, timeoutMs, signal);
363
419
  }
@@ -542,11 +598,26 @@ function generateContent(localPath, info) {
542
598
  return lines.join(`
543
599
  `);
544
600
  }
601
+ async function waitForClone(clone, signal) {
602
+ if (!signal)
603
+ return clone;
604
+ if (signal.aborted)
605
+ return null;
606
+ let onAbort = () => {
607
+ }, cancelled = new Promise((resolve) => {
608
+ onAbort = () => resolve(null), signal.addEventListener("abort", onAbort, { once: !0 });
609
+ });
610
+ try {
611
+ return await Promise.race([clone, cancelled]);
612
+ } finally {
613
+ signal.removeEventListener("abort", onAbort);
614
+ }
615
+ }
545
616
  async function awaitCachedClone(cached, url, owner, repo, info, signal) {
546
617
  if (signal?.aborted)
547
618
  return null;
548
- let result = await cached.clonePromise;
549
- if (signal?.aborted)
619
+ let result = await waitForClone(cached.clonePromise, signal);
620
+ if (signal?.aborted || getWebSession()?.closed)
550
621
  return null;
551
622
  if (result) {
552
623
  let content = generateContent(result, info), title = info.path ? `${owner}/${repo} - ${info.path}` : `${owner}/${repo}`;
@@ -561,7 +632,9 @@ async function extractGitHub(url, signal, forceClone) {
561
632
  let config = loadGitHubConfig();
562
633
  if (!config.enabled)
563
634
  return null;
564
- let { owner, repo } = info, key = cacheKey(owner, repo, info.ref), cached = cloneCache.get(key);
635
+ let { owner, repo } = info, key = cacheKey(owner, repo, info.ref), cached = await findClone(key);
636
+ if (signal?.aborted || getWebSession()?.closed)
637
+ return null;
565
638
  if (cached)
566
639
  return awaitCachedClone(cached, url, owner, repo, info, signal);
567
640
  if (info.refIsFullSha)
@@ -583,18 +656,24 @@ async function extractGitHub(url, signal, forceClone) {
583
656
  }
584
657
  if (signal?.aborted)
585
658
  return activityMonitor.logComplete(activityId, 0), null;
586
- let cachedAfterSizeCheck = cloneCache.get(key);
659
+ let cachedAfterSizeCheck = await findClone(key);
660
+ for (; !cachedAfterSizeCheck && cloneCache.has(key); )
661
+ cachedAfterSizeCheck = await findClone(key);
662
+ if (signal?.aborted || getWebSession()?.closed)
663
+ return null;
587
664
  if (cachedAfterSizeCheck) {
588
665
  let cachedResult = await awaitCachedClone(cachedAfterSizeCheck, url, owner, repo, info, signal);
589
666
  return signal?.aborted ? activityMonitor.logComplete(activityId, 0) : cachedResult ? activityMonitor.logComplete(activityId, 200) : activityMonitor.logError(activityId, "clone failed"), cachedResult;
590
667
  }
591
- let clonePromise = cloneRepo(owner, repo, info.ref, config, signal), localPath = cloneDir(config, owner, repo, info.ref);
592
- cloneCache.set(key, { localPath, clonePromise });
593
- let result = await clonePromise;
594
- if (signal?.aborted)
595
- return result || cloneCache.delete(key), activityMonitor.logComplete(activityId, 0), null;
668
+ if (signal?.aborted || getWebSession()?.closed)
669
+ return null;
670
+ let controller = new AbortController(), clonePromise = cloneRepo(owner, repo, info.ref, config, controller.signal), entry = { localPath: cloneDir(config, owner, repo, info.ref), clonePromise, controller, owners: /* @__PURE__ */ new Set() };
671
+ cloneCache.set(key, entry), acquireClone(key, entry);
672
+ let result = await waitForClone(clonePromise, signal);
673
+ if (signal?.aborted || getWebSession()?.closed)
674
+ return activityMonitor.logComplete(activityId, 0), null;
596
675
  if (!result) {
597
- if (cloneCache.delete(key), signal?.aborted)
676
+ if (cloneCache.get(key) === entry && cloneCache.delete(key), signal?.aborted)
598
677
  return activityMonitor.logComplete(activityId, 0), null;
599
678
  let apiFallback = await fetchViaApi(url, owner, repo, info);
600
679
  return apiFallback ? (activityMonitor.logComplete(activityId, 200), apiFallback) : (activityMonitor.logError(activityId, "clone and API fallback failed"), null);
@@ -603,17 +682,7 @@ async function extractGitHub(url, signal, forceClone) {
603
682
  let content = generateContent(result, info), title = info.path ? `${owner}/${repo} - ${info.path}` : `${owner}/${repo}`;
604
683
  return { url, title, content, error: null };
605
684
  }
606
- function clearCloneCache() {
607
- for (let entry of cloneCache.values())
608
- try {
609
- rmSync(entry.localPath, { recursive: !0, force: !0 });
610
- } catch {
611
- }
612
- cloneCache.clear(), cachedConfig = null;
613
- }
614
- registerSessionCleanup(clearCloneCache);
615
685
  export {
616
- clearCloneCache,
617
686
  extractGitHub,
618
687
  parseGitHubUrl
619
688
  };
@@ -9,7 +9,7 @@ import {
9
9
  import "./chunk-OR4L3IB2.js";
10
10
  import {
11
11
  getAgentDir
12
- } from "./chunk-FQMM2EZ2.js";
12
+ } from "./chunk-64XTQNLA.js";
13
13
  import "./chunk-Q4Q6D4IY.js";
14
14
  import "./chunk-BRJX2PRC.js";
15
15
 
@@ -774,7 +774,7 @@ var STATUS_KEY = "goal", GOAL_STATE_ENTRY_TYPE2 = "goal-state", GOAL_COMPLETE_TO
774
774
  prepareGoalToolsForActivation(ctx) {
775
775
  if (this.settings.toolVisibility === "after-first-goal") {
776
776
  if (!this.goalToolsAvailable() && ctx.isIdle?.() !== !0)
777
- throw new Error("wait until Pi is idle before revealing the goal tools");
777
+ throw new Error("wait until lunR is idle before revealing the goal tools");
778
778
  this.revealGoalTools();
779
779
  return;
780
780
  }
@@ -1151,7 +1151,7 @@ New goal: ${objective}`)) {
1151
1151
  return;
1152
1152
  }
1153
1153
  if (this.runtime.cancelContinuationWork(), this.runtime.pendingQueueAction = { kind: "prioritize", objective, tokenBudget }, this.runtime.persistGoal(this.runtime.activeGoal), ctx.isIdle?.() !== !0 || hasPendingMessages(ctx)) {
1154
- ctx.ui.notify(`Priority goal queued until Pi settles: ${objective}`, "info");
1154
+ ctx.ui.notify(`Priority goal queued until lunR settles: ${objective}`, "info");
1155
1155
  return;
1156
1156
  }
1157
1157
  await this.dispatchPendingQueueActionIfSettled(ctx);
@@ -1184,7 +1184,7 @@ New goal: ${objective}`)) {
1184
1184
  goalId: currentGoal.id,
1185
1185
  reason: "skip",
1186
1186
  completedText: currentGoal.text
1187
- }, this.runtime.persistGoal(currentGoal), ctx.ui.notify(`Goal skip queued until Pi settles: ${currentGoal.text}`, "info"), ctx.isIdle?.() === !0 && !hasPendingMessages(ctx) && await this.dispatchPendingQueueActionIfSettled(ctx);
1187
+ }, this.runtime.persistGoal(currentGoal), ctx.ui.notify(`Goal skip queued until lunR settles: ${currentGoal.text}`, "info"), ctx.isIdle?.() === !0 && !hasPendingMessages(ctx) && await this.dispatchPendingQueueActionIfSettled(ctx);
1188
1188
  }
1189
1189
  async dispatchPendingQueueActionIfSettled(ctx) {
1190
1190
  let pending = this.runtime.pendingQueueAction;
@@ -1544,7 +1544,7 @@ Next goal queued: ${runtime.queuedGoals[0]?.text}`
1544
1544
  return;
1545
1545
  }
1546
1546
  if (runtime.pendingQueueAction && result.kind !== "show" && result.kind !== "clear") {
1547
- ctx.ui.notify("A queued goal change is waiting for Pi to settle. Retry after it finishes.", "warning");
1547
+ ctx.ui.notify("A queued goal change is waiting for lunR to settle. Retry after it finishes.", "warning");
1548
1548
  return;
1549
1549
  }
1550
1550
  switch (result.kind) {