auto-embedded
让 AI 编码助手可靠写嵌入式固件的全平台开发框架(aemb CLI,对标 Trellis 工程内基座)。 一条命令装进固件工程,Claude/Cursor/Codex/OpenCode/Copilot/Gemini/Windsurf 7 平台即获得: RIPER-5 强制五阶段流程、hw-lock 硬件资源冻结与机械冲突检查、四文件磁盘记忆断点续作、 24 个编译/烧录/调试工具技能、80+ 篇离线知识库、13 个专项流程(含比赛 6-Agent 模式)、 REVIEW 经验回流。项目级 hook 必然注入,不靠模型自觉。 上一代 embedded-dev(Claude 单插件)已全量吸收,本仓即由其更名而来(旧仓归档于 auto-embedded-legacy)。
米醋嵌入式AI+
不为嵌入式AI赚钱,以培养新一代嵌入式AI工程师为己任
auto-embedded
让 AI 编码助手可靠地写嵌入式固件的开箱即用工程框架。
AI 写嵌入式三宗罪:乱猜引脚、上下文断档、空口宣称修好。auto-embedded 一条命令装进你的固件工程——强制五阶段流程、冻结的硬件资源表、落盘的任务记忆、编译/烧录/调试工具技能、80+ 篇离线嵌入式知识库——一次接线,7 个 AI 平台同时生效。
English • 快速开始 • 核心概念 • 架构原理 • 常见问题
为什么需要它?
| 能力 | 改变了什么 |
|---|---|
| 强制五阶段流程 | 每条回复声明所处阶段([MODE: RESEARCH]…)。计划经你审查后才能写代码——不再”上来就改”。 |
| 硬件资源锁 | 引脚 / DMA / 中断优先级先冻结进 hw-lock.yaml 再编码。冲突由脚本 exit code 拦截,不靠 AI 自觉。 |
| 任务记忆落盘 | 进度、改动、研究发现持久化在 .auto-embedded/。新会话自动注入现场、“五问重启”接着干——上下文断档不再杀死任务。 |
| 证据门禁 | 屏蔽”应该没问题”。必须出示编译输出 / 串口日志 / 手册页码才算完成。 |
| 项目规范自我进化 | 每个任务收尾把学到的(决策、坑、约定)沉淀回工程规范库,下次自动注入。 |
| 工具链与知识库内置 | 24 个工具技能(编译/烧录/调试/串口/总线/分析)+ 80+ 篇离线知识库——按工程 profile(芯片/构建/OS 探测)精简装,只给相关的(aemb profile 查、aemb add 增)——AI 查表干活,不瞎编寄存器。 |
| 7 平台一次接线 | 规则写一次,aemb init 按各平台原生语法和钩子机制装进 Claude Code、Cursor、Codex、OpenCode、Copilot、Gemini CLI、Windsurf。 |
前置要求
- Node.js >= 20
- Python >= 3.9
快速开始
# 1. 全局安装 CLI
npm install -g auto-embedded
# 2. 装进你的固件工程(--platforms 选你在用的 AI 工具,或 --all 全装)
aemb init /path/to/firmware-project -u 你的名字 --platforms claude,cursor
# 3. 在该工程用对应 AI 工具新开会话 —— 现场自动注入,直接说需求即可
各平台命令语法、日常命令、维护操作(doctor / update / uninstall)见 快速开始指南。
怎么用
用自然语言说需求,框架自动路由:
| 你说 | 它做什么 |
|---|---|
帮我给 STM32F103 移植一个 SSD1306 驱动 | 先搜本地知识库 → 评估开源驱动 → 移植适配(复用优先,不造轮子) |
查手册,确认 F103 ADC 时钟上限 | 查手册流程:搜 PDF → 提取参数 → 写回代码注释并带页码 |
USART1 中断为什么不触发 | 证据优先排障:先查寄存器配置 / NVIC / 网表,再动代码 |
启用比赛模式,做一个平衡车控制系统 | 6 个专职 AI 角色并行:冻结引脚与接口契约 → MATLAB 仿真过门 → 驱动+算法分头推进 |
工作原理
auto-embedded 用平台钩子和角色化子代理跑一个强约束循环:
- RESEARCH —— 识别芯片、查内置知识库、引脚规划写入
hw-lock.yaml。禁止改代码。 - INNOVATE → PLAN —— 对比方案,产出逐项实施清单(路径 + 函数签名 + 验证标准)。含代码的计划需你确认。
- EXECUTE —— 单写者 Builder 一轮一个改动点、每项给证据;每步确认后本地 git 快照。
- REVIEW —— 先跑机械门禁(
arch-check分层 + 硬件冲突 + 规范完整性),再实测验证;经验沉淀回spec/。
会话开始、每轮对话、每次派子代理都经项目级钩子注入恰好相关的上下文——由各平台钩子机制保证必然发生,不靠模型记性。详见 架构原理。
资源导航
| 需求 | 链接 |
|---|---|
| 安装、首个任务、各平台语法 | 快速开始 |
| RIPER-5、硬件锁、记忆机制、比赛模式 | 核心概念 |
| 注入闭环、仓库结构、扩展平台 | 架构原理 |
| 安装细节与排障 | INSTALL.md |
| AI 自身遵循的协议 | SKILL.md |
FAQ
和自己手写 CLAUDE.md / AGENTS.md 有什么区别?
静态规则文件靠模型自己读、自己记——越写越臃肿,还会悄悄掉出上下文。auto-embedded 通过平台钩子分场景注入(会话开始 / 每轮 / 按子代理角色),用机械检查(脚本 exit code)守门,任务状态落盘可跨会话续作。
只能用于 Claude 吗?
不是。一次 aemb init 同时交付 Claude Code、Cursor、Codex、OpenCode、GitHub Copilot、Gemini CLI、Windsurf,各自用原生配置和钩子机制接线;另有 7 个平台预留注册位。
会动我现有的代码吗?
不会。只写入 .auto-embedded/ 和各平台配置接线,全部记录在 manifest 里;aemb uninstall 可干净剥离(先自动备份)。
它能保证 AI 不犯错吗?
不能——也不假装能。它做的是大幅降低概率(证据要求、冻结硬件表、机械分层检查),并在高风险点强制暂停问你,而不是放任 AI 猜。硬件设计与物理实测仍然靠人。
和老项目 embedded-dev 什么关系?
本仓库就是它的继任者——原地更名。上一代 Claude 单插件的协议、知识库、比赛模式已全量吸收;原独立旧仓归档于 auto-embedded-legacy,旧链接自动重定向。
哪些事它不做?
原理图/PCB 设计、器件选型、焊接、示波器实测、量产认证。它是固件软件链路的工程执行框架——边界诚实,见 核心概念。
Star History
社区与资源
- GitHub Issues
- npm 包
- 感谢 LinuxDo 社区支持
许可协议
本项目采用 PolyForm Noncommercial License 1.0.0(LICENSE · 官方协议)。
个人自用、学习研究、教育与公益用途免费;任何商业用途须另行获取商业授权——包括但不限于:盈利性公司在内部使用、把本项目嵌入商业产品或服务、用它承接付费项目等。是否构成”商业用途”以协议的 Noncommercial Purposes 一节为准。
商业授权咨询请通过 GitHub Issues 联系作者。
官方仓库 • PolyForm Noncommercial 1.0.0 • 作者 DuncanY · 架构对标 Trellis