Commit Graph
5 Commits
Author SHA1 Message Date
shenmo7192 46263e70d7 test(chat): MCP 工具循环端到端测试
- tests/api/fake_openai.py:假 OpenAI 流式接口,先返回 tool_call 再返回文本
- tests/chattest.cpp:真实 ChatClient + McpManager 走完 请求→工具→回填→回答
- fix(mcp): 回调应收到 JSON-RPC 的 result,而不是整个响应包(否则工具结果为空)
- 两个无头测试均通过
2026-10-30 20:25:37 +08:00
shenmo7192 77a4369cd6 feat(chat): MCP stdio 工具接入
- McpServer:启动进程、initialize、tools/list、tools/call
- McpManager:多服务器、工具名冲突处理、OpenAI function 定义
- ChatClient:请求携带 tools,流式累积 tool_calls,结束后交回上层
- ChatWindow:工具调用循环(最多 5 轮)、scaffold 消息、设置里的 MCP JSON 编辑
- 无头自测 gxde-ai-see-mcptest + tests/mcp/test_server.py 验证通过
2026-10-30 20:22:14 +08:00
shenmo7192 c7865fcbf0 feat(chat): Markdown 渲染与消息复制
- 助手消息支持标题、粗体、行内代码、代码块、链接、列表
- 每条助手消息新增「复制」链接
2026-10-30 20:20:18 +08:00
shenmo7192 07f215bb34 feat(chat,panel): 对话增强与面板窗口管理;chore: debian 打包
Chat:
- 消息操作:编辑用户消息、重试、从任意回复分支
- 上下文:条数设置 + 超出自动压缩(摘要旧消息)
- 关于对话框;侧栏更多菜单

Panel:
- 拖动边框移动、拖顶部调整高度,位置/高度持久化
- 右键菜单:固定位置、恢复默认位置、固定大小、全屏时隐藏(预留)、
  开机自启与保活(写入 gxde-k9 .slimy)、清空暂存区、关于、退出

Packaging:
- debian/(control/rules/changelog/copyright/source format)
- README 构建与使用说明、CHANGELOG.md
2026-10-30 20:16:09 +08:00
shenmo7192 e3c8da1a3f feat(chat,todo): 小埃同学对话窗口与待办窗口
Chat:
- DTK2 窗口:左侧会话列表 + 右侧对话区 + 输入框
- DeepSeek / 自定义 API,SSE 流式输出,首字即显示
- 会话持久化到 chat.json,新建/切换/标题自动生成
- 设置对话框:API Key、API 地址、模型、系统提示,含开通指引
- 拖放:左侧空白=新建对话,左侧会话=指定会话,右侧对话区=当前会话
- Ctrl+Enter 发送,错误以消息形式回显

Todo:
- 待办窗口(layer-shell,不抢焦点、不进 dock),复选框/删除/新建
- 待办持久化 todo.json,--todo 打开,独立 desktop 入口

其他:
- desktop 入口改为打开对话窗口,--chat 参数
- 单实例消息支持 show/todo/chat
2026-10-30 20:12:31 +08:00