oudecheng
|
cb0d3d932d
|
feat: TodoPanel 改为常驻右边栏并支持点击跳转
- TodoPanel 移除浮动定位与拖动逻辑,改为常驻右边栏
- 右边栏与左边栏对称的折叠/展开逻辑,localStorage 持久化
- 待办/记忆/技能三 Tab 切换
- 点击已完成 todo 滚动并高亮对应 tool 消息
- 修复 MessageBubble isMergedTool 分支缺失 data-message-id 导致跳转失效
- ChatContainer 移除 todoPanel prop
|
2026-07-03 19:32:46 +08:00 |
|
oudecheng
|
76abdbd1de
|
feat: MCP stdio 命令解析与错误诊断增强
- 新增 resolve_command_path:Windows 上搜索 .exe/.cmd/.bat 后缀
- 启动失败时给出友好错误信息(含 PATH 和建议)
- 捕获子进程 stderr 并在连接失败时回显
- ConfigPage 新增 cwd 工作目录字段
- 添加单元测试覆盖路径解析逻辑
|
2026-07-03 19:31:52 +08:00 |
|
oudecheng
|
1af0fab3ad
|
feat: 更新配置管理,支持异步读取和写入;添加 MCP 服务器状态接口
|
2026-07-03 08:37:02 +08:00 |
|
oudecheng
|
a40f57fb22
|
feat: 注册 save_topic 处理器并优化助手消息渲染逻辑
|
2026-06-25 14:10:04 +08:00 |
|
oudecheng
|
4efc8b51e7
|
feat(todo): 添加待办项关联的创建消息ID并支持消息高亮
- 在待办相关数据结构和存储中新增 created_by_message_id 字段
- 记录待办项创建时对应的消息ID,支持追溯来源
- 在前端待办列表项增加点击事件,点击后滚动并高亮对应消息
- 在消息列表组件中实现高亮动画及自动滚动功能
- 更新相关工具、协议和数据库查询,确保新字段正确传递和存储
- 增加 CSS 动画实现待办对应消息的高亮闪烁效果
- 优化前端状态管理,支持设置与获取高亮消息ID
|
2026-06-22 14:50:37 +08:00 |
|
|
|
d802534abe
|
feat(gateway): 支持网关平滑重启功能
- 在 Gateway 运行逻辑中增加重启循环,可根据重启信号自动重启服务
- 添加取消管理器功能,支持取消所有运行中的 Agent 以便平滑重启
- 在 HTTP API 新增 /api/restart 接口,实现基于任务活动检测的安全重启
- GatewayState 增加重启信号通道,支持异步触发重启流程
- 修改主运行逻辑支持重启等待机制,实现优雅关闭或重启
- 日志初始化修复防止重复初始化导致的问题
- 技能和子代理加载支持自定义绝对路径来源,增加灵活性和扩展性
- 调整技能与子代理来源枚举,增加 Custom 选项支持动态路径
- 优化工具与任务运行时代码,完善路径处理和克隆逻辑
- 前端配置页增加时区选择下拉菜单,提供常用时区选项
- 新增来源路径编辑组件,支持启用/禁用已知来源及添加自定义绝对路径
- 配置页新增保存配置后重启提示,支持用户确认立即重启网关
- 实现重启操作的前端调用及重启状态展示,包括任务冲突提示与重启轮询恢复
- 频道绑定 Agent 字段由输入框改为下拉选择,提升配置体验和正确性
|
2026-06-19 10:40:00 +08:00 |
|
oudecheng
|
9ea5849f22
|
refactor(task): 子智能体相关字段重命名及导航逻辑调整
- 将 runtime 中的 sub_session_id 字段重命名为 task_id,作为持久化的 scope_key
- 调整持久化 todo_write 结果使用 task_id 代替 session_id 作为 scope_key
- 重命名前端消息中的 subagentTaskId 为 navigateToTaskId,增强导航表达
- 修改 MessageBubble 组件中子智能体任务导航相关的字段名和条件判断
- 优化 useChat 中 task tool_call 消息的 navigateToTaskId 设置逻辑,确保正确导航孙智能体任务
- 移除无用的 getTopicId 辅助方法,简化消息处理逻辑
- 在协议类型定义中新增 navigateToTaskId 字段,明确导航用途与关系
|
2026-06-18 17:09:42 +08:00 |
|
oudecheng
|
e585ec71b1
|
refactor(todo): 统一子代理 scope_key 为全局唯一的 task_id
- 修改 list_todos 处理器,子代理使用 task_id 作为 scope_key,替代原先的 sub:{parent_session_id}:{task_id}
- 调整 todo_write 的 scope_key_from_context 函数,子/孙代理使用 task_id 隔离,避免与父代理污染
- 修正子任务消息的 task_id 传递逻辑,在 useChat hook 中为子代理视图的孙子任务回填正确的 task_id
- 清理 MessageBubble 组件中多余的 isSubAgent 变量声明
|
2026-06-18 16:44:54 +08:00 |
|
oudecheng
|
421714dfa3
|
style(TodoPanel): 优化待办面板动画和样式细节
- 新增待办卡片及条目动画效果,提升界面动感
- 添加待办分组折叠内容展开/收起过渡样式
- 优化按钮尺寸及颜色悬浮效果,提升交互体验
- 自动展开新待办项,空列表时自动收起
- 调整待办面板大小、圆角及阴影效果,增强视觉层次
- 改进待办标题栏排版及交互样式,支持拖动操作手感
- 为无待办状态提供占位展示及提示文字
- 优化待办分组标题样式及折叠箭头动画
- 改进待办条目列表项样式,支持悬浮高亮显示
- 移除消息气泡中的冗余子智能体标签显示内容
|
2026-06-18 16:15:08 +08:00 |
|
oudecheng
|
301506a3b1
|
feat(chat): 支持子智能体导航添加子智能体类型参数
- 扩展 enterSubAgentView 方法,新增 subagentType 可选参数
- 更新相关回调 onNavigateToSubAgent,添加 subagentType 参数支持
- 调整 MessageBubble 组件触发子智能体导航时传递 subagentType
- 优化 MessageList 组件显示新消息计数及底部导航按钮交互
- 美化底部浮动导航按钮样式,增加新消息数字提示和动画
- TodoPanel 添加状态点样式,消息内容排版更紧凑
- 维护滚动位置状态,改进滚动时新消息计数逻辑
|
2026-06-18 15:34:27 +08:00 |
|
oudecheng
|
8684ff9549
|
feat(chat): 实现多视图滚动位置保存与恢复功能
- 在 App 组件中新增 viewKey,用于标识当前视图
- 通过属性链传递 viewKey 至 MessageList 以区分不同滚动上下文
- MessageList 中新增滚动位置缓存机制,使用 Map 保存各视图的滚动状态
- 在视图切换时自动恢复对应滚动位置,提升用户体验
- 保持消息新增时的自动滚动行为,兼顾视图切换与消息更新场景
|
2026-06-18 15:02:25 +08:00 |
|
oudecheng
|
6962ea2eb1
|
feat(todo): 优化悬浮待办面板功能
- 将悬浮待办面板集成到聊天组件上方,避免重复渲染
- 调整状态样式配置,简化颜色和样式管理
- 实现待办面板位置拖拽功能,支持位置持久化保存
- 优化折叠与展开交互,改进分组标题和列表项显示样式
- 设计迷你和完整两种面板展现形态,提升界面灵活性
- 添加刷新按钮及自动展开待办新条目功能
- 精简和改进待办项展示,提高内容可读性和界面美观度
|
2026-06-18 14:25:41 +08:00 |
|
oudecheng
|
4a28d9ea36
|
feat(gateway): 更新记忆写入规则,明确命名空间使用及优先调用方式
|
2026-06-16 17:01:49 +08:00 |
|
oudecheng
|
edc1a50d1c
|
feat(todos): 修改 todos 表结构,迁移至复合主键并添加索引
|
2026-06-16 16:17:12 +08:00 |
|
oudecheng
|
66e40fc714
|
feat(config): 增加 Feishu 渠道支持及 MCP 服务器管理界面
- 为配置中的 Channel 添加对 Feishu 配置的可变访问接口
- 在 HTTP 掩码和恢复中支持 Feishu 的 app_secret 字段处理
- 在前端配置页面新增 MCP 服务器配置面板,支持多类型参数编辑
- 在前端配置页面新增渠道管理面板,支持 Feishu 和 Wechat 渠道的增删改查
- 优化配置保存后的提示与刷新,提示需要重启服务生效
- 更新模型配置字段提示,使说明更加友好和明确
- 增加界面图标及样式调整,提升用户操作体验
|
2026-06-16 14:57:22 +08:00 |
|
oudecheng
|
37f417007e
|
feat(gateway): 添加配置管理功能支持敏感信息脱敏
- 实现 API 端点 /api/config 用于获取和保存配置
- 添加配置信息脱敏功能,保护 API 密钥等敏感数据
- 集成配置验证逻辑,确保时区等参数有效性
- 在前端添加完整的配置管理页面界面
- 实现配置项的动态编辑和保存功能
- 添加连接设置功能用于 WebSocket 连接配置
- 提供多标签页界面分别管理不同配置模块
- 实现配置变更后的实时预览和保存确认
|
2026-06-15 17:22:32 +08:00 |
|
|
|
3630e62e18
|
style(chat): 优化消息气泡组件样式间距
- 移除消息气泡底部多余外边距,调整整体布局美观
- 为模型思考内容容器增加底部外边距,改善内容分隔
- 统一模型思考区域的外边距,提升视觉一致性
- 根据内容情况动态添加外边距,增强排版灵活性
|
2026-06-14 12:55:49 +08:00 |
|
|
|
b67848180b
|
feat(stream): 添加子代理消息流增量处理功能
- 在 runtime 模块中新增 handle_stream_delta 方法,支持子代理消息流的增量和结束事件处理
- 为流消息新增 stream_message_id,用于标识和管理消息流状态
- 修改 ConversationContext 初始化,加入 stream_message_id 互斥锁字段
- 更新 web 端 Chat 组件,添加对流增量内容的条件渲染,避免空字符串渲染
- 在 useChat 钩子内增加对 stream_delta 和 stream_end 类型消息的识别和处理逻辑
- 实现流增量消息的累积更新,合并多次流增量内容和推理文本
- 处理流结束消息时的无操作逻辑,确保消息流完整性
- 对 assistant_response 消息进行替换更新,修正流消息的最终呈现内容
|
2026-06-14 12:51:26 +08:00 |
|
oudecheng
|
43cea50df8
|
feat: 添加连接设置弹窗,支持动态配置 WebSocket 连接
|
2026-06-12 19:17:50 +08:00 |
|
oudecheng
|
50d0b92336
|
feat: 添加详细工具视图和状态图标,支持放大查看功能
|
2026-06-12 16:49:20 +08:00 |
|
oudecheng
|
3c889caacf
|
feat: 添加日志记录以持久化待办事项时的调试信息
|
2026-06-12 16:22:43 +08:00 |
|
oudecheng
|
3f32079f92
|
feat: 添加 Todo 面板,支持待办事项的展示与管理
|
2026-06-12 15:17:49 +08:00 |
|
oudecheng
|
f808bd09ea
|
feat: 隐藏无实质内容的助手消息气泡以优化界面显示
|
2026-06-12 08:44:14 +08:00 |
|
oudecheng
|
4487f1a490
|
feat: 添加思考过程显示功能,允许用户选择是否展示助手的思考内容
|
2026-06-11 17:15:03 +08:00 |
|
oudecheng
|
6ff5907616
|
feat: 添加 reasoning_content 字段到多个消息结构,支持思考过程展示
|
2026-06-11 14:33:29 +08:00 |
|
oudecheng
|
0ce89a0e4e
|
feat: 添加 reasoning_content 字段到多个消息结构,支持思考过程展示
|
2026-06-11 12:04:52 +08:00 |
|
oudecheng
|
d0741ef4fc
|
feat: 优化话题选择逻辑,避免用户手动选择后自动切换;重构消息列表滚动逻辑,提升用户体验
|
2026-06-08 18:01:32 +08:00 |
|
oudecheng
|
3f9bb22097
|
feat: 添加 favicon.svg 文件并在 index.html 中引用
|
2026-06-08 14:43:47 +08:00 |
|
oudecheng
|
f470affb2f
|
feat: 添加技能列表功能,支持列出所有技能并在前端展示
|
2026-06-08 14:13:54 +08:00 |
|
oudecheng
|
4c2a2ebf28
|
feat: 优化记忆面板的 SectionHeader 组件样式,增强用户交互体验
|
2026-06-08 11:57:26 +08:00 |
|
|
|
c0d4f65de4
|
feat: 更新数据库连接管理,使用连接池优化会话存储,添加新的错误处理
|
2026-06-07 21:35:47 +08:00 |
|
|
|
cca913b610
|
feat: 添加记忆 CRUD 功能,支持创建、更新和删除记忆,优化记忆面板交互
|
2026-06-07 20:16:54 +08:00 |
|
|
|
7708112649
|
feat: 添加记忆功能,支持列出所有记忆并在前端展示,优化记忆面板
|
2026-06-07 19:50:46 +08:00 |
|
|
|
1f04c62d0d
|
feat: 添加图片轻箱功能,支持点击图片预览和下载,优化附件展示逻辑
|
2026-06-07 18:47:17 +08:00 |
|
|
|
62ea6de3a7
|
feat: 更新时间戳处理逻辑,支持从消息中提取并格式化时间,同时为话题列表添加分页功能
|
2026-06-07 18:17:13 +08:00 |
|
|
|
7e8b6a832e
|
style: 调整刷新按钮的样式和尺寸,优化用户界面
|
2026-06-07 18:01:59 +08:00 |
|
|
|
b5e2886068
|
feat: 添加删除话题功能,包括命令处理器和前端交互
|
2026-06-07 14:09:14 +08:00 |
|
|
|
02339465b6
|
chore: 删除未使用的 Sidebar SessionSelector(已移至 Header)
|
2026-06-06 22:25:22 +08:00 |
|
|
|
6f33ec7604
|
feat: 多通道消息支持与 Session 选择器
后端:
- list_channels 从 ChannelManager 动态查询通道列表(合并 websocket + 所有已注册通道)
- build_channel_list 移至 ChannelManager,网关层直接依赖领域层
- get_current_topic 自动创建默认话题(修复微信等通道无话题的问题)
- is_channel_writable: 仅 websocket 可写,其余通道只读
前端:
- 右上角通道选择器 + Session 选择器(Portal 渲染,固定宽度居中)
- 只读通道显示刷新按钮替代新建按钮
- 话题列表时间戳修复(秒→毫秒)
- 移除冗余的 SessionInfo、AI Ready、所属会话等 UI
- 修复 scheduler view 路由无条件拦截消息的 bug
|
2026-06-06 22:25:10 +08:00 |
|
|
|
bd13cffe14
|
feat: 添加亮色/暗色主题切换功能
- 在 index.css 中新增 html.light 亮色主题 CSS 变量和过渡动画
- 在 App.tsx Header 添加 Sun/Moon 主题切换按钮
- 主题偏好通过 localStorage 持久化,默认暗色主题
- 将所有组件中的硬编码 Tailwind 颜色值转换为 CSS 变量引用
- 状态色(emerald/amber/red/violet)保持不变,两种主题均适用
|
2026-06-04 21:52:45 +08:00 |
|
oudecheng
|
2f529e96d0
|
feat: 添加滚动控制功能,支持回到顶部和回到底部的按钮
|
2026-06-04 16:00:43 +08:00 |
|
|
|
e8a3a47ac7
|
feat: 添加 TaskStarted 事件,支持任务开始通知功能
|
2026-06-03 21:53:37 +08:00 |
|
oudecheng
|
1b571e943f
|
feat: 添加停止当前执行的 Agent 功能,支持通过 /stop 命令取消执行
|
2026-06-03 16:49:29 +08:00 |
|
oudecheng
|
0d6880f6a3
|
fix: 修复任务工具结果解析逻辑,确保正确处理显示内容
|
2026-06-03 14:08:23 +08:00 |
|
oudecheng
|
5f2bc950b1
|
feat: 添加定时任务和聊天消息加载功能,增强调度管理
|
2026-06-02 17:04:00 +08:00 |
|
oudecheng
|
f8fc0f7d0f
|
feat: 添加工具结果处理功能,支持执行时长记录和显示
|
2026-06-02 16:15:05 +08:00 |
|
|
|
7d9355fd78
|
feat: WebSocket 媒体文件处理优化
- 后端 ws.rs: 处理前端上传的 base64 内容,保存到本地文件并更新路径
- 后端 ws.rs: 历史消息加载时从文件读取内容填充 base64,过滤 media_refs_json
- 前端 App.tsx: 传递 attachments 给 handleMessage 实现实时显示
- 前端 useChat.ts: handleMessage 支持 attachments 参数
- 前端 MessageInput.tsx: 支持剪贴板粘贴文件/图片
- 前端 MessageInput.tsx: 修复拖拽文件时闪烁问题
- 测试 test_request_format.rs: 补充缺失的 attachments 字段
|
2026-05-30 10:22:30 +08:00 |
|
|
|
c2293238fc
|
feat: 前端支持文件附件输入
- 后端 WsInbound::Message 添加 attachments 字段
- ws.rs 将 attachments 转换为 MediaItem
- 前端 MessageInput 支持点击选择和拖拽文件
- 附件预览列表,支持删除
- 文件大小限制 50MB
- 支持所有文件类型
|
2026-05-30 08:07:02 +08:00 |
|
|
|
3d9c981c2a
|
feat: 前端输入框体验优化
- AI 响应完成后自动聚焦输入框
- 输入框和发送按钮居中对齐
- 隐藏输入框滚动条
- 新建话题无需输入名称,自动生成默认标题
|
2026-05-29 23:12:53 +08:00 |
|
oudecheng
|
d0051baa07
|
refactor: 消息持久化从批量改为实时逐条,通过装饰器模式实现
- 新增 PersistingEmittedMessageHandler 装饰器,在 emitter 广播前逐条落库
- processor 和 task/runtime 使用装饰器包裹 emitter,替代 post-loop 批量写入
- 移除 session_history 中的批量 DB 写入,仅保留内存历史更新
- execution 中跳过已由 live emitter 实时广播的工具消息,避免重复
- 前端支持运行中 task 工具卡片"查看实时进度"跳转子智能体视图
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-29 16:47:57 +08:00 |
|