pulseed 0.6.3 → 0.6.4

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 (509) hide show
  1. package/dist/adapters/datasources/artifact-metric-datasource.d.ts +11 -1
  2. package/dist/adapters/datasources/artifact-metric-datasource.d.ts.map +1 -1
  3. package/dist/adapters/datasources/artifact-metric-datasource.js +238 -8
  4. package/dist/adapters/datasources/artifact-metric-datasource.js.map +1 -1
  5. package/dist/base/config/global-config.d.ts +4 -4
  6. package/dist/base/protocol/exact-protocol.d.ts +47 -0
  7. package/dist/base/protocol/exact-protocol.d.ts.map +1 -0
  8. package/dist/base/protocol/exact-protocol.js +175 -0
  9. package/dist/base/protocol/exact-protocol.js.map +1 -0
  10. package/dist/base/types/core.d.ts +1 -1
  11. package/dist/base/types/core.d.ts.map +1 -1
  12. package/dist/base/types/core.js +1 -0
  13. package/dist/base/types/core.js.map +1 -1
  14. package/dist/base/utils/workspace-path.d.ts +6 -0
  15. package/dist/base/utils/workspace-path.d.ts.map +1 -0
  16. package/dist/base/utils/workspace-path.js +24 -0
  17. package/dist/base/utils/workspace-path.js.map +1 -0
  18. package/dist/index.d.ts +4 -0
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +2 -0
  21. package/dist/index.js.map +1 -1
  22. package/dist/interface/chat/chat-event-state.d.ts +2 -0
  23. package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
  24. package/dist/interface/chat/chat-event-state.js +22 -41
  25. package/dist/interface/chat/chat-event-state.js.map +1 -1
  26. package/dist/interface/chat/chat-events.d.ts +15 -1
  27. package/dist/interface/chat/chat-events.d.ts.map +1 -1
  28. package/dist/interface/chat/chat-history.d.ts +3816 -192
  29. package/dist/interface/chat/chat-history.d.ts.map +1 -1
  30. package/dist/interface/chat/chat-history.js +529 -5
  31. package/dist/interface/chat/chat-history.js.map +1 -1
  32. package/dist/interface/chat/chat-runner-commands.d.ts.map +1 -1
  33. package/dist/interface/chat/chat-runner-commands.js +22 -18
  34. package/dist/interface/chat/chat-runner-commands.js.map +1 -1
  35. package/dist/interface/chat/chat-runner-contracts.d.ts +5 -1
  36. package/dist/interface/chat/chat-runner-contracts.d.ts.map +1 -1
  37. package/dist/interface/chat/chat-runner-event-bridge.d.ts +13 -1
  38. package/dist/interface/chat/chat-runner-event-bridge.d.ts.map +1 -1
  39. package/dist/interface/chat/chat-runner-event-bridge.js +51 -3
  40. package/dist/interface/chat/chat-runner-event-bridge.js.map +1 -1
  41. package/dist/interface/chat/chat-runner-routes.d.ts +5 -17
  42. package/dist/interface/chat/chat-runner-routes.d.ts.map +1 -1
  43. package/dist/interface/chat/chat-runner-routes.js +80 -51
  44. package/dist/interface/chat/chat-runner-routes.js.map +1 -1
  45. package/dist/interface/chat/chat-runner-runtime.d.ts.map +1 -1
  46. package/dist/interface/chat/chat-runner-runtime.js +4 -0
  47. package/dist/interface/chat/chat-runner-runtime.js.map +1 -1
  48. package/dist/interface/chat/chat-runner.d.ts +7 -1
  49. package/dist/interface/chat/chat-runner.d.ts.map +1 -1
  50. package/dist/interface/chat/chat-runner.js +135 -49
  51. package/dist/interface/chat/chat-runner.js.map +1 -1
  52. package/dist/interface/chat/chat-session-store.d.ts +3 -0
  53. package/dist/interface/chat/chat-session-store.d.ts.map +1 -1
  54. package/dist/interface/chat/chat-session-store.js +12 -0
  55. package/dist/interface/chat/chat-session-store.js.map +1 -1
  56. package/dist/interface/chat/cross-platform-session.d.ts +15 -0
  57. package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
  58. package/dist/interface/chat/cross-platform-session.js +260 -42
  59. package/dist/interface/chat/cross-platform-session.js.map +1 -1
  60. package/dist/interface/chat/failure-recovery.d.ts.map +1 -1
  61. package/dist/interface/chat/failure-recovery.js +15 -1
  62. package/dist/interface/chat/failure-recovery.js.map +1 -1
  63. package/dist/interface/chat/freeform-route-classifier.d.ts +2 -2
  64. package/dist/interface/chat/ingress-router.d.ts +3 -0
  65. package/dist/interface/chat/ingress-router.d.ts.map +1 -1
  66. package/dist/interface/chat/ingress-router.js +3 -0
  67. package/dist/interface/chat/ingress-router.js.map +1 -1
  68. package/dist/interface/chat/model-request-builder.d.ts +37 -0
  69. package/dist/interface/chat/model-request-builder.d.ts.map +1 -0
  70. package/dist/interface/chat/model-request-builder.js +76 -0
  71. package/dist/interface/chat/model-request-builder.js.map +1 -0
  72. package/dist/interface/chat/turn-context.d.ts +200 -0
  73. package/dist/interface/chat/turn-context.d.ts.map +1 -0
  74. package/dist/interface/chat/turn-context.js +249 -0
  75. package/dist/interface/chat/turn-context.js.map +1 -0
  76. package/dist/interface/chat/turn-protocol.d.ts +35 -0
  77. package/dist/interface/chat/turn-protocol.d.ts.map +1 -0
  78. package/dist/interface/chat/turn-protocol.js +27 -0
  79. package/dist/interface/chat/turn-protocol.js.map +1 -0
  80. package/dist/interface/chat/user-input.d.ts +55 -0
  81. package/dist/interface/chat/user-input.d.ts.map +1 -0
  82. package/dist/interface/chat/user-input.js +52 -0
  83. package/dist/interface/chat/user-input.js.map +1 -0
  84. package/dist/interface/cli/cli-command-registry.d.ts +1 -1
  85. package/dist/interface/cli/cli-command-registry.d.ts.map +1 -1
  86. package/dist/interface/cli/cli-command-registry.js +12 -16
  87. package/dist/interface/cli/cli-command-registry.js.map +1 -1
  88. package/dist/interface/cli/commands/daemon-shared.d.ts +8 -0
  89. package/dist/interface/cli/commands/daemon-shared.d.ts.map +1 -1
  90. package/dist/interface/cli/commands/daemon-shared.js +18 -2
  91. package/dist/interface/cli/commands/daemon-shared.js.map +1 -1
  92. package/dist/interface/cli/commands/daemon.d.ts.map +1 -1
  93. package/dist/interface/cli/commands/daemon.js +5 -1
  94. package/dist/interface/cli/commands/daemon.js.map +1 -1
  95. package/dist/interface/cli/commands/doctor.d.ts.map +1 -1
  96. package/dist/interface/cli/commands/doctor.js +14 -1
  97. package/dist/interface/cli/commands/doctor.js.map +1 -1
  98. package/dist/interface/cli/commands/goal-dispatch.d.ts.map +1 -1
  99. package/dist/interface/cli/commands/goal-dispatch.js +10 -6
  100. package/dist/interface/cli/commands/goal-dispatch.js.map +1 -1
  101. package/dist/interface/cli/commands/goal-utils.d.ts.map +1 -1
  102. package/dist/interface/cli/commands/goal-utils.js +3 -5
  103. package/dist/interface/cli/commands/goal-utils.js.map +1 -1
  104. package/dist/interface/cli/commands/run.d.ts.map +1 -1
  105. package/dist/interface/cli/commands/run.js +50 -0
  106. package/dist/interface/cli/commands/run.js.map +1 -1
  107. package/dist/interface/cli/setup.d.ts +1 -1
  108. package/dist/interface/cli/setup.d.ts.map +1 -1
  109. package/dist/interface/cli/setup.js +4 -3
  110. package/dist/interface/cli/setup.js.map +1 -1
  111. package/dist/interface/cli/utils/loop-runner.d.ts +1 -0
  112. package/dist/interface/cli/utils/loop-runner.d.ts.map +1 -1
  113. package/dist/interface/cli/utils/loop-runner.js +12 -3
  114. package/dist/interface/cli/utils/loop-runner.js.map +1 -1
  115. package/dist/interface/tui/app.d.ts +6 -1
  116. package/dist/interface/tui/app.d.ts.map +1 -1
  117. package/dist/interface/tui/app.js +29 -12
  118. package/dist/interface/tui/app.js.map +1 -1
  119. package/dist/interface/tui/bash-mode.d.ts.map +1 -1
  120. package/dist/interface/tui/bash-mode.js +2 -9
  121. package/dist/interface/tui/bash-mode.js.map +1 -1
  122. package/dist/interface/tui/chat/viewport.d.ts.map +1 -1
  123. package/dist/interface/tui/chat/viewport.js +57 -11
  124. package/dist/interface/tui/chat/viewport.js.map +1 -1
  125. package/dist/interface/tui/entry-deps.d.ts +6 -1
  126. package/dist/interface/tui/entry-deps.d.ts.map +1 -1
  127. package/dist/interface/tui/entry-deps.js +3 -0
  128. package/dist/interface/tui/entry-deps.js.map +1 -1
  129. package/dist/interface/tui/entry.d.ts.map +1 -1
  130. package/dist/interface/tui/entry.js +6 -2
  131. package/dist/interface/tui/entry.js.map +1 -1
  132. package/dist/interface/tui/input-action.d.ts.map +1 -1
  133. package/dist/interface/tui/input-action.js +3 -2
  134. package/dist/interface/tui/input-action.js.map +1 -1
  135. package/dist/interface/tui/intent-recognizer.d.ts.map +1 -1
  136. package/dist/interface/tui/intent-recognizer.js +21 -33
  137. package/dist/interface/tui/intent-recognizer.js.map +1 -1
  138. package/dist/orchestrator/execution/adapter-layer.d.ts +6 -1
  139. package/dist/orchestrator/execution/adapter-layer.d.ts.map +1 -1
  140. package/dist/orchestrator/execution/adapter-layer.js.map +1 -1
  141. package/dist/orchestrator/execution/agent-loop/agent-loop-command-classifier.d.ts +12 -1
  142. package/dist/orchestrator/execution/agent-loop/agent-loop-command-classifier.d.ts.map +1 -1
  143. package/dist/orchestrator/execution/agent-loop/agent-loop-command-classifier.js +16 -31
  144. package/dist/orchestrator/execution/agent-loop/agent-loop-command-classifier.js.map +1 -1
  145. package/dist/orchestrator/execution/agent-loop/agent-loop-compaction-record.d.ts +75 -0
  146. package/dist/orchestrator/execution/agent-loop/agent-loop-compaction-record.d.ts.map +1 -0
  147. package/dist/orchestrator/execution/agent-loop/agent-loop-compaction-record.js +10 -0
  148. package/dist/orchestrator/execution/agent-loop/agent-loop-compaction-record.js.map +1 -0
  149. package/dist/orchestrator/execution/agent-loop/agent-loop-compactor.d.ts +3 -2
  150. package/dist/orchestrator/execution/agent-loop/agent-loop-compactor.d.ts.map +1 -1
  151. package/dist/orchestrator/execution/agent-loop/agent-loop-compactor.js +185 -22
  152. package/dist/orchestrator/execution/agent-loop/agent-loop-compactor.js.map +1 -1
  153. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts.map +1 -1
  154. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js +7 -1
  155. package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js.map +1 -1
  156. package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts +8 -1
  157. package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts.map +1 -1
  158. package/dist/orchestrator/execution/agent-loop/agent-loop-events.js.map +1 -1
  159. package/dist/orchestrator/execution/agent-loop/agent-loop-history.d.ts +3 -1
  160. package/dist/orchestrator/execution/agent-loop/agent-loop-history.d.ts.map +1 -1
  161. package/dist/orchestrator/execution/agent-loop/agent-loop-history.js +12 -3
  162. package/dist/orchestrator/execution/agent-loop/agent-loop-history.js.map +1 -1
  163. package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.d.ts.map +1 -1
  164. package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.js +7 -1
  165. package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.js.map +1 -1
  166. package/dist/orchestrator/execution/agent-loop/agent-loop-model.d.ts +37 -0
  167. package/dist/orchestrator/execution/agent-loop/agent-loop-model.d.ts.map +1 -1
  168. package/dist/orchestrator/execution/agent-loop/agent-loop-model.js +21 -0
  169. package/dist/orchestrator/execution/agent-loop/agent-loop-model.js.map +1 -1
  170. package/dist/orchestrator/execution/agent-loop/agent-loop-result.d.ts +17 -11
  171. package/dist/orchestrator/execution/agent-loop/agent-loop-result.d.ts.map +1 -1
  172. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts +4 -0
  173. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts.map +1 -1
  174. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js +135 -0
  175. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js.map +1 -1
  176. package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.d.ts +3 -2
  177. package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.d.ts.map +1 -1
  178. package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.js +68 -61
  179. package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.js.map +1 -1
  180. package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.d.ts +3 -1
  181. package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.d.ts.map +1 -1
  182. package/dist/orchestrator/execution/agent-loop/agent-loop-turn-context.js.map +1 -1
  183. package/dist/orchestrator/execution/agent-loop/agent-timeline.d.ts +12 -1
  184. package/dist/orchestrator/execution/agent-loop/agent-timeline.d.ts.map +1 -1
  185. package/dist/orchestrator/execution/agent-loop/agent-timeline.js +19 -56
  186. package/dist/orchestrator/execution/agent-loop/agent-timeline.js.map +1 -1
  187. package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.d.ts.map +1 -1
  188. package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.js +8 -2
  189. package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.js.map +1 -1
  190. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts +12 -0
  191. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts.map +1 -1
  192. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js +400 -80
  193. package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js.map +1 -1
  194. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts +1 -1
  195. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts.map +1 -1
  196. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js +80 -12
  197. package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js.map +1 -1
  198. package/dist/orchestrator/execution/agent-loop/chat-display-output.d.ts +1 -0
  199. package/dist/orchestrator/execution/agent-loop/chat-display-output.d.ts.map +1 -1
  200. package/dist/orchestrator/execution/agent-loop/chat-display-output.js +3 -1
  201. package/dist/orchestrator/execution/agent-loop/chat-display-output.js.map +1 -1
  202. package/dist/orchestrator/execution/agent-loop/index.d.ts +3 -0
  203. package/dist/orchestrator/execution/agent-loop/index.d.ts.map +1 -1
  204. package/dist/orchestrator/execution/agent-loop/index.js +3 -0
  205. package/dist/orchestrator/execution/agent-loop/index.js.map +1 -1
  206. package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.d.ts +1 -0
  207. package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.d.ts.map +1 -1
  208. package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.js +51 -9
  209. package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.js.map +1 -1
  210. package/dist/orchestrator/execution/agent-loop/response-item-tool-router.d.ts +20 -0
  211. package/dist/orchestrator/execution/agent-loop/response-item-tool-router.d.ts.map +1 -0
  212. package/dist/orchestrator/execution/agent-loop/response-item-tool-router.js +180 -0
  213. package/dist/orchestrator/execution/agent-loop/response-item-tool-router.js.map +1 -0
  214. package/dist/orchestrator/execution/agent-loop/response-item.d.ts +805 -0
  215. package/dist/orchestrator/execution/agent-loop/response-item.d.ts.map +1 -0
  216. package/dist/orchestrator/execution/agent-loop/response-item.js +104 -0
  217. package/dist/orchestrator/execution/agent-loop/response-item.js.map +1 -0
  218. package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.d.ts +7 -2
  219. package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.d.ts.map +1 -1
  220. package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.js +20 -1
  221. package/dist/orchestrator/execution/agent-loop/task-agent-loop-context.js.map +1 -1
  222. package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.d.ts +5 -3
  223. package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.d.ts.map +1 -1
  224. package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.js +109 -10
  225. package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.js.map +1 -1
  226. package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.d.ts +2 -0
  227. package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.d.ts.map +1 -1
  228. package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.js +9 -4
  229. package/dist/orchestrator/execution/agent-loop/task-agent-loop-runner.js.map +1 -1
  230. package/dist/orchestrator/execution/agent-loop/task-agent-loop-verification.d.ts +0 -1
  231. package/dist/orchestrator/execution/agent-loop/task-agent-loop-verification.d.ts.map +1 -1
  232. package/dist/orchestrator/execution/agent-loop/task-agent-loop-verification.js +7 -87
  233. package/dist/orchestrator/execution/agent-loop/task-agent-loop-verification.js.map +1 -1
  234. package/dist/orchestrator/execution/agent-loop/task-agent-loop-worktree.d.ts.map +1 -1
  235. package/dist/orchestrator/execution/agent-loop/task-agent-loop-worktree.js +25 -0
  236. package/dist/orchestrator/execution/agent-loop/task-agent-loop-worktree.js.map +1 -1
  237. package/dist/orchestrator/execution/context/issue-context-fetcher.d.ts +5 -1
  238. package/dist/orchestrator/execution/context/issue-context-fetcher.d.ts.map +1 -1
  239. package/dist/orchestrator/execution/context/issue-context-fetcher.js +7 -4
  240. package/dist/orchestrator/execution/context/issue-context-fetcher.js.map +1 -1
  241. package/dist/orchestrator/execution/task/task-artifact-contract.d.ts +18 -0
  242. package/dist/orchestrator/execution/task/task-artifact-contract.d.ts.map +1 -0
  243. package/dist/orchestrator/execution/task/task-artifact-contract.js +176 -0
  244. package/dist/orchestrator/execution/task/task-artifact-contract.js.map +1 -0
  245. package/dist/orchestrator/execution/task/task-diff-capture.d.ts +14 -1
  246. package/dist/orchestrator/execution/task/task-diff-capture.d.ts.map +1 -1
  247. package/dist/orchestrator/execution/task/task-diff-capture.js +269 -17
  248. package/dist/orchestrator/execution/task/task-diff-capture.js.map +1 -1
  249. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts +1 -0
  250. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts.map +1 -1
  251. package/dist/orchestrator/execution/task/task-execution-helpers.js +76 -17
  252. package/dist/orchestrator/execution/task/task-execution-helpers.js.map +1 -1
  253. package/dist/orchestrator/execution/task/task-executor.d.ts +16 -1
  254. package/dist/orchestrator/execution/task/task-executor.d.ts.map +1 -1
  255. package/dist/orchestrator/execution/task/task-executor.js +55 -50
  256. package/dist/orchestrator/execution/task/task-executor.js.map +1 -1
  257. package/dist/orchestrator/execution/task/task-generation.d.ts +54 -1
  258. package/dist/orchestrator/execution/task/task-generation.d.ts.map +1 -1
  259. package/dist/orchestrator/execution/task/task-generation.js +19 -3
  260. package/dist/orchestrator/execution/task/task-generation.js.map +1 -1
  261. package/dist/orchestrator/execution/task/task-lifecycle-runner.d.ts +2 -2
  262. package/dist/orchestrator/execution/task/task-lifecycle-runner.d.ts.map +1 -1
  263. package/dist/orchestrator/execution/task/task-lifecycle-runner.js +31 -4
  264. package/dist/orchestrator/execution/task/task-lifecycle-runner.js.map +1 -1
  265. package/dist/orchestrator/execution/task/task-lifecycle.d.ts +3 -3
  266. package/dist/orchestrator/execution/task/task-lifecycle.d.ts.map +1 -1
  267. package/dist/orchestrator/execution/task/task-lifecycle.js +51 -10
  268. package/dist/orchestrator/execution/task/task-lifecycle.js.map +1 -1
  269. package/dist/orchestrator/execution/task/task-outcome-ledger.d.ts +8 -0
  270. package/dist/orchestrator/execution/task/task-outcome-ledger.d.ts.map +1 -1
  271. package/dist/orchestrator/execution/task/task-outcome-ledger.js +59 -3
  272. package/dist/orchestrator/execution/task/task-outcome-ledger.js.map +1 -1
  273. package/dist/orchestrator/execution/task/task-prompt-builder.d.ts +3 -1
  274. package/dist/orchestrator/execution/task/task-prompt-builder.d.ts.map +1 -1
  275. package/dist/orchestrator/execution/task/task-prompt-builder.js +23 -12
  276. package/dist/orchestrator/execution/task/task-prompt-builder.js.map +1 -1
  277. package/dist/orchestrator/execution/task/task-verifier-rules.d.ts +3 -2
  278. package/dist/orchestrator/execution/task/task-verifier-rules.d.ts.map +1 -1
  279. package/dist/orchestrator/execution/task/task-verifier-rules.js +328 -90
  280. package/dist/orchestrator/execution/task/task-verifier-rules.js.map +1 -1
  281. package/dist/orchestrator/execution/task/task-verifier-types.d.ts +13 -0
  282. package/dist/orchestrator/execution/task/task-verifier-types.d.ts.map +1 -1
  283. package/dist/orchestrator/execution/task/task-verifier-types.js.map +1 -1
  284. package/dist/orchestrator/execution/task/task-verifier.d.ts +5 -4
  285. package/dist/orchestrator/execution/task/task-verifier.d.ts.map +1 -1
  286. package/dist/orchestrator/execution/task/task-verifier.js +229 -22
  287. package/dist/orchestrator/execution/task/task-verifier.js.map +1 -1
  288. package/dist/orchestrator/execution/task/task-workspace.d.ts +5 -0
  289. package/dist/orchestrator/execution/task/task-workspace.d.ts.map +1 -1
  290. package/dist/orchestrator/execution/task/task-workspace.js +20 -10
  291. package/dist/orchestrator/execution/task/task-workspace.js.map +1 -1
  292. package/dist/orchestrator/execution/types/task-group.d.ts +76 -5
  293. package/dist/orchestrator/execution/types/task-group.d.ts.map +1 -1
  294. package/dist/orchestrator/execution/types/task.d.ts +117 -3
  295. package/dist/orchestrator/execution/types/task.d.ts.map +1 -1
  296. package/dist/orchestrator/execution/types/task.js +12 -0
  297. package/dist/orchestrator/execution/types/task.js.map +1 -1
  298. package/dist/orchestrator/loop/durable-loop/preparation.d.ts.map +1 -1
  299. package/dist/orchestrator/loop/durable-loop/preparation.js +7 -1
  300. package/dist/orchestrator/loop/durable-loop/preparation.js.map +1 -1
  301. package/dist/platform/corrections/memory-correction-ledger.d.ts +30 -30
  302. package/dist/platform/corrections/memory-governance.d.ts +2 -2
  303. package/dist/platform/knowledge/types/agent-memory.d.ts +30 -30
  304. package/dist/platform/observation/context-provider/collector.d.ts.map +1 -1
  305. package/dist/platform/observation/context-provider/collector.js +89 -24
  306. package/dist/platform/observation/context-provider/collector.js.map +1 -1
  307. package/dist/platform/observation/data-source-adapter.d.ts +2 -0
  308. package/dist/platform/observation/data-source-adapter.d.ts.map +1 -1
  309. package/dist/platform/observation/data-source-adapter.js.map +1 -1
  310. package/dist/platform/observation/observation-apply.d.ts.map +1 -1
  311. package/dist/platform/observation/observation-apply.js +8 -2
  312. package/dist/platform/observation/observation-apply.js.map +1 -1
  313. package/dist/platform/observation/observation-engine.d.ts.map +1 -1
  314. package/dist/platform/observation/observation-engine.js +118 -70
  315. package/dist/platform/observation/observation-engine.js.map +1 -1
  316. package/dist/platform/observation/observation-helpers.d.ts +2 -0
  317. package/dist/platform/observation/observation-helpers.d.ts.map +1 -1
  318. package/dist/platform/observation/observation-helpers.js.map +1 -1
  319. package/dist/platform/observation/types/data-source.d.ts +48 -0
  320. package/dist/platform/observation/types/data-source.d.ts.map +1 -1
  321. package/dist/platform/observation/types/data-source.js +4 -0
  322. package/dist/platform/observation/types/data-source.js.map +1 -1
  323. package/dist/platform/observation/workspace-context.d.ts.map +1 -1
  324. package/dist/platform/observation/workspace-context.js +13 -18
  325. package/dist/platform/observation/workspace-context.js.map +1 -1
  326. package/dist/platform/soil/contracts.d.ts +56 -56
  327. package/dist/reporting/types/report.d.ts +7 -0
  328. package/dist/reporting/types/report.d.ts.map +1 -1
  329. package/dist/runtime/approval-broker.d.ts +12 -0
  330. package/dist/runtime/approval-broker.d.ts.map +1 -1
  331. package/dist/runtime/approval-broker.js +27 -7
  332. package/dist/runtime/approval-broker.js.map +1 -1
  333. package/dist/runtime/control/daemon-runtime-control-executor.d.ts.map +1 -1
  334. package/dist/runtime/control/daemon-runtime-control-executor.js +9 -4
  335. package/dist/runtime/control/daemon-runtime-control-executor.js.map +1 -1
  336. package/dist/runtime/control/runtime-control-intent.d.ts.map +1 -1
  337. package/dist/runtime/control/runtime-control-intent.js +3 -2
  338. package/dist/runtime/control/runtime-control-intent.js.map +1 -1
  339. package/dist/runtime/control/runtime-control-service.d.ts +2 -1
  340. package/dist/runtime/control/runtime-control-service.d.ts.map +1 -1
  341. package/dist/runtime/control/runtime-control-service.js +9 -2
  342. package/dist/runtime/control/runtime-control-service.js.map +1 -1
  343. package/dist/runtime/control/runtime-target-resolver.js +2 -0
  344. package/dist/runtime/control/runtime-target-resolver.js.map +1 -1
  345. package/dist/runtime/daemon/runner-goal-cycle.d.ts.map +1 -1
  346. package/dist/runtime/daemon/runner-goal-cycle.js +1 -2
  347. package/dist/runtime/daemon/runner-goal-cycle.js.map +1 -1
  348. package/dist/runtime/daemon/runner-recovery.d.ts +17 -3
  349. package/dist/runtime/daemon/runner-recovery.d.ts.map +1 -1
  350. package/dist/runtime/daemon/runner-recovery.js +50 -12
  351. package/dist/runtime/daemon/runner-recovery.js.map +1 -1
  352. package/dist/runtime/daemon/runner-startup.d.ts.map +1 -1
  353. package/dist/runtime/daemon/runner-startup.js +18 -1
  354. package/dist/runtime/daemon/runner-startup.js.map +1 -1
  355. package/dist/runtime/daemon/runner.d.ts.map +1 -1
  356. package/dist/runtime/daemon/runner.js +3 -2
  357. package/dist/runtime/daemon/runner.js.map +1 -1
  358. package/dist/runtime/daemon/runtime-ownership.d.ts +0 -1
  359. package/dist/runtime/daemon/runtime-ownership.d.ts.map +1 -1
  360. package/dist/runtime/daemon/runtime-ownership.js +18 -18
  361. package/dist/runtime/daemon/runtime-ownership.js.map +1 -1
  362. package/dist/runtime/daemon/wait-deadline-resolver.d.ts.map +1 -1
  363. package/dist/runtime/daemon/wait-deadline-resolver.js +2 -0
  364. package/dist/runtime/daemon/wait-deadline-resolver.js.map +1 -1
  365. package/dist/runtime/evidence-answer.d.ts.map +1 -1
  366. package/dist/runtime/evidence-answer.js +34 -7
  367. package/dist/runtime/evidence-answer.js.map +1 -1
  368. package/dist/runtime/gateway/channel-adapter.d.ts +3 -0
  369. package/dist/runtime/gateway/channel-adapter.d.ts.map +1 -1
  370. package/dist/runtime/gateway/channel-display-policy.d.ts +42 -0
  371. package/dist/runtime/gateway/channel-display-policy.d.ts.map +1 -0
  372. package/dist/runtime/gateway/channel-display-policy.js +85 -0
  373. package/dist/runtime/gateway/channel-display-policy.js.map +1 -0
  374. package/dist/runtime/gateway/chat-event-rendering.d.ts +2 -1
  375. package/dist/runtime/gateway/chat-event-rendering.d.ts.map +1 -1
  376. package/dist/runtime/gateway/chat-event-rendering.js +2 -0
  377. package/dist/runtime/gateway/chat-event-rendering.js.map +1 -1
  378. package/dist/runtime/gateway/chat-session-dispatch.d.ts.map +1 -1
  379. package/dist/runtime/gateway/chat-session-dispatch.js +4 -9
  380. package/dist/runtime/gateway/chat-session-dispatch.js.map +1 -1
  381. package/dist/runtime/gateway/chat-session-port.d.ts +2 -0
  382. package/dist/runtime/gateway/chat-session-port.d.ts.map +1 -1
  383. package/dist/runtime/gateway/chat-session-port.js.map +1 -1
  384. package/dist/runtime/gateway/discord-gateway-adapter.d.ts +4 -0
  385. package/dist/runtime/gateway/discord-gateway-adapter.d.ts.map +1 -1
  386. package/dist/runtime/gateway/discord-gateway-adapter.js +100 -31
  387. package/dist/runtime/gateway/discord-gateway-adapter.js.map +1 -1
  388. package/dist/runtime/gateway/index.d.ts +4 -0
  389. package/dist/runtime/gateway/index.d.ts.map +1 -1
  390. package/dist/runtime/gateway/index.js +2 -0
  391. package/dist/runtime/gateway/index.js.map +1 -1
  392. package/dist/runtime/gateway/non-tui-display-projector.d.ts +40 -0
  393. package/dist/runtime/gateway/non-tui-display-projector.d.ts.map +1 -0
  394. package/dist/runtime/gateway/non-tui-display-projector.js +166 -0
  395. package/dist/runtime/gateway/non-tui-display-projector.js.map +1 -0
  396. package/dist/runtime/gateway/signal-gateway-adapter.d.ts +1 -0
  397. package/dist/runtime/gateway/signal-gateway-adapter.d.ts.map +1 -1
  398. package/dist/runtime/gateway/signal-gateway-adapter.js +47 -4
  399. package/dist/runtime/gateway/signal-gateway-adapter.js.map +1 -1
  400. package/dist/runtime/gateway/slack-channel-adapter.d.ts +1 -0
  401. package/dist/runtime/gateway/slack-channel-adapter.d.ts.map +1 -1
  402. package/dist/runtime/gateway/slack-channel-adapter.js +93 -18
  403. package/dist/runtime/gateway/slack-channel-adapter.js.map +1 -1
  404. package/dist/runtime/gateway/telegram-gateway-adapter.d.ts +2 -0
  405. package/dist/runtime/gateway/telegram-gateway-adapter.d.ts.map +1 -1
  406. package/dist/runtime/gateway/telegram-gateway-adapter.js +61 -113
  407. package/dist/runtime/gateway/telegram-gateway-adapter.js.map +1 -1
  408. package/dist/runtime/gateway/whatsapp-gateway-adapter.d.ts +1 -0
  409. package/dist/runtime/gateway/whatsapp-gateway-adapter.d.ts.map +1 -1
  410. package/dist/runtime/gateway/whatsapp-gateway-adapter.js +49 -4
  411. package/dist/runtime/gateway/whatsapp-gateway-adapter.js.map +1 -1
  412. package/dist/runtime/permission-dialogue.d.ts +113 -0
  413. package/dist/runtime/permission-dialogue.d.ts.map +1 -0
  414. package/dist/runtime/permission-dialogue.js +82 -0
  415. package/dist/runtime/permission-dialogue.js.map +1 -0
  416. package/dist/runtime/run-spec/derive.d.ts +14 -14
  417. package/dist/runtime/run-spec/handoff.js +2 -0
  418. package/dist/runtime/run-spec/handoff.js.map +1 -1
  419. package/dist/runtime/run-spec/types.d.ts +16 -16
  420. package/dist/runtime/session-registry/types.d.ts +12 -12
  421. package/dist/runtime/store/artifact-retention.d.ts +2 -0
  422. package/dist/runtime/store/artifact-retention.d.ts.map +1 -1
  423. package/dist/runtime/store/artifact-retention.js +24 -21
  424. package/dist/runtime/store/artifact-retention.js.map +1 -1
  425. package/dist/runtime/store/budget-store.d.ts +8 -8
  426. package/dist/runtime/store/evidence-ledger.d.ts.map +1 -1
  427. package/dist/runtime/store/evidence-ledger.js +39 -1
  428. package/dist/runtime/store/evidence-ledger.js.map +1 -1
  429. package/dist/runtime/store/evidence-types.d.ts +118 -118
  430. package/dist/runtime/store/experiment-queue-store.d.ts +20 -20
  431. package/dist/runtime/store/reproducibility-manifest.d.ts +20 -20
  432. package/dist/runtime/store/runtime-operation-schemas.d.ts +18 -18
  433. package/dist/runtime/store/runtime-operation-schemas.d.ts.map +1 -1
  434. package/dist/runtime/store/runtime-operation-schemas.js +1 -0
  435. package/dist/runtime/store/runtime-operation-schemas.js.map +1 -1
  436. package/dist/runtime/store/runtime-schemas.d.ts +58 -28
  437. package/dist/runtime/store/runtime-schemas.d.ts.map +1 -1
  438. package/dist/runtime/store/runtime-schemas.js +1 -0
  439. package/dist/runtime/store/runtime-schemas.js.map +1 -1
  440. package/dist/tools/execution/MemorySaveTool/MemorySaveTool.d.ts +8 -8
  441. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.d.ts +6 -0
  442. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.d.ts.map +1 -1
  443. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js +2 -0
  444. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js.map +1 -1
  445. package/dist/tools/execution-orchestrator.d.ts +29 -0
  446. package/dist/tools/execution-orchestrator.d.ts.map +1 -0
  447. package/dist/tools/execution-orchestrator.js +153 -0
  448. package/dist/tools/execution-orchestrator.js.map +1 -0
  449. package/dist/tools/executor.d.ts +6 -0
  450. package/dist/tools/executor.d.ts.map +1 -1
  451. package/dist/tools/executor.js +48 -11
  452. package/dist/tools/executor.js.map +1 -1
  453. package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.d.ts.map +1 -1
  454. package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.js +130 -17
  455. package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.js.map +1 -1
  456. package/dist/tools/mutation/TaskStopTool/TaskStopTool.d.ts.map +1 -1
  457. package/dist/tools/mutation/TaskStopTool/TaskStopTool.js +8 -0
  458. package/dist/tools/mutation/TaskStopTool/TaskStopTool.js.map +1 -1
  459. package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.d.ts +6 -6
  460. package/dist/tools/network/GitHubCliTool/GitHubCliTool.d.ts +4 -4
  461. package/dist/tools/network/McpStdioTool/McpStdioTool.d.ts +4 -4
  462. package/dist/tools/permission.d.ts +0 -1
  463. package/dist/tools/permission.d.ts.map +1 -1
  464. package/dist/tools/permission.js +9 -33
  465. package/dist/tools/permission.js.map +1 -1
  466. package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.d.ts +4 -4
  467. package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.d.ts +8 -8
  468. package/dist/tools/query/CodeSearchTool/CodeSearchTool.d.ts +4 -4
  469. package/dist/tools/query/MemoryRecallTool/MemoryRecallTool.d.ts +4 -4
  470. package/dist/tools/query/runtime-session-tools.d.ts +73 -5
  471. package/dist/tools/query/runtime-session-tools.d.ts.map +1 -1
  472. package/dist/tools/query/runtime-session-tools.js +114 -0
  473. package/dist/tools/query/runtime-session-tools.js.map +1 -1
  474. package/dist/tools/runtime/LongRunningRuntimeTools.d.ts +60 -42
  475. package/dist/tools/runtime/LongRunningRuntimeTools.d.ts.map +1 -1
  476. package/dist/tools/runtime/LongRunningRuntimeTools.js +4 -1
  477. package/dist/tools/runtime/LongRunningRuntimeTools.js.map +1 -1
  478. package/dist/tools/runtime/RunSpecHandoffTools.d.ts.map +1 -1
  479. package/dist/tools/runtime/RunSpecHandoffTools.js +162 -2
  480. package/dist/tools/runtime/RunSpecHandoffTools.js.map +1 -1
  481. package/dist/tools/runtime/SetupRuntimeControlTools.d.ts.map +1 -1
  482. package/dist/tools/runtime/SetupRuntimeControlTools.js +169 -17
  483. package/dist/tools/runtime/SetupRuntimeControlTools.js.map +1 -1
  484. package/dist/tools/system/GitDiffTool/GitDiffTool.d.ts +4 -4
  485. package/dist/tools/system/ShellCommandTool/ShellCommandTool.d.ts.map +1 -1
  486. package/dist/tools/system/ShellCommandTool/ShellCommandTool.js +7 -1
  487. package/dist/tools/system/ShellCommandTool/ShellCommandTool.js.map +1 -1
  488. package/dist/tools/system/ShellTool/ShellTool.d.ts.map +1 -1
  489. package/dist/tools/system/ShellTool/ShellTool.js +24 -10
  490. package/dist/tools/system/ShellTool/ShellTool.js.map +1 -1
  491. package/dist/tools/system/ShellTool/command-policy.d.ts +11 -8
  492. package/dist/tools/system/ShellTool/command-policy.d.ts.map +1 -1
  493. package/dist/tools/system/ShellTool/command-policy.js +402 -98
  494. package/dist/tools/system/ShellTool/command-policy.js.map +1 -1
  495. package/dist/tools/system/TestRunnerTool/TestRunnerTool.d.ts +1 -1
  496. package/dist/tools/system/TestRunnerTool/TestRunnerTool.d.ts.map +1 -1
  497. package/dist/tools/system/TestRunnerTool/TestRunnerTool.js +152 -8
  498. package/dist/tools/system/TestRunnerTool/TestRunnerTool.js.map +1 -1
  499. package/dist/tools/system/UpdatePlanTool/UpdatePlanTool.js +1 -1
  500. package/dist/tools/system/UpdatePlanTool/UpdatePlanTool.js.map +1 -1
  501. package/dist/tools/types.d.ts +34 -12
  502. package/dist/tools/types.d.ts.map +1 -1
  503. package/dist/tools/types.js +26 -3
  504. package/dist/tools/types.js.map +1 -1
  505. package/dist/tools/workspace-scope.d.ts +11 -0
  506. package/dist/tools/workspace-scope.d.ts.map +1 -0
  507. package/dist/tools/workspace-scope.js +77 -0
  508. package/dist/tools/workspace-scope.js.map +1 -0
  509. package/package.json +1 -1
