Delve

What Delve is
Delve is a free debugger for Go programs, with command-line tools for debugging, executing, and testing code. Developers can control program execution, evaluate variables, and inspect threads, goroutines, and CPU register state. Its commands cover attaching to running processes, working with packages or precompiled binaries, tracing programs, examining core dumps, and replaying rr traces. A headless instance can serve a separate client through a JSON-RPC 1.0 API, available in APIv1 and APIv2, with controls such as halt, continue, next, step, and stepout. The project lists integrations for GoLand, IntelliJ IDEA, Vim and Neovim, Visual Studio Code, Emacs, and other editors. Pre-built binaries are available for Linux, macOS, and Windows, and installation via Go is documented. The FAQ lists Linux amd64, arm64, and 386; Windows amd64; and macOS amd64 as supported combinations. Other systems and architectures have no planned support ETA. Remote debugging is supported, but headless connections are unauthenticated and can permit arbitrary remote code execution; the project advises against production use.
Who it suits
Delve suits developers debugging Go software who want command-line controls, editor integrations, or a headless client API. Its listed supported targets are specific Linux, Windows, and macOS architectures.
What it does well
- Controls execution and evaluates variables.
- Inspects threads, goroutines, and CPU register state.
- Supports core dump debugging and rr trace replay.
- Lists integrations for several editors.
- MIT-licensed and free.
What to know first
- Other operating systems and architectures lack a planned support ETA.
- Headless connections are unauthenticated and risky for production.
- Go installation requires Go version 1.16 or later.
Limits
The FAQ lists Linux amd64, arm64, and 386; Windows amd64; and macOS amd64 as supported targets. It says other operating systems and architectures are unsupported and have no planned support ETA. The FAQ also warns that unauthenticated headless connections can allow arbitrary remote code execution and should not be used in production.
Getting started
- Choose a pre-built binary for Linux, macOS, or Windows, or use the documented Go installation route.
- If installing through Go, use Go version 1.16 or later.
- Verify release checksums with cosign and sha256sum, as described in the installation documentation.
- Use Delve's command-line tools to debug, execute, or test a Go program.
- Connect a separate client through headless mode when needed, using an SSH tunnel or VPN for remote access.
Verdict
Delve offers broad debugging commands and editor integrations for Go, with a free MIT-licensed project. Check the supported target list and avoid exposing unauthenticated headless connections, especially on public networks.
Questions
How much does Delve cost?
Delve is free, with a free plan and no free trial.
Which programming language does it support?
Delve supports Go.
Which systems are listed as supported?
The FAQ lists Linux on amd64, arm64, and 386; Windows on amd64; and macOS on amd64. The installation guide says its instructions are known to work on Linux, macOS, Windows, and FreeBSD.
Can Delve connect to a separate client?
Yes. A headless instance exposes a JSON-RPC 1.0 API in APIv1 and APIv2. The FAQ warns that headless connections are unauthenticated and should not be used in production.
Which editors integrate with Delve?
The project lists GoLand, IntelliJ IDEA, Vim and Neovim, Visual Studio Code, Emacs, and other editors.
What license does Delve use?
The repository identifies its license as MIT.
Facts from Delve's own pages
- Alternative interfaces
- The project lists Gdlv and Debugger as alternative user interfaces for Delve. · github.com, 30 Sept 2026
- Architecture limits
- The FAQ says other operating systems and architectures are unsupported and have no planned support ETA. · github.com, 30 Sept 2026
- Client API
- A headless Delve instance exposes an API built on JSON-RPC 1.0, with APIv1 and APIv2 versions. · github.com, 30 Sept 2026
- Debug commands
- Its documented commands include attaching to a running process, debugging or testing a package, executing a precompiled binary, tracing a program, examining a core dump, and replaying an rr trace. · github.com, 30 Sept 2026
- Debugger controls
- Its API supports commands including halt, continue, next, step, and stepout. · github.com, 30 Sept 2026
- Debugging
- It lets users control program execution, evaluate variables, and inspect thread, goroutine, and CPU register state. · github.com, 30 Sept 2026
- Debugging modes
- The command line supports debugging, executing, and testing programs, including headless mode for a separate client. · github.com, 30 Sept 2026
- Downloads
- Pre-built binaries are available for Linux, macOS, and Windows, and the project also documents installation with Go. · github.com, 30 Sept 2026
- Editor integrations
- The project lists integrations for GoLand, IntelliJ IDEA, Vim and Neovim, Visual Studio Code, Emacs, and other editors. · github.com, 30 Sept 2026
- Installation requirement
- The documented Go installation command requires Go version 1.16 or later. · github.com, 30 Sept 2026
- License
- The repository identifies its license as MIT. · github.com, 30 Sept 2026
- Operating systems
- The installation guide says its instructions are known to work on Linux, macOS, Windows, and FreeBSD. · github.com, 30 Sept 2026
- Purpose
- Delve is a debugger for the Go programming language, designed to be simple to invoke and use. · github.com, 30 Sept 2026
- Release verification
- Installation documentation describes verifying release checksums with cosign and sha256sum. · github.com, 30 Sept 2026
- Remote debugging
- Delve supports remote debugging and recommends SSH tunnels or a VPN when connecting remotely. · github.com, 30 Sept 2026
- Remote debugging guidance
- For remote debugging, the FAQ recommends avoiding public networks and using SSH tunnels or a VPN if remote access is necessary. · github.com, 30 Sept 2026
- Remote debugging security
- The FAQ warns that headless remote connections are unauthenticated and can allow arbitrary remote code execution, and says not to use this setup in production. · github.com, 30 Sept 2026
- Security
- The FAQ warns that headless connections are unauthenticated and allow arbitrary remote code execution, and says not to use them in production. · github.com, 30 Sept 2026
- Support
- The project says its GitHub issue tracker is for bug reports and directs feature proposals and discussions to the developer mailing list. · github.com, 30 Sept 2026
- Support channel
- The README says the issue tracker is for bugs and directs feature proposals and discussions to the developer mailing list. · github.com, 30 Sept 2026
- Supported systems
- The FAQ lists Linux on amd64, arm64, and 386, Windows on amd64, and macOS on amd64 as supported combinations. · github.com, 30 Sept 2026
- Supported targets
- The FAQ lists Linux amd64, arm64, and 386; Windows amd64; and macOS amd64, and says there is no planned ETA for other operating systems or architectures. · github.com, 30 Sept 2026
Where Delve stands on Freedom251
- Debuggers#5 of 27
- Debugging Software#10 of 30