Commit Graph

147 Commits

Author SHA1 Message Date
Wenjie Zhang
d3c482d6bf feat: 注入数据库描述到工具描述中 2026-01-24 12:22:54 +08:00
Wenjie Zhang
b271da3ca8 fix(context): 修复 deep_agent 的 Prompt 无法正确解析的问题 2026-01-24 10:56:31 +08:00
Wenjie Zhang
d538527e7a chore(database): 优化镜像配置与部分 SQLite 残留 2026-01-24 10:56:31 +08:00
Wenjie Zhang
3b903bcef4 feat(config): 在前端添加基于权限的知识库展示设计 2026-01-24 10:56:31 +08:00
Wenjie Zhang
7ffc7a7920 feat(web/config): 重构配置侧边栏为通用选择组件
重构 AgentConfigSidebar 组件,将工具选择逻辑抽象为通用选择组件
- 支持显示选项名称和描述
- 根据选项数量自动切换显示模式(卡片列表或弹窗)
- 统一处理工具、知识库等多选配置项
- 优化样式和交互体验
2026-01-24 10:56:31 +08:00
Wenjie Zhang
5cb6e4402f fix(chat): 修复知识库权限过滤逻辑
TODO: 前端还未完成过滤
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
01ea590f76 feat(agent): 实现多部门智能体配置管理功能
新增部门级智能体配置管理,支持创建、切换、编辑和删除配置
添加运行时配置中间件,支持动态加载模型、工具和知识库
重构智能体上下文处理,支持部门ID和配置切换
实现前端配置管理界面,支持配置的增删改查和设为默认
添加后端API和数据库模型支持多配置管理
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
Wenjie Zhang
a1812f2e97 feat(知识库): 重构知识库元数据存储为PostgreSQL数据库
- 新增知识库、知识文件、评估基准、评估结果等数据模型
- 实现知识库相关Repository类提供CRUD操作
- 修改知识库实现类使用PostgreSQL存储元数据
- 添加PostgreSQL数据库管理器和初始化逻辑
- 更新相关路由和工具类适配新的存储方式
- 添加数据库迁移脚本和测试工具
- 在docker-compose中配置PostgreSQL服务
2026-01-24 10:56:31 +08:00
GitHub Actions
0f684851bc style: auto-format with ruff [skip ci] 2026-01-18 14:55:37 +00:00
Wenjie Zhang
339cd0f3b2 refactor: 重构工具获取逻辑,移除过时的工具接口,优化上下文工具管理 2026-01-15 16:04:19 +08:00
Wenjie Zhang
9d1e2b92f5 fix(agent-tools): 修复 SQL 安全检查误判的情况 2026-01-15 14:45:28 +08:00
Wenjie Zhang
ebbb831fc0 feat: 实现MCP服务以统一业务逻辑和状态管理
- 新增 mcp_service 文件,移除原本的 src/agents/common/mcp.py,所有功能合并到mcp_service,MCP服务来处理服务器配置的增删改查操作、数据库与缓存之间的同步以及MCP客户端和工具的管理。
- 将重构的 MCP 和现有智能体做适配,引入全局缓存和状态管理机制用于MCP服务器和工具。
- 数据库表更新,在MCPServer模型中为StdIO传输类型添加了command和args字段。
- 其他代码优化、增强样式以提升用户体验和可读性。
2026-01-14 20:16:51 +08:00
hfdy2019
51b7824819 feat: make lint & make format 2026-01-14 20:16:51 +08:00
hfdy2019
c360252e56 feat: 新增支持动态配置mcp功能 2026-01-14 20:16:51 +08:00
jonasHanhan
9a54b9d13f Fix None handling in knowledge tool filter 2026-01-14 17:37:27 +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
GitHub Actions
adac39fcde style: auto-format with ruff [skip ci] 2026-01-02 12:03:38 +00:00
Wenjie Zhang
7c414521c9 fix(reporter): 修复 reporter 智能体的模型加载异常 2026-01-02 19:56:55 +08:00
GitHub Actions
834202fc20 style: auto-format with ruff [skip ci] 2025-12-30 12:12:04 +00:00
Wenjie Zhang
610b60e204 feat(knowledge): 智能体查询知识库时,支持基于文件名的模糊过滤功能,不支持 LightRAG
实现知识库检索时可按文件名进行模糊匹配过滤
在Milvus知识库中支持文件名的like表达式过滤
前端展示添加文件名显示
添加相关测试用例验证过滤功能
2025-12-30 20:10:42 +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
8087ef4b00 feat(chatbot): 增强智能体工具和知识库集成能力
- 在智能体上下文中添加知识库字段,支持从知识库中选择工具
- 重构工具获取逻辑,支持根据上下文动态加载工具
- 优化前端知识库创建和加载逻辑,移入 store 管理
- 改进工具调用结果渲染,支持知识库工具识别
- 添加 clear-btn 样式改进
2025-12-30 19:01:45 +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
ccc6cbd17a fix: 修复SQL 工具重复加载的问题 2025-12-24 20:59:19 +08:00
Wenjie Zhang
606afc99ee feat(agent): 添加强制刷新智能体详情的功能 Fixes #396
修改 fetchAgentDetail 方法支持强制刷新参数
更新上下文配置选项为动态获取
调整工具和MCP服务器列表为实时获取
2025-12-24 18:52:14 +08:00
Wenjie Zhang
dede6679db feat(web): 添加消息复制功能并优化反馈组件图标 2025-12-23 01:51:05 +08:00
Wenjie Zhang
0527cf491d refactor: 将同步IO操作改为异步以提高性能 2025-12-21 21:25:13 +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
e62ec33e4b feat(agents): 增加模型重试中间件并调整递归限制
将递归限制从100增加到300以支持更深的调用链
添加ModelRetryMiddleware到聊天机器人中间件链
优化模型加载逻辑,支持openai和deepseek官方初始化
2025-12-17 22:27:46 +08:00
Wenjie Zhang
5f6047849c refactor: 优化代码格式和结构,改进错误提示信息
- 统一代码格式,移除多余空格和注释
- 改进MySQL连接错误提示信息
- 优化GraphDatabase查询格式和响应结构
- 简化测试用例参数传递方式
- 调整前端GraphCanvas组件样式
2025-12-16 10:28:44 +08:00
Wenjie Zhang
3d63418adf feat: 实现统一图谱适配器及前端组件重构
重构图谱系统架构,引入适配器模式支持多种图数据库类型。主要变更包括:

