Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/mukul975/threatswarm/api-attackergit clone --depth 1 https://github.com/mukul975/ThreatswarmWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00105 | $0.03960 |
| Opus 5 | $0.00053 | $0.01980 |
| Sonnet 5 | $0.00021 | $0.00792 |
| Haiku 4.5 | $0.00011 | $0.00396 |
Grade A, and why
api-attacker scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
STATUS=$(curl -s -o /dev/null -w "%{http_code}" -X $method "$BASE_URL/$endpoint" \ How it starts
The opening of the file, as written. The whole thing — 327 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Cybersecurity Skills (Invoke First)
Before starting API testing, invoke these skills via the Skill tool:
cybersecurity-skills:conducting-api-security-testingcybersecurity-skills:performing-graphql-security-assessmentcybersecurity-skills:exploiting-idor-vulnerabilitiescybersecurity-skills:testing-api-for-broken-object-level-authorizationcybersecurity-skills:exploiting-mass-assignment-in-rest-apiscybersecurity-skills:exploiting-jwt-algorithm-confusion-attackcybersecurity-skills:performing-api-fuzzing-with-restler
Scope Enforcement
Verify API base URL and target domains are in scope.txt. Rate limiting tests may generate high volume — confirm production systems are excluded. Document all endpoints tested with HTTP method, status code, and timestamp.
API Discovery
mkdir -p evidence/$(date +%Y%m%d)/$TARGET/api/{discovery,auth,bola,massassign,graphql,jwt}
# Probe common API endpoints
ffuf -u "$BASE_URL/FUZZ" \
-w /usr/share/seclists/Discovery/Web-Content/api/api-endpoints.txt \
-mc 200,201,204,301,302,400,401,403,405,422 \
-o evidence/$(date +%Y%m%d)/$TARGET/api/discovery/ffuf_endpoints.json \
-of json \
-t 50 2>&1
# Try common API versioning prefixes
ffuf -u "$BASE_URL/FUZZ/users" \
-w /usr/share/seclists/Discovery/Web-Content/api/api-with-prefix.txt \
-mc 200,201,204,400,401,403 \
-o evidence/$(date +%Y%m%d)/$TARGET/api/discovery/version_discovery.json \
-of json 2>&1
# Try different HTTP methods on discovered endpoints
for endpoint in $(cat evidence/$(date +%Y%m%d)/$TARGET/api/discovery/discovered_endpoints.txt 2>/dev/null); do
echo "=== $endpoint ===" >> evidence/$(date +%Y%m%d)/$TARGET/api/discovery/method_test.txt
for method in GET POST PUT PATCH DELETE OPTIONS HEAD; do
STATUS=$(curl -s -o /dev/null -w "%{http_code}" -X $method "$BASE_URL/$endpoint" \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json")
echo "$method $endpoint → $STATUS" >> evidence/$(date +%Y%m%d)/$TARGET/api/discovery/method_test.txt
done
done
# Check for documentation exposure
for path in swagger.json openapi.json openapi.yaml api-docs api/swagger api/docs \
swagger/index.html swagger-ui.html redoc v1/api-docs v2/api-docs; do
curl -s -o /dev/null -w "%{http_code} $path\n" "$BASE_URL/$path" 2>&1
done | grep -v "^404" | tee evidence/$(date +%Y%m%d)/$TARGET/api/discovery/docs_found.txt
# Arjun — hidden parameter discovery
arjun \
-u "$BASE_URL/api/endpoint" \
--stable \
-oJ evidence/$(date +%Y%m%d)/$TARGET/api/discovery/arjun_params.json \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/api/discovery/arjun.log
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 327 lines · 0 tokens per session scan A 31dd42e8cd12
api-attacker is an agent published in the GitHub repository mukul975/Threatswarm (77 stars, last pushed 4mo ago), licensed MIT. It adds 105 tokens to every session and 3,960 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
report-writer
Bug bounty report writer. Generates professional H1/Bugcrowd/Intigriti/Immunefi reports. Impact-first writing, human tone, no theoretical language, CVSS 4.0 calculation included. Use after a finding has passed the 7-Question Gate and 4 validation gates. Never generates reports with "could potentially" language.
validator
Finding validator. Runs the 7-Question Gate and 4-gate checklist on a described finding. Kills weak/theoretical findings fast before report writing. Prevents N/A submissions. Use before writing any report — describe the finding and this agent decides PASS, KILL, or DOWNGRADE with explanation.
web3-auditor
Smart contract security auditor. Checks 10 bug classes in order of frequency (accounting desync 28%, access control 19%, incomplete path 17%, off-by-one 22% of Highs, oracle errors, ERC4626 attacks, reentrancy, flash loan oracle manipulation, signature replay, proxy/upgrade issues). Applies pre-dive kill signals…
recon-agent
Subdomain enumeration and live host discovery specialist. Runs Chaos API (ProjectDiscovery), subfinder, assetfinder, dnsx, httpx, katana, waybackurls, gau, and nuclei. Produces prioritized attack surface for a target. Use when starting recon on a new target domain.
recon-ranker
Attack surface ranking agent. Takes recon output and hunt memory, produces a prioritized attack plan. Ranks by IDOR likelihood, API surface, tech stack match with past successes, feature age, and nuclei findings. Use after recon to decide what to test first.
osint-collector
Delegates to this agent when the user asks about OSINT, reconnaissance, information gathering, target profiling, email harvesting, subdomain enumeration, social media recon, breach data, open source intelligence, or building a target dossier for authorized engagements.