/pentest-attacks
Define the attack profile for an engagement — select which attack categories and skills to use. Saves to .pentest-attacks.json. If run before /pentest:pentest, the orchestrator will respect the selection. If run standalone, does not launch a pentest.
$ npx -y skills add Stickman230/claude-pentest --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/pentest-attacks
Context preview
What this command does when you run it.
Define the attack profile for an engagement — select which attack categories and skills to use. Saves to .pentest-attacks.json. If run before /pentest:pentest, the orchestrator will respect the selection. If run standalone, does not launch a pentest.
Command definition
pentest-attacks.mdname: pentest-attacks
description: Define the attack profile for an engagement — select which attack categories and skills to use. Saves to .pentest-attacks.json. If run before /pentest:pentest, the orchestrator will respect the selection. If run standalone, does not launch a pentest.
disable-model-invocation: true
allowed-tools:
- AskUserQuestion
- Read
- Write
Output the following banner verbatim:
============================================================
[ATTACK PROFILE DEFINITION]
============================================================
Step 1 — Check for Existing Attack Profile
Try to Read `.pentest-attacks.json`.
If the file exists and is valid JSON, extract and store `mode` and `selected_categories`, then output:
============================================================
EXISTING ATTACK PROFILE FOUND
============================================================
Mode: {mode}
Categories: {comma-separated list of selected_categories[*].label}
============================================================Then use AskUserQuestion to ask:
"An attack profile already exists. What would you like to do?"
Present exactly these options:
- "Update profile — define a new attack selection (replaces existing)"
- "Keep existing profile — no changes"
If "Keep existing profile", output:
Attack profile unchanged.
Then stop.
If "Update profile", continue to Step 2.
If the file does not exist, continue directly to Step 2.
Step 2 — Mode Selection
Use AskUserQuestion to ask:
"How do you want to configure the attack profile for this engagement?"
Present exactly these options:
- "Full suite — test all attack categories (default, recommended for thorough engagements)"
- "Web application profile — injection, client-side, server-side, authentication, API, business logic"
- "API & cloud profile — API security, cloud & containers, infrastructure, CVE testing, domain recon"
- "Custom — I will select specific categories"
Store the answer as `selected_mode`.
If "Full suite", set `attack_mode = "full"` and skip to Step 4. If "Web application profile", set `attack_mode = "web-app"` and skip to Step 4. If "API & cloud profile", set `attack_mode = "api-cloud"` and skip to Step 4. If "Custom", set `attack_mode = "custom"` and continue to Step 3.
Step 3 — Custom Category Selection (only if attack_mode = "custom")
Make a single AskUserQuestion call with three questions, all with multiSelect: true.
Q1 — "Select web attack categories to include:" (multiSelect: true)
- "Injection — SQLi, NoSQLi, CMDi, SSTI, XXE, LDAP"
- "Client-Side — XSS, CSRF, CORS, Clickjacking, Prototype Pollution, DOM"
- "Server-Side — SSRF, Path Traversal, File Upload, HTTP Smuggling, Deserialization"
- "Authentication — Auth Bypass, JWT, OAuth, Password Attacks"
Q2 — "Select application & cloud categories to include:" (multiSelect: true)
- "API Security — REST, GraphQL, WebSockets, Web LLM"
- "Web Application Logic — Business Logic, Race Conditions, Access Control, Cache Attacks, Info Disclosure"
- "Cloud & Containers — AWS, Azure, GCP, Docker, Kubernetes"
- "System / Post-Exploitation — Active Directory, PrivEsc, Persistence, Pivoting, Evasion"
Q3 — "Select infrastructure & recon categories to include:" (multiSelect: true)
- "IP Infrastructure — Port Scanning, DNS, SMB/NetBIOS, MITM, Sniffing, DoS, IPv6"
- "Domain Reconnaissance — Subdomain enum, cert transparency, service fingerprinting"
- "CVE Testing — Tech stack fingerprinting, known CVE research and PoC validation"
- "Social Engineering — Phishing, vishing, credential harvesting (requires written authorization)"
Store all selected options across Q1, Q2, Q3 as `custom_selections`.
Step 4 — Build Attack Profile JSON
Based on `attack_mode` and `custom_selections`, construct the attack profile.
Skill and executor reference table
Use this table to assign the correct `skill` and `executors` values for each selected category:
| Category name | Label | Attacks (sub-types) | Skill | Executors | |---|---|---|---|---| | injection | Injection | sql-injection, nosql-injection, command-injection, ssti, xxe, ldap-injection | pentest | pentester-executor | | client-side | Client-Side Attacks | xss, csrf, cors, clickjacking, prototype-pollution, dom-based | common-appsec-patterns | xss-tester, csrf-tester, csp-bypass-tester, prototype-pollution-tester, pentester-executor | | server-side | Server-Side Attacks | ssrf, path-traversal, file-upload, http-smuggling, deserialization, host-header | pentest | pentester-executor | | authentication | Authentication | auth-bypass, jwt, oauth, password-attacks | pentest, authenticating | pentester-executor | | api-security | API Security | rest-api, graphql, websockets, web-llm | pentest | pentester-executor | | web-applications | Web Application Logic | business-logic, race-conditions, access-control, cache-poisoning, cache-deception, info-disclosure | pentest | pentester-executor | | cloud-containers | Cloud & Containers | aws, azure, gcp, docker, kubernetes | pentest | pentester-executor | | system | System / Post-Exploitation | active-directory, privilege-escalation, persistence, pivoting, evasion, exploit-development | pentest | pentester-executor | | ip-infrastructure | IP Infrastructure | port-scanning, dns, smb-netbios, mitm, sniffing, dos, ipv6, vlan-hopping | pentest, domain-assessment | pentester-executor, domain-assessment | | domain-recon | Domain Reconnaissance | subdomain-enum, dns-brute-force, cert-transparency, service-fingerprinting | domain-assessment | domain-assessment | | cve-testing | CVE Testing | cve-research, stack-fingerprinting, poc-validation | cve-testing | cve-tester | | social-engineering | Social Engineering | phishing, vishing, credential-harvesting, usb-baiting | pentest | pentester-executor |
Preset category lists
**web-app preset** — include: injection, client-side, server-side, authentication, api-security, web-applications
**api-cloud preset
Read more
name: pentest-attacks description: Define the attack profile for an engagement — select which attack categories and skills to use. Saves to .pentest-attacks.json. If run before /pentest:pentest, the orchestrator will respect the selection. If run standalone, does not launch a pentest. disable-model-invocation: true allowed-tools: - AskUserQuestion - Read - Write
Output the following banner verbatim:
============================================================ [ATTACK PROFILE DEFINITION] ============================================================
Step 1 — Check for Existing Attack Profile
Try to Read `.pentest-attacks.json`.
If the file exists and is valid JSON, extract and store `mode` and `selected_categories`, then output:
============================================================
EXISTING ATTACK PROFILE FOUND
============================================================
Mode: {mode}
Categories: {comma-separated list of selected_categories[*].label}
============================================================Then use AskUserQuestion to ask:
"An attack profile already exists. What would you like to do?"
Present exactly these options:
- "Update profile — define a new attack selection (replaces existing)"
- "Keep existing profile — no changes"
If "Keep existing profile", output:
Attack profile unchanged.
Then stop.
If "Update profile", continue to Step 2.
If the file does not exist, continue directly to Step 2.
Step 2 — Mode Selection
Use AskUserQuestion to ask:
"How do you want to configure the attack profile for this engagement?"
Present exactly these options:
- "Full suite — test all attack categories (default, recommended for thorough engagements)"
- "Web application profile — injection, client-side, server-side, authentication, API, business logic"
- "API & cloud profile — API security, cloud & containers, infrastructure, CVE testing, domain recon"
- "Custom — I will select specific categories"
Store the answer as `selected_mode`.
If "Full suite", set `attack_mode = "full"` and skip to Step 4. If "Web application profile", set `attack_mode = "web-app"` and skip to Step 4. If "API & cloud profile", set `attack_mode = "api-cloud"` and skip to Step 4. If "Custom", set `attack_mode = "custom"` and continue to Step 3.
Step 3 — Custom Category Selection (only if attack_mode = "custom")
Make a single AskUserQuestion call with three questions, all with multiSelect: true.
Q1 — "Select web attack categories to include:" (multiSelect: true)
- "Injection — SQLi, NoSQLi, CMDi, SSTI, XXE, LDAP"
- "Client-Side — XSS, CSRF, CORS, Clickjacking, Prototype Pollution, DOM"
- "Server-Side — SSRF, Path Traversal, File Upload, HTTP Smuggling, Deserialization"
- "Authentication — Auth Bypass, JWT, OAuth, Password Attacks"
Q2 — "Select application & cloud categories to include:" (multiSelect: true)
- "API Security — REST, GraphQL, WebSockets, Web LLM"
- "Web Application Logic — Business Logic, Race Conditions, Access Control, Cache Attacks, Info Disclosure"
- "Cloud & Containers — AWS, Azure, GCP, Docker, Kubernetes"
- "System / Post-Exploitation — Active Directory, PrivEsc, Persistence, Pivoting, Evasion"
Q3 — "Select infrastructure & recon categories to include:" (multiSelect: true)
- "IP Infrastructure — Port Scanning, DNS, SMB/NetBIOS, MITM, Sniffing, DoS, IPv6"
- "Domain Reconnaissance — Subdomain enum, cert transparency, service fingerprinting"
- "CVE Testing — Tech stack fingerprinting, known CVE research and PoC validation"
- "Social Engineering — Phishing, vishing, credential harvesting (requires written authorization)"
Store all selected options across Q1, Q2, Q3 as `custom_selections`.
Step 4 — Build Attack Profile JSON
Based on `attack_mode` and `custom_selections`, construct the attack profile.
Skill and executor reference table
Use this table to assign the correct `skill` and `executors` values for each selected category:
| Category name | Label | Attacks (sub-types) | Skill | Executors | |---|---|---|---|---| | injection | Injection | sql-injection, nosql-injection, command-injection, ssti, xxe, ldap-injection | pentest | pentester-executor | | client-side | Client-Side Attacks | xss, csrf, cors, clickjacking, prototype-pollution, dom-based | common-appsec-patterns | xss-tester, csrf-tester, csp-bypass-tester, prototype-pollution-tester, pentester-executor | | server-side | Server-Side Attacks | ssrf, path-traversal, file-upload, http-smuggling, deserialization, host-header | pentest | pentester-executor | | authentication | Authentication | auth-bypass, jwt, oauth, password-attacks | pentest, authenticating | pentester-executor | | api-security | API Security | rest-api, graphql, websockets, web-llm | pentest | pentester-executor | | web-applications | Web Application Logic | business-logic, race-conditions, access-control, cache-poisoning, cache-deception, info-disclosure | pentest | pentester-executor | | cloud-containers | Cloud & Containers | aws, azure, gcp, docker, kubernetes | pentest | pentester-executor | | system | System / Post-Exploitation | active-directory, privilege-escalation, persistence, pivoting, evasion, exploit-development | pentest | pentester-executor | | ip-infrastructure | IP Infrastructure | port-scanning, dns, smb-netbios, mitm, sniffing, dos, ipv6, vlan-hopping | pentest, domain-assessment | pentester-executor, domain-assessment | | domain-recon | Domain Reconnaissance | subdomain-enum, dns-brute-force, cert-transparency, service-fingerprinting | domain-assessment | domain-assessment | | cve-testing | CVE Testing | cve-research, stack-fingerprinting, poc-validation | cve-testing | cve-tester | | social-engineering | Social Engineering | phishing, vishing, credential-harvesting, usb-baiting | pentest | pentester-executor |
Preset category lists
**web-app preset** — include: injection, client-side, server-side, authentication, api-security, web-applications
**api-cloud preset
An open source plugin for enabeling claude to gain offensive pentesting capabilities
Repo: Stickman230/claude-pentest
Other commands on claude-pentest.
- /pentest-exit
Close pentest session — summarizes findings, ensures outputs are saved, lifts isolation, and prompts for /clear
Open command - /pentest-kali
Connect to a Metasploit-Kali Server (MKS) REST API — verifies connectivity, discovers available Kali tools, and configures agents to prefer MKS endpoints over local Bash equivalents.
Open command - /pentest-scope
Define or update engagement scope — saves scope to disk without launching a pentest. Can be run before or during an engagement. If a pentest is active and the target changes drastically, warns the operator and suggests a new engagement.
Open command - /pentest
Activate pentest mode — displays ASCII art, configures session isolation, collects engagement scope, then OWNS the engagement: pre-flight, recon, planning (via the pentester-orchestrator planner), executor dispatch, a time-budget quota loop, aggregation, and report generation.
Open command

