Skip to main content
An OpenComputer agent is a source-controlled project that contains its identity, instructions, tools, connections, and runtime configuration. You develop it locally with the opencomputer CLI, test it with the same connections it will use when deployed, and publish new immutable versions without changing the agent’s identity.

Agents as code

Prompts, tools, skills, connections, and runtime settings live together in a normal directory you can review and commit.

Local development

Run the agent locally with OpenCode, your project files, and managed connections before deploying it.

Versioned deployment

A stable agent ID points to immutable deployments. Deploying again updates an alias such as production.

Managed execution

Deployed agents run in isolated OpenComputer sandboxes while the platform manages lifecycle, persistence, and connected services.

Project structure

Initialize an agent from a template:
The CLI creates a flat, editable project:
The important files are:

Identity and versions

opencomputer.toml is the source of truth for identity:
Commit this file to Git. The readable name appears in the dashboard, while the UUID identifies the agent in deployments and APIs. Later deployments with the same UUID create new versions of that agent rather than separate agents. An alias gives callers a stable name for a version:

Development workflow

1

Start from a template

Browse use cases with opencomputer templates, then initialize the one closest to your job.
2

Develop locally

Edit the instructions, tools, and skills in your editor. Use opencomputer session for a single task or opencomputer dev for an interactive OpenCode session.
3

Connect services

Authorize account-level connections through the CLI. OAuth credentials remain managed by OpenComputer rather than being written into the project.
4

Deploy a version

Run opencomputer deploy. The CLI packages the project, publishes an immutable version, and moves the selected alias to that version.

Sessions

opencomputer session runs the current source locally. For a deployed agent, the CLI also exposes the complete managed session lifecycle:
By default, a completed remote turn suspends its runtime. A later session send resumes it, preserving the session and its workspace. Pass --keep to leave the runtime running after a turn.

Channels

Channels let people invoke a deployed agent from another interface. To add Slack to an agent:
The channel declaration and Slack project configuration live with the source. The installation credentials remain managed outside the repository.

Connections

Connect multiple user-owned service accounts with aliases.

Channels

Invoke deployed agents from Slack with per-user identity isolation.

Build a Gmail summarizer

Create, connect, test, and deploy an agent from a template.

Architecture

See how local projects, deployments, sandboxes, and connections fit together.