gitwtfhub

wtf is delphi-visual-studio-code-debugger?

csm101/delphi-visual-studio-code-debugger — explained in plain English

Analysis updated 2026-05-18

6PascalAudience · developerComplexity · 4/5Setup · moderate

TL;DR

A debugger for Delphi Windows programs that works in VS Code or with AI agents, letting you set breakpoints, step through code, and inspect variables without the Delphi IDE.

Mindmap

mindmap
  root((repo))
    What it does
      Debugs Delphi Win64 apps
      Works outside Delphi IDE
      Three front ends share one engine
    Components
      VS Code extension
      MCP server for AI agents
      Debug adapter for breakpoints
    Debugging features
      Breakpoints and stepping
      Call stack and variables
      Pascal expression evaluator
    Setup requirements
      Compile with full debug info
      Recommended IDE plugin
      Prebuilt installer available
    Use cases
      Debug in VS Code
      Let AI inspect running programs
      Attach to running processes
    Tech stack
      Delphi Pascal
      Windows Debug API
      VS Code Extension

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Debug Delphi Windows applications directly inside VS Code without needing the Delphi IDE.

REASON 2

Let an AI agent run your Delphi program, stop it at breakpoints, and read real variable values.

REASON 3

Attach a debugger to an already-running Delphi process to inspect its state and call stack.

REASON 4

Step through Delphi runtime packages and your own code with conditional breakpoints.

What's in the stack?

DelphiPascalWindows Debug APIVS Code ExtensionMCP

How it stacks up

csm101/delphi-visual-studio-code-debuggertinybiggames/ganymedevincitamore/pascal-gba
Stars6111
LanguagePascalPascalPascal
Setup difficultymoderatemoderatehard
Complexity4/54/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

You must compile Delphi projects with specific debug settings turned on, and a companion IDE plugin is recommended to handle the hundreds of search paths in real projects.

Wtf does this do

This repository provides a debugger for Delphi Win64 applications that works outside of Embarcadero's own IDE. It is built on the Windows Debug API and written in Delphi. The project contains three programs that share one underlying debugger engine: a debug adapter that handles breakpoints and stepping, a VS Code extension that makes the debugger usable inside the editor, and an MCP server that exposes the same engine to an AI agent so it can run a program, stop it, and read its actual state. The shared engine lives in a folder called DebuggerCore. It contains the Windows Debug API loop, symbol readers for several formats, and an expression evaluator. The three front ends are thin layers on top of this core. The MCP server offers 33 tools, including setting breakpoints, stepping into code, reading local variables, evaluating expressions, and reading memory. This means an AI agent can inspect a running program's real state instead of guessing from source code. The README strongly recommends also installing a companion Delphi IDE plugin that generates workspace and launch configuration files for your projects. A real Delphi project can have hundreds of search paths, and the plugin handles that automatically. The debugger works without it if you write the configuration by hand, but the plugin makes it practical. A critical requirement is that you must compile the program you want to debug with full debug information. The README details which Delphi compiler settings to enable: turn off optimization, turn on debug information and local symbols, and include remote debug symbols. Without these, breakpoints will not work correctly and local variables will read as garbage. The same applies to runtime packages you want to step into. The project is described as working and feature-rich. It supports launch and attach modes, conditional and hit-count breakpoints, stepping in all directions, call stacks with function names, variable inspection with type-aware formatting, a full Pascal expression evaluator, and a configurable exception engine. For users who just want to try it, a prebuilt installer is available from the releases page with no build step required. The full README is longer than what was shown.

Yoink these prompts

Prompt 1
I have a Delphi Win64 application and want to debug it in VS Code using the delphi-visual-studio-code-debugger extension. Walk me through the compiler settings I need to enable so breakpoints and variable inspection work correctly.
Prompt 2
I want to use an AI agent with MCP to inspect a running Delphi program. List the key tools available on the MCP server and show me an example of setting a breakpoint and reading local variables.
Prompt 3
Help me set up the delphi-visual-studio-code-debugger. Should I install the companion Delphi IDE plugin, and what does it do for my project's search paths and launch configuration?
Prompt 4
I downloaded the prebuilt installer for delphi-visual-studio-code-debugger. What is the difference between launch mode and attach mode, and which should I use to debug my application?

Frequently asked questions

wtf is delphi-visual-studio-code-debugger?

A debugger for Delphi Windows programs that works in VS Code or with AI agents, letting you set breakpoints, step through code, and inspect variables without the Delphi IDE.

What language is delphi-visual-studio-code-debugger written in?

Mainly Pascal. The stack also includes Delphi, Pascal, Windows Debug API.

How hard is delphi-visual-studio-code-debugger to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is delphi-visual-studio-code-debugger for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.