continue
:
Instructions
Continue program execution until next breakpoint or program end
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| threadId | No | Thread ID to continue (defaults to current thread) | |
| sessionId | No | Session ID (defaults to current session). Use list_sessions to see available sessions. |
Implementation Reference
- src/tools/execution-tools.ts:12-29 (handler)The main handler function for the 'continue' tool. It retrieves the session and calls session.continue(threadId), returning a text response.
// Tool: continue server.tool( "continue", "Continue program execution until next breakpoint or program end", { threadId: z .number() .optional() .describe("Thread ID to continue (defaults to current thread)"), sessionId: sessionIdParam, }, async ({ threadId, sessionId }) => { const session = sessionManager.getSession(sessionId); await session.continue(threadId); return textResponse(`${sessionPrefix(session.id)}Continuing execution...`); } ); - src/tools/execution-tools.ts:11-11 (registration)Registration entry point for all execution tools including 'continue'. The registerExecutionTools function registers the tool with the MCP server.
export function registerExecutionTools(server: McpServer): void { - src/tools/types.ts:11-14 (schema)Schema definition for the sessionId parameter used by the continue tool. It's an optional string that defaults to the current session.
export const sessionIdParam = z .string() .optional() .describe("Session ID (defaults to current session). Use list_sessions to see available sessions."); - src/session.ts:473-478 (helper)The DebugSession.continue() method that implements the core logic. It validates the client and forwards the continue request to the DAP client with the appropriate thread ID.
async continue(threadId?: number): Promise<void> { const client = this.requireClient(); await client.continue(threadId || this.lastStoppedThreadId || 1); this.lastStoppedReason = null; this.lastStoppedThreadId = null; } - src/dap-client.ts:305-311 (helper)The low-level DAPClient.continue() method that sends the actual 'continue' request to the netcoredbg debugger via the DAP protocol.
async continue(threadId?: number): Promise<void> { const tid = threadId || this.currentThreadId; if (!tid) { throw new Error("No thread ID available. Is the debugger stopped?"); } await this.sendRequest("continue", { threadId: tid }); }