mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-10 11:04:59 +00:00
fix: execute sandboxed file ops inside containers (#4026)
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 795ec6aa2f
Co-authored-by: davidbors-snyk <240482518+davidbors-snyk@users.noreply.github.com>
Co-authored-by: steipete <58493+steipete@users.noreply.github.com>
Reviewed-by: @steipete
This commit is contained in:
@@ -9,6 +9,7 @@ import { DEFAULT_AGENT_WORKSPACE_DIR } from "../workspace.js";
|
||||
import { ensureSandboxBrowser } from "./browser.js";
|
||||
import { resolveSandboxConfigForAgent } from "./config.js";
|
||||
import { ensureSandboxContainer } from "./docker.js";
|
||||
import { createSandboxFsBridge } from "./fs-bridge.js";
|
||||
import { maybePruneSandboxes } from "./prune.js";
|
||||
import { resolveSandboxRuntimeStatus } from "./runtime-status.js";
|
||||
import { resolveSandboxScopeKey, resolveSandboxWorkspaceDir } from "./shared.js";
|
||||
@@ -83,7 +84,7 @@ export async function resolveSandboxContext(params: {
|
||||
evaluateEnabled,
|
||||
});
|
||||
|
||||
return {
|
||||
const sandboxContext: SandboxContext = {
|
||||
enabled: true,
|
||||
sessionKey: rawSessionKey,
|
||||
workspaceDir,
|
||||
@@ -96,6 +97,10 @@ export async function resolveSandboxContext(params: {
|
||||
browserAllowHostControl: cfg.browser.allowHostControl,
|
||||
browser: browser ?? undefined,
|
||||
};
|
||||
|
||||
sandboxContext.fsBridge = createSandboxFsBridge({ sandbox: sandboxContext });
|
||||
|
||||
return sandboxContext;
|
||||
}
|
||||
|
||||
export async function ensureSandboxWorkspaceForSession(params: {
|
||||
|
||||
Reference in New Issue
Block a user