---
title: StorageAudit — Sub-second Linux workstation storage bloat auditor and
  surgical cleanup tool — by Jad Madi (@jadmadi)
description: Fast, local-first utility built in Go with zero external
  dependencies. It categorizes disposable workstation storage into eight bloat
  groups, ranks candidates by age and reclaimable size, and frees gigabytes
  safely without risking active code or touching dirty git repositories.
href: /project/storageaudit/
author: Jad Madi
category: Developer Tools & Infrastructure
domain: Developer Tools & CLI
status: Active CLI
license: "Dual: WaqfDPL-Mulzim 1.0 / AGPL-3.0"
year: "2026"
version: 0.1.0
---

# StorageAudit — Sub-second Linux workstation storage bloat auditor and surgical cleanup tool

Fast, local-first utility built in Go with zero external dependencies. It categorizes disposable workstation storage into eight bloat groups, ranks candidates by age and reclaimable size, and frees gigabytes safely without risking active code or touching dirty git repositories.

## Project Overview

- **Website**: https://jadmadi.net/project/storageaudit/
- **Version**: 0.1.0
- **Live Platform**: https://jadmadi.net/project/storageaudit
- **Repository**: https://github.com/jadmadi/storageaudit
- **Documentation**: https://github.com/jadmadi/storageaudit/blob/main/README.md
- **Domain**: Developer Tools & CLI
- **Category**: Developer Tools & Infrastructure
- **Status**: Active CLI
- **Year**: 2026
- **License**: Dual: WaqfDPL-Mulzim 1.0 / AGPL-3.0 (waqf)
- **Author**: [@JadMadi](https://x.com/jadmadi)

## Quick Install & Run

### Linux & macOS

```bash
go install github.com/jadmadi/storageaudit/cmd/storageaudit@latest
```

## The Problem It Solves

Modern developer workstations accumulate dozens of gigabytes of hidden build caches, browser offline storage, and stale dependencies, but standard Linux tools like du and df cannot distinguish disposable bloat from critical code or detect unlinked ghost files.

## The Solution

Delivers sub-second workstation storage triage across eight bloat categories, ranks candidates by age and reclaimable size, and performs surgical cleanups with strict safety boundaries and dry-run previews.

## Key Features & Capabilities

- Sub-second multi-drive storage audit with inode meters and mount point capacity indicators
- Eight bloat categories: compiler caches, package stores, stale git modules, browser storage, ghost files, runaway logs, superseded binaries, and desktop trash
- Fail-closed safety invariants: skips uncommitted git repositories, preserves active toolchains, rejects symlinks, and enforces UID ownership
- Ghost file detector that scans /proc/[pid]/fd for unlinked files held open by running processes
- Surgical cleanup commands with dry-run mode, category explanation engine, and automated daily release checks

## Technical Specifications & Architecture

- **Languages**: Go
- **Frameworks / Libraries**: Go standard library, Linux /proc
- **Architecture**: Single static binary, pure standard library, concurrent worker scanners, fail-closed safety triage
- **License Model**: Dual: WaqfDPL-Mulzim 1.0 / AGPL-3.0

## Frequently Asked Questions

### Does StorageAudit delete files without confirmation?

No. Running storageaudit performs a read-only audit. Cleanup actions require explicit flags such as --clean-caches or --clean-all, and --dry-run lets you preview every deletion safely.

### Will cleaning stale modules touch my active development work?

No. Repositories with uncommitted changes or unstaged edits are strictly protected and never modified. Only clean git trees inactive for at least 14 days are eligible.

### Does StorageAudit collect telemetry or require network access?

No. StorageAudit is 100% local-first with zero telemetry. Its only network interaction is an optional daily check against GitHub releases for self-upgrades, which can be disabled with --no-update-check.

## Links & References

- Project Page on Crosscurrent Code: https://jadmadi.net/project/storageaudit/
- Full Projects Directory: https://jadmadi.net/projects/
- Author Profile: https://jadmadi.net/about/
