Install
$ agentstack add skill-avatarsd-kiskill-kicad-layout ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Headless layout / autorouting
Engine: $(kx root)/kicad_lib/layout.py (python API: PYTHONPATH=; any freerouting-*-linux-x64 in .tools is auto-detected, newest wins). Worked end-to-end example: tests/test_layout.py (scratch board with outline + 2 netted footprints → 9 routed segments).
The chain
layout.autoroute(pcbin, pcbout, passes=20) = dsnexport (pcbnew python in the KiCad flatpak: pcbnew.ExportSpecctraDSN — headless, verified 10.0) → route (.tools/freerouting-2.2.4-linux-x64/bin/freerouting, BUNDLED JRE — no system java; classic CLI -de in.dsn -do out.ses -mp N -da) → sesimport (pcbnew.ImportSpecctraSES + SaveBoard)
Returns segment/via counts. Bootstrap if .tools missing: download freerouting-X-linux-x64.zip from github freerouting/freerouting releases, unzip into .tools/ (no root needed).
Preconditions (or DSN export is meaningless)
- Edge.Cuts outline present (closed).
- Pads carry nets. Update-PCB-from-Schematic normally fills them; when
building boards programmatically, append (net "NAME") to each pad — pcb format 20260206 (KiCad 10) keys nets BY NAME, no numeric id (old (net 1 "N1") style is normalized on import, harmless).
- Placement matters more than the router: group by schematic function,
decoupling caps adjacent, connectors at edges (rule canon).
After routing — never skip
kicad-cli pcb drc --severity-allset-diff vs pre-route baseline.- Render F.Cu/B.Cu/Edge.Cuts → PNG → look (kicad-review pixel diff).
- pcbnew rewrites the file wholesale on SES import — commit the
pre-route board first, diff after.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: AvatarSD
- Source: AvatarSD/KiSkill
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.