/state-snapshot
Capture a full debuggee state snapshot (all committed memory regions + processor state) to disk for offline analysis
Claude Code
$ npx -y skills add dariushoule/x64dbg-skills --skill state-snapshot --agent claude-code
Codex
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a codex -y
Cursor
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a cursor -y
Gemini CLI
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a gemini-cli -y
GitHub Copilot
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a github-copilot -y
OpenCode
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a opencode -y
Windsurf
$ npx skills add dariushoule/x64dbg-skills --skill state-snapshot -a windsurf -y
SKILL.md
state-snapshot.SKILL.mdname: state-snapshot
description: Capture a full debuggee state snapshot (all committed memory regions + processor state) to disk for offline analysis
allowed-tools: mcp__x64dbg__get_debugger_status, mcp__x64dbg__pause, mcp__x64dbg__disconnect, mcp__x64dbg__connect_to_session, mcp__x64dbg__go, Bash
state-snapshot
Capture a full debuggee state snapshot — all committed memory regions as raw binary files plus the complete processor state as JSON.
Instructions
Follow these steps exactly:
1. Verify debugger connection
Call `mcp__x64dbg__get_debugger_status` to confirm the debugger is connected and a debuggee is loaded. Note the **session PID** and **x64dbg path** from the current MCP connection — you will need these to reconnect later.
If no debuggee is loaded, tell the user and stop.
2. Pause the debuggee if running
If the debugger status shows the debuggee is running (not paused), call `mcp__x64dbg__pause` to pause it. Remember that you auto-paused so you can resume later.
3. Disconnect the MCP client
Call `mcp__x64dbg__disconnect` to release the ZMQ connection. This is **required** because only one client can be connected to an x64dbg session at a time, and the Python script needs its own connection.
4. Run the snapshot script
Execute the snapshot script:
python "${CLAUDE_PLUGIN_ROOT}\skills\state-snapshot\state_snapshot.py" --x64dbg-path "<x64dbg_path>" --pid <session_pid>Where:
- `<x64dbg_path>` is the path to the x64dbg executable noted in step 1
- `<session_pid>` is the debugger process PID noted in step 1
The script defaults output to `./snapshots/<timestamp>/`. If the user specified a custom output directory, pass `--output-dir <path>`.
5. Reconnect the MCP client
Call `mcp__x64dbg__connect_to_session` with the **x64dbg path** and **session PID** saved from step 1 to restore the MCP connection.
6. Report results
Summarize what was captured:
- Output directory path
- Number of memory region files saved and total size
- Whether registers were captured successfully
- Any regions that failed to read
Read more
name: state-snapshot description: Capture a full debuggee state snapshot (all committed memory regions + processor state) to disk for offline analysis allowed-tools: mcp__x64dbg__get_debugger_status, mcp__x64dbg__pause, mcp__x64dbg__disconnect, mcp__x64dbg__connect_to_session, mcp__x64dbg__go, Bash
state-snapshot
Capture a full debuggee state snapshot — all committed memory regions as raw binary files plus the complete processor state as JSON.
Instructions
Follow these steps exactly:
1. Verify debugger connection
Call `mcp__x64dbg__get_debugger_status` to confirm the debugger is connected and a debuggee is loaded. Note the **session PID** and **x64dbg path** from the current MCP connection — you will need these to reconnect later.
If no debuggee is loaded, tell the user and stop.
2. Pause the debuggee if running
If the debugger status shows the debuggee is running (not paused), call `mcp__x64dbg__pause` to pause it. Remember that you auto-paused so you can resume later.
3. Disconnect the MCP client
Call `mcp__x64dbg__disconnect` to release the ZMQ connection. This is **required** because only one client can be connected to an x64dbg session at a time, and the Python script needs its own connection.
4. Run the snapshot script
Execute the snapshot script:
python "${CLAUDE_PLUGIN_ROOT}\skills\state-snapshot\state_snapshot.py" --x64dbg-path "<x64dbg_path>" --pid <session_pid>Where:
- `<x64dbg_path>` is the path to the x64dbg executable noted in step 1
- `<session_pid>` is the debugger process PID noted in step 1
The script defaults output to `./snapshots/<timestamp>/`. If the user specified a custom output directory, pass `--output-dir <path>`.
5. Reconnect the MCP client
Call `mcp__x64dbg__connect_to_session` with the **x64dbg path** and **session PID** saved from step 1 to restore the MCP connection.
6. Report results
Summarize what was captured:
- Output directory path
- Number of memory region files saved and total size
- Whether registers were captured successfully
- Any regions that failed to read
Other skills on x64dbg-skills.
find-oep
Smart trace-based OEP finder for packed/protected PE executables. Traces through packer stubs using intelligent stepping,…
shellcode-analyzer
Load, unpack, and analyze shellcode in x64dbg. Use this skill when the user wants to analyze shellcode, load a shellcode blob…
state-diff
Compare two state snapshots to identify register and memory changes between two points in time
tracealyzer
Trace execution (into or over calls) for N steps or until a condition, then analyze the recorded instruction log
vuln-hunter
Hunt for vulnerabilities in a running debuggee by analyzing imports/exports, triaging attack surface, and iteratively testing for…
More skills from other plugins.
api-security
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…
abusing-dpapi-for-cred…
Extract and decrypt Windows DPAPI-protected secrets (Credential Manager, browser logins/cookies, Wi-Fi credentials, KeePass keys)…
clean-user-facing-text
Clean and finalize authorized natural-language text intended for readers by auditing suspicious invisible Unicode and rewriting…
Questions about state-snapshot.
- Which coding agents can use state-snapshot?
- state-snapshot installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

