Routines
Routines are tasks that run by themselves. You describe when to run and what to do in natural language — no cron syntax, no scripts — and the app takes care of the rest.
Creating a routine
Section titled “Creating a routine”Routines live in their own sidebar section. When creating one, you define:
- When to trigger — every day at one or more times, every X minutes, or manually only.
- What to do — a free-form instruction in natural language.
- Which tools it may use — pick from your connected MCP servers, such as e-mail, files or APIs.
You can follow the status of the last execution and run any routine immediately from the same screen.
Routines survive the app closing
Section titled “Routines survive the app closing”Settings → Server includes a command to install OpenCode as a persistent login service on Windows, macOS and Linux. With the service installed, routines keep firing even when the desktop app is closed — your workstation keeps working while you are away.
Reliable execution
Section titled “Reliable execution”- Configurable timeout — routines are terminated automatically if a shell command or MCP tool hangs.
- Direct MCP executor — MCP actions run directly and deterministically, without opening unnecessary chat sessions.
Example use cases
Section titled “Example use cases”- Every morning at 8:30, read new support e-mails via the built-in mail MCP and draft a summary.
- Every 30 minutes, check a repository for failing CI runs and notify via Telegram.
- On demand, generate a report from a database MCP and save it to a shared folder.