Two config files control everything. Swap providers without redesigning the swarm. Redesign the swarm without changing infrastructure.
Config.json — Infrastructure
Where and how agents connect
LLM providers, MCP server definitions, filesystem boundaries, Docker posture, and user identity. The wiring layer.
"llmProviders": [{ "name": "openrouter", ... }]
"mcpServers": { "Filesystem": { ... } }
"filesystem": { "allowedPaths": ["/project"] }
Swarm.json — Topology
Who does what
Agent roles, model routing, per-agent model tuning, delegation permissions, tool scope, and skill patterns. The behavior layer.
"agents": [{ "name": "CodeAgent",
"model": "openai/gpt-5.4",
"mcpServers": ["Filesystem", "PythonRepl"] }]
Prompts — Behavior Contracts
How agents think
Markdown files defining reasoning patterns, workflows, and constraints per role. Tune behavior without touching the runtime.
Prompts/Agents/orchestrator.md
Prompts/Agents/code_agent.md
Prompts/Agents/research_agent.md
Skills — Runtime Playbooks
What agents know
Reusable modules loaded at runtime via list_skills / read_skill. Extend capabilities without prompt bloat. Hot-reload with /reloadskills.
Skills/training-pipeline/SKILL.md
Skills/dataset-prep/SKILL.md
Skills/gpu-monitor/SKILL.md