Exort 嵌入式开发工作台

在桌面工作台中编写、编译和上传微控制器代码,并查看设备串口输出。

源仓库
Razz19/Exort
Star 数
★ 226
最近更新
16 天前
License
AGPL-3.0
主语言
Svelte

30 秒速览

运行形态
桌面应用
可在哪里用
通用 · 跨平台
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Node.js 20 或更高版本npm 10 或更高版本GitArduino CLIOpenCode 运行时/提供商配置Shell / 命令行网络访问本地文件系统
典型场景
Arduino 或 ESP32 开发者想让编码助手协助检查、解释或修改固件。
不适合
  • 只需要通用桌面编程、无需微控制器工作流的开发者
  • 需要所用开发板不兼容 Arduino CLI 的团队

这个 Agent 能做什么,适合哪些场景?

Exort 是一款基于 Electron 的桌面应用,面向 Arduino、ESP32、RP2040、STM32 等微控制器项目。它将 Svelte 与 Monaco 编辑器界面连接到 Electron 主进程,由主进程管理 OpenCode 运行时、项目文件、Arduino CLI 和串口能力。开发者可以让 OpenCode 检查和修改本地工作区代码,再编译、上传到目标板,并在串口监视器或绘图器中观察输出。应用支持内置免费 OpenCode 模型,也允许配置兼容 OpenCode 的自选提供商。它适合希望把固件编辑和硬件迭代集中在桌面应用中的开发者;实际编译和上传能力取决于板卡核心、工具链、USB 驱动和上传协议。

打开本地项目文件夹后,Exort 通过 OpenCode 检查工作区、解释代码并编辑文件;项目管理器会保存本地工作区会话。应用可安装和管理 Arduino CLI 板卡平台与核心,并提供自动或手动编译、上传操作。连接开发板后,串口监视器读取实时设备输出,串口绘图器将数值串流绘制成图表。界面通过 preload IPC(window.electronAPI)与 Electron 主进程交互,渲染器不直接访问 OpenCode、文件、串口或 Arduino 工具。

  1. Arduino 或 ESP32 开发者想让编码助手协助检查、解释或修改固件。
  2. 原型开发者需要快速循环修改代码、编译并上传到开发板。
  3. 硬件调试人员需要查看启动信息、调试日志或传感器串口数据。
  4. 传感器项目开发者希望把数值串口输出绘成图表,观察校准或运行变化。
  5. 嵌入式学习者希望在一个桌面应用中管理本地项目、板卡和 AI 辅助开发。

如何安装或部署这个 Agent?

可从 exort.dev 或 GitHub Releases 下载桌面构建。若从源码运行,需要 Node.js 20 或更新版本、npm 10 或更新版本、Git,以及当前操作系统所需的 Electron/原生 Node 依赖构建工具。源码启动步骤:

git clone https://github.com/Razz19/Exort.git
cd Exort
npm install
npm run dev

Arduino CLI 和 OpenCode 运行时/提供商配置用于板卡工作流及 AI 功能;桌面应用设置中可以安装相关要求。

如何使用这个 Agent?

打开一个本地工作区,使用内置免费模型或配置自己的 OpenCode 兼容提供商,然后让 Exort Agent 创建、检查或修改项目。检查编辑器中的改动,选择目标板和串口,编译并上传,最后在 Serial Monitor 查看日志或在 Serial Plotter 查看数值曲线。可在桌面应用设置中检查本地要求;从源码运行时也可执行:

npm --workspace @exort/desktop run requirements:status

这个 Agent 有哪些优点和局限?

优点
  • 将 OpenCode 辅助编码与本地固件项目编辑放在同一桌面工作流中。
  • 集成 Arduino CLI 板卡平台管理、编译和上传操作。
  • 提供实时串口监视和数值串流绘图,便于硬件调试与校准。
  • 支持内置免费模型,也可连接兼容 OpenCode 的自选提供商。
局限
  • 桌面应用要求 Electron 及其平台构建依赖,不能作为独立库或服务器直接使用。
  • 编译和上传依赖 Arduino CLI、相应板卡核心、工具链、USB 驱动和上传协议。
  • 自选模型提供商需要 OpenCode 兼容配置;README 未列出具体提供商配置步骤。
  • README 未明确说明各模型或自选提供商的使用费用。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Exort 嵌入式开发工作台 当前 64 · 存在缺口 桌面应用免费 + 模型费 ★ 226 16 天前 Svelte —
Tessera 74 · 存在缺口 桌面应用免费 + 模型费 ★ 313 3 天前 TypeScript Codex · Claude Code
Nimbalyst 可视化智能编码工作台 50 · 缺口较多 桌面应用免费 + 模型费 ★ 1.9k 今天 TypeScript Codex · Claude Code
iPolloWork 44 · 缺口较多 桌面应用免费 + 模型费 ★ 6.9k 今天 TypeScript —

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
64/ 100 五分制 3.2 / 5
信任安全 16/29
可靠稳定 9/14
适用触发 12/18
规范维护 12/18
有效结果 10/13
证据核验 5/8
查看各维度的扣分理由
信任安全16 / 29 · 2.8/5

README 描述 renderer 经 preload IPC 访问由 Electron main process 持有的本机能力,并列明工作区文件、Arduino CLI、串口和本地状态的数据路径,因此最小权限与数据流有一定依据,但未展示具体授权边界或逐项权限策略,未给满分。推荐流程要求用户选择板卡和串口,并在编辑器审阅改动;但没有说明修改、编译、上传等操作是否需要逐次确认,用户确认仅得 1 分。测试源码覆盖托管运行时升级校验、路径遍历拒绝、迁移回滚和错误处理;敏感凭据如何加密、保留或清除没有充分说明,外部副作用(尤其编译和上传)的确认与恢复说明也有限。升级测试显示失败时恢复运行时数据、版本并清理候选安装,因此回滚得 3 分。README、package 元数据与许可证文件可追溯项目来源和许可,但作者邮箱为空,且未提供维护者响应或发布责任说明,来源归属与维护责任仅部分清楚。

