This guide installs Claw for a self-hosted enterprise baseline.
claw daemonruns in your environment and serves gRPC.- Repository data is local under
.claw/in the repo root. - Clients connect through
claw syncusing gRPC remotes. - Auth is bearer-token based (
authorization: Bearer <token>).
- Claw binary installed and on
PATH. - Stable storage for repository checkout plus
.claw/. - Service account with read/write access to the repository directory.
- Network controls allowing only approved clients to daemon port.
- Create or select the repository directory on the server.
- Initialize if needed:
claw init- Configure daemon auth profile token:
claw auth token set "<strong-random-token>" --profile default- Run preflight:
claw admin preflight- Start daemon:
claw daemon --listen 0.0.0.0:50051 --auth-profile default[Unit]
Description=Claw Daemon
After=network.target
[Service]
Type=simple
User=claw
Group=claw
WorkingDirectory=/srv/claw/repo
ExecStart=/usr/local/bin/claw daemon --listen 0.0.0.0:50051 --auth-profile default
Restart=always
RestartSec=2
[Install]
WantedBy=multi-user.target- If daemon is reachable beyond localhost, use TLS.
- You can terminate TLS at ingress/proxy, or configure cert/key in
.claw/config.toml. claw admin preflightfails when TLS config is incomplete (tls.cert_pathwithouttls.key_path, or inverse).
claw admin preflightreturnsPASS.- Daemon process remains healthy after restart.
- A client can run:
claw remote add origin http://claw-daemon.internal:50051 --kind grpc --token-profile default
claw sync pull --remote origin --ref-name heads/main