config¤
ai-anthropic-api-key¤
(only in GDB)
Anthropic API key.
Defaults to ANTHROPIC_API_KEY environment variable if not set.
Default: ''
ai-history-size¤
(only in GDB)
Maximum number of questions and answers to keep in the prompt.
Default: 3
ai-max-tokens¤
(only in GDB)
The maximum number of tokens to return in the response.
Useful when limiting verbosity or conserving resources. Set to a lower value to restrict output.
Default: 100
ai-model¤
(only in GDB)
The name of the large language model to query.
Changing this affects the behavior, response quality, and cost (if applicable) of AI responses.
Default: 'gpt-3.5-turbo'
ai-ollama-endpoint¤
(only in GDB)
Ollama API endpoint.
Defaults to OLLAMA_ENDPOINT environment variable if not set.
Default: ''
ai-openai-api-key¤
(only in GDB)
OpenAI API key.
Will default to OPENAI_API_KEY environment variable if not set.
Default: ''
ai-show-usage¤
(only in GDB)
Whether to show how many tokens are used with each OpenAI API call.
Default: off
ai-stack-depth¤
(only in GDB)
Rows of stack context to include in the prompt for the ai command.
Default: 16
ai-temperature¤
(only in GDB)
The temperature specification for the LLM query.
This controls the degree of randomness in the response.
Default: 0
attachp-resolution-method¤
(only in GDB)
How to determine the process to attach when multiple candidates exists.
Default: 'ask'
Valid values: 'none', 'oldest', 'newest', 'ask'
auto-explore-auxv¤
Stack exploration for AUXV information; it may be really slow.
Default: 'warn'
Valid values: 'warn', 'yes', 'no'
auto-explore-pages¤
Whether to try to infer page permissions when memory maps are missing.
This command can cause errors.
Default: 'warn'
Valid values: 'yes', 'warn', 'no'
auto-explore-stack¤
Stack exploration; it may be really slow.
Default: 'warn'
Valid values: 'warn', 'yes', 'no'
auto-save-search¤
Automatically pass --save to "search" command.
Default: off
context-backtrace-lines¤
Number of lines to print in the backtrace context.
Default: 8
context-clear-screen¤
Whether to clear the screen before printing the context.
Default: off
context-code-lines¤
Number of source code lines to print by the context command.
Default: 14
context-code-tabstop¤
Number of spaces that a
Default: 8
context-disasm-lines¤
Number of additional lines to print in the disasm context.
Default: 10
context-history-size¤
Number of context history entries to store.
Default: 50
context-integration-decompile¤
Whether context should fall back to decompilation with no source code.
Default: on
context-max-threads¤
Maximum number of threads displayed by the context command.
Default: 4
context-output¤
Where Pwndbg should output ("stdout" or file/tty).
Default: 'stdout'
context-reserve-lines¤
When to reserve lines after the prompt to reduce context shake.
The "if-ctx-fits" setting only reserves lines if the whole context would still fit vertically in the current terminal window. It doesn't take into account line-wrapping due to insufficient terminal width.
Default: 'if-ctx-fits'
Valid values: 'never', 'if-ctx-fits', 'always'
context-sections¤
Which context sections are displayed (controls order).
Default: 'regs disasm code stack backtrace expressions threads heap_tracker'
context-stack-lines¤
Number of lines to print in the stack context.
Default: 8
context-tui-adjust-height¤
(only in GDB)
Adjust height of context sections to fit the TUI.
Adjust the height of context sections to fit the TUI window, ignoring section specific limits. This uses all vertical space available in the TUI windows if the context section supports it like the "disasm" or "stack" windows.
Default: on
cymbol-editor¤
(only in GDB)
Path to the editor for editing custom structures.
Default: ''
decompiler-angr-plugin-path¤
Where to install the angr integration plugin.
Default: '/home/user/.local/share/angr-management/plugins'
decompiler-autojump¤
Whether to jump the decompiler cursor on every stop.
Depending on the decompiler, this may or may not be a good idea. Try it out and see.
Check out the other decompiler-auto* configuration variables as well.
Default: off
decompiler-autosync-syms¤
Whether to sync symbols with the decompiler on every stop.
Depending on the decompiler, the number of symbols (functions + global variables) the binary you are decompiling has, and various other factors, this may or may not be a good idea. Try it out and see.
Check out the other decompiler-auto* configuration variables as well.
Default: off
decompiler-autosync-vars¤
Whether to sync function variables with the decompiler on every stop.
This is generally lightweight, so it is enabled by default. Try disabling it if you have performance issues.
Check out the other decompiler-auto* configuration variables as well.
Default: on
decompiler-binja-plugin-path¤
Where to install the binary ninja integration plugin.
Default: '/home/user/.binaryninja/plugins'
decompiler-host¤
The host where the decompiler is exposed.
Default: 'localhost'
decompiler-ida-plugin-path¤
Where to install the ida integration plugin.
Default: '/home/user/.idapro/plugins'
decompiler-port¤
The port on which the decompiler is exposed.
Default: 3662
default-visualize-chunk-number¤
Default number of chunks to visualize.
Default: 10
dereference-limit¤
Max number of pointers to dereference in a chain.
Default: 5
dev-debug-events¤
Display internal event debugging info.
Default: off
disasm-annotations¤
Display annotations for instructions.
Default: on
disasm-inline-symbols¤
Replacing constant operands with their symbol in the disassembly.
Default: on
disasm-reg-alias¤
Force the disassembly to use register aliases (e.g. aarch64 x29 -> fp).
The register aliasing is done by capstone, see: https://github.com/capstone-engine/capstone/blob/next/docs/cs_v6_release_guide.md#:~:text=None.-,Register%20alias,-Register%20alias%20
Enabling this may make disassembly slower.
Default: off
disasm-telescope-depth¤
Depth of telescope for disasm annotations.
Default: 3
disasm-telescope-string-length¤
The number of characters in strings to display in disasm annotations.
Default: 50
emulate¤
Unicorn emulation of code from the current PC register.
Emulate can be:
- off - no emulation is performed
- jumps-only - emulation is done only to resolve branch instructions
- on - emulation is done to resolve registers/memory values etc.
Emulation can slow down Pwndbg. Disabling it may improve performance. Emulation requires >1GB RAM being available on the system and ability to allocate RWX memory.
Default: 'on'
Valid values: 'on', 'off', 'jumps-only'
emulate-annotations¤
Unicorn emulation for instruction annotations.
Refers to register and memory value annotations.
Default: on
emulate-future-annotations¤
Unicorn emulation for future instruction's annotations.
Default: on
exception-debugger¤
Whether to debug exceptions raised in Pwndbg commands.
Default: off
exception-verbose¤
Print a full stacktrace for exceptions raised in Pwndbg commands.
Default: off
gcc-compiler-path¤
Path to the gcc/g++ toolchain for generating imported symbols.
Default: ''
gdb-workaround-stop-event¤
(only in GDB)
Asynchronous stop events to improve 'commands' functionality.
Note that this may cause unexpected behavior with Pwndbg or gdb.execute.
Values explained:
disabled- Disable the workaround (default).disabled-deadlock- Disable only deadlock detection; deadlocks may still occur.enabled- Enable asynchronous stop events; gdb.execute may behave unexpectedly (asynchronously).
Default: 'disabled'
Valid values: 'disabled', 'disabled-deadlock', 'enabled'
go-dump-indent-amount¤
The indent amount for go-dump pretty printing.
Default: 4
go-dump-line-width¤
The soft line width for go-dump pretty printing.
Default: 80
hexdump-bytes¤
Number of bytes printed by hexdump command.
Default: 64
hexdump-group-use-big-endian¤
Use big-endian within each group of bytes in hexdump command.
When on, use big-endian within each group of bytes. Only applies to raw bytes, not the ASCII part. See also hexdump-highlight-group-lsb.
Default: off
hexdump-group-width¤
Number of bytes grouped in hexdump command.
If -1, the architecture's pointer size is used.
Default: -1
hexdump-limit-mb¤
The maximum size in megabytes (MB) hexdump will read.
Set the maximum size in megabytes (MB) that the hexdump command will attempt to read at once. Prevents GDB crashes due to excessive memory allocation requests. Set to 0 for unlimited (use with caution).
Default: 10
hexdump-width¤
Line width of hexdump command.
Default: 16
kernel-vmmap¤
The method to get vmmap information when debugging via QEMU kernel.
Values explained:
page-tables- walk page tables to render vmmappt-dump- read /proc/$qemu-pid/mem to parse kernel page tables to render vmmapmonitor- use QEMU'smonitor info memto render vmmapnone- disable vmmap rendering; useful if rendering is particularly slow
Note that the page-tables method will require the QEMU kernel process to be on the same machine and within the same PID namespace. Running QEMU kernel and GDB in different Docker containers will not work. Consider running both containers with --pid=host (meaning they will see and so be able to interact with all processes on the machine).
Default: 'page-tables'
Valid values: 'page-tables', 'pt-dump', 'monitor', 'none'
left-pad-disasm¤
Whether to left-pad disassembly.
Default: on
max-decimal-number¤
Show all numbers greater than this in hex.
For negative numbers, their absolute value is used.
Set the parameter to 'unlimited' if you want all values in decimal. Specially, set the parameter to zero if you want all values in hex.
The assembly instruction operands come from capstone, and are thus not controlled by this setting. For consistency with them, leave this setting at 9 (the default).
Default: 9
max-visualize-chunk-size¤
Max display size for heap chunks visualization (0 for display all).
Default: 0
nearpc-backwards-lines¤
Number of lines before the pc to print for the nearpc command.
Default: 5
nearpc-lines¤
Number of lines to print for the nearpc command.
Default: 10
nearpc-num-opcode-bytes¤
Number of opcode bytes to print for each instruction.
Default: 0
nearpc-opcode-separator-bytes¤
Number of spaces between opcode bytes.
Default: 1
nearpc-show-args¤
Whether to show call arguments below instruction.
Default: on
objc-max-function-arguments¤
Maximum number of arguments to resolve for an Objective-C method call.
Default: 32
objc-max-function-types-depth¤
Maximum allowed depth for a type in an Objective-C method call.
Default: 32
safe-linking¤
Whether glibc uses safe-linking.
Default: auto
Valid values: on, off, auto.
show-compact-regs¤
Whether to show a compact register view with columns.
Values explained:
off- Disable compact registers (default). Every other option tries to make the register context use less rows by putting the registers into multiple columns.on- If a register printout doesn't fit it will be added to the end of the register context.very- Try to very hard to compress. May save more lines thanonbut logical register grouping may suffer.hardcut- If a register printout doesn't fit its slot, it will simply be truncated.
See also show-compact-regs-columns, show-compact-regs-min-width and show-compact-regs-separation.
Default: 'off'
Valid values: 'off', 'on', 'very', 'hardcut'
show-compact-regs-columns¤
The number of columns (0 for dynamic number of columns).
Default: 2
show-compact-regs-min-width¤
The minimum width of each column.
Default: 20
show-compact-regs-separation¤
The number of spaces separating columns.
Default: 4
show-flags¤
Whether to show flags registers.
Default: off
show-retaddr-reg¤
Whether to show return address register.
Default: on
show-tips¤
Whether to display the tip of the day on startup.
Default: on
syntax-highlight¤
Source code / assembly syntax highlight.
Default: on
telescope-dont-skip-registers¤
Don't skip a repeated line if a registers points to it.
Default: on
telescope-frame-print-retaddr¤
Print one pointer past the stack frame.
Default: on
telescope-framepointer-offset¤
Print offset to framepointer for each address, if sufficiently small.
Default: on
telescope-lines¤
Number of lines to printed by the telescope command.
Default: 8
telescope-skip-repeating-val¤
Whether to skip repeating values of the telescope command.
Default: on
telescope-skip-repeating-val-min¤
Minimum amount of repeated values before skipping lines.
Default: 3
vis-skip-repeating-val¤
Whether to skip repeating lines in vis command output.
Default: on
vmmap-prefer-relpaths¤
Show relative paths by default in vmmap.
Default: on