feat(engine): 添加MCP连接管理和工具集成功能
- 集成MCP连接管理器,支持MCP服务器连接 - 添加多种内置工具:ClarifyTool、CronTool、DelegateTool、ExecuteCodeTool、 PatchFileTool、ProcessTool、SendMessageTool、SpawnTool、TerminalTool、 TodoTool、WebFetchTool、WebSearchTool、WriteFileTool等 - 实现工具注册和装配功能 - 添加技能选择上下文参数 - 支持思考模式控制参数thinking_enabled feat(coordinator): 重构任务执行计划器参数命名 - 将learning_candidate_enabled重命名为allow_candidate_generation - 更新TeamGraphScheduler中的参数传递 - 修改LocalAgentRunner中的相关参数处理 - 更新README文档中的相应描述 refactor(context): 标准化工具调用参数格式 - 添加_json导入用于参数序列化 - 实现_provider_tool_calls方法标准化OpenAI兼容的工具调用载荷 - 修复工具调用中参数非字符串类型的序列化问题 refactor(session): 优化消息历史记录过滤逻辑 - 修改get_messages_as_conversation为基于运行状态过滤消息 - 排除未完成、失败或错误结束的运行记录 - 改进对话历史的可见性控制机制 fix(store): 修复FTS索引重建逻辑 - 添加异常处理防止FTS索引创建失败 - 实现_rebuild_fts_index方法重新构建全文搜索索引 - 优化索引触发器和表的维护流程
This commit is contained in:
@ -35,7 +35,7 @@
|
||||
- `task_id`
|
||||
- `task_mode`
|
||||
- `attempt_index`
|
||||
- `learning_candidate_enabled`
|
||||
- `allow_candidate_generation`
|
||||
4. `RunRecord` 已记录:
|
||||
- `task_id`
|
||||
- `attempt_index`
|
||||
@ -55,7 +55,7 @@
|
||||
8. 学习触发已经收紧。
|
||||
- Task 模式 run 不再直接生成成功学习候选
|
||||
- 只有“自动验证通过 + 用户点击满意”才触发成功学习候选
|
||||
- “放弃”写 Failure Memory,不生成成功 Skill draft
|
||||
- “放弃”只写失败证据,不默认写主 memory,不生成成功 Skill draft
|
||||
9. Agent Team v1 已落地为 Beaver 自有轻量 coordinator。
|
||||
- 新增 `AgentDescriptor / DelegationEnvelope / ExecutionNode / ExecutionGraph / TeamRunResult`
|
||||
- 新增 `TeamService.run_team(...)` 作为内部服务入口
|
||||
@ -72,7 +72,7 @@
|
||||
- `TaskExecutionPlanner` 使用 LLM JSON 规划 `single / team`
|
||||
- team node 只声明 `skill_query / required_capabilities`,不声明固定 specialist 人设
|
||||
- 新增 `beaver/tasks/skill_resolver.py`
|
||||
- `TaskSkillResolver` 为 generic sub-agent 选择 published skill;未命中时生成 draft-only skill,并作为本次 run 的 ephemeral pinned instruction 使用
|
||||
- `TaskSkillResolver` 为 generic sub-agent 选择 published skill;未命中时生成 ephemeral guidance,并作为本次 run 的 pinned guidance 使用
|
||||
- 只允许 v1 已实现的 `sequence / parallel / dag`
|
||||
- planner 失败或 graph 非法时降级为 `single`
|
||||
- team run 先作为 sub-agent 内部执行,输出注入主 Agent synthesis run
|
||||
@ -1407,7 +1407,7 @@ Hermes 官方公开说明里,明确把这些能力作为它的核心区别:
|
||||
│ ├─ provider/chat/tool loop
|
||||
│ ├─ sessions.append_message(event_type="run_completed" 或 "run_failed", hidden)
|
||||
│ │
|
||||
│ └─ AgentLoop._record_skill_learning(...)
|
||||
│ └─ AgentLoop._record_run_receipts(...)
|
||||
│ ├─ 构造 `RunRecord`
|
||||
│ ├─ 构造 `SkillEffectRecord[]`
|
||||
│ ├─ 默认只记录 receipts/effects,不生成学习候选
|
||||
@ -1750,7 +1750,10 @@ app-instance 镜像也已经切到新 Beaver 后端:
|
||||
- 当前 channel 职责很窄:
|
||||
- 把外部输入发布成 `InboundMessage`
|
||||
- 接收并投递 `OutboundMessage`
|
||||
- old-style 平台字段(如 `chat_id/message_id/thread_id/raw_channel_payload`)只能在 adapter 层映射和保留
|
||||
- adapter 负责生成稳定 `session_id`,例如 `telegram:{chat_id}` / `slack:{channel_id}:{thread_ts}`
|
||||
- `MemoryChannelAdapter` 只用于本地测试和内嵌接入,不是正式消息 broker
|
||||
- WebSocket 是 Web 入口适配层,不是 Gateway channel;真实多渠道仍统一走 `ChannelAdapter -> MessageBus -> AgentService.handle_inbound_message(...)`
|
||||
|
||||
所以现在已经明确:
|
||||
|
||||
@ -2191,13 +2194,13 @@ app-instance 镜像也已经切到新 Beaver 后端:
|
||||
1. planner team JSON 支持 `skill_query / required_capabilities`,不要求 agent role。
|
||||
2. `TaskSkillResolver` 命中 published skill 时,写入 `ExecutionNode.inherited_pinned_skills`。
|
||||
3. sub-agent run 的 published pinned skill receipt 记录 `activation_reason=pinned_delegation`。
|
||||
4. 未命中 skill 时创建 draft-only skill,并写入 `ExecutionNode.inherited_pinned_skill_contexts`。
|
||||
5. draft-only skill receipt 记录 `activation_reason=generated_missing_skill`。
|
||||
6. missing skill draft 不自动 approve/publish,不进入 runtime skill catalog。
|
||||
7. plan event 写入 `skill_queries / selected_skill_names / generated_skill_draft_ids / skill_resolution_report`。
|
||||
4. 未命中 skill 时创建 ephemeral guidance,并写入 `ExecutionNode.inherited_pinned_skill_contexts`。
|
||||
5. ephemeral guidance receipt 记录 `activation_reason=ephemeral_guidance`。
|
||||
6. ephemeral guidance 不写入 draft store,不自动 approve/publish,不进入 runtime skill catalog。
|
||||
7. plan event 写入 `skill_queries / selected_skill_names / ephemeral_guidance_ids / skill_resolution_report`。
|
||||
8. `/api/sessions/{session_id}/process` 能把隐藏 Task/team/validation 事件投影成 `processRuns / processEvents`。
|
||||
9. ChatWorkbench 桌面端有 `ProcessLane`,移动端有 `Process` tab。
|
||||
10. process view 展示 selected skills、generated draft id、ephemeral skill used,不展示 specialist agent selection。
|
||||
10. process view 展示 selected skills、ephemeral guidance id、ephemeral skill used,不展示 specialist agent selection。
|
||||
11. team 部分失败时,process view 显示失败节点,但最终回答仍来自主 Agent。
|
||||
12. `SkillLearningPipelineService` 能串起 candidate -> draft -> safety/eval -> review -> approve/reject -> publish。
|
||||
13. rejected draft 不能 publish。
|
||||
|
||||
Reference in New Issue
Block a user