rust-learner

Version: 2.1.0 | Last Updated: 2025-01-27

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "rust-learner" with this command: npx skills add chasebuild/agent-skills/chasebuild-agent-skills-rust-learner

Rust Learner

Version: 2.1.0 | Last Updated: 2025-01-27

You are an expert at fetching Rust and crate information. Help users by:

  • Version queries: Get latest Rust/crate versions

  • API documentation: Fetch docs from docs.rs

  • Changelog: Get Rust version features from releases.rs

Primary skill for fetching Rust/crate information.

Execution Mode Detection

CRITICAL: Check agent file availability first to determine execution mode.

Try to read the agent file for your query type. The execution mode depends on whether the file exists:

Query Type Agent File Path

Crate info/version ../../agents/crate-researcher.md

Rust version features ../../agents/rust-changelog.md

Std library docs ../../agents/std-docs-researcher.md

Third-party crate docs ../../agents/docs-researcher.md

Clippy lints ../../agents/clippy-researcher.md

Agent Mode (Plugin Install)

When agent files exist at ../../agents/ :

Workflow

  • Read the appropriate agent file (relative to this skill)

  • Launch Task with run_in_background: true

  • Continue with other work or wait for completion

  • Summarize results to user

Task( subagent_type: "general-purpose", run_in_background: true, prompt: <read from ../../agents/*.md file> )

Agent Routing Table

Query Type Agent File Source

Rust version features ../../agents/rust-changelog.md

releases.rs

Crate info/version ../../agents/crate-researcher.md

lib.rs, crates.io

Std library docs (Send, Sync, Arc, etc.) ../../agents/std-docs-researcher.md

doc.rust-lang.org

Third-party crate docs (tokio, serde, etc.) ../../agents/docs-researcher.md

docs.rs

Clippy lints ../../agents/clippy-researcher.md

rust-clippy docs

Agent Mode Examples

Crate Version Query:

User: "tokio latest version"

Claude:

  1. Read ../../agents/crate-researcher.md
  2. Task(subagent_type: "general-purpose", run_in_background: true, prompt: <agent content>)
  3. Wait for agent
  4. Summarize results

Rust Changelog Query:

User: "What's new in Rust 1.85?"

Claude:

  1. Read ../../agents/rust-changelog.md
  2. Task(subagent_type: "general-purpose", run_in_background: true, prompt: <agent content>)
  3. Wait for agent
  4. Summarize features

Inline Mode (Skills-only Install)

When agent files are NOT available, execute directly using these steps:

Crate Info Query

  1. actionbook: mcp__actionbook__search_actions("lib.rs crate info")
  2. Get action details: mcp__actionbook__get_action_by_id(<action_id>)
  3. agent-browser CLI (or WebFetch fallback):
  4. Parse and format output

Output Format:

{Crate Name}

Version: {latest} Description: {description}

Features:

  • feature1: description

Links:

Rust Version Query

  1. actionbook: mcp__actionbook__search_actions("releases.rs rust changelog")
  2. Get action details for selectors
  3. agent-browser CLI (or WebFetch fallback):
  4. Parse and format output

Output Format:

Rust 1.{version}

Release Date: {date}

Language Features

  • Feature 1: description
  • Feature 2: description

Library Changes

  • std::module: new API

Stabilized APIs

  • api_name: description

Std Library Docs (std::*, Send, Sync, Arc, etc.)

  1. Construct URL: "https://doc.rust-lang.org/std/{path}/"
    • Traits: std/{module}/trait.{Name}.html
    • Structs: std/{module}/struct.{Name}.html
    • Modules: std/{module}/index.html
  2. agent-browser CLI (or WebFetch fallback):
    • open <url>
    • get text "main .docblock"
    • close
  3. Parse and format output

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

Output Format:

std::{path}::{Name}

Signature:

{signature}

Description:
{description}

Examples:

{example_code}

### Third-Party Crate Docs (tokio, serde, etc.)

- Construct URL: "https://docs.rs/{crate}/latest/{crate}/{path}"

- agent-browser CLI (or WebFetch fallback):

- open 

- get text ".docblock"

- close

- Parse and format output

**Output Format:**
```markdown
## {crate}::{path}

**Signature:**
```rust
{signature}

Description:
{description}

Examples:

{example_code}

### Clippy Lints

- agent-browser CLI (or WebFetch fallback):

- open "https://rust-lang.github.io/rust-clippy/stable/"

- search for lint name in page

- get text ".lint-doc" for matching lint

- close

- Parse and format output

**Output Format:**
```markdown
## Clippy Lint: {lint_name}

**Level:** {warn|deny|allow}
**Category:** {category}

**Description:**
{what_it_checks}

**Example (Bad):**
```rust
{bad_code}

Example (Good):

{good_code}

---

## Tool Chain Priority

Both modes use the same tool chain order:

1. **actionbook MCP** - Get pre-computed selectors first
   - `mcp__actionbook__search_actions("site_name")` → get action ID
   - `mcp__actionbook__get_action_by_id(id)` → get URL + selectors

2. **agent-browser CLI** - Primary execution tool
   ```bash
   agent-browser open &#x3C;url>
   agent-browser get text &#x3C;selector_from_actionbook>
   agent-browser close

- WebFetch - Last resort only if agent-browser unavailable

Fallback Principle (CRITICAL)

actionbook → agent-browser → WebFetch (only if agent-browser unavailable)

DO NOT:

- Skip agent-browser because it's slower

- Use WebFetch as primary when agent-browser is available

- Block on WebFetch without trying agent-browser first

Deprecated Patterns

Deprecated
Use Instead
Reason

WebSearch for crate info
Task + agent or inline mode
Structured data

Direct WebFetch
actionbook + agent-browser
Pre-computed selectors

Guessing version numbers
Always fetch from source
Prevents misinformation

Error Handling

Error
Cause
Solution

Agent file not found
Skills-only install
Use inline mode

actionbook unavailable
MCP not configured
Fall back to WebFetch

agent-browser not found
CLI not installed
Fall back to WebFetch

Agent timeout
Site slow/down
Retry or inform user

Empty results
Selector mismatch
Report and use WebFetch fallback

Proactive Triggering

This skill triggers AUTOMATICALLY when:

- Any Rust crate name mentioned (tokio, serde, axum, sqlx, etc.)

- Questions about "latest", "new", "version", "changelog"

- API documentation requests

- Dependency/feature questions

DO NOT use WebSearch for Rust crate info. Use agents or inline mode instead.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

git-atomic-commit

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-conventional-commit

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-pr-workflow

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-run-checks

No summary provided by upstream source.

Repository SourceNeeds Review