334 Commits

Author SHA1 Message Date
oudecheng
644f5f9132 feat: 子代理继承主代理的 MCP 工具
- 为 McpToolWrapper 添加 Clone trait,支持工具实例复用
- 修改 build_subagent_tools 方法,支持传入 MCP 工具列表
- 调整 runtime 构建顺序:先等待 MCP 连接,再将 MCP 工具传递给子代理

子代理现在可以自动使用主代理配置的 MCP 工具(如 filesystem、fetch 等)。
2026-05-26 11:53:40 +08:00
oudecheng
861aa04690 feat: 将 TaskConfig 默认超时时间统一改为60分钟
- default_task_max_execution_secs: 1200 -> 3600 (20分钟 -> 60分钟)
- default_task_explore_max_execution_secs: 600 -> 3600 (10分钟 -> 60分钟)

确保配置层默认值与代码层一致。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 08:52:30 +08:00
oudecheng
c41c2a1d2e feat: 将内置子代理默认超时时间统一改为60分钟
- general 子代理: 20分钟 -> 60分钟
- explore 子代理: 10分钟 -> 60分钟

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 12:59:34 +08:00
oudecheng
b3dc207ad1 fix: 移除 temperature 和 max_tokens 的硬编码默认值
如果配置中没有设置 temperature 或 max_tokens,不再传递这些参数给模型,
让模型使用自己的默认值,而不是硬编码 0.7。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 12:58:15 +08:00
oudecheng
86d48a3ec0 feat: 实现自定义子代理加载功能
- 添加 SubagentCatalog::discover() 方法,支持从文件系统加载自定义子代理
- 支持 ~/.picobot/subagents/ 和 ./.picobot/subagents/ 两个目录
- 项目级定义可覆盖用户级定义
- 支持 YAML frontmatter + body 格式解析
- 修复 Windows 换行符兼容性问题
- 移除未使用的 read_only 字段
- 实现 TaskTool 动态 schema,子代理类型列表从运行时获取

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 11:56:44 +08:00
58b37bb796 fix: 更新合并规则,明确命名空间限制和合并条件 2026-05-24 22:33:07 +08:00
9ae2813c20 feat: 添加子代理配置,支持自定义子代理定义和运行时管理 2026-05-24 21:35:36 +08:00
b571d7b7b3 feat: 添加图片上下文限制配置,支持最大图片数量和消息轮次限制 2026-05-24 18:06:22 +08:00
4605c2dad3 feat: 重构 MCP 配置,支持 mcpServers 字段,优化工具注册和连接管理 2026-05-24 10:00:25 +08:00
0732b31e6b feat: 添加主题描述生成和更新功能,优化会话信息展示 2026-05-24 08:32:34 +08:00
5e04832f20 feat: 更新 MCP 配置和工具适配器,支持 Claude Desktop 格式,优化服务器连接管理 2026-05-23 23:37:45 +08:00
ef7e899584 feat: 集成 MCP (Model Context Protocol),支持 Stdio 和 HTTP 传输方式,优化工具注册和连接管理 2026-05-23 23:22:36 +08:00
b3fa0bb978 feat: 添加 HTTP 传输连接支持,优化 MCP 客户端管理器 2026-05-23 22:57:08 +08:00
cbb384a4e6 feat: 添加 MCP (Model Context Protocol) 支持,包含客户端管理器和工具适配器 2026-05-23 22:52:36 +08:00
f68e915b04 feat: 更新技能管理工具文档,明确技能创建和修改的正确流程及存储路径 2026-05-23 21:12:39 +08:00
b6f2de053d refactor: 移除会话重置逻辑中的 reset_cutoff_seq 字段,优化会话管理和历史压缩逻辑 2026-05-23 18:38:34 +08:00
b4ef56803f feat: 添加内存维护配置,优化记忆整理逻辑和限制 2026-05-23 16:05:11 +08:00
44d9171b86 feat: 更新内容处理逻辑,支持图片转换为通知文本并添加模型支持检查 2026-05-23 14:08:06 +08:00
a74c801945 feat: 更新工具名称和描述,增强可读性并支持多平台兼容性 2026-05-23 12:24:23 +08:00
4a24758262 feat: 添加交互式配置向导,支持强制覆盖和跳过频道配置选项 2026-05-23 10:26:42 +08:00
oudecheng
c36650c9aa feat: 优化技能管理工具,延迟解析禁用名称以提高执行效率 2026-05-22 18:23:18 +08:00
oudecheng
2724334d52 feat: 移除 SkillListTool,简化技能管理工具 2026-05-22 14:01:22 +08:00
oudecheng
5f0fdb7b2e feat: 更新技能说明格式,增强可读性并提供使用指南 2026-05-22 11:10:24 +08:00
oudecheng
cc3e890ccd feat: 添加 list_skill_events 方法到 SkillEventRepository,支持可选 session_id 参数 2026-05-22 10:47:55 +08:00
oudecheng
70b35d2cc1 feat: 更新聊天历史加载逻辑,支持按话题加载历史记录并避免借用冲突 2026-05-22 10:47:25 +08:00
oudecheng
ea5a9e0656 feat: 更新技能说明格式,优化可读性并移除不必要的字符限制 2026-05-22 09:35:06 +08:00
oudecheng
c817b1dde1 feat: 优化会话消息处理逻辑,支持在话题切换时正确保存消息并更新内存历史 2026-05-21 18:04:11 +08:00
oudecheng
159c1bbb7a feat: 移除日志中的响应内容和模型信息,优化工具调用的日志记录 2026-05-21 17:20:26 +08:00
oudecheng
3128abe3c6 feat: 优化 parse_post_content 函数,支持处理包含内容数组的代码块,并添加相关单元测试以确保向后兼容性 2026-05-21 17:17:44 +08:00
oudecheng
efc8af12eb feat: 添加参数提取工具函数,支持处理字符串化 JSON 数组,优化技能管理和会话发送功能 2026-05-21 17:00:22 +08:00
oudecheng
da9cec6d35 feat: 添加参数提取工具函数,优化 JSON 参数处理,确保处理空值和类型转换 2026-05-21 16:30:09 +08:00
oudecheng
32a9e2946e feat: 优化 MemorySearchTool 的查询参数处理,支持多种格式的查询输入 2026-05-21 11:35:17 +08:00
oudecheng
9adaa93ecc feat: 优化 StreamingAccumulator 中工具调用的 ID 和名称更新逻辑,确保空值不会覆盖有效数据,并添加相关单元测试 2026-05-21 08:50:41 +08:00
oudecheng
1c6ee160e5 feat: 添加父话题 ID 支持,优化子智能体任务管理和会话关联 2026-05-20 18:11:16 +08:00
oudecheng
49475783a2 feat: 添加子智能体支持到保存话题和会话功能,优化数据持久化 2026-05-20 17:52:46 +08:00
oudecheng
8d530dcd6b feat: 添加确保会话存在的功能,优化子智能体会话管理 2026-05-20 17:21:14 +08:00
oudecheng
1dcdd24519 feat: 保存子智能体产生的所有消息到数据库,增强消息持久化功能 2026-05-20 16:23:24 +08:00
oudecheng
881c73c79f feat: 使用 platform 模块获取 Shell 信息,优化系统环境信息提示词生成 2026-05-20 15:55:23 +08:00
oudecheng
fc628239a4 feat: 添加技能索引支持到子代理系统提示词构建,优化提示词组合逻辑 2026-05-20 15:34:34 +08:00
oudecheng
b364496601 feat: 添加生成系统环境信息提示词的功能,并在子代理提示词构建中集成 2026-05-20 15:13:06 +08:00
oudecheng
ecd945b309 feat: 优化消息内容格式化逻辑,增强对特殊字符和换行符的处理 2026-05-20 15:04:34 +08:00
oudecheng
8830027cbc feat: 添加原始话题 ID 支持,优化消息保存逻辑以处理用户话题切换 2026-05-20 12:05:58 +08:00
oudecheng
018c104592 feat: 更新 reqwest 依赖以支持流式响应,添加流式处理相关结构和实现 2026-05-20 11:32:46 +08:00
oudecheng
7540828397 Revert "feat: 添加流式聊天支持,更新相关依赖和接口以实现流式响应"
This reverts commit cb48ef09b22ef72798a15ff3485c8e21f77e59f4.
2026-05-20 09:20:26 +08:00
oudecheng
cb48ef09b2 feat: 添加流式聊天支持,更新相关依赖和接口以实现流式响应 2026-05-20 09:10:47 +08:00
oudecheng
90228a4d49 feat: 更新 GetCurrentSessionCommandHandler,添加系统提示词提供者支持并优化令牌估算逻辑 2026-05-19 18:29:32 +08:00
oudecheng
2d5b6168cc feat: 添加会话管理器支持到 GetCurrentSessionCommandHandler,并重构从会话获取消息的逻辑 2026-05-19 17:42:47 +08:00
oudecheng
cd97ac0f57 feat: 更新 save_topic 处理器以支持从会话获取历史消息,并在命令处理器中配置会话管理器 2026-05-19 17:11:23 +08:00
oudecheng
3c2650824c feat: 更新令牌估算逻辑,使用 JSON 序列化以匹配实际请求大小,并在当前话题处理器中添加令牌估算 2026-05-19 17:05:04 +08:00
oudecheng
4ec4e2b993 feat: 精简记忆检索和写入规则,优化文档内容 2026-05-19 15:57:43 +08:00