Your (Claude Code|Codex|Cursor|Gemini) powered (Linear|Github|Slack) agent. Cyrus monitors (Linear|Github) issues assigned to it, creates isolated Git worktrees for each issue, runs (Claude Code|Codex|Cursor|Gemini) sessions to process them, and streams detailed agent activity updates back to (Linear|Github), along with rich interactions like dropdown selects and approvals.
Note: Cyrus is a BYOK platform (bring your keys / subscriptions) for tokens.
Zero cost option — host everything yourself with your own Linear OAuth app, GitHub App, and Slack App. An AI-guided setup skill handles the entire onboarding: installing dependencies, configuring auth, creating integration apps, and connecting repositories — so you don't have to follow a manual guide.
npx skills add ceedaragents/cyrus -gThen in any AI coding agent (Claude Code, Codex, Cursor, etc.):
/cyrus-setup
Or follow the manual setup guide if you prefer.
Configure Cyrus through the dashboard at app.atcyrus.com.
It is called 'self-hosted' because it uses a machine you control as the agent runtime. Networking layer and integrations are provided by the Cyrus cloud provider.
# Install Cyrus
npm install -g cyrus-ai
# Authenticate with your token (provided during onboarding)
cyrus auth <your-token>For Cyrus to create pull requests, configure Git and GitHub CLI. See Git & GitHub Setup.
Keep Cyrus running as a persistent process:
- tmux:
tmux new -s cyrusthen runcyrus(Ctrl+B, D to detach) - pm2:
pm2 start cyrus --name cyrus - systemd: See Running as a Service
No installation required. Everything is managed through app.atcyrus.com.
- End-to-End Community Guide - Complete community manual setup
- Git & GitHub Setup - Git and GitHub CLI configuration for PRs
- Configuration Reference - Detailed config.json options
- Cloudflare Tunnel Setup - Expose your local instance
- Setup Scripts - Repository and global initialization scripts
This project is licensed under the Apache 2.0 license - see the LICENSE file for details.
This project builds on the technologies built by the awesome teams at Linear, and Claude by Anthropic: