Working offline, and what runs with no network
The core is offline-first by design: what works with the network unplugged, and what genuinely needs it.
Written By Dustin
Last updated About 2 hours ago
TOVIO's core is offline-first, and that is an architectural property rather than a convenience feature. Every core operation works with the network unplugged.
What works with no network at all
- Creating a repository, checking status, committing, reading history, diffing.
- Creating and switching lanes, landing changes, resolving conflicts.
- Undo and redo, over the local operation log.
- Repository health checks and integrity verification.
- Policy evaluation — deliberately. Policy expressions are stored in clear precisely so that any client can evaluate them deterministically without asking a server.
- Reading anything you already hold a key for. Offline reads remain possible; the key authority is an authorization oracle, not a decryption gatekeeper.
There is nothing to activate
No licence check, no account, no registration, and no first-run call to anyone. A repository is a directory on your disk. If you never configure a remote, the software never opens a connection.
What genuinely needs the network
- Sync, clone, push, pull — to a remote you configured.
- Granting or revoking access for someone else, where the key authority is involved in authorization.
- Forge collaboration — proposals, reviews, checks.
- Anything you explicitly send, including the model-assisted conflict resolution described in its own article.
Going offline is not a way around permissions
Worth stating so that nobody plans around it: read access is enforced by whether you hold a usable key, not by a server being reachable. Disconnecting does not turn a protected file into a readable one — it just means nobody can grant you access while you are disconnected.
Why this matters for privacy
The strongest privacy guarantee in a version control system is architectural: work that never needs a server never produces data for one to hold. That is the default here, and configuring a remote is a decision you make, not one made for you.