@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
@@ -0,0 +1,68 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+
3
+ // packages/coding-agent/dist/core/computer-use/policy.js
4
+ var settingsListeners = /* @__PURE__ */ new Set();
5
+ function computerSettingsChanged(settings) {
6
+ for (let listener of settingsListeners)
7
+ listener(settings);
8
+ }
9
+ function onComputerSettingsChanged(listener) {
10
+ return settingsListeners.add(listener), () => {
11
+ settingsListeners.delete(listener);
12
+ };
13
+ }
14
+ var COMPUTER_TOOLS = [
15
+ "computer_load",
16
+ "computer_apps",
17
+ "computer_observe",
18
+ "computer_click",
19
+ "computer_drag",
20
+ "computer_key",
21
+ "computer_text",
22
+ "computer_window",
23
+ "computer_launch",
24
+ "computer_scroll",
25
+ "computer_end"
26
+ ];
27
+ function computerPolicy(name, input) {
28
+ if (name.startsWith("computer_"))
29
+ switch (name) {
30
+ case "computer_load":
31
+ case "computer_apps":
32
+ case "computer_observe":
33
+ case "computer_end":
34
+ return { observation: !0, foreground: !1 };
35
+ case "computer_click":
36
+ case "computer_drag":
37
+ case "computer_key":
38
+ case "computer_text":
39
+ case "computer_scroll":
40
+ return { observation: !1, foreground: input.foreground === !0 || input.desktop === !0 };
41
+ case "computer_window":
42
+ case "computer_launch":
43
+ return { observation: !1, foreground: !0 };
44
+ default:
45
+ throw new Error(`Unknown computer operation: ${name}`);
46
+ }
47
+ }
48
+ function computerRefusal(name, input, policy) {
49
+ let operation = computerPolicy(name, input);
50
+ if (!operation)
51
+ return "Unknown computer operation.";
52
+ if (policy.child)
53
+ return "Computer tools are available only to main agents.";
54
+ if (!policy.enabled)
55
+ return "Computer use is disabled in settings.";
56
+ if (operation.foreground && !policy.foreground)
57
+ return "Foreground control is disabled. Use background operations.";
58
+ if (!policy.vision && name !== "computer_end")
59
+ return "Image-only computer use requires an image-capable model. Select one before loading computer tools.";
60
+ }
61
+
62
+ export {
63
+ computerSettingsChanged,
64
+ onComputerSettingsChanged,
65
+ COMPUTER_TOOLS,
66
+ computerPolicy,
67
+ computerRefusal
68
+ };
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  buildSessionContext,
7
7
  sessionEntryToContextMessages
