Any
The local-first backend for multiplayer agentic applications. It combines a document database, a runtime for programs and agents, and end-to-end encrypted sync in a single binary that runs on your devices.
In any, devices store and query data, execute programs, and exchange changes with other devices in a peer-to-peer way. Reads and writes happen locally and work offline. When devices reconnect, their changes merge automatically using CRDTs. Sync nodes help distribute and back up encrypted data without being able to read its contents.
Alongside the database and runtime, any provides identity, access control, file storage, live queries, and collaboration primitives such as chat and collaborative editing. These capabilities are available through an HTTP API and CLI.
Get started
$ any init
account A9f3…c21e (mnemonic printed once — write it down)
$ any run &
listening 127.0.0.1:7001 network prod bootstrapping…done
$ curl -s :7001/v1/spaces -d '{"name":"notes"}' | jq -r .id
bafyrei…7q.1a2b3c
$ curl -s :7001/v1/spaces/$S/objects -d '{"initialProperties":{"any":{"name":"hello"}}}'
$ curl -sN :7001/v1/spaces/$S/objects/query/subscribe -d '{"limit":20}'
event: ready
event: snapshot {"records":[{"id":"…","any.name":"hello"}],"total":1}
event: changes …live from here, from every device you own
Database
Spaces of objects and datasets, typed properties, Mongo-style filters, aggregation pipelines, version history — every byte CRDT-merged and encrypted.
Learn moreSync & realtime
Windowed live queries over SSE, head-sync with peers, sync status, an ephemeral event bus, end-to-end encrypted push.
Learn moreRuntime
Python programs in a wasm cage with a recorded effect boundary; cron / once / event triggers pinned to a device; the bao agent.
Learn moreEverything
Why local-first
Why it matters. A hosted backend is available exactly when its vendor is. In any every device holds the full state of every space it belongs to, every write lands locally first, and peers converge later through encrypted sync — the network is an optimisation, not a dependency. Relay nodes store ciphertext and can't read a single document.
- Reactive — every read has a live form:
/querygives a snapshot,/query/subscribekeeps a window of results current. - Mongo-style queries —
$eq,$in,$regex,$text, nested paths, array matching,$group/$unwindpipelines. - CRDT — concurrent edits from any number of devices merge deterministically; versions are content-addressed changes you can diff and view.
- Built-in messenger and editor — chat messages with reactions, mentions and read tracking; block documents with a markdown bridge.
- Runtime in your data — programs, triggers and agent memory are records in your encrypted space, not rows in a vendor's database.
Also available as llms.txt for language models.