OpenCode is an AI agent for working with source code and project files. It runs in a terminal, a separate desktop application, or inside a code editor. The selected model receives the context of the folder that the user added to the working session.
OpenCode is suitable for developers who need more than just an answer in chat. The agent can analyze files, create components, fix code, and prepare an application structure. The result still needs to be reviewed: access to the project expands the agent's capabilities, but does not guarantee that the generated changes are correct.
What OpenCode is and where it works
OpenCode exists in three main formats. The terminal version is designed for command-line work, the desktop version provides a graphical interface, and extensions connect OpenCode with editors and development environments.
| OpenCode option | Suitable for | Key feature |
|---|---|---|
| CLI in the terminal | Developers who work with commands and repositories | Usually provides more commands and settings |
| Desktop application | Users who need a visual interface | The project and model are selected through application windows |
| Editor extension | Users of VS Code, Cursor, Zed, and Windsurf | Work with the agent takes place alongside the code editor |
According to the author's observation, the CLI client provides more commands than the desktop version they used. This observation applies to a specific scenario, not to all OpenCode releases. Before choosing an interface, check the feature set of the current version.
OpenCode accesses project folders and files if the user has allowed that access and selected a working directory. The agent uses this context to create an application, modify existing code, and prepare agentic systems. Permissions for writing, running commands, and working with external services depend on the client settings and connected tools.
How to install OpenCode via npm or curl
OpenCode is installed in the terminal via npm or a curl installation script. The npm option requires Node.js to be installed. Before starting, open a terminal with sufficient permissions to install the package in the selected environment.
- Check that Node.js is installed and runs from the terminal.
- Choose how to install OpenCode: npm or the curl command from the project's current instructions.
- Run the installation command in the terminal.
- Open a new terminal session if the system does not immediately add OpenCode to the execution path.
- Launch OpenCode and check that the client can see the working folder.
It is best to copy the exact command from the current OpenCode installation section. The package name, script parameters, and Node.js version requirements may change between releases. The article does not provide an unverified command from memory: an error in the package name could lead to a failed installation or the launch of third-party software.
If npm reports that Node.js is missing, install a current supported version of Node.js, restart the terminal, and repeat the OpenCode installation. If the command runs but OpenCode cannot be found after installation, check the PATH variable and the location of global npm packages without changing the project files.
Installing the OpenCode desktop version
The OpenCode desktop version is available for Windows, Linux, and macOS. On the download page, choose the operating system and device architecture, such as Windows x64, then install the downloaded package using the standard method for the selected platform.
For Windows, be careful not to confuse the x64 architecture with ARM64. On Linux, consider the package format supported by the specific distribution, and on macOS, choose the installation file according to the computer's processor. If the system blocks the application from starting, first check the publisher and file origin rather than disabling operating-system protection unnecessarily.
After the first launch, OpenCode will ask you to select or add a project. It is better to designate the repository directory as the working folder rather than the entire computer drive. This choice reduces the risk of accidentally exposing configurations, personal documents, and secrets to the agent when they are unrelated to the development task.
How to add a project and configure folder access
In OpenCode, a project is a working directory whose contents the agent uses as the task context. The user adds a folder, selects a model, sets the reasoning level, and sends a request related to the files in that directory.
- Open OpenCode in the selected interface.
- Add the project folder or open an existing working session.
- Check which directories are available to the agent.
- Choose a model and reasoning level.
- Describe the task, specifying the expected result and constraints.
- Review the changes using a diff, tests, and manual file inspection.
A good first request describes the goal, affected files, acceptable modification method, and verification command. Instead of saying “fix the application,” it is better to ask the agent to find the cause of the authorization error, change only the token-processing module, add a test, and show a list of modified files.
What happens if you give the agent access to your entire home directory? It will receive unnecessary context, while the risk of exposing secrets and accidentally changing unrelated files will increase. For experiments, use a separate copy of the project, a repository with a clean working branch, and a backup of important data.
How to connect OpenAI, DeepSeek, and other providers
OpenCode supports connecting ChatGPT and GitHub Copilot and, according to the author, more than 75 providers. The availability of a specific provider, login method, and list of models depend on the OpenCode version, region, the service's own terms, and the account status.
| Provider | Connection method described in the materials | What to check |
|---|---|---|
| OpenAI | API key or account login | Availability of the selected model and payment terms |
| DeepSeek | API key | Balance, limits, and key validity |
| GitHub Copilot | Account connection through a flow available in OpenCode | Account permissions and list of supported models |
For OpenAI, the user selects an authorization method in OpenCode and then completes the login or adds an API key. The key must not be placed in a public repository, prompt text, screenshots, or configuration files that are committed to Git. If the key has already been exposed, revoke it with the provider and create a new one.
DeepSeek requires an API key. The author describes creating one in the API keys section of the DeepSeek platform, while the balance is topped up separately. Having the OpenCode client does not mean that requests to a paid model become free: the provider sets the cost, limits, and billing rules.
After a provider is added, OpenCode displays the available models in the selection menu. If a model does not appear, check authorization, regional restrictions, the balance, the model name, and compatibility between the current OpenCode version and that provider.
Choosing a model and reasoning level
The model in OpenCode determines how the agent analyzes the task and generates changes, while the reasoning level sets the reasoning mode available in the interface. A simple syntax fix does not always require the most expensive or slowest mode. Refactoring several modules, by contrast, requires more detailed analysis of dependencies and tests.
Start with a small task that is easy to verify. After the response, ask OpenCode to show the modified files, explain the decisions it made, and run the tests. This process reduces the likelihood that an unnoticed error will make it into the project's main branch.
Free models in OpenCode
In the interface used by the author, the free models DeepSeek v4.1 Flash, GLM 5.3 Flash, and MiniMax were available. The author considered DeepSeek v4.1 Flash and GLM 5.3 Flash suitable for work when there is no budget, but separately noted that they are not top-tier models.
This assessment reflects the author's experience and does not replace your own testing. Free access may have limitations on speed, context, the number of requests, available tools, or stability. Before submitting commercial code, check the data-processing rules and do not send secrets, keys, personal data, or proprietary fragments without the project owner's permission.
OpenCode Go and paid access
The materials mention the OpenCode Go plan, priced at 10 dollars, with access to a broad list of models. The author also says that after subscribing, they gained access to GPT Luna, Grok, Kimi, and Claude Haiku, among others.
The price, plan contents, and model availability are subject to changing commercial terms. Before paying, open the current information within OpenCode and check the region, billing method, limits, and list of models. Paying for a plan does not override provider rules or guarantee the same quality from all connected models.
For authorization after paying, the author used the command suggested by the OpenCode interface: they copied it into the terminal and completed the login. This is safer than using random commands from forums if the command is displayed by the application itself and the user understands which account it authorizes.
Extensions, MCP, and skills
In the OpenCode settings, the author describes the extensions, MCP, plugins, and skills sections. According to their observation, the interface language can be set to Russian in preferences. The author interprets skills as a set of instructions for working in a specific area, while MCP servers connect the agent to additional tools.
The author mentions collections of skills and MCP servers on mcpmarket.com but does not recommend installing components without checking them. An MCP server or skill can expand the agent's permissions, change access to files, invoke an external command, or send data to a third-party service. Each component should be studied separately, installed in a test project, and checked through the activity log.
In the author's experiment connecting Blender and Godot, Blender Lab MCP, another MCP for Blender, Godot MCP, and Context7 were selected, along with a skill for the Blender-Godot pipeline. This list applies to a specific task and does not mean that these components are necessary for every Blender or Godot project.
What the described experiment showed
The author prepared an English-language prompt describing character references, Blender, the tools, the style of the game world, the creation stages, the project structure, and the final verification. They then installed the MCP servers and saw Blender, Context7, and Godot extensions, as well as the Blender-Godot pipeline skill, in the settings.
In the test scenario, the author used OpenCode together with the GPT 6.1 Soul model to create a project with Blender and Godot components. The resulting three-dimensional character did not fully match the reference, but the author considered it a suitable draft for further refinement. The character was then exported to a Godot project, and the scene was opened for inspection.
This result cannot be generalized to all models, OpenCode versions, or project types. Quality depends on the source images, prompt structure, connected tools, agent permissions, software versions, and how thoroughly the developer checks intermediate results.
OpenCode's popularity: which figures need to be checked
The author reports approximately 215 000 stars on GitHub and more than 16 million developer users. These figures are presented as information stated by the author, not as statistics verified by the editorial team.
The number of stars on GitHub changes over time, and the wording “developer users” requires clarification of the counting methodology. Before publishing such data, check the project’s current page, the measurement date, and what exactly is being counted as a user: an installation, an account, an active session, or the ecosystem’s audience.
Frequently Asked Questions About OpenCode
Does OpenCode work only in the terminal?
No. OpenCode is available as a terminal client, desktop application, and editor extension, including for VS Code, Cursor, Zed, and Windsurf.
Is Node.js required for OpenCode?
Node.js is required to install OpenCode via npm. When using the desktop installer, this requirement may not apply, but compatibility should be checked against the instructions for the current version.
Can OpenAI be connected without an API key?
In the scenario described, OpenCode offers two options for OpenAI: an API key or signing in through an account. The availability of a particular method depends on the current client version and OpenAI’s terms.
Is DeepSeek free in OpenCode?
The presence of a free model in OpenCode’s list does not mean that API access is free. DeepSeek requires an API key, and the balance must be topped up separately if the selected mode requires payment.
Should I install many MCP servers and skills right away?
No. The author recommends installing only the necessary components, checking them individually, and testing them in an isolated project. A large set of extensions makes troubleshooting more difficult and increases the number of permissions granted to the agent.
To get started with OpenCode, install a suitable client, open a copy of the project, connect one provider, choose an understandable model, and give it a small, verifiable task. After that, add MCP servers and skills one at a time, recording what permissions and external actions each component receives.
Compare models before you start
The service sets its plans, limits and model catalog. If they differ from this article, contact us so we can update it and record a new review date.
Browse modelsAffiliate link: your price stays the same and the project earns a commission.