Agent skill · software engineering · hkuds
cli-anything-lldb
Stateful LLDB debugging via LLDB Python API
Why this skill is useful
Adds a comprehensive CLI tool for structured LLDB debugging workflows, including JSON output and DAP integration that enhances debugging capabilities.
What it needs
Requires cli-anything-lldb, click, prompt-toolkit installed locally. About 4k tokens when loaded. Last updated 2026-08-03. 46,739 stars on the source repository.
What this skill does
LLDB CLI Skill Use this CLI to run structured LLDB debugging workflows with JSON output. Capabilities Create debug target from executable path Launch process or attach by pid/name Manage breakpoints (set/list/delete/enable/disable) Inspect threads, frames, locals, and backtrace Evaluate expressions in current frame Read/find process memory Load core dumps Interactive REPL with persistent session state Formal stdio Debug Adapter Protocol server for AI/editor clients Quick Commands Debug Adapter Protocol Use the DAP entry point when an AI client needs a real debug adapter lifecycle instead of shelling out separate CLI commands: or: 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. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills hkuds/skills--3fe568