whatisgithub

What is ida_rpc?

bkerler/ida_rpc — explained in plain English

Analysis updated 2026-05-18

43PythonAudience · developerComplexity · 4/5Setup · hard

In one sentence

A plugin that lets scripts or AI agents remotely control IDA Pro, a reverse engineering tool, by sending JSON commands over a local socket.

Mindmap

mindmap
  root((repo))
    What it does
      Controls IDA Pro remotely
      Sends JSON commands
      Returns structured data
    Tech stack
      Python plugin
      IDA Pro SDK
      Local socket protocol
    Use cases
      AI agent driven analysis
      Headless CI pipelines
      Automated binary patching
    Audience
      Reverse engineers
      Security researchers
      Automation builders

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Connect an AI agent to IDA Pro so it can decompile and analyze binaries automatically

USE CASE 2

Run headless binary analysis in a CI pipeline with no graphical interface

USE CASE 3

Automate repetitive reverse engineering tasks like renaming functions and adding comments

USE CASE 4

Query a binary's decompiled pseudo-code and memory layout from an external script

What is it built with?

PythonIDA Pro SDKJSON-RPC

How does it compare?

bkerler/ida_rpcalibaba/omnidoc-tokenbencharccalc/dwmfix
Stars434343
LanguagePythonPythonPython
Setup difficultyhardmoderateeasy
Complexity4/53/52/5
Audiencedeveloperresearchergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a licensed copy of IDA Pro and copying the plugin into its plugin directory.

So what is it?

IDA Pro is a professional tool used to analyze compiled software (binaries) when you don't have the original source code. This project adds a layer that lets you control IDA Pro from other programs by sending commands over a local socket connection and receiving structured JSON responses back. The main use case described in the README is connecting AI language model agents or automation scripts to IDA Pro's analysis capabilities. Instead of clicking through the IDA interface manually, you send commands from a script or agent and get back structured data you can work with programmatically. The README notes the design was inspired by a similar project called ghidra-rpc, and the two are protocol-compatible where possible. Commands cover a wide range of reverse engineering tasks: listing functions in a binary, decompiling a function to readable pseudo-code, disassembling instructions at a given address, finding all places in the code that reference a particular function or address, renaming functions and symbols, adding comments, defining data types such as structs and enums, patching bytes in the binary, and querying memory layout. Every response comes back as JSON. The plugin can run in two modes. Headless mode opens and analyzes a binary in the background with no graphical interface, which works for automated pipelines and CI systems. GUI mode lets the daemon run alongside an interactive IDA Pro session while you are working. You can point it at a raw binary file and specify the processor architecture manually if IDA cannot detect it automatically. Installation involves copying a plugin file into IDA Pro's plugin directory, then using the included command-line tool to open a binary, start the daemon, and send commands. A project path can be set as an environment variable so you don't need to type it on every command.

Copy-paste prompts

Prompt 1
Write a script that uses this project's command-line tool to open a binary and list all its functions
Prompt 2
Explain how to run this plugin in headless mode inside an automated analysis pipeline
Prompt 3
Show me how to decompile a function and get its pseudo-code back as JSON using this daemon
Prompt 4
Compare this project's commands to ghidra-rpc and explain where they are protocol-compatible

Frequently asked questions

What is ida_rpc?

A plugin that lets scripts or AI agents remotely control IDA Pro, a reverse engineering tool, by sending JSON commands over a local socket.

What language is ida_rpc written in?

Mainly Python. The stack also includes Python, IDA Pro SDK, JSON-RPC.

How hard is ida_rpc to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is ida_rpc for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.