A self-hosted, open-source alternative to Claude Code routines. Run any agent, any model, as often as you want — on your own infrastructure.
Title (Year).ext and write a
Title (Year).info.txt alongside it.
api/v1/openapi.yaml and
services/auth/spec.yaml, then rewrite
docs/reference/api.md to match. Add a dated
entry to CHANGELOG.md summarising what
changed.
app-feature-state.png). Do not
move the file.
YYYY-MM-DD_Vendor_Amount.ext. Append a new
row to expenses.csv with date, vendor,
amount, and a best-guess category.
.md files in the
Notes folder. Extract topics, people, decisions, and
action items from each. Rewrite INDEX.md as a
structured index: topics → notes, people mentioned →
notes, open action items.
git log to
read commits since the last
CHANGELOG.md entry. Group them by type (feat,
fix, chore). Append a new dated version section to
CHANGELOG.md.
Type_Party_Date_status.pdf. Write a
_summary.md alongside it with the structured
key terms.
Claude Code routines are a great idea — save a prompt, pick a trigger, let it run. But you're locked into their platform, their models, and their limits. OpenCode Routines gives you the same thing, self-hosted, with any model OpenCode supports, and the agent can only touch the files you explicitly mount.
See what's running at a glance. Stats, recent runs, one click to create.
| Routine | Trigger | Status | Started |
|---|---|---|---|
| PR review summary | cron | running | just now |
| Docs drift check | filesystem | success | 23 min ago |
| Nightly test runner | cron | failed | 6 hours ago |
Pick a name, write a prompt, choose your model and schedule. That's it.
Watch the agent work in real time. Follow up with questions when it's done.
Found 3 open PRs:
#142 — Add rate limiting to API endpoints
Token bucket limiting on /api/routines. No
edge-case tests — recommend adding timeout
scenarios.
#139 — Fix SSE connection leak
Small focused fix. Looks good.
#136 — Migrate schema to support tags
Migration is not idempotent — add an
IF NOT EXISTS guard.
Connect your LLM providers once. API keys are injected into every run automatically.
# Clone the repo git clone https://github.com/tessellate-digital/opencode-routines.git cd opencode-routines # Install dependencies (needed for the host agent) npm install # Start everything npm run up
Starts the Docker stack and the host agent in one command. Open http://localhost:8080, create a routine, pick a trigger, done.