可靠稳定9 / 14 · 3.2/5

README 的产品描述、功能表和架构图大体一致,且 package scripts 提供构建和类型检查入口;但这些静态材料不足以证明产品行为一致,故自洽性得 2 分。依赖版本、Node/npm 要求、Arduino CLI 与 OpenCode 运行时需求有说明,发布 workflow 也呈现安装和打包步骤;但本地运行仍依赖外部工具、模型提供方和兼容板卡环境,未覆盖其可用性保障,依赖可用性得 2 分。测试源码包含离线错误、版本不匹配和迁移失败等案例,updater 还区分静默后台错误和可操作的手动错误;这些是源码证据而非执行结果,且没有完整面向用户的错误指南,因此错误消息得 2 分。

适用触发12 / 18 · 3.3/5

README 明确列出学习、原型、调试等目标用户和 Arduino、ESP32、RP2040、STM32 等使用场景,得 3 分。它说明了支持范围取决于板卡核心、工具链、USB 驱动和上传协议,也描述了桌面应用的 IPC 边界;不过 Agent 可做的操作及其限制没有详尽清单,能力边界得 2 分。触发条件仅以“询问 Agent”及推荐工作流概述,没有具体说明何时自动执行工具或如何区分需要用户发起的动作,触发精度得 1 分。桌面系统、源码运行版本要求、Linux GPU 启动问题和板卡依赖均有说明,但各操作系统的完整适配细节有限,环境适配得 2 分。

规范维护12 / 18 · 3.3/5

README 按功能、架构、要求、安装、工作流和支持板卡组织信息,结构清楚但未提供更深入的配置参考,信息架构得 2 分。下载与源码安装步骤、常用 npm 命令及部分环境要求已列出,仍缺少完整的故障排查和配置细节,安装说明得 2 分。仓库与工作区名称、版本字段及相关命令在所给材料中较一致,但证据范围有限,命名稳定性得 2 分。推荐工作流和命令示例具体,FAQ 未见,示例与常见问题得 2 分。支持板卡依赖本机核心、工具链、驱动和协议,Linux GPU 问题也有说明;其他已知限制未充分罗列,得 2 分。README、package.json 和 LICENSE 均标为 AGPL-3.0-only,许可证文件内容明确,得 3 分。package.json 有 0.4.0 版本,发布 workflow 校验标签与桌面包版本并生成发布说明,但未提供所给材料中的人工变更记录,版本与变更记录得 2 分。package 作者字段有姓名但邮箱为空,未明确维护团队、支持响应承诺或更新路径责任人,维护责任得 1 分。

有效结果10 / 13 · 3.8/5

产品提供代码编辑、编译上传、串口监控与绘图的集成工作流,且 README 给出操作顺序,因此输出可用于实际嵌入式迭代;但没有界面或结果样例说明输出质量,得 2 分。把 OpenCode Agent 与板卡管理、编译上传和实时串口观察整合到桌面环境,对嵌入式开发有明确增量价值,得 3 分。免费模型、可自带 provider 和本地工作区历史降低了部分使用门槛,但仍需配置运行时、工具链与硬件,且没有成本或性能数据,成本收益得 2 分。

证据核验5 / 8 · 3.1/5

README 对功能、要求和架构作出可定位陈述,测试源码也具体展示运行时更新、校验及回滚逻辑;但没有逐项将产品声明映射到实现或验证记录,主张可追溯性得 2 分。README、package.json、发布 workflow 与测试源码在运行时管理和发布流程方面相互印证;部分文档功能没有对应源码证据,且 workflow 是配置而非已执行结果,交叉佐证得 2 分。README 将需求、支持条件和推荐步骤分别表述,测试源码可见其测试场景;但没有明确标注所有产品主张的证据状态,且静态材料不能证明测试已运行,事实与推断区分得 2 分。

风险与缓解建议
  • 静态材料不能证明测试或发布流程实际执行,也不能证明 Agent 的工具调用、权限提示或上传行为在运行时符合文档。
  • 连接自带 provider 时需自行确认凭据存储和数据发送路径;所给材料未说明凭据保护细节。
  • 编译和上传可能影响连接的硬件;README 建议用户选择板卡与串口,但没有说明每项操作的确认门槛或恢复方式。
证据充分度:低 评估于 2026年10月13日 审查版本 bd05d654ed9e
查看完整评分方法 →

常见问题

Exort 能用于哪些开发板?
它面向 Arduino CLI 支持的平台,README 列出 Arduino、ESP32、ESP8266、RP2040、STM32 和 Teensy 等。实际编译与上传还取决于核心、工具链、USB 驱动及上传协议。
使用 Exort 是否必须自备模型提供商?
不一定。README 表示应用附带免费 OpenCode 模型,也支持配置自己的 OpenCode 兼容提供商;未说明具体提供商及其费用。
Exort 可以完全离线使用吗?
README 没有说明完整离线支持。AI 功能需要 OpenCode 运行时或提供商配置;串口和 Arduino 工作流则依赖本地工具与已连接的设备。
如果启动时遇到 GPU 进程错误怎么办?
Linux 上遇到 “GPU process isn't usable” 时,README 建议设置 EXORT_DISABLE_HARDWARE_ACCELERATION=1 后启动 AppImage,以使用软件渲染。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents