|
|
b794d1ceb0
|
feat: 实现上下文使用量监控和会话压缩功能
- sseHandler: 新增 onContextUsage 回调处理上下文使用量事件
- dialogService: 集成上下文使用量回调,追踪 AI 消息用于后端重启恢复
- apiClient: 新增 compactDialog API 支持手动压缩对话历史
- messageHandler: 新增 lastTaskId 管理机制,支持会话恢复后的压缩操作,转发上下文使用量到 WebView
|
2025-12-31 18:50:20 +08:00 |
|
|
|
c49aaf753c
|
Merge remote-tracking branch 'origin/feat/plugin-front-end' into feat/back-to-front
|
2025-12-31 11:58:32 +08:00 |
|
|
|
0f8674e1c7
|
fix: 修复对话停止和会话记忆保存问题
- apiClient 添加 stopDialog 接口
- dialogService 添加 getSegments/getAccumulatedText 方法
- dialogService.abort 调用后端停止接口
- messageHandler.abortCurrentDialog 保存中止前的对话内容
- userInteraction 添加 getWebviewPanel 方法
- webviewContent 添加 resetSegmentedMessage 命令处理
- 修复停止后新消息覆盖旧消息的问题
|
2025-12-31 11:55:31 +08:00 |
|
|
|
b662d25c9c
|
refactor: 将 Ask 模式的工具确认从弹窗改为内嵌聊天卡片
## 主要修改
### dialogService.ts
- 移除 `vscode.window.showWarningMessage` 弹窗
- 将工具确认改为添加 question 类型的 segment
- 使用 `userInteractionManager.handleAskUser` 等待用户回答
- 生成唯一的 askId: `tool_confirm_{confirmId}`
### userInteraction.ts
- 导入 `submitToolConfirm` 方法
- 在 `submitUserAnswer` 中识别工具确认类型的 askId
- 根据用户选择("确认执行" / "取消")调用对应的 API
## 用户体验改进
- 工具确认问题自然融入对话流程
- 用户可以看到历史确认记录
- 非阻塞式交互,体验更流畅
|
2025-12-31 10:18:35 +08:00 |
|
|
|
16e91bd2c0
|
feat: 实现会话记忆同步和知识图谱恢复机制
- 添加 memory_compacted SSE 事件处理
- 添加 CompactedMemory/CompactedMessage 类型定义
- 添加 COMPACTION_SUMMARY 消息类型
- 实现压缩数据存储到 conversation.json
- 实现从 conversation.json 构建恢复数据
- 发送请求时附带 knowledgeData 用于恢复知识图谱
|
2025-12-31 09:35:20 +08:00 |
|
|
|
e77194628a
|
feat: 模式传递和 API 调用
- dialogService 接收并传递 mode 参数
- apiClient 构造带 mode 的请求
- messageHandler 从 WebView 消息获取 mode
|
2025-12-30 20:42:28 +08:00 |
|
|
|
44bbcde5cf
|
feat: 知识图谱工具支持 + 智能体事件处理
- dialogService: 添加智能体 SSE 事件处理
- toolExecutor: 添加 knowledge_save/knowledge_load 工具
- messageArea: 添加智能体消息渲染支持
- 添加 CLAUDE.md 项目配置
|
2025-12-30 09:40:04 +08:00 |
|
|
|
10f0877a5e
|
fix: 修复AI询问时选项点击后选中状态丢失的问题
- 添加 answeredQuestions Map 存储已回答问题的状态
- 在重新渲染时恢复选中状态和 answered 类
- 已回答的问题自动隐藏输入框并禁用点击事件
- 确保用户选择在页面更新时保持显示
|
2025-12-24 10:01:53 +08:00 |
|
|
|
6c5d470bad
|
fex:尝试修复流式显示工具调用不穿插显示的问题
|
2025-12-17 10:03:40 +08:00 |
|
|
|
8ad6a48e8f
|
feat: 实现核心服务层
- 新增对话服务(src/services/dialogService.ts)
- 封装完整的对话生命周期管理
- 集成 SSE 流式响应处理
- 支持对话创建、消息发送、对话中止
- 提供统一的事件回调接口
- 新增工具执行器(src/services/toolExecutor.ts)
- 实现前端工具调用框架
- 支持 readFile、writeFile、listFiles、executeCommand 等工具
- 提供工具执行结果的标准化返回
- 集成 VSCode API 进行文件和终端操作
- 新增用户交互处理(src/services/userInteraction.ts)
- 实现 AI 向用户提问功能(AskUser)
- 支持 input、confirm、quickPick 等交互类型
- 使用 VSCode 原生 UI 组件展示问题
- 提供答案收集和提交机制
|
2025-12-16 19:09:16 +08:00 |
|