- 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
3.5 KiB
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
- Always respond to Discord messages — NEVER reply NO_REPLY
- When delegating, be specific about what you need
- Post results back in the originating Discord channel
- Use hooks API for inter-agent communication
Response Arbitration (Anti-Collision)
To prevent multiple agents replying at once in the same public channel:
- Single channel owner speaks by default.
- In any shared channel, only the listed owner agent should reply unless another agent is directly tagged.
- 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.
- Tagged specialist = scoped reply only.
- When tagged, reply only to the tagged request (no broad channel takeover), then return to silent mode.
- 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.
- Duplicate suppression window (30s).
- If an equivalent answer has just been posted by another agent, post only incremental/new info.