microsoft/MIEngine

The Visual Studio MI Debug Engine ("MIEngine") provides an open-source Visual Studio Debugger extension that works with MI-enabled debuggers such as gdb and lldb.

C#

861

1,476 commits

updated Oct 15, 2026

See the code

README

Welcome to the Visual Studio MI Debug Engine ("MIEngine")

Build Status

The Visual Studio MI Debug Engine ("MIEngine") provides an open-source Visual Studio extension that enables debugging with debuggers that support the gdb Machine Interface ("MI") specification such as GDB and LLDB.

In Visual Studio Code, MIEngine also powers the 'cppdbg' debug adapter which is part of the C/C++ Extension.

What is MIEngine?

MIEngine is a Visual Studio Debug Engine that understands Machine Interface ("MI"). A Debug Engine is an implementation of the Visual Studio Core Debug Interfaces (IDebug* interfaces), enabling the VS UI to drive debugging. Machine Interface is a text-based protocol developed by GDB that allows a debugger to be used as a separate component of a larger system. Additional information:

This repo also includes:

  • OpenDebugAD7: An adaptation layer between the Debug Adapter Protocol and debug engines. This is what allows MIEngine to be used with Visual Studio Code.
  • SSHDebugPS: A Visual Studio 'Port Supplier' which enables Visual Studio to attach to processes over SSH or Linux Docker and could be easily extended to support any other exe that provides a shell into a Linux container/machine.

Debug Multiple Platforms

  • Support for debugging C/C++ on Android and iOS.
    • Note: iOS support is not available after Visual Studio 2022.
    • Debug on any platform that supports GDB, such as Linux and even Raspberry Pi.

Prerequisites

MIEngine can be built with either Visual Studio or with the .NET CLI.

  • See the wiki for more info.

Contribute!

Before you contribute, please read through the Contributing Guide to get an idea of requirements for pull requests.

Want to get more familiar with what's going on in the code?

You are also encouraged to start a discussion by filing an issue or creating a gist.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

License

MIEngine is licensed under the MIT License.

microsoft/MIEngine

The Visual Studio MI Debug Engine ("MIEngine") provides an open-source Visual Studio Debugger extension that works with MI-enabled debuggers such as gdb and lldb.

C#

861

1,476 commits

updated Oct 15, 2026

See the code

README

Welcome to the Visual Studio MI Debug Engine ("MIEngine")

Build Status

The Visual Studio MI Debug Engine ("MIEngine") provides an open-source Visual Studio extension that enables debugging with debuggers that support the gdb Machine Interface ("MI") specification such as GDB and LLDB.

In Visual Studio Code, MIEngine also powers the 'cppdbg' debug adapter which is part of the C/C++ Extension.

What is MIEngine?

MIEngine is a Visual Studio Debug Engine that understands Machine Interface ("MI"). A Debug Engine is an implementation of the Visual Studio Core Debug Interfaces (IDebug* interfaces), enabling the VS UI to drive debugging. Machine Interface is a text-based protocol developed by GDB that allows a debugger to be used as a separate component of a larger system. Additional information:

This repo also includes:

  • OpenDebugAD7: An adaptation layer between the Debug Adapter Protocol and debug engines. This is what allows MIEngine to be used with Visual Studio Code.
  • SSHDebugPS: A Visual Studio 'Port Supplier' which enables Visual Studio to attach to processes over SSH or Linux Docker and could be easily extended to support any other exe that provides a shell into a Linux container/machine.

Debug Multiple Platforms

  • Support for debugging C/C++ on Android and iOS.
    • Note: iOS support is not available after Visual Studio 2022.
    • Debug on any platform that supports GDB, such as Linux and even Raspberry Pi.

Prerequisites

MIEngine can be built with either Visual Studio or with the .NET CLI.

  • See the wiki for more info.

Contribute!

Before you contribute, please read through the Contributing Guide to get an idea of requirements for pull requests.

Want to get more familiar with what's going on in the code?

You are also encouraged to start a discussion by filing an issue or creating a gist.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

License

MIEngine is licensed under the MIT License.

Project health

Overall

6.1/10

Maintained

10/10

Code review

10/10
OpenSSF Scorecard

Significant stargazers

Steve Lhomme

160 followers · starred Jun 2017

Erik Schierboom

602 followers · starred Jul 2015

VZ

175 followers · starred Jul 2015

Tom Deseyn

297 followers · starred Jul 2015