From ca8af7ab3de646bb01492467d72131ed2cb0fff9 Mon Sep 17 00:00:00 2001
From: Joshua Villalta <93329405+vgoat21@users.noreply.github.com>
Date: Mon, 6 Jul 2026 17:28:18 +0100
Subject: [PATCH] chore(PLU-310): readme updates
---
README.md | 31 +++++++++++++++++++++++++++
screenshots/agent-chat-ask.png | Bin 0 -> 151338 bytes
screenshots/agent-chat-decompile.png | Bin 0 -> 327207 bytes
screenshots/agent-chat-rename.png | Bin 0 -> 390391 bytes
4 files changed, 31 insertions(+)
create mode 100644 screenshots/agent-chat-ask.png
create mode 100644 screenshots/agent-chat-decompile.png
create mode 100644 screenshots/agent-chat-rename.png
diff --git a/README.md b/README.md
index 2a8e8074..eb42c3c3 100644
--- a/README.md
+++ b/README.md
@@ -26,6 +26,7 @@ and use it for Binary Code Similarity to help you Reverse Engineer stripped bina
- [Auto Unstrip](#auto-unstrip)
- [Function Matching](#function-matching)
- [AI Decompilation](#ai-decompilation)
+ - [Agent Chat](#agent-chat-experimental)
- [Contributing](#contributing)
- [Reporting Bugs](#reporting-bugs)
- [Known Issues](#known-issues)
@@ -37,6 +38,7 @@ and use it for Binary Code Similarity to help you Reverse Engineer stripped bina
* Automatically rename all functions above a confidence threshold
* Show similar functions and their names for one selected function
* AI Decompilation of selected functions
+* Agent Chat (experimental): ask an AI agent about a function and have it decompile, rename, and navigate the binary for you
## Installation
@@ -157,6 +159,35 @@ natural language explanation of what the function does.
The window can be pinned and will update as you select different functions.
+### Agent Chat (Experimental)
+
+> [!WARNING]
+> **Experimental / proof-of-concept.** The Agent Chat is an early feature under active development. Its behaviour,
+> available tools, and output quality may change between releases, and it can be unstable.
+
+The Agent Chat lets you talk to a RevEng.AI agent about the current binary in natural language. The agent can look up
+function information, run AI decompilation, propose and apply function names, and link directly to functions in your
+analysis.
+
+Open it by `Right-Click`ing a function in the disassembly and selecting `RevEng.AI -> Ask RevEng.AI about this function`.
+The context chip at the top of the panel tracks the function currently under your cursor, so questions are answered in
+the context of what you are looking at.
+
+Ask it anything about a function and it will pull the relevant details and explain them in plain language:
+
+
+
+The agent can decompile functions on demand and explain what they do. AI decompilations open in the docked
+`Decompiled View`, and any function the agent references becomes a clickable link that jumps you straight to it in the
+disassembly:
+
+
+
+It can also suggest descriptive names for stripped functions and apply them across the binary. Renamed functions appear
+immediately in the `Functions` list:
+
+
+
## Contributing
We welcome pull requests from the community.
diff --git a/screenshots/agent-chat-ask.png b/screenshots/agent-chat-ask.png
new file mode 100644
index 0000000000000000000000000000000000000000..70347954f68f7dcf4fa15a09228989f814a411ca
GIT binary patch
literal 151338
zcmcG0by!qe+cydVN{bTGASEqbLwAXYGzdrx-ORvH(o&*Gmmr~Zcc*lBcgN8E?Rnn!
zoaY>U|NXpXF80ixz1Ci_*Sddk8~jRH2J6wYM@UFWSaPzGuaS_D=Yh8`Ix6r@Mnka>
z64E^oSVH2JoP-4BD+gOsu$2iC646(WPfhaoRi6YjFe*I!L6DdBj(|m5(@(C9I~biB
zl_~peSUUKd3o$*lIWda`1?%)Ua;bs=
Hw6EcG^~W1k-`emqG1QZn3p)*SgJFlBc^{I>C8
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