Rust Doc Search
Helper skill providing documentation search strategies and commands.
Local Search
bash
# Open project docs in browser cargo doc --open --no-deps # Search type/trait/fn in generated docs grep -r "pub struct\|pub trait\|pub fn" target/doc/ # Find examples in project find . -name "*.rs" -path "*/examples/*" | xargs grep -l "PATTERN" # Check crate version grep "CRATE_NAME" Cargo.toml # List crate features grep -A 20 "\[features\]" Cargo.toml
Crate Source Search
bash
# Find crate manifest path cargo metadata --format-version 1 | jq '.packages[] | select(.name=="CRATE") | .manifest_path' # Search in cached crate source grep -rn "PATTERN" ~/.cargo/registry/src/*/CRATE-*/src/
Online Sources
| Source | URL | Use For |
|---|---|---|
| docs.rs | docs.rs/CRATE/VERSION | API docs, type signatures |
| crates.io | crates.io/crates/CRATE | README, versions, links |
| lib.rs | lib.rs/crates/CRATE | Alternatives, comparisons |
| GitHub | repo issues/examples | Real-world usage, edge cases |
Search Strategy Matrix
| Need | Primary | Fallback |
|---|---|---|
| API signature | docs.rs | cargo doc |
| Usage example | examples/ folder | GitHub search |
| Why X fails | GitHub issues | web search error message |
| X vs Y | lib.rs | blog posts |
| Internal details | ~/.cargo/registry source | GitHub source |
| Trait bounds | cargo doc type page | docs.rs |
| Feature flags | Cargo.toml | docs.rs feature list |