OpenCode splits its coding agent into two permission tiers: full-access build by default, read-only plan that asks first
Synopsis
The open-source coding agent OpenCode ships two built-in agents: build, the default full-access agent for development work, and plan, a read-only agent that denies file edits by default and asks permission before running bash commands, aimed at exploring unfamiliar codebases or planning changes. A Tab key switches between them, and a general subagent invoked with @general handles complex searches and multistep tasks. Installation spans a shell script, npm, brew, scoop, pacman, mise and nix, with a desktop application also available.
Interpretation
OpenCode divides how its coding agent works into two switchable built-in roles, one that changes code and one that only reads and analyzes. Previously, exploring code and editing code typically sat inside a single default permission tier when using a coding agent. According to the project description, build is the default full-access agent for development work, while plan is restricted to read-only use for analysis and code exploration.
The read-only tier's constraint applies to concrete actions rather than a prompt: it denies file edits by default and asks permission before running bash commands. This tier targets tasks such as exploring an unfamiliar codebase or planning changes, which do not require writes. The project describes plan as suited to exploring unfamiliar codebases or planning changes, and states that it denies file edits by default and asks before running bash.
The two built-in agents switch with the Tab key, and a general subagent called with @general in a message handles complex searches and multistep tasks. Installation channels cover the install script, npm, bun, pnpm, yarn, scoop, choco, brew, pacman, mise and nix, and a desktop application is also offered. The install script resolves its path in the order OPENCODE_INSTALL_DIR, XDG_BIN_DIR, $HOME/bin, then $HOME/.opencode/bin.
Perspective
The report covers the built-in agents, permission rules, switching and invocation methods, and installation channels listed in the project description. It is intended for developers preparing to use an open-source coding agent locally or in a team, especially those who want to analyze before changing an unfamiliar codebase. The project description states no follow-up validation or rollout step.
The project description gives no performance data for the agents on real tasks and does not say when the read-only tier would allow a write. Installation channels are numerous and update at different rates, and the description notes that the official brew formula is updated less often.
