一键导入
maintain
Use cargo-upkeep to audit, update, score, and plan maintenance for Rust crates and workspaces
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use cargo-upkeep to audit, update, score, and plan maintenance for Rust crates and workspaces
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use dfm to initialize dotfile backups, track files safely, sync private repositories, and review AI-suggested dotfile improvements
Work on llbbl/esm, a PHP enum-state-machine library, with its local quality gates and API constraints
Integrate llbbl/enum-state-machine into a PHP project with enum states, attribute transitions, guards, hooks, and validation
Use grepwrite gw to find matches, preview code rewrites, apply transactional edits with snapshots, and undo safely
Integrate logan-logger into TypeScript apps with correct runtime imports, environment config, safe metadata, and validation
Use pkglock to switch package-lock.json between local npm registries and the public registry, and install safeguards against committing local URLs
| name | maintain |
| version | 0.1.0 |
| description | Use cargo-upkeep to audit, update, score, and plan maintenance for Rust crates and workspaces |
| allowed-tools | Bash, Read, Grep, Glob, Edit, MultiEdit, Write |
Use this skill when the user wants to maintain a Rust crate or workspace with cargo-upkeep, including dependency review, RustSec audits, project health scoring, dependency trees, unused dependency checks, unsafe-code review, or CI maintenance gates.
Examples:
cargo-upkeep is a Cargo subcommand for Rust project maintenance. It provides one interface and JSON-friendly output for:
detect - project/workspace configurationdeps - outdated dependency reporting with semver classificationaudit - RustSec advisory scanningquality - project health grade and score breakdowntree - enhanced dependency tree outputunused - unused dependency detection through cargo-macheteunsafe-code - unsafe dependency analysis through cargo-geigerUse it inside Rust projects that have Cargo.toml. For workspaces, start at the workspace root.
Check whether the tool is available:
cargo upkeep --help
If missing, install from crates.io:
cargo install cargo-upkeep
cargo binstall cargo-upkeep is also acceptable when the project or user already uses cargo-binstall.
For commands that depend on optional tools:
cargo install cargo-machete
cargo install cargo-geiger
Only install optional tools when the user asks for unused-dependency or unsafe-code analysis, or when cargo upkeep quality reports those metrics as blocked by missing tools.
Cargo.toml, Cargo.lock, workspace layout, MSRV/rust-version, and existing CI commands.cargo upkeep detect --json
Cargo.lock is missing and security/dependency checks need it, generate one:cargo generate-lockfile
Run:
cargo upkeep deps --json
Classify results by update type:
For actual upgrades:
cargo build or the project’s documented build.cargo test.Do not batch unrelated major upgrades.
Run:
cargo upkeep audit --json
For each RustSec finding, report:
Prioritize critical/high findings before routine dependency freshness.
Run:
cargo upkeep quality --json
Explain the grade and score drivers. Convert the result into a short action plan:
If the user asks for fixes, implement the top safe item first and validate it.
Use dependency tree output to explain why a crate is present:
cargo upkeep tree --json
Use unused dependency detection only after installing cargo-machete:
cargo upkeep unused --json
Use unsafe-code analysis only after installing cargo-geiger:
cargo upkeep unsafe-code --json
Treat unsafe-code findings as review targets, not automatic failures. Summarize where unsafe code enters the graph and whether it comes from common low-level crates, build tooling, or application dependencies.
For advisory reporting, add non-blocking commands first. For enforcement, start with checks the project can pass today.
Common maintenance gate:
cargo upkeep audit --json
cargo upkeep deps --json
cargo upkeep quality --json
Do not add failing CI enforcement unless the user explicitly asks for a hard gate.
cargo audit, cargo outdated, cargo machete, or cargo geiger directly when the same workflow is available through cargo upkeep.rust-version before using newer Rust features.