HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
WozzHQ
wozz
Shell2025–2026
WozzHQ / wozz

wozz

Kubernetes cost optimization - catch expensive resource changes before they merge

3Distinct people
11Mentions
0Explicit recommenders
164GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Kubernetes cost optimization - catch expensive resource changes before they merge

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week11 dated mentions

Observed mentions: 2025-11-12 18:20:32 UTC to 2026-01-08 15:56:56 UTC. Weeks start Monday, UTC.

01232025-11-10 00:00:00 UTC to 2025-11-17 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsNov 102025-11-17 00:00:00 UTC to 2025-11-24 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2025-11-24 00:00:00 UTC to 2025-12-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2025-12-01 00:00:00 UTC to 2025-12-08 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2025-12-08 00:00:00 UTC to 2025-12-15 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 commentsDec 82025-12-15 00:00:00 UTC to 2025-12-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-22 00:00:00 UTC to 2025-12-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-29 00:00:00 UTC to 2026-01-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-05 00:00:00 UTC to 2026-01-12 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsJan 5

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Nov 102025-11-10 00:00:00 UTC2025-11-17 00:00:00 UTC101
Nov 172025-11-17 00:00:00 UTC2025-11-24 00:00:00 UTC211
Nov 242025-11-24 00:00:00 UTC2025-12-01 00:00:00 UTC211
Dec 12025-12-01 00:00:00 UTC2025-12-08 00:00:00 UTC211
Dec 82025-12-08 00:00:00 UTC2025-12-15 00:00:00 UTC312
Dec 152025-12-15 00:00:00 UTC2025-12-22 00:00:00 UTC000
Dec 222025-12-22 00:00:00 UTC2025-12-29 00:00:00 UTC000
Dec 292025-12-29 00:00:00 UTC2026-01-05 00:00:00 UTC000
Jan 52026-01-05 00:00:00 UTC2026-01-12 00:00:00 UTC110

What Hacker News says

11 sources
wozzio·Jan 8, 2026Submission

Show HN: Wozz – open-source Kubernetes cost linter and cluster auditor

