/rust-skill-creator
Use when creating skills for Rust crates or std library documentation. Keywords: create rust skill, create crate skill, create std skill, 创建 rust skill, 创建 crate skill, 创建 std skill, 动态 rust skill, 动态 crate skill, skill for tokio, skill for serde, skill for axum, generate rust
$ npx -y skills add zhanghandong/rust-skills --skill rust-skill-creator --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/rust-skill-creator
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use when creating skills for Rust crates or std library documentation. Keywords: create rust skill, create crate skill, create std skill, 创建 rust skill, 创建 crate skill, 创建 std skill, 动态 rust skill, 动态 crate skill, skill for tokio, skill for serde, skill for axum, generate rust
SKILL.md
rust-skill-creator.SKILL.mdname: rust-skill-creator
description: "Use when creating skills for Rust crates or std library documentation. Keywords: create rust skill, create crate skill, create std skill, 创建 rust skill, 创建 crate skill, 创建 std skill, 动态 rust skill, 动态 crate skill, skill for tokio, skill for serde, skill for axum, generate rust skill, rust 技能, crate 技能, 从文档创建skill, from docs create skill"
argument-hint: "<crate_name|std::module>"
context: fork
agent: general-purpose
Rust Skill Creator
> **Version:** 2.1.0 | **Last Updated:** 2025-01-27 > > Create dynamic skills for Rust crates and std library documentation.
When to Use
This skill handles requests to create skills for:
- Third-party crates (tokio, serde, axum, etc.)
- Rust standard library (std::sync, std::marker, etc.)
- Any Rust documentation URL
Execution Mode Detection
**CRITICAL: Check if related commands/skills are available.**
This skill relies on:
- `/create-llms-for-skills` command
- `/create-skills-via-llms` command
---
Agent Mode (Plugin Install)
**When the commands above are available (full plugin installation):**
Workflow
1. Identify the Target
| User Request | Target Type | URL Pattern | |--------------|-------------|-------------| | "create tokio skill" | Third-party crate | `docs.rs/tokio/latest/tokio/` | | "create Send trait skill" | Std library | `doc.rust-lang.org/std/marker/trait.Send.html` | | "create skill from URL" + URL | Custom URL | User-provided URL |
2. Execute the Command
Use the `/create-llms-for-skills` command:
/create-llms-for-skills <url> [requirements]
**Examples:**
# For third-party crate
/create-llms-for-skills https://docs.rs/tokio/latest/tokio/
# For std library
/create-llms-for-skills https://doc.rust-lang.org/std/marker/trait.Send.html
# With specific requirements
/create-llms-for-skills https://docs.rs/axum/latest/axum/ "Focus on routing and extractors"
3. Follow-up with Skill Creation
After llms.txt is generated, use:
/create-skills-via-llms <crate_name> <llms_path> [version]
---
Inline Mode (Skills-only Install)
**When the commands above are NOT available, create skills manually:**
Step 1: Identify Target and Construct URL
| Target | URL Template | |--------|--------------| | Crate overview | `https://docs.rs/{crate}/latest/{crate}/` | | Crate module | `https://docs.rs/{crate}/latest/{crate}/{module}/` | | Std trait | `https://doc.rust-lang.org/std/{module}/trait.{Name}.html` | | Std struct | `https://doc.rust-lang.org/std/{module}/struct.{Name}.html` | | Std module | `https://doc.rust-lang.org/std/{module}/index.html` |
Step 2: Fetch Documentation
# Using agent-browser CLI
agent-browser open "<documentation_url>"
agent-browser get text ".docblock"
agent-browser close
**Or with WebFetch fallback:**
WebFetch("<documentation_url>", "Extract API documentation including types, functions, and examples")Step 3: Create Skill Directory
mkdir -p ~/.claude/skills/{crate_name}
mkdir -p ~/.claude/skills/{crate_name}/referencesStep 4: Generate SKILL.md
Create `~/.claude/skills/{crate_name}/SKILL.md` with this template:
---
name: {crate_name}
description: "Documentation for {crate_name} crate. Keywords: {keywords}"
---
# {Crate Name}
> **Version:** {version} | **Source:** docs.rs
## Overview
{Brief description from documentation}
## Key Types
### {Type1}
{Description and usage}
### {Type2}
{Description and usage}
## Common Patterns
{Usage patterns extracted from documentation}
## Examples
```rust
{Example code from documentation}Documentation
- `./references/overview.md` - Main overview
- `./references/{module}.md` - Module documentation
Links
- [docs.rs](https://docs.rs/{crate})
- [crates.io](https://crates.io/crates/{crate})
### Step 5: Generate Reference Files
For each major module or type, create a reference file:
```bash
# Fetch and save module documentation
agent-browser open "https://docs.rs/{crate}/latest/{crate}/{module}/"
agent-browser get text ".docblock" > ~/.claude/skills/{crate_name}/references/{module}.md
agent-browser closeStep 6: Verify Skill
# Check skill structure
ls -la ~/.claude/skills/{crate_name}/
cat ~/.claude/skills/{crate_name}/SKILL.md---
URL Construction Helper
| Target | URL Template | |--------|--------------| | Crate overview | `https://docs.rs/{crate}/latest/{crate}/` | | Crate module | `https://docs.rs/{crate}/latest/{crate}/{module}/` | | Std trait | `https://doc.rust-lang.org/std/{module}/trait.{Name}.html` | | Std struct | `https://doc.rust-lang.org/std/{module}/struct.{Name}.html` | | Std module | `https://doc.rust-lang.org/std/{module}/index.html` |
Common Std Library Paths
| Item | Path | |------|------| | Send, Sync, Copy, Clone | `std/marker/trait.{Name}.html` | | Arc, Mutex, RwLock | `std/sync/struct.{Name}.html` | | Rc, Weak | `std/rc/struct.{Name}.html` | | RefCell, Cell | `std/cell/struct.{Name}.html` | | Box | `std/boxed/struct.Box.html` | | Vec | `std/vec/struct.Vec.html` | | String | `std/string/struct.String.html` | | Option | `std/option/enum.Option.html` | | Result | `std/result/enum.Result.html` |
---
Example Interactions
Example 1: Create Crate Skill (Agent Mode)
User: "Create a dynamic skill for tokio"
Claude:
1. Identify: Third-party crate "tokio"
2. Execute: /create-llms-for-skills https://docs.rs/tokio/latest/tokio/
3. Wait for llms.txt generation
4. Execute: /create-skills-via-llms tokio ~/tmp/{timestamp}-tokio-llms.txtExample 2: Create Crate Skill (Inline Mode)
User: "Create a dynamic skill for tokio"
Claude:
1. Identify: Third-party crate "tokio"
2. Fetch: agent-browser open "https://docs.rs/tokio/latest/tokio/"
3. Extract documentation
4. Create: ~/.claude/skills/tokio/SKILL.md
5. Create: ~/.claude/skills/tokio/references/
6. Save reference files for key modules (sync, task, runtime, etc.)
E
Read more
name: rust-skill-creator description: "Use when creating skills for Rust crates or std library documentation. Keywords: create rust skill, create crate skill, create std skill, 创建 rust skill, 创建 crate skill, 创建 std skill, 动态 rust skill, 动态 crate skill, skill for tokio, skill for serde, skill for axum, generate rust skill, rust 技能, crate 技能, 从文档创建skill, from docs create skill" argument-hint: "<crate_name|std::module>" context: fork agent: general-purpose
Rust Skill Creator
> **Version:** 2.1.0 | **Last Updated:** 2025-01-27 > > Create dynamic skills for Rust crates and std library documentation.
When to Use
This skill handles requests to create skills for:
- Third-party crates (tokio, serde, axum, etc.)
- Rust standard library (std::sync, std::marker, etc.)
- Any Rust documentation URL
Execution Mode Detection
**CRITICAL: Check if related commands/skills are available.**
This skill relies on:
- `/create-llms-for-skills` command
- `/create-skills-via-llms` command
---
Agent Mode (Plugin Install)
**When the commands above are available (full plugin installation):**
Workflow
1. Identify the Target
| User Request | Target Type | URL Pattern | |--------------|-------------|-------------| | "create tokio skill" | Third-party crate | `docs.rs/tokio/latest/tokio/` | | "create Send trait skill" | Std library | `doc.rust-lang.org/std/marker/trait.Send.html` | | "create skill from URL" + URL | Custom URL | User-provided URL |
2. Execute the Command
Use the `/create-llms-for-skills` command:
/create-llms-for-skills <url> [requirements]
**Examples:**
# For third-party crate /create-llms-for-skills https://docs.rs/tokio/latest/tokio/ # For std library /create-llms-for-skills https://doc.rust-lang.org/std/marker/trait.Send.html # With specific requirements /create-llms-for-skills https://docs.rs/axum/latest/axum/ "Focus on routing and extractors"
3. Follow-up with Skill Creation
After llms.txt is generated, use:
/create-skills-via-llms <crate_name> <llms_path> [version]
---
Inline Mode (Skills-only Install)
**When the commands above are NOT available, create skills manually:**
Step 1: Identify Target and Construct URL
| Target | URL Template | |--------|--------------| | Crate overview | `https://docs.rs/{crate}/latest/{crate}/` | | Crate module | `https://docs.rs/{crate}/latest/{crate}/{module}/` | | Std trait | `https://doc.rust-lang.org/std/{module}/trait.{Name}.html` | | Std struct | `https://doc.rust-lang.org/std/{module}/struct.{Name}.html` | | Std module | `https://doc.rust-lang.org/std/{module}/index.html` |
Step 2: Fetch Documentation
# Using agent-browser CLI agent-browser open "<documentation_url>" agent-browser get text ".docblock" agent-browser close
**Or with WebFetch fallback:**
WebFetch("<documentation_url>", "Extract API documentation including types, functions, and examples")Step 3: Create Skill Directory
mkdir -p ~/.claude/skills/{crate_name}
mkdir -p ~/.claude/skills/{crate_name}/referencesStep 4: Generate SKILL.md
Create `~/.claude/skills/{crate_name}/SKILL.md` with this template:
---
name: {crate_name}
description: "Documentation for {crate_name} crate. Keywords: {keywords}"
---
# {Crate Name}
> **Version:** {version} | **Source:** docs.rs
## Overview
{Brief description from documentation}
## Key Types
### {Type1}
{Description and usage}
### {Type2}
{Description and usage}
## Common Patterns
{Usage patterns extracted from documentation}
## Examples
```rust
{Example code from documentation}Documentation
- `./references/overview.md` - Main overview
- `./references/{module}.md` - Module documentation
Links
- [docs.rs](https://docs.rs/{crate})
- [crates.io](https://crates.io/crates/{crate})
### Step 5: Generate Reference Files
For each major module or type, create a reference file:
```bash
# Fetch and save module documentation
agent-browser open "https://docs.rs/{crate}/latest/{crate}/{module}/"
agent-browser get text ".docblock" > ~/.claude/skills/{crate_name}/references/{module}.md
agent-browser closeStep 6: Verify Skill
# Check skill structure
ls -la ~/.claude/skills/{crate_name}/
cat ~/.claude/skills/{crate_name}/SKILL.md---
URL Construction Helper
| Target | URL Template | |--------|--------------| | Crate overview | `https://docs.rs/{crate}/latest/{crate}/` | | Crate module | `https://docs.rs/{crate}/latest/{crate}/{module}/` | | Std trait | `https://doc.rust-lang.org/std/{module}/trait.{Name}.html` | | Std struct | `https://doc.rust-lang.org/std/{module}/struct.{Name}.html` | | Std module | `https://doc.rust-lang.org/std/{module}/index.html` |
Common Std Library Paths
| Item | Path | |------|------| | Send, Sync, Copy, Clone | `std/marker/trait.{Name}.html` | | Arc, Mutex, RwLock | `std/sync/struct.{Name}.html` | | Rc, Weak | `std/rc/struct.{Name}.html` | | RefCell, Cell | `std/cell/struct.{Name}.html` | | Box | `std/boxed/struct.Box.html` | | Vec | `std/vec/struct.Vec.html` | | String | `std/string/struct.String.html` | | Option | `std/option/enum.Option.html` | | Result | `std/result/enum.Result.html` |
---
Example Interactions
Example 1: Create Crate Skill (Agent Mode)
User: "Create a dynamic skill for tokio"
Claude:
1. Identify: Third-party crate "tokio"
2. Execute: /create-llms-for-skills https://docs.rs/tokio/latest/tokio/
3. Wait for llms.txt generation
4. Execute: /create-skills-via-llms tokio ~/tmp/{timestamp}-tokio-llms.txtExample 2: Create Crate Skill (Inline Mode)
User: "Create a dynamic skill for tokio" Claude: 1. Identify: Third-party crate "tokio" 2. Fetch: agent-browser open "https://docs.rs/tokio/latest/tokio/" 3. Extract documentation 4. Create: ~/.claude/skills/tokio/SKILL.md 5. Create: ~/.claude/skills/tokio/references/ 6. Save reference files for key modules (sync, task, runtime, etc.)
E
AI-powered Rust development assistant with meta-cognition framework
Other skills on rust-skills.
- /coding-guidelines
Use when asking about Rust code style or best practices. Keywords: naming, formatting, comment, clippy, rustfmt, lint, code style, best practice, P.NAM, G.FMT, code review, naming convention, variable naming, function naming, type naming, 命名规范, 代码风格, 格式化, 最佳实践, 代码审查, 怎么命名
Open skill - /core-actionbook
Internal support skill for actionbook MCP selectors used by Rust documentation research workflows. Use only when another rust-skills workflow explicitly requests actionbook-backed selectors.
Open skill - /core-agent-browser
Internal support skill for agent-browser CLI workflows used by rust-learner, docs-researcher, and crate-researcher. Use only when browser automation is explicitly required.
Open skill - /core-dynamic-skills
Internal command support for dynamic Rust crate skill management. Use only when explicitly invoked by /sync-crate-skills, /clean-crate-skills, or /update-crate-skill.
Open skill - /core-fix-skill-docs
Internal maintenance support for checking and fixing generated Rust skill documentation references. Use only when explicitly invoked by /fix-skill-docs.
Open skill - /domain-cli
Use when building CLI tools. Keywords: CLI, command line, terminal, clap, structopt, argument parsing, subcommand, interactive, TUI, ratatui, crossterm, indicatif, progress bar, colored output, shell completion, config file, environment variable, 命令行, 终端应用, 参数解析
Open skill

