CIVWEAVE HOST STEWARD
Add a local Anchor
Your Cloudflare host can remain the public doorway. The local Anchor is the stubborn little root under the floorboards: it preserves host identity/state locally and is the right place for always-on discovery, scheduled relay, local AI, and recovery work.
1. Install prerequisites and check Docker
Install Git and Docker Desktop/Engine with Docker Compose v2 on the machine that will stay near this host.
docker version
docker context ls
On Docker Desktop for Windows, docker version must show both Client and Server. Civweave's Anchor image is Linux-based, so Docker Desktop must have its Linux container engine running before continuing.
2. Clone Civweave
git clone https://github.com/cerbanimo-dev/Civweave.git
cd Civweave
cp .env.federated.example .env.federated
Keep the data directory persistent. It contains the node identity, signing material, federation trust, and retained relay state.
3. Start the local companion
docker compose --env-file .env.federated -f docker-compose.federated.yml up -d --build
Run the command as one line. It works in PowerShell as written; do not add Bash-style trailing \ line continuations.
For a laptop-only backup, LAN access is enough. A public tunnel is optional. Civweave should recommend this local copy strongly, but the cloud host remains usable without it.
4. Verify it
curl http://127.0.0.1:8787/api/federation/health
When the local companion reports healthy, return to the host and mark the Anchor as paired. A later pairing pass can replace this acknowledgement with cryptographic reconstruction proofs.
5. Connect steward payouts
Open the local operator console, unlock its controls with this node's internal credential, and choose Connect payouts. Stripe-hosted onboarding collects the steward's identity, tax, bank, and payout details; Civweave stores only the connected-account identifier and readiness status.
A created Stripe account is not enough: steward revenue stays disabled until Stripe reports the connected account's transfer capability as active.
The current reminder is intentionally persistent but non-blocking. “Remind me tomorrow” snoozes it for one day; marking the Anchor paired dismisses it for this steward browser.