URL: https://github.com/WozzHQ/wozz Hi HN, I built Wozz, an open-source CLI and GitHub Action to catch expensive Kubernetes configs before they merge. The Motivation I noticed that most cloud cost tools (like Kubecost) only show you the bill 30 days later. By then, the over-provisioned sidecar or massive Java heap is already in production. I wanted something that acts like a unit test for resource requests blocking fat finger mistakes in the PR rather than waiting for the bill. How it works Wozz runs in two modes: In CI/CD (The Linter): It parses the git diff of your manifests (deployment.yaml, etc.), calculates the cost delta (requests × replicas), and posts a comment if the change exceeds a threshold (e.g., +$50/mo). It also checks HorizontalPodAutoscaler limits to flag worst-case scaling risks. Locally (The Auditor): It scans your curr
Read the rest
ent kubecontext to compare reserved requests vs. actual live usage (kubectl top). This helps find the "Sleep Insurance" gap—where devs request 4GB RAM just to be safe, but the app only uses 200MB. Implementation Details Stack: TypeScript/Node.js. Math: Instead of querying AWS Cost APIs (which requires sensitive creds and is slow), it uses a configurable Blended Rate (e.g., $0.04/GB/hr) to estimate costs deterministically. Privacy: It runs 100% locally or in your runner. No manifests or secrets are sent to any external server. Repo https://github.com/WozzHQ/wozz Feedback I’m currently using a static Blended Rate for the cost math to keep the tool fast and stateless. I’m curious if this approximation is accurate enough for your team's guardrails, or if you strictly require real-time Spot Instance pricing to trust a tool like this?
2 points · Open discussion
This script does nothing to solve that and actually exasperates problem of people over specing. It makes assumptions about pricing[0], when if you do need a peak of 8GB it would force you into launching and consuming that 8GB immediately, because it is just reading a current snapshot from /proc/$pid/status:VmSize [1] and says you are waisting memory if "request - actual usage (MiB)" [2] What if once a week you need to reconcile and need that 8GB, what if you only need 8GB once every 10 seconds? There script won't see that; so to be defensive you can't release that memory, or you will be 'wasting' resource despite that peek need. What if your program only uses 1GB, but you are working on a lot of parquet files, and with less ram you start to hit EBS IOPS limits or don't finish the nightly DW run because you have to hit disk vs working fro
Read the rest
m the buffer with headroom etc.. This is how bad metrics wreck corporate cultures, the ones in this case encourage overspending. If I use all that ram I will never hit the "top_offender" list[3] even if I cause 100 extra nodes to be launched. Without context, and far more complicated analytics "request - actual usage (MiB)" is meaningless, and trivial to game. What incentive except making sure that your pods request ~= RES 24x7x356 ~= OOM_KILL limits/2, to avoid being in the "top_offender" does this metric accomplish? Once your skip's-skip's-skip sees some consultant labeled you as a "top_offender" despite your transient memory needs etc... how do you work that through? How do you "prove" that against a team gaming the metric? Also as a developer you don't have control over the clusters placement decisions, nor typically directly choosing the machine types. So blaming the platform user on the platform teams' inappropriate choice of instance types, while shutting down many chances of collaboration by blaming the platform user typically also isn't a very productive path. Minimizing cloud spend is a very challenging problem, which typically depends on collaboration more than anything else. The point is that these scripts are not providing a valid metric, and absolutely presenting that metric in a hostile way. It could be changed to help a discovery process, but absolutely will not in the current form. [0] https://github.com/WozzHQ/wozz/blob/main/scripts/wozz-audit.... [1] https://github.com/google/cadvisor/blob/master/cmd/internal/... [2] https://github.com/WozzHQ/wozz/blob/main/scripts/wozz-audit.... [3] https://github.com/WozzHQ/wozz/blob/main/scripts/wozz-audit....
In Show HN: I audited 500 K8s pods. Java wastes ~48% RAM, Go ~18%
IMHO there are some serious problems here that won't relate to many situations, and is not really "waste" in the way claimed and will actually probably result in greater spends. > Memory waste: request - actual usage [0] Memory "requests" are hints to the kube-scheduler for placement, not a target for expected usage. > # Memory over-provisioning: limit > 2x request [1] Memory limits are for enforcement, typically when to call the OOM killer Niether placement nor oomkilling limits should have anything to do with normal operating parameters. > The memory request is mainly used during (Kubernetes) Pod scheduling. On a node that uses cgroups v2, the container runtime might use the memory request as a hint to set memory.min and memory.lo [2] By choosing to label the delta between these two as "waste" you will absolutely suffer from Goodhart's
Read the rest
law and you will teach your dev team to not just request, but allocate memory and don't free it so that they can fit inside this invalid metric's assumptions. It is going to work against the more reasonable goals of having developers set their limits as low as possible without negative effects, while also protecting the node and pod from memory leaks, while still gaining the advantages of over-provisioning, which is where the big gains are to be made. [0] https://github.com/WozzHQ/wozz/blob/main/scripts/wozz-audit.... [1] https://github.com/WozzHQ/wozz/blob/main/scripts/wozz-audit.... [2] https://kubernetes.io/docs/concepts/configuration/manage-res...
In Show HN: I audited 500 K8s pods. Java wastes ~48% RAM, Go ~18%
OP here. I've been consulting for Series B startups and kept running into the same wall: we needed to see where money was being wasted in the cluster, but installing tools like Kubecost or CastAI required a 3-month security review process because they install persistent agents/pods. So I built a lightweight, client-side tool to do a "15-minute audit" without installing anything in the cluster. How it works: It runs locally using your existing kubectl context (read-only). It grabs kubectl top metrics (usage) and compares them to deployments (requests/limits). It calculates the cost gap using standard cloud pricing (AWS/GCP/Azure). It prints the monthly waste total directly to your terminal. Privacy: Pod names are hashed locally (SHA256) before any output. The analysis logic runs entirely on your machine (or client-side in the web viewer).
Read the rest
No data leaves your laptop unless you explicitly choose to share it. It's MIT licensed. I'd love feedback on the waste calculation logic—specifically, is a 20% safety buffer on memory requests too aggressive for production workloads? Repo is here: https://github.com/WozzHQ/wozz
In Show HN: Wozz – Agentless Kubernetes cost auditor (open source)
Hi HN, I'm the creator of Wozz. I've been doing K8s consulting for Series B startups and kept seeing the same pattern: massive over-provisioning (like 8GB RAM limits on apps using 500MB), but no easy way to audit it without installing agents like Kubecost or CAST AI. The problem: Security teams block agent installs for 3-6 months. The waste just sits there burning money. So I built this. It's a bash script that runs locally using your existing kubectl context. It: - Compares resource requests vs actual usage (kubectl top) - Finds orphaned load balancers, unused storage, missing requests - Anonymizes pod names locally (SHA256 hashes) before exporting - Generates a report you can share It's ~300 lines of bash + Python, MIT licensed. You can audit the code before running. Try it: ```bash curl -sL https://raw.githubusercontent.com/WozzHQ/wozz
Read the rest
/main/scripts/w... | bash ``` Or clone first if you don't trust curl | bash: ```bash git clone https://github.com/WozzHQ/wozz.git cd wozz bash scripts/wozz-audit.sh ``` Most common finding: "AI-generated YAML" with overly generous limits. ChatGPT/Copilot tends to suggest 8GB when 1GB would work. I'm doing free analysis for the first 50 clusters (email output to audit@wozz.io). Would love feedback on: 1. Is the anonymization approach sufficient for your security team? 2. What other cost patterns should I detect? 3. Would a GitHub Action version be useful? Code: https://github.com/WozzHQ/wozz Website: https://wozz.io Happy to answer questions!
In Show HN: Wozz – Find Kubernetes waste without installing agents Bash script MIT
Hey HN, I've been obsessed with 'cloud horror stories' and realized they're almost all code-level bugs, not just idle servers. I went hunting and found this 14x N+1 bug in Airbyte's S3 connector. This post is the full breakdown. To fix this at scale, I'm building wozz—a free, open-source linter to catch these bugs in PRs. The linter is here: github.com/WozzHQ/wozz. Happy to answer any questions!
In I Found (and Fixed) a 14x Cost Bug in Airbyte's S3 Connector

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.