Is it really free?
Is it really free?
Yes. Continuum is open-source under the Apache-2.0 license. There are no accounts, no subscriptions, no paywalls, and no telemetry. The source is at github.com/darshanbathija/Continuum.The operator runs a Cloudflare relay Worker for the secure-cloud pairing path. That is an infrastructure cost the operator absorbs, not something users pay for.
Why is a Mac required?
Why is a Mac required?
The Mac is the host and trust root. It runs the provider CLIs, owns the in-process daemon, manages Keychain credentials, and coordinates all sessions. The iPhone and Watch are remote controls for the Mac — they do not run providers independently.This is a deliberate design choice: coding agents run best with direct access to local files, git, and terminals, which the Mac provides. The iPhone surface is for monitoring, approvals, and control — not for running agents locally.
Does it bill my API key or cost money to use?
Does it bill my API key or cost money to use?
Continuum drives the official provider CLIs under your existing subscription logins. It does not make API calls on your behalf. Any usage is billed through your existing Claude, Codex, Cursor, or other provider accounts exactly as it would be if you ran those CLIs yourself.OpenRouter via OpenCode is the bring-your-own-API-key path. You configure your OpenRouter key with
opencode auth login; Continuum just runs opencode serve locally.Can the relay operator read my code or conversations?
Can the relay operator read my code or conversations?
No. When the Cloudflare relay path is used, all frames are sealed with XChaCha20-Poly1305 using a symmetric key derived inside your devices via X25519 ECDH. The relay Worker forwards opaque bytes and never holds the symmetric key. An operator with full access to the Cloudflare account cannot decrypt captured traffic.The relay sees: encrypted bytes, a short header (protocol version, sender role, envelope type), byte counts, and your IP. It does not see any content.See Security for the full specification.
Does it work fully offline or on a local network without Tailscale?
Does it work fully offline or on a local network without Tailscale?
Yes. The local transport path uses direct loopback or LAN connections between Mac and iPhone. No relay is involved. The daemon listens on port
21731 (with fallbacks through 21741) and restricts non-loopback connections to Tailscale CGNAT ranges.For LAN-only access without Tailscale, the Mac and iPhone need to be on the same network and the daemon’s bearer-token auth is still required. Using Tailscale is recommended because it provides stable addressing and peer verification via Tailscale Whois.The in-app update check is the only Continuum-controlled request that still goes out over the internet. It can be disabled in Settings → Updates.How accurate are the cost numbers?
How accurate are the cost numbers?
The analytics layer is a Swift implementation of the same ideas behind
ccusage by ryoppippi: parse local agent JSONL files, normalize token events, deduplicate by messageId:requestId, price with a LiteLLM snapshot, and roll up by day and repo.The ccusage daily command is the parity benchmark. If Continuum’s numbers diverge from ccusage, ccusage is treated as the ground truth.The LiteLLM pricing snapshot is bundled at build time and can be refreshed with ./tools/refresh-pricing.sh. Pricing data is only as current as the last snapshot refresh.How do I contribute?
How do I contribute?
Open issues or pull requests on GitHub. The
CONTRIBUTING.md in the repo covers the development setup, branch conventions, and code review expectations.Security issues should be emailed to the maintainers directly rather than filed as public GitHub issues. Contacts are listed in CONTRIBUTING.md.