[taskboard] add dispatch control plane
This commit is contained in:
121
config/fleet.json
Normal file
121
config/fleet.json
Normal file
@@ -0,0 +1,121 @@
|
||||
{
|
||||
"title": "Claw Fleet Architecture",
|
||||
"overview": [
|
||||
"OpenClaw is the ubuntu-local orchestration layer and Telegram HQ entrypoint.",
|
||||
"ZeroClaw provides host-scoped remote administration on grizzley and ice.",
|
||||
"The taskboard is the shared planning, dispatch, and audit surface across both families."
|
||||
],
|
||||
"topologyDiagram": " Telegram / Forum Topics\n |\n +----------------+----------------+\n | |\n v v\n OpenClaw gateway ZeroClaw control\n ubuntu :18789 ice zeroclaw-admin\n local swarm topic router / paired gateway\n | |\n +------------+--------------------+\n |\n v\n shared taskboard UI\n |\n +-----------+-----------+\n | |\n v v\n OpenClaw agents ZeroClaw runtimes\n ubuntu-local swarm grizzley / ice\n",
|
||||
"sections": [
|
||||
{
|
||||
"id": "openclaw",
|
||||
"title": "OpenClaw",
|
||||
"summary": "Primary orchestration family on ubuntu. Owns local swarm execution, HQ Telegram bindings, and ubuntu-host workflows.",
|
||||
"runtime": [
|
||||
{ "label": "Host", "value": "ubuntu (192.168.50.61)" },
|
||||
{ "label": "Service", "value": "openclaw.service" },
|
||||
{ "label": "Runtime", "value": "/srv/state/openclaw/current" },
|
||||
{ "label": "Config", "value": "/home/bear/.openclaw/openclaw.json" }
|
||||
],
|
||||
"channels": [
|
||||
{ "label": "Telegram DM", "value": "allowlist: tg:5512934365" },
|
||||
{ "label": "Forum Group", "value": "Homelab HQ (-1003809447066)" },
|
||||
{ "label": "Gateway", "value": "LAN bind :18789 with token auth" }
|
||||
],
|
||||
"configuredAgents": [
|
||||
"main",
|
||||
"ubuntu",
|
||||
"docs",
|
||||
"gitea-admin",
|
||||
"planner",
|
||||
"builder",
|
||||
"reviewer"
|
||||
],
|
||||
"diagram": "OpenClaw HQ topics\n topic 2 -> ubuntu\n topic 3 -> docs\n topic 4 -> gitea-admin\n topics 5-9 -> main, then delegate to host-scoped ZeroClaw paths\n\nmain\n|- ubuntu\n|- docs\n|- gitea-admin\n|- planner\n|- builder\n\\- reviewer\n",
|
||||
"notes": [
|
||||
"Remote host personas were removed from OpenClaw.",
|
||||
"OpenClaw remains gateway-only on ubuntu.",
|
||||
"Swarm dispatch requires a repo slug that resolves through ~/.clawdbot/repo-map.json."
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "zeroclaw",
|
||||
"title": "ZeroClaw",
|
||||
"summary": "Host-scoped runtime family for remote administration. Grizzley is the primary active gateway. Ice is the control-plane runtime and topic router.",
|
||||
"runtime": [
|
||||
{ "label": "Primary", "value": "/srv/state/zeroclaw/current on grizzley" },
|
||||
{ "label": "Control", "value": "/home/bear/.zeroclaw-admin on ice" },
|
||||
{ "label": "Primary Service", "value": "zeroclaw.service" },
|
||||
{ "label": "Control Service", "value": "zeroclaw-admin.service" }
|
||||
],
|
||||
"channels": [
|
||||
{ "label": "Grizzley Gateway", "value": "HTTP gateway :3000, pairing required" },
|
||||
{ "label": "Ice Telegram", "value": "Homelab-Ice (-1003728617160)" },
|
||||
{ "label": "Remote Routing", "value": "paired status/webhook to grizzley and pve" }
|
||||
],
|
||||
"configuredAgents": [
|
||||
"grizzley-zeroclaw",
|
||||
"ice-zeroclaw"
|
||||
],
|
||||
"diagram": "Homelab-Ice topics\n 11 -> local ice operations\n 12 -> grizzley paired gateway\n 13 -> pve paired gateway\n 14 -> truenas blocker message\n 15 -> panda rollout pending\n\nice zeroclaw-admin\n -> zeroclaw-remote-gateway.sh status grizzley|pve\n -> zeroclaw-remote-gateway.sh webhook grizzley|pve \"<message>\"\n",
|
||||
"notes": [
|
||||
"Grizzley is host-scoped and should not proxy other hosts directly.",
|
||||
"Ice still uses host-local secret and encryption state under /home/bear/.zeroclaw-admin."
|
||||
]
|
||||
}
|
||||
],
|
||||
"zeroclawAgents": [
|
||||
{
|
||||
"slug": "grizzley-zeroclaw",
|
||||
"assignmentKey": "grizzley-zeroclaw",
|
||||
"aliases": ["grizzley-zeroclaw", "ZeroClaw Grizzley", "grizzley"],
|
||||
"name": "ZeroClaw Grizzley",
|
||||
"host": "grizzley",
|
||||
"role": "Edge host operator for grizzley",
|
||||
"runtimePath": "/app/zeroclaw/grizzley",
|
||||
"configPath": "/app/zeroclaw/grizzley/config.toml",
|
||||
"model": "glm-4.7",
|
||||
"emoji": "S",
|
||||
"channels": [
|
||||
{ "label": "Gateway", "value": "HTTP gateway :3000" },
|
||||
{ "label": "Access", "value": "paired remote gateway via ice" }
|
||||
],
|
||||
"notes": [
|
||||
"Host-scoped runtime for Traefik, OpenCode, and local services."
|
||||
],
|
||||
"dispatch": {
|
||||
"method": "zeroclaw-webhook",
|
||||
"urlEnv": "ZEROCLAW_GRIZZLEY_URL",
|
||||
"tokenEnv": "ZEROCLAW_GRIZZLEY_TOKEN",
|
||||
"targetChannel": "grizzley gateway",
|
||||
"description": "Posts JSON webhook payloads to the grizzley ZeroClaw runtime."
|
||||
}
|
||||
},
|
||||
{
|
||||
"slug": "ice-zeroclaw",
|
||||
"assignmentKey": "ice-zeroclaw",
|
||||
"aliases": ["ice-zeroclaw", "ZeroClaw Ice", "ZeroClaw Admin", "ice"],
|
||||
"name": "ZeroClaw Ice",
|
||||
"host": "ice",
|
||||
"role": "Control-plane operator for ice",
|
||||
"runtimePath": "/app/zeroclaw/ice",
|
||||
"configPath": "/app/zeroclaw/ice/config.toml",
|
||||
"model": "glm-5",
|
||||
"emoji": "I",
|
||||
"channels": [
|
||||
{ "label": "Telegram", "value": "Homelab-Ice topics 11-15" },
|
||||
{ "label": "Gateway", "value": "paired webhook + status routing" }
|
||||
],
|
||||
"notes": [
|
||||
"Control-plane runtime and topic router for remote host delegation."
|
||||
],
|
||||
"dispatch": {
|
||||
"method": "zeroclaw-webhook",
|
||||
"urlEnv": "ZEROCLAW_ICE_URL",
|
||||
"tokenEnv": "ZEROCLAW_ICE_TOKEN",
|
||||
"targetChannel": "Homelab-Ice topic router",
|
||||
"description": "Posts JSON webhook payloads to the ice ZeroClaw runtime."
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user