← all repositories
symgraph/IDAssist

An AI Research Assistant That Actually Reads Assembly

IDAssist embeds a multi-provider LLM directly into IDA Pro to explain functions, suggest renames, and map binary relationships without leaving the disassembly view.

IDAssist
Collecting fresh signals — velocity needs a few days of history.
collecting data…
star history

What it does

This plugin adds a dockable panel to IDA Pro 9.0+ that pipes decompiled functions and disassembly into large language models from OpenAI, Anthropic, Ollama, and others. It streams natural-language explanations, security risk assessments, and rename suggestions back into the interface, while maintaining a local SQLite knowledge graph of call relationships and data flows for semantic search.

The interesting bit

The tool treats the binary itself as a living database: a ReAct agent can autonomously plan investigations, invoke IDA analysis functions mid-conversation via tool calling, and reflect across multiple reasoning rounds without manual prompting. It also pushes and pulls symbol data to the SymGraph collaborative platform, which turns solitary reversing into a team sport with conflict resolution.

Key highlights

  • Supports a wide range of LLM providers (OpenAI, Anthropic, Ollama, LiteLLM, AWS Bedrock) with configurable reasoning effort levels from fast queries to deep ~25K-token analysis.
  • Context macros (#func, #addr, #line, #range) let you inject precise disassembly snippets into chat queries.
  • RAG document search indexes your own .txt, .md, .rst, and .pdf references via Whoosh for hybrid text+vector retrieval.
  • Built-in semantic knowledge graph with community detection, N-hop visual graph expansion, and seven query types including similar-function search.
  • Local SQLite storage and RLHF feedback collection keep your data and preferences on-disk, not in the cloud.

Caveats

  • Requires IDA Pro 9.0+; the Hex-Rays Decompiler is only recommended, but pseudocode-centric features will be hobbled without it.
  • Manual setup involves wrestling with IDA’s bundled Python environment instead of your system Python, which the README explicitly warns about.

Verdict

Worth a look if you live in IDA Pro and want an LLM that can call back into the database to resolve cross-references during chat. Skip it if you are not running IDA 9.0+, or if the idea of an autonomous agent poking at your IDB feels too clever by half.

Frequently asked

What is symgraph/IDAssist?
IDAssist embeds a multi-provider LLM directly into IDA Pro to explain functions, suggest renames, and map binary relationships without leaving the disassembly view.
Is IDAssist open source?
Yes — symgraph/IDAssist is open source, released under the MIT license.
What language is IDAssist written in?
symgraph/IDAssist is primarily written in Python.
How popular is IDAssist?
symgraph/IDAssist has 639 stars on GitHub.
Where can I find IDAssist?
symgraph/IDAssist is on GitHub at https://github.com/symgraph/IDAssist.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.