Skip to main content

ClawCU: a local multi-agent lifecycle manager for OpenClaw and Hermes

Project description

ClawCU

๐ŸŒ Language: English | ไธญๆ–‡

PyPI Python License: MIT CI

ClawCU is a local-first lifecycle manager for running multiple AI agent runtimes on one machine. It currently supports OpenClaw and Hermes Agent.

Contents

Highlights

  • One CLI, two runtimes โ€” OpenClaw and Hermes through the same lifecycle commands
  • Snapshots before every upgrade โ€” datadir and env both captured; rollback restores from real backups
  • Clone-first experiments โ€” copy an instance, upgrade the copy, leave the original running
  • Available versions with cache-aware refresh โ€” clawcu list is fast by default, and clawcu list --no-cache forces a fresh registry read when you want to see the latest tags now
$ clawcu list
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ NAME            โ”ƒ SERVICE  โ”ƒ VERSION   โ”ƒ PORT  โ”ƒ STATUS  โ”ƒ ACCESS          โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ writer          โ”‚ openclaw โ”‚ 2026.4.1  โ”‚ 18799 โ”‚ running โ”‚ 127.0.0.1:18799 โ”‚
โ”‚ analyst         โ”‚ hermes   โ”‚ 2026.4.13 โ”‚ 9129  โ”‚ running โ”‚ 127.0.0.1:9129  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Available versions (top 10 by semver, newest first)
  openclaw  2026.4.15, 2026.4.14, 2026.4.12, 2026.4.11, 2026.4.10, 2026.4.9,
            2026.4.8, 2026.4.7, 2026.4.5, 2026.4.2
  hermes    2026.4.16, 2026.4.13, 2026.4.8, 2026.4.3, 2026.3.30

Install

Requires Python 3.11+ and a running Docker daemon.

pip install clawcu

or, for isolated CLI installs:

pipx install clawcu
# or
uv tool install clawcu

Quick Start

First-time setup โ€” checks Docker access and configures defaults:

clawcu setup

Spin up an OpenClaw instance and open the TUI:

clawcu pull openclaw --version 2026.4.1
clawcu create openclaw --name writer --version 2026.4.1
clawcu tui writer

If you maintain a custom runtime image, keep the logical service version explicit and override only the runtime image:

clawcu create openclaw \
  --name writer-tools \
  --version 2026.4.1 \
  --image registry.example.com/openclaw:2026.4.1-tools

Or spin up a Hermes instance with the same shape:

clawcu pull hermes --version 2026.4.13
clawcu create hermes --name analyst --version 2026.4.13
clawcu tui analyst

Configure providers / models inside an instance via its service-native flow (OpenClaw's configure, Hermes's setup):

clawcu config writer

Need the versions footer to ignore today's cache and fetch fresh tags immediately?

clawcu list --no-cache

For the full command reference (list / inspect / exec / upgrade / provider โ€ฆ), see USAGE_latest.md.

Safe Upgrade Workflow

Upgrade on a clone first; promote only if the clone holds:

clawcu clone writer --name writer-upgrade-test
clawcu upgrade writer-upgrade-test --version 2026.4.10
clawcu rollback writer-upgrade-test    # if the new version misbehaves

upgrade also accepts --image when you want to keep the target version label explicit but run a custom image:

clawcu upgrade writer-upgrade-test \
  --version 2026.4.10 \
  --image registry.example.com/openclaw:2026.4.10-tools

Every upgrade snapshots the instance datadir and the matching env file (~/.clawcu/instances/<instance>.env for OpenClaw, <datadir>/.env for Hermes) before replacing the container. If the upgrade fails, ClawCU restores both automatically. When --image is used, the chosen runtime image is persisted as part of the instance state, so later recreate, orphan recovery, and rollback continue using the same recorded image chain.

Model Configuration

Collect API keys and model lists from any managed instance or local home, and apply them elsewhere:

clawcu provider collect --all
clawcu provider list
clawcu provider apply openclaw:minimax writer --agent main --primary minimax/MiniMax-M2.7

Service identity is stored with each collected bundle, so OpenClaw and Hermes configs with the same logical name do not silently collide.

Environment and Access

Env files live per service (not unified):

  • OpenClaw: ~/.clawcu/instances/<instance>.env
  • Hermes: <datadir>/.env

Manage them with clawcu setenv / getenv / unsetenv (pass --apply to recreate the container immediately). Service-specific access: clawcu token <instance> and clawcu approve <instance> are OpenClaw-only (dashboard token + pairing model); Hermes uses clawcu tui / config / exec as its operational entrypoints. Full command reference: USAGE_latest.md.

Changelog

See CHANGELOG.md for release history. Latest release notes: RELEASE_latest.md.

Contributing

Issues and PRs welcome at github.com/heguangzhu/clawcu/issues.

Local development:

git clone https://github.com/heguangzhu/clawcu.git
cd clawcu
uv sync --all-extras
uv run pytest -q

Uninstall

pip uninstall clawcu
# or
pipx uninstall clawcu
# or
uv tool uninstall clawcu

Uninstalling the CLI leaves every datadir under ~/.clawcu intact. Remove instance data explicitly with clawcu remove <name> --delete-data before uninstalling if you want it gone.

License

MIT โ€” see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clawcu-0.2.12.tar.gz (196.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clawcu-0.2.12-py3-none-any.whl (154.0 kB view details)

Uploaded Python 3

File details

Details for the file clawcu-0.2.12.tar.gz.

File metadata

  • Download URL: clawcu-0.2.12.tar.gz
  • Upload date:
  • Size: 196.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for clawcu-0.2.12.tar.gz
Algorithm Hash digest
SHA256 7773638966220d2dd403356fc2d8f9e37c7225e12af380a04ac79ec2c76e1aab
MD5 030c1e73f9300c2a79dea0170580ac17
BLAKE2b-256 4053fe56d8af715b75e373409d95dea34d7c32021b22f7acbfdd0a2f61ab40c1

See more details on using hashes here.

File details

Details for the file clawcu-0.2.12-py3-none-any.whl.

File metadata

  • Download URL: clawcu-0.2.12-py3-none-any.whl
  • Upload date:
  • Size: 154.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for clawcu-0.2.12-py3-none-any.whl
Algorithm Hash digest
SHA256 05a1d35aa42cab16e29566ad553e40502b7522a37fe7e9f25b656e86d06dfe0c
MD5 4194a34e8d5ed50c3680bb94d50bd813
BLAKE2b-256 4435278e3b093b5ecdb60acc8df8f6c5aceff64d6c62a8de27cab07f7001e8cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page