| name | swarm-orchestrator |
| display_name | Swarm Orchestrator |
| description | AI Agent cluster orchestration platform - manage, schedule, and coordinate multiple AI agents locally with FastAPI backend and React dashboard |
| version | 0.1.0 |
| author | OpenClaw Team |
| license | MIT-0 |
| tags | ["orchestration","multi-agent","ai-agents","swarm","automation","fastapi","python","react","local-first"] |
| requires | {"tools":[{"name":"python","version":">=3.11","purpose":"Backend runtime"},{"name":"node","version":">=18","purpose":"Frontend build and runtime"},{"name":"redis","version":">=6","purpose":"Task queue and caching"},{"name":"docker","version":">=20","purpose":"Optional containerized deployment","optional":true}],"env":[{"name":"DATABASE_URL","description":"Database connection string","default":"sqlite+aiosqlite:///./data/swarm.db","required":false,"sensitive":false},{"name":"REDIS_URL","description":"Redis connection URL","default":"redis://localhost:6379","required":false,"sensitive":false},{"name":"SECRET_KEY","description":"Application secret key for sessions","default":"generated-on-first-run","required":false,"sensitive":true},{"name":"OPENAI_API_KEY","description":"Optional OpenAI API key for LLM agents","required":false,"sensitive":true},{"name":"ANTHROPIC_API_KEY","description":"Optional Anthropic API key for Claude agents","required":false,"sensitive":true}],"packages":[{"name":"openclaw-swarm-orchestrator","source":"npm","version":"0.1.0","verified_repo":"https://github.com/ZhenRobotics/openclaw-swarm-orchestrator","verified_commit":"acae6e5","install_command":"npm install -g openclaw-swarm-orchestrator"}]} |
| network | {"external_servers":[{"description":"No external servers required for core functionality"},{"description":"Optional: OpenAI/Anthropic APIs if using LLM agents (user-controlled)"}],"data_collection":"none","telemetry":"none","local_only":true} |
| verification | {"check_commands":["swarm-orchestrator --version","curl http://localhost:8000/health"],"expected_files":["~/.swarm-orchestrator/config.yml","./data/swarm.db"]} |
Swarm Orchestrator Skill
Status: ๐ข Local-First AI Agent Orchestration Platform
Type: Self-hosted, no external dependencies required
Privacy: 100% local processing (except optional LLM API calls)
๐ Security & Trust
What This Skill Does
- Runs locally on your machine (backend + frontend)
- No telemetry or data collection
- No external servers required for core functionality
- Optional API keys only needed if you use LLM agents (OpenAI/Claude)
- Open source - all code is auditable
What This Skill Does NOT Do
- โ Does not send data to external servers (except optional LLM APIs)
- โ Does not collect analytics or telemetry
- โ Does not require account registration
- โ Does not access your files without permission
- โ Does not run background processes without your knowledge
Data Storage
- Database: SQLite file in
./data/swarm.db (local only)
- Logs: Text files in
./logs/ (local only)
- Cache: Redis on localhost (local only)
- No cloud sync or remote storage
๐ Overview
OpenClaw Swarm Orchestrator is a local-first platform for building and managing multi-agent AI systems. Think of it as a "control tower" for coordinating multiple AI agents working together.
Core Features
- Agent Registry - Register LLM, Tool, Human, and Custom agents
- Task Queue - Priority-based task distribution with dependencies
- Real-time Dashboard - Web UI to monitor agents and tasks
- RESTful API - Complete REST API for programmatic control
- Local Storage - All data stays on your machine
Architecture
โโโโโโโโโโโโโโโโโโโ
โ Web Dashboard โ http://localhost:3000
โ (React UI) โ
โโโโโโโโโโฌโโโโโโโโโ
โ
โโโโโโโโโโผโโโโโโโโโ
โ FastAPI Server โ http://localhost:8000
โ (Backend API) โ
โโโโโโโโโโฌโโโโโโโโโ
โ
โโโโโโโโโโผโโโโโโโโโ
โ Local Storage โ
โ โข SQLite DB โ ./data/swarm.db
โ โข Redis Cache โ localhost:6379
โ โข Log Files โ ./logs/*.log
โโโโโโโโโโโโโโโโโโโ
๐ Installation
Prerequisites Check
Before installing, verify you have:
python --version
node --version
redis-cli ping
docker --version
Method 1: Using Docker (Recommended - Easiest)
This is the safest method - everything runs in containers.
git clone https://github.com/ZhenRobotics/openclaw-swarm-orchestrator.git
cd openclaw-swarm-orchestrator
cat docker-compose.yml
docker-compose up -d
curl http://localhost:8000/health
Access:
Method 2: Local Installation (For Development)
npm view openclaw-swarm-orchestrator
npm install -g openclaw-swarm-orchestrator
swarm-orchestrator --version
redis-server
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload
cd frontend
npm install
npm run dev
Method 3: From Source (Most Transparent)
git clone https://github.com/ZhenRobotics/openclaw-swarm-orchestrator.git
cd openclaw-swarm-orchestrator
git log -1 --format="%H"
cat backend/requirements.txt
cat package.json
cat docker-compose.yml
cd backend && pip install -r requirements.txt
cd ../frontend && npm install
โ๏ธ Configuration
Minimal Configuration (Local Only)
Create .env in project root:
DATABASE_URL=sqlite+aiosqlite:///./data/swarm.db
REDIS_URL=redis://localhost:6379
SECRET_KEY=your-random-secret-key-here
DEBUG=true
Optional: LLM Agent Support
If you want to use LLM agents (OpenAI, Anthropic), add:
OPENAI_API_KEY=sk-your-key-here
ANTHROPIC_API_KEY=sk-ant-your-key-here
โ ๏ธ Security Note:
- Only add API keys if you plan to use LLM agents
- Store
.env file securely (not in git)
- API keys are never sent to our servers (only to official LLM providers)
๐ป Basic Usage
1. Start the System
docker-compose up -d
redis-server &
cd backend && uvicorn app.main:app --reload &
cd frontend && npm run dev &
2. Create Your First Agent
Via Web UI:
- Open http://localhost:3000
- Go to "Agents" page
- Click "New Agent"
- Fill in:
- Name: "My Assistant"
- Type: "llm" (or "tool", "human", "custom")
- Config:
{"model": "gpt-4"} (if using LLM)
Via API:
curl -X POST http://localhost:8000/api/agents \
-H "Content-Type: application/json" \
-d '{
"name": "My Assistant",
"type": "llm",
"config": {"model": "gpt-4"}
}'
3. Create a Task
curl -X POST http://localhost:8000/api/tasks \
-H "Content-Type: application/json" \
-d '{
"title": "Analyze data",
"description": "Process the sales report",
"priority": "high"
}'
4. Monitor Status
Web Dashboard: http://localhost:3000
API:
curl http://localhost:8000/api/orchestrator/status
curl http://localhost:8000/api/agents
curl http://localhost:8000/api/tasks
๐ง Agent Types
1. LLM Agents (Requires API Key)
Uses external LLM APIs (OpenAI, Anthropic).
{
"name": "GPT-4 Assistant",
"type": "llm",
"config": {
"model": "gpt-4",
"temperature": 0.7
}
}
Required: OPENAI_API_KEY or ANTHROPIC_API_KEY
2. Tool Agents (Local Only)
Executes local functions/scripts.
{
"name": "Data Processor",
"type": "tool",
"config": {
"script_path": "./tools/process_data.py"
}
}
No external services needed.
3. Human Agents (Local Only)
Human-in-the-loop workflows.
{
"name": "Manager Approval",
"type": "human",
"config": {
"notification": "email"
}
}
No external services needed.
4. Custom Agents (User-Defined)
You define the behavior.
from swarm_orchestrator.base import BaseAgent
class MyCustomAgent(BaseAgent):
async def execute(self, task):
return result
No external services needed.
๐ Monitoring & Logs
Web Dashboard
Access at http://localhost:3000:
- Real-time agent status
- Task queue monitoring
- System statistics
- Execution logs
Log Files
All logs stored locally:
tail -f logs/swarm.log
docker-compose logs -f
API Monitoring
curl http://localhost:8000/health
curl http://localhost:8000/api/orchestrator/stats
curl http://localhost:8000/api/agents
๐ Security Best Practices
1. API Keys
- โ
Store in
.env file (not in code)
- โ
Set file permissions:
chmod 600 .env
- โ
Add
.env to .gitignore
- โ
Never commit API keys to git
2. Network Security
- โ
Firewall: Block ports 8000, 3000 from external access
- โ
Use localhost only (not 0.0.0.0) for development
- โ
Enable HTTPS in production
3. Data Privacy
- โ
All data stored locally in
./data/
- โ
Database file permissions:
chmod 600 data/swarm.db
- โ
Regular backups:
cp data/swarm.db backups/
4. Before Running
- โ
Review
docker-compose.yml
- โ
Inspect
backend/requirements.txt
- โ
Check
frontend/package.json
- โ
Run
npm audit and pip check
๐ Troubleshooting
Backend won't start
python --version
redis-cli ping
tail -f logs/swarm.log
Frontend won't start
node --version
cd frontend
rm -rf node_modules
npm install
Database errors
rm data/swarm.db
uvicorn app.main:app --reload
Port conflicts
lsof -i :8000
lsof -i :3000
lsof -i :6379
kill -9 <PID>
๐ Documentation
๐ค Support & Community
๐ License
MIT License - see LICENSE
โ
Pre-Installation Checklist
Before using this skill:
๐ฏ Use Cases
1. Multi-Agent Workflows
research_agent = Agent(name="Researcher", type="llm")
writer_agent = Agent(name="Writer", type="llm")
reviewer_agent = Agent(name="Reviewer", type="human")
2. Load Balancing
workers = [Agent(name=f"Worker-{i}", type="tool") for i in range(5)]
3. Human-in-the-Loop
ai_agent = Agent(name="AI", type="llm")
human_agent = Agent(name="Manager", type="human")
Version: 0.1.0
Status: Alpha - Active Development
Local-First: โ
All core features work offline
Privacy: โ
No data leaves your machine (except optional LLM calls)
Built with privacy and transparency in mind. Inspect the code before you trust it.