From idasql
Captures live IDA UI context including active view, selections, and code anchors via get_ui_context_json(). Activates on screen/selection/current view references like 'what's selected?' or 'this'.
npx claudepluginhub allthingsida/idasql-skills --plugin idasqlThis skill is limited to using the following tools:
---
Develops IDA Pro plugins in Python using Domain API and idiomatic patterns. Covers GUI (Qt), hooks, rendering for disassembly, functions, cross-references, strings, and custom viewers.
Connects to IDA databases (.idb/.i64) via idasql CLI/REPL/HTTP. Bootstraps analysis sessions with orientation queries, schema introspection, and skill routing.
Controls ARC Probe GUI via HTTP bridge on localhost:9996: send memory probe commands (read, pattern scan), navigate tabs, mutate Zustand stores like createStruct. Use to drive ARC Probe programmatically.
Share bugs, ideas, or general feedback.
Use this function to capture active UI state:
SELECT get_ui_context_json();
Capture once per user question, then reuse that snapshot while answering. Capture again only when the user asks to refresh/re-check, or when a new UI-referential question starts.
Use this skill for prompts like:
get_ui_context_json() before answering UI-referential prompts.has_address: false, explain limits and do not invent code context.this / here / current / selected: capture a fresh snapshot for this question.that / previous / earlier: reuse the most recent snapshot in the same working flow.get_ui_context_json() is plugin GUI runtime only.welcome is database metadata only; it is not a UI context replacement.
Use this fixed shape after reading UI context:
What You Are Viewing: widget/view summary.What Is Selected: selection range and preview (or "no active selection").Code Context: address/function/segment if available; otherwise mention non-address view.Limits: runtime constraints or missing fields affecting certainty.Suggested Next Query: one concrete follow-up command/query.SELECT get_ui_context_json();
Answer with the template fields above. Include focused widget title/type and current anchor address if present.
SELECT get_ui_context_json();
Summarize active view and selection first, then propose the next action tied to that context (for example, decompile current function).
SELECT get_ui_context_json();
Prioritize selection begin/end and preview text. Explicitly state when there is no active selection.
SELECT get_ui_context_json();
SELECT decompile(0x401000);
Replace 0x401000 with the captured function/address anchor.
Reuse the most recent snapshot from the same flow (do not auto-refresh unless asked), then continue analysis from that stored anchor.
SELECT get_ui_context_json();
If has_address: false, report chooser selection details and state there is no code address anchor in this view.
If get_ui_context_json() cannot run:
SELECT * FROM welcome for DB orientation)welcome output as UI context.