Skip to content
cccskills
FreePublished on GitHub

kicad-pcb-place

Review Circuit Weaver's exhaustive placement proposal and apply approved SVG coordinates to a real electrically annotated KiCad PCB. Use after schematic generation for placement optimization, official-reference review, interactive SVG editing, strict reference reconciliation, and PCB placement handoff. Do not treat review artifacts as fabrication data.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md4.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

KiCad PCB Placement

Separate the heuristic review proposal from the electrical PCB. Circuit Weaver does not generate a routable board during generate.

1. Generate and inspect the review bundle

circuit-weaver generate "${SPEC_PATH}" --output "${OUTPUT_DIR}"

Read these together:

  • assembly_manifest.json: exhaustive physical-part inventory, including generated support passives;
  • placement_result.json: proposed coordinates, exact reference reconciliation, quality findings, and fabrication_ready: false;
  • placement_review_context.json: board constraints, placement rules, review blockers, targeted research prompts, and official/reference-layout links;
  • placement.svg: editable vector proposal; and
  • placement_editor.html: interactive drag/review tool that can export SVG.

Stop when placement_result.json is blocked, inventories do not match, or the review gate reports unresolved overlaps, out-of-board parts, constraint violations, missing support parents, missing footprint geometry/dimensions, or unresolved sourcing. Never hide a blocker because the visual layout looks reasonable. Use manufacturer datasheets and reference layouts as authority.

For an alternate optimizer configuration, run:

circuit-weaver optimize-placement "${SPEC_PATH}" \
  --strategy balanced --iterations 5000 --seed 42 \
  --output "${OUTPUT_DIR}/placement.json"
circuit-weaver placement-viewer "${SPEC_PATH}" \
  --output "${OUTPUT_DIR}/placement.html"

2. Apply physical-placement judgment

Review at minimum:

  • connectors and controls against mechanical edges and enclosure constraints;
  • decoupling/strap/bootstrap parts against their owning IC pins;
  • regulator hot loops, switch-node copper, inductors, and current paths against the regulator reference layout;
  • crystal loops, RF matching, antenna keepouts, USB/differential entry paths, and sensitive analog feedback;
  • component rotations, pin-1 access, courtyard/rework spacing, thermal paths, fiducials, mounting hardware, and assembly-side constraints; and
  • all explicit keepouts and placement constraints in the context artifact.

Edit placement.svg with the interactive editor or a standards-compliant vector editor. Preserve each component's data-ref, transform, and layer metadata. Do not add or duplicate assembly references.

3. Create the real electrical PCB

Open the manifest-selected root schematic in KiCad, assign and verify every footprint, and run Update PCB from Schematic. Save a separate, pad-bearing, named-net .kicad_pcb. This is the only valid target for placement, routing, DFM, CPL, and Gerber work.

4. Reconcile and import the SVG

Dry-run first:

circuit-weaver import-placement "${OUTPUT_DIR}/placement.svg" \
  "${ELECTRICAL_PCB}" --output-pcb "${PLACED_PCB}" --dry-run

The default contract requires the SVG and PCB reference inventories to match exactly. Duplicate, unexpected, missing, malformed, or non-finite placements block publication. Apply only after the dry-run is clean:

circuit-weaver import-placement "${OUTPUT_DIR}/placement.svg" \
  "${ELECTRICAL_PCB}" --output-pcb "${PLACED_PCB}"

For a deliberate subset edit, opt in explicitly; unknown SVG references still fail:

circuit-weaver import-placement subset.svg "${ELECTRICAL_PCB}" \
  --output-pcb "${PLACED_PCB}" --allow-partial

The command updates an existing sibling <board-stem>_cpl.csv when present; it does not manufacture a trustworthy CPL from heuristic coordinates.

5. Verify in KiCad

  • Reopen the written board without repair prompts.
  • Confirm every assembly reference is present once with the intended footprint, side, rotation, and position.
  • Run courtyard and full DRC checks.
  • Check board-edge, connector, mounting, antenna, thermal, and height constraints against mechanical data.
  • Keep support passives adjacent to their owning pins and minimize loop area.
  • Route critical nets manually before any optional bulk autorouting.
  • Generate CPL/Gerbers only from the reviewed real PCB.

For optional routing, use the repository autoroute skill and produce a validated .ses; never invoke raw Freerouting flags by guesswork.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Route non-critical nets on a real KiCad PCB or Specctra DSN through Circuit Weaver's fail-closed Freerouting integration. Use after placement and net-class setup when the user requests autorouting, a validated SES session, routing diagnostics, or post-route cleanup. Keep critical power, RF, clock, crystal, switching, and differential nets manual.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

bom

Free

Manage an electronics bill of materials across distributors and fabricators: part selection, stock, pricing, alternates, ordering, KiCad properties, and BOM/CPL export. Use for distributor-neutral sourcing, cost comparison, order preparation, or requests such as "what parts do I need" and "export for JLCPCB". Do not take over schematic analysis or a complete new-design workflow unless the requested task is specifically its sourcing/manufacturing stage.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

bom

Free

BOM management, sourcing, pricing, export, and fabrication preparation. Load the canonical Circuit Weaver skill from `skills/bom/SKILL.md`.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

Create, import, analyze, resume, or revise an end-to-end Circuit Weaver electronic design from requirements through validated functional KiCad schematics, placement review, and a truthful manufacturing handoff. Use for new designs and for existing KiCad/PCB/Gerber projects that need durable state. Use kicad for one-off file inspection, bom for standalone sourcing, and design-wizard only when the user explicitly requests the slower questionnaire.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

Create, import, analyze, or resume an end-to-end Circuit Weaver electronic design with durable project state. Load the canonical workflow from skills/circuit-weaver/SKILL.md. Use kicad for one-off file inspection, bom for sourcing, and design-wizard only when explicitly requested.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

Use only for an explicitly requested step-by-step Circuit Weaver questionnaire. Load the canonical workflow from skills/design-wizard/SKILL.md; use circuit-weaver for ordinary automatic new-design requests.

The English summary is being prepared. Showing the original description.

mattpainter701/kicad_automations21Updated Oct 20, 2026

See all skills by mattpainter701

Report a problem with this skill