easyeda-agent skill
A skill, CLI and MCP server for EasyEDA Pro: the agent reads datasheets, draws schematics and boards and checks them with DRC
- 881 ★ on the repository
- Last commit
Broad access
Why this level
- Changes the EasyEDA Pro project: creates and edits schematics, boards and libraries and saves files, with no programmatic undo in the editor API
- Installs the easyeda binary and a background daemon that starts by itself, and installation runs a script from the internet through curl and bash
- Through the connector extension the agent's commands reach the editor and change the open project
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/easyeda-agentDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Changes the EasyEDA Pro project: creates and edits schematics, boards and libraries and saves files, with no programmatic undo in the editor API
- Installs the easyeda binary and a background daemon that starts by itself, and installation runs a script from the internet through curl and bash
- Through the connector extension the agent's commands reach the editor and change the open project
This is third-party code. Review the repository files before installing.
What it does
easyeda-agent gives an agent hands inside EasyEDA Pro, the professional edition of the JLC EDA design tool. It has three parts: the easyeda command with a local daemon, the EDA Agent Connector extension inside the editor and a skill for Claude Code or Codex. The agent does not click the interface. It calls typed actions through the editor's official API and, before and after each write, checks component identity, pin nets, geometry and save state. The set covers the whole path from requirement to board. From a datasheet PDF and a package drawing the agent creates a Symbol, Footprint and Device, with an optional 3D model, and checks the pin-to-pad mapping. From a text brief it picks components, draws the schematic, places modules, draws the outline, the layer stack, routing, copper pours and silkscreen, then runs DRC and manufacturing checks. Non-standard schematic parts can be swapped for standard ones by LCSC number while keeping designators. On top of that sit a library of ready circuit blocks (CH340, ESP32 auto-download, buttons, a USB hub, a buck converter), BOM, netlist and manufacturing exports, an audit log and explicit saving. After a partial success or a timeout the agent first reads the project state back and only then decides what to do next.
Who it is for. For electronics engineers who design boards in EasyEDA Pro and want an agent to take over routine work: libraries, placement, routing, silkscreen and checks.
Good fit when
- You have a chip datasheet PDF and need a Symbol, Footprint and Device built from it, with the pin-to-pad mapping verified
- You need a small board from requirements, such as an ESP32-S3 with 3V3 power, CH340, BOOT and RESET buttons and four layers with an antenna keepout
- A schematic mixes non-standard parts and you need to swap them for standard ones by LCSC number, keeping designators and showing pin differences
- Silkscreen labels collide on a board and need cleaning up: no overlaps with pads, the board edge or each other
- Before handing a board to manufacturing you want one pass: schematic checks, board DRC, BOM, netlist and order files
Not a fit when
- You work in KiCad, Altium or another CAD tool: the set drives only EasyEDA Pro through its extension
- You need a dense board routed end to end: the built-in router suits short, clear connections, and maze routing needs external Freerouting
- You need controlled-impedance calculations: dielectric thickness, permittivity and copper weight are not readable through the editor API, and the set does not claim impedance as met
- You need a manufacturing-ready guarantee: the developer stresses that example results do not replace checks on a real assembly
Example request
Use easyeda-agent: check the current board, find silkscreen labels that overlap pads or cross the outline, fix them, run DRC and save the projectLimitations
- Requires EasyEDA Pro V4 (V4.1.60 is the verified version, that or newer is recommended) and the external interaction option switched on in settings. `easyeda health` reports the state.
- Dense boards need external Freerouting. The built-in router targets short connections and local stretches.
- The editor API has no programmatic undo. The project softens the consequences with pre-write checks, readback and rollback on failure.
- Data for controlled impedance is not readable, so the set does not claim impedance as met.
- Library building from a PDF stops and asks when the scan is blurry, the package suffix is unclear or pad data is missing.
- The AS07 example was built from a drawing rather than a full manufacturer PDF; assembly, a placed instance and DRC were not verified, as the developer states.
How to disable. Disable the EDA Agent Connector extension in the EasyEDA Pro extension manager and switch off the external interaction option. Delete the skill folder from the Claude Code or Codex skills directory and remove the easyeda-agent entry from the MCP settings. The easyeda binary sits in `~/.local/bin` (on Windows `%USERPROFILE%\.local\bin`), the daemon starts on demand and its log lives in `~/.easyeda-agent/daemon.log`. The variable `EASYEDA_NO_AUTOSTART=1` turns auto-start off.
FAQ
How do I connect easyeda-agent to Claude Code or Codex?
Run the install.sh or install.ps1 script: it verifies SHA-256 checksums, installs the easyeda command and the skill, and recognizes Codex, Codex Desktop and Claude Code. Then install the EDA Agent Connector extension from the JLC market, switch on external interaction in EasyEDA Pro and run `easyeda health`.
Can AI design a PCB in EasyEDA Pro?
The agent covers the path from requirements to a board: schematic, placement, outline, layers, routing, copper, silkscreen, DRC and saving. The repository has an ESP32-S3 four-layer example. Manufacturing readiness has to be checked separately.
How do I build a component library from a datasheet?
Give the agent the PDF and the full part number. It checks for an exact match in the EasyEDA and LCSC libraries, then runs `easyeda lib device validate --spec` to check datasheet evidence and `lib device build`, which creates the Symbol, Footprint and Device in your personal library. It asks a question if the package is unclear or dimensions are missing.
Does easyeda-agent have an MCP server?
Yes, a local stdio MCP adapter with 12 tools: connection health, action discovery, one tool for each of seven safe domains, circuit blocks, a guarded workflow and project transfer. The arbitrary-JavaScript domain is deliberately not exposed in MCP. For Codex the server registers with `codex mcp add easyeda-agent`, giving EASYEDA_BIN and the path to `mcp/src/server.mjs`.
What checks does the agent make when writing to a project?
Before a write the agent verifies the target project, page, component identity and source data, and afterward reads back pins, nets, geometry and object bindings. Schematics go through layout-lint, check, bridge-check and DRC. Autosave serves as a safety net, and key steps are saved explicitly.
Discussion
No questions or reviews yet.
Related
SkillsAn MCP server that lets an agent edit an open project in Altium Designer, KiCad or EasyEDA Pro: schematics, boards, libraries, checks
The kct CLI and a Python library for agents: parse and edit KiCad schematics and PCBs with JSON output, run DRC and ERC without a running KiCad
Skills for coding agents that analyze KiCad schematics and boards, catch design mistakes and prepare boards for fabrication
An MCP server for PCB design in KiCAD: the agent places components, routes connections, runs DRC and prepares manufacturing files
A CLI agent for circuit boards: edits KiCad schematics and boards from a description and checks itself with ERC and DRC
A configurator that reads your repo and sets up agents, skills, MCP servers and rules for its stack across several assistants
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| easyeda-agent (this entry) | no | 881 | ||
| KiCAD MCP Server | no | not required | 3,005 | an MCP server for board design in KiCad, a different CAD tool with its own set of actions |
| altium-designer-mcp | no | not required | 86 | writes only Altium Designer libraries and does not touch schematics or boards |
| eda-agent | no | not required | 290 | an MCP server that lets an agent edit an open project in Altium |
README in short
The repository front page opens with a table of scenarios, from building a library from a PDF to releasing a board and its checks, and example prompts for the agent. Results in practice follow: a personal library from a module drawing, a learning Layout with 69 components, a four-layer ESP32-S3 board and connection-driven schematic data. Installation takes three steps: the CLI with the skill, the connector extension and a check with easyeda health. The end describes the limits of what the set can do, documentation links and how to contribute.
README badge
Original SKILL.md
--- name: easyeda-agent description: "通过本地 easyeda CLI、daemon 和连接器操作嘉立创EDA专业版(EasyEDA Pro):依据需求与真实器件数据设计原理图、布局布线 PCB,并回读连接、几何、DRC 与保存结果。适用于已有工程操作及参数化电路设计。" license: MIT metadata: author: zhoushoujianwork version: "1.14.0" homepage: "https://github.com/zhoushoujianwork/easyeda-agent" --- # EasyEDA Agent 用本地 `easyeda` CLI、daemon 和连接器调用 EasyEDA Pro 官方 `eda.*` 接口。 依据需求与器件资料独立设计;有合适样例时复用参数结构和已验证方法。 模型可选择器件、功能划分及几何生成方法;执行与验收遵守同一数据契约。 ## 工作循环 1. 明确供电、接口、机械与装配约束;已有授权内自主完成常规取舍,只澄清影响目标的缺失信息。 2. 现场读写前用 `easyeda health` 确认用户已打开的内置浏览器 Web EDA、工程和文档。 宿主要求 V4;连接或版本异常按[环境配置](references/environment-setup.md)处理,不擅自切换桌面版。 3. 保留原始快照,核实真实库身份、完整引脚、网络、NC、几何与规则;未知不能当作空或 NC。 4. 在源副本中明确连接、核心外围归属、单位与约束,生成候选并检查和预览。 求解器、样例或模型生成的数据均须满足[数据契约](references/schematic-data.md#数据驱动架构基准);不强制某个求解器。 5. 用当前 `--help` / `easyeda actions` 核对接口,从新鲜快照生成计划,支持 dry-run 时先检查。 仅经 Cobra 子命令、typed action 或 `easyeda apply` 写入;同一窗口的调用串行执行。 6. 回读身份、逐脚连接和实际几何,与目标对账。部分成功、超时或 stale ID 时先回读,再修源并重算。 7. 稳定检查点显式保存;最终完成 `save → doc reload → fresh readback/render`。 必须返回布尔 `saved:true`;`saved:false`、缺失或其他类型均为失败,外层 `ok:true` 和 autosave 不替代保存证据。 8. 交付具体结果、证据与未覆盖项;检查、评分、版本或旧 `workflow/stage` 状态不作为普通动作许可。 ## 设计与执行边界 - 禁止 GUI 自动化编辑、保存、重载或验证工程,也不得用 `debug.exec_js` 绕过缺失设计接口。 接口缺失或宿主持续加载、对象不可读时停止依赖写入,保留输入与错误,标 `unsupported/incomplete`,先修工具验证。 - 原始观测不可改写;改源数据后重新生成受保护队列,不手改队列、SVG 或回读来掩盖差异。 - 库中的相近型号须核对引脚和封装后复用;多变体未支持选择时拒绝,不默认取第一项。 - 原理图用 raw、y 向上、5 raw 网格;PCB 命令通常用 mil。明确原点、anchor 与 bbox 语义。 - 保留全部物理脚与明确 NC。`netAmbiguous:true` 表示歧义,不能转成未连接;标记通过非零导线接脚。 同名网络、同框或高分不能代替要求的外围实际直连;功能归属与网名分别核验(`sch check` 按已登记模块报 `peripheral-not-direct`,严格门禁失败)。 - 位号参与碰撞与入框检查;其余属性保留原值,最终导图仍须检查全部可见文字,不能由零碰撞推断无叠字。 - PCB 按真实机械、回流与器件要求安排布局;采集缺测不等于空,检查须说明几何与铜的覆盖范围。 完成前按[布局规则](references/pcb-layout.md)通过连续两轮自检,第二轮包含保存重载和新回读;修复后重来。 展示最新回读版本并获用户确认后进入整板布线;确认前仅允许规则范围内的电源模块局部连接。 - 临时隐藏属性只能使用可恢复的 typed 视图接口,保存旧值、恢复并回读;不改属性内容来隐藏问题。 - DRC、连接检查、几何和图面分别说明覆盖事实;原生 `pcb drc` 的 `passed:false` 是失败,SCH 的 INFO 不等于错误。 离线通过、导出成功或截图不能代替现场持久化、制造或硬件验证。 ## 按任务读取