工程模式:写入 Agent 系统指令级别的工程肌肉记忆。触发后强制 UNDERSTAND→DECOMPOSE→SAFETY→EXECUTE→VERIFY→RECOVER 六阶段状态机。使用场景:(1) 用户要求写/改/重构代码 (2) 涉及 edit/write/exec 编程操作 (3) 用户说'工程模式''e...
Engineering Mode
功能概述
Engineering Mode是一项面向实际任务的技能,主要用于六阶段状态机,改代码前必须走完;状态机概览;
核心要点
- UNDERSTAND — 改前必读;
- 目标 :确认自己真的理解改动范围;
- 强制动作 :;
使用与执行
read 目标文件,至少覆盖改动位置周围 50 行;追踪调用链:谁调用它?它调用谁?(grep / read 相邻文件);输出简短理解小结(3-5 行),确认后进入下一步;理解不足 → 继续读,不进入 DECOMPOSE。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
结果检查与注意事项
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
Engineering Mode
六阶段状态机,改代码前必须走完。
状态机概览
UNDERSTAND → DECOMPOSE → SAFETY → EXECUTE → VERIFY ──成功→ 下一步
│
失败
│
RECOVER ──成功→ 继续循环
│
失败 → 回退→报告
阶段定义
1. UNDERSTAND — 改前必读
目标:确认自己真的理解改动范围。
强制动作:
read目标文件,至少覆盖改动位置周围 50 行- 追踪调用链:谁调用它?它调用谁?(grep / read 相邻文件)
- 输出简短理解小结(3-5 行),确认后进入下一步
- 理解不足 → 继续读,不进入 DECOMPOSE
检查清单:需要时读 references/pre-edit-checklist.md
2. DECOMPOSE — 任务拆解
目标:把复杂任务拆成独立可验证的原子步骤。
强制动作:
- 每步 ≤ 15 分钟工作量
- 每步有明确成功标准("跑过某个测试" / "编译通过" / "输出某段日志")
- 使用
update_plan写入步骤列表 - 拆不出来 → 说明理解不够,回 UNDERSTAND
注意:
- 简单任务(1-2 文件、单函数改动)可跳过 DECOMPOSE,直接到 SAFETY
- 3+ 文件或多步骤依赖 → 必须拆
3. SAFETY — 安全隔离
目标:建立可回退的安全点,不污染用户工作区。
强制动作(分支隔离):
# 记录原始分支名 ORIGINAL_BRANCH=$(git branch --show-current) # 从当前分支切出临时工作分支 git checkout -b eng-mode-$(date +%s)
禁止:
git add -A(会夹带脏数据)git stash(冲突风险)- 跳过 SAFETY 直接改
4. EXECUTE — 最小改动
目标:一个逻辑变更,最小修改集。
强制动作:
- 使用
edit(首选)或write做精确修改 - 一次只做一个逻辑变更
- 不改无关代码(格式化、重构除非是本步目标)
禁止:
- 边改边加新功能
- 顺带重构无关代码
- 一次改多个不相关的文件
5. VERIFY — 改后必验
目标:确认改动没有破坏东西。
三级验证:
| 级别 | 触发 | 操作 | 超时 |
|---|---|---|---|
| L1 Lint | 每次编辑后必做 | eslint / flake8 / shellcheck |
10s |
| L2 单元 | 改动涉及逻辑变化 | 只跑相关测试文件 | 30s |
| L3 全量 | 所有步骤完成后 | npm run build / pytest / cargo build |
120s |
超时视为失败。详细策略见 references/validate-strategies.md
6. RECOVER — 失败恢复
目标:修一次,修不好就回退汇报。
强制动作:
- 分析错误信息(读 stderr/stdout)
- 检查改动:
git diff - 修一次——仅做代码文本修改,不创建新 checkpoint
- 重新 VERIFY
状态机互斥铁律:
- RECOVER 阶段 绝对禁止 触发 SAFETY(创建 checkpoint / 切分支)
- RECOVER 阶段 绝对禁止 触发 DECOMPOSE(重新拆任务)
- RECOVER 阶段 只能做:读错误 → 改代码 → 重验证
- 修复成功 → 回到循环,正常进入下一步的 SAFETY
回退(修复失败):
# 动态获取最近 checkpoint(不依赖环境变量传递) LATEST_CHECKPOINT=$(git log --grep="^checkpoint:" -1 --format=%H) git reset --hard $LATEST_CHECKPOINT # 或:直接切回原分支,丢弃临时分支 git checkout $ORIGINAL_BRANCH git branch -D eng-mode-*
回退后:分析失败原因 → 报告用户 → 等待指示
详细恢复模式见 references/error-recovery.md
状态机互斥规则
| 当前阶段 | 允许的操作 | 禁止的操作 |
|---|---|---|
| UNDERSTAND | read, grep, 分析 | edit, write, git commit |
| DECOMPOSE | update_plan, 分析 | edit, write, git commit |
| SAFETY | git checkout -b, git commit | edit, write |
| EXECUTE | edit, write | git commit, git checkout |
| VERIFY | exec (lint/build/test) | edit, write, git commit |
| RECOVER | read error, edit, exec verify | git commit, git checkout, update_plan, DECOMPOSE |
进入下一阶段前必须确认当前阶段完成。
Git 提交规范
仅在 SAFETY 阶段做 checkpoint commit,格式:
checkpoint: <简短描述>
EXECUTE 后的增量提交(可选,在 VERIFY 通过后执行):
: <简短描述>
type: feat / fix / refactor / chore / test
详见 references/commit-discipline.md
Reference 加载条件
按需加载,不一次性全吞:
| Reference | 何时加载 |
|---|---|
references/pre-edit-checklist.md |
UNDERSTAND 阶段,项目结构复杂或改动跨多文件 |
references/validate-strategies.md |
VERIFY 阶段,需要确认特定语言的验证命令 |
references/error-recovery.md |
RECOVER 阶段触发时 |
references/commit-discipline.md |
需要提交或用户询问提交规范时 |
不适用场景(跳过工程模式)
以下情况直接操作,不走六阶段:
- 纯聊天、回答问题、查资料
- 系统管理(改配置、重启服务、查进程)
- 甩给 CC/Codex 的任务(子代理自行管理)
- 单文件单行的简单修改(如改一个常量值、改一行注释)
- 用户明确说"不用工程模式"
判断标准:涉及 2+ 文件 或 逻辑改动 → 触发工程模式。
热门AI工具
相关专题
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题梳理XORM框架的入门路径,从框架定位、依赖安装、连接数据库到跑通第一个增删改查示例,讲清Engine初始化、日志开启与项目目录规划,并对比GORM等同类ORM的差异,帮助Go开发者建立整体认知。
0
2026.11.04
本专题聚焦Docker Desktop容器端口映射与访问配置,整理从创建容器、设置端口绑定到验证本地服务访问的操作流程。针对端口被占用、映射配置错误、容器服务无法访问等情况,也提供相应的检查方向,方便用户完成端口配置。
0
2026.11.03
想使用Docker Desktop将本地项目构建成Docker镜像?本专题围绕镜像构建的实际操作展开,介绍Dockerfile编写、构建命令使用、镜像标签设置和构建日志查看等内容,同时整理镜像无法生成、依赖安装失败及构建缓存异常等问题的排查思路。
0
2026.11.03
本专题聚焦Docker Desktop容器创建与运行配置,介绍通过本地镜像或远程镜像创建容器的方法,以及容器启动、终端访问、日志查看和基础管理等操作。针对端口冲突、参数配置不当、容器无法启动等情况,也整理了相应的排查方向。
0
2026.11.03
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.7万人学习
共6课时 | 54.7万人学习