A desktop automation engine for cryptocurrency trading. Set rules once — Cyrus watches your orders, balances and prices, keeps any one coin from taking over your portfolio, and converts or withdraws automatically across Kraken, Coinbase, Binance, and Robinhood.
Latest release: v1.2.4 · Windows x64 · No Python or Node required
One unified dashboard for balances, open orders, live prices, and the automations running quietly in the background — across every connected exchange. Resting limit orders get their own card, split buy against sell, so you can see what you have working before you drill in.
Connect your exchange API keys, define your rules, and let Cyrus handle the rest — running silently on your desktop.
Trigger actions when an order fills, a balance crosses a threshold, or a price hits your target. Price rules read every minute's high and low, so a spike that comes and goes between checks still counts. Withdraw to a saved address or convert one asset into another — all automatically.
Watch your open orders across all connected exchanges with automatic refresh in the background. No browser tabs required.
Connect Kraken, Coinbase Advanced, Binance, and Robinhood simultaneously. Manage all your exchange accounts from a single application window.
Get native Windows notifications the moment an automation rule executes. Toggle per-account from your profile settings.
All data lives in a local SQLite database under your AppData folder. No cloud sync, no account, no telemetry. Your API keys never leave your machine. Only two things go out at all: coin fundamentals from a public market-data API, which sends nothing but a ticker; and, if you switch the AI assistant on, your portfolio summary to Anthropic under your own key. Both are optional and neither is on by default.
Prevent runaway automation with configurable cooldown periods on every rule. Set the minimum time between executions and trade with confidence.
A heartbeat on the Automations page shows exactly when your rules were last checked — so you never have to wonder whether automation is actually running.
Close the window and Cyrus keeps working from the system tray. Enable start-at-login so your rules survive a reboot without you thinking about it.
Cap how much of your portfolio any one coin can become. Drag the ceiling on a bar chart, and when a holding grows past it, Cyrus sells just the excess into the asset you choose. Simulate-only mode lets you watch it decide before it trades.
Market cap, circulating versus maximum supply, all-time highs and how far below them you are, momentum over 1h to 30d — with your own position sized against all of it. Sortable, and honest about where each number came from.
Spread a buy or a sell across dozens of rungs in one pass. Choose the span by percentage or exact price, commit a share of your balance, and let Cyrus size every rung to the exchange's own tick grid — rotating through several quote currencies if you want.
Every deposit and withdrawal across your exchanges, backfilled to the beginning and stored locally so the page opens instantly. Filter by exchange, type or coin. Exchanges only ever report their own side of a transfer, and Cyrus says so rather than guessing who owns the far end.
Ask what you hold, or say what you want done — "cancel all my BTC sell limits", "send BTC to my Tangem wallet when the balance passes 3". It finds the real order ids and address keys and builds the request; nothing runs until you approve a card showing exactly what will happen. Optional, off until you add your own Anthropic API key.
Every run is recorded — and so is every skip, with the reason. Below threshold, under an exchange minimum, cooling down: nothing happens without an explanation.
Each rule pairs a trigger — an order filling, a balance crossing a threshold, a price target, or a coin outgrowing its share of your portfolio — with an action like converting an asset or withdrawing to a saved address. Click any circle in the chart to edit the rule behind it. Click any circle to edit the rule behind it, and see every rule's status and last run in one place, with cooldowns to keep automation in check.
Drag a ceiling onto any holding. When it grows past that share of your account, Cyrus sells just the excess into the asset you picked, landing below the line so the rule doesn’t fire again on the next check. Simulate-only mode lets you watch it decide for a week before it trades a cent.
Market cap and rank, circulating versus maximum supply, all-time highs and the gain it would take to reach them again, momentum from one hour to thirty days — with your own position sized against all of it. Every figure says where it came from, and which exchange holds what when a coin is split across two.
Watch all your open orders refresh automatically in the background, visualized as a clean graph or a sortable table. No browser tabs, no manual refreshing — just a real-time view of what's working across Kraken, Coinbase, Binance, and Robinhood.
Place a single limit order, or stagger dozens across a price band in one pass — set the span by percentage or exact price, commit a share of your balance, and Cyrus snaps every rung to the exchange’s tick grid. Edit any rung before you submit, then watch them go out one by one, paced to each exchange’s rate limits, with a stop button and a per-rung result. Every resting order across every exchange lands back in one sortable table, partial fills and all — click a row to read it in full, or tick several and cancel them in one go.
Add an exchange in seconds and test the connection before you trade. Your API keys are encrypted at rest and stored locally on your device — never on a server. Toggle native desktop notifications so you know the moment a rule fires.
Ask what you hold, or hand it the work — cancelling a batch of resting orders, placing a limit, writing an automation rule. It resolves the connection, the real order ids and your whitelisted addresses itself, then stops and shows you a card built from the exact values it is about to send. Approve it and each action reports back separately, with the exchange’s own reason when one fails. Optional, and off until you add your own Anthropic API key.
Different exchanges expose different APIs. Here's exactly what Cyrus can do on each one.
| Feature | Kraken | Coinbase Advanced BETA | Binance BETA | Robinhood BETA |
|---|---|---|---|---|
| View open orders | ✓ | ✓ | ✓ | ✓ |
| Place limit orders & staggered ladders | ✓ | ✓ | ✓ | ✓ |
| Post-only (maker) limit orders | ✓ | ✓ | ✓ | — |
| Cancel an open order | ✓ | ✓ | ✓ | ✓ |
| View account balances | ✓ | ✓ | ✓ | ✓ |
| Trigger: Order filled | ✓ | ✓ | ✓ | ✓ |
| Trigger: Balance threshold | ✓ | ✓ | ✓ | ✓ |
| Trigger: Price target | ✓ | ✓ | ✓ | ✓ |
| Trigger: Allocation cap (balancer) | ✓ | ✓ | ✓ | ✓ |
| Catches price spikes between checks | ✓ | ✓ | ✓ | — |
| Holdings fundamentals (market cap, supply, ATH) | ✓ | ✓ | ✓ | ✓ |
| Action: Convert crypto | ✓ | ✓ | ✓ | ✓ |
| Action: Withdraw to address | ✓ | — | — | — |
| Whitelisted withdrawal addresses | ✓ | — | — | — |
The installer packages everything — no Python, no Node.js, no manual setup required.
Grab Cyrus.Setup.1.2.4.exe from the latest release. The installer is fully self-contained — Python, Flask, Electron, and SQLite are all bundled inside.
Run the installer and follow the setup wizard. Cyrus installs to C:\Program Files\Cyrus by default and creates Start Menu and Desktop shortcuts. First-time users will see a Windows SmartScreen prompt — click "More info" → "Run anyway."
On first launch, create a local account with a username and password. Your account data lives entirely on your machine in an encrypted SQLite database — nothing is sent to any server.
Go to Profile → Exchange Connections. Enter your exchange API key and secret (read + trade permissions recommended), then click Test to validate. Your keys are encrypted at rest using AES-128. Robinhood is the exception — it issues no secret at all, so Cyrus explains what it needs and offers a small key generator you can download and run offline to create the keypair yourself.
Open Automations and configure a trigger — an order fill, a balance threshold, a price target, or an allocation cap — paired with an action like converting an asset or withdrawing to a saved address. Price rules read every minute’s high and low, so a spike between checks still counts. Cyrus checks your rules every minute in the background, and shows you when it last did.
Cyrus was designed from the ground up to keep your exchange credentials and trade data fully local and encrypted.
Exchange API keys are encrypted with Fernet symmetric encryption before being stored. The key is derived from your Flask SECRET_KEY via SHA-256.
Passwords are hashed using bcrypt with 12 salt rounds. Plaintext passwords are never stored or logged anywhere in the application.
Authentication uses short-lived JWT tokens that expire after 30 days. All API requests use SQL prepared statements to prevent injection attacks.
No cloud accounts, no remote telemetry, no analytics. The backend listens on localhost only and is never exposed to your network. Out of the box the single outbound request is to a public market-data API for coin fundamentals on the Holdings page, and it sends nothing but a ticker symbol.
Off until you add your own Anthropic API key, and it is the one feature that sends portfolio data off your machine — your holdings, rules and resting orders go straight to Anthropic under your key, with no Cyrus server in between. The key is encrypted at rest like your exchange credentials. It can never move funds on its own: reading is automatic, but every cancel, order and rule waits on a confirmation card built from the exact values about to be sent, and it can only reach addresses you have already whitelisted on the exchange.
A modern Electron + Python architecture, packaged into a single Windows installer.
Small browser-based tools for crypto and personal finance, built alongside Cyrus. Each one runs entirely on your machine — nothing you type is uploaded, and there is nothing to install.
Pick a crash target for XLM and see where thirteen other coins land. Runs a correlated Monte Carlo simulation in your browser and reports the tail risk — 95% and 99% VaR, expected shortfall and max drawdown — for every asset.
Open tool →Further crypto and finance tools will land here as they are finished. If there is something you would find useful, the contact form below reaches me directly.
Coming soonCyrus is free for personal use and its source is public. Every contribution — however small — goes directly toward continued development.
Get behind-the-scenes updates, early builds, and a direct say in what gets built next. The best way to support Cyrus long-term.
Payments powered, managed, and secured by Stripe.
Payments powered, managed, and secured by Stripe.
Payments powered, managed, and secured by Stripe.
Free for personal use, source-available, and fully local. No subscriptions. No cloud accounts. Just your rules running on your machine.
Download Cyrus v1.2.4Windows x64 · Free forever · PolyForm Noncommercial License · Report an issue
Have a comment, question, or concern? Send a message and I'll get back to you.