一键导入
rust
Rust conventions for steelseriesgg-rs — error handling, unsafe, feature-gated commands. Use when writing or refactoring any .rs file or Cargo.toml.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Rust conventions for steelseriesgg-rs — error handling, unsafe, feature-gated commands. Use when writing or refactoring any .rs file or Cargo.toml.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run steelseriesgg-rs's benchmark binaries before and after a change and report the timing delta.
Run the full local CI matrix for steelseriesgg-rs, matching .github/workflows/ci.yml exactly. Use this whenever the user asks to run CI, check all feature variants, run the full test suite, verify before pushing, or run clippy/fmt/tests across features. Invoke proactively before any push or PR review.
Run the protocol fuzzer (`ssgg fuzz`) against a connected keyboard with safety guardrails, capture responses, and fold results back into docs/development/ notes.
Use when user wants to Find and remove genuine dead code using deadcode + vulture. Filters known false positives (dataclass fields, protocol methods, dunder hooks). Run before a cleanup commit.
HID protocol constraints for steelseriesgg-rs device code. Automatically load when editing any file under src/devices/. Contains hard rules about HidReportBuilder usage, unsafe block documentation, and experimental command code labeling.
| name | rust |
| description | Rust conventions for steelseriesgg-rs — error handling, unsafe, feature-gated commands. Use when writing or refactoring any .rs file or Cargo.toml. |
| license | Apache-2.0 |
| compatibility | Designed for Claude Code |
| allowed-tools | Read, Grep, Glob, Bash |
| user-invocable | false |
| metadata | {"version":"3.0.0","category":"language","status":"active","updated":"2026-07-03"} |
.rs files and Cargo.tomlsrc/error.rs and below): crate::error::Error via thiserror. main.rs and src/bin/*: anyhow with .context().unwrap/expect outside #[cfg(test)]. Propagate with ?.unsafe blocks require an inline // SAFETY: comment naming the concrete invariant (see .claude/rules/unsafe-blocks.md).&T borrows) over complex lifetimes.src/lib.rs re-exports).--features <flag> if the change touches feature-gated code.Match .github/workflows/ci.yml exactly — this repo does not use --all-features (the audio and sonar features are independent and CI tests them separately; audio needs libpulse-dev).
cargo fmt --all -- --checkcargo clippy --all-targets --locked -- -D warnings (add --features sonar or --features audio for feature-gated changes)cargo test --locked (add --features sonar for feature-gated changes; audio is excluded from CI test job)cargo build --release --lockedFor the full matrix across all feature combinations, use the ci-matrix skill instead of running these piecemeal.
Result<T, E> and ? used consistently; no ignored Results.hidapi version pin (=2.6.6) never changed without explicit task justification..claude/rules/experimental-protocol.md.cargo fmt --all -- --check clean.cargo clippy --all-targets --locked -- -D warnings clean (relevant feature flags included).