Vimes
Agent-First Remote IDE for Claude Code
A daemon that owns every Claude Code process running on a dev box and streams their structured state to any browser, so a phone becomes a full peer of the desk. It is mid-build and not yet packaged for anyone else to run. It earns a place here for how it is built: an append-only decision log and byte-for-byte determinism gates enforced in CI, the same discipline we ask of audit clients, turned on the project itself.
Status
Mid-build
Actively developed and not yet packaged for anyone else to run. Shown here as an engineering-discipline exhibit, not a product to install.
- License
- MIT
- Language
- TypeScript
- Status
- Mid-build
What Vimes Is
An agent-first remote IDE for Claude Code.
Most remote setups wrap an editor and bolt an agent on. Vimes inverts that. A daemon owns every Claude Code process running on a development box and streams their structured state, sessions, terminals, git, and cost, to any browser. A phone becomes a full peer of the desk, not a cut-down remote view of it.
It requires Claude Code on the host and is meant to be self-hosted behind your own access layer. It is a working system under active development, and its README says so plainly.
Why It Is in This Showcase
The same discipline we ask of audit clients, machine-enforced on our founder's own project.
Append-Only Decision Log
A numbered, append-only decisions record where each entry cites the evidence behind it and the open question it closes, alongside a calibration doc that pins estimate bands with their assumptions rather than stating bare numbers.
Determinism Enforced in CI
The build runs a byte-comparison determinism check across six scenario profiles, twice per run, and a grep gate fails the build on Date.now or Math.random in core code. Non-determinism cannot merge.
Evidence Before Code
The public docs carry an open-questions register, a risk register, an evidence spike, and competitor decomposition studies, so design choices are recorded with their reasoning instead of living only in the author’s head.
Architecture and Posture
One daemon at the center, local by default, closed by default.
The Daemon Owns Every Boundary
A single daemon owns the session host, the PTY, the SQLite store, the HTTP and WebSocket surface, auth, git, search, and cost ingest. Claude Code is spawned directly by the daemon rather than wrapped after the fact.
Local Bind by Design
The daemon binds to 127.0.0.1 only, and that is hardcoded rather than configurable. It is never directly exposed to the network.
Auth Fails Closed
Cloudflare Access sits in front of the daemon. An unconfigured daemon rejects every request by design rather than serving anything unauthenticated, so a misconfiguration denies access instead of leaking it.
Follow the Build
Vimes is under active development. The source, the decision log, and the risk register are all public, so you can read exactly how it is being built while it is being built.