diff options
| author | Aiden Cline <[email protected]> | 2026-04-06 23:30:05 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-06 23:30:05 -0500 |
| commit | 885df8eb54e268e7720242406228e2de54bf62c6 (patch) | |
| tree | 3a42be21bfc0626538c9bb5e01af5f726ae900d0 | |
| parent | f4975ef32a38fc4b605db7d1a87cd85045b4d958 (diff) | |
| download | opencode-885df8eb54e268e7720242406228e2de54bf62c6.tar.gz opencode-885df8eb54e268e7720242406228e2de54bf62c6.zip | |
feat: add --dangerously-skip-permissions flag to opencode run (#21266)
| -rw-r--r-- | packages/opencode/src/cli/cmd/run.ts | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/packages/opencode/src/cli/cmd/run.ts b/packages/opencode/src/cli/cmd/run.ts index 92b6156ca..05fb3a579 100644 --- a/packages/opencode/src/cli/cmd/run.ts +++ b/packages/opencode/src/cli/cmd/run.ts @@ -302,6 +302,11 @@ export const RunCommand = cmd({ describe: "show thinking blocks", default: false, }) + .option("dangerously-skip-permissions", { + type: "boolean", + describe: "auto-approve permissions that are not explicitly denied (dangerous!)", + default: false, + }) }, handler: async (args) => { let message = [...args.message, ...(args["--"] || [])] @@ -544,15 +549,23 @@ export const RunCommand = cmd({ if (event.type === "permission.asked") { const permission = event.properties if (permission.sessionID !== sessionID) continue - UI.println( - UI.Style.TEXT_WARNING_BOLD + "!", - UI.Style.TEXT_NORMAL + - `permission requested: ${permission.permission} (${permission.patterns.join(", ")}); auto-rejecting`, - ) - await sdk.permission.reply({ - requestID: permission.id, - reply: "reject", - }) + + if (args["dangerously-skip-permissions"]) { + await sdk.permission.reply({ + requestID: permission.id, + reply: "once", + }) + } else { + UI.println( + UI.Style.TEXT_WARNING_BOLD + "!", + UI.Style.TEXT_NORMAL + + `permission requested: ${permission.permission} (${permission.patterns.join(", ")}); auto-rejecting`, + ) + await sdk.permission.reply({ + requestID: permission.id, + reply: "reject", + }) + } } } } |
