Summary
Allow running both OpenClaw and Hermes agent gateways at the same time, sharing the same LLM server and models.
Motivation
Users should be able to access both agent frameworks simultaneously without restarting. Both gateways connect to the same LLM on localhost:8000/v1 and use different ports (OpenClaw: 18789, Hermes: 8642), so there are no architectural conflicts.
Verified on DGX Spark
Manually started both gateways inside a single Docker container — both health checks passed:
- OpenClaw:
{"ok":true,"status":"live"} on :18789
- Hermes:
{"status": "ok", "platform": "hermes-agent"} on :8642
What needs to change
- CLI (
a2go run): accept --agent openclaw,hermes or --agent both in addition to a single agent
- Docker port mapping: map both 18789 and 8642 when both agents are selected
- Entrypoint (
entrypoint-unified.sh): run both config generation + gateway startup blocks (currently a case that picks one)
a2go status: show both gateways when both are running
- Web proxy: may need to handle routing to both gateway UIs
Out of scope (for now)
- Running two separate LLM instances (both agents share one)
- Automatic load balancing between agents
Summary
Allow running both OpenClaw and Hermes agent gateways at the same time, sharing the same LLM server and models.
Motivation
Users should be able to access both agent frameworks simultaneously without restarting. Both gateways connect to the same LLM on
localhost:8000/v1and use different ports (OpenClaw: 18789, Hermes: 8642), so there are no architectural conflicts.Verified on DGX Spark
Manually started both gateways inside a single Docker container — both health checks passed:
{"ok":true,"status":"live"}on:18789{"status": "ok", "platform": "hermes-agent"}on:8642What needs to change
a2go run): accept--agent openclaw,hermesor--agent bothin addition to a single agententrypoint-unified.sh): run both config generation + gateway startup blocks (currently acasethat picks one)a2go status: show both gateways when both are runningOut of scope (for now)