Show HN: Copperhead – Cursor for circuit boards
TL;DR Highlight
Open-source PCB design agent that only advances when KiCad checks pass
Who Should Read
Embedded and hardware developers who want an LLM agent to keep schematics and docs from drifting apart
Core Mechanics
- It stops when a gate fails
- copperhead is an open-source AI agent for PCB design, installed with npm i -g copperhead.
- Each stage must leave its artifact on disk before the next starts, and a failed gate stops the run.
- Eight stages from brief to package
- Stages are spec, architecture, parts, schematic, layout, outputs, firmware and dev plan, each its own agent run.
- Each stage gets one commit.
- Drift is the core problem
- One decision spreads across schematic, BOM, power budget and docs, and nothing breaks when they diverge.
- Finding it at bring-up means a respin costing $5,000 to $50,000 and six to eight weeks, per the site.
- Validated proposal before any edit
- It refuses to edit design files before a validated change proposal exists.
- It refuses changes that break a documented budget or constraint, citing the line.
- It refuses to run on a dirty git tree.
Community Reactions
- Opinion: look at tscircuit
- One commenter says KiCad wasn't built for AI-generated designs with auto routing/placement or footprint orientation checks.
- They worry everyone is getting bound to KiCad s-expressions.
- Pushback: general agents may be enough
- Commenters report editing and debugging KiCad schematics with Claude and Gemini and finding it pretty good.
- Another says regular coding agents handle Skidl schematics and layout review well.
- Placement is still NP-hard
- One commenter says the real question is whether LLMs beat classical autorouters.
- Another tested Astra over a weekend and found it could edit schematics and route, though the routing was unsatisfying.
- Complaints about copy and a bug
- Several commenters disliked the site's AI-written copy.
- One reported inputs in Start a board not accepting text on desktop Chrome on macOS.
How to Apply
- Run init on an existing design repo
- In a clean git repo with KiCad files, run npm i -g copperhead and then copperhead init.
- Request one small change and check how small the diff is.
- Add stage gates to your own agent
- Require an artifact on disk and a passing check before each pipeline stage starts.
- Stop the run and skip the commit when a check fails.
- Add a proposal check before edits
- Make the agent write a change proposal first and compare it to documented constraints.
- Reject violations by quoting the line they would break.
Try It
# Paste into Claude or ChatGPT (simplified prompt version of copperhead's verify-first approach)
You are a design assistant that verifies before changing. Read the design docs below and handle the request.
[Design docs]
{{docs}}
[Request]
{{change request}}
Follow this order.
1. Write a change proposal first, listing affected docs, parts and budgets.
2. If it breaks a documented constraint or budget, quote the violated line and stop.
3. If it passes, give the edit.
4. Finally check for inconsistencies between docs and write a one-line decision record.
Next: send a request that deliberately breaks a budget and see whether it refuses.Terminology
Related Papers
Same Simulation, Different Evidence: Where Retrieved Tool Output Costs LLM Agents Accuracy
Saving long tool output to files cut GPT-5.1 accuracy by 11.3 points; naming the authoritative file restored it.
Fake News, Real Crashes: Information Injection Attacks on LLM Financial Trading Agents
Fake headlines hijacked LLM trading agents 62% of the time versus 14% for prompt injection.
Harness Engineering 101: The LLM is the brain, the harness is the body
An agent is a loop managing a JSON array; 16 chapters build one from scratch
Harness2 by Google Research – Recursive Agent Harnessing
Recursively refining the harness with fixed model weights raised benchmark scores by up to 11.8 points.
Ousted Savannah police officer gave ICE agent husband access to Flock system
A police officer shared her Flock login with her ICE-agent husband; an audit found 983 searches and she was fired
Tmux and Claude Code: Sessions, Send-Keys, and the Ceiling
Running Claude Code agents in tmux works well, but limits appear around four agents.