@@ -1,100 +1,61 @@
1
1
  import { isAbsolute, resolve } from "node:path";
2
2
  import { isPathInsideProtectedRoots } from "../../../orchestrator/execution/agent-loop/self-protection.js";
3
- const SAFE_PATTERNS = [
4
- /^(cat|head|tail|wc|ls|pwd|echo|date|hostname|which|type|file)\b/,
5
- /^git\s+(status|log|diff|show|branch|rev-parse|rev-list|describe|tag\s+-l)\b/,
6
- /^npm\s+(ls|list|view|info|outdated|audit)\b/,
7
- /^npx\s+vitest\s+(run|list|--reporter)\b/,
8
- /^npx\s+tsc\s+--noemit\b/i,
9
- /^rg\b/, /^find\b/, /^du\b/, /^df\b/, /^tree\b/,
10
- ];
11
- const LOCAL_WRITE_PATTERNS = [
12
- /\brm\b/, /\bmv\b/, /\bcp\b/, /\bmkdir\b/, /\btouch\b/, /\bchmod\b/, /\bchown\b/,
13
- /\bsed\s+-i\b/, /\bperl\s+-i\b/, /\btee\b/, />/, /\bapply_patch\b/,
14
- /\bgit\s+(apply|checkout|restore)\b/,
15
- /\bnpm\s+(install|uninstall|run|exec)\b/,
16
- ];
17
- const NETWORK_PATTERNS = [
18
- /\bcurl\b/, /\bwget\b/, /\bssh\b/, /\bscp\b/, /\brsync\b/, /\bpip\s+install\b/,
19
- /\bnpm\s+(install|publish)\b/, /\bgit\s+(fetch|pull|push|clone)\b/,
20
- ];
21
- const DESTRUCTIVE_PATTERNS = [
22
- /\brm\b/, /\bmkfs\b/, /\bdd\s+if=/, /\bshutdown\b/, /\breboot\b/,
23
- /\bgit\s+(push|commit|merge|rebase|reset|clean|stash)\b/,
24
- /\bsudo\b/,
25
- ];
26
- const BLOCKED_PATTERNS = [
27
- /\brm\b/, /\bmv\b/, /\bcp\b/, /\bmkdir\b/, /\btouch\b/, /\bchmod\b/, /\bchown\b/,
28
- /\bgit\s+(push|commit|merge|rebase|reset|checkout|clean|stash)\b/,
29
- /\bnpm\s+(install|uninstall|publish|run|exec)\b/,
30
- /\bcurl\b/, /\bwget\b/, /\bsudo\b/, /\bmkfs\b/, /\bdd\s+if=/, /\bshutdown\b/, /\breboot\b/,
31
- ];
32
- const INJECTION_PATTERNS = [/>/, /\$\(/, /`/, /\|.*(tee|dd|rm|mv)\b/];
33
- const PROTECTED_TARGET_PATTERNS = [
34
- /\.git\b/i,
35
- /\.codex\b/i,
36
- /\.agents\b/i,
37
- /\.pulseed\b/i,
38
- /\bagents\.md\b/i,
39
- /\.env(\.[a-z0-9_-]+)?\b/i,
40
- /\bnode_modules\b/i,
41
- /\bpackage\.json\b/i,
42
- /\btsconfig(\.[^/\s]+)?\.json\b/i,
43
- ];
44
- export function assessShellCommand(command, policy, trusted = false, cwd) {
45
- const trimmed = command.trim();
46
- const segments = trimmed.split(/\s*(?:&&|\|\||;)\s*/).map((segment) => segment.trim()).filter(Boolean);
47
- const capabilities = {
48
- readOnly: true,
49
- localWrite: false,
50
- network: false,
51
- destructive: false,
52
- protectedTarget: false,
53
- };
54
- for (const segment of segments) {
55
- if (INJECTION_PATTERNS.some((pattern) => pattern.test(segment))) {
56
- return {
57
- status: "denied",
58
- reason: `Denied command segment (injection risk): ${segment}`,
59
- capabilities,
60
- };
61
- }
62
- const isSafe = SAFE_PATTERNS.some((pattern) => pattern.test(segment));
63
- const writes = LOCAL_WRITE_PATTERNS.some((pattern) => pattern.test(segment));
64
- const network = NETWORK_PATTERNS.some((pattern) => pattern.test(segment));
65
- const destructive = DESTRUCTIVE_PATTERNS.some((pattern) => pattern.test(segment));
66
- const protectedTarget = PROTECTED_TARGET_PATTERNS.some((pattern) => pattern.test(segment));
67
- if (!isSafe)
68
- capabilities.readOnly = false;
69
- if (writes)
70
- capabilities.localWrite = true;
71
- if (network)
72
- capabilities.network = true;
73
- if (destructive)
74
- capabilities.destructive = true;
75
- if (protectedTarget)
76
- capabilities.protectedTarget = true;
77
- }
78
- if ((capabilities.localWrite || !capabilities.readOnly) && targetsProtectedRoot(trimmed, policy, cwd)) {
79
- return { status: "denied", reason: "Shell command would mutate a protected PulSeed source root", capabilities };
80
- }
81
- if (trusted && !capabilities.protectedTarget) {
82
- return { status: "allowed", capabilities };
83
- }
84
- if (segments.some((segment) => INJECTION_PATTERNS.some((pattern) => pattern.test(segment)))) {
3
+ const READ_ONLY_COMMANDS = new Set([
4
+ "cat",
5
+ "head",
6
+ "tail",
7
+ "wc",
8
+ "ls",
9
+ "pwd",
10
+ "echo",
11
+ "date",
12
+ "hostname",
13
+ "which",
14
+ "type",
15
+ "file",
16
+ "rg",
17
+ "find",
18
+ "du",
19
+ "df",
20
+ "tree",
21
+ ]);
22
+ const LOCAL_WRITE_COMMANDS = new Set([
23
+ "mv",
24
+ "cp",
25
+ "mkdir",
26
+ "touch",
27
+ "chmod",
28
+ "chown",
29
+ "tee",
30
+ "apply_patch",
31
+ ]);
32
+ const NETWORK_COMMANDS = new Set(["curl", "wget", "ssh", "scp", "rsync"]);
33
+ const DESTRUCTIVE_COMMANDS = new Set(["rm", "mkfs", "dd", "shutdown", "reboot", "sudo"]);
34
+ const GIT_READ_SUBCOMMANDS = new Set(["status", "log", "diff", "show", "branch", "rev-parse", "rev-list", "describe"]);
35
+ const GIT_WRITE_SUBCOMMANDS = new Set(["apply", "checkout", "restore"]);
36
+ const GIT_NETWORK_SUBCOMMANDS = new Set(["fetch", "pull", "clone"]);
37
+ const GIT_DESTRUCTIVE_SUBCOMMANDS = new Set(["push", "commit", "merge", "rebase", "reset", "clean", "stash"]);
38
+ const NPM_READ_SUBCOMMANDS = new Set(["ls", "list", "view", "info", "outdated", "audit"]);
39
+ const NPM_WRITE_SUBCOMMANDS = new Set(["uninstall", "run", "exec"]);
40
+ const NPM_NETWORK_SUBCOMMANDS = new Set(["install", "publish"]);
41
+ export function assessShellCommand(command, policy, _trusted = false, cwd) {
42
+ const analysis = analyzeShellCommand(command);
43
+ const capabilities = { ...analysis.capabilities };
44
+ if (analysis.unsupportedReason) {
85
45
  return {
86
46
  status: "denied",
87
- reason: `Denied command segment (injection risk): ${segments.find((segment) => INJECTION_PATTERNS.some((pattern) => pattern.test(segment)))}`,
47
+ reason: analysis.unsupportedReason,
88
48
  capabilities,
89
49
  };
90
50
  }
91
- if (segments.some((segment) => BLOCKED_PATTERNS.some((pattern) => pattern.test(segment)))) {
92
- return { status: "denied", reason: `Denied command segment: ${segments.find((segment) => BLOCKED_PATTERNS.some((pattern) => pattern.test(segment)))}`, capabilities };
51
+ if ((capabilities.localWrite || !capabilities.readOnly) && targetsProtectedRoot(analysis.pathTokens, policy, cwd)) {
52
+ capabilities.protectedTarget = true;
53
+ return { status: "denied", reason: "Shell command would mutate a protected PulSeed source root", capabilities };
93
54
  }
94
55
  if (capabilities.destructive) {
95
- return { status: "denied", reason: "Denied command segment: destructive shell command", capabilities };
56
+ return { status: "denied", reason: "Denied destructive shell command", capabilities };
96
57
  }
97
- if (capabilities.protectedTarget && capabilities.localWrite) {
58
+ if (capabilities.protectedTarget && (capabilities.localWrite || !capabilities.readOnly)) {
98
59
  return { status: "denied", reason: "Shell command targets a protected path", capabilities };
99
60
  }
100
61
  if (capabilities.network && policy && !policy.networkAccess) {
@@ -109,12 +70,12 @@ export function assessShellCommand(command, policy, trusted = false, cwd) {
109
70
  if (!policy) {
110
71
  return {
111
72
  status: capabilities.localWrite || capabilities.network || !capabilities.readOnly ? "needs_approval" : "allowed",
112
- reason: capabilities.localWrite || capabilities.network || !capabilities.readOnly ? "Unknown command segment requires approval" : undefined,
73
+ reason: capabilities.localWrite || capabilities.network || !capabilities.readOnly ? "Shell command requires approval" : undefined,
113
74
  capabilities,
114
75
  };
115
76
  }
116
77
  const needsApproval = policy.approvalPolicy !== "never";
117
- if (capabilities.localWrite || capabilities.network) {
78
+ if (capabilities.localWrite || capabilities.network || !capabilities.readOnly) {
118
79
  return {
119
80
  status: needsApproval ? "needs_approval" : "allowed",
120
81
  reason: needsApproval ? "Shell command requires approval under current execution policy" : undefined,
@@ -123,23 +84,366 @@ export function assessShellCommand(command, policy, trusted = false, cwd) {
123
84
  }
124
85
  return { status: "allowed", capabilities };
125
86
  }
126
- function targetsProtectedRoot(command, policy, cwd) {
87
+ export function isReadOnlyShellCommand(command) {
88
+ const assessment = assessShellCommand(command);
89
+ return assessment.status === "allowed"
90
+ && assessment.capabilities.readOnly
91
+ && !assessment.capabilities.localWrite
92
+ && !assessment.capabilities.network
93
+ && !assessment.capabilities.destructive
94
+ && !assessment.capabilities.protectedTarget;
95
+ }
96
+ export function containsShellExecutable(command, executable) {
97
+ const analysis = analyzeShellCommand(command);
98
+ return analysis.commands.some((entry) => entry.executable === executable);
99
+ }
100
+ function analyzeShellCommand(command) {
101
+ const tokenized = tokenizeShellCommand(command.trim());
102
+ const capabilities = emptyCapabilities();
103
+ if (tokenized.error) {
104
+ return { commands: [], pathTokens: [], capabilities, unsupportedReason: tokenized.error };
105
+ }
106
+ const commands = [];
107
+ const pathTokens = [];
108
+ let currentWords = [];
109
+ const flushCommand = () => {
110
+ const simpleCommand = buildSimpleCommand(currentWords);
111
+ currentWords = [];
112
+ if (!simpleCommand)
113
+ return;
114
+ commands.push(simpleCommand);
115
+ const commandCapabilities = classifySimpleCommand(simpleCommand);
116
+ mergeCapabilities(capabilities, commandCapabilities);
117
+ pathTokens.push(...collectPotentialPathTokens(simpleCommand));
118
+ };
119
+ for (let index = 0; index < tokenized.tokens.length; index += 1) {
120
+ const token = tokenized.tokens[index];
121
+ if (token.kind === "word") {
122
+ currentWords.push(token.value);
123
+ continue;
124
+ }
125
+ if (isCommandBoundary(token.value)) {
126
+ flushCommand();
127
+ continue;
128
+ }
129
+ if (isOutputRedirection(token.value)) {
130
+ capabilities.readOnly = false;
131
+ capabilities.localWrite = true;
132
+ const target = tokenized.tokens[index + 1];
133
+ if (target?.kind === "word") {
134
+ pathTokens.push(target.value);
135
+ index += 1;
136
+ }
137
+ continue;
138
+ }
139
+ if (token.value === "stdin_redirect") {
140
+ const target = tokenized.tokens[index + 1];
141
+ if (target?.kind === "word") {
142
+ pathTokens.push(target.value);
143
+ index += 1;
144
+ }
145
+ }
146
+ }
147
+ flushCommand();
148
+ return { commands, pathTokens, capabilities };
149
+ }
150
+ function tokenizeShellCommand(command) {
151
+ const tokens = [];
152
+ let current = "";
153
+ let quote = null;
154
+ const pushWord = () => {
155
+ if (current.length === 0)
156
+ return;
157
+ tokens.push({ kind: "word", value: current });
158
+ current = "";
159
+ };
160
+ for (let index = 0; index < command.length; index += 1) {
161
+ const char = command[index];
162
+ const next = command[index + 1];
163
+ if (quote) {
164
+ if (char === quote) {
165
+ quote = null;
166
+ continue;
167
+ }
168
+ if (quote === "\"" && char === "`") {
169
+ return { tokens, error: "Shell command contains unsupported command substitution syntax" };
170
+ }
171
+ if (quote === "\"" && char === "$" && next === "(") {
172
+ return { tokens, error: "Shell command contains unsupported command substitution syntax" };
173
+ }
174
+ if (char === "\\" && next !== undefined) {
175
+ current += next;
176
+ index += 1;
177
+ continue;
178
+ }
179
+ current += char;
180
+ continue;
181
+ }
182
+ if (char === "'" || char === "\"") {
183
+ quote = char;
184
+ continue;
185
+ }
186
+ if (char === "\n" || char === "\r") {
187
+ return { tokens, error: "Shell command contains unsupported multiline syntax" };
188
+ }
189
+ if (char === "`") {
190
+ return { tokens, error: "Shell command contains unsupported command substitution syntax" };
191
+ }
192
+ if (char === "$" && next === "(") {
193
+ return { tokens, error: "Shell command contains unsupported command substitution syntax" };
194
+ }
195
+ if (char === "\\" && next !== undefined) {
196
+ current += next;
197
+ index += 1;
198
+ continue;
199
+ }
200
+ if (isShellWhitespace(char)) {
201
+ pushWord();
202
+ continue;
203
+ }
204
+ if (char === "&" && next === "&") {
205
+ pushWord();
206
+ tokens.push({ kind: "operator", value: "and" });
207
+ index += 1;
208
+ continue;
209
+ }
210
+ if (char === "|" && next === "|") {
211
+ pushWord();
212
+ tokens.push({ kind: "operator", value: "or" });
213
+ index += 1;
214
+ continue;
215
+ }
216
+ if (char === "|") {
217
+ pushWord();
218
+ tokens.push({ kind: "operator", value: "pipe" });
219
+ continue;
220
+ }
221
+ if (char === ";") {
222
+ pushWord();
223
+ tokens.push({ kind: "operator", value: "sequence" });
224
+ continue;
225
+ }
226
+ if (char === ">" || char === "<") {
227
+ const redirectedDescriptor = takeRedirectDescriptor(current);
228
+ if (redirectedDescriptor) {
229
+ tokens.push({ kind: "operator", value: redirectedDescriptor });
230
+ current = "";
231
+ }
232
+ else {
233
+ pushWord();
234
+ tokens.push({ kind: "operator", value: redirectOperator(char, next) });
235
+ }
236
+ if (char === ">" && next === ">") {
237
+ index += 1;
238
+ }
239
+ continue;
240
+ }
241
+ if (char === "&" && next === ">") {
242
+ pushWord();
243
+ tokens.push({ kind: "operator", value: "combined_redirect" });
244
+ index += 1;
245
+ continue;
246
+ }
247
+ current += char;
248
+ }
249
+ if (quote) {
250
+ return { tokens, error: "Shell command contains unterminated quoted text" };
251
+ }
252
+ pushWord();
253
+ return { tokens };
254
+ }
255
+ function redirectOperator(char, next) {
256
+ if (char === "<")
257
+ return "stdin_redirect";
258
+ return next === ">" ? "stdout_append" : "stdout_redirect";
259
+ }
260
+ function takeRedirectDescriptor(current) {
261
+ if (current === "1")
262
+ return "stdout_redirect";
263
+ if (current === "2")
264
+ return "stderr_redirect";
265
+ return null;
266
+ }
267
+ function isShellWhitespace(char) {
268
+ return char === " " || char === "\t";
269
+ }
270
+ function isCommandBoundary(operator) {
271
+ return operator === "and" || operator === "or" || operator === "sequence" || operator === "pipe";
272
+ }
273
+ function isOutputRedirection(operator) {
274
+ return operator === "stdout_redirect"
275
+ || operator === "stdout_append"
276
+ || operator === "stderr_redirect"
277
+ || operator === "stderr_append"
278
+ || operator === "combined_redirect";
279
+ }
280
+ function buildSimpleCommand(words) {
281
+ let executableIndex = 0;
282
+ while (executableIndex < words.length && isEnvironmentAssignment(words[executableIndex])) {
283
+ executableIndex += 1;
284
+ }
285
+ const executable = words[executableIndex];
286
+ if (!executable)
287
+ return null;
288
+ return {
289
+ executable,
290
+ args: words.slice(executableIndex + 1),
291
+ };
292
+ }
293
+ function isEnvironmentAssignment(value) {
294
+ const equalsIndex = value.indexOf("=");
295
+ if (equalsIndex <= 0)
296
+ return false;
297
+ const key = value.slice(0, equalsIndex);
298
+ if (key.length === 0)
299
+ return false;
300
+ return [...key].every((char, index) => char === "_" || isAsciiAlpha(char) || (index > 0 && isAsciiDigit(char)));
301
+ }
302
+ function classifySimpleCommand(command) {
303
+ if (command.executable.indexOf("/") >= 0)
304
+ return unknownCapabilities();
305
+ if (READ_ONLY_COMMANDS.has(command.executable)) {
306
+ if (command.executable === "find" && command.args.some(isFindMutationOption))
307
+ return localWriteCapabilities();
308
+ return readOnlyCapabilities();
309
+ }
310
+ if (LOCAL_WRITE_COMMANDS.has(command.executable))
311
+ return localWriteCapabilities();
312
+ if (NETWORK_COMMANDS.has(command.executable))
313
+ return networkCapabilities();
314
+ if (DESTRUCTIVE_COMMANDS.has(command.executable))
315
+ return destructiveCapabilities();
316
+ switch (command.executable) {
317
+ case "git":
318
+ return classifyGitCommand(command.args);
319
+ case "npm":
320
+ return classifyNpmCommand(command.args);
321
+ case "npx":
322
+ return classifyNpxCommand(command.args);
323
+ case "pip":
324
+ case "pip3":
325
+ return command.args[0] === "install" ? networkCapabilities({ localWrite: true }) : unknownCapabilities();
326
+ case "sed":
327
+ case "perl":
328
+ return command.args.some(isInPlaceEditOption) ? localWriteCapabilities() : unknownCapabilities();
329
+ default:
330
+ return unknownCapabilities();
331
+ }
332
+ }
333
+ function classifyGitCommand(args) {
334
+ const subcommand = args[0];
335
+ if (!subcommand)
336
+ return unknownCapabilities();
337
+ if (GIT_READ_SUBCOMMANDS.has(subcommand))
338
+ return readOnlyCapabilities();
339
+ if (subcommand === "tag" && (args.length === 1 || args[1] === "-l" || args[1] === "--list"))
340
+ return readOnlyCapabilities();
341
+ if (GIT_WRITE_SUBCOMMANDS.has(subcommand))
342
+ return localWriteCapabilities();
343
+ if (GIT_NETWORK_SUBCOMMANDS.has(subcommand))
344
+ return networkCapabilities();
345
+ if (GIT_DESTRUCTIVE_SUBCOMMANDS.has(subcommand)) {
346
+ return destructiveCapabilities({ network: subcommand === "push" });
347
+ }
348
+ return unknownCapabilities();
349
+ }
350
+ function classifyNpmCommand(args) {
351
+ const subcommand = args[0];
352
+ if (!subcommand)
353
+ return unknownCapabilities();
354
+ if (NPM_READ_SUBCOMMANDS.has(subcommand))
355
+ return readOnlyCapabilities();
356
+ if (NPM_WRITE_SUBCOMMANDS.has(subcommand))
357
+ return localWriteCapabilities();
358
+ if (NPM_NETWORK_SUBCOMMANDS.has(subcommand))
359
+ return networkCapabilities({ localWrite: true });
360
+ return unknownCapabilities();
361
+ }
362
+ function classifyNpxCommand(args) {
363
+ const executable = args[0];
364
+ const subcommand = args[1];
365
+ if (executable === "vitest" && (subcommand === "run" || subcommand === "list" || subcommand === "--reporter")) {
366
+ return readOnlyCapabilities();
367
+ }
368
+ if (executable === "tsc" && args.some(isNoEmitOption))
369
+ return readOnlyCapabilities();
370
+ return unknownCapabilities();
371
+ }
372
+ function isFindMutationOption(arg) {
373
+ return arg === "-delete" || arg === "-exec" || arg === "-execdir" || arg === "-ok" || arg === "-okdir";
374
+ }
375
+ function isInPlaceEditOption(arg) {
376
+ return arg === "-i" || arg.startsWith("-i.");
377
+ }
378
+ function isNoEmitOption(arg) {
379
+ return arg.toLowerCase() === "--noemit";
380
+ }
381
+ function collectPotentialPathTokens(command) {
382
+ return command.args.filter((arg) => arg.length > 0 && !arg.startsWith("-"));
383
+ }
384
+ function emptyCapabilities() {
385
+ return {
386
+ readOnly: true,
387
+ localWrite: false,
388
+ network: false,
389
+ destructive: false,
390
+ protectedTarget: false,
391
+ };
392
+ }
393
+ function readOnlyCapabilities() {
394
+ return emptyCapabilities();
395
+ }
396
+ function unknownCapabilities() {
397
+ return {
398
+ ...emptyCapabilities(),
399
+ readOnly: false,
400
+ };
401
+ }
402
+ function localWriteCapabilities(overrides = {}) {
403
+ return {
404
+ ...unknownCapabilities(),
405
+ localWrite: true,
406
+ ...overrides,
407
+ };
408
+ }
409
+ function networkCapabilities(overrides = {}) {
410
+ return {
411
+ ...unknownCapabilities(),
412
+ network: true,
413
+ ...overrides,
414
+ };
415
+ }
416
+ function destructiveCapabilities(overrides = {}) {
417
+ return {
418
+ ...unknownCapabilities(),
419
+ destructive: true,
420
+ ...overrides,
421
+ };
422
+ }
423
+ function mergeCapabilities(target, source) {
424
+ target.readOnly = target.readOnly && source.readOnly;
425
+ target.localWrite = target.localWrite || source.localWrite;
426
+ target.network = target.network || source.network;
427
+ target.destructive = target.destructive || source.destructive;
428
+ target.protectedTarget = target.protectedTarget || source.protectedTarget;
429
+ }
430
+ function targetsProtectedRoot(pathTokens, policy, cwd) {
127
431
  if (!policy?.protectedPaths || policy.protectedPaths.length === 0)
128
432
  return false;
129
433
  const effectiveCwd = cwd ?? policy.workspaceRoot;
130
434
  if (isPathInsideProtectedRoots(effectiveCwd, policy.protectedPaths))
131
435
  return true;
132
- return extractPathLikeTokens(command).some((token) => {
436
+ return pathTokens.some((token) => {
133
437
  const resolved = isAbsolute(token) ? token : resolve(effectiveCwd, token);
134
438
  return isPathInsideProtectedRoots(resolved, policy.protectedPaths);
135
439
  });
136
440
  }
137
- function extractPathLikeTokens(command) {
138
- return command
139
- .split(/\s+/)
140
- .map((token) => token.replace(/^['"]|['"]$/g, ""))
141
- .filter((token) => token.length > 0
142
- && !token.startsWith("-")
143
- && (token.startsWith("/") || token.startsWith("./") || token.startsWith("../") || token.includes("/")));
441
+ function isAsciiAlpha(char) {
442
+ const code = char.charCodeAt(0);
443
+ return (code >= 65 && code <= 90) || (code >= 97 && code <= 122);
444
+ }
445
+ function isAsciiDigit(char) {
446
+ const code = char.charCodeAt(0);
447
+ return code >= 48 && code <= 57;
144
448
  }
145
449
  //# sourceMappingURL=command-policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-policy.js","sourceRoot":"","sources":["../../../../src/tools/system/ShellTool/command-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-policy.js","sourceRoot":"","sources":["../../../../src/tools/system/ShellTool/command-policy.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ export declare class TestRunnerTool implements ITool<TestRunnerInput, TestRunner
47
47
  }>;
48
48
  description(): string;
49
49
  call(input: TestRunnerInput, context: ToolCallContext): Promise<ToolResult>;
50
- checkPermissions(input: TestRunnerInput): Promise<PermissionCheckResult>;
50
+ checkPermissions(input: TestRunnerInput, context?: ToolCallContext): Promise<PermissionCheckResult>;
51
51
  isConcurrencySafe(_input: TestRunnerInput): boolean;
52
52
  }
53
53
  //# sourceMappingURL=TestRunnerTool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestRunnerTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/system/TestRunnerTool/TestRunnerTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAK9G,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAwFD,qBAAa,cAAe,YAAW,KAAK,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAC7E,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAY7B;IAEF,QAAQ,CAAC,WAAW;;;;;;;;;;;;;;;OAAyB;IAE7C,WAAW,IAAI,MAAM;IAIf,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IAiD3E,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAW9E,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO;CAIpD"}
1
+ {"version":3,"file":"TestRunnerTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/system/TestRunnerTool/TestRunnerTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAM9G,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAiMD,qBAAa,cAAe,YAAW,KAAK,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAC7E,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAY7B;IAEF,QAAQ,CAAC,WAAW;;;;;;;;;;;;;;;OAAyB;IAE7C,WAAW,IAAI,MAAM;IAIf,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IA0E3E,gBAAgB,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAmBzG,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO;CAIpD"}