Files
Atomizer/hq/workspaces/shared/CLUSTER.md
Antoine 3289a76e19 feat: add Atomizer HQ multi-agent cluster infrastructure
- 8-agent OpenClaw cluster (Manager, Tech-Lead, Secretary, Auditor,
  Optimizer, Study-Builder, NX-Expert, Webster)
- Orchestration engine: orchestrate.py (sync delegation + handoffs)
- Workflow engine: YAML-defined multi-step pipelines
- Agent workspaces: SOUL.md, AGENTS.md, MEMORY.md per agent
- Shared skills: delegate, orchestrate, atomizer-protocols
- Capability registry (AGENTS_REGISTRY.json)
- Cluster management: cluster.sh, systemd template
- All secrets replaced with env var references
2026-02-15 21:18:18 +00:00

3.5 KiB

Atomizer Agent Cluster

Agent Directory

Agent ID Port Role
🎯 Manager manager 18800 Orchestration, delegation, strategy
🔧 Tech Lead technical-lead 18804 FEA, R&D, technical review
📋 Secretary secretary 18808 Admin, notes, reports, knowledge
🔍 Auditor auditor 18812 Quality gatekeeper, reviews
Optimizer optimizer 18816 Optimization algorithms & strategy
🏗️ Study Builder study-builder 18820 Study code engineering
🖥️ NX Expert nx-expert 18824 Siemens NX/CAD/CAE
🔬 Webster webster 18828 Research & literature

Inter-Agent Communication

Each agent runs as an independent OpenClaw gateway. To send a message to another agent:

curl -s -X POST http://127.0.0.1:PORT/hooks/agent \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer 31422bb39bc9e7a4d34f789d8a7cbc582dece8dd170dadd1" \
  -d '{"message": "your message", "agentId": "AGENT_ID"}'

Examples

# Report to manager
curl -s -X POST http://127.0.0.1:18800/hooks/agent \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer 31422bb39bc9e7a4d34f789d8a7cbc582dece8dd170dadd1" \
  -d '{"message": "Status update: FEA analysis complete", "agentId": "manager"}'

# Delegate to tech-lead
curl -s -X POST http://127.0.0.1:18804/hooks/agent \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer 31422bb39bc9e7a4d34f789d8a7cbc582dece8dd170dadd1" \
  -d '{"message": "Please review the beam optimization study", "agentId": "technical-lead"}'

# Ask webster for research
curl -s -X POST http://127.0.0.1:18828/hooks/agent \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer 31422bb39bc9e7a4d34f789d8a7cbc582dece8dd170dadd1" \
  -d '{"message": "Find papers on topology optimization", "agentId": "webster"}'

Discord Channel Ownership

  • Manager: #ceo-office, #announcements, #daily-standup, #active-projects, #agent-logs, #inter-agent, #general, #hydrotech-beam
  • Tech Lead: #technical, #code-review, #fea-analysis
  • Secretary: #task-board, #meeting-notes, #reports, #knowledge-base, #lessons-learned, #it-ops
  • NX Expert: #nx-cad
  • Webster: #literature, #materials-data
  • Auditor, Optimizer, Study Builder: DM + hooks (no dedicated channels)

Slack (Manager only)

Manager also handles Slack channels: #all-atomizer-hq, #secretary, etc.

Rules

  1. Always respond to Discord messages — NEVER reply NO_REPLY
  2. When delegating, be specific about what you need
  3. Post results back in the originating Discord channel
  4. Use hooks API for inter-agent communication

Response Arbitration (Anti-Collision)

To prevent multiple agents replying at once in the same public channel:

  1. Single channel owner speaks by default.
    • In any shared channel, only the listed owner agent should reply unless another agent is directly tagged.
  2. Non-owners are mention-gated.
    • If a non-owner is not explicitly @mentioned, it should stay silent and route updates via hooks to the owner.
  3. Tagged specialist = scoped reply only.
    • When tagged, reply only to the tagged request (no broad channel takeover), then return to silent mode.
  4. Manager synthesis for multi-agent asks.
    • If a user asks multiple roles at once, specialists send inputs to Manager via hooks; Manager posts one consolidated reply.
  5. Duplicate suppression window (30s).
    • If an equivalent answer has just been posted by another agent, post only incremental/new info.