Quickstart
Zero to a working local Clawback stack in a few minutes.
Prerequisites
- Node.js
22.12+ - pnpm
10.29+ - Docker with Compose v2
- One model provider API key in your shell, usually
OPENAI_API_KEY
Start the stack
git clone https://github.com/clwbk/clawback.git clawback
cd clawback
pnpm install
./scripts/start-local.sh
This starts:
- Postgres on
5433 - MinIO on
9000/9001 - OpenClaw on
18889 - Console on
3000 - Control plane on
3011(start-local.shremaps from the default3001to avoid port conflicts;pnpm devuses3001)
Create an admin account
Open http://localhost:3000/setup and bootstrap the first workspace admin.
Suggested local values:
- Workspace name:
Local Dev - Workspace slug:
local - Email:
admin@example.com - Display name:
Admin - Password:
password1
Load the demo workspace
If you want realistic sample data right away:
pnpm db:seed
Then sign in as:
dave@hartwell.comdemo1234
Choose a first run
For the new worker-first admin path:
- open
/workspace/setup - click
Run sample activity - land on the follow-up worker proof rail
- run the sample intake if fresh inbox/work state is not already present
For the retrieval-first no-Google path:
- open
/workspace/connectors - confirm the seeded
Incident Copilot Demosync is complete - open
/workspace/chat - use
Incident Copilot
What to open first
/workspace/setupfor the worker-first setup path/workspace/workersto install or inspect workers/workspace/inboxto review gated actions and suggestions/workspace/workto inspect durable outputs and execution state/workspace/activityto read the audit trail/workspace/connectionsto manage the seeded Gmail, SMTP, Calendar, and Drive connections/workspace/connectorsto inspect the seededIncident Copilot Democonnector or add another local-directory connector for retrieval
Run the main verification flow
pnpm smoke:public-try
This exercises the ingress and reviewed-send paths. It's the fastest check that the local stack is healthy.
Notes:
./scripts/start-local.shautomatically builds the shared packages before entering watch mode.- If a sibling
../openclawcheckout is present, the script prefers host-run OpenClaw. Otherwise it uses the repo-contained Docker OpenClaw path automatically.