@ashx-j/lunr-dev 0.2.16-dev.9.1 → 0.2.21-dev.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/CHANGELOG.md +67 -1
  2. package/README.md +7 -1
  3. package/dist/builtin-extensions/ashxj-thinking.d.ts +1 -0
  4. package/dist/builtin-extensions/ashxj-thinking.d.ts.map +1 -1
  5. package/dist/builtin-extensions/ashxj-thinking.js +44 -19
  6. package/dist/builtin-extensions/ashxj-thinking.js.map +1 -1
  7. package/dist/builtin-extensions/index.d.ts.map +1 -1
  8. package/dist/builtin-extensions/index.js +1 -2
  9. package/dist/builtin-extensions/index.js.map +1 -1
  10. package/dist/builtin-extensions/lunr-computer-use.d.ts +3 -0
  11. package/dist/builtin-extensions/lunr-computer-use.d.ts.map +1 -0
  12. package/dist/builtin-extensions/lunr-computer-use.js +158 -0
  13. package/dist/builtin-extensions/lunr-computer-use.js.map +1 -0
  14. package/dist/builtin-extensions/lunr-todos.d.ts +6 -5
  15. package/dist/builtin-extensions/lunr-todos.d.ts.map +1 -1
  16. package/dist/builtin-extensions/lunr-todos.js +9 -7
  17. package/dist/builtin-extensions/lunr-todos.js.map +1 -1
  18. package/dist/builtin-extensions/pi-intercom/broker/spawn.d.ts +6 -4
  19. package/dist/builtin-extensions/pi-intercom/broker/spawn.d.ts.map +1 -1
  20. package/dist/builtin-extensions/pi-intercom/broker/spawn.js +114 -61
  21. package/dist/builtin-extensions/pi-intercom/broker/spawn.js.map +1 -1
  22. package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
  23. package/dist/builtin-extensions/pi-intercom/index.js +360 -351
  24. package/dist/builtin-extensions/pi-intercom/index.js.map +1 -1
  25. package/dist/builtin-extensions/pi-lsp-extension/src/index.d.ts.map +1 -1
  26. package/dist/builtin-extensions/pi-lsp-extension/src/index.js +10 -3
  27. package/dist/builtin-extensions/pi-lsp-extension/src/index.js.map +1 -1
  28. package/dist/builtin-extensions/pi-lsp-extension/src/runtime.d.ts +5 -1
  29. package/dist/builtin-extensions/pi-lsp-extension/src/runtime.d.ts.map +1 -1
  30. package/dist/builtin-extensions/pi-lsp-extension/src/runtime.js +26 -4
  31. package/dist/builtin-extensions/pi-lsp-extension/src/runtime.js.map +1 -1
  32. package/dist/builtin-extensions/pi-mcp-adapter/index.d.ts.map +1 -1
  33. package/dist/builtin-extensions/pi-mcp-adapter/index.js +37 -27
  34. package/dist/builtin-extensions/pi-mcp-adapter/index.js.map +1 -1
  35. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.d.ts +6 -1
  36. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.d.ts.map +1 -1
  37. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js +33 -8
  38. package/dist/builtin-extensions/pi-mcp-adapter/server-manager.js.map +1 -1
  39. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.d.ts.map +1 -1
  40. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js +2 -2
  41. package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js.map +1 -1
  42. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts +8 -6
  43. package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
  44. package/dist/builtin-extensions/pi-subagents/src/extension/index.js +179 -79
  45. package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
  46. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts +18 -8
  47. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts.map +1 -1
  48. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js +44 -15
  49. package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js.map +1 -1
  50. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts +4 -3
  51. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
  52. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js +24 -14
  53. package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js.map +1 -1
  54. package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.d.ts +8 -1
  55. package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.d.ts.map +1 -1
  56. package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.js +247 -18
  57. package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.js.map +1 -1
  58. package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.d.ts +1 -0
  59. package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.d.ts.map +1 -1
  60. package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.js +1 -1
  61. package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.js.map +1 -1
  62. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.d.ts +29 -0
  63. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.d.ts.map +1 -0
  64. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.js +179 -0
  65. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.js.map +1 -0
  66. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.d.ts +89 -0
  67. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.d.ts.map +1 -0
  68. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.js +541 -0
  69. package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.js.map +1 -0
  70. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts +11 -1
  71. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts.map +1 -1
  72. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js +38 -12
  73. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js.map +1 -1
  74. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.d.ts.map +1 -1
  75. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.js +3 -2
  76. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.js.map +1 -1
  77. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.d.ts +2 -1
  78. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.d.ts.map +1 -1
  79. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js +35 -8
  80. package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js.map +1 -1
  81. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts +7 -3
  82. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
  83. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js +26 -4
  84. package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js.map +1 -1
  85. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts +1 -0
  86. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
  87. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js +55 -38
  88. package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
  89. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts +100 -0
  90. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  91. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +46 -31
  92. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  93. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.d.ts +3 -6
  94. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.d.ts.map +1 -1
  95. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.js +64 -5
  96. package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.js.map +1 -1
  97. package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.d.ts +15 -2
  98. package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.d.ts.map +1 -1
  99. package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.js +14 -4
  100. package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.js.map +1 -1
  101. package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.d.ts +1 -1
  102. package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.d.ts.map +1 -1
  103. package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.js +7 -3
  104. package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.js.map +1 -1
  105. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
  106. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +21 -8
  107. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
  108. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  109. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +1 -1
  110. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  111. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/request-params.d.ts +10 -0
  112. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/request-params.d.ts.map +1 -0
  113. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/request-params.js +38 -0
  114. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/request-params.js.map +1 -0
  115. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts +0 -1
  116. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  117. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +74 -41
  118. package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  119. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.d.ts +2 -0
  120. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.d.ts.map +1 -1
  121. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.js +75 -18
  122. package/dist/builtin-extensions/pi-subagents/src/runs/shared/acceptance.js.map +1 -1
  123. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts +1 -1
  124. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.d.ts.map +1 -1
  125. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js +2 -0
  126. package/dist/builtin-extensions/pi-subagents/src/runs/shared/child-tools.js.map +1 -1
  127. package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.d.ts +1 -1
  128. package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.d.ts.map +1 -1
  129. package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.js +1 -1
  130. package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.js.map +1 -1
  131. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts +13 -1
  132. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts.map +1 -1
  133. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js +67 -11
  134. package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js.map +1 -1
  135. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +1 -0
  136. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  137. package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  138. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts +3 -0
  139. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts.map +1 -1
  140. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js +7 -2
  141. package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js.map +1 -1
  142. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
  143. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js +13 -3
  144. package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
  145. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.d.ts +2 -2
  146. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.d.ts.map +1 -1
  147. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js +5 -10
  148. package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js.map +1 -1
  149. package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.d.ts +2 -0
  150. package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.d.ts.map +1 -0
  151. package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.js +3 -0
  152. package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.js.map +1 -0
  153. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.d.ts +3 -0
  154. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.d.ts.map +1 -1
  155. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js +68 -11
  156. package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js.map +1 -1
  157. package/dist/builtin-extensions/pi-subagents/src/shared/formatters.d.ts +12 -1
  158. package/dist/builtin-extensions/pi-subagents/src/shared/formatters.d.ts.map +1 -1
  159. package/dist/builtin-extensions/pi-subagents/src/shared/formatters.js +21 -2
  160. package/dist/builtin-extensions/pi-subagents/src/shared/formatters.js.map +1 -1
  161. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +21 -4
  162. package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts.map +1 -1
  163. package/dist/builtin-extensions/pi-subagents/src/shared/types.js +1 -1
  164. package/dist/builtin-extensions/pi-subagents/src/shared/types.js.map +1 -1
  165. package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.d.ts.map +1 -1
  166. package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.js.map +1 -1
  167. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts +7 -0
  168. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
  169. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +11 -7
  170. package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
  171. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts +6 -0
  172. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
  173. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js +46 -29
  174. package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js.map +1 -1
  175. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +47 -4
  176. package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
  177. package/dist/builtin-extensions/pi-subagents/src/tui/render.js +428 -431
  178. package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
  179. package/dist/builtin-extensions/pi-subagents/src/watchdog/register-main.d.ts.map +1 -1
  180. package/dist/builtin-extensions/pi-subagents/src/watchdog/register-main.js +1 -1
  181. package/dist/builtin-extensions/pi-subagents/src/watchdog/register-main.js.map +1 -1
  182. package/dist/builtin-extensions/pi-subagents/src/watchdog/tool-actions.d.ts +2 -13
  183. package/dist/builtin-extensions/pi-subagents/src/watchdog/tool-actions.d.ts.map +1 -1
  184. package/dist/builtin-extensions/pi-subagents/src/watchdog/tool-actions.js +5 -91
  185. package/dist/builtin-extensions/pi-subagents/src/watchdog/tool-actions.js.map +1 -1
  186. package/dist/builtin-extensions/pi-web-access/index.d.ts.map +1 -1
  187. package/dist/builtin-extensions/pi-web-access/index.js +103 -102
  188. package/dist/builtin-extensions/pi-web-access/index.js.map +1 -1
  189. package/dist/core/agent-session-services.d.ts.map +1 -1
  190. package/dist/core/agent-session-services.js +1 -1
  191. package/dist/core/agent-session-services.js.map +1 -1
  192. package/dist/core/computer-use/adapter.d.ts +23 -0
  193. package/dist/core/computer-use/adapter.d.ts.map +1 -0
  194. package/dist/core/computer-use/adapter.js +116 -0
  195. package/dist/core/computer-use/adapter.js.map +1 -0
  196. package/dist/core/computer-use/image.d.ts +26 -0
  197. package/dist/core/computer-use/image.d.ts.map +1 -0
  198. package/dist/core/computer-use/image.js +64 -0
  199. package/dist/core/computer-use/image.js.map +1 -0
  200. package/dist/core/computer-use/lease.d.ts +18 -0
  201. package/dist/core/computer-use/lease.d.ts.map +1 -0
  202. package/dist/core/computer-use/lease.js +129 -0
  203. package/dist/core/computer-use/lease.js.map +1 -0
  204. package/dist/core/computer-use/macos-runtime.d.ts +14 -0
  205. package/dist/core/computer-use/macos-runtime.d.ts.map +1 -0
  206. package/dist/core/computer-use/macos-runtime.js +148 -0
  207. package/dist/core/computer-use/macos-runtime.js.map +1 -0
  208. package/dist/core/computer-use/policy.d.ts +19 -0
  209. package/dist/core/computer-use/policy.d.ts.map +1 -0
  210. package/dist/core/computer-use/policy.js +62 -0
  211. package/dist/core/computer-use/policy.js.map +1 -0
  212. package/dist/core/computer-use/release.generated.d.ts +31 -0
  213. package/dist/core/computer-use/release.generated.d.ts.map +1 -0
  214. package/dist/core/computer-use/release.generated.js +36 -0
  215. package/dist/core/computer-use/release.generated.js.map +1 -0
  216. package/dist/core/computer-use/runtime.d.ts +13 -0
  217. package/dist/core/computer-use/runtime.d.ts.map +1 -0
  218. package/dist/core/computer-use/runtime.js +158 -0
  219. package/dist/core/computer-use/runtime.js.map +1 -0
  220. package/dist/core/computer-use/schemas.d.ts +91 -0
  221. package/dist/core/computer-use/schemas.d.ts.map +1 -0
  222. package/dist/core/computer-use/schemas.js +71 -0
  223. package/dist/core/computer-use/schemas.js.map +1 -0
  224. package/dist/core/computer-use/windows-desktop.d.ts +3 -0
  225. package/dist/core/computer-use/windows-desktop.d.ts.map +1 -0
  226. package/dist/core/computer-use/windows-desktop.js +48 -0
  227. package/dist/core/computer-use/windows-desktop.js.map +1 -0
  228. package/dist/core/computer-use/workflow.d.ts +32 -0
  229. package/dist/core/computer-use/workflow.d.ts.map +1 -0
  230. package/dist/core/computer-use/workflow.js +341 -0
  231. package/dist/core/computer-use/workflow.js.map +1 -0
  232. package/dist/core/customize.d.ts +2 -0
  233. package/dist/core/customize.d.ts.map +1 -1
  234. package/dist/core/customize.js +3 -0
  235. package/dist/core/customize.js.map +1 -1
  236. package/dist/core/keybindings.d.ts +2 -2
  237. package/dist/core/keybindings.d.ts.map +1 -1
  238. package/dist/core/keybindings.js +2 -2
  239. package/dist/core/keybindings.js.map +1 -1
  240. package/dist/core/model-runtime.d.ts +0 -3
  241. package/dist/core/model-runtime.d.ts.map +1 -1
  242. package/dist/core/model-runtime.js +1 -10
  243. package/dist/core/model-runtime.js.map +1 -1
  244. package/dist/core/package-manager.d.ts.map +1 -1
  245. package/dist/core/package-manager.js +1 -1
  246. package/dist/core/package-manager.js.map +1 -1
  247. package/dist/core/permissions.d.ts +2 -1
  248. package/dist/core/permissions.d.ts.map +1 -1
  249. package/dist/core/permissions.js +31 -11
  250. package/dist/core/permissions.js.map +1 -1
  251. package/dist/core/plan-mode.d.ts.map +1 -1
  252. package/dist/core/plan-mode.js +9 -5
  253. package/dist/core/plan-mode.js.map +1 -1
  254. package/dist/core/rollback.d.ts.map +1 -1
  255. package/dist/core/rollback.js +13 -90
  256. package/dist/core/rollback.js.map +1 -1
  257. package/dist/core/runtime-bridges.d.ts.map +1 -1
  258. package/dist/core/runtime-bridges.js +0 -2
  259. package/dist/core/runtime-bridges.js.map +1 -1
  260. package/dist/core/session-manager.d.ts +0 -1
  261. package/dist/core/session-manager.d.ts.map +1 -1
  262. package/dist/core/session-manager.js +21 -79
  263. package/dist/core/session-manager.js.map +1 -1
  264. package/dist/core/settings-manager.d.ts +10 -0
  265. package/dist/core/settings-manager.d.ts.map +1 -1
  266. package/dist/core/settings-manager.js +30 -0
  267. package/dist/core/settings-manager.js.map +1 -1
  268. package/dist/core/subagent-cancellation.d.ts +21 -0
  269. package/dist/core/subagent-cancellation.d.ts.map +1 -0
  270. package/dist/core/subagent-cancellation.js +53 -0
  271. package/dist/core/subagent-cancellation.js.map +1 -0
  272. package/dist/core/subagent-spinner-setting.d.ts +6 -0
  273. package/dist/core/subagent-spinner-setting.d.ts.map +1 -0
  274. package/dist/core/subagent-spinner-setting.js +12 -0
  275. package/dist/core/subagent-spinner-setting.js.map +1 -0
  276. package/dist/core/subagent-spinner.d.ts +4 -0
  277. package/dist/core/subagent-spinner.d.ts.map +1 -0
  278. package/dist/core/subagent-spinner.js +6 -0
  279. package/dist/core/subagent-spinner.js.map +1 -0
  280. package/dist/dev-cli.js +0 -0
  281. package/dist/gateway/agent-bridge.d.ts +6 -1
  282. package/dist/gateway/agent-bridge.d.ts.map +1 -1
  283. package/dist/gateway/agent-bridge.js +23 -6
  284. package/dist/gateway/agent-bridge.js.map +1 -1
  285. package/dist/gateway/cron.d.ts +1 -1
  286. package/dist/gateway/cron.d.ts.map +1 -1
  287. package/dist/gateway/cron.js +23 -7
  288. package/dist/gateway/cron.js.map +1 -1
  289. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  290. package/dist/modes/interactive/components/assistant-message.js +12 -18
  291. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  292. package/dist/modes/interactive/components/footer.d.ts +4 -2
  293. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  294. package/dist/modes/interactive/components/footer.js +23 -32
  295. package/dist/modes/interactive/components/footer.js.map +1 -1
  296. package/dist/modes/interactive/components/processes-selector.d.ts +2 -3
  297. package/dist/modes/interactive/components/processes-selector.d.ts.map +1 -1
  298. package/dist/modes/interactive/components/processes-selector.js +5 -10
  299. package/dist/modes/interactive/components/processes-selector.js.map +1 -1
  300. package/dist/modes/interactive/components/settings-selector.d.ts +8 -0
  301. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  302. package/dist/modes/interactive/components/settings-selector.js +93 -1
  303. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  304. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  305. package/dist/modes/interactive/components/tool-execution.js +12 -0
  306. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  307. package/dist/modes/interactive/extension-widget-order.d.ts +8 -0
  308. package/dist/modes/interactive/extension-widget-order.d.ts.map +1 -0
  309. package/dist/modes/interactive/extension-widget-order.js +37 -0
  310. package/dist/modes/interactive/extension-widget-order.js.map +1 -0
  311. package/dist/modes/interactive/interactive-mode.d.ts +1 -0
  312. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  313. package/dist/modes/interactive/interactive-mode.js +58 -26
  314. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  315. package/dist/modes/interactive/thinking-level-slash.d.ts +4 -0
  316. package/dist/modes/interactive/thinking-level-slash.d.ts.map +1 -0
  317. package/dist/modes/interactive/thinking-level-slash.js +23 -0
  318. package/dist/modes/interactive/thinking-level-slash.js.map +1 -0
  319. package/dist/node-runtime/adapter-AZMY335J.js +279 -0
  320. package/dist/node-runtime/{agent-session-services-IFJMSX7Z.js → agent-session-services-QANFGM2V.js} +15 -11
  321. package/dist/node-runtime/{builtin-extensions-LYZ3BFWQ.js → builtin-extensions-SRCYQPZ6.js} +5 -3
  322. package/dist/node-runtime/chunk-2IDTZAG5.js +1415 -0
  323. package/dist/node-runtime/chunk-3ONQTOMR.js +68 -0
  324. package/dist/node-runtime/{chunk-TQNSPERU.js → chunk-5SQDLSZJ.js} +1 -1
  325. package/dist/node-runtime/chunk-5ZH3ZFIZ.js +308 -0
  326. package/dist/node-runtime/{chunk-PBC2Y6GS.js → chunk-6UB6NKA3.js} +29 -72
  327. package/dist/node-runtime/{chunk-A2KQXUJD.js → chunk-7AFOFSDY.js} +1 -1
  328. package/dist/node-runtime/chunk-A3KMVBZV.js +60 -0
  329. package/dist/node-runtime/{chunk-N77MY65L.js → chunk-BJ6H7DPI.js} +25 -25
  330. package/dist/node-runtime/{chunk-PGAJ5MO5.js → chunk-BYQ2MOFI.js} +6 -6
  331. package/dist/node-runtime/{chunk-QH42CDX3.js → chunk-CZUBYPFP.js} +234 -124
  332. package/dist/node-runtime/{chunk-LZAW4ZX3.js → chunk-D466UAID.js} +34 -13
  333. package/dist/node-runtime/{chunk-ZKMFUD3Q.js → chunk-GT5F3OKM.js} +3 -3
  334. package/dist/node-runtime/chunk-H2BI7G7T.js +73 -0
  335. package/dist/node-runtime/{chunk-5P7PZMRU.js → chunk-HRS4HMDX.js} +1 -1
  336. package/dist/node-runtime/{chunk-IPA627GP.js → chunk-HXJS2PJM.js} +4 -4
  337. package/dist/node-runtime/chunk-JZHEUQRL.js +180 -0
  338. package/dist/node-runtime/chunk-LISUTZS3.js +19 -0
  339. package/dist/node-runtime/chunk-LOYUC2ID.js +2185 -0
  340. package/dist/node-runtime/{chunk-2QKLKMKC.js → chunk-LTXUQJI4.js} +1 -1
  341. package/dist/node-runtime/{chunk-YF63P5ZT.js → chunk-LTYWTR3V.js} +1 -426
  342. package/dist/node-runtime/{chunk-MKKH27PH.js → chunk-LWJXTA6Z.js} +274 -2416
  343. package/dist/node-runtime/chunk-MW2XJZIK.js +108 -0
  344. package/dist/node-runtime/{chunk-CDFZEWPU.js → chunk-N3PNL74S.js} +537 -262
  345. package/dist/node-runtime/{chunk-4TLO4PO2.js → chunk-U6C7VTR5.js} +7 -1401
  346. package/dist/node-runtime/chunk-URD2SLIT.js +1019 -0
  347. package/dist/node-runtime/{chunk-HQCKFM2O.js → chunk-VGYZ3APQ.js} +3 -0
  348. package/dist/node-runtime/{chunk-AJX357CL.js → chunk-VQ4UBWSA.js} +30 -1013
  349. package/dist/node-runtime/{chunk-F4VQFJI2.js → chunk-VTGEKB7R.js} +2 -2
  350. package/dist/node-runtime/{chunk-AD6VXAO7.js → chunk-VTPM5V35.js} +5 -100
  351. package/dist/node-runtime/chunk-W3SILANP.js +24 -0
  352. package/dist/node-runtime/{chunk-WOVTOV5P.js → chunk-XAUQOKYK.js} +421 -63
  353. package/dist/node-runtime/{chunk-ECD5L7YI.js → chunk-XSRCAQK2.js} +390 -16
  354. package/dist/node-runtime/{chunk-PCGNAY2O.js → chunk-ZOIIMEN6.js} +54 -433
  355. package/dist/node-runtime/{chunk-EDBJNRSM.js → chunk-ZVSORYRM.js} +1 -1
  356. package/dist/node-runtime/cli-runtime.js +1 -1
  357. package/dist/node-runtime/{command-L3LAHDIH.js → command-ZURZJDXF.js} +1 -1
  358. package/dist/node-runtime/{commands-RL5YBW5I.js → commands-BZGSLIP7.js} +4 -2
  359. package/dist/node-runtime/{customize-XEXL2DGQ.js → customize-LF5VST47.js} +1 -1
  360. package/dist/node-runtime/{direct-tool-executor-JVDXTO7A.js → direct-tool-executor-BSZDHIYR.js} +7 -4
  361. package/dist/node-runtime/{export-html-KR26FOUZ.js → export-html-E4DT6ZJQ.js} +1 -1
  362. package/dist/node-runtime/{gateway-X2TI5X7F.js → gateway-FWHRIBK5.js} +24 -369
  363. package/dist/node-runtime/index.js +49 -42
  364. package/dist/node-runtime/{init-NJV2T55N.js → init-DVJUAOUO.js} +4 -2
  365. package/dist/node-runtime/{interactive-mode-KOM35YF2.js → interactive-mode-BBASNWHN.js} +23 -17
  366. package/dist/node-runtime/{interactive-view-U6OILKF3.js → interactive-view-N6F4KUIT.js} +3 -5
  367. package/dist/node-runtime/lunr-computer-use-TJNDAMWM.js +135 -0
  368. package/dist/node-runtime/{lunr-cron-YJ5UHYRD.js → lunr-cron-J64I72C6.js} +7 -1
  369. package/dist/node-runtime/main.js +25 -20
  370. package/dist/node-runtime/{mcp-auth-flow-QIXHW6QN.js → mcp-auth-flow-YL6RWPYG.js} +2 -1
  371. package/dist/node-runtime/{package-manager-cli-TZZHJCVI.js → package-manager-cli-VMYX4Y2S.js} +10 -7
  372. package/dist/node-runtime/{pi-intercom-EEMBGQID.js → pi-intercom-NV2LW6X7.js} +108 -87
  373. package/dist/node-runtime/{pi-mcp-adapter-QFB37AVN.js → pi-mcp-adapter-JLB5YL2F.js} +31 -25
  374. package/dist/node-runtime/{pi-subagents-7XJ4H53P.js → pi-subagents-WEHV3W7H.js} +1321 -631
  375. package/dist/node-runtime/{pi-web-access-DPGAVKOA.js → pi-web-access-FN5YC5T6.js} +67 -64
  376. package/dist/node-runtime/{proxy-modes-HEEFK4KC.js → proxy-modes-OR7ISBXK.js} +7 -4
  377. package/dist/node-runtime/rpc-entry.js +25 -20
  378. package/dist/node-runtime/runtime-3SB5ATHQ.js +21 -0
  379. package/dist/node-runtime/{runtime-bridges-PPHNBFWL.js → runtime-bridges-2VQTLPOZ.js} +3 -5
  380. package/dist/node-runtime/{session-manager-MQNBYACL.js → session-manager-QEMZBMTM.js} +3 -5
  381. package/dist/node-runtime/{session-selector-5AZLJS6U.js → session-selector-URVJLOTK.js} +2 -2
  382. package/dist/node-runtime/{settings-manager-5LF2VQWC.js → settings-manager-3CCU326G.js} +4 -1
  383. package/dist/node-runtime/{src-Y7JSCK64.js → src-BPQFJR76.js} +27 -7
  384. package/dist/node-runtime/{subagent-executor-5RNDEPIJ.js → subagent-executor-CXKXQDHH.js} +189 -284
  385. package/dist/node-runtime/{update-cli-A253SZ7P.js → update-cli-NM7B4CKL.js} +4 -1
  386. package/dist/node-runtime/workflow-C26QCUTW.js +468 -0
  387. package/dist/rpc.d.ts +3 -0
  388. package/dist/rpc.d.ts.map +1 -0
  389. package/dist/rpc.js +18 -0
  390. package/dist/rpc.js.map +1 -0
  391. package/dist/startup/interactive-view.d.ts.map +1 -1
  392. package/dist/startup/interactive-view.js +1 -2
  393. package/dist/startup/interactive-view.js.map +1 -1
  394. package/docs/computer-use.md +242 -0
  395. package/docs/development.md +0 -32
  396. package/docs/features.md +24 -6
  397. package/docs/interactive-startup.md +10 -3
  398. package/docs/keybindings.md +5 -3
  399. package/docs/settings.md +3 -2
  400. package/docs/terminal-setup.md +1 -1
  401. package/docs/usage.md +1 -1
  402. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  403. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  404. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  405. package/examples/extensions/gondolin/package-lock.json +2 -2
  406. package/examples/extensions/gondolin/package.json +1 -1
  407. package/examples/extensions/hidden-thinking-label.ts +1 -1
  408. package/examples/extensions/sandbox/package-lock.json +2 -2
  409. package/examples/extensions/sandbox/package.json +1 -1
  410. package/examples/extensions/with-deps/package-lock.json +2 -2
  411. package/examples/extensions/with-deps/package.json +1 -1
  412. package/install-lock/package-lock.json +3827 -0
  413. package/install-lock/package.json +18 -0
  414. package/native/computer-use/LICENSE.md +21 -0
  415. package/npm-shrinkwrap.json +3808 -0
  416. package/package.json +16 -10
  417. package/dist/builtin-extensions/lunr-settings-tools.d.ts +0 -4
  418. package/dist/builtin-extensions/lunr-settings-tools.d.ts.map +0 -1
  419. package/dist/builtin-extensions/lunr-settings-tools.js +0 -120
  420. package/dist/builtin-extensions/lunr-settings-tools.js.map +0 -1
  421. package/dist/core/settings-tools-bridge.d.ts +0 -35
  422. package/dist/core/settings-tools-bridge.d.ts.map +0 -1
  423. package/dist/core/settings-tools-bridge.js +0 -56
  424. package/dist/core/settings-tools-bridge.js.map +0 -1
  425. package/dist/node-runtime/chunk-AHSTJBIB.js +0 -64
  426. package/dist/startup/interactive-shell.d.ts +0 -55
  427. package/dist/startup/interactive-shell.d.ts.map +0 -1
  428. package/dist/startup/interactive-shell.js +0 -264
  429. package/dist/startup/interactive-shell.js.map +0 -1
  430. package/dist/node-runtime/{chunk-YSKSB3BJ.js → chunk-CH6OL6P2.js} +2 -2
