discover-crate

Finds and scores Rust crates on crates.io for embedded-hal sensor devices.

Updated Mar 15, 2026
One-click install
npx skills add https://github.com/mohankumargupta/skills --skill discover-crate-mohankumargupta
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: discover-crate
Source: https://github.com/mohankumargupta/skills/tree/main/discover-crate
Command: npx skills add https://github.com/mohankumargupta/skills --skill discover-crate-mohankumargupta

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jq, curl, git, cargo-info, and includes scripts (resource) components.

What problem does it solve? Selecting a suitable Rust driver crate for an embedded sensor requires manually checking crates.io for embedded-hal v1 compatibility, maintenance freshness, and adoption, which is slow and error-prone. ## Core Features & Use Cases - Sensor Categorization: Classifies a device into a tiered sensor taxonomy (environment, motion, vision, etc.) and records it in a category document. - Scored Crate Discovery: Searches crates.io, filters for embedded-hal and embedded-hal-async v1 dependencies, and scores candidates by freshness and download counts. - Source Fetching: Clones the winning crate's GitHub repository with sparse checkout of Cargo.toml, src/, and examples/ for downstream code generation. - Use Case: Given a device like bmp280, produce a scored comparison table of candidate crates, clone the best crate's source, and set up an espforge feature branch for driver integration. ## Quick Start Ask the assistant to run the discover-crate skill for your device, for example: find the best Rust crate for the bmp280 sensor.

Frequently Asked Questions about discover-crate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find a Rust crate for an embedded sensor?▼

Run the findcrates.sh script with the sensor name to search crates.io and list candidates with versions, downloads, and update dates. Each candidate is then scored on embedded-hal v1 support, freshness, and adoption, and the highest scorer is selected.

How are crates.io crates scored for embedded-hal compatibility?▼

Crates earn 10 points each for depending on embedded-hal v1 and embedded-hal-async v1, 2 points if updated within the last year, plus downloads divided by 1000. Crates without any embedded-hal v1 dependency are disqualified.

Does this work with crates that only support embedded-hal 0.2?▼

No. Crates depending only on embedded-hal 0.2.x are disqualified during scoring because the criteria require embedded-hal or embedded-hal-async version 1.x. Such crates receive a DQ mark and are skipped.

What happens if the selected crate has no GitHub repository?▼

The check_crate_source.sh script exits with status 1 when the repository cannot be fetched. This is recorded in the device API document as no upstream source available and is not treated as a failure.

What output files does the crate discovery workflow produce?▼

It produces a device category document, a scored crate comparison document, and optionally a sparse checkout of the selected crate's Cargo.toml, src/, and examples/ under an artifacts directory, plus a feedback file.