kicad-gen
SkillDocs & knowledgeGenerate KiCad schematics from a Circuit Weaver design.yaml or a project's own checked-in generator. Use for large, repetitive, or machine-synchronized designs. Prefer the Circuit Weaver CLI unless the project actually contains and documents its own generation scripts.
Use kicad-gen in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add kicad-gen and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the kicad-gen skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by mattpainter701/kicad_automations in project-skills/kicad-gen/SKILL.md and read by Ahel’s review.
When to Use
- BGA/QFN devices with 100+ pins -- manual placement is error-prone
- Multi-sheet designs where repetitive structure can be scripted
- Pin maps derived from datasheet tables or CSV (auto-assign ball-to-net)
- Schematic must stay synchronized with a separate spec or pin database
Workflow
1. Define components and pin maps in design.yaml
2. Generate sheets -> circuit-weaver generate
3. Require real ERC -> circuit-weaver generate --require-kicad
4. Review in KiCad -> open .kicad_sch files, run Update PCB from Schematic
Give each block a stable unique id and functional section. Circuit Weaver
preserves explicit sections as separate sheets, keeps generated support parts
with their owning block, and disambiguates sanitized sheet filenames. Read the
root and child paths from artifact_manifest.json; never guess main.kicad_sch.
Project-Specific Setup
Spec: ${SPEC_PATH}
Output directory: ${OUTPUT_DIR}
If a project supplies custom scripts, record their checked-in paths here. Do not
invoke scripts/generate_schematics.py or scripts/pin_maps.py unless those
files exist in the current project.
Edit this file to record:
- Which ICs are generated vs hand-drawn
- Pin coverage per IC (total pins, mapped pins, no-connect pins)
- How to re-run generation after spec changes
KiCad Format Rules (Critical)
_0_1/_1_1sub-units REQUIRED -- SnapEDA flat format fails silently without themlib_idin schematic instances: bare names (nolibrary:prefix)- Power symbols: bare
lib_id(e.g."VCC"not"power:VCC"),(power)flag required - 1.27mm grid: all pin endpoints, labels, wires must snap to
round(val / 1.27) * 1.27 - Wire stubs REQUIRED between pins and labels -- labels at pin endpoints without wires do not reliably connect
- Version
20231120(KiCad 8+) for per-symbolinstancesblocks
Regeneration Protocol
# Transactionally regenerate and require the exact final hierarchy to pass a
# real installed kicad-cli ERC run.
circuit-weaver generate "${SPEC_PATH}" --output "${OUTPUT_DIR}" --require-kicad
# Then in KiCad GUI: Tools -> Update PCB from Schematic
Read valid, kicad_verified, verification_status, and erc from
artifact_manifest.json. Internal validation alone is not real KiCad
verification. If --require-kicad cannot run or ERC fails, generation fails;
do not claim release-quality artifacts.
Never hand-edit generated .kicad_sch files -- changes will be overwritten on next generation.
Pin Coverage Tracking
| IC | Total pins | Mapped | No-connect | Coverage |
|---|---|---|---|---|
| (fill in) |
Common Issues
Silent connection failure: Labels placed directly on pin endpoints without a wire stub. Fix: generate wire + label pairs, not label-only.
PCB import failure: Version mismatch -- KiCad 7 expects root-level symbol_instances;
KiCad 8+ uses per-symbol instances blocks. Use version 20231120 for KiCad 8+ compatibility.
Symbol not recognized: SnapEDA flat format lacks _0_1/_1_1 sub-unit notation.
Rebuild the symbol from scratch using the KiCad S-expression format.
Signals
- GitHub stars
- 20
- Forks
- 3
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
kicad-gen- Source
- github.com/mattpainter701/kicad_automations
github.com/mattpainter701/kicad_automations
More in Docs & knowledge
Skill · mattpocock
More in Docs & knowledgecanvas-design
Skill · anthropics
More in Docs & knowledgedoc-coauthoring
Skill · anthropics
More in Docs & knowledgepopups
Skill · coreyhaines31
More in Docs & knowledgewriting-for-agents
Skill · mattpocock
More in Docs & knowledgespec-driven-development
Skill · addyosmani
More in Docs & knowledge