Can x64dbg Be Extended with Scripts and Plugins?
Updated
Yes. x64dbg ships with an integrated, debuggable, ASM-like scripting language for automation, and it supports plugins written in C++ through a growing plugin API. Plugins can also add new script commands or integrate your own tools, so scripting and plugin support work together rather than as separate add-ons. Both capabilities are listed as core features of the open-source x64/x32 Windows debugger.
Scripting in x64dbg
The scripting language is built in, not bolted on, and it is described as debuggable — meaning scripts can be stepped through and inspected much like the target program itself. It is ASM-like, so it fits naturally with the disassembly-centric workflow of a debugger.
Typical uses include:
- Automating repetitive debugging steps
- Driving analysis of DLL and EXE files
- Extending behavior without compiling a plugin
The exact command set and syntax live in the project's documentation (linked from the site as Docs and Wiki), which is the right place to check before writing a script.
Plugins in x64dbg
Plugins are written in C++ and registered through the plugin API, which the project describes as growing. Two extension paths are called out explicitly:
| Extension goal | Mechanism |
|---|---|
| Add new script commands | Plugin |
| Integrate external tools into the debugger | Plugin |
| Automate debugging tasks | Built-in script language |
| Customize appearance and behavior | Themes, color schemes, preferences |
Because x64dbg is built on C++ and Qt, adding new features through plugins follows the same stack the debugger itself uses. The site notes that many features were thought of or implemented by the reversing community, and the plugin API is presented as extendable for exactly that kind of contribution.
Practical conditions to keep in mind
- Language: plugins are C++; scripting uses the ASM-like built-in language. There is no indication of plugin support for other languages on the page.
- License: the project is GPLv3 and provides both executable and source, so you can read and contribute to the codebase alongside writing plugins.
- One interface for both architectures: x64dbg debugs both x64 and x32 applications through a single interface, so extensions do not need separate builds for each bitness at the UI level.
- Where to look next: the site points to Plugins, Wiki, Docs, and a Discord community. The wiki is described as holding a more exhaustive list of contributors, and it is the natural place to confirm current API details before starting a plugin.
Bottom line
If your goal is to automate debugging sessions, start with the built-in script language. If you need new commands or deeper tool integration, write a C++ plugin against the plugin API. Check the Wiki and Docs for the current API surface, since the project is under active development and the API is described as growing.