EasyEDA API Skill

🔌 嘉立创EDA Pro智能自动化开发套件

为嘉立创EDA Pro提供完整API自动化支持,含120+类、WebSocket桥接、实时调试与扩展开发,适合PCB设计、原理图编辑及库管理的专业AI辅助开发。

收藏
27.2k
安装
6.1k
版本
1.1.3
CLS 安全性认证2026-07-14
点击查看完整报告 >

使用说明

核心功能

easyeda-api 是专为嘉立创EDA Pro(EasyEDA Pro)设计的AI代理技能,实现程序化控制PCB设计、原理图编辑、封装/符号管理及项目操作。核心能力包括:

  • 完整API覆盖:120个类、62个枚举、70个接口、19个类型别名的全量文档
  • WebSocket桥接架构:Node.js桥接服务器(端口49620-49629)在AI代理与运行中的EDA客户端间建立实时双向通信
  • 实时调试能力:代码直接在EasyEDA浏览器运行时中执行,支持即时反馈与迭代
  • 扩展开发支持:完整的扩展开发文档、运行时约束规范及iframe数据传递方案

显著优势

1. 深度集成:通过官方扩展run-api-gateway.eext实现与EDA客户端的原生级交互
2. 文档完备:API参考、快速查询表、源代码格式规范三层文档体系

3. 多窗口支持:智能检测并管理多个EDA实例,支持动态窗口切换

4. 单位与坐标安全:明确标注PCB(1mil)与原理图(0.01inch)单位差异,避免常见定位错误

5. 异步模式规范:清晰定义PCB图元修改的toAsync()工作流

局限性与风险

| 维度 | 说明 |
|------|------|
| **环境依赖** | 需Node.js 18+及EasyEDA Pro桌面客户端,配置门槛较高 |
| **权限约束** | 部分API受EDA许可证层级限制,非代码问题可能导致调用失败 |
| **单线程阻塞** | 桥接服务器须后台运行,前台执行将阻塞AI会话 |
| **上下文隔离** | 主扩展进程与iframe间需通过`sys_Storage`桥接,非标准浏览器模式 |
| **超时风险** | 默认30秒超时,复杂操作需分片处理 |

适用人群

  • 硬件工程师:批量PCB布局、自动化DRC检查、设计规则验证
  • EDA扩展开发者:构建定制工具链、自动化设计流程
  • AI-Hardware集成研究者:探索LLM辅助电子设计的边界
  • 教育场景:程序化演示EDA操作、生成教学用例

安全评估

  • 代码注入风险:通过桥接执行的代码在EDA浏览器沙箱中运行,无Node.js系统API访问
  • 网络暴露:服务仅绑定localhost,端口范围受限,无外部暴露
  • 数据安全:项目数据通过本地WebSocket传输,不经过第三方服务器

使用要点

1. 触发会话:用户说"嘉立创EDA,启动!"时立即回复📋 EasyEDA Session设定会话标题
2. 强制校验:每次API调用前验证documentType匹配(PCB/Schematic)

3. 枚举优先:图元创建时禁用原始数字,必须使用EPCB_LayerId等枚举

4. await强制:所有返回Promise<T>的方法必须await,这是最常见错误源

本技能代表了AI代理与专业EDA软件深度集成的先进实践,将传统需要手动操作数小时的设计任务压缩为可编程、可复用的自动化流程。

安全解读

核心用法

EasyEDA API Skill 是嘉立创 EDA(EasyEDA Pro)的官方桥接工具,允许 AI 代理在运行中的 EDA 客户端内直接执行 JavaScript 代码。核心架构包含:

1. 本地桥接服务器(Node.js):监听 127.0.0.1:49620-49629,提供 HTTP/WebSocket 双协议接口
2. EDA 扩展网关run-api-gateway.eext):在 EDA 客户端内运行,接收并执行代码

3. 完整 API 文档:120+ 类、62 枚举、70 接口的 TypeScript 定义与使用示例

典型工作流程

  • 用户触发「嘉立创EDA,启动!」→ AI 启动桥接服务器 → 用户安装 EDA 扩展 → 建立 WebSocket 连接 → AI 通过 /execute 端点发送代码 → EDA 执行并返回结果

核心能力覆盖

  • 项目管理(DMT_Project):创建/打开/枚举项目、团队、文件夹
  • 原理图操作(SCH_*):页面管理、元件放置、连线、选中控制
  • PCB 设计(PCB_*):图元创建(焊盘、过孔、铺铜、走线)、DRC 检查、层管理
  • 库管理(LIB_*):符号、封装、3D 模型、设备搜索
  • 扩展开发:IFrame 面板、对话框、存储、消息总线等系统 API

显著优点

1. 官方生态集成:与嘉立创 EDA 官方 GitHub 组织关联,API 文档完整、版本同步
2. 实时双向调试:代码即时在 EDA 浏览器环境执行,无需编译或重启

3. 完整类型支持:提供枚举值、接口定义、单位换算等关键信息,避免"猜参数"

4. 多窗口管理:支持同时连接多个 EDA 窗口并动态切换

5. 扩展开发友好:覆盖从原型验证到发布扩展的全流程

潜在局限与风险

1. 坐标单位陷阱:PCB 使用 1mil、原理图使用 0.01inch(10mil),混淆会导致 10 倍位置偏差
2. 异步模式复杂度:修改 PCB/SCH 图元需 get() → toAsync() → setState_*() → done() 四步流程

3. 文档状态依赖:必须先打开项目才能操作内部文档,必须先激活 PCB/原理图页才能调用对应域 API

4. 权限限制:部分 API 受 EDA 许可证/版本限制,失败不一定是代码错误

5. iframe 上下文隔离:扩展主进程与 IFrame 不能直接 window.parent 通信,需通过 sys_Storage 桥接

适合人群

  • 硬件工程师:需要批量修改封装、自动生成测试点、执行 DRC 脚本
  • 扩展开发者:开发 EDA 插件、自定义面板、自动化工作流
  • 教育/培训场景:演示 EDA 操作、生成标准化教学项目
  • 小型团队协作:统一项目模板、批量导出 BOM/ Gerber

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 代码执行风险 | AI 生成的代码在 EDA 环境运行 | 本地仅限 127.0.0.1,有 handshake 验证 |
| 项目数据损坏 | 错误 API 调用可能修改设计 | 操作前建议手动保存,关键操作加用户确认 |
| 超时/卡死 | 复杂操作或 EDA 无响应导致 | 默认 30s 超时,大任务建议拆分 |
| 多窗口混淆 | 未确认活动窗口导致操作对象错误 | 首次执行时列举窗口,要求用户选择 |

安全评估

  • 网络安全:仅本地通信,无外发互联网请求
  • 依赖审计:仅依赖 ws@8.18.0,无已知 CVE
  • 代码质量:~500 行桥接代码,结构清晰,有完整错误处理
  • 来源可信:发布者与 EasyEDA 官方 GitHub 组织关联,MIT 开源

EasyEDA API Skill 内容

format文件夹
pcb文件夹
project文件夹
schematic文件夹
guide文件夹
ancillary-projects文件夹
references文件夹
classes文件夹
enums文件夹
interfaces文件夹
types文件夹
scripts文件夹
user-guide文件夹
手动下载zip · 407.9 kB
3d.mdtext/markdown
请选择文件