Skip to content

Debugger

Domain: debugger

CDP-based debugging domain covering breakpoints, stepping, call stacks, watches, and debugger sessions.

Profiles

  • workflow
  • full

Typical scenarios

  • Set and hit breakpoints
  • Evaluate expressions in frames
  • Save and restore debugger sessions

Common combinations

  • debugger + hooks
  • debugger + antidebug

Representative tools

  • debugger_enable — Enable the debugger (must be called before setting breakpoints)
  • debugger_disable — Disable the debugger and clear all breakpoints
  • debugger_pause — Pause execution at the next statement
  • debugger_resume — Resume execution (continue)
  • debugger_step_into — Step into the next function call
  • debugger_step_over — Step over the next function call
  • debugger_step_out — Step out of the current function
  • breakpoint_set — Set a breakpoint at a specific location. Supports URL-based and scriptId-based breakpoints with optional conditions.
  • breakpoint_remove — Remove a breakpoint by its ID
  • breakpoint_list — List all active breakpoints

Full tool list (37)

ToolDescription
debugger_enableEnable the debugger (must be called before setting breakpoints)
debugger_disableDisable the debugger and clear all breakpoints
debugger_pausePause execution at the next statement
debugger_resumeResume execution (continue)
debugger_step_intoStep into the next function call
debugger_step_overStep over the next function call
debugger_step_outStep out of the current function
breakpoint_setSet a breakpoint at a specific location. Supports URL-based and scriptId-based breakpoints with optional conditions.
breakpoint_removeRemove a breakpoint by its ID
breakpoint_listList all active breakpoints
get_call_stackGet the current call stack (only available when paused at a breakpoint)
debugger_evaluateEvaluate an expression in the context of the current call frame (only when paused)
debugger_evaluate_globalEvaluate an expression in the global context (does not require paused state)
debugger_wait_for_pausedWait for the debugger to pause (useful after setting breakpoints and triggering code)
debugger_get_paused_stateGet the current paused state (check if debugger is paused and why)
breakpoint_set_on_exceptionPause on exceptions (all exceptions or only uncaught)
get_object_propertiesGet all properties of an object (when paused, use objectId from variables)
get_scope_variables_enhancedEnhanced scope variable inspection with deep object traversal.
debugger_save_sessionSave the current debugging session to a JSON file for later restoration.
debugger_load_sessionLoad a previously saved debugging session to restore breakpoints and watches.
debugger_export_sessionExport the current debugging session as a JSON string for sharing or backup.
debugger_list_sessionsList all saved debugging sessions in the ./debugger-sessions/ directory.
watch_addAdd a watch expression to monitor variable values
watch_removeRemove a watch expression by ID
watch_listList all watch expressions
watch_evaluate_allEvaluate all enabled watch expressions
watch_clear_allClear all watch expressions
xhr_breakpoint_setSet XHR/Fetch breakpoint (pause before network requests)
xhr_breakpoint_removeRemove XHR breakpoint by ID
xhr_breakpoint_listList all XHR breakpoints
event_breakpoint_setSet event listener breakpoint (pause on event)
event_breakpoint_set_categorySet breakpoints for entire event category
event_breakpoint_removeRemove event breakpoint by ID
event_breakpoint_listList all event breakpoints
blackbox_addBlackbox scripts (skip during debugging)
blackbox_add_commonBlackbox all common libraries (one-click)
blackbox_listList all blackboxed patterns

Released under AGPL-3.0-only