EasyEDA API Skill

⚡ AI 驱动 EDA 自动化,实时操控 PCB 设计

通过 WebSocket 桥接实现 AI 对 EasyEDA Pro 的实时自动化控制,支持 PCB/原理图设计、库管理与扩展开发,含 120+ 类完整 API 参考。

收藏
27.7k
安装
6.1k
版本
1.0.4
CLS 安全性认证2026-08-02
点击查看完整报告 >

使用说明

核心功能

EasyEDA Pro API Skill 是一套面向 AI Agent 的自动化控制方案,通过 WebSocket 桥接技术实现对嘉立创EDA专业版(EasyEDA Pro)的实时操控。该技能包含三大核心能力:

1. 完整 API 参考体系

提供 120+ 类、62 枚举、70 接口、19 类型别名的完整文档,涵盖 DMT(文档管理)、PCB(印刷电路板)、SCH(原理图)、LIB(库管理)、SYS(系统)五大模块。所有 API 均按模块化组织,支持从索引快速定位到详细签名查阅的完整查阅链路。

2. WebSocket 桥接执行

基于 Node.js 的桥接服务器在 49620-49629 端口范围自动寻址,建立 AI Agent 与 EasyEDA Pro 客户端的双向通信。执行代码在 EDA 浏览器运行时中运行,通过 eda 全局对象访问全部 API,支持实时调试与扩展开发场景。

3. 扩展开发支持

不仅支持对运行中 EDA 实例的实时操控,还提供扩展开发所需的完整文档、类型信息、调试能力,包括 IFrame 集成、文件系统访问、消息通知等系统级能力。

显著优点

  • 官方背书:由嘉立创EDA官方(JLCEDA)维护,API 与产品版本同步更新
  • 完整覆盖:从项目创建、文档编辑到图元操作、DRC 检查的全链路 API 支持
  • 实时反馈:WebSocket 双向通信,执行结果即时返回,支持复杂异步操作模式
  • 多窗口管理:支持同时连接多个 EDA 实例并动态切换
  • 开发友好:提供快速参考手册、常见错误防范指南、坐标单位对照表等实用工具

潜在局限

  • 环境依赖:要求 Node.js 18+ 及 EasyEDA Pro 桌面客户端,不支持网页版
  • 扩展安装:需在 EDA 客户端手动安装 run-api-gateway.eext 扩展方可建立连接
  • 单位易错:PCB(1mil)与原理图(0.01inch)坐标单位不同,极易混淆导致定位错误
  • 异步复杂:图元修改需遵循 get → toAsync → setState → done 四步模式,学习曲线较陡
  • 无 Node API:执行代码运行于浏览器沙箱,无法直接访问 fs、path 等 Node.js 模块

适用人群

  • 需要批量处理 PCB/原理图的设计工程师
  • 开发 EasyEDA 扩展的第三方开发者
  • 希望将 EDA 操作集成到自动化工作流的团队
  • 需要实时调试和快速原型验证的硬件开发者

常规风险

  • 项目状态风险:API 调用前必须验证项目已打开且文档类型匹配,否则返回 null 或报错
  • 多窗口混淆:多实例场景下需显式指定 windowId,否则可能在错误窗口执行操作
  • 未保存数据丢失openProject() 可能丢弃当前未保存更改,需谨慎调用
  • 超时处理:默认 30 秒超时,复杂操作需拆分代码块
  • 枚举硬编码:直接使用数字而非枚举值会导致不可预期的图层或类型错误

技术架构

AI Agent ←──HTTP/WS──→ Bridge Server(Node.js) ←──WebSocket──→ EasyEDA Pro Client
         49620-49629                          49620-49629

桥接服务自动发现机制、握手验证协议、JSON 消息格式均经过严谨设计,确保连接可靠性与执行安全性。

安全解读

核心用法

EasyEDA Pro API Skill 是嘉立创EDA官方推出的AI编程助手,专为EasyEDA Pro(嘉立创EDA专业版)用户提供完整的程序化控制能力。该技能通过构建本地WebSocket桥接服务器,使AI Agent能够与运行中的EasyEDA Pro客户端建立实时通信,执行JavaScript代码并获取执行结果。

