Set your breakpoints, and run your remote debug configuration in Rubymine.

For me, rdebug-ide slows processing by a ton, so this was slow and tedious for issues that occurred late in the game on larger maps.

CLI alternative

I had no luck with pry-remote and similar, and also needed to monkey patch them to keep them from sending log and debugging messages back to halite.

Here’s a gist to send messages from halite to a unix socket and back, so that your terminal can be connected to your ruby process, and make use of pry / byebug etc. without fouling up your output to halite.