start_debugging
Launch a debug session for a script and return its initial state—paused, stopped, or running—so you can inspect breakpoints, exit codes, or pending execution.
Instructions
Start debugging a script. Answers with the session as it is after the program's first stop, its exit, or a readiness window: "paused" with a reason (a launch with breakpoints answers at the first one), "stopped" with the exit code, or "running" with pending:true when the program is still running — after ~5s when nothing is armed to stop it (no breakpoints, no entry stop, no caught-exception filter; the "uncaught" default does not count), after 30s when something is; the message says what was or was not reached. A later stop shows in list_debug_sessions as the state flips to "paused"
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | ||
| sessionId | Yes | ||
| scriptPath | Yes | Path to the script to debug. Use absolute paths or paths relative to your current working directory | |
| dryRunSpawn | No | ||
| dapLaunchArgs | No | ||
| breakOnExceptions | No | Break when exceptions are thrown: "uncaught" pauses at uncaught exceptions at the crash site instead of terminating the session; "all" also pauses on caught/raised exceptions (language-dependent). Launch sessions default to "uncaught" (Ruby is the exception — rdbg has no uncaught-only filter, so it stays "none"); pass "none" to opt out and let crashing scripts run to termination | |
| adapterLaunchConfig | No | Optional adapter-specific launch configuration overrides |