feat(v3): T27 会话式智能体(多轮上下文/停止/对话式 UI,对齐 dsh 范式)
- ToolLoop 增 history 参数(既往轮次折叠为对话上下文,近 6 轮)
- 会话制:AgentSession/SessionStore 持久化 agent_runs/sessions/{sid}.json,
/agent/sessions CRUD + /agent 带 session_id(继承会话工作区与执行者配置,busy 并发控制)
- POST /agent/{id}/cancel:取消运行中任务
- AgentView 重构为对话式:会话列表 + 居中消息流(用户蓝气泡/助手白卡)+ 底部 composer
(工作区/执行者/命令 chips,Enter 发送,运行中红色停止钮),工具过程折叠收纳
- 工具步数统计统一至事件写入层并透出 status.tool_calls
- fix(tests): 会话存储测试隔离,防测试数据泄漏进真实 sessions 目录
- 测试 +4,全量 281 passed
This commit is contained in:
@@ -109,3 +109,17 @@
|
||||
ToolLoop 内层循环 `emit_final=False`,终态事件由外层编排统一发出(防前端 SSE 提前收口)。
|
||||
- **事件**:新增 `phase`(plan/execute/review,带模型名)与 `message`(planner/executor 正文)
|
||||
两类事件,前端以阶段徽标 + 双色消息卡渲染。
|
||||
|
||||
## 8. 增补:会话式智能体(D8,T27)
|
||||
|
||||
- **决策 D8(对齐 dsh 的会话范式)**:智能体从"一次性任务"升级为**多轮会话**——
|
||||
`POST /agent/sessions` 建会话(绑定工作区/执行者配置),后续任务带 `session_id`
|
||||
递交,既往轮次折叠为对话历史注入模型(近 6 轮,每条截断 1500 字);
|
||||
轮次(任务/答复/工具步数/token)持久化到 `agent_runs/sessions/{sid}.json`。
|
||||
- **停止**:`POST /agent/{id}/cancel` 取消运行中任务(asyncio cancel + 状态标记
|
||||
cancelled_by_user)。
|
||||
- **前端**:AgentView 重构为 dsh 式对话界面——左侧会话列表、居中消息流
|
||||
(用户蓝气泡 / 助手白卡)、底部 composer(工作区/执行者/命令开关收为 chips,
|
||||
Enter 发送,运行中变红色停止钮);工具过程折叠收纳,历史轮次仅显示步数摘要。
|
||||
- **工程**:ToolLoop 增 history 参数;工具步数统一在事件写入层统计;
|
||||
会话存储测试隔离(防泄漏进真实 agent_runs/sessions/)。
|
||||
|
||||
Reference in New Issue
Block a user