Token导航 LogoToken导航TokenDH.com
开发敏感数据github未标认证来源可访问许可证需确认审计通过

coding-rustcoding Rust 命令行

Agent Skill

coding-rust 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

396

周安装

17

GitHub Stars

4

下载量

139
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:coding-rust(coding Rust 命令行)
来源仓库:https://github.com/alphaonedev/openclaw-graph
仓库路径:skills/coding-rust
安装命令:
npx skills add https://github.com/alphaonedev/openclaw-graph --skill coding-rust
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/alphaonedev/openclaw-graph --skill coding-rust

简介

coding-rust 专注于 Rust 核心特性,包括所有权、借用、生命周期和异步编程。

  • 适用于内存安全关键型系统代码开发,如网络服务器或内核模块。
  • 支持 Tokio 异步运行时和 anyhow 错误处理,可用于性能敏感场景。
  • 涉及 unsafe 代码时应谨慎评估风险,避免数据竞争。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

coding-rust

Purpose

This skill provides expertise in advanced Rust programming, focusing on core language features and ecosystem tools to build efficient, safe systems code.

When to Use

  • When implementing memory-safe code with ownership, borrowing, or lifetimes to prevent common errors like data races.
  • For projects requiring asynchronous programming with Tokio, error handling via anyhow/thiserror, or managing multi-crate setups with Cargo workspaces.
  • In scenarios involving unsafe code for performance-critical sections, or defining custom behaviors with traits.

Key Capabilities

  • Manage Rust's ownership model: Use references (&T) and lifetimes ('a) to borrow data without transferring ownership.
  • Implement traits: Define and use trait objects for polymorphism, e.g., trait Debug {fn fmt(&self);}.
  • Handle async with Tokio: Run asynchronous tasks using tokio::main and futures.
  • Error management: Leverage anyhow for simple error wrapping and thiserror for custom error types.
  • Cargo workspaces: Organize multi-package projects with Cargo.toml workspaces for dependency sharing.
  • Unsafe operations: Use unsafe blocks for raw pointers or FFI, ensuring safety invariants are maintained.

Usage Patterns

  • To handle ownership and borrowing, always prefer borrowing over cloning: Use &mut T for mutable references and ensure lifetimes match, e.g., in functions like fn borrow lifetimes<'a>(x: &'a i32) -> &'a i32.
  • For async tasks, spawn Tokio runtimes: Use tokio::spawn to run futures concurrently, then await results in an async main function.
  • Define traits for extensibility: Create a trait and implement it for structs, e.g., impl MyTrait for MyStruct {fn method() {...}}.
  • Set up Cargo workspaces: In the root Cargo.toml, add [workspace] section with members = ["crate1", "crate2"], then build with cargo build --workspace.
  • Use anyhow for errors: Wrap errors with anyhow::Result and propagate them using ? operator.
  • Employ unsafe sparingly: Wrap unsafe code in blocks like unsafe {*ptr = value;} and justify with comments.

Common Commands/API

  • Cargo commands: Build with cargo build --release for optimized binaries; test with cargo test --workspace for all crates; add dependencies via cargo add tokio --features full.
  • Tokio API: Start an async runtime with #[tokio::main] async fn main() {tokio::spawn(async {...});}; use channels for async communication, e.g., let (tx, rx) = tokio::sync::mpsc::channel(10);.
  • Anyhow/thiserror: Define custom errors with #[derive(thiserror::Error)] enum MyError {...}; handle in functions as fn example() -> anyhow::Result<()> {...}.
  • Ownership helpers: Use standard library functions like std::mem::drop to explicitly drop values, or std::borrow::Cow for owned/copied data.
  • Config formats: Edit Cargo.toml for project settings, e.g., [dependencies] tokio = {version = "1.0", features = ["full"]}; use environment variables for secrets like RUST_BACKTRACE=1 for debugging.

Integration Notes

  • Integrate with other tools: Use $RUSTUP_TOOLCHAIN env var to switch Rust versions, e.g., export RUSTUP_TOOLCHAIN=nightly for unstable features.
  • For API keys in external integrations (e.g., if calling external services from Rust), set env vars like $MY_API_KEY and access via std::env::var("MY_API_KEY").unwrap().
  • Combine with build tools: In CI/CD, run cargo fmt for code formatting and cargo clippy for lints before builds.
  • Embed in projects: Add Tokio as a dependency in Cargo.toml, then import in code with use tokio::runtime::Runtime; let rt = Runtime::new().unwrap(); rt.block_on(async {...});.
  • Handle cross-crate dependencies in workspaces: Reference crates via paths, e.g., in Cargo.toml, use path = "../sibling_crate".

Error Handling

  • Use anyhow for quick error propagation: Return anyhow::Result<T> from functions and use ? to handle errors, e.g., fn read_file() -> anyhow::Result<String> {std::fs::read_to_string("file.txt").context("Failed to read")}.
  • Define custom errors with thiserror: Derive errors like #[derive(thiserror::Error, Debug)] enum AppError {#[error("IO error: {0}")] Io(#[from] std::io::Error),} and handle with match statements.
  • In async contexts, use Tokio's error types: Await futures and handle errors with .await.map_err(|e| anyhow::Error::from(e)).
  • Always check for panics in unsafe code: Use std::panic::catch_unwind around unsafe blocks to prevent crashes.

Concrete Usage Examples

  1. Async HTTP server with Tokio: Create a simple server by adding Tokio to Cargo.toml, then write: use tokio::net::TcpListener; #[tokio::main] async fn main() -> anyhow::Result<()> {let listener = TcpListener::bind("127.0.0.1:8080").await?; loop {let (socket, _) = listener.accept().await?; tokio::spawn(handle_connection(socket));}}.
  2. Error handling in a CLI tool: Define errors and use anyhow: In Cargo.toml, add anyhow = "1.0" and thiserror = "1.0", then implement: use thiserror::Error; #[derive(Error, Debug)] enum Error {#[error("Parse error")] Parse,} fn main() -> anyhow::Result<()> {let input = std::env::args().nth(1)?; if input.parse::<u32>().is_err() {Err(Error::Parse)?;} Ok(())}.

Graph Relationships

  • Related to: coding (cluster), as it shares tags like "coding" and focuses on programming skills.
  • Connected via: tags ["rust", "systems"], potentially linking to other Rust or systems programming skills.
  • Dependencies: May integrate with skills in "coding" cluster, such as general coding tools for broader ecosystem support.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

38.01%
按下载量换算53

Claude

32.64%
按下载量换算45

Cursor

17.5%
按下载量换算24

Gemini CLI

8.69%
按下载量换算12

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills