aboutsummaryrefslogtreecommitdiffstats
path: root/idatui/__init__.py
diff options
context:
space:
mode:
authorblasty <peter@haxx.in>2026-07-09 11:14:23 +0200
committerblasty <peter@haxx.in>2026-07-09 11:14:23 +0200
commit47dacc54e1768269a8eacc66aa0cea340b1222e7 (patch)
tree7f5c736249e6ba32317cb4c17a25a4652661593b /idatui/__init__.py
downloadida-tui-47dacc54e1768269a8eacc66aa0cea340b1222e7.tar.gz
ida-tui-47dacc54e1768269a8eacc66aa0cea340b1222e7.tar.xz
ida-tui-47dacc54e1768269a8eacc66aa0cea340b1222e7.zip
persistent MCP client: warm handshake, keep-alive pool, error taxonomy, thread-safe
- IDAClient: single handshake, ~7ms warm calls (vs ~60ms cold CLI) - keep-alive connection pool over http.client; concurrent-safe (40 threads OK) - grounded error taxonomy: IDAToolError on isError, soft per-item errors as data - session-expiry recovery (404 -> re-handshake -> retry), bounded transport retries - auto db-injection + resolve_db (ignores stale empty-id sessions) - live smoke test: 13/13 pass
Diffstat (limited to 'idatui/__init__.py')
-rw-r--r--idatui/__init__.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/idatui/__init__.py b/idatui/__init__.py
new file mode 100644
index 0000000..450d64f
--- /dev/null
+++ b/idatui/__init__.py
@@ -0,0 +1,25 @@
+"""idatui — a minimal keyboard-first TUI for IDA Pro over ida-pro-mcp (idalib)."""
+
+from .client import (
+ IDAClient,
+ IDAError,
+ IDAConnectionError,
+ IDATimeoutError,
+ IDAProtocolError,
+ IDARPCError,
+ IDAToolError,
+ IDASessionError,
+ Session,
+)
+
+__all__ = [
+ "IDAClient",
+ "IDAError",
+ "IDAConnectionError",
+ "IDATimeoutError",
+ "IDAProtocolError",
+ "IDARPCError",
+ "IDAToolError",
+ "IDASessionError",
+ "Session",
+]