Skip to content

OpenCode

OpenCode is an open-source coding agent with a terminal interface and other clients.

Visit OpenCode

What happens when you open OpenCode from a project folder?

The terminal interface starts work in a project location. Decide which small copy to open before asking it to read or change anything. The folder is a starting point. Permissions govern whether tools may use files outside it.

The current V2 documentation says access outside the project can proceed without a prompt unless you configure a rule. Check the project and global settings before opening sensitive material.

What changes when you switch from Plan to Build?

Plan is for working out the change. V2 can still write its own plan files, and shell actions depend on permissions. Build can edit normal project files when allowed. Review what it can do and keep approval prompts for actions you need to inspect.

Check your installed version before following a permissions example. V1 and V2 name some settings differently. The V2 permissions docs also distinguish a one-time approval from a saved rule that can apply to later actions.

What would a useful first plan look like?

Use paper and an invented bookings app. The booking list shows a blank page when no bookings exist. Ask what should appear instead, and keep the example offline without opening OpenCode or running a command.

  1. Specify the visible behavior
    Write “Show No bookings yet when the list is empty.” Give one example with an existing booking that should display as before.
  2. Review the scope
    Write the expected display file and a test for each case. Reject a plan that needs an unrelated database change or access outside the example.
  3. Decide when an edit is justified
    Write the one proposed edit you would accept. On a disposable copy later, inspect the exact changed files and run only a test whose effect you understand.

Does running OpenCode in a terminal keep the work on your computer?

The local terminal runs the session tools. The configured model can still run elsewhere and receive the text or files you send it. OpenCode documents local connections as well as hosted providers. Check where the model runs and what a project has connected before sharing code.

The open-source client and model usage are separate. An existing provider subscription, usage-based account or OpenCode Go can have its own billing and limits. Check the plan for the connection you actually use.