mimo code 通过结构化异常分析与可验证修复逻辑闭环实现自动修 bug:精准定位(结合上下文检索、事务分析、git 历史)、约束生成(最小改动、语义校验、git-aware 编辑)、本地验证(单元/集成测试+断言)及记忆增强(sqlite 全文索引复用)。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

MiMo Code 不是靠“猜”修 Bug,而是通过结构化异常分析 + 可验证的修复逻辑闭环来实现自动修复。它把传统调试中“看日志→查代码→试改→验证”的链路,压缩成一次终端指令内完成的可信执行。
异常定位:不止于堆栈,而是结合项目上下文
当输入类似 /fix "订单状态卡在处理中" 时,MiMo Code 不只解析错误日志,还会:
- 自动检索整个仓库中与
order、status、update相关的类、方法、事务注解和调用链 - 识别出
@Transactional方法内提前调用updateStatus()的模式,并比对 Spring 事务传播行为 - 检查 Git 历史中该文件近期修改,判断是否为引入性变更
- 若启用 Compose 模式,会并行触发静态分析(如 SpotBugs 规则)和运行时模拟(如 mock 事务边界)交叉验证
修复生成:带约束的代码编辑,而非自由补全
生成的修复不是简单替换几行代码,而是满足多重工程约束:
- 改动范围最小化:仅修改必要行,保留原有变量命名与风格
- 语义一致性校验:确保新代码不破坏已有类型推导、泛型契约或 AOP 切点匹配
- Git-aware 编辑:自动识别分支保护规则,避免向 protected 分支直接写入;若检测到 CI 配置,会预留
// TODO: add test case提示 - 可逆性设计:默认以 patch 形式输出,支持
mimo apply --dry-run预览,或mimo revert回滚
验证闭环:本地可执行的验证路径
修复后不依赖人工确认,而是构建轻量级验证流:
- 自动运行受影响模块的单元测试(识别
@Test方法或 Jest/Pytest 模式) - 若存在对应集成测试路径(如
OrderServiceIT),启动内存数据库(H2/SQLite)执行端到端流程 - 对修复点插入临时断言(例如
assertThat(order.getStatus()).isEqualTo("CONFIRMED");),失败则回退方案 - 输出
diff + test result summary,附带一句自然语言结论:“✅ 状态更新已移至事务提交后,测试全部通过”
记忆增强:让下一次同类问题更快解决
每次修复都会沉淀为项目记忆,后续遇到相似问题时自动复用:
- 将本次异常特征(关键词、调用栈片段、事务位置)存入 SQLite FTS5 全文索引
- 下次输入
/fix "支付回调后状态未更新",会召回历史中updateStatus before commit的解决方案 - 若修复被人工调整,系统会学习新版本并更新记忆权重,形成渐进式项目理解











