蔡凯升|全栈与 Web3 工程
# 蔡凯升|全栈与 Web3 工程
我在 OneKey 开发硬件钱包 SDK、跨端钱包应用和面向合作伙伴的 B2B 系统。工作横跨设备协议、Web / 桌面 / 移动端、Node.js 服务和生产工具;习惯从真实设备或线上问题出发,把诊断、实现、验证和交付串成完整流程。
**求职方向:**全栈工程师、Web3 / 钱包工程师,以及需要把 AI 工具接入实际研发流程的工程岗位。
作品与代码:GitHub / wabicai (opens new window) · AI 与自动化版简历 · 业务研发版简历
# 我做过的工程
# 1. 硬件钱包 SDK 与跨端 App
**场景。**新设备型号需要在 Web、桌面和移动端稳定连接;地址、签名、隐藏钱包、固件升级等能力还要在不同传输方式和设备状态下保持一致。
**我的工作。**参与 OneKey Pro2 / Neo 的 Protocol V2 接入,围绕 WebUSB、BLE 和 React Native 传输处理设备发现、连接恢复、MTU 协商及会话复用。将 SDK 能力接入钱包 App,处理固件升级进度与重试、Portfolio 数据同步、设备锁定后恢复等流程。最近的 SDK 提交还覆盖 allNetwork 地址调用的会话复用与 macOS BLE 配对错误反馈。
**交付方式。**使用真实设备和 CLI 复现问题,结合 SDK 日志区分协议、传输与 UI 状态问题;修改后验证 SDK 与 App 两侧表现,并维护示例和开发者文档。这里的价值是让底层能力可被产品稳定调用,而不只是让单条命令成功。
# 2. 合作伙伴商店:前后端贯通
**场景。**OneKey B2B 系统包含合作伙伴商店、管理后台和独立 API 服务,需要把目录、定价、辅助下单、支付与账号流程连接起来。
**我的工作。**在 Next.js 商店与 Vite 管理后台推进商品目录、辅助下单和结算体验;在 Medusa v2 / Node.js 后端实现或修复相应的定价查询、订单工作流、支付请求和 Google 登录续接。处理前后端分域带来的登录跳转、会话交换和接口错误,并参与静态构建与发布流程。
**交付方式。**把页面操作追踪到 API、工作流和数据查询,分别验证测试与生产域名下的行为;对失败状态保留可恢复的用户路径。此项目体现我能同时处理界面、业务服务和部署边界。
# 3. MCP 硬件自动化与研发 Agent
**场景。**硬件钱包测试需要按设备屏幕状态执行下一步,人工重复操作成本高,纯脚本又难以处理物理设备的变化。
**我的工作。**参与将设备控制、摄像头截图和 PaddleOCR 屏幕识别封装为 MCP 工具,开发动作预设、执行序列和 React 控制面板;推进助记词钱包创建与验证流程的联调。另在团队研发机器人中维护基于 PR 的 QA 回归 Skill,把改动范围、跨端影响和异常场景整理为 Slack 中可读的测试项。
**交付方式。**保持人工控制与自动流程复用同一执行入口,让停止、错误反馈和问题定位有明确状态;AI 负责提出或调用步骤,真实设备反馈和人工复核决定流程是否继续。
# 4. 工厂生产与验证工具
**场景。**产线需要把读卡器、扫码枪、打印机和设备写入流程组织成操作员可执行的步骤,而不是依赖多条手工命令。
**我的工作。**从零搭建 LiteCard V3 的 Electron / React 图形化工具,复用既有 Python CLI,通过 IPC 组织卡片检测、证书写入、扫码核对、服务端确认和条码打印;扩展 Pro2 / Neo 写号、固件升级及出厂验证流程。
**交付方式。**处理 Windows 打包与日志编码、USB 热插拔、Bootloader 切换和失败重试,在真实工厂环境中核对每一步的状态与结果。
# 我怎样使用 AI 工具
AI 是研发流程中的协作工具。以下写的是工具在流程里的位置,以及我保留哪些工程判断;项目成果以代码、设备和实际运行结果为准。
# Claude Design:界面方案探索
在界面工作开始时,可用 Claude Design 把需求、截图和内容拆成信息层级、页面结构与交互候选,再由我核对真实业务约束、组件能力和移动端布局。它适合快速比较方案,不代替最终的设计取舍、可访问性检查和浏览器验证。具体项目案例仍待补充,因此这里不把它写成已经产生量化成果的项目。
# Codex CLI:跨仓实现与验证
我用 Codex CLI 阅读 SDK、App、前端和服务端代码,追踪一次问题在多个仓库中的路径,再把改动收敛到必要文件。近期工作包括硬件会话与 BLE 问题排查、B2B 商品目录和定价工作流调整、登录续接等。对于设备和支付相关流程,我要求它给出代码依据和最小验证,再亲自检查日志、运行结果与真实设备表现;提交记录和复现步骤比“AI 生成了代码”更重要。
# Grok:独立质疑与交叉评审
遇到改动范围大或方案可能过度复杂时,我会让 Grok 从另一角度评审假设和风险,例如检查蓝牙运行时方案是否引入过多改动、代码是否过度设计。它提供第二意见;是否采纳由代码现状、测试和设备证据决定。这种用法帮助我在方案阶段暴露盲点,但不把模型结论当作验证结果。
# 工程习惯
- 从用户操作或真机异常追到代码、协议和服务边界,先复现再改动。
- 明确个人职责与团队成果,不虚构性能数字或上线效果。
- 在网页、桌面、移动端和硬件之间保留可诊断的状态、日志与恢复路径。