Files
rhema-cloudflare-code/README.md
T
vhaudiquet c1059c23e0 build: the cloud frontend stands alone
The Durable Object, the sandbox daemon, and their deploy assets
leave the rhema workspace for a repository of their own. The DO
was already a deployment artifact (publish = false, worker feature
wasm-only), and rhema-sandbox-server's only consumer was the image
beside it — both are product, not framework. The harness and the
seam stay behind: rhema-cloud-agent and the sandbox family join
the rhema repository's publish list, and this tree consumes them
from crates.io at 0.2.6, the same arrangement the claw keeps its
framework crates under.

The sandboxd image build carries the fix its extraction needed:
the old Dockerfile still staged the claw's workspace (claw and
tools manifests, integrations globs, the vendored crossterm) and
missed rhema-provider-registry's manifest entirely. The manifest
stage is now this workspace's two members, fetched from the
registry.

Not yet buildable: the rhema 0.2.6 batch (rhema-sandbox,
-local, -http, rhema-cloud-agent) must publish first — then one
cargo check generates Cargo.lock and CI goes green.
2026-11-13 12:05:30 +01:00

30 lines
1.4 KiB
Markdown

# rhema-cloudflare-code
The coding agent as a Cloudflare Durable Object, and the sandbox
daemon that serves its `bash`: one repository, two deployables.
- **`crates/rhema-cloudflare-code`** — the Durable Object frontend:
WebSocket chat, DO-storage checkpoints, `bash` in a Cloudflare
Sandbox container or on any host speaking the sandbox wire protocol
(`SANDBOX_BACKEND=http`). A deployment artifact, not a library —
the worker feature only compiles on wasm32.
- **`crates/rhema-sandbox-server`** — `rhema-sandboxd`, the sandbox
wire protocol served from any host: one root directory per session,
the token checked on every route. The image: `deploy/docker/`.
- **`deploy/cloudflare/`** — the wrangler config, the entry router,
and the JS sandbox shim. The deploy walkthrough lives beside them:
[deploy/cloudflare/README.md](deploy/cloudflare/README.md).
- **`specs/`** — the DO's design record
(`specs/rhema-cloudflare-code.md`).
The harness the DO assembles (`rhema-cloud-agent`), the sandbox seam
and its protocol (`rhema-sandbox`, `-local`, `-http`), and the engine
under it all come from crates.io at the pinned versions — they live in
the rhema repository, which keeps their tests and their design record.
# Running it
The DO: `deploy/cloudflare/README.md` walks through the build, the
wrangler deploy, the two secrets, and driving a session. The daemon:
`deploy/docker/README.md` builds and runs the image.