使用流程分为四个关键步骤:首先启动桥接服务器(自动选择49620-49629端口),然后在EasyEDA Pro中安装run-api-gateway.eext扩展建立连接,接着通过HTTP API验证连接状态并选择目标窗口,最后即可发送JavaScript代码到EDA客户端执行。所有代码在EasyEDA的浏览器运行时环境中执行,通过全局eda对象访问120+个API类、62个枚举和70个接口,覆盖项目管理(DMT_)、PCB设计(PCB_)、原理图编辑(SCH_)、库管理(LIB_)和系统功能(SYS_*)五大核心领域。

该技能特别支持扩展开发场景——开发者可利用提供的完整API参考文档、类型定义和桥接调试能力,在开发自定义扩展时实现API查询、代码编写和行为验证的闭环。

显著优点

官方背书,生态完整:作为嘉立创EDA官方维护的技能,与EasyEDA Pro深度集成,API文档覆盖度高达99%,包含详尽的类参考、快速查询手册和大量代码示例,大幅降低学习成本。

实时双向交互:WebSocket桥接架构支持毫秒级响应,AI Agent可实时获取EDA客户端状态、执行复杂查询并接收结构化结果,实现真正的"对话式"硬件设计。

多窗口协同:原生支持多EDA窗口管理,可同时连接多个设计实例并在其间灵活切换,适合团队协作或复杂项目的并行开发场景。

安全沙箱执行:代码在EasyEDA客户端的浏览器沙箱中运行,与宿主系统隔离,避免本地代码执行风险;同时本地回环绑定确保无外部暴露。

开发体验优化:提供从环境检测、依赖安装到错误诊断的完整工具链,内置常见错误模式检测(如坐标单位混淆、异步调用遗漏)和调试建议。

潜在缺点与局限性

本地环境依赖:必须同时运行Node.js 18+环境和EasyEDA Pro桌面客户端,且需手动安装扩展插件,配置流程对非技术用户有一定门槛。

无加密通信:本地HTTP/WebSocket服务未启用TLS,虽仅限127.0.0.1访问,但在多用户共享环境中存在理论上的本地中间人风险。

异步编程复杂度:几乎所有API方法均返回Promise,要求严格遵循await模式;且PCB/SCH图元修改需使用特殊的toAsync()模式,容易因疏忽导致状态错误。

坐标单位陷阱:PCB(1mil)与原理图(0.01inch=10mil)采用不同坐标单位,混用将导致10倍位置偏差,需仔细核对文档中的单位说明。

文档状态敏感:大量API要求特定的文档激活状态(如PCB操作需当前活动文档为PCB类型),状态不匹配会导致静默失败或返回null,需前置验证逻辑。

适合的目标群体

硬件工程师与PCB设计师:希望通过自然语言快速完成重复性设计任务、批量修改封装、自动化DRC检查或生成标准布局的专业人员。

嵌入式开发团队:需要将硬件设计流程与软件CI/CD pipeline集成的团队,可利用该技能实现设计规则自动化验证、版本对比和文档生成。

EasyEDA扩展开发者:正在开发自定义扩展或面板工具的前端开发者,可借助AI辅助完成API查阅、类型推断和实时调试。

教育与培训机构:电子工程相关课程的教师,可通过AI演示快速展示EDA操作流程,降低学生入门门槛。

自动化测试工程师:需要对PCB设计进行回归测试、批量验证或生成测试报告的技术人员。

使用风险

性能风险:复杂查询(如遍历全部项目搜索特定名称)可能导致30秒默认超时,建议拆分代码或增加超时配置;大数据量返回可能阻塞WebSocket通道。

数据一致性风险openProject()等操作会丢弃当前未保存的更改,自动化脚本执行前务必确认保存状态或增加用户确认环节。

版本兼容性风险:EasyEDA Pro客户端更新可能导致API行为变更,建议固定Skill版本并与客户端版本匹配验证。

依赖维护风险:核心依赖ws@8.18.0虽当前安全,但需关注Node.js版本迭代和该库的安全通告,定期执行npm audit

扩展生态风险run-api-gateway.eext扩展的可用性直接影响功能,若官方扩展市场调整需关注替代方案。

EasyEDA API Skill 内容

guide文件夹
ancillary-projects文件夹
references文件夹
classes文件夹
enums文件夹
interfaces文件夹
types文件夹
scripts文件夹
user-guide文件夹
手动下载zip · 359.0 kB
pro-api-sdk.mdtext/markdown
请选择文件