summaryrefslogtreecommitdiffstats
path: root/tests/serverctl.sh
diff options
context:
space:
mode:
authorblasty <peter@haxx.in>2026-07-24 14:23:18 +0200
committerblasty <peter@haxx.in>2026-07-24 14:23:18 +0200
commit251e92e4b0d34fd37dfe6dcc79305cc9cd27b2ad (patch)
tree8d25aa0054b72b7972c8c7a1921276aa60e51c37 /tests/serverctl.sh
parentdeprecate: make the idalib worker the default backend; mark mcp path for removal (diff)
downloadida-tui-251e92e4b0d34fd37dfe6dcc79305cc9cd27b2ad.tar.gz
ida-tui-251e92e4b0d34fd37dfe6dcc79305cc9cd27b2ad.tar.xz
ida-tui-251e92e4b0d34fd37dfe6dcc79305cc9cd27b2ad.zip
worker: inject custom tools on startup (self-sufficient, no spawn.sh needed)
The worker reuses ida-pro-mcp's @tool functions, but our custom tools (heads/read_raw/resolve_names/func_types/del_type/set_lvar_type) only exist because server/patch_server.py injected them into the installed api_types.py -- which historically only ran via spawn.sh. On a fresh box (or worker-only setup with spawn.sh gone) those tools would be missing and heads/listing would break. _ensure_tools_injected() now runs patch_server.main() (idempotent, IDA-free) at the top of _open_and_register, before ida_pro_mcp.ida_mcp is imported, so the worker guarantees its own tool surface. Verified under /usr/bin/python: injection runs and heads/read_raw/resolve_names/func_types land in api_types.py. This is the prerequisite for deleting spawn.sh from the worker path.
Diffstat (limited to 'tests/serverctl.sh')
0 files changed, 0 insertions, 0 deletions