cli-anything-generator
Build, refine, test, validate, or list CLI-Anything harnesses for GUI applications in Cursor. Prefer slash commands /cli-anything, /cli-anything-refine,…
Stateful LLDB debugging via LLDB Python API
$ npx -y skills add HKUDS/CLI-Anything --skill cli-anything-lldb --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cli-anything-lldbContext preview
The summary Claude sees to decide when to auto-load this skill.
Stateful LLDB debugging via LLDB Python API
name: "cli-anything-lldb" description: Stateful LLDB debugging via LLDB Python API version: 1.0.0 command: cli-anything-lldb install: pip install cli-anything-lldb requires: - lldb (Python bindings) - click>=8.0 - prompt-toolkit>=3.0 categories: - debugging - native - lldb
Use this CLI to run structured LLDB debugging workflows with JSON output.
cli-anything-lldb --json target create --exe /path/to/exe cli-anything-lldb --json process launch --arg foo --arg bar cli-anything-lldb --json breakpoint set --function main cli-anything-lldb --json breakpoint set --function PluginEntry --allow-pending cli-anything-lldb --json process continue cli-anything-lldb --json process interrupt cli-anything-lldb --json thread backtrace --limit 20 cli-anything-lldb --json frame locals cli-anything-lldb --json expr "myVar" cli-anything-lldb --json memory read --address 0x1000 --size 64 cli-anything-lldb --json session close
Use the DAP entry point when an AI client needs a real debug adapter lifecycle instead of shelling out separate CLI commands:
cli-anything-lldb-dap cli-anything-lldb-dap --profile /path/to/stop-rules.json
or:
cli-anything-lldb dap cli-anything-lldb dap --profile /path/to/stop-rules.json
The DAP server speaks stdio `Content-Length` frames and must have exclusive stdout. Do not print logs to stdout around it. Supported requests include `initialize`, `launch`, `attach`, `configurationDone`, `setBreakpoints`, `setFunctionBreakpoints`, `threads`, `stackTrace`, `scopes`, `variables`, `setVariable`, `evaluate`, `continue`, `pause`, `next`, `stepIn`, `stepOut`, `source`, `loadedSources`, `readMemory`, `modules`, `exceptionInfo`, `disassemble`, and `disconnect`.
DAP variables can expose child references for structs/classes/arrays. Use `setVariable` only while stopped; LLDB may reject writes to optimized-out or read-only values.
For long-running GUI debuggees, DAP `continue` is non-blocking from the client's point of view: the adapter sends the response and `continued` event first, then waits for LLDB on a background thread. DAP `pause` uses LLDB async interrupt. If an agent needs to change breakpoints while the debuggee is running, the adapter interrupts first and waits for a stopped state before mutating LLDB breakpoints; if the target does not stop in time, retry after an explicit `pause`/`stopped` cycle.
For GUI apps that stop on debugger-internal startup or shader-JIT breakpoints, `launch` and `attach` accept the non-standard boolean argument `autoContinueInternalBreakpoints`. Enable it only when those internal stops are noise for the task; the adapter emits an `output` event before auto-continuing. For target-specific noise, prefer structured stop rules through inline `stopRules` or an external `stopRuleProfile`/`--profile` JSON file. Rules can match by `reason`, `module`, `function`, and/or `regex`, then either `stop` with clear `cliAnythingStop.origin` metadata or `continue` automatically. Use profiles for apps such as C4D so their NVIDIA shader-JIT/startup traps live outside the generic adapter.
DAP `stopped` events include `body.cliAnythingStop.origin`: `manualPause` for a client pause request, `internalTrap` for a matched internal rule, and `debuggee` for ordinary program stops. Existing `cli-anything-lldb-dap` processes do not hot-load new code or profile contents; restart the adapter and re-attach or re-launch before expecting new rules to apply.
cli-anything-lldb --json target create --exe /path/to/exe [--arch x86_64] cli-anything-lldb --json target info
cli-anything-lldb --json process launch [--arg ARG ...] [--env KEY=VALUE ...] [--cwd DIR] [--stop-at-entry] cli-anything-lldb --json process attach --pid 1234 cli-anything-lldb --json process attach --name myapp --wait-for cli-anything-lldb --json process continue cli-anything-lldb --json process interrupt cli-anything-lldb --json process detach cli-anything-lldb --json process info
cli-anything-lldb --json breakpoint set --function main cli-anything-lldb --json breakpoint set --file main.c --line 42 --condition "i > 10" cli-anything-lldb --json breakpoint set --function LateLoadedSymbol --allow-pending cli-anything-lldb --json breakpoint list cli-anything-lldb --json breakpoint delete --id 1 cli-anything-lldb --json breakpoint enable --id 1 cli-anything-lldb --json breakpoint disable --id 1
cli-anything-lldb --json thread list cli-anything-lldb --json thread select --id 11111 cli-anything-lldb --json thread backtrace --limit 50 cli-anything-lldb --json frame select --index 0 cli-anything-lldb --json frame info cli-anything-lldb --json frame locals cli-anything-lldb --json step over cli-anything-lldb --json step into cli-anything-lldb --json step out
cli-anything-lldb --json expr "argc" cli-anything-lldb --json memory read --address 0x1000 --size 128 cli-anything-lldb --json memory find "needle" --start 0x1000 --size 4096 cli-anything-lldb --json core load --path /path/to/core
"CLI-Anything: Making ALL Software Agent-Native" -- CLI-Hub: https://clianything.cc/
Repo: HKUDS/CLI-Anything
Build, refine, test, validate, or list CLI-Anything harnesses for GUI applications in Cursor. Prefer slash commands /cli-anything, /cli-anything-refine,…
Firefly III CLI - Personal finance management via CLI-Anything
Use OpenRefine through an agent-native CLI for importing messy data, applying JSON operation histories, inspecting rows, exporting cleaned data, and managing…
Command-line interface for AdGuard Home - Network-wide ad blocking and DNS management via AdGuard Home REST API. Designed for AI agents and power users who…
Command-line interface for Anygen - A stateful command-line interface for AnyGen OpenAPI — generate professional slides, documents, webs...
Command-line interface for Audacity - A stateful command-line interface for audio editing, following the same patterns as the GIMP and Ble...