From 6e46ea5b1cd43414b28f2e5d7ba1beccae53b1f6 Mon Sep 17 00:00:00 2001 From: Pedram Amini Date: Tue, 16 Dec 2025 22:16:34 -0600 Subject: [PATCH] MAESTRO: Document OpenCode YOLO mode verification findings Research confirmed OpenCode's batch mode auto-approves all tool operations: - No explicit --dangerously-skip-permissions flag needed - opencode run subcommand inherently enables auto-approval - Permission system configurable via opencode.json if needed - Read-only operations never require approval Sources: OpenCode official docs (permissions, CLI) and GitHub README --- AGENT_SUPPORT.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/AGENT_SUPPORT.md b/AGENT_SUPPORT.md index f9270f33..fb63c7bf 100644 --- a/AGENT_SUPPORT.md +++ b/AGENT_SUPPORT.md @@ -574,6 +574,19 @@ describe('YourAgentOutputParser', () => { | Read-only | `--agent plan` | | Session ID Field | `sessionID` (camelCase) | | Session Storage | Server-managed | +| YOLO Mode | ✅ Auto-enabled in batch mode | + +**YOLO Mode (Auto-Approval) Details:** + +OpenCode automatically approves all tool operations in batch mode (`opencode run`). Per [official documentation](https://opencode.ai/docs/permissions/): + +- **Batch mode behavior:** "All permissions are auto-approved for the session" when running non-interactively +- **No explicit flag needed:** Unlike Claude Code's `--dangerously-skip-permissions`, OpenCode's `run` subcommand inherently auto-approves +- **Permission defaults:** Most tools run without approval by default; only `doom_loop` and `external_directory` require explicit approval in interactive mode +- **Configurable permissions:** Advanced users can customize via `opencode.json` with granular tool-level controls (`allow`, `ask`, `deny`) +- **Read-only operations:** Tools like `view`, `glob`, `grep`, `ls`, and `diagnostics` never require approval + +This makes OpenCode suitable for Maestro's batch processing use case without additional configuration. **Implementation Status:** - ✅ Output Parser: `src/main/parsers/opencode-output-parser.ts` (based on expected format)