@orion-agents/orion-code 0.1.6 → 0.1.8

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 (320) hide show
  1. package/README.md +80 -46
  2. package/README.zh-CN.md +58 -20
  3. package/dist/cli.js +7 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/core-command-handlers.d.ts.map +1 -1
  6. package/dist/commands/core-command-handlers.js +4 -4
  7. package/dist/commands/core-command-handlers.js.map +1 -1
  8. package/dist/commands/diagnostic-command-handlers.d.ts.map +1 -1
  9. package/dist/commands/diagnostic-command-handlers.js +3 -0
  10. package/dist/commands/diagnostic-command-handlers.js.map +1 -1
  11. package/dist/commands/model-command-handlers.d.ts +2 -3
  12. package/dist/commands/model-command-handlers.d.ts.map +1 -1
  13. package/dist/commands/model-command-handlers.js +0 -54
  14. package/dist/commands/model-command-handlers.js.map +1 -1
  15. package/dist/commands/model-commands.d.ts.map +1 -1
  16. package/dist/commands/model-commands.js +0 -22
  17. package/dist/commands/model-commands.js.map +1 -1
  18. package/dist/commands/registry.d.ts.map +1 -1
  19. package/dist/commands/registry.js +56 -13
  20. package/dist/commands/registry.js.map +1 -1
  21. package/dist/commands/system-commands.d.ts.map +1 -1
  22. package/dist/commands/system-commands.js +76 -2
  23. package/dist/commands/system-commands.js.map +1 -1
  24. package/dist/commands/target-command.js +1 -1
  25. package/dist/commands/target-command.js.map +1 -1
  26. package/dist/commands/types.d.ts +3 -2
  27. package/dist/commands/types.d.ts.map +1 -1
  28. package/dist/commands/types.js +2 -3
  29. package/dist/commands/types.js.map +1 -1
  30. package/dist/commands/workflow-command-handlers.d.ts +2 -1
  31. package/dist/commands/workflow-command-handlers.d.ts.map +1 -1
  32. package/dist/commands/workflow-command-handlers.js +26 -0
  33. package/dist/commands/workflow-command-handlers.js.map +1 -1
  34. package/dist/commands/workflow-commands.d.ts.map +1 -1
  35. package/dist/commands/workflow-commands.js +11 -0
  36. package/dist/commands/workflow-commands.js.map +1 -1
  37. package/dist/core/checkpoint.d.ts.map +1 -1
  38. package/dist/core/checkpoint.js +9 -8
  39. package/dist/core/checkpoint.js.map +1 -1
  40. package/dist/framework/agent-mode.d.ts +47 -0
  41. package/dist/framework/agent-mode.d.ts.map +1 -0
  42. package/dist/framework/agent-mode.js +152 -0
  43. package/dist/framework/agent-mode.js.map +1 -0
  44. package/dist/framework/prompt.d.ts +5 -0
  45. package/dist/framework/prompt.d.ts.map +1 -1
  46. package/dist/framework/prompt.js +46 -9
  47. package/dist/framework/prompt.js.map +1 -1
  48. package/dist/framework/query.d.ts +4 -0
  49. package/dist/framework/query.d.ts.map +1 -1
  50. package/dist/framework/query.js +10 -0
  51. package/dist/framework/query.js.map +1 -1
  52. package/dist/framework/store.d.ts.map +1 -1
  53. package/dist/framework/store.js +4 -4
  54. package/dist/framework/store.js.map +1 -1
  55. package/dist/framework/tool-scheduler.d.ts +18 -12
  56. package/dist/framework/tool-scheduler.d.ts.map +1 -1
  57. package/dist/framework/tool-scheduler.js +74 -50
  58. package/dist/framework/tool-scheduler.js.map +1 -1
  59. package/dist/framework/tool-state.d.ts +2 -0
  60. package/dist/framework/tool-state.d.ts.map +1 -1
  61. package/dist/framework/tool-state.js +1 -0
  62. package/dist/framework/tool-state.js.map +1 -1
  63. package/dist/framework/tool.d.ts +16 -0
  64. package/dist/framework/tool.d.ts.map +1 -1
  65. package/dist/framework/tool.js +9 -0
  66. package/dist/framework/tool.js.map +1 -1
  67. package/dist/print-ui/launch.d.ts +1 -0
  68. package/dist/print-ui/launch.d.ts.map +1 -1
  69. package/dist/print-ui/launch.js +5 -2
  70. package/dist/print-ui/launch.js.map +1 -1
  71. package/dist/runtime/agent-runtime-controller.d.ts +20 -1
  72. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  73. package/dist/runtime/agent-runtime-controller.js +250 -21
  74. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  75. package/dist/runtime/agent-runtime-protocol.d.ts +31 -1
  76. package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
  77. package/dist/runtime/agent-runtime-protocol.js +12 -0
  78. package/dist/runtime/agent-runtime-protocol.js.map +1 -1
  79. package/dist/runtime/chat-checkpoint.d.ts.map +1 -1
  80. package/dist/runtime/chat-checkpoint.js +2 -5
  81. package/dist/runtime/chat-checkpoint.js.map +1 -1
  82. package/dist/runtime/chat-command-scope.d.ts +5 -0
  83. package/dist/runtime/chat-command-scope.d.ts.map +1 -0
  84. package/dist/runtime/chat-command-scope.js +22 -0
  85. package/dist/runtime/chat-command-scope.js.map +1 -0
  86. package/dist/runtime/chat-controller.d.ts +2 -0
  87. package/dist/runtime/chat-controller.d.ts.map +1 -1
  88. package/dist/runtime/chat-controller.js +50 -58
  89. package/dist/runtime/chat-controller.js.map +1 -1
  90. package/dist/runtime/chat-presentation.d.ts +6 -3
  91. package/dist/runtime/chat-presentation.d.ts.map +1 -1
  92. package/dist/runtime/chat-presentation.js +30 -6
  93. package/dist/runtime/chat-presentation.js.map +1 -1
  94. package/dist/runtime/goals/coordinator.d.ts +5 -0
  95. package/dist/runtime/goals/coordinator.d.ts.map +1 -1
  96. package/dist/runtime/goals/coordinator.js +102 -19
  97. package/dist/runtime/goals/coordinator.js.map +1 -1
  98. package/dist/runtime/goals/evidence.d.ts +10 -0
  99. package/dist/runtime/goals/evidence.d.ts.map +1 -1
  100. package/dist/runtime/goals/evidence.js +18 -0
  101. package/dist/runtime/goals/evidence.js.map +1 -1
  102. package/dist/runtime/goals/lifecycle.d.ts +13 -0
  103. package/dist/runtime/goals/lifecycle.d.ts.map +1 -0
  104. package/dist/runtime/goals/lifecycle.js +46 -0
  105. package/dist/runtime/goals/lifecycle.js.map +1 -0
  106. package/dist/runtime/goals/objective.d.ts +18 -0
  107. package/dist/runtime/goals/objective.d.ts.map +1 -0
  108. package/dist/runtime/goals/objective.js +60 -0
  109. package/dist/runtime/goals/objective.js.map +1 -0
  110. package/dist/runtime/goals/presentation.d.ts.map +1 -1
  111. package/dist/runtime/goals/presentation.js +4 -0
  112. package/dist/runtime/goals/presentation.js.map +1 -1
  113. package/dist/runtime/goals/prompt.d.ts.map +1 -1
  114. package/dist/runtime/goals/prompt.js +9 -2
  115. package/dist/runtime/goals/prompt.js.map +1 -1
  116. package/dist/runtime/goals/tools.d.ts +2 -0
  117. package/dist/runtime/goals/tools.d.ts.map +1 -1
  118. package/dist/runtime/goals/tools.js +20 -26
  119. package/dist/runtime/goals/tools.js.map +1 -1
  120. package/dist/runtime/goals/types.d.ts +8 -1
  121. package/dist/runtime/goals/types.d.ts.map +1 -1
  122. package/dist/runtime/goals/types.js +5 -0
  123. package/dist/runtime/goals/types.js.map +1 -1
  124. package/dist/runtime/loop-budget.d.ts +7 -0
  125. package/dist/runtime/loop-budget.d.ts.map +1 -1
  126. package/dist/runtime/loop-budget.js +22 -4
  127. package/dist/runtime/loop-budget.js.map +1 -1
  128. package/dist/runtime/ui-events.d.ts +48 -1
  129. package/dist/runtime/ui-events.d.ts.map +1 -1
  130. package/dist/runtime/ui-events.js.map +1 -1
  131. package/dist/runtime/ui-view-model.d.ts +10 -1
  132. package/dist/runtime/ui-view-model.d.ts.map +1 -1
  133. package/dist/runtime/ui-view-model.js +93 -4
  134. package/dist/runtime/ui-view-model.js.map +1 -1
  135. package/dist/services/bounded-response.d.ts +12 -0
  136. package/dist/services/bounded-response.d.ts.map +1 -0
  137. package/dist/services/bounded-response.js +67 -0
  138. package/dist/services/bounded-response.js.map +1 -0
  139. package/dist/services/concurrent-sessions.d.ts +1 -0
  140. package/dist/services/concurrent-sessions.d.ts.map +1 -1
  141. package/dist/services/concurrent-sessions.js +35 -22
  142. package/dist/services/concurrent-sessions.js.map +1 -1
  143. package/dist/services/config.d.ts.map +1 -1
  144. package/dist/services/config.js +29 -9
  145. package/dist/services/config.js.map +1 -1
  146. package/dist/services/file-lock.d.ts.map +1 -1
  147. package/dist/services/file-lock.js +60 -27
  148. package/dist/services/file-lock.js.map +1 -1
  149. package/dist/services/global-config.d.ts +16 -0
  150. package/dist/services/global-config.d.ts.map +1 -1
  151. package/dist/services/global-config.js +140 -38
  152. package/dist/services/global-config.js.map +1 -1
  153. package/dist/services/goal-storage.d.ts +1 -1
  154. package/dist/services/goal-storage.d.ts.map +1 -1
  155. package/dist/services/goal-storage.js +14 -4
  156. package/dist/services/goal-storage.js.map +1 -1
  157. package/dist/services/project-instructions.d.ts +8 -0
  158. package/dist/services/project-instructions.d.ts.map +1 -1
  159. package/dist/services/project-instructions.js +95 -38
  160. package/dist/services/project-instructions.js.map +1 -1
  161. package/dist/services/provider-resilience/request-gate.d.ts +9 -5
  162. package/dist/services/provider-resilience/request-gate.d.ts.map +1 -1
  163. package/dist/services/provider-resilience/request-gate.js +71 -23
  164. package/dist/services/provider-resilience/request-gate.js.map +1 -1
  165. package/dist/services/session-storage.d.ts +18 -5
  166. package/dist/services/session-storage.d.ts.map +1 -1
  167. package/dist/services/session-storage.js +295 -115
  168. package/dist/services/session-storage.js.map +1 -1
  169. package/dist/services/tool-allowlist.d.ts +4 -4
  170. package/dist/services/tool-allowlist.js +4 -4
  171. package/dist/services/web-search-adapters.d.ts.map +1 -1
  172. package/dist/services/web-search-adapters.js +24 -10
  173. package/dist/services/web-search-adapters.js.map +1 -1
  174. package/dist/services/web-search-mcp.d.ts.map +1 -1
  175. package/dist/services/web-search-mcp.js +13 -3
  176. package/dist/services/web-search-mcp.js.map +1 -1
  177. package/dist/services/workspace-containment.d.ts +8 -0
  178. package/dist/services/workspace-containment.d.ts.map +1 -0
  179. package/dist/services/workspace-containment.js +44 -0
  180. package/dist/services/workspace-containment.js.map +1 -0
  181. package/dist/terminal-ui/completion.d.ts.map +1 -1
  182. package/dist/terminal-ui/completion.js +5 -1
  183. package/dist/terminal-ui/completion.js.map +1 -1
  184. package/dist/terminal-ui/launch.d.ts +5 -0
  185. package/dist/terminal-ui/launch.d.ts.map +1 -1
  186. package/dist/terminal-ui/launch.js +53 -17
  187. package/dist/terminal-ui/launch.js.map +1 -1
  188. package/dist/tools/bash_security.d.ts.map +1 -1
  189. package/dist/tools/bash_security.js +12 -2
  190. package/dist/tools/bash_security.js.map +1 -1
  191. package/dist/tools/git.d.ts.map +1 -1
  192. package/dist/tools/git.js +47 -12
  193. package/dist/tools/git.js.map +1 -1
  194. package/dist/tools/index.d.ts.map +1 -1
  195. package/dist/tools/index.js +128 -54
  196. package/dist/tools/index.js.map +1 -1
  197. package/dist/tools/plan.d.ts +2 -3
  198. package/dist/tools/plan.d.ts.map +1 -1
  199. package/dist/tools/plan.js +36 -34
  200. package/dist/tools/plan.js.map +1 -1
  201. package/dist/tools/web.d.ts.map +1 -1
  202. package/dist/tools/web.js +11 -2
  203. package/dist/tools/web.js.map +1 -1
  204. package/dist/tui-core/input-parser.d.ts +1 -1
  205. package/dist/tui-core/input-parser.d.ts.map +1 -1
  206. package/dist/tui-core/input-parser.js +1 -0
  207. package/dist/tui-core/input-parser.js.map +1 -1
  208. package/dist/tui-core/style.d.ts +11 -0
  209. package/dist/tui-core/style.d.ts.map +1 -1
  210. package/dist/tui-core/style.js +68 -9
  211. package/dist/tui-core/style.js.map +1 -1
  212. package/dist/tui-ui/chrome-view-model.d.ts +19 -0
  213. package/dist/tui-ui/chrome-view-model.d.ts.map +1 -0
  214. package/dist/tui-ui/chrome-view-model.js +168 -0
  215. package/dist/tui-ui/chrome-view-model.js.map +1 -0
  216. package/dist/tui-ui/inline-surface.d.ts +1 -1
  217. package/dist/tui-ui/inline-surface.d.ts.map +1 -1
  218. package/dist/tui-ui/inline-surface.js +24 -16
  219. package/dist/tui-ui/inline-surface.js.map +1 -1
  220. package/dist/tui-ui/launch.d.ts.map +1 -1
  221. package/dist/tui-ui/launch.js +38 -2
  222. package/dist/tui-ui/launch.js.map +1 -1
  223. package/dist/tui-ui/layout.d.ts +5 -1
  224. package/dist/tui-ui/layout.d.ts.map +1 -1
  225. package/dist/tui-ui/layout.js +101 -73
  226. package/dist/tui-ui/layout.js.map +1 -1
  227. package/dist/tui-ui/pixel-mascot.d.ts +5 -0
  228. package/dist/tui-ui/pixel-mascot.d.ts.map +1 -0
  229. package/dist/tui-ui/pixel-mascot.js +33 -0
  230. package/dist/tui-ui/pixel-mascot.js.map +1 -0
  231. package/dist/tui-ui/runner.d.ts +25 -1
  232. package/dist/tui-ui/runner.d.ts.map +1 -1
  233. package/dist/tui-ui/runner.js +181 -0
  234. package/dist/tui-ui/runner.js.map +1 -1
  235. package/dist/tui-ui/state.d.ts +11 -1
  236. package/dist/tui-ui/state.d.ts.map +1 -1
  237. package/dist/tui-ui/state.js +101 -13
  238. package/dist/tui-ui/state.js.map +1 -1
  239. package/dist/tui-ui/terminal-image.d.ts +13 -3
  240. package/dist/tui-ui/terminal-image.d.ts.map +1 -1
  241. package/dist/tui-ui/terminal-image.js +25 -7
  242. package/dist/tui-ui/terminal-image.js.map +1 -1
  243. package/dist/tui-ui/theme-profile.d.ts +4 -0
  244. package/dist/tui-ui/theme-profile.d.ts.map +1 -1
  245. package/dist/tui-ui/theme-profile.js +21 -5
  246. package/dist/tui-ui/theme-profile.js.map +1 -1
  247. package/dist/tui-ui/theme.d.ts +5 -2
  248. package/dist/tui-ui/theme.d.ts.map +1 -1
  249. package/dist/tui-ui/theme.js +21 -1
  250. package/dist/tui-ui/theme.js.map +1 -1
  251. package/dist/tui-ui/transcript-layout.d.ts.map +1 -1
  252. package/dist/tui-ui/transcript-layout.js +38 -29
  253. package/dist/tui-ui/transcript-layout.js.map +1 -1
  254. package/dist/ui/command-panel.d.ts +2 -0
  255. package/dist/ui/command-panel.d.ts.map +1 -1
  256. package/dist/ui/command-panel.js +46 -20
  257. package/dist/ui/command-panel.js.map +1 -1
  258. package/dist/ui/file-completion.d.ts.map +1 -1
  259. package/dist/ui/file-completion.js +12 -6
  260. package/dist/ui/file-completion.js.map +1 -1
  261. package/dist/ui/shared/command-palette.d.ts.map +1 -1
  262. package/dist/ui/shared/command-palette.js +13 -9
  263. package/dist/ui/shared/command-palette.js.map +1 -1
  264. package/dist/ui/shared/text.d.ts +2 -0
  265. package/dist/ui/shared/text.d.ts.map +1 -1
  266. package/dist/ui/shared/text.js +20 -12
  267. package/dist/ui/shared/text.js.map +1 -1
  268. package/dist/ui/suggestions.d.ts.map +1 -1
  269. package/dist/ui/suggestions.js +7 -6
  270. package/dist/ui/suggestions.js.map +1 -1
  271. package/npm-shrinkwrap.json +7148 -0
  272. package/package.json +14 -8
  273. package/dist/ink/index.d.ts +0 -54
  274. package/dist/ink/index.d.ts.map +0 -1
  275. package/dist/ink/index.js +0 -111
  276. package/dist/ink/index.js.map +0 -1
  277. package/dist/ui-v2/components/command-palette.d.ts +0 -2
  278. package/dist/ui-v2/components/command-palette.d.ts.map +0 -1
  279. package/dist/ui-v2/components/command-palette.js +0 -18
  280. package/dist/ui-v2/components/command-palette.js.map +0 -1
  281. package/dist/ui-v2/components/edit-preview-picker.d.ts +0 -26
  282. package/dist/ui-v2/components/edit-preview-picker.d.ts.map +0 -1
  283. package/dist/ui-v2/components/edit-preview-picker.js +0 -79
  284. package/dist/ui-v2/components/edit-preview-picker.js.map +0 -1
  285. package/dist/ui-v2/components/session-picker.d.ts +0 -19
  286. package/dist/ui-v2/components/session-picker.d.ts.map +0 -1
  287. package/dist/ui-v2/components/session-picker.js +0 -52
  288. package/dist/ui-v2/components/session-picker.js.map +0 -1
  289. package/dist/ui-v2/components/shell.d.ts +0 -36
  290. package/dist/ui-v2/components/shell.d.ts.map +0 -1
  291. package/dist/ui-v2/components/shell.js +0 -131
  292. package/dist/ui-v2/components/shell.js.map +0 -1
  293. package/dist/ui-v2/index.d.ts +0 -11
  294. package/dist/ui-v2/index.d.ts.map +0 -1
  295. package/dist/ui-v2/index.js +0 -27
  296. package/dist/ui-v2/index.js.map +0 -1
  297. package/dist/ui-v2/runtime/text.d.ts +0 -2
  298. package/dist/ui-v2/runtime/text.d.ts.map +0 -1
  299. package/dist/ui-v2/runtime/text.js +0 -18
  300. package/dist/ui-v2/runtime/text.js.map +0 -1
  301. package/dist/ui-v2/state/input-reducer.d.ts +0 -39
  302. package/dist/ui-v2/state/input-reducer.d.ts.map +0 -1
  303. package/dist/ui-v2/state/input-reducer.js +0 -82
  304. package/dist/ui-v2/state/input-reducer.js.map +0 -1
  305. package/dist/ui-v2/state/picker.d.ts +0 -16
  306. package/dist/ui-v2/state/picker.d.ts.map +0 -1
  307. package/dist/ui-v2/state/picker.js +0 -52
  308. package/dist/ui-v2/state/picker.js.map +0 -1
  309. package/dist/ui-v2/state/sessions.d.ts +0 -15
  310. package/dist/ui-v2/state/sessions.d.ts.map +0 -1
  311. package/dist/ui-v2/state/sessions.js +0 -70
  312. package/dist/ui-v2/state/sessions.js.map +0 -1
  313. package/dist/ui-v2/state/suggestions.d.ts +0 -2
  314. package/dist/ui-v2/state/suggestions.d.ts.map +0 -1
  315. package/dist/ui-v2/state/suggestions.js +0 -18
  316. package/dist/ui-v2/state/suggestions.js.map +0 -1
  317. package/dist/ui-v2/types.d.ts +0 -2
  318. package/dist/ui-v2/types.d.ts.map +0 -1
  319. package/dist/ui-v2/types.js +0 -18
  320. package/dist/ui-v2/types.js.map +0 -1
