gitwtfhub

wtf is witr?

pranshuparmar/witr — explained in plain English

Analysis updated 2026-06-24

15,467GoAudience · ops devopsComplexity · 2/5Setup · easy

TL;DR

A command-line tool that shows why a process or network port is running, tracing the full chain from container to supervisor, in one readable report or interactive terminal dashboard, replacing several monitoring commands at once.

Mindmap

mindmap
  root((witr))
    What it does
      Process inspection
      Startup chain trace
      Why is it running
    Interfaces
      Text report
      Interactive TUI
      CLI flags
    Supported platforms
      Linux
      macOS
      FreeBSD
      Windows
    Installation
      Homebrew
      Conda
      Winget
      Install script
    Audience
      DevOps engineers
      SREs
      Server admins

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Find out which service or container started an unexpected process that is holding a port on your server.

REASON 2

Trace the parent chain of a process consuming CPU or memory to identify which supervisor is responsible.

REASON 3

Use the interactive TUI dashboard to explore and monitor running processes across system layers without juggling multiple commands.

What's in the stack?

Go

How it stacks up

pranshuparmar/witrgreyireland/algorithm-patterntidwall/gjson
Stars15,46715,46315,488
LanguageGoGoGo
Setup difficultyeasyeasyeasy
Complexity2/52/52/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Wtf does this do

witr is a command-line tool that answers a single question about a running computer process: why is this running? When a program, service, or something listening on a network port is alive on a machine, there is always a reason, but it is often hidden across several layers, like a supervisor that launched a container that launched a service that opened a shell. The usual Unix tools (ps, top, lsof, ss, systemctl, docker ps) show what is running, but make you piece together the why by jumping between their outputs. witr collapses that detective work into one report. You point it at a running thing and it explains where it came from, how it was started, and the chain of systems responsible for keeping it alive, presented as a human-readable text dump or as an interactive terminal dashboard (a TUI, short for text user interface). The README organizes the tool by purpose, installation, the TUI mode, flags, example outputs, supported platforms, design goals, and the core idea behind making causality explicit. It ships as a single static binary with no runtime dependencies and includes a man page on Unix-style systems. You would use witr when something on a server is consuming resources, holding a port, or behaving unexpectedly, and you want a plain explanation of how it got there rather than juggling multiple monitoring commands. It is written in Go and runs on Linux, macOS, FreeBSD, and Windows. Installation works through an install script or through package managers including Homebrew, Conda, the Arch User Repository, Winget, npm, FreeBSD Ports, Chocolatey, Scoop, AOSC OS, and GNU Guix, with status tracked on Repology. The full README is longer than what was provided.

Yoink these prompts

Prompt 1
I have a process running on port 8080 and I don't know what started it. Show me the witr command to trace its full startup chain.
Prompt 2
I see a suspicious process in top with PID 1234. Using witr, how do I find out how it was launched and what is keeping it alive?
Prompt 3
Show me how to launch witr's TUI mode on a Linux server to interactively explore the parent chain of running processes.
Prompt 4
Walk me through installing witr on macOS with Homebrew and give me the command to investigate a process by name rather than PID.

Frequently asked questions

wtf is witr?

A command-line tool that shows why a process or network port is running, tracing the full chain from container to supervisor, in one readable report or interactive terminal dashboard, replacing several monitoring commands at once.

What language is witr written in?

Mainly Go. The stack also includes Go.

How hard is witr to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is witr for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.