fix(permissions): ensure omo permission overrides take precedence over opencode defaults

The spread order in applyToolConfig was incorrect - omo's external_directory: 'allow'
was placed BEFORE the config.permission spread, allowing opencode's default 'ask' to
overwrite it. This caused write/edit tools to hang on headless opencode serve sessions
(no TUI to approve permission prompts).

Move omo's permission overrides AFTER the base config spread so they always win.

Fixes write/edit tool hangs when running opencode serve headlessly.
This commit is contained in:
YeonGyu-Kim
2026-03-24 16:19:56 +09:00
parent 370eb945ee
commit f9d354b63e
+1 -1
View File
@@ -116,9 +116,9 @@ export function applyToolConfig(params: {
}
params.config.permission = {
...(params.config.permission as Record<string, unknown>),
webfetch: "allow",
external_directory: "allow",
...(params.config.permission as Record<string, unknown>),
task: "deny",
};
}