fix(sandbox): always allow image tool

This commit is contained in:
Peter Steinberger
2026-01-12 18:07:34 +00:00
parent d24de1ec3b
commit 17ff25bd20
2 changed files with 46 additions and 11 deletions

View File

@@ -475,17 +475,26 @@ export function resolveSandboxToolPolicyForAgent(
key: "tools.sandbox.tools.deny",
} satisfies SandboxToolPolicySource);
const deny = Array.isArray(agentDeny)
? agentDeny
: Array.isArray(globalDeny)
? globalDeny
: DEFAULT_TOOL_DENY;
let allow = Array.isArray(agentAllow)
? agentAllow
: Array.isArray(globalAllow)
? globalAllow
: DEFAULT_TOOL_ALLOW;
// `image` is essential for multimodal workflows; always include it in sandboxed
// sessions unless explicitly denied.
if (!deny.includes("image") && !allow.includes("image")) {
allow = [...allow, "image"];
}
return {
allow: Array.isArray(agentAllow)
? agentAllow
: Array.isArray(globalAllow)
? globalAllow
: DEFAULT_TOOL_ALLOW,
deny: Array.isArray(agentDeny)
? agentDeny
: Array.isArray(globalDeny)
? globalDeny
: DEFAULT_TOOL_DENY,
allow,
deny,
sources: {
allow: allowSource,
deny: denySource,