Terminal Devtools
Terminal based Devtools for Node

Status: Pre-release
Install
$ npm i -g terminal-devtools
Usage
$ devtools [--port <port>] [--host <host>]
By default devtools will connect to the default debugger port (5858)
$ devtools <pid>
When a valid node Process ID is passed, devtools will send a SIGUSR2
signal to the process, putting it into debug mode then connect to port
5858.
Navigating
? - help and settings
c - continue, resume if paused, pause if resumed
n - step next
i - step iinto
o - step out of
b - set breakpoint (must be in code text panel)
tab - move forward between panels
shift+tab - move backward between panels
ctrl+n - navigator
ctrl+t - code text
ctrl+s - callstack
ctrl+p - breakpoints
ctrl+o - scope
ctrl+k - console panel
2 - select Console tab
arrow keys and vi keys (hjkl) control selections in panels
the mouse can also be used to select tabs, panels and items
Examples
Zero-config
Put a service into debug mode, break on first line
$ node --debug-brk examples/simple
Connect to default debug port
$ devtools
Multi-process
If we need to use more than debug port we can specify
Expose debug port as 5859
$ node --debug-brk=5859 examples/debugger-single-tick
Connect to custom debug port
$ devtools --port 5859
Debug a running process
Start a process as normal, debug mode is completely off
$ node examples/debugger
3879
Process handily outputs PID, pass it to devtools
$ devtools 3879
devtools puts process into debug mode and connects to debugger.
Layouts
There are two supported layouts, Normal and Minimal.
The layout can be changed in Settings (? or click the icon).
In minimal layout, hidden panels can be revealed as dialogs using the
ctrl based shortcuts (Navigator: ctrl+n, Scope: ctrl+o). To exit a
Scope or Navigator dialog press the esc key.
Contributing
More than welcome
See devnotes
Any questions, twitter: @davidmarkclem
License
MIT