Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计通过

rust-cli-agent-styleRust CLI Agent style 命令行

Agent Skill

rust-cli-agent-style 用于记录任务执行中的错误、用户纠正、经验和能力缺口,适合在 Codex、Claude、Cursor、Gemini CLI 中希望让 Agent 持续沉淀问题、修正和最佳实践时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,395

周安装

57

GitHub Stars

131

下载量

451
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/pproenca/dot-skills --skill rust-cli-agent-style

简介

用于记录任务执行中的错误、用户纠正和经验缺口。

  • 适合让 Agent 持续沉淀问题、修正和最佳实践。
  • 可结合来源仓库和原始 README 核验具体用法。
  • 安装前建议确认权限范围和维护状态。rust-cli-agent-style 属于开发类 Skill,可作为该场景下的辅助能力补充。
  • 注意是否会触发联网、命令执行或文件读写。

SKILL.md

OpenAI Codex Rust CLI Agent Best Practices

This skill teaches you to write Rust code in the style of the OpenAI Codex codebase - a production CLI/agent system with 50 crates and 787 Rust files.

Key Characteristics

  • Edition 2024 with strict Clippy configuration
  • Zero unwrap/expect in non-test code (enforced at workspace level)
  • Tokio async runtime with proper Send + Sync bounds
  • thiserror for library errors, anyhow for application code
  • Flat workspace structure with centralized dependencies

When to Apply

Apply this skill when:

  • Building CLI tools or agent systems in Rust
  • Writing async Rust with Tokio
  • Designing Rust workspace organization
  • Implementing error handling patterns
  • Working on production Rust codebases

Quick Reference

Critical Rules (Must Follow)

RuleDescription
err-no-unwrapNever use unwrap() in non-test code
err-no-expectAvoid expect() in library code
err-thiserror-domainUse thiserror for domain errors
err-context-chainAdd context to errors with .context()

Error Handling

RuleDescription
err-anyhow-applicationUse anyhow::Result for entry points
err-from-deriveUse #[from] for error conversion
err-transparentUse #[error(transparent)] for wrapped errors
err-structured-variantsInclude relevant data in error variants
err-io-resultUse std::io::Result for I/O functions
err-map-err-conversionUse map_err for error conversion
err-doc-errorsDocument error conditions

Organization

RuleDescription
org-workspace-flatFlat workspace with utils subdirectory
org-crate-namingkebab-case directories, project prefix
org-module-visibilityUse pub(crate) for internal APIs
org-test-common-crateShared test utilities crate
org-integration-tests-suiteTests in suite directory
org-feature-modulesFeature-based module organization
org-handlers-subdirHandlers in dedicated subdirectory
org-errors-fileErrors in dedicated file

Component Patterns

RuleDescription
mod-derive-orderConsistent derive macro ordering
mod-async-trait-macroUse #[async_trait] for async traits
mod-trait-boundsSend + Sync + 'static for concurrent traits
mod-extension-trait-suffixExt suffix for extension traits
mod-builder-patternBuilder pattern for complex config
mod-type-alias-complexType aliases for complex generics
mod-impl-block-orderConsistent impl block ordering
mod-generic-constraintsWhere clauses for complex bounds
mod-newtype-patternNewtypes for type safety
mod-struct-visibilityPrivate fields with public constructor
mod-serde-renameSerde rename for wire format
mod-jsonschema-deriveJsonSchema for API types

Naming Conventions

RuleDescription
name-async-no-suffixNo _async suffix for async functions
name-try-prefix-fallibletry_ prefix for fallible constructors
name-with-prefix-builderwith_ prefix for builder methods
name-handler-suffixHandler suffix for handlers
name-error-suffixError suffix for error types
name-result-type-aliasCrate-specific Result alias
name-const-env-var_ENV_VAR suffix for env constants
name-request-responseRequest/Response type pairing
name-options-suffixOptions suffix for config bundles
name-info-suffixInfo suffix for read-only data
name-provider-suffixProvider suffix for services
name-client-suffixClient suffix for API clients
name-manager-suffixManager suffix for lifecycle mgmt
name-bool-is-prefixis_/has_/should_ for booleans
name-plural-collectionsPlural names for collections

Style

RuleDescription
style-import-granularityOne item per use statement
style-deny-stdoutDeny stdout/stderr in libraries
style-inline-format-argsInline format arguments
style-module-docsModule-level documentation
style-expect-reason#[expect] with reason for lints
style-cfg-test-moduleUnit tests in mod tests

Cross-Crate

RuleDescription
cross-workspace-lintsWorkspace-level lint config
cross-workspace-depsCentralized dependency versions

Example: Proper Error Handling

use thiserror::Error;
use anyhow::Context;

// Domain error with thiserror
#[derive(Debug, Error)]
pub enum ConfigError {
    #[error("failed to read config file: {path}")]
    ReadFailed {
        path: PathBuf,
        #[source]
        source: std::io::Error,
    },

    #[error(transparent)]
    Parse(#[from] toml::de::Error),
}

// Library function returns domain error
pub fn load_config(path: &Path) -> Result<Config, ConfigError> {
    let content = fs::read_to_string(path)
        .map_err(|source| ConfigError::ReadFailed {
            path: path.to_owned(),
            source,
        })?;
    toml::from_str(&content).map_err(Into::into)
}

// Application code uses anyhow with context
fn main() -> anyhow::Result<()> {
    let config = load_config(Path::new("config.toml"))
        .context("failed to load configuration")?;
    run(config).await
}

Source

Patterns extracted from OpenAI Codex (codex-rs/ subdirectory) - a production Rust codebase with 50 crates and 787 Rust files.

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

37.74%
按下载量换算170

Claude

31.72%
按下载量换算143

Cursor

17.56%
按下载量换算79

Gemini CLI

8.99%
按下载量换算41

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

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

来源信息

继续浏览同类 Skills