HEY(1)

πŸ’– HEY(1) β€” the hey girlies' manual πŸ’–

Hii bestie!! So hey is a HTTP load generator, and it used to be known as rakyll/boom back in the day (glow-up era, we love a rebrand). If you wanna yeet a bunch of requests at a URL and see how it holds up, this is your queen. πŸ‘‘


✨ SYNOPSIS ✨

hey [options...] <url>

That's it. Options go first, <url> goes last, and then she goes. πŸƒβ€β™€οΈπŸ’¨


🌸 OPTIONS 🌸

Like, so many options, and every single one of them is here, no cap:

  • -n β€” How many requests you wanna run. Default is 200. That's the whole vibe count.
  • -c β€” How many workers run concurrently. Real talk: your total number of requests cannot be smaller than the concurrency level. Default is 50 workers doing their little tasks in parallel. 🐝
  • -q β€” Rate limit, in queries per second (QPS) per worker. Default is no rate limit β€” she's unhinged, she's free. 😌
  • -z β€” How long the app should keep sending requests. When the duration is reached, the app stops and exits, periodt. Big caveat bestie: if duration is specified, n is ignored. Examples: -z 10s, -z 3m.
  • -o β€” Output type. If you don't provide one, a summary gets printed. "csv" is the only supported alternative, and it dumps the response metrics in comma-separated values format. Simple as.
  • -m β€” HTTP method, one of GET, POST, PUT, DELETE, HEAD, OPTIONS. Pick your fighter.
  • -H β€” Custom HTTP header. You can specify as many as you need by repeating the flag. For example: -H "Accept: text/html" -H "Content-Type: application/xml". Stack 'em like bracelets. 🫢
  • -t β€” Timeout for each request, in seconds. Default is 20. Use 0 for infinite (chaotic, iconic).
  • -A β€” HTTP Accept header.
  • -d β€” HTTP request body.
  • -D β€” HTTP request body from file. For example, /home/user/file.txt or ./file.txt.
  • -T β€” Content-type, defaults to "text/html".
  • -U β€” User-Agent, defaults to version "hey/0.0.1".
  • -a β€” Basic authentication, written as username:password.
  • -x β€” HTTP Proxy address as host:port.
  • -h2 β€” Enable HTTP/2. Fancy protocol era, we stan. ✨
  • -host β€” HTTP Host header.
  • -disable-compression β€” Disable compression. Bye bye zip energy.
  • -disable-keepalive β€” Disable keep-alive, which prevents re-use of TCP connections between different HTTP requests. Every request gets a fresh lil connection, no sharing.
  • -disable-redirects β€” Disable following of HTTP redirects. (Note: no period in the original, but the drama is implied. πŸ’€)
  • -cpus β€” Number of used cpu cores.
Heads up bestie: req count can't be lower than concurrency, -z totally overrides -n, and -o really only takes csv as an alternative. Don't come for me, that's just what it says. πŸ™ˆ

And that's the whole page, babe β€” you're basically a load-testing main character now. πŸŽ€

This was hey version 0.1.5, dated April 2026, and you read the whole thing so you're legally iconic. Go stress-test something (responsibly). πŸ’…β­πŸ¦‹

πŸ“¦ where this page comes from