ralph-loop
Start an autonomous pentest loop. Spawns fresh-context subagents for each phase. Use: /ralph-loop
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Start an autonomous pentest loop. Spawns fresh-context subagents for each phase. Use: /ralph-loop
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Run sustained security assessment campaigns against targets using the Ralph Wiggum autonomous loop pattern. Use when asked to start, continue, or manage a pentest campaign.
Control a Flipper Zero and scan BLE targets for authorized security research. Use when asked to interact with Flipper hardware, scan BLE devices, or control RF/IR/NFC/RFID.
BLE GATT exploitation methodology — scanning, enumeration, characteristic analysis, payload crafting, and write attacks against Bluetooth Low Energy devices
Run a sustained security assessment campaign — a real pentest, not a simulation
Credential testing methodology — default credential checking, password spraying, credential reuse, and OSINT for leaked credentials
Test default credentials against network services — SSH, HTTP, FTP, Telnet, MQTT, MySQL, PostgreSQL, Redis, MongoDB
| name | ralph-loop |
| description | Start an autonomous pentest loop. Spawns fresh-context subagents for each phase. Use: /ralph-loop |
When invoked, you become the orchestrator. You do NOT execute phases yourself. You spawn subagents with fresh context for each phase, monitor progress, and advance the state machine.
You (orchestrator, light context)
├── Spawn Agent: recon → scans everything, writes findings/recon.json
├── Spawn Agent: research → OSINT on targets, writes findings/research.json
├── Spawn Agent: enumerate → probes targets, writes findings/enumerate.json
├── You directly: exploit → ask user approval for each HIGH-risk action
└── Spawn Agent: report → compiles findings into report
Each subagent gets fresh context. Only disk state carries between phases.
Read engagement_state.json and progress.txt. If neither exists, initialize a new engagement.
Use the Agent tool for each phase:
Agent(
description: "Run {phase} phase",
prompt: "You are running the {PHASE} phase of a pentest.
SCOPE: {scope}
Read findings/ for prior results.
CALL MCP tools to execute this phase.
Write results to findings/{phase}.json.
{paste content of .opencode/agents/{phase}.md}",
model: "sonnet"
)
Model per phase: recon→sonnet, research→sonnet, enumerate→sonnet, exploit→current session (user approval), report→haiku.
After each subagent returns:
findings/{phase}.json exists and has contentengagement_state.jsonDo NOT spawn a subagent for exploit. Run it yourself so the user can approve each HIGH-risk action. Load skill("campaign") for the approval protocol.
When multiple independent targets exist, spawn parallel subagents:
Agent(prompt="Enumerate BLE device X...", model="sonnet", run_in_background=true)
Agent(prompt="Enumerate WiFi network Y...", model="sonnet", run_in_background=true)
If engagement_state.json has completed phases, skip them and continue.
You: read state, spawn agents, check results, advance phases, handle exploit interactively, summarize to user.
Subagents: read findings from disk, CALL tools, write findings to disk. Fresh context each time.