CTF Team Solve
Orchestrate a team of 3 specialized teammates to solve a CTF challenge in parallel.
When to Use
Use this when:
- A challenge is complex or multi-layered
- Initial triage shows mixed signals or low confidence
- You want to try multiple approaches simultaneously
- Time pressure demands parallel investigation
- The challenge has multiple files or stages
Do NOT use when:
- The challenge is straightforward (single encoding, obvious category)
- You already know exactly what tool to run
- Agent teams are not enabled
Prerequisites
Agent teams must be enabled. Verify CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 is set in .claude/settings.json or environment.
Instructions
Step 1: Triage the Challenge
Run the triage pipeline first to determine the category:
bash scripts/triage-for-team.sh $ARGUMENTS
Or use the analyze skill's triage:
# From the ctf-kit plugin
bash scripts/triage.sh $ARGUMENTS
Read the JSON output. Key fields: category, confidence, secondary_categories.
Step 2: Decide Team Composition
Based on triage results, select the appropriate 3-teammate composition from the category tables below. If triage shows mixed signals (confidence < 70% or multiple secondary categories), use the Cross-Category Team composition.
Step 3: Spawn the Team
Create an agent team with 3 teammates. For each teammate:
- Name them by role (e.g., "rsa-specialist", "hash-cracker")
- Set the prompt using the role description and the challenge context
- Set plan approval for teammates using offensive tools (web, pwn, osint)
- Create initial tasks in the shared task list — one per teammate
Example spawn prompt to the lead:
Create an agent team with 3 teammates to solve this crypto challenge.
Teammate 1 — "classical-analyst":
Focus on classical ciphers and encoding chains.
Tools: frequency analysis, dcode.fr patterns, CyberChef recipes.
Start by running: bash scripts/identify-hash.sh and bash scripts/run-decode.sh
Teammate 2 — "rsa-specialist":
Focus on RSA and asymmetric crypto attacks.
Tools: RsaCtfTool, openssl, sage/python for math.
Start by extracting any RSA parameters (n, e, c, p, q).
Teammate 3 — "symmetric-cracker":
Focus on XOR, AES, and hash cracking.
Tools: xortool, hashcat, john.
Start by running: bash scripts/run-xortool.sh on any binary files.
Each teammate should broadcast findings to others when they discover something
that changes the understanding of the challenge. If a teammate finds a flag,
broadcast immediately and all teammates should verify.
Step 4: Coordinate
- Let teammates self-claim tasks after their initial assignment
- Monitor progress — check in if a teammate is stuck for more than a few minutes
- Broadcast discoveries — tell a teammate to broadcast when they find something that shifts the approach
- Synthesize — once 2+ teammates have findings, combine and identify the solution path
- Shut down early — if one teammate solves it, shut down the others
Team Compositions by Category
Crypto Team
| Role |
Name |
Focus |
First Action |
| Classical & Encoding |
classical-analyst |
Frequency analysis, substitution ciphers, Vigenere, encoding chains, CyberChef |
Run scripts/run-decode.sh and scripts/identify-hash.sh on all challenge files |
| Asymmetric & Math |
rsa-specialist |
RSA factoring, padding oracles, Wiener/Boneh-Durfee, ECC, Diffie-Hellman |
Extract RSA parameters, run RsaCtfTool, try sage/python math attacks |
| Symmetric & Hash |
symmetric-cracker |
XOR key recovery, AES mode attacks, hash cracking with hashcat/john |
Run scripts/run-xortool.sh, identify and crack any hashes |
Forensics Team
| Role |
Name |
Focus |
First Action |
| File & Disk |
file-carver |
binwalk, foremost, file carving, disk image mounting, deleted file recovery |
Run scripts/run-binwalk.sh and scripts/extract-and-analyze.sh |
| Memory |
memory-analyst |
volatility3 plugins, process trees, registry, command history, malware detection |
Run scripts/run-volatility.sh with pslist, netscan, cmdline |
| Network |
network-analyst |
tshark, protocol analysis, stream extraction, DNS exfil detection |
Run scripts/run-tshark.sh, extract HTTP objects and DNS queries |
Web Team (plan approval required for Tier 2 tools)
| Role |
Name |
Focus |
First Action |
| Recon & Enumeration |
web-recon |
Directory scanning, technology fingerprinting, hidden paths, robots.txt |
Run scripts/run-gobuster.sh, check robots.txt, view source |
| Injection |
injection-tester |
SQLi, XSS, SSTI, command injection, path traversal |
Test input fields with common payloads, run sqlmap on parameters |
| Auth & Logic |
auth-analyst |
JWT attacks, session handling, IDOR, privilege escalation, API abuse |
Inspect cookies/tokens, test auth bypass, check API endpoints |
Important: Spawn web teammates with plan approval required. The lead must review before any teammate sends requests to a target.
Pwn Team (plan approval required for remote connections)
| Role |
Name |
Focus |
First Action |
| Static Analyst |
binary-analyst |
checksec, disassembly, vulnerability ID, function mapping |
Run scripts/run-checksec.sh, map interesting functions |
| Exploit Developer |
exploit-dev |
Payload crafting, ROP chains, shellcode, ret2libc, format strings |
Build exploit based on static analyst's findings |
| Dynamic Analyst |
dynamic-analyst |
GDB debugging, leak finding, heap state, ASLR bypass |
Run binary in debugger, find offsets, verify leaks |
Important: Spawn the exploit-dev teammate with plan approval required before connecting to remote targets.
Reverse Team
| Role |
Name |
Focus |
First Action |
| Static Analyst |
static-reverser |
radare2, Ghidra, decompilation, function listing, string analysis |
Run scripts/run-radare2.sh, identify interesting functions |
| Dynamic Analyst |
dynamic-reverser |
ltrace, strace, GDB, breakpoints, anti-debug bypass, runtime behavior |
Run binary with ltrace/strace, set breakpoints on check functions |
| Algorithm Solver |
algo-solver |
Keygen writing, constraint solving (z3), algorithm reimplementation |
Reimplement validation logic, write solver script |
Stego Team
| Role |
Name |
Focus |
First Action |
| Image Analyst |
image-analyst |
zsteg LSB, steghide extraction, visual inspection, color plane analysis |
Run scripts/run-zsteg.sh and scripts/run-steghide.sh |
| Metadata & Structure |
metadata-analyst |
exiftool, binwalk appended data, file structure, IHDR manipulation |
Run scripts/run-exiftool.sh and scripts/run-binwalk.sh |
| Audio & Advanced |
audio-analyst |
Spectrogram messages, audio LSB, DTMF tones, video frame analysis |
Open in Audacity spectrogram view, check audio LSB encoding |
OSINT Team (plan approval for external queries)
| Role |
Name |
Focus |
First Action |
| People & Social |
social-investigator |
Sherlock username enum, social media profiling, identity correlation |
Run scripts/run-sherlock.sh, cross-reference platforms |
| Domain & Infra |
domain-analyst |
whois, DNS records, subdomain enum, theHarvester, IP geolocation |
Run whois, dig, theHarvester on target domains |
| Geo & Media |
geo-analyst |
EXIF GPS extraction, reverse image search, visual landmark ID |
Run scripts/run-exiftool.sh, identify visual clues |
Important: Spawn OSINT teammates with plan approval required before hitting external services.
Misc Team
| Role |
Name |
Focus |
First Action |
| Encoding Specialist |
decoder |
CyberChef recipes, encoding chains, base conversions, custom encodings |
Run scripts/run-decode.sh, try multi-layer decoding |
| Esoteric & Code |
esoteric-analyst |
Brainfuck, Whitespace, JSFuck, custom languages, polyglots |
Identify language from character set, find interpreter |
| Puzzle & Logic |
puzzle-solver |
Pattern recognition, math puzzles, QR/barcodes, game theory |
Run zbarimg on images, analyze patterns, solve constraints |
Cross-Category Team (mixed signals or unclear category)
Use when triage confidence is below 70% or multiple categories are detected.
| Role |
Name |
Focus |
First Action |
| Analyst A |
analyst-a |
Primary detected category |
Use the primary category's skill |
| Analyst B |
analyst-b |
Secondary detected category |
Use the secondary category's skill |
| Generalist |
generalist |
Broad investigation: strings, metadata, structure, encoding |
Run full triage, check all common patterns |
Communication Patterns
When teammates should broadcast
- Found a flag or flag fragment
- Discovered a new file or layer (e.g., extracted an embedded file)
- Identified the challenge type with high confidence
- Hit a dead end — other teammates should deprioritize this approach
- Found a password, key, or credential that others might need
When the lead should intervene
- Two teammates are pursuing the same approach (redirect one)
- A teammate has been stuck for >3 minutes
- New information changes the strategy (reassign tasks)
- One teammate solved it (shut down others)
Permissions Model
Tier 1 — Auto-allow (local analysis)
All teammates get these automatically:
file, strings, xxd, binwalk, foremost, exiftool, hashid, xortool,
zsteg, steghide, volatility3, tshark, checksec, ropgadget, radare2,
python3, zbarimg, ctf (CLI)
Tier 2 — Plan approval (connects to targets)
Teammates using these tools must have plan approval enabled:
sqlmap, gobuster, ffuf, nikto, pwntools (remote), nmap,
sherlock, theHarvester, curl/wget to targets
The lead reviews the plan before the teammate executes.
Tier 3 — User confirmation (resource-heavy or destructive)
These should prompt the user:
hashcat --gpu (resource-intensive), any write to target systems
Example Full Workflow
User: /ctf-kit:team-solve challenge.zip
Lead:
1. Runs triage → category=crypto, confidence=65%, secondary=stego
2. Low confidence → uses Cross-Category Team
3. Spawns:
- "crypto-analyst" with crypto skill focus
- "stego-analyst" with stego skill focus
- "generalist" running broad analysis
4. Creates tasks:
- Task 1: Crypto analysis of challenge files (crypto-analyst)
- Task 2: Stego analysis of any images found (stego-analyst)
- Task 3: Deep file analysis and strings search (generalist)
5. Generalist finds hidden PNG inside challenge file → broadcasts
6. Stego-analyst claims the PNG → finds LSB-encoded text
7. LSB text is a key → crypto-analyst uses it to decrypt
8. Flag found → broadcast → team shutdown
Related Skills
/ctf-kit:analyze — Triage a challenge (always run first)
/ctf-kit:compete — Competition mode (multiple challenges)
/ctf-kit:crypto through /ctf-kit:misc — Individual category skills
Source: MysterionRise/ctf-kit — distributed by TomeVault.
1---2name: mysterionrise-ctf-kit-team-solve3description: CTF Team Solve4---56# CTF Team Solve78Orchestrate a team of 3 specialized teammates to solve a CTF challenge in parallel.910## When to Use1112Use this when:1314- A challenge is complex or multi-layered15- Initial triage shows mixed signals or low confidence16- You want to try multiple approaches simultaneously17- Time pressure demands parallel investigation18- The challenge has multiple files or stages1920Do NOT use when:2122- The challenge is straightforward (single encoding, obvious category)23- You already know exactly what tool to run24- Agent teams are not enabled2526## Prerequisites2728Agent teams must be enabled. Verify `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` is set in `.claude/settings.json` or environment.2930## Instructions3132### Step 1: Triage the Challenge3334Run the triage pipeline first to determine the category:3536```bash37bash scripts/triage-for-team.sh $ARGUMENTS38```3940Or use the analyze skill's triage:4142```bash43# From the ctf-kit plugin44bash scripts/triage.sh $ARGUMENTS45```4647Read the JSON output. Key fields: `category`, `confidence`, `secondary_categories`.4849### Step 2: Decide Team Composition5051Based on triage results, select the appropriate 3-teammate composition from the category tables below. If triage shows mixed signals (confidence < 70% or multiple secondary categories), use the **Cross-Category Team** composition.5253### Step 3: Spawn the Team5455Create an agent team with 3 teammates. For each teammate:56571. **Name** them by role (e.g., "rsa-specialist", "hash-cracker")582. **Set the prompt** using the role description and the challenge context593. **Set plan approval** for teammates using offensive tools (web, pwn, osint)604. **Create initial tasks** in the shared task list — one per teammate6162Example spawn prompt to the lead:6364```text65Create an agent team with 3 teammates to solve this crypto challenge.6667Teammate 1 — "classical-analyst":68 Focus on classical ciphers and encoding chains.69 Tools: frequency analysis, dcode.fr patterns, CyberChef recipes.70 Start by running: bash scripts/identify-hash.sh and bash scripts/run-decode.sh7172Teammate 2 — "rsa-specialist":73 Focus on RSA and asymmetric crypto attacks.74 Tools: RsaCtfTool, openssl, sage/python for math.75 Start by extracting any RSA parameters (n, e, c, p, q).7677Teammate 3 — "symmetric-cracker":78 Focus on XOR, AES, and hash cracking.79 Tools: xortool, hashcat, john.80 Start by running: bash scripts/run-xortool.sh on any binary files.8182Each teammate should broadcast findings to others when they discover something83that changes the understanding of the challenge. If a teammate finds a flag,84broadcast immediately and all teammates should verify.85```8687### Step 4: Coordinate8889- **Let teammates self-claim tasks** after their initial assignment90- **Monitor progress** — check in if a teammate is stuck for more than a few minutes91- **Broadcast discoveries** — tell a teammate to broadcast when they find something that shifts the approach92- **Synthesize** — once 2+ teammates have findings, combine and identify the solution path93- **Shut down early** — if one teammate solves it, shut down the others9495## Team Compositions by Category9697### Crypto Team9899| Role | Name | Focus | First Action |100|------|------|-------|--------------|101| Classical & Encoding | `classical-analyst` | Frequency analysis, substitution ciphers, Vigenere, encoding chains, CyberChef | Run `scripts/run-decode.sh` and `scripts/identify-hash.sh` on all challenge files |102| Asymmetric & Math | `rsa-specialist` | RSA factoring, padding oracles, Wiener/Boneh-Durfee, ECC, Diffie-Hellman | Extract RSA parameters, run `RsaCtfTool`, try sage/python math attacks |103| Symmetric & Hash | `symmetric-cracker` | XOR key recovery, AES mode attacks, hash cracking with hashcat/john | Run `scripts/run-xortool.sh`, identify and crack any hashes |104105### Forensics Team106107| Role | Name | Focus | First Action |108|------|------|-------|--------------|109| File & Disk | `file-carver` | binwalk, foremost, file carving, disk image mounting, deleted file recovery | Run `scripts/run-binwalk.sh` and `scripts/extract-and-analyze.sh` |110| Memory | `memory-analyst` | volatility3 plugins, process trees, registry, command history, malware detection | Run `scripts/run-volatility.sh` with pslist, netscan, cmdline |111| Network | `network-analyst` | tshark, protocol analysis, stream extraction, DNS exfil detection | Run `scripts/run-tshark.sh`, extract HTTP objects and DNS queries |112113### Web Team (plan approval required for Tier 2 tools)114115| Role | Name | Focus | First Action |116|------|------|-------|--------------|117| Recon & Enumeration | `web-recon` | Directory scanning, technology fingerprinting, hidden paths, robots.txt | Run `scripts/run-gobuster.sh`, check robots.txt, view source |118| Injection | `injection-tester` | SQLi, XSS, SSTI, command injection, path traversal | Test input fields with common payloads, run sqlmap on parameters |119| Auth & Logic | `auth-analyst` | JWT attacks, session handling, IDOR, privilege escalation, API abuse | Inspect cookies/tokens, test auth bypass, check API endpoints |120121**Important**: Spawn web teammates with **plan approval required**. The lead must review before any teammate sends requests to a target.122123### Pwn Team (plan approval required for remote connections)124125| Role | Name | Focus | First Action |126|------|------|-------|--------------|127| Static Analyst | `binary-analyst` | checksec, disassembly, vulnerability ID, function mapping | Run `scripts/run-checksec.sh`, map interesting functions |128| Exploit Developer | `exploit-dev` | Payload crafting, ROP chains, shellcode, ret2libc, format strings | Build exploit based on static analyst's findings |129| Dynamic Analyst | `dynamic-analyst` | GDB debugging, leak finding, heap state, ASLR bypass | Run binary in debugger, find offsets, verify leaks |130131**Important**: Spawn the exploit-dev teammate with **plan approval required** before connecting to remote targets.132133### Reverse Team134135| Role | Name | Focus | First Action |136|------|------|-------|--------------|137| Static Analyst | `static-reverser` | radare2, Ghidra, decompilation, function listing, string analysis | Run `scripts/run-radare2.sh`, identify interesting functions |138| Dynamic Analyst | `dynamic-reverser` | ltrace, strace, GDB, breakpoints, anti-debug bypass, runtime behavior | Run binary with ltrace/strace, set breakpoints on check functions |139| Algorithm Solver | `algo-solver` | Keygen writing, constraint solving (z3), algorithm reimplementation | Reimplement validation logic, write solver script |140141### Stego Team142143| Role | Name | Focus | First Action |144|------|------|-------|--------------|145| Image Analyst | `image-analyst` | zsteg LSB, steghide extraction, visual inspection, color plane analysis | Run `scripts/run-zsteg.sh` and `scripts/run-steghide.sh` |146| Metadata & Structure | `metadata-analyst` | exiftool, binwalk appended data, file structure, IHDR manipulation | Run `scripts/run-exiftool.sh` and `scripts/run-binwalk.sh` |147| Audio & Advanced | `audio-analyst` | Spectrogram messages, audio LSB, DTMF tones, video frame analysis | Open in Audacity spectrogram view, check audio LSB encoding |148149### OSINT Team (plan approval for external queries)150151| Role | Name | Focus | First Action |152|------|------|-------|--------------|153| People & Social | `social-investigator` | Sherlock username enum, social media profiling, identity correlation | Run `scripts/run-sherlock.sh`, cross-reference platforms |154| Domain & Infra | `domain-analyst` | whois, DNS records, subdomain enum, theHarvester, IP geolocation | Run whois, dig, theHarvester on target domains |155| Geo & Media | `geo-analyst` | EXIF GPS extraction, reverse image search, visual landmark ID | Run `scripts/run-exiftool.sh`, identify visual clues |156157**Important**: Spawn OSINT teammates with **plan approval required** before hitting external services.158159### Misc Team160161| Role | Name | Focus | First Action |162|------|------|-------|--------------|163| Encoding Specialist | `decoder` | CyberChef recipes, encoding chains, base conversions, custom encodings | Run `scripts/run-decode.sh`, try multi-layer decoding |164| Esoteric & Code | `esoteric-analyst` | Brainfuck, Whitespace, JSFuck, custom languages, polyglots | Identify language from character set, find interpreter |165| Puzzle & Logic | `puzzle-solver` | Pattern recognition, math puzzles, QR/barcodes, game theory | Run `zbarimg` on images, analyze patterns, solve constraints |166167### Cross-Category Team (mixed signals or unclear category)168169Use when triage confidence is below 70% or multiple categories are detected.170171| Role | Name | Focus | First Action |172|------|------|-------|--------------|173| Analyst A | `analyst-a` | Primary detected category | Use the primary category's skill |174| Analyst B | `analyst-b` | Secondary detected category | Use the secondary category's skill |175| Generalist | `generalist` | Broad investigation: strings, metadata, structure, encoding | Run full triage, check all common patterns |176177## Communication Patterns178179### When teammates should broadcast180181- Found a flag or flag fragment182- Discovered a new file or layer (e.g., extracted an embedded file)183- Identified the challenge type with high confidence184- Hit a dead end — other teammates should deprioritize this approach185- Found a password, key, or credential that others might need186187### When the lead should intervene188189- Two teammates are pursuing the same approach (redirect one)190- A teammate has been stuck for >3 minutes191- New information changes the strategy (reassign tasks)192- One teammate solved it (shut down others)193194## Permissions Model195196### Tier 1 — Auto-allow (local analysis)197198All teammates get these automatically:199200```text201file, strings, xxd, binwalk, foremost, exiftool, hashid, xortool,202zsteg, steghide, volatility3, tshark, checksec, ropgadget, radare2,203python3, zbarimg, ctf (CLI)204```205206### Tier 2 — Plan approval (connects to targets)207208Teammates using these tools must have plan approval enabled:209210```text211sqlmap, gobuster, ffuf, nikto, pwntools (remote), nmap,212sherlock, theHarvester, curl/wget to targets213```214215The lead reviews the plan before the teammate executes.216217### Tier 3 — User confirmation (resource-heavy or destructive)218219These should prompt the user:220221```text222hashcat --gpu (resource-intensive), any write to target systems223```224225## Example Full Workflow226227```text228User: /ctf-kit:team-solve challenge.zip229230Lead:2311. Runs triage → category=crypto, confidence=65%, secondary=stego2322. Low confidence → uses Cross-Category Team2333. Spawns:234 - "crypto-analyst" with crypto skill focus235 - "stego-analyst" with stego skill focus236 - "generalist" running broad analysis2374. Creates tasks:238 - Task 1: Crypto analysis of challenge files (crypto-analyst)239 - Task 2: Stego analysis of any images found (stego-analyst)240 - Task 3: Deep file analysis and strings search (generalist)2415. Generalist finds hidden PNG inside challenge file → broadcasts2426. Stego-analyst claims the PNG → finds LSB-encoded text2437. LSB text is a key → crypto-analyst uses it to decrypt2448. Flag found → broadcast → team shutdown245```246247## Related Skills248249- `/ctf-kit:analyze` — Triage a challenge (always run first)250- `/ctf-kit:compete` — Competition mode (multiple challenges)251- `/ctf-kit:crypto` through `/ctf-kit:misc` — Individual category skills252253---254> Source: [MysterionRise/ctf-kit](https://github.com/MysterionRise/ctf-kit) — distributed by [TomeVault](https://tomevault.io).255<!-- tomevault:4.0:skill_md:2026-06-16 -->