◈ PoliC@homeYOUR COMPUTE · YOUR CONSENT
GET STARTED / THREE DISTINCT PATHS

Start only what you choose.

Browser Catnap, a local Docker Catbox, and running your own Commons are different actions. Opening this page starts no computing, installs nothing, and gives nobody access to your Docker daemon. Every path has an explicit stop and removal procedure.

01 / NO INSTALL

Contribute from your browser

What runs: a Web Worker on this device performs only approved built-in SHA-256 tasks. A screen animation is not compute. No Docker, native GPU, background service, or filesystem access is installed.

Before starting: choose trusted approved Cat creators, categories, commercial consent and best-effort CPU pacing; preview your PoliC; acknowledge power and heat costs. You must then Enroll and separately press Start Catnap.

Stop: click Pause to stop the local worker; click Revoke Consent to invalidate your node credential at the coordinator. Closing the page also stops the worker but is not a substitute for revocation.

Remove: after successful revocation, clear this site's browser data if you also want to discard saved local settings and keys. Clearing browser storage before revoking can make the stored node token unrecoverable. Server audit history is not erased by revocation.

Configure My PoliC in the browser
02 / DOCKER INSTALL ON YOUR COMPUTER

Start your own Catbox

What runs: a non-root Docker container running the existing native PoliC@home worker. It can lease approved, signature-checked sha256_chain_v1 tasks from a Commons you choose. It continues running after the browser is closed until you pause it, revoke, or Docker stops it. It is not an arbitrary OCI workload runner or a GPU agent. It requires Docker Engine/Compose and local shell access; this website cannot launch Docker on your device.

Limits applied by Docker

0.5 of one logical CPU (not half the whole PC), 768 MiB container memory, 64 processes, read-only root filesystem, dropped Linux capabilities, no-new-privileges. Policy also limits task memory and time.

Not guaranteed

No CPU/GPU temperature telemetry, electricity ceiling, GPU usage, or full VM isolation. Docker shares a kernel and allows outbound network connectivity. Do not execute unknown or uploaded images.

Your consent

The enrollment script displays the Cat catalog and complete resource disclosure, asks which creator keys to trust, and requires you to type I CONSENT. Enrollment starts no work.

Get the source and check your tools

Use a Linux or WSL terminal. Download the complete source snapshot (not a Git-history clone). Extract into ~/projects on WSL (not /mnt/c, where file permissions may expose secrets). From its extracted directory:

docker compose version
python3 --version

Confirm Docker runs correctly. Docker group access is effectively root-equivalent; review what you run before trusting this software.

Enroll, then start

For your own locally hosted Commons at http://127.0.0.1:8765:

bash scripts/catbox-local.sh enroll
bash scripts/catbox-local.sh start
bash scripts/catbox-local.sh status

To contribute from your own Docker machine to an external HTTPS Commons instead, enroll against its actual URL:

bash scripts/catbox-local.sh enroll https://your-commons.example
bash scripts/catbox-local.sh start

The Catbox starts with its own Compose file and needs no Commons administrator token. It can share the local Commons network when both are launched from this checkout. The coordinator must explicitly enable anonymous self-enrollment. The local setup does by default. Enrollment with no trusted Cats is valid but idle. Trust in a signer includes that creator's future operator-approved Cats under your other restrictions. Changing your registered PoliC currently requires revocation and re-enrollment.

Inspect / pause / resume

bash scripts/catbox-local.sh logs
bash scripts/catbox-local.sh pause
bash scripts/catbox-local.sh resume

Pause immediately stops your own container and retains consent/credentials so you can resume. Revoke stops the container and tells the Commons to reject future leases. Neither deletes the coordinator's audit history.

Revoke and completely remove your Catbox

bash scripts/catbox-local.sh revoke
bash scripts/catbox-local.sh remove

Remove confirms coordinator revocation, deletes only this Catbox's container and local credentials, and keeps your source checkout and the independent Commons intact. If the server is offline, it stops locally but keeps the token so you can retry revocation; it never silently pretends consent was revoked.

03 / HOST YOUR OWN SERVICE

Run your own Commons in Docker

What runs: a coordinator and browser UI, bound to 127.0.0.1:8765 on the Docker host; a persistent Docker volume holds its SQLite DB. This is not a Catbox and does not donate your CPU/GPU to jobs simply by hosting.

Install and start

Download source ZIP. It contains the launcher scripts, current source, tests, and docs, with no existing tokens or runtime database. Unzip it in your own Linux/WSL directory.

unzip PoliCatHome-source.zip
cd PoliCatHome-source
bash scripts/start-local.sh
# Open http://localhost:8765
# Keep runtime/admin-token.txt private

The launcher creates an administrator secret under runtime/admin-token.txt. Treat this as an account password. Never enter it into an untrusted website, publish it, or place it in a source repository.

Stop or restart (keeps everything)

bash scripts/stop-local.sh
# restart later:
bash scripts/start-local.sh

Stop leaves the database volume and admin token in place, so your Commons can resume.

Delete your own Commons and its data

# First revoke/remove any native Catbox:
bash scripts/catbox-local.sh remove
# Then explicitly purge the Commons:
bash scripts/remove-local.sh --purge-data

The removal script demands the exact phrase DELETE MY COMMONS before deleting the coordinator container, its Docker database volume, and the local admin-token file. This is irreversible for local history and receipts unless you made backups. It does not delete unrelated Docker projects, your source checkout, or audit copies held by other participants.

Public deployment warning: the included Docker configuration is loopback-only for local testing. Do not forward port 8765 directly to the Internet. A public Commons needs HTTPS, ingress controls, abuse controls, operational backup/restore planning, secret handling, and an independent security review.

Removal means three different things

ModeStop computingRevoke authorizationDelete local artifacts
Browser CatnapPause / close tabRevoke Consent buttonClear site data after revocation
Native Catboxcatbox-local.sh pausecatbox-local.sh revokecatbox-local.sh remove
Commons serverstop-local.shRevoke Catbox nodes firstremove-local.sh --purge-data

No workflow promises deletion of Chronicle events or receipts stored by other Commons participants. Neither a website nor a coordinator can start local Docker without an installed, explicitly authorized local component.

Return to PoliC@home Legacy self-host guide · Freedom and licensing