Rust Best Practices
farm-fe/farm
Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook.
Run a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues.
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install tsz-org/tsz rust-hygiene-audit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .claude/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .claude/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-auditType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install tsz-org/tsz rust-hygiene-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .agents/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .agents/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install tsz-org/tsz rust-hygiene-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .cursor/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .cursor/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/tsz-org/tsz.git --path .agents/skills/rust-hygiene-audit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install tsz-org/tsz rust-hygiene-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .gemini/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .gemini/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install tsz-org/tsz rust-hygiene-auditInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .github/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .github/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add tsz-org/tsz --skill rust-hygiene-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install tsz-org/tsz rust-hygiene-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tsz-org/tsz.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/rust-hygiene-audit .opencode/skills/rust-hygiene-audit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "rust-hygiene-audit" agent skill from https://github.com/tsz-org/tsz/tree/main/.agents/skills/rust-hygiene-audit into .opencode/skills/rust-hygiene-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rust-hygiene-audit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
rust-hygiene-auditRun a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues.
Rust Hygiene Audit is an agent skill from tsz-org/tsz. Run a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues. Use this whenever the user asks to find duplication, code smells, derive/boilerplate bloat, oversized files, or "tech debt"; to tighten the Clippy/lint posture; to mass-file or triage hygiene issues; or to assign Priority/Effort issue Fields across the backlog. Reach for it even when the user only says "clean up the codebase", "find DRY violations", "what should we…
Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including scripts and reference files (for example `references/github-fields-api.md`, `references/issue-template.md` and `references/lint-triage.md`).
It sits in Development, covering Refactoring, Technical debt and Linting and formatting. It works with Rust and GitHub. The repository describes itself as: An experiment in fully hand-off software engineering: A performance-first TypeScript checker. The licence is Apache-2.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 153b25a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3ghcargoFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Rust Hygiene Audit loads about 1.5k tokens when it runs, and up to ~3.4k if it reads all its reference files. Until then it costs about 164 tokens; SKILL.md has 637 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from tsz-org/tsz at commit 153b25a, republished under its Apache-2.0 licence (© tsz-org). 637 words, ~1,455 tokens.
.claude/skills/rust-hygiene-audit/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Turn a fuzzy "clean up the codebase" request into a set of evidence-backed,
deduplicated, parent/child GitHub issues — without flooding the tracker with
smells. The guiding principle: every issue must cite real file:line evidence
that survived an adversarial check, and must not duplicate an open issue.
This skill is for hygiene/DRY/lint work, not behavior changes. It produces
issues and field assignments; it does not edit compiler logic. Keep parity work
(tsc matching) in the owner skills.
Run them in order. Phases 1–2 are analysis; 3–4 are writes — confirm scope with the user before mass-creating issues unless they already said "create them".
The cheapest lever against future debt is a tighter lint floor, so quantify what the current floor lets through before proposing changes.
python3 .agents/skills/rust-hygiene-audit/scripts/measure_clippy.py --worktree . --out /tmp/hygieneThis runs cargo clippy --workspace --lib -- -W clippy::pedantic -W clippy::nursery
(no files touched), aggregates warnings per lint, and prints a promote vs
defer triage. Read references/lint-triage.md for the rationale behind which
lints are worth promoting in a compiler (numeric casts and must_use/doc
pedantry are mostly intentional; idiom/ownership lints are high-signal). The
count and triage become the body of the clippy-posture epic.
Disk note: a cold workspace clippy build needs ~8–12GB. If low, reclaim merged
worktree caches first (see tsz-disk-cache-hygiene).
Drive the bundled workflow, which fans out per-crate DRY auditors and cross-cutting concern auditors, dedups against open issues, then adversarially verifies every candidate against the real source before authoring full issue bodies:
Workflow({ scriptPath: "scripts/agents/hygiene-audit-workflow.mjs" })Before launching, snapshot the open issues the auditors dedup against:
gh issue list -R <owner>/<repo> --state open --limit 300 --json number,title,labels > /tmp/hygiene/open-issues.jsonThe workflow returns { epics, children, dropped, stats }. children carry
verified evidence and full body_md. dropped records findings that
overlapped an existing issue — surface these so the user sees the dedup worked.
Tune the auditor list (crates + concerns) in the workflow's CRATES/CONCERNS
arrays for the target repo. The verify stage defaults to reject on weak
evidence — that is the anti-spam gate; do not weaken it.
Author epic body_md (summarize the theme + bake in the measured clippy data
for the lint epic), then create epics and children with native sub-issue links:
python3 .agents/skills/rust-hygiene-audit/scripts/create_issues.py \
--repo <owner>/<repo> --specs /tmp/hygiene/result.json --applyMatch the repo's existing issue conventions. For tsz that is the
techdebt(scope): title + the template in references/issue-template.md
(## Summary with a structural rule → ## Evidence → ## Why it matters →
## Proposed fix (sized S/M/L) → ## Risks / coordination). The script writes
a ## Child issue map into each epic as a durable fallback even when native
linking succeeds.
python3 .agents/skills/rust-hygiene-audit/scripts/assign_fields.py \
--repo <owner>/<repo> --specs /tmp/hygiene/result.json --applyDiscovers the repo's Priority/Effort single-select issue Fields by name,
then assigns by rule. Default priority ranking is correctness > speed >
tech-debt (map to High/Medium/Low; reserve Urgent for urgent/panic
labels). Effort comes from the audit size (S/M/L → Low/Medium/High) and
epic-scale → the top level. See references/github-fields-api.md for the API
gotchas — they are easy to get wrong:
gh api -X POST .../issues/<parent>/sub_issues -F sub_issue_id=<db_id>
— -F (integer) not -f (string); the id is the issue database id, not
its number.setIssueFieldValue works with repo scope, but createIssueField /
updateIssueField (changing a field's options) need admin:org. If you
must add an option and lack the scope, ask the user to add it in the UI or
fall back to the existing options.dropped list proves the check ran).file:line evidence.© tsz-org, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in .agents/skills/rust-hygiene-audit of tsz-org/tsz.
Open the folder on GitHubat commit 153b25a
Rust Hygiene Audit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Rust Hygiene Audit this skilltsz-org/tsz | 577 | — | ~1.5k | Automated safety check: Pass | Apache-2.0 | |
| Rust Best Practicesfarm-fe/farm | 5.6k | 3 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Unslop CodeJCarterJohnson/vibecoded-design-tells | 513 | — | ~2.5k | Automated safety check: Pass | Custom licence | |
| Code Quality Gatefengshao1227/ccg-workflow | 5.9k | — | ~593 | Automated safety check: Notes | MIT | |
| Warp Feature Flag Removalwarpdotdev/warp | 65k | 1 repos | ~1.1k | Automated safety check: Pass | AGPL-3.0 | |
| Code RefinerMathews-Tom/armory | 328 | — | ~3.1k | Automated safety check: Pass | MIT |
farm-fe/farm
Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook.
JCarterJohnson/vibecoded-design-tells
Strips the tells that make source code read as AI-generated and forces code that fits the project instead of the model's default average.
fengshao1227/ccg-workflow
Scans code for complexity, long functions, duplicated blocks, naming problems and code smells with a Node script, then reports and suggests refactors.
warpdotdev/warp
Removes a Warp feature flag once it is stable for everyone, deleting the definition, the Cargo entries and every conditional check.
Mathews-Tom/armory
Deep code simplification and refactoring preserving behavior across Python, Go, TypeScript, Rust.
axone-protocol/contracts
Axone contract structure and Abstract SDK patterns. An agent skill from axone-protocol/contracts.
tsz-org/tsz
Audit TSZ repo iteration speed and quality. An agent skill from tsz-org/tsz.
tsz-org/tsz
A skill your agent uses when planning, implementing, reviewing, or interpreting TSZ performance work, including benchmark regressions, cache/residency changes, timing claims, perf counters, hotspot…
tsz-org/tsz
Create, refresh, and publish TSZ pull requests with correct body and state.
tsz-org/tsz
Start TSZ work safely in a crowded multi-agent checkout. An agent skill from tsz-org/tsz.
tsz-org/tsz
Preserve TSZ architecture boundaries while changing checker, solver, binder, emitter, LSP, WASM, or CLI code.
tsz-org/tsz
Drive TSZ GitHub PRs through review, CI, and the merge queue.
Categories
Run a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues. Rust Hygiene Audit is an agent skill from tsz-org/tsz. Run a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues.
Rust Hygiene Audit fits situations like: asks to find duplication; derive/boilerplate bloat; oversized files; tighten the Clippy/lint posture.
Run `npx skills add tsz-org/tsz --skill rust-hygiene-audit -a claude-code`. Or copy the skill folder (.agents/skills/rust-hygiene-audit in tsz-org/tsz) into .claude/skills/rust-hygiene-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add tsz-org/tsz --skill rust-hygiene-audit -a codex`. Or copy the skill folder (.agents/skills/rust-hygiene-audit in tsz-org/tsz) into .agents/skills/rust-hygiene-audit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add tsz-org/tsz --skill rust-hygiene-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rust-hygiene-audit, .gemini/skills/rust-hygiene-audit, .github/skills/rust-hygiene-audit and .opencode/skills/rust-hygiene-audit in your project.
Going by SKILL.md and its folder, Rust Hygiene Audit needs Python for the scripts in its folder and the command-line tools its instructions call (python3, gh and cargo). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Rust Hygiene Audit is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Rust Hygiene Audit: Rust Best Practices (farm-fe/farm, 5.6k stars), Unslop Code (JCarterJohnson/vibecoded-design-tells, 513 stars), Code Quality Gate (fengshao1227/ccg-workflow, 5.9k stars) and Warp Feature Flag Removal (warpdotdev/warp, 65k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
tsz-org (a GitHub organization) maintains it in tsz-org/tsz, which has 577 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on September 9, 2026.
Source: tsz-org/tsz on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.