适合什么任务
修复问题需要区分症状、原因和验证证据。先让 Agent 复述复现路径、追踪代码调用,再确认最小修改范围,能够减少无关重构。是否执行命令、安装依赖和运行检查,由任务权限与实际要求决定。
- 适合人群
- 开发者、维护现有项目的工程师与需要处理脚本问题的用户
- 输入材料
- 项目代码、复现步骤、相关日志
- 交付结果
- 问题分析、代码变更、验证说明
开始前,准备这些材料
项目工作区
选择包含源码和依赖说明的本地目录,保留现有未提交修改;提供项目约定或相关说明。
问题与复现步骤
写清输入、期望行为、实际行为和出现环境。日志只提供相关片段,并处理其中的凭证与个人数据。
允许的操作
说明可修改文件、可运行命令和验证范围。明确是否允许安装依赖、访问网络或修改数据库。
登录成功后导航仍显示未登录
以下为教学问题清单。原因必须通过实际项目代码确认,不能仅凭症状套用修复。
| 复现动作 | 期望 | 实际 |
|---|---|---|
| 提交登录表单 | 得到有效会话 | 登录请求成功 |
| 进入账户页面 | 页面与导航都显示用户 | 页面有用户,导航仍显示登录 |
| 网络请求失败 | 与登录失效分别处理 | 需要检查错误处理分支 |
操作步骤:从材料到结果
- 01
复现与阅读调用链
让 Agent 阅读入口、状态读取和相关请求代码,说明哪些条件已从源码确认,哪些仍需日志或运行证据。
这一步得到:复现路径、相关文件和候选原因。
- 02
确定最小修改方案
比较不同状态来源、请求先后顺序与错误处理,列出具体改动和可能受影响的功能;先确认范围。
这一步得到:修改方案与影响说明。
- 03
修改并检查差异
按授权修改,保留用户已有工作,检查是否引入无关格式变化、重复逻辑或敏感信息。
这一步得到:可审阅的代码差异。
- 04
按约定验证并交付
只运行授权范围内的检查,记录实际命令和结果。无法执行的验证单独列出,不把源码检查描述为运行通过。
这一步得到:修改摘要、验证证据与未完成事项。
可复制的任务指令
替换材料路径、目标和输出要求,先确认范围,再执行相应操作。
先定位原因
请阅读当前项目的登录、会话读取和导航状态代码。问题是:登录成功进入账户页后,导航仍显示登录。请先追踪调用链,列出从源码确认的缺陷和仍需运行证据的假设,给出最小修改方案。不要改代码,不安装依赖,不访问生产数据库。
执行已确认修改
请按确认方案修改登录状态同步问题,保留当前工作区已有修改,避免无关重构。按我指定的验证范围检查变更。交付时列出修改文件、行为变化、实际执行的检查和结果;未执行的构建、测试或环境验证必须明确写出,不要提交或部署。
交付什么,怎样检查
- 代码差异
- 与已确认问题直接相关、可审阅的源码变更。
- 修复说明
- 说明原因、改动、影响范围、实际验证和仍需检查的事项。
| 项目 | 应记录的内容 |
|---|---|
| 原因 | 源码或复现证据支持的具体缺陷 |
| 改动 | 修改文件与前后行为 |
| 验证 | 实际执行的命令、结果和失败原因 |
| 限制 | 未验证的环境、未解决问题和后续检查 |
常见问题与修正方法
没复现就大范围重构
先缩小调用链与触发条件,只改与问题直接相关的逻辑。
覆盖已有本地修改
先检查工作区差异,不擅自回退、清空或重置。
把工具未执行当作验证成功
要求逐项报告实际执行的验证及未执行事项。
交付前的验收清单
- 修改对应明确问题或证据支持的原因。
- 原有本地修改被保留。
- 没有无关依赖升级、数据库操作或部署。
- 授权范围内的验证如实记录。
- 新增代码没有日志泄露、硬编码凭证或无关接口暴露。
关于这个场景的问答
可以只分析而不修改代码吗?
可以。在任务指令中明确只读分析,要求输出调用链、候选原因和建议改动。需要执行或修改时再确认范围。
必须运行构建和测试吗?
取决于任务要求、风险和环境。可以指定仅做源码检查,也可以授权必要验证;报告必须区分实际运行结果与静态判断。
继续准备工具与任务
按任务需要选择已安装技能和已连接工具,确认配置后再使用。