Skip to content

Releases: copperheadhq/copperhead

v0.10.0

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 26 Aug 14:09

What's Changed

  • fix(docs): read markdown tables that omit the outer pipes by @adhavan18 in #124
  • Fix/compat gemini groq docs redaction by @AniketR10 in #130
  • refactor: remove the Synap cross-run memory integration by @animesh-chouhan in #168
  • feat(create): record brief provenance after spec seed by @AyushVUpadhye in #174
  • chore(pr-review): run reviews in an isolated git worktree by @animesh-chouhan in #199
  • Propose deterministic-schematic-drafting: drafting engine, legibility gate, scoring, golden corpus by @animesh-chouhan in #160
  • feat(kicad): pin dossier at stage-4 entry, symbol_pins tool, stage-3 drawability check by @animesh-chouhan in #202
  • fix(draft): never route through a foreign connection point; gate wire-level net merges by @animesh-chouhan in #205
  • fix(draft): labelled stubs avoid foreign contact; name wire merges for what they are by @animesh-chouhan in #209
  • fix(draft): symbol ref/value slots verify their clearance and re-slot down a ladder by @animesh-chouhan in #211
  • fix(doctor): catch a missing openspec CLI before spec-seed burns real tokens on it by @Bhumika-1432006 in #193
  • Drawing quality: labels inside the frame, text collisions cleared, sheets compacted, passive banks (#220 phases 1, 2, 4 and #233) by @animesh-chouhan in #224
  • test(draft): run the engine against real designs via their KiCad netlists by @animesh-chouhan in #216
  • docs(openspec): archive deterministic-schematic-drafting by @animesh-chouhan in 9a2fc4f
  • chore: point every repo reference at the copperheadhq org by @animesh-chouhan in 7e9b788

New Contributors

npm: https://www.npmjs.com/package/copperhead/v/0.10.0

Full Changelog: v0.9.0...v0.10.0

v0.9.0

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 29 Jul 15:21

What's Changed

  • Feature/agent install prompt by @Chirag6722 in #120
  • fix: resolve cross-platform Windows compatibility issues in tests and CLI by @Chirag6722 in #51
  • fix(redact): redact base64 bearer tokens whole, match scheme case-insensitively by @DPS0340 in #84
  • fix: resolve custom power symbol library issues (#61) by @Chirag6722 in #122
  • add ollama, groq, gemini and openrouter intergrations by @AniketR10 in #123
  • feat(pr-review): emit a copy-pasteable fix prompt with the review by @animesh-chouhan in #125
  • fix(create): strengthen stage isComplete contracts to prevent false-positive resume (#23) by @Chirag6722 in #126
  • docs(release): add a release-notes template matching the v0.8.0 format by @animesh-chouhan in cca3135
  • chore(assets): add 1080p demo cut, LinkedIn variants, and its vhs tape by @animesh-chouhan in 62bb454
  • docs: point benchmarking work at the copperhead-benchmarks repo by @animesh-chouhan in 5c3aefc

New Contributors

npm: https://www.npmjs.com/package/copperhead/v/0.9.0

Full Changelog: v0.8.1...v0.9.0

v0.8.1

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 27 Jul 18:40

What's Changed

npm: https://www.npmjs.com/package/copperhead/v/0.8.1

Full Changelog: v0.8.0...v0.8.1

v0.8.0

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 27 Jul 17:40

What's Changed

  • docs: add code of conduct, security policy, and issue templates by @animesh-chouhan in #65
  • feat: add support for Cursor Agent CLI as a saved-login provider by @Devesh36 in #67
  • add copperhead doctor command for necessary diagnosis by @AniketR10 in #96
  • add community automation workflows (greetings, stale, labeler, issue summary) by @animesh-chouhan in #111
  • docs(readme): demo gif under the tagline by @animesh-chouhan in #116
  • feat(skills): scripted pr-review metrics + issue-review triage skill by @animesh-chouhan in #109
  • feat(repl): session UI with pinned observability dock and scripted demo recordings by @animesh-chouhan in #113
  • feat: Claude Code–style REPL with copper chrome and board inspect commands by @Devesh36 in #95

New Contributors

npm: https://www.npmjs.com/package/copperhead/v/0.8.0

Full Changelog: v0.7.0...v0.8.0

v0.7.0: resilient create pipeline (resume, cache, symbol verification)

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 23 Jul 21:07

Highlights

copperhead create now survives a long run: it resumes where it stopped, replays work you already paid for, and tells you what it is spending.

Driving create to completion on a real brief surfaced a batch of blockers and token sinks: a correct schematic could not clear the finish gate, a stalled provider turn hung the run indefinitely, and any interruption meant paying for every turn again from the top. This release fixes that class of failure:

npm install -g copperhead
copperhead create --brief brief.md --model claude-code
# stops on a usage limit? re-run the printed command:
# completed stages are detected from repo state and skipped,
# and completed turns replay from the cache at ~0 tokens.

The safety rails are unchanged: edits stay spec-gated (the edit tools are absent from the model's tool list until an OpenSpec proposal validates), commits stay verification-gated behind ERC/DRC, and a failed run still rolls back to its git snapshot.

Details

  • Resume anywhere. Any stop prints the exact command to resume and which stage it resumes at. A session or usage limit is reported as a schedulable pause with its reset time, not an opaque provider error.
  • Response cache. Every completed turn is cached on disk, so a retried or restarted stage replays what it already paid for instead of re-calling the model. Repo-scoped and gitignored. Disable with llmCache: false.
  • Turn watchdog and auto-retry. A provider turn that blows past turnTimeoutMs (default 10 min) is aborted, its subprocess torn down, and the turn retried. A stage that fails or misses its completion contract gets a bounded LLM diagnosis that decides retry versus stop for a human (maxStageRetries, default 2).
  • verify_symbols, a new read-only tool. Cross-checks every lib_symbols entry in the schematic against the KiCad symbol libraries installed on your machine, reporting pins that diverge from the real part and lib_ids that do not exist in your KiCad version, with the closest real names. ERC cannot catch these: a symbol claiming to be Device:R with invented pins passes ERC while being wrong.
  • Drift gate correctness. BOM and PINOUT comparisons no longer report false drift on supporting tables, reordered or optional columns, or encoding-only differences. Ihold>=3A and Ihold≥3A, 4.7kohm and 4.7kΩ, 0.1in and 0.1" now compare equal. Footprint comparison deliberately stays case-sensitive, since a footprint is a library id.
  • KiCad and git resilience. KiCad's git-backed .history/ directory no longer aborts the commit at the end of a KiCad-touching stage, leaked scratch directories are reclaimed on startup, and a disk-space preflight fails fast instead of dying on an opaque ENOSPC mid-stage (COPPERHEAD_MIN_FREE_MB to tune).
  • Observability. A liveness heartbeat distinguishes a slow turn from a hung one, and a per-stage cost table with a TOTAL row shows where the tokens went.

Also in this release

  • New config knobs: turnTimeoutMs, heartbeatMs, maxStageRetries, llmCache.
  • Groundwork for a SPICE verification gate: a parser for simulation blocks and assertions, with tests. Not yet wired into a command or gate.
  • The deterministic check / verify command remains LLM-free and network-free, and the KiCad s-expression reader remains read-only.

npm: https://www.npmjs.com/package/copperhead/v/0.7.0

Full changelog: v0.6.0...v0.7.0

v0.6.0: Claude Code provider (no API key)

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 22 Jul 20:21

Highlights

Claude Code provider: run copperhead without an OpenAI or Anthropic API key.

If you already have Claude access through your Claude Code login, copperhead can now use it as a reasoning backend. No API key, no separate billing setup:

npm install -g copperhead
copperhead do "add a second RGB LED on an RTC-capable pin" --model claude-code

Claude Code runs reasoning-only inside copperhead: it only proposes actions, and copperhead stays the sole dispatcher for every file edit, KiCad ERC/DRC check, and commit gate. All the existing safety rails (spec-gated edits, verification-gated commits, git-snapshot rollback) are unchanged. If the Agent SDK ever emits a tool call, the run fails loudly rather than letting an edit bypass those gates.

Details

  • Select it with --model claude-code, or pin a model id with --model claude-code:<model-id>.
  • Auth uses your saved Claude Code login. If you are not logged in, run claude setup-token and set CLAUDE_CODE_OAUTH_TOKEN. copperhead never reads the credential itself.
  • A claude-code run strips any billed ANTHROPIC_API_KEY / OPENAI_API_KEY from the SDK subprocess, so it never quietly falls back to paid usage even when one is set.
  • The @anthropic-ai/claude-agent-sdk is an optional dependency, so a normal install stays lean: only Claude Code users pull it in, and its absence surfaces an actionable install message.
  • The direct OpenAI and Anthropic providers, and the deterministic check / verify command, are unchanged.

Also in this release

  • The OpenAI provider now supports reasoning models and Gemini.
  • Supplier BOM export for JLCPCB, DigiKey, and Mouser.
  • A fab documentation-presence check added to the release gate.

npm: https://www.npmjs.com/package/copperhead/v/0.6.0

Full changelog: v0.5.0...v0.6.0

v0.5.0: Codex provider (no API key)

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 22 Jul 07:26

Highlights

Codex provider: run copperhead without an OpenAI or Anthropic API key.

If you already have Codex access through your ChatGPT login, copperhead can now use it as a reasoning backend. No API key, no separate billing setup:

npm install -g copperhead
copperhead do "add a second RGB LED on an RTC-capable pin" --model codex

Codex runs read-only and web-disabled inside copperhead: it only proposes actions, and copperhead stays the sole dispatcher for every file edit, KiCad ERC/DRC check, and commit gate. All the existing safety rails (spec-gated edits, verification-gated commits, git-snapshot rollback) are unchanged.

Details

  • Select it with --model codex, or pin a model id with --model codex:<model-id>.
  • Point at a non-standard binary with COPPERHEAD_CODEX_PATH (defaults to codex on PATH).
  • The @openai/codex-sdk is an optional peer dependency, so a normal install stays lean: only Codex users pull it in.
  • The direct OpenAI and Anthropic providers, and the deterministic check / verify command, are unchanged.

One honest caveat: the Codex CLI keeps its own session logs under ~/.codex/sessions/, which sit outside copperhead's transcript-redaction boundary. This is documented in SPEC.md.

Also in this release

  • npm publishing moved to trusted publishing (OIDC), with provenance signing and no long-lived token.
  • Markdown linting is enforced in CI.

PR: #1
npm: https://www.npmjs.com/package/copperhead/v/0.5.0

Full changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@animesh-chouhan animesh-chouhan released this 21 Jul 22:45

This is the first tagged release since copperhead@0.3.0. It bundles everything merged to main since then: run observability, audit-trail hardening, agent-loop robustness, a full docs site, and contributor tooling. No open pull requests are included.

Install or upgrade:

npm install -g copperhead@0.4.0

Run observability and safety

  • Record full run metadata and surface interactive progress across the CLI, JSON, and transcript surfaces (#26, #28).
  • Route --json progress to stderr and keep the interactive renderer usable across repeated runs (#28).
  • Preserve failed-run audit trails: run-end and summary.md still land even when rollback itself fails (#27).
  • Harden the git preflight: clear messages when HEAD is unborn, with offline scenario coverage (#28).

Agent loop and create pipeline

  • Prompt to continue on turn exhaustion, plus agent-loop efficiency fixes (#18).
  • Validate KiCad edits with a load probe: an edit that corrupts a loadable schematic is reverted with the kicad-cli reason, and an already-unloadable schematic no longer deadlocks repair.
  • Enforce create-stage completion so a blank bootstrap sheet cannot advance the pipeline.

Documentation

  • Migrate docs to Astro Starlight with an agent-docs structure, served from its own subdomain, with llms.txt.
  • Add brand assets, favicons, and social cards.
  • Add worked examples across all tiers with rendered board images (#20).

Contributor tooling

  • Add a PR template, a PR body-lint check, and the pr-review skill, with results posted back as a PR comment (#39, #43).
  • Ship the NOTICE file and the CLA, and add the roadmap backed by OpenSpec changes.

Notes

  • Phase 1 remains pending live-LLM verification: the AC-3.x integration tests skip without an API key, so the end-to-end agent loop has not yet been observed passing against a real model.