kicad-happy is a collection of coding-agent skills and tools that inspect KiCad schematics, PCB layouts, and Gerber files for electronics design issues. It is for hardware designers who want automated reviews, simulations, datasheet checks, component sourcing, and fabrication preparation. The catalogue entries are its agent skills, rules, plugin, and instruction for integrating this workflow with coding agents.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add aklofas/kicad-happy --skill mousergit clone --depth 1 https://github.com/aklofas/kicad-happyWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/aklofas/kicad-happy/mouser)<a href="https://agentmods.dev/skills/aklofas/kicad-happy/mouser"><img src="https://agentmods.dev/badge/skills/aklofas/kicad-happy/mouser/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/aklofas/kicad-happy/mouser"><img src="https://agentmods.dev/badge/skills/aklofas/kicad-happy/mouser.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 37 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 39 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00125 | $0.02990 |
| Opus 5 | $0.00063 | $0.01495 |
| Sonnet 5 | $0.00025 | $0.00598 |
| Haiku 4.5 | $0.00013 | $0.00299 |
Grade A, and why
mouser scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
Mouser's `DataSheetUrl` field points to Mouser-hosted URLs (`mouser.com/datasheet/...`). These URLs **block automated downloads** — they return an HTML "Access denied" page when fetched with Python/curl/wget, even with b How it starts
The opening of the file, as written. The whole thing — 266 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Mouser Electronics Parts Search & Analysis
Related Skills
| Skill | Purpose |
|---|---|
kicad |
Schematic analysis — extracts MPNs for part lookup |
bom |
BOM management — orchestrates sourcing across distributors |
digikey |
Primary prototype source (prefer for datasheets — direct PDF links) |
spice |
Uses Mouser parametric data for behavioral SPICE models |
Mouser is the secondary source for prototype orders — use when DigiKey is out of stock or has worse pricing. For production orders, see lcsc/jlcpcb. For BOM management and export workflows, see bom. For datasheets, prefer DigiKey's API (direct PDF links) — Mouser blocks automated PDF downloads.
API Credential Setup
Mouser uses simple API key authentication — no OAuth, no tokens, no callback URLs. The Search API key is a UUID passed as a query parameter.
Getting Your API Key
- Go to mouser.com → My Mouser → My Account
- Under "APIs" section, click "Manage"
- Register for Search API key — this is the one needed for part lookups and datasheet downloads
- Search API keys may require approval (status shows "pending authorization" initially)
Setting Credentials
Set the environment variable before running the scripts:
export MOUSER_SEARCH_API_KEY=your-search-api-key-uuid
If credentials are stored in a central secrets file (e.g., ~/.config/secrets.env), load them first:
export $(grep -v '^#' ~/.config/secrets.env | grep -v '^$' | xargs)
Mouser Search API Reference
All search endpoints use the Search API key as a query parameter: ?apiKey=<key>. Content-Type is application/json for all POST requests.
V1 Endpoints
Keyword Search
POST /api/v1/search/keyword?apiKey=<key>
{
"SearchByKeywordRequest": {
"keyword": "100nF 0402 ceramic capacitor",
"records": 50,
"startingRecord": 0,
"searchOptions": "InStock"
}
}
searchOptions:"None"|"Rohs"|"InStock"|"RohsAndInStock"records: max 50 per requeststartingRecord: offset for pagination
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 266 lines · 125 tokens per session scan A 2b5188c61271
mouser is a skill published in the GitHub repository aklofas/kicad-happy (1,188 stars, last pushed 10d ago), licensed MIT. It adds 125 tokens to every session and 2,990 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
altium-library
Create and verify Altium schematic symbols (.SchLib) and PCB footprints (.PcbLib) from datasheets and 2D drawings, as code. Use whenever a part library must be made, fixed, measured from a drawing, or checked. Triggers: "make a footprint", "create a symbol", "add this part to the library", "SchLib", "PcbLib"…
circuit-design
Use when designing an electronic circuit from requirements, choosing topology or regulator type, selecting component values, planning protection circuits, or deciding what goes on a board before schematic capture begins. Also use when the user asks "what components do I need" or "how should I power this.".
schematic-plan
Use after circuit-design produces a validated BOM (specs/bom.md) to plan exact component placement coordinates and wiring before schematic capture begins. Pure planning — no file modifications.
using-kicad
Use when starting any conversation involving electronics, KiCad, PCB design, schematic capture, circuit design, or EDA tasks.
altium-pcb-placement
Altium PCB component placement — derive board size, decide rotation for main ICs and connectors, split zones, generate a 1:1 placement plan drawing, then inject real coordinates after approval, and check overlaps. Triggers: "PCB placement", "place the components", "how big should the board be", "board outline", "start…
altium-schematic-review
Review an Altium schematic (.SchDoc) — find unconnected pins, missing footprint links and net errors, then judge each candidate against the datasheet before calling it a defect. Triggers: "review this schematic", "check my circuit", "ERC", "floating pins", "unconnected", "any missing footprints", "does this schematic…