aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md25
1 files changed, 19 insertions, 6 deletions
diff --git a/README.md b/README.md
index 3eb6c60..9a751a1 100644
--- a/README.md
+++ b/README.md
@@ -27,18 +27,18 @@ Needs **Python ≥ 3.11** and **IDA Pro 9.4+ with idalib**.
uv sync
```
-That pulls [ida-codemode](https://github.com/HexRaysSA/ida-codemode) from PyPI,
+That pulls [ida-nexus](https://github.com/HexRaysSA/ida-nexus) from PyPI,
which is how ida-tui talks to IDA. To also attach to databases you have open in
the IDA GUI, install its plugin:
```sh
-uvx ida-hcli plugin install ida-codemode
+uvx ida-hcli plugin install ida-nexus
```
-Hacking on ida-codemode itself? Point at a checkout instead:
+Hacking on ida-nexus itself? Point at a checkout instead:
```sh
-uv add --editable ../ida-codemode
+uv add --editable ../ida-nexus
```
## Run
@@ -49,8 +49,21 @@ uv add --editable ../ida-codemode
```
ida-tui never owns an IDA process — it takes a **lease**. A matching database open
-in the IDA GUI is reused, otherwise Code Mode starts or shares a managed idalib
+in the IDA GUI is reused, otherwise IDA Nexus starts or shares a managed idalib
worker. Quitting drops the lease and leaves everyone else alone.
+Changes made in the GUI or another client arrive over IDA Nexus's IDB event
+stream; ida-tui debounces bursts and refreshes its cached views automatically.
+On quit with unsaved changes, a final managed-worker lease can discard the
+session without saving; GUI-backed or still-shared sessions leave that final
+decision with their owner or remaining clients.
+If the owning GUI or worker closes, ida-tui never replaces it by spawning a
+headless worker implicitly. It keeps the cached view disconnected until a
+matching owner is reopened and an attach-only rediscovery succeeds.
+Remote operations are typed, source-backed Python functions. ida-nexus installs
+their content-addressed modules once per IDA Python interpreter, so ida-tui keeps
+normal refactorable source without paying to resend hot listing/decompiler code.
+Operation attribution is also a per-call provider rather than a fixed string, so
+it can evolve from `IDA TUI` to labels such as `IDA TUI: alice`.
Headerless blobs need a hint, or IDA assumes x86 at address 0 and analyses nothing:
@@ -76,7 +89,7 @@ Thumb entry points.
| `o` `O` `B` | cycle this literal's format · reverse · opcode bytes |
| `\` `"` `ctrl+t` | hex · strings · structs |
| `ctrl+n` `ctrl+p` | symbol palette · command palette |
-| `ctrl+s` `ctrl+l` `q` | save · reload as… · quit |
+| `ctrl+r` `ctrl+s` `ctrl+l` `q` | refresh view · save · reload as… · quit |
| `F1` | all of them |
## What's in it