← plumbing.sh

Privacy

This page

No analytics. No tracking pixels. No cookies. Nothing is set in your browser and no third party is told you were here.

One thing is counted, and this page would rather name it than let you find it. When a file is downloaded from plumbing.sh/dist, the server records which file it was, whether the request looked like an install script or a browser or a crawler, and the date. Not your IP address, not your user agent, not any identifier — there is nothing in the record that could be joined back to you, or to another request you made. It exists so the question “has anyone installed this” has an answer, and it answers nothing else.

If you buy a seat

Payment is handled by Polar. Card details go to them and never reach this site or any machine of mine — I do not see them and could not store them if I wanted to.

What is stored is the order: your email address, your name if you gave one, what you bought, the amount, the number of seats, and when it happened. It is held in a private store that is not readable without a key, and it exists for two reasons — to issue your license, and so that if you write to support I can tell that you actually bought something. It is not used for anything else, ever. Ask and it is deleted, without a reason needing to be given.

Your license

Your license is a signed file, verified on your own machine every time plumb runs. There is no license server and no validation request — not on activation, not on use, not ever. Nothing about which repositories you run it on, how often, or whether checks pass leaves your machine, because nothing is built that could send it.

What your AI agent is shown

plumb reports what your own checks printed, and failing tests print a great deal. Before any of that is displayed, put in --json, or handed to an agent, credentials are removed from it — the name is kept and the value replaced, so the failure stays readable. plumb also reports how many values it removed, so you are never left wondering whether output was quietly altered.

This reduces exposure; it does not guarantee none, and the security page is specific about where the limit falls.

The tool itself

plumb runs on your machine. Your repository’s contents, file names, command output and results are never transmitted anywhere. There is no telemetry: not opt-out, not anonymized, none.

There is exactly one thing in plumb that can reach the network, and this page would rather name it than let you find it: plumb update, which asks whether a newer version exists. It runs when you run it, or when you say yes to a prompt — and that prompt only appears when a person is at a terminal, never to an agent, a hook, a pipe, or CI. It shells out to the curl already on your machine.

There is no scheduler — no cron job, no launch agent, no daemon, no background thread. The decision about whether to remind you is date arithmetic against a local file and makes no request of anyone. Turn it off permanently with plumb update --no-remind.

Discovery, running your checks, reading your documentation and verifying your license contain no networking implementation at all. You do not have to believe that: run plumb with your network interface down, or watch it under tcpdump.

Last updated 2026-08-28.