Analog circuit (schematic) design — topology selection, device sizing via gm/Id, biasing, schematic capture, pre-layout ERC, and design review. Use when designing an op-amp, comparator, bandgap, LDO, bias generator, or any analog block from a block specification through to a sign-off-ready schematic and netlist.
How this skill is triggered — by the user, by Claude, or both
Slash command
/analog-design-circuit:circuit-designThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
- **If invoked by a user** presenting a circuit design task: immediately spawn the
analog-chip-design-agents:circuit-design-orchestrator agent and pass the full user
request and any available context. Do not execute stages directly.circuit-design-orchestrator mid-flow (including fix-request
servicing): do not spawn a new agent. Treat this file as read-only — return the
requested stage rules, sign-off criteria, or loop-back guidance.Spawning the orchestrator from within an active orchestrator run causes recursive delegation and must never happen.
Before executing or advising on any stage, read the following if they exist:
memory/circuit/knowledge.md — known topology pitfalls, successful sizing recipes,
PDK device quirks. Incorporate its guidance into every stage decision.memory/circuit/run_state.md — current run identity (run_id, design_name, pdk,
last_stage) for resume-after-interruption.Guide analog block design from topology choice through a sign-off-ready, ERC-clean schematic and SPICE netlist meeting the block's pre-layout electrical specs. Six stages with explicit QoR gates and loop-back criteria enforced by the circuit-design orchestrator.
xschem) — schematic capture and SPICE netlist export; de-facto open analog schematic tool, integrates with sky130/gf180mcu/ihp-sg13g2 PDKsngspice) — in-the-loop DC/AC sweeps during sizingqucs-s) — schematic + simulation front-endpython -m hdl21) — programmatic (Python) analog schematic generationvirtuoso) — schematic capture with ADEcustom_compiler) — schematic and design entrys-edit) — schematic capturedesign_state.constraints.supply.vdd_v (count stacked Vds,sat + Vgs against supply).design_state.constraints.specs (or rf_specs for RF blocks).supply.vdd_v with ≥ 10% marginspecs.dc_gain_db / specs.gbw_hz| Issue | Fix |
|---|---|
| Insufficient headroom at low VDD | Switch to folded-cascode or current-reuse topology |
| Gain target unreachable single-stage | Add a second (Miller-compensated) stage |
| Noise target hard at low power | Increase input-pair gm (gm/Id), use PMOS input for 1/f |
pdk; never guess W/L blindly.specs.dc_gain_db; GBW vs specs.gbw_hzspecs.offset_mv_maxspecs.power_mw| Issue | Fix |
|---|---|
| Device leaves saturation over corners | Add Vds margin; lower current density (raise W) |
| Gain low | Increase L on gain devices; add cascode |
| Power over budget | Reduce bias current; raise gm/Id on non-critical branches |
| Issue | Fix |
|---|---|
| Reference fails to start | Add/repair startup device; verify with tran from 0V |
| Large current spread over PVT | Use constant-gm bias; trim resistor type |
.sch / generator script)| Issue | Fix |
|---|---|
| Floating bulk | Tie to supply/well-bias net |
| Undriven node | Add bias or remove dangling device |
| Check | Criterion |
|---|---|
| DC gain | ≥ design_state.constraints.specs.dc_gain_db |
| Phase margin | ≥ design_state.constraints.specs.phase_margin_deg (default: 60) |
| GBW | ≥ design_state.constraints.specs.gbw_hz |
| Power | ≤ design_state.constraints.specs.power_mw |
| Offset / matching | within design_state.constraints.specs.offset_mv_max |
| ERC | 0 unwaived errors |
| All devices | in intended region with margin |
See plugins/meta/skills/pipeline-orchestration/SKILL.md §Constraints Schema for the authoritative schema and stage-entry validation rule.
Required at entry (topology_selection) — hard-fail if missing:
constraints.supply.vdd_v — supply for headroom budgetingconstraints.specs (or constraints.rf_specs for RF blocks)constraints.pdk — for device models / gm-Id tablesOptional (schema defaults apply when absent):
constraints.specs.phase_margin_deg (default: 60)constraints.yield.target_sigma (default: 3)Skip constraint validation entirely when invoked in fix-request-servicing mode (a
fix_request.id was passed in the prompt).
Write memory/circuit/run_state.md as the first action before launching any tool:
run_id: circuit_<YYYYMMDD>_<HHMMSS>
design_name: <design>
pdk: <pdk or unknown>
tool: <primary tool>
start_time: <ISO-8601>
last_stage: null
Update last_stage to the completed stage name only after each stage finishes successfully.
After each stage completes, upsert one JSON record in memory/circuit/experiences.jsonl
keyed by run_id (do not append a second line for the same run). key_metrics fields:
dc_gain_db, phase_margin_deg, gbw_hz, power_mw, erc_errors. Set
signoff_achieved: false until design_review passes; then true. Create the file and
parent directories if they do not exist.
If mcp__plugin_ecc_memory__add_observations is available, emit each applied fix as an
observation to entity analog-design-circuit-fixes after writing to experiences.jsonl.
Skip silently if absent — the JSONL file is the canonical record.
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub chuanseng-ng/analog-chip-design-agents --plugin analog-design-circuit