1.5 KiB
1.5 KiB
代码变更审查功能 - 使用说明
功能说明
AI 修改文件后,会在输入框上方显示"代码变更"面板,用户可以:
- 查看所有修改的文件列表
- 点击文件查看 diff 对比
- 采纳变更(保存文件)
- 拒绝变更(恢复旧内容)
已完成的集成
1. 后端集成
- ✅ 在
ICHelperPanel.ts中添加了消息监听(acceptChange/rejectChange) - ✅ 在发送消息时启动变更追踪会话
- ✅ 在文件操作时自动记录变更(messageHandler.ts、toolExecutor.ts)
2. 前端集成
- ✅ 在
webviewContent.ts中添加了消息处理(showChanges/changeAccepted/changeRejected) - ✅ 在
changePanel.ts中实现了完整的 UI 交互逻辑
3. 核心功能
- ✅ 变更追踪服务(changeTracker.ts)
- ✅ Diff 可视化渲染(diffRenderer.ts)
- ✅ 采纳/拒绝变更逻辑
待完成工作
需要在对话结束时调用 sendChangesToWebview(panel) 来显示变更面板。
建议在以下位置添加:
- 在
handleUserMessage函数中,对话流结束时 - 或在
dialogManager的对话完成回调中
示例代码:
// 对话结束时
import { sendChangesToWebview } from '../utils/messageHandler';
// 在对话完成的地方调用
sendChangesToWebview(panel);
测试步骤
- 启动插件(F5)
- 发送消息让 AI 修改文件
- 对话结束后,输入框上方应显示"代码变更"面板
- 点击文件查看 diff
- 点击"采纳"或"拒绝"按钮测试功能