Skip checks this code already passed
hushrun runs a check only when the code in front of it hasn't passed it yet. Put hushrun run -- in front of a test, lint or typecheck command once, and it skips the same way on your laptop, in CI and in a coding agent's sandbox.
$ hushrun run e2e -- playwright test --project site hushrun: e2e running: no pass yet for this exact code … hushrun: e2e passed in 16s; it won't run again on this code
A minute later, a coding agent runs the same check on the same files, on another machine:
$ hushrun run e2e -- playwright test --project site hushrun: e2e skipped: this exact code passed 1 min ago (saves 16s)
How it decides
Before it runs a check, hushrun looks for an earlier result for the same check on the same code:
- the repository's files as they are now, committed or not, with ignored files left out;
- the check's name, its exact command, and the directory it runs in.
The machine, the branch, the commit and the CI provider aren't part of it, so a pass on your laptop skips the check in CI, and the other way round. When hushrun can't tell whether this code passed, it runs the check: a doubt costs a run, never a skip that should have been a run. How skipping works has the details.
Where it works
- On your laptop, once you sign in with
npx hushrun login. - In GitHub Actions, with the job's ID token and no secret to store. Other CI uses a token. See In CI.
- For coding agents. An agent on your machine uses your sign-in. An agent in a sandbox uses an agent token and the key it comes with. See Agents and sandboxes.
Results go to your organization's backend on hushrun's hosted service, where everyone who works on the repository shares them. Without one, they stay on your machine. Where results go explains the choice, and how to run your own server.
Set it up
At the root of a repository whose package.json runs your checks:
npx hushrun initIt finds the checks, signs you in, shows every change it would make, and makes them once you agree. It takes about three minutes; the Quickstart walks through it. A coding agent can do it for you: For coding agents has the prompt to give it.
Promotion
hushrun also runs a whole delivery pipeline: CI builds and validates each change once, and every later stage deploys the exact artifact that was tested, by digest, with signed evidence of what ran. You don't need it to skip checks. Promotion explains it.
Reading these docs as an agent
Every page is also Markdown: add .md to its address, such as https://hushrun.com/docs/quickstart.md, or ask for text/markdown in the Accept header. /llms.txt lists every page, and /llms-full.txt has all of them in one file.