8
- } from "./chunk-PBC2Y6GS.js";
8
+ } from "./chunk-6UB6NKA3.js";
9
9
  import {
10
10
  convertToLlm,
11
11
  createBranchSummaryMessage,
@@ -0,0 +1,308 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+
3
+ // node_modules/unicode-animations/dist/chunk-F2BWZODB.js
4
+ var BRAILLE_DOT_MAP = [
5
+ [1, 8],
6
+ // row 0
7
+ [2, 16],
8
+ // row 1
9
+ [4, 32],
10
+ // row 2
11
+ [64, 128]
12
+ // row 3
13
+ ];
14
+ function gridToBraille(grid) {
15
+ let rows = grid.length, cols = grid[0] ? grid[0].length : 0, charCount = Math.ceil(cols / 2), result = "";
16
+ for (let c = 0; c < charCount; c++) {
17
+ let code = 10240;
18
+ for (let r = 0; r < 4 && r < rows; r++)
19
+ for (let d = 0; d < 2; d++) {
20
+ let col = c * 2 + d;
21
+ col < cols && grid[r] && grid[r][col] && (code |= BRAILLE_DOT_MAP[r][d]);
22
+ }
23
+ result += String.fromCodePoint(code);
24
+ }
25
+ return result;
26
+ }
27
+ function makeGrid(rows, cols) {
28
+ return rows <= 0 || cols <= 0 ? [] : Array.from({ length: rows }, () => Array(cols).fill(!1));
29
+ }
30
+ function genScan() {
31
+ let frames = [];
32
+ for (let pos = -1; pos < 9; pos++) {
33
+ let g = makeGrid(4, 8);
34
+ for (let r = 0; r < 4; r++)
35
+ for (let c = 0; c < 8; c++)
36
+ (c === pos || c === pos - 1) && (g[r][c] = !0);
37
+ frames.push(gridToBraille(g));
38
+ }
39
+ return frames;
40
+ }
41
+ function genRain() {
42
+ let frames = [], offsets = [0, 3, 1, 5, 2, 7, 4, 6];
43
+ for (let f = 0; f < 12; f++) {
44
+ let g = makeGrid(4, 8);
45
+ for (let c = 0; c < 8; c++) {
46
+ let row = (f + offsets[c]) % 6;
47
+ row < 4 && (g[row][c] = !0);
48
+ }
49
+ frames.push(gridToBraille(g));
50
+ }
51
+ return frames;
52
+ }
53
+ function genScanLine() {
54
+ let frames = [], positions = [0, 1, 2, 3, 2, 1];
55
+ for (let row of positions) {
56
+ let g = makeGrid(4, 6);
57
+ for (let c = 0; c < 6; c++)
58
+ g[row][c] = !0, row > 0 && (g[row - 1][c] = c % 2 === 0);
59
+ frames.push(gridToBraille(g));
60
+ }
61
+ return frames;
62
+ }
63
+ function genPulse() {
64
+ let frames = [], radii = [0.5, 1.2, 2, 3, 3.5];
65
+ for (let r of radii) {
66
+ let g = makeGrid(4, 6);
67
+ for (let row = 0; row < 4; row++)
68
+ for (let col = 0; col < 6; col++) {
69
+ let dist = Math.sqrt((col - 2.5) ** 2 + (row - 1.5) ** 2);
70
+ Math.abs(dist - r) < 0.9 && (g[row][col] = !0);
71
+ }
72
+ frames.push(gridToBraille(g));
73
+ }
74
+ return frames;
75
+ }
76
+ function genSnake() {
77
+ let path = [];
78
+ for (let r = 0; r < 4; r++)
79
+ if (r % 2 === 0)
80
+ for (let c = 0; c < 4; c++) path.push([r, c]);
81
+ else
82
+ for (let c = 3; c >= 0; c--) path.push([r, c]);
83
+ let frames = [];
84
+ for (let i = 0; i < path.length; i++) {
85
+ let g = makeGrid(4, 4);
86
+ for (let t = 0; t < 4; t++) {
87
+ let idx = (i - t + path.length) % path.length;
88
+ g[path[idx][0]][path[idx][1]] = !0;
89
+ }
90
+ frames.push(gridToBraille(g));
91
+ }
92
+ return frames;
93
+ }
94
+ function genSparkle() {
95
+ let patterns = [
96
+ [1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0],
97
+ [0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0],
98
+ [0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1],
99
+ [1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0],
100
+ [0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1],
101
+ [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]
102
+ ], W = 8, H = 4, frames = [];
103
+ for (let pat of patterns) {
104
+ let g = makeGrid(H, W);
105
+ for (let r = 0; r < H; r++)
106
+ for (let c = 0; c < W; c++)
107
+ g[r][c] = !!pat[r * W + c];
108
+ frames.push(gridToBraille(g));
109
+ }
110
+ return frames;
111
+ }
112
+ function genCascade() {
113
+ let frames = [];
114
+ for (let offset = -2; offset < 12; offset++) {
115
+ let g = makeGrid(4, 8);
116
+ for (let r = 0; r < 4; r++)
117
+ for (let c = 0; c < 8; c++) {
118
+ let diag = c + r;
119
+ (diag === offset || diag === offset - 1) && (g[r][c] = !0);
120
+ }
121
+ frames.push(gridToBraille(g));
122
+ }
123
+ return frames;
124
+ }
125
+ function genColumns() {
126
+ let frames = [];
127
+ for (let col = 0; col < 6; col++)
128
+ for (let fillTo = 3; fillTo >= 0; fillTo--) {
129
+ let g = makeGrid(4, 6);
130
+ for (let pc = 0; pc < col; pc++)
131
+ for (let r = 0; r < 4; r++) g[r][pc] = !0;
132
+ for (let r = fillTo; r < 4; r++) g[r][col] = !0;
133
+ frames.push(gridToBraille(g));
134
+ }
135
+ let full = makeGrid(4, 6);
136
+ for (let r = 0; r < 4; r++) for (let c = 0; c < 6; c++) full[r][c] = !0;
137
+ return frames.push(gridToBraille(full)), frames.push(gridToBraille(makeGrid(4, 6))), frames;
138
+ }
139
+ function genOrbit() {
140
+ let path = [
141
+ [0, 0],
142
+ [0, 1],
143
+ [1, 1],
144
+ [2, 1],
145
+ [3, 1],
146
+ [3, 0],
147
+ [2, 0],
148
+ [1, 0]
149
+ ], frames = [];
150
+ for (let i = 0; i < path.length; i++) {
151
+ let g = makeGrid(4, 2);
152
+ g[path[i][0]][path[i][1]] = !0;
153
+ let t1 = (i - 1 + path.length) % path.length;
154
+ g[path[t1][0]][path[t1][1]] = !0, frames.push(gridToBraille(g));
155
+ }
156
+ return frames;
157
+ }
158
+ function genBreathe() {
159
+ let stages = [
160
+ [],
161
+ [[1, 0]],
162
+ [[0, 1], [2, 0]],
163
+ [[0, 0], [1, 1], [3, 0]],
164
+ [[0, 0], [1, 1], [2, 0], [3, 1]],
165
+ [[0, 0], [0, 1], [1, 1], [2, 0], [3, 1]],
166
+ [[0, 0], [0, 1], [1, 0], [2, 1], [3, 0], [3, 1]],
167
+ [[0, 0], [0, 1], [1, 0], [1, 1], [2, 0], [3, 0], [3, 1]],
168
+ [[0, 0], [0, 1], [1, 0], [1, 1], [2, 0], [2, 1], [3, 0], [3, 1]]
169
+ ], frames = [], sequence = [...stages, ...stages.slice().reverse().slice(1)];
170
+ for (let dots of sequence) {
171
+ let g = makeGrid(4, 2);
172
+ for (let [r, c] of dots) g[r][c] = !0;
173
+ frames.push(gridToBraille(g));
174
+ }
175
+ return frames;
176
+ }
177
+ function genWaveRows() {
178
+ let frames = [];
179
+ for (let f = 0; f < 16; f++) {
180
+ let g = makeGrid(4, 8);
181
+ for (let c = 0; c < 8; c++) {
182
+ let phase = f - c * 0.5, row = Math.round((Math.sin(phase * 0.8) + 1) / 2 * 3);
183
+ g[row][c] = !0, row > 0 && (g[row - 1][c] = (f + c) % 3 === 0);
184
+ }
185
+ frames.push(gridToBraille(g));
186
+ }
187
+ return frames;
188
+ }
189
+ function genCheckerboard() {
190
+ let frames = [];
191
+ for (let phase = 0; phase < 4; phase++) {
192
+ let g = makeGrid(4, 6);
193
+ for (let r = 0; r < 4; r++)
194
+ for (let c = 0; c < 6; c++)
195
+ phase < 2 ? g[r][c] = (r + c + phase) % 2 === 0 : g[r][c] = (r + c + phase) % 3 === 0;
196
+ frames.push(gridToBraille(g));
197
+ }
198
+ return frames;
199
+ }
200
+ function genHelix() {
201
+ let frames = [];
202
+ for (let f = 0; f < 16; f++) {
203
+ let g = makeGrid(4, 8);
204
+ for (let c = 0; c < 8; c++) {
205
+ let phase = (f + c) * (Math.PI / 4), y1 = Math.round((Math.sin(phase) + 1) / 2 * 3), y2 = Math.round((Math.sin(phase + Math.PI) + 1) / 2 * 3);
206
+ g[y1][c] = !0, g[y2][c] = !0;
207
+ }
208
+ frames.push(gridToBraille(g));
209
+ }
210
+ return frames;
211
+ }
212
+ function genFillSweep() {
213
+ let frames = [];
214
+ for (let row = 3; row >= 0; row--) {
215
+ let g = makeGrid(4, 4);
216
+ for (let r = row; r < 4; r++)
217
+ for (let c = 0; c < 4; c++) g[r][c] = !0;
218
+ frames.push(gridToBraille(g));
219
+ }
220
+ let full = makeGrid(4, 4);
221
+ for (let r = 0; r < 4; r++) for (let c = 0; c < 4; c++) full[r][c] = !0;
222
+ frames.push(gridToBraille(full)), frames.push(gridToBraille(full));
223
+ for (let row = 0; row < 4; row++) {
224
+ let g = makeGrid(4, 4);
225
+ for (let r = row + 1; r < 4; r++)
226
+ for (let c = 0; c < 4; c++) g[r][c] = !0;
227
+ frames.push(gridToBraille(g));
228
+ }
229
+ return frames.push(gridToBraille(makeGrid(4, 4))), frames;
230
+ }
231
+ function genDiagonalSwipe() {
232
+ let frames = [];
233
+ for (let d = 0; d <= 6; d++) {
234
+ let g = makeGrid(4, 4);
235
+ for (let r = 0; r < 4; r++)
236
+ for (let c = 0; c < 4; c++)
237
+ r + c <= d && (g[r][c] = !0);
238
+ frames.push(gridToBraille(g));
239
+ }
240
+ let full = makeGrid(4, 4);
241
+ for (let r = 0; r < 4; r++) for (let c = 0; c < 4; c++) full[r][c] = !0;
242
+ frames.push(gridToBraille(full));
243
+ for (let d = 0; d <= 6; d++) {
244
+ let g = makeGrid(4, 4);
245
+ for (let r = 0; r < 4; r++)
246
+ for (let c = 0; c < 4; c++)
247
+ r + c > d && (g[r][c] = !0);
248
+ frames.push(gridToBraille(g));
249
+ }
250
+ return frames.push(gridToBraille(makeGrid(4, 4))), frames;
251
+ }
252
+ var spinners = {
253
+ // === Classic braille single-char ===
254
+ braille: {
255
+ frames: ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"],
256
+ interval: 80
257
+ },
258
+ braillewave: {
259
+ frames: [
260
+ "\u2801\u2802\u2804\u2840",
261
+ "\u2802\u2804\u2840\u2880",
262
+ "\u2804\u2840\u2880\u2820",
263
+ "\u2840\u2880\u2820\u2810",
264
+ "\u2880\u2820\u2810\u2808",
265
+ "\u2820\u2810\u2808\u2801",
266
+ "\u2810\u2808\u2801\u2802",
267
+ "\u2808\u2801\u2802\u2804"
268
+ ],
269
+ interval: 100
270
+ },
271
+ dna: {
272
+ frames: [
273
+ "\u280B\u2809\u2819\u281A",
274
+ "\u2809\u2819\u281A\u2812",
275
+ "\u2819\u281A\u2812\u2802",
276
+ "\u281A\u2812\u2802\u2802",
277
+ "\u2812\u2802\u2802\u2812",
278
+ "\u2802\u2802\u2812\u2832",
279
+ "\u2802\u2812\u2832\u2834",
280
+ "\u2812\u2832\u2834\u2824",
281
+ "\u2832\u2834\u2824\u2804",
282
+ "\u2834\u2824\u2804\u280B",
283
+ "\u2824\u2804\u280B\u2809",
284
+ "\u2804\u280B\u2809\u2819"
285
+ ],
286
+ interval: 80
287
+ },
288
+ // === Generated braille grid animations ===
289
+ scan: { frames: genScan(), interval: 70 },
290
+ rain: { frames: genRain(), interval: 100 },
291
+ scanline: { frames: genScanLine(), interval: 120 },
292
+ pulse: { frames: genPulse(), interval: 180 },
293
+ snake: { frames: genSnake(), interval: 80 },
294
+ sparkle: { frames: genSparkle(), interval: 150 },
295
+ cascade: { frames: genCascade(), interval: 60 },
296
+ columns: { frames: genColumns(), interval: 60 },
297
+ orbit: { frames: genOrbit(), interval: 100 },
298
+ breathe: { frames: genBreathe(), interval: 100 },
299
+ waverows: { frames: genWaveRows(), interval: 90 },
300
+ checkerboard: { frames: genCheckerboard(), interval: 250 },
301
+ helix: { frames: genHelix(), interval: 80 },
302
+ fillsweep: { frames: genFillSweep(), interval: 100 },
303
+ diagswipe: { frames: genDiagonalSwipe(), interval: 60 }
304
+ };
305
+
306
+ export {
307
+ spinners
308
+ };
@@ -73,12 +73,13 @@ function migrateSessionEntries(entries) {
73
73
  function parseSessionEntries(content) {
74
74
  let entries = [], lines = content.trim().split(`
75
75
  `);
76
- for (let [index, line] of lines.entries()) {
77
- if (!line.trim())
78
- continue;
79
- let entry = parseSessionEntryLine(line, `line ${index + 1}`);
80
- entry && entries.push(entry);
81
- }
76
+ for (let line of lines)
77
+ if (line.trim())
78
+ try {
79
+ let entry = JSON.parse(line);
80
+ entries.push(entry);
81
+ } catch {
82
+ }
82
83
  return entries;
83
84
  }
84
85
  function getLatestCompactionEntry(entries) {
@@ -87,40 +88,13 @@ function getLatestCompactionEntry(entries) {
87
88
  return entries[i];
88
89
  return null;
89
90
  }
90
- function validateSessionGraph(entries) {
91
+ function buildEntryIndex(entries, byId) {
92
+ if (byId)
93
+ return byId;
91
94
  let index = /* @__PURE__ */ new Map();
92
- for (let entry of entries) {
93
- if (typeof entry.id != "string" || !entry.id)
94
- throw new Error("Session graph is corrupt: every entry must have a non-empty id");
95
- if (index.has(entry.id))
96
- throw new Error(`Session graph is corrupt: duplicate entry id "${entry.id}"`);
95
+ for (let entry of entries)
97
96
  index.set(entry.id, entry);
98
- }
99
- for (let entry of entries) {
100
- if (entry.parentId === entry.id)
101
- throw new Error(`Session graph is corrupt: entry "${entry.id}" links to itself`);
102
- if (entry.parentId !== null && !index.has(entry.parentId))
103
- throw new Error(`Session graph is corrupt: entry "${entry.id}" has missing parent "${entry.parentId}"`);
104
- }
105
- let complete = /* @__PURE__ */ new Set();
106
- for (let entry of entries) {
107
- if (complete.has(entry.id))
108
- continue;
109
- let path = [], positions = /* @__PURE__ */ new Map(), current = entry;
110
- for (; current && !complete.has(current.id); ) {
111
- let position = positions.get(current.id);
112
- if (position !== void 0) {
113
- let cycle = [...path.slice(position), current.id].join(" -> ");
114
- throw new Error(`Session graph is corrupt: parent cycle detected (${cycle})`);
115
- }
116
- positions.set(current.id, path.length), path.push(current.id), current = current.parentId === null ? void 0 : index.get(current.parentId);
117
- }
118
- for (let id of path)
119
- complete.add(id);
120
- }
121
- }
122
- function buildEntryIndex(entries, byId) {
123
- return byId || (validateSessionGraph(entries), new Map(entries.map((entry) => [entry.id, entry])));
97
+ return index;
124
98
  }
125
99
  function buildSessionPath(entries, leafId, byId) {
126
100
  let index = buildEntryIndex(entries, byId), leaf;
@@ -128,14 +102,9 @@ function buildSessionPath(entries, leafId, byId) {
128
102
  return [];
129
103
  if (leafId && (leaf = index.get(leafId)), leaf ??= entries[entries.length - 1], !leaf)
130
104
  return [];
131
- let path = [], visited = /* @__PURE__ */ new Set(), current = leaf;
132
- for (; current; ) {
133
- if (visited.has(current.id))
134
- throw new Error(`Session graph is corrupt: parent cycle detected at entry "${current.id}"`);
135
- if (visited.add(current.id), path.push(current), current.parentId && !index.has(current.parentId))
136
- throw new Error(`Session graph is corrupt: entry "${current.id}" has missing parent "${current.parentId}"`);
137
- current = current.parentId ? index.get(current.parentId) : void 0;
138
- }
105
+ let path = [], current = leaf;
106
+ for (; current; )
107
+ path.push(current), current = current.parentId ? index.get(current.parentId) : void 0;
139
108
  return path.reverse(), path;
140
109
  }
141
110
  function getSessionContextSettings(path) {
@@ -182,14 +151,13 @@ function getDefaultSessionDir(cwd, agentDir = getAgentDir()) {
182
151
  return existsSync(sessionDir) || mkdirSync(sessionDir, { recursive: !0 }), sessionDir;
183
152
  }
184
153
  var SESSION_READ_BUFFER_SIZE = 1024 * 1024;
185
- function parseSessionEntryLine(line, location) {
186
- let trimmed = line.replace(/\u0000/g, "").trim();
187
- if (!trimmed)
154
+ function parseSessionEntryLine(line) {
155
+ if (!line.trim())
188
156
  return null;
189
157
  try {
190
- return JSON.parse(trimmed);
158
+ return JSON.parse(line);
191
159
  } catch {
192
- throw new Error(location ? `Malformed session line ${location}` : "Malformed session line");
160
+ return null;
193
161
  }
194
162
  }
195
163
  function loadEntriesFromFile(filePath) {
@@ -198,7 +166,7 @@ function loadEntriesFromFile(filePath) {
198
166
  return [];
199
167
  let entries = [], fd = openSync(resolvedFilePath, "r");
200
168
  try {
201
- let decoder = new StringDecoder("utf8"), buffer = Buffer.allocUnsafe(SESSION_READ_BUFFER_SIZE), pending = "", lineNumber = 0;
169
+ let decoder = new StringDecoder("utf8"), buffer = Buffer.allocUnsafe(SESSION_READ_BUFFER_SIZE), pending = "";
202
170
  for (; ; ) {
203
171
  let bytesRead = readSync(fd, buffer, 0, buffer.length, null);
204
172
  if (bytesRead === 0)
@@ -207,18 +175,15 @@ function loadEntriesFromFile(filePath) {
207
175
  let lineStart = 0, newlineIndex = pending.indexOf(`
208
176
  `, lineStart);
209
177
  for (; newlineIndex !== -1; ) {
210
- lineNumber++;
211
- let entry = parseSessionEntryLine(pending.slice(lineStart, newlineIndex), `in ${resolvedFilePath}:${lineNumber}`);
178
+ let entry = parseSessionEntryLine(pending.slice(lineStart, newlineIndex));
212
179
  entry && entries.push(entry), lineStart = newlineIndex + 1, newlineIndex = pending.indexOf(`
213
180
  `, lineStart);
214
181
  }
215
182
  pending = pending.slice(lineStart);
216
183
  }
217
- if (pending += decoder.end(), pending.trim()) {
218
- lineNumber++;
219
- let finalEntry = parseSessionEntryLine(pending, `in ${resolvedFilePath}:${lineNumber}`);
220
- finalEntry && entries.push(finalEntry);
221
- }
184
+ pending += decoder.end();
185
+ let finalEntry = parseSessionEntryLine(pending);
186
+ finalEntry && entries.push(finalEntry);
222
187
  } finally {
223
188
  closeSync(fd);
224
189
  }
@@ -381,9 +346,7 @@ var SessionManager = class _SessionManager {
381
346
  return;
382
347
  }
383
348
  let header = this.fileEntries.find((e) => e.type === "session");
384
- if (!header)
385
- throw new Error(`Session file is not a valid pi session: ${this.sessionFile}`);
386
- this.sessionId = header.id, migrateToCurrentVersion(this.fileEntries) && this._rewriteFile(), this._buildIndex(), this.flushed = !0;
349
+ this.sessionId = header?.id ?? createSessionId(), migrateToCurrentVersion(this.fileEntries) && this._rewriteFile(), this._buildIndex(), this.flushed = !0;
387
350
  } else {
388
351
  let explicitPath = this.sessionFile;
389
352
  this.newSession(), this.sessionFile = explicitPath;
@@ -406,7 +369,7 @@ var SessionManager = class _SessionManager {
406
369
  return this.sessionFile;
407
370
  }
408
371
  _buildIndex() {
409
- validateSessionGraph(this.fileEntries.filter((entry) => entry.type !== "session")), this.byId.clear(), this.labelsById.clear(), this.labelTimestampsById.clear(), this.leafId = null;
372
+ this.byId.clear(), this.labelsById.clear(), this.labelTimestampsById.clear(), this.leafId = null;
410
373
  for (let entry of this.fileEntries)
411
374
  entry.type !== "session" && (this.byId.set(entry.id, entry), this.leafId = entry.id, entry.type === "label" && (entry.label ? (this.labelsById.set(entry.targetId, entry.label), this.labelTimestampsById.set(entry.targetId, entry.timestamp)) : (this.labelsById.delete(entry.targetId), this.labelTimestampsById.delete(entry.targetId))));
412
375
  }
@@ -624,14 +587,9 @@ var SessionManager = class _SessionManager {
624
587
  * Use buildSessionContext() to get the resolved messages for the LLM.
625
588
  */
626
589
  getBranch(fromId) {
627
- let path = [], visited = /* @__PURE__ */ new Set(), startId = fromId ?? this.leafId, current = startId ? this.byId.get(startId) : void 0;
628
- for (; current; ) {
629
- if (visited.has(current.id))
630
- throw new Error(`Session graph is corrupt: parent cycle detected at entry "${current.id}"`);
631
- if (visited.add(current.id), path.push(current), current.parentId && !this.byId.has(current.parentId))
632
- throw new Error(`Session graph is corrupt: entry "${current.id}" has missing parent "${current.parentId}"`);
633
- current = current.parentId ? this.byId.get(current.parentId) : void 0;
634
- }
590
+ let path = [], startId = fromId ?? this.leafId, current = startId ? this.byId.get(startId) : void 0;
591
+ for (; current; )
592
+ path.push(current), current = current.parentId ? this.byId.get(current.parentId) : void 0;
635
593
  return path.reverse(), path;
636
594
  }
637
595
  /**
@@ -892,7 +850,6 @@ export {
892
850
  migrateSessionEntries,
893
851
  parseSessionEntries,
894
852
  getLatestCompactionEntry,
895
- validateSessionGraph,
896
853
  sessionEntryToContextMessages,
897
854
  buildContextEntries,
898
855
  buildSessionContext,
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
2
  import {
3
3
  estimateTokens
4
- } from "./chunk-TQNSPERU.js";
4
+ } from "./chunk-5SQDLSZJ.js";
5
5
 
6
6
  // packages/coding-agent/dist/core/context-breakdown.js
7
7
  var CHARS_PER_TOKEN = 4, PROJECT_CONTEXT_RE = /<project_context>[\s\S]*?<\/project_context>/, PROJECT_INSTRUCTIONS_RE = /<project_instructions(?:\s+path="([^"]*)")?>([\s\S]*?)<\/project_instructions>/g, SKILLS_BLOCK_RE = /\n\nThe following skills provide specialized instructions for specific tasks\.[\s\S]*<\/available_skills>/;
@@ -0,0 +1,60 @@
1
+ import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
2
+ import {
3
+ spinners
4
+ } from "./chunk-5ZH3ZFIZ.js";
5
+
6
+ // packages/coding-agent/dist/core/subagent-cancellation.js
7
+ var key = /* @__PURE__ */ Symbol.for("@lunr/subagent-cancellation"), store = globalThis, handlers = store[key] ?? /* @__PURE__ */ new Map();
8
+ store[key] = handlers;
9
+ function registerSubagentCancellation(sessionId, handler) {
10
+ return handlers.set(sessionId, handler), () => {
11
+ handlers.get(sessionId) === handler && handlers.delete(sessionId);
12
+ };
13
+ }
14
+ function getSubagentCancellation(sessionId) {
15
+ return handlers.get(sessionId);
16
+ }
17
+ function createSubagentCancellation(options) {
18
+ let stopping;
19
+ return {
20
+ hasActiveRuns: () => options.isCurrent() && (options.pendingLaunches.size > 0 || options.getActiveRunIds().length > 0),
21
+ stop() {
22
+ return stopping || (stopping = (async () => {
23
+ if (await Promise.allSettled([...options.pendingLaunches]), !options.isCurrent())
24
+ return { requested: 0, failed: 0 };
25
+ let results = await Promise.allSettled(options.getActiveRunIds().map((id) => options.stopRun(id)));
26
+ return {
27
+ requested: results.filter((result) => result.status === "fulfilled" && result.value).length,
28
+ failed: results.filter((result) => result.status === "rejected" || !result.value).length
29
+ };
30
+ })().finally(() => {
31
+ stopping = void 0;
32
+ }), stopping);
33
+ }
34
+ };
35
+ }
36
+ var SubagentEscapeSequence = class {
37
+ sessionId;
38
+ firstPress;
39
+ press(sessionId, active, now = Date.now()) {
40
+ if (!active) {
41
+ this.firstPress = void 0, this.sessionId = void 0;
42
+ return;
43
+ }
44
+ let second = this.sessionId === sessionId && this.firstPress !== void 0 && now - this.firstPress < 500;
45
+ return this.sessionId = sessionId, this.firstPress = second ? void 0 : now, second ? "children" : "parent";
46
+ }
47
+ };
48
+
49
+ // packages/coding-agent/dist/core/subagent-spinner.js
50
+ function getSubagentSpinnerDefinition(name) {
51
+ return spinners[name];
52
+ }
53
+
54
+ export {
55
+ registerSubagentCancellation,
56
+ getSubagentCancellation,
57
+ createSubagentCancellation,
58
+ SubagentEscapeSequence,
59
+ getSubagentSpinnerDefinition
60
+ };