EasyEDA Pro API Skill 综合评估
核心用法
本技能是嘉立创EDA(EasyEDA)专业版的官方API控制方案,通过WebSocket桥接架构实现AI与运行中EDA客户端的实时通信。核心工作流包括:启动Node.js桥接服务器(端口49620-49629自动发现)→ 在EDA客户端安装run-api-gateway.eext扩展 → 通过HTTP/WebSocket协议发送JavaScript代码至EDA浏览器运行时执行。
技能提供完整的开发资源:
- API参考:120个类、62个枚举、70个接口、19个类型别名,覆盖DMT_(文档管理)、PCB_(PCB/封装)、SCH_(原理图)、LIB_(库管理)、SYS_(系统)六大模块
- 文档格式参考:project/schematic/pcb目录下的源码格式规范,支持直接分析/修改EDA文档源数据
- 执行模式:支持实时调试(直接操控运行中的EDA)和扩展开发(生成符合约束的扩展代码)
显著优点
1. 官方权威性:由JLCEDA官方维护,API文档与软件版本同步更新
2. 完整覆盖:从项目创建、原理图编辑、PCB布局到DRC检查的全链路自动化
3. 实时交互:区别于静态文件生成,可直接操控运行中的EDA实例,即时反馈
4. 多窗口支持:自动发现并管理多个EDA窗口,支持窗口切换
5. 安全隔离:扩展运行沙箱化,禁止直接使用alert()/localStorage等浏览器API,强制使用eda.sys_*安全替代方案
潜在缺点与局限性
1. 环境依赖严格:需Node.js 18+、EasyEDA Pro桌面版、特定扩展安装,配置门槛较高
2. 单位陷阱:PCB使用1mil单位,原理图使用0.01inch(10mil)单位,极易混淆导致10倍位置偏差
3. 异步复杂度:几乎所有API返回Promise,需严格await;修改图元需特殊toAsync()模式
4. 权限受限:部分API受用户许可证/项目设置限制,非代码问题导致失败
5. 无全局搜索:项目需按团队→文件夹层级遍历,无法直接按名称全局查找
适合人群
- 硬件工程师:需要批量处理封装、自动化布局布线、执行复杂DRC验证
- EDA扩展开发者:构建自定义插件、自动化设计流程、企业级设计规范检查
- AI辅助设计研究者:探索人机协作的PCB设计新模式
- 教育/培训机构:自动化生成教学用例、批量评估学生设计
常规风险
- 数据丢失风险:
openProject()会丢弃当前未保存更改,操作前需显式确认 - 文档状态敏感:PCB/SCH API必须在对应文档激活状态下执行,否则返回null或报错
- 枚举值误用:直接使用数字代替枚举(如
layer: 1而非EPCB_LayerId.TOP)导致静默错误 - iframe上下文混淆:扩展iframe中需直接使用
eda而非window.parent.eda,常见AI错误模式 - 资源泄漏:桥接服务器长期后台运行,需主动检测会话结束并清理
安全等级说明
技能本身不涉及网络对外暴露,通信限于本地环回(127.0.0.1)。但execute端点可运行任意JavaScript代码,虽受EDA运行时沙箱限制,仍需警惕恶意代码通过eda.sys_FileSystem等接口操作本地文件。建议仅在受控环境使用。