1. 新增 GraphAdapter 基类及 LightRAG/Upload 适配器实现
2. 重构前端组件结构,新增 GraphDetailPanel 等可复用组件
3. 实现 useGraph 组合式函数统一管理图谱状态
4. 优化 Neo4j 节点/边数据标准化处理
5. 新增统一图谱 API 接口及对应测试用例
6. 改进前端交互体验,增加节点详情展示等功能

前端组件库重构为模块化结构,提升代码复用性。适配器模式使系统可灵活支持不同图数据源,为后续扩展奠定基础。

Next:上传图谱文件的时候,支持属性解析
2025-12-15 23:25:56 +08:00
Wenjie Zhang
ff75c2dfb3 fix(agents): 为aiosqlite连接添加is_alive方法补丁
build: 在Makefile中添加etcd镜像拉取
2025-12-15 10:04:30 +08:00
Wenjie Zhang
ebaccea507 refactor(knowledge): 优化lightrag的 ollama embedding配置处理并添加查询参数过滤
重构get_embedding_config函数,直接使用model_dump返回配置信息
在LightRagKB中增加Ollama embedding支持并调整token大小限制
添加查询参数过滤逻辑,只保留有效参数
2025-12-08 13:23:14 +08:00
Wenjie Zhang
6003563adb refactor(storage): 将图片上传功能重构为异步文件上传
重构图片上传功能为通用的异步文件上传,支持自定义文件名
移除同步上传方法,统一使用异步接口
2025-12-07 18:25:45 +08:00
GitHub Actions
eb9fd5b798 style: auto-format with ruff [skip ci] 2025-12-07 09:56:30 +00:00
Wenjie Zhang
100f9dac7f style: 统一代码格式并修复格式问题 2025-12-04 10:12:01 +08:00
Wenjie Zhang
2126f45493 refactor(db): 将数据库操作迁移到异步SQLAlchemy
- 将DBManager重构为支持异步操作
- 更新auth_middleware使用异步会话
- 修改chat_router和dashboard_router使用异步数据库操作
- 重构ConversationManager为异步版本
- 添加aiosqlite和asyncpg依赖
- 优化数据库查询性能
2025-12-04 10:11:28 +08:00
Wenjie Zhang
001751dd46 feat(知识库): 优化知识库创建界面并标记 Chroma 为弃用
- 在知识库类型选择卡片中添加 Chroma 弃用标记和提示
- 默认知识库类型改为 Milvus
- 添加空状态显示和创建按钮
- 优化知识库类型排序,将 Chroma 放在最后
- 移除不必要的样式代码
2025-12-03 15:26:58 +08:00
Wenjie Zhang
339484fe72 feat(deep_agent): 重构深度分析智能体并优化MCP配置
重构深度分析智能体的提示词和上下文处理逻辑,将提示词集中管理并优化结构
修改MCP服务器配置,使用本地npx命令替代远程HTTP服务
更新文档中的环境变量名称和配置说明
在Makefile中添加.env文件检查
2025-12-02 16:47:21 +08:00
Wenjie Zhang
697b7d4b3a refactor(mcp): 优化MCP配置和Docker构建流程
- 移除不再使用的paddleocr依赖
- 清理并注释MCP服务器配置,增加错误追踪
- 重构Dockerfile以提高构建效率和减小镜像体积
- 更新文档添加MCP服务器配置方式的详细说明
2025-12-01 00:42:58 +08:00
Wenjie Zhang
14bcb29d5b
重构 zip 格式 markdown 入库以及其他风格优化 (#336)
* 更新日志


* refactor(docs): 重构 zip 格式的支持逻辑

---------

Co-authored-by: lihuan-coder <1120083712@qq.com>
2025-11-15 12:18:31 +08:00
Wenjie Zhang
0d20cf66db feat(agent): 添加智能体工作状态显示功能
实现智能体工作状态的实时显示,包括任务列表和文件管理功能
- 在 DeepAgent 中添加 todo 和 files 能力支持
- 新增 AgentPopover 组件展示工作状态
- 修改聊天界面添加状态显示按钮
- 更新服务端状态提取逻辑
- 更新文档和路线图
2025-11-14 12:50:32 +08:00
Wenjie Zhang
d999613f41 refactor: 优化环境变量获取逻辑,确保默认值处理
- 在多个文件中更新环境变量的获取方式,使用 `or` 语法简化代码,确保在未设置环境变量时使用默认值。
- 移除 `.env.template` 中与 LightRAG 相关的环境变量配置,简化配置文件。
- 更新 `pyproject.toml` 中的项目描述,提供更清晰的项目定位。
- 在文档中增加对图片上传响应格式的详细说明,提升用户理解。
2025-11-12 19:53:56 +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