Watch which process is sending SIGTERM or SIGKILL to another process during a shutdown.
Debug a mysterious failed read or network call caused by a signal interrupting it.
See how long a program's signal handler takes to run.
Spot a process being crashed by SIGSEGV and trace exactly what raised it.
| yeet-src/sigwire | frank-masciopinto/no-kings | haleclipse/cscience | |
|---|---|---|---|
| Stars | 147 | 146 | 148 |
| Language | JavaScript | JavaScript | JavaScript |
| Setup difficulty | moderate | — | — |
| Complexity | 3/5 | — | 3/5 |
| Audience | developer | general | developer |
Figures from each repo's GitHub metadata at analysis time.
Linux only, requires installing the yeet daemon to load the eBPF program.
sigwire is a Linux terminal tool that shows you every signal being sent between processes on your machine, live, as it happens. In Unix systems, processes communicate short interrupts called signals, things like SIGINT when you press Ctrl-C, SIGTERM when something is asked to shut down, or SIGSEGV when a program crashes. Normally these are invisible unless you are the developer of the specific program involved. sigwire watches all of them across the whole machine at once, similar to how the command tail follows a growing log file. It works by hooking into low level kernel tracepoints rather than attaching to any single process, so it can see traffic from your own applications, background services, and the kernel's own crash handling, all without those programs knowing they are being watched. Each signal is shown as a line describing who sent it, who received it, which signal it was, how it was raised, whether the receiving program had special code to catch and handle it, how long that handler took to run, and whether the signal interrupted something the receiving program was waiting on. The terminal interface is interactive. You can pause the live feed and select a row to see full details, filter signals by typing part of a process name or signal name, filter down to only signals that interrupted a paused operation, or choose which signals to show or hide. Signals are color coded by how serious they are, from routine housekeeping signals to ones that kill a process outright. Getting started is a single install command followed by one command to launch the dashboard, and it works immediately since signals are constant background activity on any running machine. It only runs on Linux and is aimed at engineers debugging process behavior, timing issues, or unexpected crashes. It is dual licensed under BSD and GPL terms.
A Linux terminal dashboard that streams every process signal on the machine live, showing sender, target, and how each one was handled.
Mainly JavaScript. The stack also includes JavaScript, eBPF, Linux.
Dual licensed under BSD and GPL, you can choose which terms to use it under.
Setup difficulty is rated moderate, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.