# OpenCode + Render: Deploy and manage your Render apps from OpenCode.

[OpenCode](https://opencode.ai/docs/) is an open-source terminal coding agent. Paired with Render, it can inspect services, fetch logs, update environment variables, create supported services, and manage deploy workflows from your shell.

## Agent details

- Agent: OpenCode
- Docs: [OpenCode docs](https://opencode.ai/docs/)
- Install: `curl -fsSL https://opencode.ai/install | bash`
- Start: `opencode`
- Skills mode: Agent-invoked

## Quick start

1. *Install OpenCode.*

   ```shell
   curl -fsSL https://opencode.ai/install | bash
   ```

2. *Install the Render OpenCode plugin.* To install the plugin, skills, commands, and `@render` subagent, run:

   ```shell
   curl -fsSL https://raw.githubusercontent.com/render-oss/render-opencode-plugin/main/install.sh | bash
   ```

   To also add the optional Render MCP server, generate an API key in your [account settings](https://dashboard.render.com/u/settings#api-keys), set it as `RENDER_API_KEY`, and add `--enable-mcp`:

   ```shell
   curl -fsSL https://raw.githubusercontent.com/render-oss/render-opencode-plugin/main/install.sh | bash -s -- --enable-mcp
   ```

   The installer preserves existing `opencode.json` fields and skips an existing `mcp.render` entry unless you pass `--force`.

3. *Install and authenticate the Render CLI* for Blueprint validation and live Render workflows:

   ```shell
   brew install render
   ```

   ```shell
   render login
   ```

4. *Start OpenCode.*

   ```shell
   opencode
   ```

5. *Set your Render workspace* if you have multiple workspaces.

6. *Deploy a template.* Try a prompt like *"Deploy this project to Render and show me the plan before applying it."*

## Quick links

- [OpenCode plugin](https://github.com/render-oss/render-opencode-plugin)
- [Skills on GitHub](https://github.com/render-oss/skills)
- [MCP Server on GitHub](https://github.com/render-oss/render-mcp-server)
- [The Render CLI docs](cli)
- [OpenCode docs](https://opencode.ai/docs/)

## MCP configuration

OpenCode reads plugin and MCP configuration from `opencode.json` in your project or `~/.config/opencode/opencode.json` globally.

- MCP install command: `curl -fsSL https://raw.githubusercontent.com/render-oss/render-opencode-plugin/main/install.sh | bash -s -- --enable-mcp`
- MCP config file: `~/.config/opencode/opencode.json`
- OAuth: Not supported yet

```json:~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "render": {
      "type": "remote",
      "url": "https://mcp.render.com/mcp",
      "enabled": true,
      "oauth": false,
      "headers": {
        "Authorization": "Bearer {env:RENDER_API_KEY}"
      }
    }
  }
}
```

> The Render MCP server currently uses *API-key authentication*. Generate a key in your [account settings](https://dashboard.render.com/u/settings#api-keys) and set it as `RENDER_API_KEY`.

The prompts below can use a combination of MCP tools, Render skills, the Render CLI, and guided Dashboard or API steps.

## Example prompts

- *Deploy:* Deploy this project to Render.
- *Debug:* Check the deploy logs for the last failed deploy and fix the error.
- *Blueprint:* Create staging and production environments using a render.yaml Blueprint.
- *Workflow:* Set up a Workflow to orchestrate my data pipeline with retries and subtasks.

## Render skills

Render's official *skills* give OpenCode task-specific procedures for deploys, debugging, monitoring, databases, Blueprints, and more. The Render OpenCode plugin installs those skills with commands, a `@render` subagent, hooks, and a Blueprint validation tool.

### Install skills

The [Render OpenCode plugin](https://github.com/render-oss/render-opencode-plugin) is the preferred way to install skills, commands, and the `@render` agent:

```shell
curl -fsSL https://raw.githubusercontent.com/render-oss/render-opencode-plugin/main/install.sh | bash
```

Add `--enable-mcp` to also merge the Render MCP server into your OpenCode config:

```shell
curl -fsSL https://raw.githubusercontent.com/render-oss/render-opencode-plugin/main/install.sh | bash -s -- --enable-mcp
```

Use the standalone skills installer if you don't want the full plugin:

```shell
npx skills add render-oss/skills
```

### Skills catalog

- [render-background-workers](https://github.com/render-oss/skills/blob/main/skills/render-background-workers/SKILL.md): Sets up and configures background workers on Render for queue-based job processing.
- [render-blueprints](https://github.com/render-oss/skills/blob/main/skills/render-blueprints/SKILL.md): Authors and validates render.yaml Blueprints for Render infrastructure.
- [render-cli](https://github.com/render-oss/skills/blob/main/skills/render-cli/SKILL.md): Installs and uses the Render CLI for deploys, logs, SSH, psql, Blueprint validation, and automation.
- [render-cron-jobs](https://github.com/render-oss/skills/blob/main/skills/render-cron-jobs/SKILL.md): Configures and troubleshoots scheduled tasks on Render using cron job services.
- [render-debug](https://github.com/render-oss/skills/blob/main/skills/render-debug/SKILL.md): Debug failed Render deployments by analyzing logs, metrics, and database state.
- [render-deploy](https://github.com/render-oss/skills/blob/main/skills/render-deploy/SKILL.md): Deploy applications to Render by analyzing codebases, generating render.yaml Blueprints, and providing Dashboard deeplinks.
- [render-disks](https://github.com/render-oss/skills/blob/main/skills/render-disks/SKILL.md): Attaches and manages persistent disks on Render services—mount paths, sizing, snapshots, file transfers, and single-instance constraints.
- [render-docker](https://github.com/render-oss/skills/blob/main/skills/render-docker/SKILL.md): Builds and deploys Docker containers on Render—Dockerfiles, multi-stage builds, Blueprint Docker fields, private registries, layer caching, and platform constraints.
- [render-domains](https://github.com/render-oss/skills/blob/main/skills/render-domains/SKILL.md): Configures custom domains and TLS certificates on Render—DNS setup, CNAME records, apex domains, wildcard domains, and certificate troubleshooting.
- [render-env-vars](https://github.com/render-oss/skills/blob/main/skills/render-env-vars/SKILL.md): Configures environment variables, secrets, and env groups on Render.
- [render-keyvalue](https://github.com/render-oss/skills/blob/main/skills/render-keyvalue/SKILL.md): Provisions and configures Render Key Value (Redis-compatible Valkey 8) instances for caching, session storage, and job queues.
- [render-mcp](https://github.com/render-oss/skills/blob/main/skills/render-mcp/SKILL.md): Connects and configures the Render MCP server for AI coding tools—setup per tool (Cursor, Claude Code, Codex), authentication, workspace selection, tool catalog, and troubleshooting.
- [render-migrate-from-heroku](https://github.com/render-oss/skills/blob/main/skills/render-migrate-from-heroku/SKILL.md): Migrate from Heroku to Render by reading local project files and generating equivalent Render services.
- [render-monitor](https://github.com/render-oss/skills/blob/main/skills/render-monitor/SKILL.md): Monitor Render services in real-time.
- [render-networking](https://github.com/render-oss/skills/blob/main/skills/render-networking/SKILL.md): Connects Render services over the private network—internal DNS, service discovery, and cross-service communication.
- [render-postgres](https://github.com/render-oss/skills/blob/main/skills/render-postgres/SKILL.md): Sets up and optimizes Managed PostgreSQL on Render—connection strings (internal vs external), creation constraints, storage autoscaling, connection limits, high availability, read replicas, backups, and MCP inspection.
- [render-private-services](https://github.com/render-oss/skills/blob/main/skills/render-private-services/SKILL.md): Configures Render private services—internal-only apps that accept traffic exclusively from other Render services over the private network.
- [render-scaling](https://github.com/render-oss/skills/blob/main/skills/render-scaling/SKILL.md): Scales Render services—configures autoscaling targets, chooses instance types, sets manual instance counts, and optimizes cost.
- [render-static-sites](https://github.com/render-oss/skills/blob/main/skills/render-static-sites/SKILL.md): Deploys and configures static sites on Render's global CDN—build commands, publish paths, SPA routing, redirects, custom headers, and PR previews.
- [render-web-services](https://github.com/render-oss/skills/blob/main/skills/render-web-services/SKILL.md): Configures Render web services—port binding, TLS, health checks, custom domains, auto-deploy, PR previews, persistent disks, and deploy lifecycle.
- [render-workflows](https://github.com/render-oss/skills/blob/main/skills/render-workflows/SKILL.md): Sets up, develops, tests, and deploys Render Workflows.

## Common workflows

### Deploy from the terminal

- Ask OpenCode to inspect the project and propose a Render deployment plan.
- Review the generated Blueprint or service settings.
- Let OpenCode apply supported changes with MCP or the Render CLI, or have it guide you through Dashboard or API steps.
- Ask OpenCode to watch the first deploy.

### Debug a failing deployment

- Ask OpenCode to fetch recent deploy logs.
- Have it identify the most likely root cause.
- Apply the code or env-var fix, then verify the next deploy.

### Add async processing

- Ask OpenCode to add a background worker service definition.
- Create a Render Key Value instance for the queue backend.
- Add graceful shutdown handling to the worker code.

## Tips for success

> - *Keep Render config in the repository* so OpenCode can inspect infrastructure changes.
> - *Use MCP for live Render state* instead of asking the agent to infer production details from code.
> - *Ask for a plan before applying changes* when adding services, databases, or workers.

## Community

*Render MCP Server*

Open-source MCP server source, install instructions, and tool reference.

*Render Skills*

The full skill catalog with `SKILL.md` files for every supported task.

