Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/chainreactors-swarm
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/swarm
What's inside
- Skill name
swarm- Description
- Autonomous multi-agent coordination protocol. Commander posts objectives; 3-5 nodes self-organize into tactical squads through natural language.
- License
- MIT
- Instructions
- 153 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- schema.json
SKILL.md (first lines)
# Swarm
A commander posts an objective to a shared IOA space. Nodes in the space self-organize into a tactical squad — dividing work, sharing findings, and converging on results. No micromanagement.
## Roles
- **Commander** (aide): posts objectives, monitors, mediates human review. Does NOT assign specific work to specific nodes.
- **Node** (aiscan): receives objectives, self-organizes with peers, executes, reports.
## Message format
Send with `content_type: "swarm"` on the message envelope. The content body has **NO `type` field**.
```json
{"content": "Natural language message"}
```
Objective broadcast (commander → space):
```json
{"content": "Full vulnerability assessment of 10.0.0.0/24", "targets": ["10.0.0.0/24"], "task": true}
```
No `refs.nodes` — this is a broadcast to the entire space. All idle nodes pick it up.
| Field | Required | Description |
|-------|----------|-------------|
| `content` | **yes** | Natural language |
| `targets` | no | Operational targets for tools |
| `task` | no | `true` → all idle nodes start working |
---
## Squad formation (what happens when an objective arrives)
When a `task:true` broadcast arrives, every idle node in the space starts a task. The squad self-organizes in 3 steps:
### Step 1: Read + Introduce (one round)
Each node reads the space and sends one introduction:
```
"Node scanner-01. Skills: gogo, spray. Strongest at web surface analysis."
```
### Step 2: Claim (one round)
After reading peer introductions, each node claims a work scope based on its strengths:
```
"I'll take web surface (spray + neutron) for the full /24."
```
Rules:
- Pick scope matching your strongest skills
- If a peer already claimed your preferred scope, pick the next best
- Duplicate claims: earlier message wins, later agent adapts
- One message. Don't negotiate. Claim and start.
**Typical 3-5 node squad split:**
| Nodes | Split strategy |
|-------|---------------|
| 3 | recon / web scan / network services |
| 4 | recon / web scan / network services / credential testing |
| 5 | passive recon / active recon / web scan / network services / exploitation |
### Step 3: Execute + Share
```
claim → execute → share findings as you go → read space → claim next scope → …
```
Every phase boundary is a read-write cycle. Don't go silent.
---
## Commander role
The commander does NOT assign specific work to specific nodes. It:
1. **Posts objectives**: broadcast `task:true` to the space
2. **Monitors**: reads the space to track squad progress
3. **Mediates HITL**: when a node says "need human confirmation", creates a checkpoint and relays the decision
4. **Evaluates convergence**: all scopes reported + no blockers = done
### Posting an objective
```json
{"content": "Objective: penetration test of 10.0.0.0/24. Find all web vulnerabilities, weak credentials, and misconfigurations. Report findings with severity.", "targets": ["10.0.0.0/24"], "task": true}
```
No `refs.nodes`. The squad handles the rest.
### Multiple squads
For large targets, create multiple spaces — one per squad, one per objective:
```
aide.workspace.squad-web → 3 nodes → web vulnerability assessment
aide.workspace.squad-network → 3 nodes → network service enumeration
aide.workspace.squad-recon → 2 nodes → passive intelligence gathering
```
---
## Node role
### Receiving an objective
When a broadcast `task:true` arrives, you start a task. Read the space, introduce yourself, claim scope, execute.
### Sharing findings (share immediately, don't batch)
```
"Found SQL injection on 10.0.0.5:8080/api/search. Blind time-based, 5s delay. Severity: high."
```
### Requesting human inputFrom chainreactors/ioa, MIT.
More from chainreactors/ioa
- 0.558score
checkpoint
chainreactors
Human-in-the-loop review protocol.
SkillCFreshness: C★ 26Claude Code +9 - 0.558score
handoff
chainreactors
Fire-and-forget work delegation.
SkillCFreshness: C★ 26Claude Code +9 - 0.557score
team
chainreactors
Named-group communication within a workspace.
SkillCFreshness: C★ 26Claude Code +9
Signals
- Stars
- 26
- Forks
- 4
- Open issues
- 1
- Last commit (this folder)
- Jun 8, 2026 (4 months ago)
- Last release
- Jun 21, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/chainreactors/ioa
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from chainreactors
- 0.558score
checkpoint
chainreactors
Human-in-the-loop review protocol.
SkillCFreshness: C★ 26Claude Code +9 - 0.558score
handoff
chainreactors
Fire-and-forget work delegation.
SkillCFreshness: C★ 26Claude Code +9 - 0.557score
team
chainreactors
Named-group communication within a workspace.
SkillCFreshness: C★ 26Claude Code +9
Cite this page
swarm skill. Agent Mart. https://agentmart.dev/skills/chainreactors-swarm (last updated 2026-10-24)