[HN Gopher] Show HN: Witr - Explain why a process is running on ...
___________________________________________________________________
Show HN: Witr - Explain why a process is running on your Linux
system
Hi HN, I built a small Linux CLI tool called witr (Why Is This
Running?). The idea came from a situation most of us have hit: you
log into a machine, see a process or port running, and immediately
wonder why it exists, who started it, and what is keeping it alive
right now. witr traces a process, service, or port back to its
origin and responsibility chain and explains it in a way that's
quick to read, especially when you're debugging under pressure.
This is v0.1.0. It's intentionally small and focused. Feedback,
criticism, and edge cases are very welcome. Repo:
https://github.com/pranshuparmar/witr
Author : pranshuparmar
Score : 128 points
Date : 2025-12-26 15:20 UTC (7 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| pranshuparmar wrote:
| A quick note on scope: this is not meant to replace existing
| monitoring or observability tools. It's designed for those
| moments when you SSH into a box and need to quickly understand
| "why is this running" without digging through configs, cron jobs,
| or service trees manually.
|
| Happy to answer questions or adjust direction based on feedback.
| dcminter wrote:
| This is very clever. I've often needed to figure out what some
| running process was actually for (e.g. because it just started
| consuming a lot of some limited resource) but it _never_
| occurred to me that one could have a tool to answer that
| question. Well done.
|
| ---
|
| Edit: Ah, ok, I slightly misunderstood - skimmed the README too
| quickly. I thought it was also explaining what the process did
| :D Still a clever tool, but thought it went a step further.
|
| Perhaps you should add that though - combine Man page output
| with a database of known processes that run on various Linux
| systems and a mechanism for contributing PRs to extend that
| database...? Unlesss it's just me that often wants to know
| "what the fsck does /tmp/hax0r/deeploysketchyd actually do?" :P
| Saris wrote:
| This looks very handy to have around!
| canxerian wrote:
| Great idea!
| 4ggr0 wrote:
| i definitely see the use for it, lots of moments where i wonder
| how or why something was started.
| q2dg wrote:
| pstree doesn't answer the why?
| mathfailure wrote:
| No, it does not.
| dontdieych wrote:
| Nice and installed then starred.
| TheCraiggers wrote:
| This is amazing. Thank you for sharing this.
|
| Do you have any qualms about me making an entry in the AUR for
| this?
| giancarlostoro wrote:
| Im not the author but I would love for an AUR made for this ;)
|
| My favorite thing about arch is how insanely quickly AURs pop
| up for interesting tools.
| techsystems wrote:
| I'm really loving this!
|
| 'Responsibility chain' will become a trendy phrase.
| mh- wrote:
| This is great. Small, trivial suggestion: the gif that loops in
| the README should pause on the screen w/ the output for a few
| seconds longer - it disappears (restarts) too quickly to take in
| all of the output.
| stavros wrote:
| https://github.com/charmbracelet/vhs is a really good utility
| for automatically making these gifs.
| DougN7 wrote:
| What does this means for context: "Git repository name and
| branch" Does this mean it detects if something is running from
| within a git repository folder? Couldn't find the code that
| checked this.
| jackwilsdon wrote:
| It appears to walk up from the process's working directory
| searching for a .git directory:
| https://github.com/pranshuparmar/witr/blob/1e47bdb8fde179b17...
| be_erik wrote:
| If you're looking to build and install this from source, here's
| the incantation:
|
| CGO_ENABLED=0 go build -ldflags "-X main.version=dev -X
| main.commit=$(git rev-parse --short HEAD) -X
| 'main.buildDate=$(date +%Y-%m-%d)'" -o witr ./cmd/witr
|
| Call me old-fashioned, but if there's an install.sh, I would hope
| it would prefer the local src over binaries.
|
| Very cool utility! Simple tools like these keep me glued to the
| terminal. Thank you!
___________________________________________________________________
(page generated 2025-12-26 23:00 UTC)