package/dist/tools/git.js CHANGED
@@ -14,6 +14,17 @@ exports.GIT_TOOLS = exports.gitBranchTool = exports.gitLogTool = exports.gitDiff
14
14
  const tool_1 = require("../framework/tool");
15
15
  const child_process_1 = require("child_process");
16
16
  const path_1 = require("path");
17
+ const workspace_containment_1 = require("../services/workspace-containment");
18
+ function resolveGitCwd(value, context) {
19
+ if (value !== undefined && typeof value !== 'string') {
20
+ return { error: 'Git cwd must be a string' };
21
+ }
22
+ const workspace = context.cwd || process.cwd();
23
+ const cwd = (0, workspace_containment_1.resolveWorkspacePath)(workspace, value ?? '.');
24
+ return cwd
25
+ ? { cwd }
26
+ : { error: `Refusing to run Git outside the active workspace: ${String(value ?? '.')}` };
27
+ }
17
28
  function normalizeStagePath(value) {
18
29
  if (value.length === 0 ||
19
30
  value.includes('\0') ||
@@ -149,8 +160,12 @@ exports.gitStatusTool = (0, tool_1.buildTool)({
149
160
  },
150
161
  required: [],
151
162
  },
152
- execute: async (args) => {
153
- const cwd = args.cwd;
163
+ execute: async (args, context) => {
164
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
165
+ if ('error' in resolvedCwd) {
166
+ return { success: false, output: '', error: resolvedCwd.error };
167
+ }
168
+ const { cwd } = resolvedCwd;
154
169
  // `-z` gives NUL-separated records and, per git-status(1), disables path
155
170
  // quoting entirely -- so a non-ASCII filename arrives verbatim instead of
156
171
  // octal-escaped. `core.quotePath=false` is belt-and-braces for old builds.
@@ -281,11 +296,15 @@ Issue #18/#23 修复:不再在未验证的情况下声称成功。`,
281
296
  },
282
297
  required: ['message'],
283
298
  },
284
- execute: async (args) => {
299
+ execute: async (args, context) => {
285
300
  const message = args.message;
286
301
  const addAll = args.add_all ?? false;
287
302
  const rawPaths = args.paths;
288
- const cwd = args.cwd;
303
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
304
+ if ('error' in resolvedCwd) {
305
+ return { success: false, output: '', error: resolvedCwd.error };
306
+ }
307
+ const { cwd } = resolvedCwd;
289
308
  const verify = args.verify ?? true;
290
309
  if (!message || typeof message !== 'string') {
291
310
  return { success: false, output: '', error: 'git_push requires a commit message' };
@@ -633,11 +652,15 @@ exports.gitCommitTool = (0, tool_1.buildTool)({
633
652
  },
634
653
  required: ['message'],
635
654
  },
636
- execute: async (args) => {
655
+ execute: async (args, context) => {
637
656
  const message = args.message;
638
657
  const rawPaths = args.paths;
639
658
  const all = args.all ?? false;
640
- const cwd = args.cwd;
659
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
660
+ if ('error' in resolvedCwd) {
661
+ return { success: false, output: '', error: resolvedCwd.error };
662
+ }
663
+ const { cwd } = resolvedCwd;
641
664
  if (!message || typeof message !== 'string') {
642
665
  return {
643
666
  success: false,
@@ -807,11 +830,15 @@ exports.gitDiffTool = (0, tool_1.buildTool)({
807
830
  },
808
831
  required: [],
809
832
  },
810
- execute: async (args) => {
833
+ execute: async (args, context) => {
811
834
  const staged = args.staged ?? false;
812
835
  const stat = args.stat ?? false;
813
836
  const rawPaths = args.paths;
814
- const cwd = args.cwd;
837
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
838
+ if ('error' in resolvedCwd) {
839
+ return { success: false, output: '', error: resolvedCwd.error };
840
+ }
841
+ const { cwd } = resolvedCwd;
815
842
  if (rawPaths !== undefined && !Array.isArray(rawPaths)) {
816
843
  return { success: false, output: '', error: 'git_diff paths must be an array of strings' };
817
844
  }
@@ -869,10 +896,14 @@ exports.gitLogTool = (0, tool_1.buildTool)({
869
896
  },
870
897
  required: [],
871
898
  },
872
- execute: async (args) => {
899
+ execute: async (args, context) => {
873
900
  const maxCount = typeof args.max_count === 'number' ? Math.min(Math.max(args.max_count, 1), 200) : 20;
874
901
  const oneline = args.oneline ?? true;
875
- const cwd = args.cwd;
902
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
903
+ if ('error' in resolvedCwd) {
904
+ return { success: false, output: '', error: resolvedCwd.error };
905
+ }
906
+ const { cwd } = resolvedCwd;
876
907
  const fmt = oneline ? '%h %s (%an, %ar)' : '%H%nAuthor: %an <%ae>%nDate: %ad%n%n%B';
877
908
  const cmd = ['log', `--max-count=${maxCount}`, `--pretty=format:${fmt}`, '--no-color'];
878
909
  if (!oneline)
@@ -918,11 +949,15 @@ action:
918
949
  },
919
950
  required: [],
920
951
  },
921
- execute: async (args) => {
952
+ execute: async (args, context) => {
922
953
  const action = args.action ?? 'list';
923
954
  const name = args.name;
924
955
  const force = args.force ?? false;
925
- const cwd = args.cwd;
956
+ const resolvedCwd = resolveGitCwd(args.cwd, context);
957
+ if ('error' in resolvedCwd) {
958
+ return { success: false, output: '', error: resolvedCwd.error };
959
+ }
960
+ const { cwd } = resolvedCwd;
926
961
  const log = [];
927
962
  if (action === 'list') {
928
963
  const result = await execGit('branch -vv', cwd);
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/tools/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/tools/git.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgBH,OAAO,EAGL,KAAK,aAAa,EAElB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAiC3B,eAAO,MAAM,wBAAwB,aAMnC,CAAC;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AA+BtC,eAAO,MAAM,KAAK,EAAE,aAAa,EAuzBhC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,eAAe,IAAI,aAAa,EAAE,CAEjD;AAikBD,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB;AA8RD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcnE;AAsiBD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC,CA6DjB;AAcD;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAGD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gCAAgC,EAChC,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAeH,OAAO,EAGL,KAAK,aAAa,EAElB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAkC3B,eAAO,MAAM,wBAAwB,aAMnC,CAAC;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAyDtC,eAAO,MAAM,KAAK,EAAE,aAAa,EAo1BhC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,eAAe,IAAI,aAAa,EAAE,CAEjD;AAykBD,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB;AA8RD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkCnE;AAsjBD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,MAAM,CAAC,CA8DjB;AAcD;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAGD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gCAAgC,EAChC,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC"}
@@ -62,6 +62,7 @@ const environment_1 = require("../product/environment");
62
62
  const storage_1 = require("../memory/storage");
63
63
  const semantic_config_1 = require("../memory/semantic-config");
64
64
  const session_storage_1 = require("../services/session-storage");
65
+ const workspace_containment_1 = require("../services/workspace-containment");
65
66
  const web_1 = require("./web");
66
67
  const mcp_1 = require("./mcp");
67
68
  const todo_1 = require("./todo");
@@ -82,6 +83,24 @@ exports.BATCH_READ_ALLOWED_TOOLS = new Set([
82
83
  ]);
83
84
  exports.BATCH_READ_MAX_STEPS = 8;
84
85
  const BATCH_READ_STEP_OUTPUT_MAX_BYTES = 1600;
86
+ const LIST_FILES_MAX_DEPTH = 8;
87
+ const EXEC_COMMAND_MIN_TIMEOUT_MS = 1;
88
+ const EXEC_COMMAND_MAX_TIMEOUT_MS = 600000;
89
+ const EXEC_COMMAND_MIN_OUTPUT_BYTES = 1024;
90
+ const EXEC_COMMAND_MAX_OUTPUT_BYTES = 10 * 1024 * 1024;
91
+ function validateOptionalSafeInteger(args, toolName, field, minimum, maximum) {
92
+ const value = args[field];
93
+ if (value === undefined)
94
+ return undefined;
95
+ if (typeof value !== 'number' ||
96
+ !Number.isFinite(value) ||
97
+ !Number.isSafeInteger(value) ||
98
+ value < minimum ||
99
+ value > maximum) {
100
+ return `${toolName} ${field} must be a safe integer between ${minimum} and ${maximum}`;
101
+ }
102
+ return undefined;
103
+ }
85
104
  function compactOneLine(text, maxLength) {
86
105
  const compact = text.replace(/\s+/g, ' ').trim();
87
106
  if (compact.length <= maxLength)
@@ -226,7 +245,9 @@ exports.TOOLS = [
226
245
  },
227
246
  maxDepth: {
228
247
  type: 'number',
229
- description: '最大递归深度(可选,默认 2)',
248
+ description: '最大递归深度(可选,默认 2,范围 0-8)',
249
+ minimum: 0,
250
+ maximum: LIST_FILES_MAX_DEPTH,
230
251
  },
231
252
  },
232
253
  required: ['path'],
@@ -239,6 +260,7 @@ exports.TOOLS = [
239
260
  }
240
261
  return listFiles_(path, args.maxDepth, context.cwd);
241
262
  },
263
+ validateInput: args => validateOptionalSafeInteger(args, 'list_files', 'maxDepth', 0, LIST_FILES_MAX_DEPTH),
242
264
  isReadOnly: () => true,
243
265
  isConcurrencySafe: () => true,
244
266
  userFacingName: args => `List ${args.path}`,
@@ -266,11 +288,15 @@ exports.TOOLS = [
266
288
  },
267
289
  timeout: {
268
290
  type: 'number',
269
- description: '超时时间 ms(可选,默认 30000)',
291
+ description: '超时时间 ms(可选,默认 30000,范围 1-600000)',
292
+ minimum: EXEC_COMMAND_MIN_TIMEOUT_MS,
293
+ maximum: EXEC_COMMAND_MAX_TIMEOUT_MS,
270
294
  },
271
295
  maxOutput: {
272
296
  type: 'number',
273
- description: '最大输出字节数(可选,默认 51200 = 50KB,超出截断)',
297
+ description: '最大输出字节数(可选,默认 51200,范围 1024-10485760,超出截断)',
298
+ minimum: EXEC_COMMAND_MIN_OUTPUT_BYTES,
299
+ maximum: EXEC_COMMAND_MAX_OUTPUT_BYTES,
274
300
  },
275
301
  },
276
302
  required: ['command'],
@@ -284,6 +310,8 @@ exports.TOOLS = [
284
310
  // Issue #32 #3.2: 传递 abortSignal
285
311
  return execCommand_(command, args.cwd, args.timeout, args.maxOutput, context.abortSignal, context.cwd);
286
312
  },
313
+ validateInput: args => validateOptionalSafeInteger(args, 'exec_command', 'timeout', EXEC_COMMAND_MIN_TIMEOUT_MS, EXEC_COMMAND_MAX_TIMEOUT_MS) ??
314
+ validateOptionalSafeInteger(args, 'exec_command', 'maxOutput', EXEC_COMMAND_MIN_OUTPUT_BYTES, EXEC_COMMAND_MAX_OUTPUT_BYTES),
287
315
  isDestructive: args => {
288
316
  const cmd = args.command || '';
289
317
  return (0, bash_security_1.containsRecursiveRm)(cmd) || /(?:^|[;&|]\s*)(?:[^\s]+\/)?(?:mkfs|dd)(?:\s|$)/.test(cmd);
@@ -300,7 +328,17 @@ exports.TOOLS = [
300
328
  }
301
329
  // v0.1.3-2 §1.2: a configured-but-unusable sandbox is a hard deny, decided
302
330
  // here so the user sees the reason instead of an opaque execution failure.
303
- const { workdir, projectRoot } = resolveExecCommandPaths(args.cwd, context?.cwd);
331
+ let paths;
332
+ try {
333
+ paths = resolveExecCommandPaths(args.cwd, context?.cwd);
334
+ }
335
+ catch (error) {
336
+ return {
337
+ behavior: 'deny',
338
+ reason: error instanceof Error ? error.message : 'exec_command cwd is outside workspace',
339
+ };
340
+ }
341
+ const { workdir, projectRoot } = paths;
304
342
  const sandboxSettings = (0, sandbox_1.resolveSandboxSettings)(projectRoot);
305
343
  let sandboxNote = '';
306
344
  if ((sandboxSettings.profile ?? 'none') !== 'none') {
@@ -961,50 +999,18 @@ function safePath(input, cwd = process.cwd()) {
961
999
  * under `rootReal`. Used to enforce that a realpath is still inside the
962
1000
  * workspace even when directories along the path are themselves symlinks.
963
1001
  */
964
- function isUnderRealRoot(p, rootReal) {
965
- const rel = (0, path_1.relative)(rootReal, p);
966
- return rel === '' || (!rel.startsWith('..') && !(0, path_1.isAbsolute)(rel));
967
- }
968
- /**
969
- * Contain a tool-resolved path inside the workspace root (cwd).
970
- *
971
- * Blocks `../` traversal and absolute paths outside the workspace, which would
972
- * otherwise let `write_file`/`edit_file` scribble over `~/.bashrc`, SSH config
973
- * or other projects — especially dangerous under `acceptEdits` auto-approval,
974
- * where the write runs without a confirmation prompt (issue #65).
975
- *
976
- * Containment is lexical first, then re-checked after resolving symlinks
977
- * (issue #99): a workspace symlink that points outside the workspace must not
978
- * be followed into an arbitrary write target. We resolve the realpath of the
979
- * parent directory (which also collapses any intermediate symlinked dirs) and,
980
- * if the target already exists, the target itself; if either escapes the
981
- * workspace we refuse. The workspace root is also realpath-resolved so a
982
- * symlinked cwd does not produce false rejections. Fail-closed on any
983
- * filesystem error.
984
- */
985
1002
  function isWithinWorkspace(resolved, cwd) {
986
- const root = (0, path_1.resolve)(cwd);
987
- const rel = (0, path_1.relative)(root, resolved);
1003
+ return (0, workspace_containment_1.isWorkspacePath)(cwd, resolved);
1004
+ }
1005
+ function isExecCwdWithinWorkspace(workdir, projectRoot) {
1006
+ const root = (0, path_1.resolve)(projectRoot);
1007
+ const rel = (0, path_1.relative)(root, workdir);
988
1008
  if (!(rel === '' || (!rel.startsWith('..') && !(0, path_1.isAbsolute)(rel))))
989
1009
  return false;
990
- try {
991
- const rootReal = (0, fs_1.realpathSync)(root);
992
- const realParent = (0, fs_1.realpathSync)((0, path_1.dirname)(resolved));
993
- if (!isUnderRealRoot(realParent, rootReal))
994
- return false;
995
- // Only the existing target needs its own realpath check; a brand-new file
996
- // inherits the (already-validated) containment of its parent directory.
997
- if ((0, fs_1.existsSync)(resolved)) {
998
- const realTarget = (0, fs_1.realpathSync)(resolved);
999
- if (!isUnderRealRoot(realTarget, rootReal))
1000
- return false;
1001
- }
1002
- }
1003
- catch {
1004
- // A missing/unknowable realpath means we cannot prove containment — refuse.
1005
- return false;
1006
- }
1007
- return true;
1010
+ // A missing synthetic root can only fail at spawn time; lexical containment
1011
+ // still prevents it from selecting an external directory. Real workspaces
1012
+ // take the shared symlink-aware boundary check.
1013
+ return (0, fs_1.existsSync)(root) ? (0, workspace_containment_1.isWorkspacePath)(root, workdir) : true;
1008
1014
  }
1009
1015
  /**
1010
1016
  * Truncate text to at most maxBytes UTF-8 bytes, cutting on a character
@@ -1035,6 +1041,14 @@ async function readFileSync_(path, maxLines, offset, cwd) {
1035
1041
  try {
1036
1042
  const normalizedPath = normalizeToolPath(path);
1037
1043
  const resolved = safePath(path, cwd);
1044
+ const workspaceRoot = cwd ?? process.cwd();
1045
+ if (!isWithinWorkspace(resolved, workspaceRoot)) {
1046
+ return {
1047
+ success: false,
1048
+ output: '',
1049
+ error: `Refusing to read outside the workspace: ${normalizedPath}`,
1050
+ };
1051
+ }
1038
1052
  if (!(0, fs_1.existsSync)(resolved)) {
1039
1053
  return { success: false, output: '', error: `File not found: ${normalizedPath}` };
1040
1054
  }
@@ -1113,6 +1127,7 @@ async function writeFileSync_(path, content, cwd) {
1113
1127
  error: `Refusing to write outside the workspace: ${normalizedPath}`,
1114
1128
  };
1115
1129
  }
1130
+ (0, fs_1.mkdirSync)((0, path_1.dirname)(resolved), { recursive: true });
1116
1131
  (0, fs_1.writeFileSync)(resolved, content, 'utf-8');
1117
1132
  return {
1118
1133
  success: true,
@@ -1126,6 +1141,14 @@ async function writeFileSync_(path, content, cwd) {
1126
1141
  async function listFiles_(path, maxDepth, cwd) {
1127
1142
  const normalizedPath = normalizeToolPath(path);
1128
1143
  const resolved = safePath(path, cwd);
1144
+ const workspaceRoot = cwd ?? process.cwd();
1145
+ if (!isWithinWorkspace(resolved, workspaceRoot)) {
1146
+ return {
1147
+ success: false,
1148
+ output: '',
1149
+ error: `Refusing to list outside the workspace: ${normalizedPath}`,
1150
+ };
1151
+ }
1129
1152
  if (!(0, fs_1.existsSync)(resolved)) {
1130
1153
  return { success: false, output: '', error: `Path not found: ${normalizedPath}` };
1131
1154
  }
@@ -1168,14 +1191,35 @@ async function listFiles_(path, maxDepth, cwd) {
1168
1191
  }
1169
1192
  // Issue #32 #3.2: execCommand_ 支持 abortSignal
1170
1193
  function resolveExecCommandPaths(cwd, baseCwd) {
1171
- const projectRoot = baseCwd ?? process.cwd();
1194
+ const projectRoot = (0, path_1.resolve)(baseCwd ?? process.cwd());
1195
+ if (!cwd)
1196
+ return { workdir: projectRoot, projectRoot };
1197
+ const normalizedCwd = normalizeToolPath(cwd);
1198
+ if ((0, path_1.isAbsolute)(normalizedCwd)) {
1199
+ throw new Error('exec_command cwd must be a workspace-relative path');
1200
+ }
1201
+ const workdir = safePath(normalizedCwd, projectRoot);
1202
+ if (!isExecCwdWithinWorkspace(workdir, projectRoot)) {
1203
+ throw new Error('exec_command cwd must stay within the workspace');
1204
+ }
1172
1205
  return {
1173
- workdir: cwd ? safePath(cwd, projectRoot) : projectRoot,
1206
+ workdir,
1174
1207
  projectRoot,
1175
1208
  };
1176
1209
  }
1177
1210
  async function execCommand_(command, cwd, timeout, maxOutput, abortSignal, baseCwd, sandbox) {
1178
- const { workdir, projectRoot } = resolveExecCommandPaths(cwd, baseCwd);
1211
+ let paths;
1212
+ try {
1213
+ paths = resolveExecCommandPaths(cwd, baseCwd);
1214
+ }
1215
+ catch (error) {
1216
+ return {
1217
+ success: false,
1218
+ output: '',
1219
+ error: error instanceof Error ? error.message : 'exec_command cwd is outside workspace',
1220
+ };
1221
+ }
1222
+ const { workdir, projectRoot } = paths;
1179
1223
  // v0.1.3-2 §1.2: plan the (possibly sandboxed) argv before spawning. A
1180
1224
  // configured sandbox that cannot be honoured must refuse the command rather
1181
1225
  // than silently degrade into an unsandboxed run.
@@ -1655,10 +1699,23 @@ function validateRegexPattern(pattern) {
1655
1699
  if (pattern.length > 2000)
1656
1700
  return 'pattern is too long (max 2000 characters)';
1657
1701
  // A group containing an internal quantifier, then quantified again: the
1658
- // canonical exponential-backtracking construction.
1659
- if (/\([^()]*[*+?][^()]*\)\s*[*+?]/.test(pattern)) {
1702
+ // canonical exponential-backtracking construction. Quantifier families
1703
+ // include braces; treating only `*+?` as quantifiers lets `(a{1,})+` hang
1704
+ // the event loop on a long near miss.
1705
+ const quantifier = String.raw `(?:[*+?]|\{\d+(?:,\d*)?\})`;
1706
+ if (new RegExp(String.raw `\([^()]*${quantifier}[^()]*\)\s*${quantifier}`).test(pattern)) {
1660
1707
  return 'pattern contains a quantified group with an internal quantifier — this risks catastrophic backtracking (ReDoS)';
1661
1708
  }
1709
+ // Reject the common overlapping-alternative form `(a|aa)+`: either branch
1710
+ // can consume the same prefix, creating exponentially many partitions.
1711
+ const quantifiedGroup = new RegExp(String.raw `\(([^()]*)\)\s*${quantifier}`, 'gu');
1712
+ for (const match of pattern.matchAll(quantifiedGroup)) {
1713
+ const alternatives = match[1].split('|');
1714
+ if (alternatives.length > 1 &&
1715
+ alternatives.some((left, index) => alternatives.some((right, otherIndex) => index !== otherIndex && left.length > 0 && right.length > 0 && right.startsWith(left)))) {
1716
+ return 'pattern contains overlapping alternatives inside a quantified group — this risks catastrophic backtracking (ReDoS)';
1717
+ }
1718
+ }
1662
1719
  try {
1663
1720
  new RegExp(pattern);
1664
1721
  }
@@ -1678,6 +1735,14 @@ async function glob_(pattern, basePath, cwd) {
1678
1735
  try {
1679
1736
  const normalizedBasePath = basePath ? normalizeToolPath(basePath) : (cwd ?? process.cwd());
1680
1737
  const base = basePath ? safePath(basePath, cwd) : (cwd ?? process.cwd());
1738
+ const workspaceRoot = cwd ?? process.cwd();
1739
+ if (!isWithinWorkspace(base, workspaceRoot)) {
1740
+ return {
1741
+ success: false,
1742
+ output: '',
1743
+ error: `Refusing to search outside the workspace: ${normalizedBasePath}`,
1744
+ };
1745
+ }
1681
1746
  if (!(0, fs_1.existsSync)(base)) {
1682
1747
  return { success: false, output: '', error: `Path not found: ${normalizedBasePath}` };
1683
1748
  }
@@ -1767,6 +1832,14 @@ async function grep_(pattern, basePath, globPattern, contextLines, cwd) {
1767
1832
  try {
1768
1833
  const normalizedBasePath = basePath ? normalizeToolPath(basePath) : (cwd ?? process.cwd());
1769
1834
  const base = basePath ? safePath(basePath, cwd) : (cwd ?? process.cwd());
1835
+ const workspaceRoot = cwd ?? process.cwd();
1836
+ if (!isWithinWorkspace(base, workspaceRoot)) {
1837
+ return {
1838
+ success: false,
1839
+ output: '',
1840
+ error: `Refusing to search outside the workspace: ${normalizedBasePath}`,
1841
+ };
1842
+ }
1770
1843
  if (!(0, fs_1.existsSync)(base)) {
1771
1844
  return { success: false, output: '', error: `Path not found: ${normalizedBasePath}` };
1772
1845
  }
@@ -2003,9 +2076,9 @@ async function executeBatchRead(args, context) {
2003
2076
  }
2004
2077
  // The scheduler resolved permissions for `batch_read` itself, not for the
2005
2078
  // tools it fans out to. Without re-running the gate here, a project
2006
- // `deny: read_file(*.env)` rule -- and the plan-mode block -- apply to the
2007
- // flat call but not to the batched one, so the model can read a denied path
2008
- // simply by wrapping it in `batch_read`.
2079
+ // `deny: read_file(*.env)` rule applies to the flat call and must also apply
2080
+ // to the batched one, otherwise the model could read a denied path simply
2081
+ // by wrapping it in `batch_read`.
2009
2082
  const stepPermission = (0, tool_1.getToolMetadataPresence)(tool).hasPermissionCheck && tool.checkPermissions
2010
2083
  ? tool.checkPermissions(step.args, context)
2011
2084
  : undefined;
@@ -2017,7 +2090,7 @@ async function executeBatchRead(args, context) {
2017
2090
  permissionMode: context.permissionMode,
2018
2091
  allowlist: context.toolAllowlist?.(step.tool, step.args),
2019
2092
  });
2020
- if (effective.outcome === 'deny' || effective.outcome === 'block') {
2093
+ if (effective.outcome === 'deny') {
2021
2094
  const error = effective.reason || `Tool ${step.tool} is not permitted (${effective.source ?? 'policy'})`;
2022
2095
  return buildBatchReadPayload(false, error, [
2023
2096
  {
@@ -2134,6 +2207,7 @@ async function executeTool(name, args, abortSignal, toolContext) {
2134
2207
  toolAllowlist: toolContext?.toolAllowlist,
2135
2208
  toolConfirmation: toolContext?.toolConfirmation,
2136
2209
  confirmToolUse: toolContext?.confirmToolUse,
2210
+ onPlanModeChange: toolContext?.onPlanModeChange,
2137
2211
  };
2138
2212
  const result = await tool.execute(args, context);
2139
2213
  // Assertions are generated by the runtime allowlist, never accepted from a