Skip to content
Development
Skill

/kicad-manufacture

Manufacturing and fabrication workflow for KiCAD projects via MCP tools. Triggers on: "send to fab", "order boards", "gerbers", "JLCPCB", "manufacturing", "export for production", "pick and place", "assembly files", "generate fabrication outputs", "BOM for fab", "production

From plugin
konnect
6366 skills2 agents
Install
$ npx -y skills add mixelpixx/Konnect --skill kicad-manufacture --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/kicad-manufacture

Context preview

The summary Claude sees to decide when to auto-load this skill.

Manufacturing and fabrication workflow for KiCAD projects via MCP tools. Triggers on: "send to fab", "order boards", "gerbers", "JLCPCB", "manufacturing", "export for production", "pick and place", "assembly files", "generate fabrication outputs", "BOM for fab", "production

SKILL.md

kicad-manufacture.SKILL.md
name: kicad-manufacture
description: |
  Manufacturing and fabrication workflow for KiCAD projects via MCP tools. Triggers on: "send to fab",
  "order boards", "gerbers", "JLCPCB", "manufacturing", "export for production", "pick and place",
  "assembly files", "generate fabrication outputs", "BOM for fab", "production files", "fab house".
argument-hint: "[fab house or export task]"

KiCAD Manufacturing & Fabrication Workflow

Prepare manufacturing outputs through Konnect MCP tools. Treat each tool result as evidence with a named scope: a successful request is not by itself proof of a complete, current, upload-ready package. A required check or artifact that cannot be established makes the manufacturing verdict `INCOMPLETE`.

Toolset loading

Load the required toolsets:

load_toolset('pcb_export')       # Gerber, drill, BOM, position, 3D, and direct DRC evidence
load_toolset('manufacturing')    # Package export, manufacturing preflight, and rough cost estimate

Load additional toolsets only for the branch that needs them:

load_toolset('sch_analysis')     # schematic inventory and footprint assignment
load_toolset('integration')      # local JLCPCB catalogue and alternatives

Call `get_active_toolsets()` before loading more.

References by manufacturing branch

  • Read [`references/gerber-layers.md`](references/gerber-layers.md) when

selecting plot layers or accepting a generated artifact inventory.

  • Read [`references/jlcpcb-rules.md`](references/jlcpcb-rules.md) only when

JLCPCB is the selected fabricator or assembler. It defines how to capture the current order contract without caching volatile limits, prices, categories, or field names in this skill.

1. Capture the order contract

Before checking or exporting, record the selected fabricator, service tier, stackup, copper weight, finish, assembly sides, stencil requirement, quantity, and any controlled-impedance service. Record the source and retrieval date for every vendor-controlled requirement. Project rules and output acceptance are judged against that record.

Completion criterion: every applicable fabrication and assembly constraint has one current authority, and no decision rests on an undated table in this skill.

2. Establish direct design evidence

Run direct KiCad DRC against the saved target board and resolve every error or record a deliberate, reviewable waiver. Then run:

validate_for_manufacturing(board, fab_house?)

The current handler checks only:

  • presence of at least one `Edge.Cuts` item;
  • presence of footprints;
  • the configured minimum trace width against its built-in fab profile;
  • the coarse case where several nets exist but no routed tracks exist; and
  • direct `kicad-cli` DRC evidence, which must be available and complete for a

`READY` verdict.

Read `verdict`, `issues`, and `drc` together. A null or incomplete `drc`, a `NOT READY` verdict, or an unadjudicated issue blocks release.

This preflight does not prove outline closure, copper on every pad, drill-size acceptance, silkscreen clearance, stackup compatibility, or assembly readiness. Establish those separately with direct DRC, the selected fabricator's current contract, Gerber/drill inspection, BOM/CPL review, and the order preview.

Completion criterion: direct DRC is complete, every reported issue is resolved or waived, and every check outside the handler's stated scope has named evidence.

3. Export into a fresh destination

Prefer a new, empty output directory for each invocation. This makes stale files structurally unable to impersonate output from the current invocation.

For a package attempt:

export_manufacturing_package(board, output_dir, fab_house?, schematic?, jlcpcb_cpl_corrections_path?)

Pass `schematic` when assembly output requires a BOM. The tool attempts Gerber, drill, position, and BOM exports according to the request; individual failures can still leave a partial directory.

For `fab_house="jlcpcb"`, use millimetres (the default) and provide the BOM fields, labels, and grouping required by the current order contract. The tool emits `BOM-<project>.csv` plus `CPL-<project>.csv`; the CPL uses JLCPCB's `Designator,Mid X,Mid Y,Layer,Rotation` schema, and KiCad is instructed to enumerate grouped BOM references instead of compressing them into ranges. DNP parts are excluded from both native exports; any remaining population mismatch caused by board/schematic exclusion flags makes the package incomplete. This conversion applies Konnect's independently verified built-in CPL correction policy. Pass a checked-in project policy through `jlcpcb_cpl_corrections_path` when an unmatched footprint or one exact designator needs a correction. The precedence and JSON format are documented in `docs/JLCPCB_CPL_CORRECTIONS.md`.

Inspect **placement_orientation.applied_corrections** and **placement_orientation.unmatched_footprints**. **complete: true** proves the package is structurally complete; it does **not** prove physical placement orientation. Require **placement_orientation.status == "PREVIEW_REQUIRED"** to be discharged by inspecting every component in JLCPCB Component Placements before an order is approved. Never describe the CPL as physically validated from the automated result alone.

Artifact acceptance gate

1. Inspect `warnings` and `files_generated`. Any warning or missing requested artifact type keeps the result `INCOMPLETE`. 2. Reconcile the requested copper, mask, silkscreen, paste, and `Edge.Cuts` layers against the actual files in the fresh output directory. 3. Confirm every required artifact is a regular, non-empty file produced by the current invocation. A directory entry, reported path, or zero exit status is not enough. 4. Confirm the required plated and non-plated drill outputs for the actual board hole inventory. Absence is acceptable only when the design proves that output is inapplicable. 5. Open the Gerbers and drills in a viewer. Inspect l

Read more
Ships withkonnect

AI-assisted PCB design for KiCAD 10. Konnect is a native KiCAD plugin — a single Rust binary — that lets Claude and other AI assistants design schematics and PCBs through the Model Context Protocol (MCP). 226 tools across 21 on-demand toolsets.

Get the whole plugin

Other skills on konnect.