About this project

easyeda-agent is an AI automation tool for JLC EDA Pro (EasyEDA Pro), designed to let AI agents directly operate the EDA software, covering the full workflow from datasheet-based library creation to PCB manufacturing checks. It integrates through three forms: CLI, Agent Skill, and stdio MCP, offering typed schematic and PCB operations with emphasis on pre-write and post-write validation and auditing. ## Core Capabilities - **Component Library Creation**: Reads part numbers, pins, and footprints from PDFs or dimension drawings, automatically creates Symbols, Footprints, Devices, and optional 3D models, and validates sources and pin mappings. - **Schematic Design**: Handles part selection, schematic drawing, standardized replacements, connection checks, and fixes from natural language requirements. - **PCB Layout and Routing**: Module-aware auto-placement, board outline fitting, rule-aware routing, vias, copper pours, multi-layer power planes, and antenna keepouts. - **Silkscreen Cleanup**: Automatically avoids pads, component bodies, and board outlines, and adds board notes, interface names, LED polarity, and SVG logos. - **Circuit Reuse**: Includes a built-in circuit block library (e.g., CH340, ESP32 auto-download, USB Hub) for quick reuse. - **Checks and Delivery**: Schematic connection/geometry checks, PCB DRC/DFM, BOM, netlist, manufacturing files, screenshots, and audit logs. ## Architecture and Integration easyeda-agent consists of three parts: 1. **easyeda CLI/daemon**: A local command-line tool providing typed actions and audit logs. 2. **EDA Agent Connector**: An extension plugin running inside EasyEDA Pro, interacting with the software via the official `eda.*` API. 3. **Agent Skill**: A skill package installed in AI clients (e.g., Codex, Claude Code) that enables AI to understand and invoke operations. The workflow is: AI Agent → CLI/daemon → Connector → EasyEDA Pro project. All operations include pre-write checks, post-write readback validation, and itemized reports (e.g., layout-lint, check, bridge-check, DRC). ## Installation and Usage - **CLI and Skill**: Supports macOS/Linux (curl script) and Windows (PowerShell script), with SHA-256 and version consistency checks during installation. - **Connector**: Download the `.eext` file from the LCSC plugin market or GitHub Release, then import it in the EasyEDA Pro extension manager. - **Startup**: Run `easyeda daemon start`, enable "Allow external interaction" in EasyEDA, then run `easyeda health` to check connectivity. Users can directly describe needs in natural language, such as "Create a library from the attached PDF" or "Make an ESP32 minimal system board," and the Agent will automatically execute the corresponding operations. ## Capability Boundaries - Complex maze routing requires external Freerouting; the built-in router suits short traces and local connections. - The extension API lacks programmatic undo; projects mitigate risk through source data, pre-write guards, and readback. - Controlled impedance parameters cannot be fully read, so impedance compliance cannot be automatically claimed. - PDF-based library creation depends on specific part numbers and manufacturer evidence; it pauses to ask when ambiguous. ## Development and Contribution The project provides detailed documentation navigation, development environment guides, and circuit block contribution standards, welcoming developer participation. The license is MIT, with some ported code under Apache-2.0.