@@ -3,6 +3,10 @@ import {
3
3
  isUserInstructionsPath
4
4
  } from "./chunk-M3LZLQW2.js";
5
5
  import {
6
+ computerPolicy
7
+ } from "./chunk-3ONQTOMR.js";
8
+ import {
9
+ CONFIG_DIR_NAME,
6
10
  getAgentDir
7
11
  } from "./chunk-PCIGF2XK.js";
8
12
 
@@ -125,7 +129,13 @@ function isCodeRewriteMutating(input) {
125
129
  return input?.dry_run === !1;
126
130
  }
127
131
  function planModeBlockReason(toolName, input) {
128
- if (BLOCKED_TOOLS.has(toolName) || toolName === "code_rewrite" && isCodeRewriteMutating(input) || toolName.startsWith("settings_") && toolName !== "settings_load" && Object.keys(input ?? {}).length > 0)
132
+ if (toolName.startsWith("computer_"))
133
+ try {
134
+ return computerPolicy(toolName, {})?.observation ? void 0 : PLAN_MODE_BLOCK_MESSAGE;
135
+ } catch {
136
+ return PLAN_MODE_BLOCK_MESSAGE;
137
+ }
138
+ if (BLOCKED_TOOLS.has(toolName) || toolName === "code_rewrite" && isCodeRewriteMutating(input))
129
139
  return PLAN_MODE_BLOCK_MESSAGE;
130
140
  if (toolName === "bash") {
131
141
  let command = readBashCommand(input);
@@ -395,14 +405,13 @@ var READ_ONLY_TOOLS = /* @__PURE__ */ new Set([
395
405
  "lsp_symbols",
396
406
  "lsp_code_actions",
397
407
  "lsp_completions",
398
- "memory_load",
399
- "settings_load"
408
+ "memory_load"
400
409
  ]), MUTATING_TOOLS = /* @__PURE__ */ new Set(["bash", "edit", "write", "memory_add", "memory_remove", "cron"]), REJECT_REASON = "Rejected by user (permission mode: manual).", NO_HANDLER_REASON = "Mutating tool blocked in manual mode: no approval channel available.", LARGE_SUBAGENT_LAUNCH_REJECT_REASON = "Large subagent launch rejected by user.", NO_LARGE_SUBAGENT_LAUNCH_HANDLER_REASON = "Large subagent launch blocked: no approval channel available.", LARGE_SUBAGENT_LAUNCH_ACTION = "large-subagent-launch", FULL_CHILD_ACTION = "subagent-full", contexts = /* @__PURE__ */ new Map(), defaultContext = { mode: "manual", approvals: /* @__PURE__ */ new Set() }, approvalHandler, turnLargeLaunchDecisions = /* @__PURE__ */ new WeakMap();
401
410
  function getContext(sessionId) {
402
411
  return sessionId ? contexts.get(sessionId) ?? defaultContext : defaultContext;
403
412
  }
404
- function createPermissionContext(sessionId, mode = defaultContext.mode) {
405
- contexts.set(sessionId, { mode, approvals: /* @__PURE__ */ new Set() });
413
+ function createPermissionContext(sessionId, mode = defaultContext.mode, allowApprovals = !0) {
414
+ contexts.set(sessionId, { mode, allowApprovals, approvals: /* @__PURE__ */ new Set() });
406
415
  }
407
416
  function deletePermissionContext(sessionId) {
408
417
  contexts.delete(sessionId);
@@ -444,7 +453,7 @@ function isPathOutsideCwd(absPath, cwd) {
444
453
  function resolvePath(cwd, p) {
445
454
  return typeof p != "string" || !p ? "" : resolve(cwd, p);
446
455
  }
447
- var GLOBAL_AGENTS_FILE_WRITE_BLOCK_REASON = "The agents instruction tree is user-managed. The agent cannot change ~/.lunr/agent/agents/.", MEMORY_FILE_DIRECT_WRITE_BLOCK_REASON = "Memory is model-managed through the memory tools. Do not directly change ~/.lunr/simple-memory/memory.md.";
456
+ var GLOBAL_AGENTS_FILE_WRITE_BLOCK_REASON = "The agents instruction tree is user-managed. The agent cannot change ~/.lunr/agent/agents/.", MEMORY_FILE_DIRECT_WRITE_BLOCK_REASON = "Memory is model-managed through the memory tools. Do not directly change ~/.lunr/simple-memory/memory.md.", SETTINGS_FILE_DIRECT_WRITE_BLOCK_REASON = "lunR settings are user-managed through /settings. Do not directly change settings.json.";
448
457
  function protectedFileWriteReason(toolName, input, cwd) {
449
458
  if (toolName !== "edit" && toolName !== "write" && toolName !== "code_rewrite")
450
459
  return;
@@ -459,6 +468,9 @@ function protectedFileWriteReason(toolName, input, cwd) {
459
468
  return GLOBAL_AGENTS_FILE_WRITE_BLOCK_REASON;
460
469
  if (normalize(target) === normalize(join(dirname(getAgentDir()), "simple-memory", "memory.md")))
461
470
  return MEMORY_FILE_DIRECT_WRITE_BLOCK_REASON;
471
+ let globalSettings = normalize(join(getAgentDir(), "settings.json")), projectSettings = normalize(join(cwd, CONFIG_DIR_NAME, "settings.json")), normalizedTarget = normalize(target);
472
+ if (normalizedTarget === globalSettings || normalizedTarget === projectSettings)
473
+ return SETTINGS_FILE_DIRECT_WRITE_BLOCK_REASON;
462
474
  }
463
475
  function isMutatingTool(toolName) {
464
476
  return MUTATING_TOOLS.has(toolName);
@@ -487,7 +499,7 @@ function getRequestedChildLaunches(input) {
487
499
  return collectRequestedChildLaunches(input, launches), launches;
488
500
  }
489
501
  function requiresManualApproval(toolName, input) {
490
- return isMutatingTool(toolName) ? !0 : toolName.startsWith("settings_") && toolName !== "settings_load" ? Object.keys(input).length > 0 : toolName === "subagent" ? getRequestedChildLaunches(input).some((launch) => launch.permissions === "full") : toolName === "code_rewrite" && isCodeRewriteMutating(input);
502
+ return toolName.startsWith("computer_") ? toolName !== "computer_end" : isMutatingTool(toolName) ? !0 : toolName === "subagent" ? getRequestedChildLaunches(input).some((launch) => launch.permissions === "full") : toolName === "code_rewrite" && isCodeRewriteMutating(input);
491
503
  }
492
504
  function firstTaskText(value) {
493
505
  return typeof value == "string" && value.trim() ? sanitizeDetail(value) : "";
@@ -525,7 +537,7 @@ async function gateLargeSubagentLaunch(input, ctx, options) {
525
537
  block: !0,
526
538
  reason: cached.feedback ? `${LARGE_SUBAGENT_LAUNCH_REJECT_REASON} ${cached.feedback}` : LARGE_SUBAGENT_LAUNCH_REJECT_REASON
527
539
  } : { fullChildrenApproved: cached.fullChildrenApproved };
528
- if (!approvalHandler)
540
+ if (!approvalHandler || ctx.allowApprovals === !1)
529
541
  return { block: !0, reason: NO_LARGE_SUBAGENT_LAUNCH_HANDLER_REASON };
530
542
  let summary = largeLaunchTaskSummary(input, options?.assistantMessage), siblingLaunches = (options?.assistantMessage?.content ?? []).flatMap((block) => {
531
543
  if (block.type !== "toolCall" || block.name !== "subagent")
@@ -557,7 +569,14 @@ function sanitizeDetail(value) {
557
569
  return text.length > 200 ? `${text.slice(0, 200)}\u2026` : text;
558
570
  }
559
571
  async function gateToolCall(toolName, input, cwd, sessionId, options) {
560
- let ctx = getContext(sessionId), protectedWriteReason = protectedFileWriteReason(toolName, input, cwd);
572
+ let ctx = getContext(sessionId);
573
+ if (toolName.startsWith("computer_"))
574
+ try {
575
+ computerPolicy(toolName, input);
576
+ } catch (error) {
577
+ return { block: !0, reason: String(error) };
578
+ }
579
+ let protectedWriteReason = protectedFileWriteReason(toolName, input, cwd);
561
580
  if (protectedWriteReason)
562
581
  return { block: !0, reason: protectedWriteReason };
563
582
  if (READ_ONLY_TOOLS.has(toolName))
@@ -576,7 +595,9 @@ async function gateToolCall(toolName, input, cwd, sessionId, options) {
576
595
  if (ctx.mode !== "manual" || !requiresManualApproval(toolName, input) || largeLaunchCoveredManualApproval)
577
596
  return;
578
597
  let action, detail;
579
- if (toolName === "bash")
598
+ if (toolName.startsWith("computer_"))
599
+ action = toolName, detail = sanitizeDetail(JSON.stringify(input));
600
+ else if (toolName === "bash")
580
601
  action = "bash", detail = sanitizeDetail(input.command);
581
602
  else if (toolName === "edit" || toolName === "write") {
582
603
  let path = resolvePath(cwd, input.path);
@@ -594,9 +615,9 @@ async function gateToolCall(toolName, input, cwd, sessionId, options) {
594
615
  permissions: ${launch.permissions}`).join(`
595
616
  `));
596
617
  } else toolName === "code_rewrite" ? (action = "code_rewrite", detail = sanitizeDetail(input.path ?? input.pattern)) : (action = toolName, detail = "");
597
- if (ctx.approvals.has(action))
618
+ if (!toolName.startsWith("computer_") && ctx.approvals.has(action))
598
619
  return;
599
- if (!approvalHandler)
620
+ if (!approvalHandler || ctx.allowApprovals === !1)
600
621
  return { block: !0, reason: NO_HANDLER_REASON };
601
622
  let resp;
602
623
  try {
@@ -606,7 +627,7 @@ permissions: ${launch.permissions}`).join(`
606
627
  }
607
628
  let decision = typeof resp == "string" ? resp : resp.decision;
608
629
  if (decision === "session") {
609
- ctx.approvals.add(action);
630
+ toolName.startsWith("computer_") || ctx.approvals.add(action);
610
631
  return;
611
632
  }
612
633
  if (decision === "reject") {
@@ -1,7 +1,4 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
- import {
3
- processImage
4
- } from "./chunk-AD6VXAO7.js";
5
2
  import {
6
3
  DEFAULT_MAX_BYTES,
7
4
  DEFAULT_MAX_LINES,
@@ -32,6 +29,9 @@ import {
32
29
  trackDetachedChildPid,
33
30
  untrackDetachedChildPid
34
31
  } from "./chunk-ZCHMJ34K.js";
32
+ import {
33
+ processImage
34
+ } from "./chunk-MW2XJZIK.js";
35
35
  import {
36
36
  keyHint
37
37
  } from "./chunk-C4O2RSQQ.js";
@@ -0,0 +1,73 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+ import {
3
+ typebox_exports
4
+ } from "./chunk-PL6JKXWI.js";
5
+
6
+ // packages/coding-agent/dist/core/computer-use/schemas.js
7
+ var target = {
8
+ pid: typebox_exports.Integer({ minimum: 1 }),
9
+ window_id: typebox_exports.Integer({ minimum: 1 })
10
+ }, observation = typebox_exports.String({
11
+ description: "Latest image token for this exact target. Single action, expires after 30 seconds."
12
+ }), grounded = {
13
+ pid: typebox_exports.Optional(target.pid),
14
+ window_id: typebox_exports.Optional(target.window_id),
15
+ desktop: typebox_exports.Optional(typebox_exports.Boolean({ description: "Primary desktop instead of a window; requires foreground=true." })),
16
+ observation,
17
+ foreground: typebox_exports.Optional(typebox_exports.Boolean({ description: "Window focus escalation after verified background failure. Settings may forbid it." }))
18
+ }, coordinate = typebox_exports.Number({ minimum: 0 }), pixels = { x: coordinate, y: coordinate }, optionalPixels = { x: typebox_exports.Optional(coordinate), y: typebox_exports.Optional(coordinate) }, computerSchemas = {
19
+ computer_load: typebox_exports.Object({}, { additionalProperties: !1 }),
20
+ computer_apps: typebox_exports.Object({
21
+ pid: typebox_exports.Optional(target.pid),
22
+ offset: typebox_exports.Optional(typebox_exports.Integer({ minimum: 0, maximum: Number.MAX_SAFE_INTEGER, description: "Zero-based row offset, default 0. Pass the result's next_offset to retrieve the next 50 apps or windows." }))
23
+ }, { additionalProperties: !1 }),
24
+ computer_observe: typebox_exports.Object({
25
+ pid: typebox_exports.Optional(target.pid),
26
+ window_id: typebox_exports.Optional(target.window_id),
27
+ desktop: typebox_exports.Optional(typebox_exports.Boolean({ description: "Capture the primary desktop instead of a window." })),
28
+ observation: typebox_exports.Optional(observation),
29
+ crop: typebox_exports.Optional(typebox_exports.Object({
30
+ x: coordinate,
31
+ y: coordinate,
32
+ width: typebox_exports.Number({ exclusiveMinimum: 0 }),
33
+ height: typebox_exports.Number({ exclusiveMinimum: 0 })
34
+ }, { additionalProperties: !1, description: "Region in the latest returned image's pixels; requires its observation token. Captures fresh pixels. Omit for full target." }))
35
+ }, { additionalProperties: !1 }),
36
+ computer_click: typebox_exports.Object({
37
+ ...grounded,
38
+ ...pixels,
39
+ button: typebox_exports.Optional(typebox_exports.Union([typebox_exports.Literal("left"), typebox_exports.Literal("right")])),
40
+ count: typebox_exports.Optional(typebox_exports.Integer({ minimum: 1, maximum: 2 })),
41
+ modifier: typebox_exports.Optional(typebox_exports.Array(typebox_exports.String({ minLength: 1 }), { maxItems: 4 }))
42
+ }, { additionalProperties: !1 }),
43
+ computer_drag: typebox_exports.Object({ ...grounded, from_x: coordinate, from_y: coordinate, to_x: coordinate, to_y: coordinate }, { additionalProperties: !1 }),
44
+ computer_key: typebox_exports.Object({
45
+ ...grounded,
46
+ ...optionalPixels,
47
+ key: typebox_exports.Optional(typebox_exports.String({ minLength: 1, maxLength: 100 })),
48
+ keys: typebox_exports.Optional(typebox_exports.Array(typebox_exports.String({ minLength: 1, maxLength: 100 }), { minItems: 2, maxItems: 5 }))
49
+ }, { additionalProperties: !1 }),
50
+ computer_text: typebox_exports.Object({ ...grounded, ...optionalPixels, text: typebox_exports.String({ maxLength: 2e4 }) }, { additionalProperties: !1 }),
51
+ computer_window: typebox_exports.Object({
52
+ ...target,
53
+ observation,
54
+ action: typebox_exports.Union([typebox_exports.Literal("frame"), typebox_exports.Literal("focus")]),
55
+ x: typebox_exports.Optional(typebox_exports.Number()),
56
+ y: typebox_exports.Optional(typebox_exports.Number()),
57
+ width: typebox_exports.Optional(typebox_exports.Integer({ minimum: 1 })),
58
+ height: typebox_exports.Optional(typebox_exports.Integer({ minimum: 1 }))
59
+ }, { additionalProperties: !1 }),
60
+ computer_launch: typebox_exports.Object({ name: typebox_exports.String({ minLength: 1, maxLength: 500 }) }, { additionalProperties: !1 }),
61
+ computer_scroll: typebox_exports.Object({
62
+ ...grounded,
63
+ ...pixels,
64
+ direction: typebox_exports.Union([typebox_exports.Literal("up"), typebox_exports.Literal("down"), typebox_exports.Literal("left"), typebox_exports.Literal("right")]),
65
+ amount: typebox_exports.Integer({ minimum: 1, maximum: 50 }),
66
+ by: typebox_exports.Union([typebox_exports.Literal("line"), typebox_exports.Literal("page")])
67
+ }, { additionalProperties: !1 }),
68
+ computer_end: typebox_exports.Object({}, { additionalProperties: !1 })
69
+ };
70
+
71
+ export {
72
+ computerSchemas
73
+ };
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  KeybindingsManager
4
- } from "./chunk-YSKSB3BJ.js";
4
+ } from "./chunk-CH6OL6P2.js";
5
5
  import {
6
6
  DynamicBorder
7
7
  } from "./chunk-3GHXVUAK.js";
@@ -3,14 +3,14 @@ import {
3
3
  areExperimentalFeaturesEnabled,
4
4
  getProjectTrustOptions,
5
5
  hasTrustRequiringProjectResources
6
- } from "./chunk-2QKLKMKC.js";
6
+ } from "./chunk-LTXUQJI4.js";
7
7
  import {
8
8
  DefaultPackageManager,
9
9
  emitProjectTrustEvent
10
- } from "./chunk-PGAJ5MO5.js";
10
+ } from "./chunk-BYQ2MOFI.js";
11
11
  import {
12
12
  SettingsManager
13
- } from "./chunk-AJX357CL.js";
13
+ } from "./chunk-VQ4UBWSA.js";
14
14
  import {
15
15
  ExtensionSelectorComponent
16
16
  } from "./chunk-MJQDX3BA.js";
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-MGWCVY6Y.js";
20
20
  import {
21
21
  KeybindingsManager
22
- } from "./chunk-YSKSB3BJ.js";
22
+ } from "./chunk-CH6OL6P2.js";
23
23
  import {
24
24
  DynamicBorder
25
25
  } from "./chunk-3GHXVUAK.js";
@@ -0,0 +1,180 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+ import {
3
+ require_proper_lockfile
4
+ } from "./chunk-URD2SLIT.js";
5
+ import {
6
+ getPackageDir
7
+ } from "./chunk-PCIGF2XK.js";
8
+ import {
9
+ __toESM
10
+ } from "./chunk-BRJX2PRC.js";
11
+
12
+ // packages/coding-agent/dist/core/computer-use/runtime.js
13
+ var import_proper_lockfile = __toESM(require_proper_lockfile(), 1);
14
+ import { execFile } from "node:child_process";
15
+ import { createHash, randomUUID } from "node:crypto";
16
+ import { createReadStream } from "node:fs";
17
+ import { lstat, mkdir, readdir, readFile, readlink, realpath, rename, rm } from "node:fs/promises";
18
+ import { createRequire } from "node:module";
19
+ import { userInfo } from "node:os";
20
+ import { dirname, isAbsolute, join, relative, resolve } from "node:path";
21
+ import { promisify } from "node:util";
22
+
23
+ // packages/coding-agent/dist/core/computer-use/release.generated.js
24
+ var computerRelease = {
25
+ version: "0.28.1",
26
+ tag: "cua-driver-rs-v0.28.1",
27
+ sourceCommit: "d8028a7943087ee258dc1b4d19dc12a7cd27669c",
28
+ repository: "https://github.com/trycua/cua",
29
+ prerelease: !0,
30
+ approval: "development-only; production release not approved",
31
+ artifacts: [
32
+ {
33
+ platform: "win32",
34
+ arch: "x64",
35
+ packageName: "@ashx-j/lunr-computer-win32-x64",
36
+ name: "cua-driver-rs-0.28.1-windows-x86_64-binary.zip",
37
+ bytes: 28930759,
38
+ sha256: "ab90418a54f84102f549cde4537daef3a0e20ba8254b7e24524a50fc5f4174d3"
39
+ },
40
+ {
41
+ platform: "win32",
42
+ arch: "arm64",
43
+ packageName: "@ashx-j/lunr-computer-win32-arm64",
44
+ name: "cua-driver-rs-0.28.1-windows-arm64-binary.zip",
45
+ bytes: 27246194,
46
+ sha256: "d260e6110e029680d543d317f3c3c09569475f8d65855fcedda202e2ee989bf0"
47
+ },
48
+ {
49
+ platform: "darwin",
50
+ arch: "arm64",
51
+ packageName: "@ashx-j/lunr-computer-darwin-arm64",
52
+ name: "cua-driver-rs-0.28.1-darwin-arm64.tar.gz",
53
+ bytes: 70074352,
54
+ sha256: "b3cb3781feb9855dfcdd616bc5c9c8e627453e3e16a073c1446326691a549b24"
55
+ }
56
+ ]
57
+ };
58
+
59
+ // packages/coding-agent/dist/core/computer-use/runtime.js
60
+ var exec = promisify(execFile), CUA_VERSION = computerRelease.version;
61
+ async function resolveRuntimeArchive(packageDirectory = getPackageDir(), platform = process.platform, arch = process.arch) {
62
+ let payload = computerRelease.artifacts.find((item) => item.platform === platform && item.arch === arch);
63
+ if (!payload)
64
+ throw new Error("Computer use is unsupported on this platform or architecture.");
65
+ let archive = join(packageDirectory, "native", "computer-use", payload.name);
66
+ try {
67
+ await lstat(archive);
68
+ } catch (error) {
69
+ if (!(error instanceof Error && "code" in error && error.code === "ENOENT"))
70
+ throw error;
71
+ let manifestPath;
72
+ try {
73
+ manifestPath = createRequire(join(packageDirectory, "package.json")).resolve(`${payload.packageName}/package.json`);
74
+ } catch {
75
+ throw new Error("Computer-use payload is missing. Reinstall lunR with optional dependencies enabled. No runtime was downloaded.");
76
+ }
77
+ let manifest = JSON.parse(await readFile(manifestPath, "utf8")), cli = JSON.parse(await readFile(join(packageDirectory, "package.json"), "utf8"));
78
+ if (manifest.name !== payload.packageName || manifest.version !== cli.version)
79
+ throw new Error("Computer-use payload package version does not match lunR. Reinstall lunR with optional dependencies enabled.");
80
+ archive = join(dirname(manifestPath), payload.name);
81
+ }
82
+ let info = await lstat(archive);
83
+ if (!info.isFile() || info.isSymbolicLink() || info.size !== payload.bytes)
84
+ throw new Error("Bundled computer-use archive is not a regular file of the pinned size.");
85
+ return { archive, sha256: payload.sha256 };
86
+ }
87
+ function runtimeEnvironment(inherited = process.env) {
88
+ return {
89
+ ...Object.fromEntries(Object.entries(inherited).filter((entry) => entry[1] !== void 0 && !entry[0].toUpperCase().startsWith("CUA_"))),
90
+ CUA_DRIVER_RS_TELEMETRY_ENABLED: "false",
91
+ CUA_DRIVER_RS_UPDATE_CHECK: "false",
92
+ CUA_DRIVER_PERMISSION_MODE: "standard",
93
+ CUA_DRIVER_DISABLE_UNRESTRICTED: "true"
94
+ };
95
+ }
96
+ async function digest(path, signal) {
97
+ let hash = createHash("sha256");
98
+ for await (let chunk of createReadStream(path, { signal }))
99
+ hash.update(chunk);
100
+ return hash.digest("hex");
101
+ }
102
+ async function assertOwnedPath(path) {
103
+ let current = resolve(path);
104
+ for (; ; ) {
105
+ try {
106
+ if ((await lstat(current)).isSymbolicLink() || resolve(await realpath(current)).toLowerCase() !== current.toLowerCase())
107
+ throw new Error(`Computer runtime path redirects elsewhere: ${current}`);
108
+ } catch (error) {
109
+ if (!(error instanceof Error && "code" in error && error.code === "ENOENT"))
110
+ throw error;
111
+ }
112
+ let parent = dirname(current);
113
+ if (parent === current)
114
+ return;
115
+ current = parent;
116
+ }
117
+ }
118
+ async function runtimeInventory(root, signal) {
119
+ let inventory = {};
120
+ async function walk(path) {
121
+ for (let item of await readdir(path, { withFileTypes: !0 })) {
122
+ let entry = join(path, item.name), key = relative(root, entry);
123
+ if (item.isSymbolicLink()) {
124
+ let target = await readlink(entry), resolved = relative(root, resolve(dirname(entry), target));
125
+ if (isAbsolute(target) || resolved === ".." || resolved.startsWith(`..${process.platform === "win32" ? "\\" : "/"}`) || isAbsolute(resolved))
126
+ throw new Error("Runtime symlink escapes its bundle.");
127
+ inventory[key] = `link:${target}`;
128
+ } else if (item.isDirectory())
129
+ await assertOwnedPath(entry), inventory[key] = "directory", await walk(entry);
130
+ else if (item.isFile())
131
+ await assertOwnedPath(entry), inventory[key] = await digest(entry, signal);
132
+ else
133
+ throw new Error("Unexpected runtime filesystem entry.");
134
+ }
135
+ }
136
+ return await walk(root), Object.fromEntries(Object.entries(inventory).sort(([a], [b]) => a.localeCompare(b)));
137
+ }
138
+ async function installRuntime(signal) {
139
+ signal?.throwIfAborted();
140
+ let platform = `${process.platform}-${process.arch}`, { archive, sha256 } = await resolveRuntimeArchive();
141
+ if (process.platform === "win32" && process.env.SESSIONNAME === "Services")
142
+ throw new Error("Computer use requires a logged-in interactive desktop.");
143
+ if (await digest(archive, signal) !== sha256)
144
+ throw new Error("Bundled computer-use archive failed SHA-256 verification.");
145
+ let root = join(userInfo().homedir, ".lunr", "desktop");
146
+ await assertOwnedPath(root), await mkdir(root, { recursive: !0, mode: 448 });
147
+ let release = await import_proper_lockfile.default.lock(root, { retries: 0, stale: 12e4 }), temporary = join(root, `extract-${randomUUID()}`), destination = join(root, `runtime-${platform}`);
148
+ try {
149
+ await assertOwnedPath(destination), await mkdir(temporary, { mode: 448 }), await exec(process.platform === "win32" ? join(process.env.SystemRoot ?? "C:\\Windows", "System32", "tar.exe") : "/usr/bin/tar", ["-xf", archive, "-C", temporary], {
150
+ timeout: 3e4,
151
+ windowsHide: !0,
152
+ signal
153
+ });
154
+ let extracted = process.platform === "darwin" ? join(temporary, `cua-driver-rs-${CUA_VERSION}-darwin-arm64`) : temporary, expected = await runtimeInventory(extracted, signal);
155
+ try {
156
+ if (await lstat(destination), JSON.stringify(await runtimeInventory(destination, signal)) !== JSON.stringify(expected))
157
+ throw new Error("Cached computer runtime differs from the verified archive. Remove the inactive lunR runtime directory before reinstalling; it was not executed or overwritten.");
158
+ } catch (error) {
159
+ if (!(error instanceof Error && "code" in error && error.code === "ENOENT"))
160
+ throw error;
161
+ await rename(extracted, destination);
162
+ }
163
+ if (signal?.throwIfAborted(), process.platform === "darwin") {
164
+ let app = join(destination, "CuaDriver.app");
165
+ return await exec("/usr/bin/codesign", ["--verify", "--deep", "--strict", app], { timeout: 15e3, signal }), { app, command: join(app, "Contents", "MacOS", "cua-driver") };
166
+ }
167
+ return { command: join(destination, "cua-driver.exe") };
168
+ } finally {
169
+ await rm(temporary, { recursive: !0, force: !0 }), await release();
170
+ }
171
+ }
172
+
173
+ export {
174
+ CUA_VERSION,
175
+ resolveRuntimeArchive,
176
+ runtimeEnvironment,
177
+ assertOwnedPath,
178
+ runtimeInventory,
179
+ installRuntime
180
+ };
@@ -0,0 +1,19 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+
3
+ // packages/coding-agent/dist/core/subagent-spinner-setting.js
4
+ var SUBAGENT_SPINNER_NAMES = ["braille", "orbit", "snake", "sparkle"], DEFAULT_SUBAGENT_SPINNER = "braille", SUBAGENT_SPINNER_LABELS = {
5
+ braille: "Braille",
6
+ orbit: "Orbit",
7
+ snake: "Snake",
8
+ sparkle: "Sparkle"
9
+ };
10
+ function isSubagentSpinnerName(value) {
11
+ return typeof value == "string" && SUBAGENT_SPINNER_NAMES.includes(value);
12
+ }
13
+
14
+ export {
15
+ SUBAGENT_SPINNER_NAMES,
16
+ DEFAULT_SUBAGENT_SPINNER,
17
+ SUBAGENT_SPINNER_LABELS,
18
+ isSubagentSpinnerName
19
+ };