agentleFS
oaslanankaoaslananka/kicad-mcp-pro/.agents/skills/pcb-design/SKILL.md

pcb-design

Skill169 starsChanged 18 days agoMITView on GitHub

Safe KiCad PCB design assistance workflow using KiCad MCP board inspection, placement, routing, stackup, and quality-gate tools.

We split this skill into the rules it gives an agent

13 rules. About 0 are common, 9 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈9

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when an AI agent is asked to inspect, plan, improve, or safely assist with a KiCad PCB layout through KiCad MCP Pro.

    line 8
  2. Distinctive:

    Use this skill for:

    line 14
  3. Distinctive:

    Do not use this skill to claim that a board is production-ready.

    line 23
  4. Distinctive:

    Use only after explaining the planned change and confirming that the workflow is allowed to modify files.

    line 63
  5. Very specific:

    Prefer kicad_set_project over a shell cd when the goal is to select the active KiCad project.

    line 85
  6. Very specific:

    Use dedicated MCP operations for KiCad objects.

    line 86
  7. Very specific:

    Do not rewrite .kicad_pcb or .kicad_sch with sed, regex-based Python, or other ad-hoc text mutation as a fallback when a required MCP tool …

    line 87
  8. Distinctive:

    If the current profile or operating mode does not expose the required MCP operation, stop and report the missing tool plus the required …

    line 88
  9. Very specific:

    If needed, set the active project with kicad_set_project.

    line 107
  10. Distinctive:

    Read-only observations before any mutation

    line 123
  11. Distinctive:

    Stop and report clearly when:

    line 130
  12. Distinctive:

    No KiCad project is active

    line 132
  13. Distinctive:

    Never state that a PCB is ready for fabrication solely because edits were applied.

    line 154

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

PCB Design Skill

Use this skill when an AI agent is asked to inspect, plan, improve, or safely assist with a KiCad PCB layout through KiCad MCP Pro.

This skill is specific to oaslananka/kicad-mcp-pro and should be kept synchronized with docs/tools-reference.generated.md.

When to use

Use this skill for:

  • PCB layout review
  • Board outline, stackup, and design-rule planning
  • Component placement assistance
  • Routing-quality review
  • Schematic-to-PCB synchronization review
  • First-pass power, signal, EMC, and manufacturability sanity checks

Do not use this skill to claim that a board is production-ready. Production readiness requires ERC, DRC, DFM, release package review, and human engineering approval.

Required context

Collect or establish:

  • Active project path with kicad_set_project or current state from kicad_get_project_info
  • Board file and schematic file presence
  • Design intent from project_get_design_intent or project_set_design_intent
  • Board constraints: layer count, stackup, clearances, current, voltage, impedance, and manufacturer limits
  • User permission before any write/destructive board operation

Primary MCP tools

Project and intent

  • kicad_get_project_info
  • kicad_set_project
  • project_get_design_intent
  • project_set_design_intent
  • project_design_workflow
  • project_get_next_action

Read-only PCB inspection

  • pcb_get_board_summary
  • pcb_get_layers
  • pcb_get_stackup
  • pcb_get_design_rules
  • pcb_get_footprints
  • pcb_get_nets
  • pcb_get_net_statistics
  • pcb_get_tracks
  • pcb_get_vias
  • pcb_get_zones
  • pcb_get_ratsnest
  • pcb_net_inspector

PCB modification tools

Use only after explaining the planned change and confirming that the workflow is allowed to modify files.

  • pcb_set_board_outline
  • pcb_set_stackup
  • pcb_set_design_rules
  • pcb_sync_from_schematic
  • pcb_auto_place_by_schematic
  • pcb_auto_place_force_directed
  • pcb_move_footprint
  • pcb_place_component
  • pcb_place_decoupling_caps
  • pcb_add_track
  • pcb_add_tracks_bulk
  • pcb_add_via
  • pcb_add_zone
  • pcb_delete_items
  • pcb_delete_object
  • pcb_refill_zones
  • pcb_save

MCP-first mutation boundary

  • Prefer kicad_set_project over a shell cd when the goal is to select the active KiCad project.
  • Use dedicated MCP operations for KiCad objects. For example, inspect tracks/vias through MCP, remove existing PCB objects with pcb_delete_items or pcb_delete_object, and verify with run_drc.
  • Do not rewrite .kicad_pcb or .kicad_sch with sed, regex-based Python, or other ad-hoc text mutation as a fallback when a required MCP tool is unavailable.
  • If the current profile or operating mode does not expose the required MCP operation, stop and report the missing tool plus the required profile/mode. Let the user explicitly opt into a broader supported MCP surface instead of silently switching to shell mutation.

Quality gates and specialist checks

  • pcb_quality_gate
  • pcb_placement_quality_gate
  • pcb_transfer_quality_gate
  • pcb_stackup_consistency_gate
  • pcb_route_corner_style_gate
  • pcb_visual_qa
  • run_drc
  • check_design_for_manufacture
  • manufacturing_quality_gate
  • project_quality_gate
  • project_revalidate_after_edit

Workflow

  1. Inspect project state with kicad_get_project_info.
  2. If needed, set the active project with kicad_set_project.
  3. Load or define design intent with project_get_design_intent or project_set_design_intent.
  4. Inspect board structure with pcb_get_board_summary, pcb_get_layers, pcb_get_stackup, and pcb_get_design_rules.
  5. Inspect physical implementation with pcb_get_footprints, pcb_get_nets, pcb_get_tracks, pcb_get_vias, and pcb_get_zones.
  6. For placement tasks, use pcb_critique_placement, pcb_score_placement, and pcb_placement_quality_gate before proposing edits.
  7. For routing tasks, inspect ratsnest, tracks, vias, net classes, stackup, and constraints before proposing route changes.
  8. Apply write operations only when the requested workflow explicitly allows file changes.
  9. Re-run targeted gates after every meaningful edit: run_drc, pcb_quality_gate, pcb_transfer_quality_gate, and project_revalidate_after_edit.
  10. Produce a report that separates verified tool output, assumptions, changes made, and remaining risks.

Quality checks

A useful PCB design response must include:

  • Active project and board file summary
  • Constraints and assumptions used
  • Read-only observations before any mutation
  • List of write operations, if any
  • DRC and quality-gate result summary
  • Remaining warnings, unknowns, and required human checks

Failure modes

Stop and report clearly when:

  • No KiCad project is active
  • The board file is missing or not parseable
  • Required KiCad CLI/IPC capability is unavailable
  • A required MCP mutation tool is unavailable in the active profile/mode; report the required profile/mode instead of falling back to raw KiCad-file mutation
  • The user requested write operations but no safe project context exists
  • DRC or quality-gate output is missing after a layout-changing operation
  • The board depends on manufacturer constraints that were not provided

Output format

Return:

  • Project context
  • Tools used
  • Findings by severity
  • Changes made or proposed
  • Validation results
  • Manufacturing readiness status: not assessed, blocked, needs review, or candidate after human review
  • Next actions

Safety rule

Never state that a PCB is ready for fabrication solely because edits were applied. Fabrication output requires the fabrication-output workflow and qualified human review.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.