Commit Graph

24 Commits

Author SHA1 Message Date
Wenjie Zhang
44e41bbb5a refactor: 简化附件处理架构,使用 StateBackend 替代 MinIO
- 移除 MinIOBackend 和复合存储后端,统一使用 StateBackend
- 依赖 LangGraph checkpointer 自动恢复 state(attachments, files)
- 前端适配 StateBackend 字典格式文件结构
- 优化 @提及 文件搜索逻辑,支持路径匹配
2026-02-13 22:16:11 +08:00
Wenjie Zhang
88b6b27465 style(format): format 2026-02-03 14:55:21 +08:00
Wenjie Zhang
cab244227f refactor(middleware): 简化 SummaryOffloadMiddleware 卸载逻辑
- 移除 immediate_offload_threshold 参数,仅在触发 Summary 时卸载
- 优化工具结果卸载文件命名(工具名称-id)并添加头部信息
- 调整 FilesystemMiddleware 后端工厂函数接收 runtime 参数
- 优化 DeepAgent 提示词,调整报告格式要求
2026-02-03 12:13:13 +08:00
Wenjie Zhang
fae17c3013 feat(backend): 新增 MinIO 虚拟文件系统后端
实现 MinIOBackend 类,实现 BackendProtocol 接口:
- 将 /attachments/* 路径映射到 MinIO 对象存储
- 支持 ls_info、read、write、edit、glob_info、grep_raw 等操作
- 提供 init_attachment_bucket() 初始化函数

后续提交将使用此后端替代本地文件系统存储附件。
2026-02-03 02:28:51 +08:00
Wenjie Zhang
796c804514 feat(middleware): 新增 SummaryOffloadMiddleware 中间件
- 新增 SummaryOffloadMiddleware,支持 summary 历史管理和 ToolResult 卸载
  - 重构 attachment_middleware 增强 thread_id 获取逻辑
  - 更新 chatbot/deep_agent/reporter 智能体配置
  - 优化 AgentPanel UI 交互体验
2026-02-02 21:44:10 +08:00
Wenjie Zhang
ff38ac9e26 refactor(agent): 移除未使用的 MiniAgent 并优化 Agent 配置
- 删除 mini_agent 模块(示例智能体不再需要)
- 调整 FilesystemMiddleware 参数配置
- 重构 ReporterContext,移除 MySQL 工具改为动态 MCP 配置
2026-01-31 13:14:33 +08:00
Wenjie Zhang
820b6581e7 fix: (pre-commit) 添加子智能体切换要求 2026-01-30 13:34:11 +08:00
Wenjie Zhang
4480c20f81 fix(middleware): 修复 RuntimeConfigMiddleware 的工具override 导致的其余中间件失效的问题(还需要进一步排查 subagents 的 model 是否有问题) 2026-01-29 22:48:48 +08:00
Wenjie Zhang
7ffc7a7920 feat(web/config): 重构配置侧边栏为通用选择组件
重构 AgentConfigSidebar 组件,将工具选择逻辑抽象为通用选择组件
- 支持显示选项名称和描述
- 根据选项数量自动切换显示模式(卡片列表或弹窗)
- 统一处理工具、知识库等多选配置项
- 优化样式和交互体验
2026-01-24 10:56:31 +08:00
Wenjie Zhang
5f90385ad0 refactor(agents): 实现统一工具加载逻辑并使用中间件动态配置
将各agent的工具加载逻辑统一改为通过RuntimeConfigMiddleware动态配置
移除直接的工具参数传递,改为从MCP服务获取工具并合并到中间件
在chat_stream_service中添加知识库权限过滤功能

TODO:目前历史记录的加载导致会话混乱
2026-01-24 10:56:31 +08:00
Wenjie Zhang
b072a14ae2 refactor(agents): 移除graph缓存并优化连接和检查点缓存
移除所有agent子类中graph的缓存逻辑,改为每次都重新构建
在BaseAgent中添加_async_conn缓存并优化checkpointer缓存逻辑
2026-01-24 10:56:31 +08:00
zhaoxuyue
6fa14f77a6 fix: lazy init TavilySearch to avoid startup crash without API key
- Add get_tavily_search() for lazy initialization (renamed from _get_tavily_search)
- Update deep_agent/graph.py to use lazy initialization
- Add assertion check when DeepAgent loads to ensure search tool is available
- Convert research_sub_agent to function to receive tools dynamically

When TAVILY_API_KEY is not configured, the API server can now start normally.
DeepAgent will show a clear error message when used without the API key.
2026-01-07 20:33:46 +08:00
Wenjie Zhang
22fc138ab5 refactor(agents): 移除reload_graph能力并简化agent初始化逻辑
统一agent初始化流程,直接从context获取system_prompt
清理不再使用的middleware导入和配置
2025-12-30 19:19:49 +08:00
Wenjie Zhang
9734e93f09 refactor(deep_agent): 简化研究代理提示并添加研究结果保存功能
- 简化 DEEP_PROMPT 内容,移除冗余的组织结构示例
- 在研究子代理提示中添加保存调研结果到文件的功能
- 优化提示文本的清晰度和简洁性
2025-12-30 03:13:50 +08:00
Wenjie Zhang
da351df193 feat(agent): 添加智能体配置保存时的graph重载功能
在保存智能体配置时新增reload_graph选项,用于强制清空graph缓存并重新构建
修改前后端接口以支持该功能,并在UI中添加相应提示
为DeepAgent添加subagents_model配置项,优化子智能体模型选择
2025-12-28 22:55:42 +08:00
Wenjie Zhang
3b03a91e39 fix(agents): 修复模型配置在子智能体中不生效的问题
1. 移除 AnthropicPromptCachingMiddleware 并简化 SummarizationMiddleware 配置
2. 在 context_based_model 中添加调试日志
更新 research-agent 的描述以明确其功能
2025-12-21 20:25:27 +08:00
Wenjie Zhang
a3edaa8129 feat(server): 添加访问日志中间件并优化日志配置
1. 实现自定义访问日志中间件以记录请求处理时间
2. 禁用uvicorn默认访问日志处理器
优化日志格式化配置
2025-12-17 22:55:12 +08:00
Wenjie Zhang
80d03554b4 refactor(deep_agent): 不使用默认的 create_deep_agent 而是仅使用其中间件重构深度智能体创建逻辑
重构深度智能体的创建逻辑,使用更灵活的create_agent替代create_deep_agent
添加多个中间件包括摘要、文件系统和子代理处理
优化研究代理的描述并更新提示词指导
修复聊天路由中extra_metadata的合并逻辑
2025-12-17 22:28:28 +08:00
Wenjie Zhang
100f9dac7f style: 统一代码格式并修复格式问题 2025-12-04 10:12:01 +08:00
Wenjie Zhang
339484fe72 feat(deep_agent): 重构深度分析智能体并优化MCP配置
重构深度分析智能体的提示词和上下文处理逻辑,将提示词集中管理并优化结构
修改MCP服务器配置,使用本地npx命令替代远程HTTP服务
更新文档中的环境变量名称和配置说明
在Makefile中添加.env文件检查
2025-12-02 16:47:21 +08:00
Wenjie Zhang
0d20cf66db feat(agent): 添加智能体工作状态显示功能
实现智能体工作状态的实时显示,包括任务列表和文件管理功能
- 在 DeepAgent 中添加 todo 和 files 能力支持
- 新增 AgentPopover 组件展示工作状态
- 修改聊天界面添加状态显示按钮
- 更新服务端状态提取逻辑
- 更新文档和路线图
2025-11-14 12:50:32 +08:00
Wenjie Zhang
67ddbe6f40 feat: 添加 CLAUDE.md 文件以提供项目开发指导
- 新增 CLAUDE.md 文件,包含项目概述、开发环境管理、项目架构、开发规范、特色功能模块及调试和故障排除指南。
- 详细描述了使用 Docker Compose 管理开发环境的步骤和常用命令。
- 介绍了项目的技术栈、核心目录结构及主要服务,确保开发者能够快速上手。
2025-11-12 11:00:39 +08:00
Wenjie Zhang
0e92aaa99a fix: 修正深度智能体上下文配置的模块名称引用
- 在 `graph.py` 中,将上下文配置的模块名称从 `self.name` 更新为 `self.module_name`,确保正确加载上下文信息。
2025-11-12 03:41:30 +08:00
Wenjie Zhang
5adff04865 feat: 添加深度分析智能体模块及相关上下文和工具
- 在 `src/agents/deep_agent` 中新增深度分析智能体模块,包含任务规划、深度知识搜索和分析能力。
- 引入 `deepagents` 库,创建深度智能体并实现复杂任务处理。
- 更新 `pyproject.toml` 以添加 `deepagents` 依赖。
- 修改 `context.py` 和 `graph.py`,为深度智能体提供专用上下文和工具支持。
- 更新文档以反映新功能和模块的集成。
2025-11-12 01:21:38 +08:00