From eb01dc3bc2c4602fd36b83e10d98a4a7c6e660cf Mon Sep 17 00:00:00 2001 From: Bin Date: Wed, 1 Jul 2026 19:22:58 +0800 Subject: [PATCH] fix: allow worktree directories under Global.Path.data --- packages/opencode/src/server/routes/instance/middleware.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/opencode/src/server/routes/instance/middleware.ts b/packages/opencode/src/server/routes/instance/middleware.ts index c0d454bfb..132c02ba2 100644 --- a/packages/opencode/src/server/routes/instance/middleware.ts +++ b/packages/opencode/src/server/routes/instance/middleware.ts @@ -6,7 +6,7 @@ import { AppFileSystem } from "@mimo-ai/shared/filesystem" import { WorkspaceContext } from "@/control-plane/workspace-context" import { WorkspaceID } from "@/control-plane/schema" import { Flag } from "@/flag/flag" -import { Filesystem } from "@/util" +import { Filesystem, Global } from "@/util" export function InstanceMiddleware(workspaceID?: WorkspaceID): MiddlewareHandler { return async (c, next) => { @@ -23,7 +23,8 @@ export function InstanceMiddleware(workspaceID?: WorkspaceID): MiddlewareHandler if (!Flag.MIMOCODE_SERVER_PASSWORD) { const cwd = Filesystem.resolve(process.cwd()) - if (!Filesystem.contains(cwd, directory)) { + const dataDir = Filesystem.resolve(Global.Path.data) + if (!Filesystem.contains(cwd, directory) && !Filesystem.contains(dataDir, directory)) { return c.json({ error: "Access denied: directory must be within the server's working directory" }, 403) } }