I want to confirm the simplest supported way to build a multi-agent coordination system in OpenClaw.
Goal:
- One orchestrator agent (Odin)
- One or more worker agents (Bragi, Thor, Loki, and 5 persistent agents and Codex later)
- Coordination happens through a shared state (database or files)
- Agents wake up on a schedule, check for work, execute, and log results
Questions:
-
What is the best supported pattern in OpenClaw for scheduled agent execution?
- Should I use OpenClaw cron jobs, heartbeats, or something else?
-
Can an OpenClaw agent reliably run a recurring loop like:
- wake up
- check external state (Postgres or local JSON)
- claim a task
- execute it
- log result
- Check if anything new came in and if not
- go idle
- then check again to see if there is new work
-
What is the recommended way for an agent to check external state?
- shell scripts via exec tool?
- built-in connectors?
- something else?
-
For task locking / avoiding duplicate work:
- is there a recommended pattern in OpenClaw?
- or should I handle that entirely in Postgres (atomic update)?
-
For multi-agent setups:
- is it better to use multiple OpenClaw profiles (separate agents)
- or sessions / sub-agents
-
Is there an example or recommended architecture for:
- orchestrator → worker task delegation
- without direct agent-to-agent messaging
Constraints:
- I want the simplest working system first
- No Discord routing layer
- No UI yet
- No Codex dependency initially
What is the cleanest, most reliable minimal setup you would recommend?