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 element14git 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/element14)<a href="https://agentmods.dev/skills/aklofas/kicad-happy/element14"><img src="https://agentmods.dev/badge/skills/aklofas/kicad-happy/element14/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/element14"><img src="https://agentmods.dev/badge/skills/aklofas/kicad-happy/element14.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 4 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 52 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 54 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.
- medium Data Exfiltration · line 59 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 76 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
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.00188 | $0.02874 |
| Opus 5 | $0.00094 | $0.01437 |
| Sonnet 5 | $0.00038 | $0.00575 |
| Haiku 4.5 | $0.00019 | $0.00287 |
Grade A, and why
element14 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 10d 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.
- **OS-agnostic** — uses `requests` → `urllib` → `playwright` fallback chain How it starts
The opening of the file, as written. The whole thing — 274 lines — stays where its author put it; the contents beside it link to each section on GitHub.
element14 / Newark / Farnell — Component Search, Datasheets & Ordering
Related Skills
| Skill | Purpose |
|---|---|
kicad |
Schematic analysis — extracts MPNs for part lookup |
bom |
BOM management — orchestrates sourcing across distributors |
spice |
Uses element14 parametric data for behavioral SPICE models |
One API covers three regional storefronts — same catalog, same datasheets, only pricing/stock vary by region:
| Storefront | Region | Store ID |
|---|---|---|
| Newark | North America | www.newark.com |
| Farnell | UK / Europe | uk.farnell.com |
| element14 | Asia-Pacific | au.element14.com |
For BOM management and export workflows, see bom.
Key Differences from DigiKey/Mouser
- Simple auth — API key as a query parameter, no OAuth flow
- Free API key — register at partner.element14.com, courtesy usage allowance
- Global coverage — same API covers US (Newark), EU (Farnell), APAC (element14)
- Unprotected PDFs — datasheets hosted on farnell.com CDN, download freely with no bot protection
- Datasheet URL in API response —
responseGroup=mediumincludesdatasheets[].url
API Credential Setup
- Register at partner.element14.com/member/register
- Free account — just username, email, password. No credit card needed.
- Provides a "courtesy usage allowance" (2 calls/sec, 1,000 calls/day — sufficient for normal use)
- Register an application — after logging in, go to My API Keys and click "Get API Keys"
- App name: anything (e.g., "kicad-happy")
- Type: "Desktop application"
- Users: "1-10"
- Commercial: No
- Advertising: No
- Check "Issue a new key for Product Search API" → select "Basic" tier
- Agree to Terms of Service and click "Register Application"
- Copy your API key — a 24-character alphanumeric string shown on the My API Keys page
- Set the environment variable
ELEMENT14_API_KEYbefore running the scripts:
If credentials are stored in a central secrets file (e.g.,export ELEMENT14_API_KEY=your_api_key_here~/.config/secrets.env), load them first:export $(grep -v '^#' ~/.config/secrets.env | grep -v '^$' | xargs)
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.
- 10d ago First seen · 274 lines · 188 tokens per session scan A 4c1b2b0484e1
element14 is a skill published in the GitHub repository aklofas/kicad-happy (1,166 stars, last pushed 8d ago), licensed MIT. It adds 188 tokens to every session and 2,874 once invoked, about $0.0009 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
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.".
using-kicad
Use when starting any conversation involving electronics, KiCad, PCB design, schematic capture, circuit design, or EDA tasks.
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.
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"…
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…