技能概述
easyeda-api 是专为 AI 智能体设计的嘉立创EDA Pro(EasyEDA Pro)编程控制接口,通过 WebSocket 桥接技术实现 AI 与运行中 EDA 客户端的双向通信,支持 PCB 设计、原理图编辑、封装符号管理及扩展开发等全流程自动化操作。
核心用法
1. 启动桥接服务:Node.js 后端监听 49620-49629 端口,自动发现可用端口
2. 安装 EDA 扩展:在 EasyEDA Pro 中加载 run-api-gateway.eext 扩展建立 WebSocket 连接
3. 执行远程代码:通过 HTTP API 向 EDA 客户端注入 JavaScript 代码,在浏览器运行时中调用 eda.* API
4. 查阅 API 文档:120+ 类、62 枚举、70 接口的完整 TypeScript 定义,含快速参考手册
显著优点
- 官方级完整度:由嘉立创官方维护,API 覆盖 DMT(文档管理)、PCB、SCH(原理图)、LIB(库)、SYS(系统)全模块
- 实时双向交互:支持代码热更新、即时调试、多窗口管理,开发体验接近原生扩展
- 零侵入设计:不修改 EDA 本体,通过标准扩展机制接入,MIT 协议开源
- 扩展开发友好:完整记录 EDA 扩展开发约束(iframe 隔离、替代 API、数据传递模式)
潜在局限与风险
- 环境依赖严格:需 Node.js 18+、EasyEDA Pro 桌面版、特定扩展三方配合
- 单位陷阱高频:PCB 用 1mil、原理图用 0.01inch(10mil),混用会导致 10 倍位移错误
- Promise 异步密集:几乎所有 API 返回 Promise,遗漏
await即得悬停 Promise 对象 - 权限墙隐蔽:部分 API 受许可证/项目设置限制,报错信息与代码错误难以区分
- 浏览器沙箱限制:主进程禁用标准浏览器 API(alert/localStorage/window.open),必须使用
eda.sys_*替代
适合人群
- 硬件自动化工程师:批量生成 PCB、执行 DRC 检查、导出生产文件
- EDA 扩展开发者:开发商业插件、定制工作流、集成企业系统
- 教育/培训场景:程序化演示电路设计过程、生成教学案例
- AI+硬件研究者:探索 LLM 辅助电子设计的边界能力
常规风险
- 会话状态管理:未打开项目/文档即操作会导致静默失败或 null 返回
- 多窗口切换:多实例运行时需显式选择目标窗口,否则操作可能作用于非预期实例
- 资源泄漏:桥接服务持续后台运行,长期闲置占用端口与内存
- 版本锁定:EDA 客户端升级可能导致 API 行为变化,需同步更新技能