Skip to main content

The AI for PCB design, in your terminal.

License PyPI version Python CI
Follow on X LinkedIn YouTube Instagram

CopperPilot in your terminal: a thin, open-source client for CopperPilot electronics design agent, the best AI for PCB Design.

CopperPilot building an ESP32-MINI-1 board

Prerequisites

Install and run

pip install copper-pilot-cli
copper-pilot

The first interactive launch opens a browser for CopperPilot device login. With no path argument, the current directory is the workspace and a new chat starts immediately. Any existing directory is valid.

copper-pilot ./my-board
copper-pilot --resume
copper-pilot threads list
copper-pilot -n -m "Review this board" --json

Both copper-pilot and copper-pilot-cli run the same program. copper-pilot --help lists flags; docs/cli.md is the full command reference.

Configuration

  • Production API: https://copperpilot.ai
  • Development override: COPPER_PILOT_API_URL
  • User state: ~/.copper-pilot/.state
  • Project artifacts: .copperpilot/

Credentials are stored in a private, atomically replaced auth.json; on POSIX the parent directory is mode 0700 and the file is mode 0600.

LangChain

from copper_pilot_cli.copper_protocol import CopperMode
from copper_pilot_cli.langchain import CopperPilotAgent
from helper import drc_violations, erc_errors, render_pcb, run

PLAN = CopperMode.PLAN

copper_pilot = CopperPilotAgent(workspace="esp32")

run(copper_pilot, "Build me an ESP32 dev board.", PLAN)
run(copper_pilot, "Let us build this plan.")
run(copper_pilot, "Inspect the PCB, check for any missing 3D models, and apply them accordingly.")

assert erc_errors() == 0
assert drc_violations() == 0
render_pcb("esp32.png")

CopperPilotAgent is a Runnable, not a chat model. It represents a complete hosted agent run, including local tool requests. Use as_langgraph() for graph composition or as_compiled_subagent() for explicit delegation from an outer Deep Agent. The compatible deepagents runtime is installed and pinned by this package.

That snippet is the runnable example in examples/001_esp32.

Security boundary

The hosted agent may request local filesystem and shell tools. Reads and searches run freely. Writes, edits, deletes, and shell commands are gated by Manual approval by default. Auto permits only deterministic routine actions; unknown actions still ask. YOLO must be selected explicitly.

Filesystem, search, edit, and shell execution use Deep Agents' native FilesystemMiddleware tools and LocalShellBackend; CopperPilot's adapter only normalizes hosted tool names, approval decisions, and result envelopes.

Computer use, model/provider selection, local model execution, LangSmith tracing, content telemetry, MCP/plugin controls, and server implementation code are not part of this package.

See UPSTREAM.md and NOTICE for the retained Textual client attribution.

To report a vulnerability, see SECURITY.md.

Development

pip install -e ".[dev]"
make fmt
make lint
make test

make test runs pytest -m "not live". Live tests skip unless a CopperPilot credential is stored. Release tagging is make release. Details: docs/development.md.

Contributing

Bug reports, features, and pull requests are welcome. Please read CONTRIBUTING.md and the Code of Conduct. Use the bug report form so we can reproduce the problem.

License

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

copper_pilot_cli-0.1.4.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

copper_pilot_cli-0.1.4-py3-none-any.whl (95.7 kB view details)

Uploaded Python 3

File details

Details for the file copper_pilot_cli-0.1.4.tar.gz.

File metadata

  • Download URL: copper_pilot_cli-0.1.4.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for copper_pilot_cli-0.1.4.tar.gz
Algorithm Hash digest
SHA256 4ec7b7f5e9bbdc97efac9b58ad9f3028178d1131215a90f52e8d8fae9e41d9a5
MD5 24717aa0bf9eb04b87c9a1ed83015cb9
BLAKE2b-256 2edfeba5b78ea276632ac99ad3730ded4644af31f25a40325ccebb2140fd3cd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for copper_pilot_cli-0.1.4.tar.gz:

Publisher: release.yml on CopperPilot/copper-pilot-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file copper_pilot_cli-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for copper_pilot_cli-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a568aea73ee77b0538e35888958ad7465234b1d680dcd16642a67c67c5f6aa7d
MD5 6353a7ab84a2bada29b180da6367630c
BLAKE2b-256 0bbda0c52f6c6b0d8a5ae0b439f3d0d67d13c359fa46d1b966c3334af671c477

See more details on using hashes here.

Provenance

The following attestation bundles were made for copper_pilot_cli-0.1.4-py3-none-any.whl:

Publisher: release.yml on CopperPilot/copper-pilot-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.5

2 files

This release

0.1.4 This release

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page