【Code With SOLO】用 TRAE SOLO 从零构建一个支持多协议 Mock 的 API 测试桌面工具

一、摘要

作为一名开发者,在缺乏真实后端设备的情况下进行接口联调一直是痛点。我用 TRAE SOLO 从零构建了一款跨平台桌面端 API Tester 工具,支持 HTTP 和 TCP(含 CRC16 校验)多协议 Mock 服务器,实现了可视化设备管理、实时日志、在线编辑、消息发送等完整功能,大幅提升了前后端分离开发与设备模拟联调的效率。

二、背景

我是一名全栈开发者,在参与一个工业医疗设备管理系统的开发时,面临一个典型困境:后端设备(如质子/重离子治疗系统中的多个子系统)尚未就绪,但前端需要提前进行接口联调和数据模拟

传统做法是手写多个 Mock 脚本或使用零散工具,难以统一管理多协议、多设备的模拟场景。我需要一个能够:

- 同时启动多个不同协议的 Mock 服务(HTTP / TCP)

- 支持设备级的可视化启停管理

- 实时查看请求响应日志

- 支持在运行时动态编辑接口配置

因此,我决定用 TRAE SOLO 来快速构建这个专用工具。

三、实践过程

拆解任务

我把整个项目拆解为以下几个核心模块:

1. Electron 主进程架构 — 窗口管理、IPC 通信通道、服务器生命周期

2. HTTP Mock 服务器 — 基于 Express,支持路由匹配、延迟响应

3. TCP Mock 服务器 — 基于 Node.js net 模块,处理 JSON/JSON-CRC16 协议

4. 可视化 UI 界面 — 设备卡片网格、启动/停止控制、实时日志输出

5. 配置加载与解析 — JSON 配置文件读取、校验、变量插值

6. 在线编辑功能 — 运行时新增/编辑设备和接口端点

7. 消息发送功能 — 模拟设备间通信,支持预设保存

用到的 SOLO 能力

- Agent 模式 — 用于实现多文件协同的复杂功能,如设备管理完整的 CRUD、日志系统的设备专属颜色分配

- SearchCodebase 上下文理解 — SOLO 能自动理解已有的代码风格和架构,在新增功能时保持一致性

- Plan 模式 — 在实现复杂功能前,先规划方案再执行,减少返工

- Bug 定位与修复 — 中间遇到 TCP 粘包处理和 CRC 校验位计算问题,SOLO 快速定位并给出了可靠的实现方案

关键 Prompt 示例

在构建过程中,一些关键的 Prompt 包括:

「帮我设计一个 Electron 应用的架构,主进程管理多个 HTTP/TCP 服务器实例,

渲染进程展示设备列表,通过 contextBridge 进行安全 IPC 通信」

「为 TCP 服务器增加 JSON-CRC16 协议支持,需要计算 4 字节校验前缀,

并在接收和发送时自动处理校验」

「为每个设备卡片分配一个从 15 色调色板中通过哈希算法唯一分配的日志标签颜色」

踩过的坑

- TCP 粘包问题:在 TCP 流式传输中,数据可能分多次到达。SOLO 帮助设计了基于消息分隔符和 CRC 校验长度的拆包逻辑

- Electron 安全策略:渲染进程不能直接访问 Node.js API,需要通过 preload.js 做 contextBridge 桥接,SOLO 准确遵循了 Electron 安全最佳实践

- 配置文件热加载:初始版本不支持重新加载配置,SOLO 提出了监听文件变化和手动刷新两种方案,最终采用了路径重载方式

四、成果展示

最终产出的 API Tester 是一个完整的、可编译发布的 Electron 桌面应用:

功能模块 说明
多设备并行 Mock 同时运行 HTTP / TCP / TCP-CRC16 协议的多个模拟服务器
可视化设备管理 卡片网格展示设备,一键启停,运行状态高亮指示
实时日志系统 按级别着色输出,每个设备独立标签颜色,支持自动滚动和锁定
在线编辑 运行时新增/编辑设备和接口,支持动态修改响应内容
消息发送 向任意运行中的设备或远端服务器发送 HTTP/TCP 消息,支持预设保存
内联变量插值 响应模板支持 ${变量名} 语法,动态填充请求中的字段值
跨平台桌面应用 基于 Electron,界面为深色主题,打包为原生安装程序

主界面展示(建议补充截图):

- 设备卡片列表截图

- 运行状态截图

- 日志输出截图:多设备实时日志,不同颜色的标签前缀

- 编辑模态窗口截图:在线编辑设备配置和接口端点

- 接口查看器截图:查看设备所有接口详细配置

五、效果与总结

提效了多少?

以前手动搭建一套多协议 Mock 环境需要 2-3 小时:写多个 Express 路由文件、开多个终端窗口运行、用 Postman 手动测试。现在通过 API Tester,5 分钟就能完成配置加载和多设备启动,效率提升 20 倍以上

SOLO 在我流程中做了什么?

TRAE SOLO 在整个开发过程中扮演了 「资深结对编程伙伴」 的角色:

- 架构设计:帮助设计了合理的 Electron 主进程/渲染进程分离架构

- 代码生成:从零生成了 HTTP/TCP 服务器核心代码、完整的 UI 交互逻辑、配置解析引擎

- 问题诊断:在遇到 TCP 粘包、CRC 计算、模态框数据绑定等问题时,快速定位原因并给出修复方案

- 代码重构:当某个功能模块变得复杂时,主动建议并实施了重构(如将配置加载逻辑从 main.js 抽离为独立模块)

可复用的方法:

这次实践沉淀了一套 「AI + Electron 桌面工具快速搭建方法论」

1. 先用自然语言描述功能需求,让 SOLO 输出架构方案

2. 采用「核心引擎 → IPC 桥接 → UI 界面」三层架构,每层独立迭代

3. 遇到复杂功能时先用 Plan 模式规划,再用 Agent 模式执行

4. 利用 SOLO 的上下文记忆能力,保持代码风格和架构一致性

对 AI 工作方式的思考:

这次体验让我深刻感受到:AI 不是替代开发者,而是放大了开发者的能力。以前因为时间成本望而却步的「自制工具」想法,现在有了 SOLO 的辅助,完全可以快速落地。开发者的价值从「写代码」转向了「定义问题和设计架构」,这正是 AI 时代最值得拥抱的变化。