secure remote debugging

Latest on Hackage:1.20181208

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow to host generated Haddocks.

AGPL-3.0-only licensed by Joey Hess
Maintained by Joey Hess

Debugging a problem over emailircBTS is slow, tedious, and hard. The developer needs to see your problem to understand it. Debug-me aims to make debugging fast, fun, and easy, by letting the developer access your computer remotely, so they can immediately see and interact with the problem. Making your problem their problem gets it fixed fast.

A debug-me session is logged and signed with the developer's GnuPG key, producing a chain of evidence of what they saw and what they did. So the developer's good reputation is leveraged to make debug-me secure. If you trust a developer to ship software to your computer, you can trust them to debug-me.

When you start debug-me without any options, it will connect to a debug-me server, and print out an url that you can give to the developer to get them connected to you. Then debug-me will show you their GnuPG key and who has signed it, and will let you know if they are a known developer of software on your computer. If the developer has a good reputation, you can proceed to let them type into your console in a debug-me session. Once the session is done, the debug-me server will email you the signed evidence of what the developer did in the session.

If the developer did do something bad, you'd have proof that they cannot be trusted, which you can share with the world. Knowing that is the case will keep most developers honest.


debug-me (1.20181208) unstable; urgency=medium

* Update to lts-12.10, support ghc 8.4, and aeson 1.3.

-- Joey Hess <> Sat, 08 Dec 2018 13:29:33 -0400

debug-me (1.20170810) unstable; urgency=medium

* Fix build with websockets- which did not support compression.
* Update to lts-9.0.

-- Joey Hess <> Thu, 10 Aug 2017 12:36:30 -0400

debug-me (1.20170520) unstable; urgency=medium

* debug-me is available in Debian unstable.
* gpg keyrings in /usr/share/debug-me/ will be checked
to see if a connecting person is a known developer of software
installed on the system, and so implicitly trusted already.
Software packages/projects can install keyrings to that location.
(Thanks to Sean Whitton for the idea.)
* make install installs /usr/share/debug-me/a_debug-me_developer.gpg,
which contains the key of Joey Hess. (stack and cabal installs don't
include this file because they typically don't install system-wide)
* debug-me.cabal: Added dependency on time.
* stack.yaml: Update to new posix-pty version.

-- Joey Hess <> Sat, 20 May 2017 17:13:11 -0400

debug-me (1.20170509) unstable; urgency=medium

* Server: Use "postmaster" as default --from-email address
rather than "unknown@server".
* Server: DEBUG_ME_FROM_EMAIL can be used to specify the --from-email.
This is used in debug-me.default to encourage configuring it.
Thanks, Sean Whitton.
* Avoid crash when --use-server is given an url that does not
include a path.
* Fix bug that prevented creating ~/.debug-me/log/remote/
when ~/.debug-me/ didn't already exist.

-- Joey Hess <> Tue, 09 May 2017 19:20:32 -0400

debug-me (1.20170505) unstable; urgency=medium

* First release of debug-me.

-- Joey Hess <> Thu, 04 May 2017 17:03:19 -0400
comments powered byDisqus