From linux-system-optimisation
Find duplicate files (or specifically large duplicates) under a path on Linux, using `rmlint` (preferred) or `fdupes` / `jdupes` as a fallback. Reports size-ranked groups, total reclaimable bytes, and writes a delete script that the user can review before running. Does NOT auto-delete. Triggers on "find duplicate files", "dedupe my downloads", "what duplicates do I have".
How this skill is triggered — by the user, by Claude, or both
Slash command
/linux-system-optimisation:find-duplicatesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Surface duplicate files and quantify the reclaimable space. Default scope: a user-supplied path (e.g. `~/Downloads`, `~/Pictures`). Default tool: `rmlint` — fast, scriptable, generates a review-able shell script.
Surface duplicate files and quantify the reclaimable space. Default scope: a user-supplied path (e.g. ~/Downloads, ~/Pictures). Default tool: rmlint — fast, scriptable, generates a review-able shell script.
/ or anything above $HOME unless user explicitly insists; the false-positive risk is too high (system files, package manager artefacts).rmlint if installed — preferred; emits rmlint.sh with reviewable per-file actions.jdupes (faster than fdupes) — falls back to fdupes if neither is present.sudo apt install rmlint and proceed.rmlint:
rmlint --types=duplicates --size=<min>K \
--output=sh:<scans_dir>/rmlint-<timestamp>.sh \
--output=json:<scans_dir>/rmlint-<timestamp>.json \
--output=summary \
<path>
(<scans_dir> here = the benchmarks_dir from linux-system-optimisation's config, with a /space-audits/ subfolder. Create it if missing.)
jdupes / fdupes fallback:
jdupes -r -S -m <path> # summary
jdupes -r -S <path> > <scans_dir>/jdupes-<timestamp>.txt
~/.cache/* (regenerable; prune-dev-clutter handles this)~/snap/*/common/, ~/.var/app/* (Flatpak per-app stores)*/node_modules/* (every project legitimately has its own)*/.venv/*, */venv/* (likewise — prune-dev-clutter handles).git/objects/If user requested prune-script mode:
rmlint — the emitted rmlint.sh is already that. Print the path and tell the user to head it, edit if needed, then run.jdupes — generate a similar script: keep the first file in each group, rm the rest, but comment out any line whose path matches the suspicious patterns above. User uncomments to confirm.Never run the script automatically. The user reviews and runs it.
rmlint --types=duplicates --keep-all-tagged --merge-directories can be configured to deduplicate via reflink instead of delete (zero-copy on supported FS). Out of scope for the default flow but worth surfacing for users with big duplicate sets they don't want to delete.npx claudepluginhub danielrosehill/claude-code-plugins --plugin linux-system-optimisationProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.