@tscircuit/tscircuit
Build, modify, and debug tscircuit (React/TypeScript) PCB designs. Use when working with tsci CLI (init/dev/search/add/import/build/export/snapshot/push), choosing footprints, placing parts, wiring nets/traces, or preparing fabrication outputs (Gerbers/BOM/PnP).
No skills found in this collection.
SKILL.md
| name | tscircuit |
| description | Build, modify, and debug tscircuit (React/TypeScript) PCB designs. Use when working with tsci CLI (init/dev/search/add/import/build/export/snapshot/push), choosing footprints, placing parts, wiring nets/traces, or preparing fabrication outputs (Gerbers/BOM/PnP). |
| allowed-tools | Read, Write, Grep, Glob, Bash |
tscircuit
You are helping the user design electronics using tscircuit (React/TypeScript) and the tsci CLI.
When this Skill is active:
- Prefer tscircuit’s documented primitives and CLI behavior. If something is unclear, confirm by:
- Reading local files in the repo (e.g.,
tscircuit.config.json,index.circuit.tsx,package.json) - Running
tsci --helpor the specific subcommand’s--help
- Reading local files in the repo (e.g.,
- Avoid “inventing” JSX props or CLI flags.
Default workflow
- Clarify requirements (if not already given)
- Board form factor / size constraints
- Power sources and voltage rails
- I/O: connectors, headers, mounting holes, mechanical constraints
- Target manufacturer constraints (trace/space, assembly, supplier)
- Choose a starting point
- If the repo is not a tscircuit project, recommend:
- Install CLI, then
tsci initto bootstrap a project.
- Install CLI, then
- If a form-factor template is appropriate (Arduino Shield, Raspberry Pi HAT, etc.), prefer
@tscircuit/commontemplates.
- Find and install components
- Use
tsci search "<query>"to discover footprints and tscircuit registry packages. - Use
tsci search --digikey "<query>"ortsci search --mouser "<query>"when distributor stock and supplier part numbers matter. Both flags can be combined, and--jsonprovides machine-readable results. - For USB-C receptacles/connectors, prefer builtin syntax with
<connector standard="usb_c" />instead of importing from JLCPCB. - Use one of:
tsci add <author/pkg>for registry packages (installs@tsci/*packages)tsci import <query>when you need to import a component from JLCPCB or the registry.
- DigiKey and Mouser search results are for part discovery;
tsci importdoes not directly import from those distributors.
- Write/modify TSX circuit code
- Keep circuits as a default-exported function that returns JSX.
- Read
FOOTPRINTS.mdbefore writing custom footprint TSX; prefer a footprinter string when one matches the package. - Use layout props intentionally:
- PCB:
pcbX,pcbY,pcbRotation,layer - Schematic:
schX,schY,schRotation,schOrientation
- PCB:
- On large projects (5+ components), use
<schematicsection />to group components by function (e.g. "Power", "MCU", "IO"). This is one of the most important things for schematic readability. Assign each component aschSectionNameand manually position all members of a section in close proximity usingschX/schY. - When one large chip needs to appear on multiple schematic sheets, declare the
<chip />once before the sheets, then use one<schematicbox chipRef=".U1" />per sheet. Either nest each box inside its<schematicsheet />, or keep the elements as siblings and assign the box withschSheetName. Pass only that sheet's labels to the box and keep connections addressed to the original chip, such asU1.VCC. See the<schematicbox />reference. - Use
<antenna />for a placed, open-ended PCB antenna. Give it a one-pad footprint, define its local copper geometry withpcbPath, and connect the circuit to its.feedport with a separate<trace />. See the<antenna />reference. - Use
<trace />for connectivity; prefer net connections (net.GND,net.VCC, etc.) for power/ground.
- Build and iterate
- Run
tsci check netlistbeforetsci check schematic-placement,tsci check placement, andtsci buildto catch connectivity issues early. - Use
tsci check schematic-placementto validate schematic-side placement before checking PCB placement. - Do not finalize unless both
tsci check schematic-placementandtsci check placementpass with no actionable placement violations; if violations exist, fix layout and rerun until clean. - Use
tsci check trace-lengthto check for long straight line distances (before routing) or long routes (after routing) - Run
tsci build --pcb-png [file]to inspect placement before checking routing. - Run
tsci check routing-difficultyafter placement to identify potential areas of congestion. - Run
tsci buildto compile and validate the circuit. - When routing looks suspicious, run
tsci build [file] --autorouter-debug --autorouter-debug-dir dist/autorouter-debugand inspectplacement-unrouted.pngplus each cumulativephase-N-routed.png. Add--autorouter-dump-srj allwhen the SimpleRouteJson input and output for every stage is also needed. - After routing, run
tsci check shorts [file]to detect unintended shorts between separate PCB copper groups. Omit[file]to use the project entrypoint; a prebuilt*.circuit.jsonfile is also accepted. - A detected short makes
tsci check shortsexit nonzero. Inspectchecks/check-shorts/bitmap.pngandchecks/check-shorts/pcb.svg, fix the implicated copper, then rerun the check. Do not dismiss this failure as a generic DRC warning. - The default check analyzes Gerber-derived copper on both layers. Use
--mode pcbfor PCB geometry,--layer topor--layer bottomto narrow the scope, and--pixels-per-mm <number>only when a different bitmap resolution is needed. - DRC (Design Rule Check) errors can often be ignored during development—focus on getting the circuit correct first.
- If routing struggles, reduce density, use
<group />for sub-layouts, or change autorouter settings. - Use
tsci devonly when you need interactive visual feedback (not typical for AI-driven iteration).
- Validate and export
- Run
tsci check netlistbeforetsci check schematic-placement,tsci check placement, andtsci buildwhen preparing to share/publish. - Run
tsci check shortsafter routing and before sharing, publishing, or producing fabrication outputs. Resolve every reported short before proceeding. - Run
tsci build(and optionallytsci snapshot) before sharing/publishing. - Use
tsci exportfor SVG/netlist/DSN/3D/library outputs. - For manufacturing, obtain fabrication outputs (Gerbers/BOM/PnP) from the export UI after
tsci dev.
Safety and non-goals
- Treat electrical safety, regulatory compliance, and manufacturability as user-owned responsibilities.
- Do not publish (
tsci push) or place orders unless the user explicitly requests it.
Local references bundled with this Skill
- CLI primer:
CLI.md - Syntax primer:
SYNTAX.md - Workflow patterns:
WORKFLOW.md - Pre-export checklist:
CHECKLIST.md - Ready-to-copy templates:
templates/ - Helper scripts:
scripts/
Builtin Elements
<analogsimulation /><antenna /><assembly.device /><battery /><board /><breakout /><breakoutpoint /><cadassembly /><cadmodel /><capacitor /><chip /><connector /><constraint /><copperpour /><coppertext /><courtyardcircle /><courtyardoutline /><courtyardpill /><courtyardrect /><crystal /><currentsource /><cutout /><diode /><enclosure.cutoutaperture /><enclosure.fdm.box /><fabricationnotedimension /><fabricationnotepath /><fabricationnoterect /><fabricationnotetext /><fiducial /><footprint /><fuse /><group /><hole /><inductor /><jumper /><led /><mosfet /><mountedboard /><net /><netalias /><netlabel /><opamp /><panel /><pcbkeepout /><pcbnotedimension /><pcbnoteline /><pcbnotepath /><pcbnoterect /><pcbnotetext /><pcbtrace /><pinheader /><pinout /><platedhole /><port /><potentiometer /><pushbutton /><resistor /><resonator /><schematicarc /><schematicbox /><schematiccell /><schematiccircle /><schematicline /><schematicpath /><schematicrect /><schematicrow /><schematicsection /><schematictable /><schematictext /><silkscreencircle /><silkscreenline /><silkscreenpath /><silkscreenrect /><silkscreentext /><smtpad /><solderjumper /><subcircuit /><subpanel /><switch /><symbol /><testpoint /><trace /><tracehint /><transistor /><via /><voltageprobe /><voltagesource />
Loading...
Select a file to preview
Analyzing security...
Checking scan reports and verification data.
Bill of Materials
Everything this skill can do — files, network, commands, and more.
No demos yet. To add one, ask your AI agent: "Submit a demo for @tscircuit/tscircuit" — or upload via the API.
To add a demo, ask your AI agent: "Submit a demo for @tscircuit/tscircuit"
No eval data yet. Eval results are published via the SkillSafe API.