肖泽涛
80cf6937ed
fix: 修复新增对话时内容直接作为标题长度超出表字段长度限制问题, titile 字段长度限制为255
...
- 新增 MAX_CONVERSATION_TITLE_LENGTH 常量 (255 字符)
- 新增 _normalize_title() 方法用于截断和校验标题
- 防止创建和更新对话时数据库字段溢出
- 前端 AgentChatComponent 同步添加标题标准化处理
- 添加标题标准化的单元测试
2026-02-25 10:39:32 +08:00
肖泽涛
45ecf7bcf2
feat: 集成Langfuse并新增GAIA离线评估工具
2026-02-24 18:04:02 +08:00
肖泽涛
afd83e5084
feat: 增强Agent文件能力并补充流式调试日志
2026-02-24 18:03:47 +08:00
肖泽涛
6416589787
feat: 支持 Dify 只读知识库检索接入
2026-02-24 12:12:02 +08:00
肖泽涛
c1afed8d3d
Merge branch 'codex/mcp-env-field-support' into feature/skills
2026-02-23 22:55:47 +08:00
肖泽涛
0f7c0d3017
fix(skills): 增强安全性与交互体验
...
- 添加 skill slug 格式校验,防止路径遍历攻击
- 优化导出文件清理逻辑,添加异常处理
- 前端依赖管理表单添加禁用状态联动
- 补充相关单元测试
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 20:52:26 +08:00
肖泽涛
c1653a59c0
feat(mcp): add stdio env support and env editor component
2026-02-22 18:57:30 +08:00
肖泽涛
2666b27fcb
feat(skills): 支持依赖管理与运行时渐进注入
2026-02-22 17:42:37 +08:00
肖泽涛
85b28f3753
fix: correct activated_skills state reducer annotation
2026-02-22 17:41:35 +08:00
肖泽涛
46b676db07
feat(skills): add skills management module
...
实现 Skills 管理功能,支持超级管理员导入、编辑、导出和删除技能包。
- 新增 Skill 数据模型(元数据存数据库,内容存文件系统)
- 新增 /api/system/skills/* 路由(权限分级:admin 可列表,superadmin 可管理)
- 新增 SelectedSkillsReadonlyBackend,运行时只读挂载到 /skills
- Agent 配置新增 skills 字段,运行时注入技能提示词
- 前端新增 Skills 管理页面(设置弹窗 + 独立路由)
- 新增测试覆盖:service/router/backend 单测
未实现功能:
- 关联使用其他技能
- 沙箱执行代码
- 在技能中绑定工具
2026-02-21 02:48:20 +08:00
肖泽涛
a32d6fff61
merge: attachment prompt idempotent system message into feature/skills
2026-02-21 02:24:02 +08:00
肖泽涛
a307f689e8
merge: attachments state sync fixes into feature/skills
2026-02-21 02:23:59 +08:00
肖泽涛
8e7437d4ea
fix: merge attachment prompt into system_message idempotently
2026-02-21 02:03:26 +08:00
肖泽涛
5b101bbbc9
fix(attachments): preserve runtime files when syncing upload state
2026-02-21 01:51:41 +08:00
肖泽涛
dcb3d2c939
fix(attachments): merge state files by /attachments namespace
2026-02-21 00:59:29 +08:00
肖泽涛
bfae184e1c
fix(attachments): sync thread state on upload/delete
2026-02-21 00:50:57 +08:00
肖泽涛
b554bbbe4a
Merge branch 'fix/conversation-title-length'
2026-02-20 23:56:30 +08:00
肖泽涛
8fe32d0b21
fix: 修复新增对话时内容直接作为标题长度超出表字段长度限制问题, titile 字段长度限制为255
...
- 新增 MAX_CONVERSATION_TITLE_LENGTH 常量 (255 字符)
- 新增 _normalize_title() 方法用于截断和校验标题
- 防止创建和更新对话时数据库字段溢出
- 前端 AgentChatComponent 同步添加标题标准化处理
- 添加标题标准化的单元测试
2026-02-20 23:41:44 +08:00
肖泽涛
60bc408a3e
feat(knowledge): add ragflow-like chunk preset pipeline
2026-02-20 19:35:43 +08:00
肖泽涛
4bd77fce12
Merge branch 'main' of https://github.com/xerrors/Yuxi-Know
2026-02-20 13:27:35 +08:00
肖泽涛
360316963e
feat(evaluation): 支持评估基准下载
2026-02-20 13:23:20 +08:00
Wenjie Zhang
e6ad5dfa1d
feat(agent): 为 SqlReporterAgent 添加文件上传和附件保存功能
...
- 引入 FilesystemMiddleware 和 StateBackend 支持文件存储
- 添加 save_attachments_to_fs 中间件保存附件到文件系统
- 配置 agent 的 capabilities 支持 file_upload 和 files
2026-02-15 21:58:24 +08:00
Wenjie Zhang
ed849a2e5c
feat(tool): 优化 MySQL 工具命名并添加前端渲染组件
...
- 将工具 name_or_callable 从中文改为英文 (mysql_query, mysql_describe_table, mysql_list_tables)
- 添加 MySQL 工具结果的前端渲染组件,提升用户体验
2026-02-15 21:57:41 +08:00
Wenjie Zhang
d66aa64436
feat(model): 更新默认模型以及候选模型
2026-02-15 21:11:22 +08:00
Wenjie Zhang
1f5636520e
style: 统一代码格式和 import 顺序
...
- 调整 Python 文件 import 顺序,遵循标准库→第三方库→项目模块顺序
- 统一字符串引号风格为双引号
- 优化 Vue 组件 console.log 格式
- 压缩 import 语句为单行
- 清理不必要的空行
2026-02-13 22:29:20 +08:00
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
34bfc0c97e
fix(agent): 修复因工具返回的 token 报告错误导致的频繁 summary
2026-02-03 14:52:54 +08:00
Wenjie Zhang
d47a66ea88
fix(security): 移除 SQL 注释后再进行安全验证
...
- 防止通过注释绕过后续的安全检查逻辑
- 增强 MySQLSecurityChecker 的防护能力
2026-02-03 13:31:25 +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
66cfb50d3f
fix(runtime-middleware): 修复 enable_tools_override 为 False 时,仍可以调用所有工具
2026-02-03 03:29:16 +08:00
Wenjie Zhang
c09bf30626
feat(middleware): 附件中间件迁移至 MinIO 存储
...
- 使用 MinIOBackend 替代本地文件系统存储附件
- 优化 thread_id 获取逻辑,支持多种来源
- 保留原始文件名而非 file_id.md 格式
2026-02-03 02:35:56 +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
db833de69b
fix(agent): 修复中间件无法载入知识库工具
2026-01-30 19:35:11 +08:00
Wenjie Zhang
820b6581e7
fix: (pre-commit) 添加子智能体切换要求
2026-01-30 13:34:11 +08:00
Wenjie Zhang
8cbebf4cca
feat(agent): RuntimeConfigMiddleware 添加自定义字段配置
2026-01-30 12:40:54 +08:00
Wenjie Zhang
f71e1d67d3
format: 格式化样式
2026-01-29 22:49:37 +08:00
Wenjie Zhang
7e5bba9971
refactor: 更新工具名称为英文并优化深度分析上下文提示,删除不必要的样式
2026-01-29 22:49:04 +08:00
Wenjie Zhang
4480c20f81
fix(middleware): 修复 RuntimeConfigMiddleware 的工具override 导致的其余中间件失效的问题(还需要进一步排查 subagents 的 model 是否有问题)
2026-01-29 22:48:48 +08:00
Wenjie Zhang
812bb95f8d
format: 格式化代码
2026-01-29 21:08:43 +08:00
Wenjie Zhang
138a0795bf
feat(model): 修改基础的 OpenAIBase 为异步调用
2026-01-28 11:30:55 +08:00
Wenjie Zhang
3c9cc33022
fix(agent-tools): 修复内置工具没有默认加载的问题
2026-01-28 11:17:12 +08:00
Wenjie Zhang
a4f425dbf9
feat: 上传文件新增基于URL获取和处理功能,需要配置白名单环境变量
...
- 引入新的端点来获取URL内容并转换为Markdown格式。
- 在环境变量中添加URL白名单配置以确保安全。
- 增强文件上传模态框以支持URL输入和URL批量处理。
- 更新文件处理逻辑以区分文件和URL。
- 改进UI组件以适应新的URL处理功能。
- 添加用于URL验证和获取的工具函数。
2026-01-27 17:12:48 +08:00
Wenjie Zhang
537b798f9a
fix: 更新 MilvusKB 配置项标签,添加重排序模型选择功能,优化 SearchConfigModal 描述显示
2026-01-27 17:07:18 +08:00
jonasHanhan
e41fc1e000
feat: add keyword and hybrid retrieval for milvus
2026-01-27 16:31:56 +08:00
Wenjie Zhang
b08ae33678
fix: 修改 db_id 生成逻辑,限制哈希长度为 32 字符 #499
2026-01-26 16:33:49 +08:00
Wenjie Zhang
b5c14a6a6f
fix(database): 扩展 db_id 字段长度至 80 字符,以支持更长的 ID #499
2026-01-26 11:13:33 +08:00
Wenjie Zhang
4a0110d1a7
feat(task): 添加任务删除功能,支持通过 API 删除任务并更新前端状态
2026-01-25 23:47:40 +08:00
Wenjie Zhang
882a90cb9b
refactor(agent-web): 将智能体状态修改为状态工作台,集成文件,任务,附件
2026-01-24 15:24:25 +08:00
Wenjie Zhang
794a860a58
docs: 更新快速开始指南和版本号,优化数据库描述注入逻辑
2026-01-24 12:36:24 +08:00
Wenjie Zhang
d3c482d6bf
feat: 注入数据库描述到工具描述中
2026-01-24 12:22:54 +08:00
Wenjie Zhang
a8b7a37dca
feat: 更新版本号至 0.5.0-beta
2026-01-24 12:06:49 +08:00
Wenjie Zhang
8443513dad
chore: 重构迁移脚本
2026-01-24 10:56:31 +08:00
Wenjie Zhang
b271da3ca8
fix(context): 修复 deep_agent 的 Prompt 无法正确解析的问题
2026-01-24 10:56:31 +08:00
Wenjie Zhang
c5aec7f463
fix: 将MD5哈希算法替换为更安全的SHA256算法
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
c961df43a9
format: 清理代码中的空行和优化导入顺序
...
统一移除文件末尾多余的空行
调整多个文件中的导入语句顺序以保持一致性
将时间处理函数提取到datetime_utils模块中复用
2026-01-24 10:56:31 +08:00
Wenjie Zhang
e585f796d2
refactor(task): 重构任务服务并迁移到postgres 数据库
...
将任务服务从server/services移动到src/services
添加TaskRepository实现数据库持久化
更新所有相关导入路径
2026-01-24 10:56:31 +08:00
Wenjie Zhang
63fed0dfd6
refactor: 移除基于 SQLite 的遗留问题
2026-01-24 10:56:31 +08:00
Wenjie Zhang
a5d55d6c37
refactor(storage): 重构对话数据库模型与存储管理
...
将业务数据模型从SQLite迁移至PostgreSQL,统一使用models_business.py
删除旧的SQLite模型和ConversationManager,新增repository和服务层
优化时间处理工具函数,增加utc_now_naive和format_utc_datetime
重构前端组件代码格式,统一多行导入和长字符串的换行风格
2026-01-24 10:56:31 +08:00
Wenjie Zhang
3da0d57c1c
refactor: 重构数据库访问层,用户/对话/消息都统一迁移至PostgreSQL并添加业务模型支持
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
Wenjie Zhang
f3da61b10a
功能:增强知识库访问控制和共享配置 #480
...
- 在save_agent_config中实现了基于用户角色的知识库访问控制。
- 添加了新端点以检索当前用户可访问的数据库。
- 在数据库创建和更新过程中引入了share_config以管理共享设置。
- 创建了ShareConfigForm组件用于在UI中管理共享设置。
- 更新了部门和知识API以支持新的访问控制功能。
- 增强了用户管理组件以显示用户角色和部门名称。
- 重构了数据库视图以包含共享配置设置。
2026-01-24 10:56:31 +08:00
Wenjie Zhang
e0adda65fc
fix(lightrag): 修复 lightrag 知识库 embedding dim 的错误 Fixes: Error: 知识库上传PDF检索测试失败
...
Fixes #498 Error: ValueError: Embedding dimension mismatch detected: total elements (1024) cannot be evenly divided by expected dimension (1536)
Fixes #491
2026-01-23 22:29:24 +08:00
Wenjie Zhang
08573a6de4
fix(kb_utils): 从 content_hashes 映射中获取 content_hash,添加缺失时的异常处理 #486
2026-01-20 13:05:44 +08:00
Wenjie Zhang
67bcd26565
fix(lightrag): 过滤掉引用不存在节点的边以确保查询结果的有效性 #477
2026-01-19 16:01:27 +08:00
GitHub Actions
0f684851bc
style: auto-format with ruff [skip ci]
2026-01-18 14:55:37 +00:00
Wenjie Zhang
5b3703ac1c
feat(account): 添加部门基础管理功能 #480
...
- 实现数据库迁移,创建部门表并向用户表添加department_id字段。
- 创建Department模型并与User模型建立关联关系。
- 开发部门管理API以支持增删改查操作。
- 添加DepartmentManagementComponent用于在UI中管理部门。
- 在UserManagementComponent中集成部门选择功能以进行用户分配。
- 更新用户存储以处理部门数据。
- 增强UI组件以改善样式和用户体验。
2026-01-18 22:54:43 +08:00
Wenjie Zhang
62af84eea9
fix(graph-minio): 修复未配置 HOST_IP 的情况下导致的错误 Fixes: Question: 不允许的外部 URL: localhost:通过图谱功能上传jsonl文件后无法解析
...
Fixes #479
2026-01-18 15:17:27 +08: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
beb62436fd
secure(48): 验证 task_id 格式以防止路径遍历漏洞
2026-01-15 12:56:47 +08:00
Wenjie Zhang
c7a417c68b
feat: 添加时间戳到上传的图片文件名,以避免文件名冲突
2026-01-15 12:29:01 +08:00
Wenjie Zhang
937355e390
feat: 添加加载状态和空内容提示,优化文件详情展示
2026-01-15 12:17:18 +08:00
Wenjie Zhang
7fb5ba830d
chore: 更新版本号至 v0.4.3,修改相关文档和配置文件
2026-01-15 01:07:41 +08:00
Wenjie Zhang
22921fdec7
feat(parsing): 使用 docling 处理 docx/xlsx/pptx #439
2026-01-15 00:29:00 +08:00
Wenjie Zhang
9fa8ce288f
feat: 添加知识库名称检查,防止重复创建相同名称的知识库 #466
2026-01-14 22:00:53 +08:00
Wenjie Zhang
9430cba037
feat: 增强LLM查询功能,lightrag 中支持选择返回内容范围(默认仅 chunk) #437
2026-01-14 21:03:11 +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
Wenjie Zhang
5a5b105769
feat: 更新日志配置,添加日志桥接功能 #462
2026-01-12 19:22:41 +08:00
Wenjie Zhang
ddd4368977
chore: 更新版本号至v0.4.2
...
更新package.json、pyproject.toml、info.template.yaml和README.md中的版本号至v0.4.2
2026-01-09 02:37:36 +08:00
GitHub Actions
9ffc058d6d
style: auto-format with ruff [skip ci]
2026-01-08 17:23:00 +00:00
Wenjie Zhang
05a67c24f8
fix(knowledge): 修复智能体调用场景下,知识库查询参数不生效的问题。
...
- 将查询参数从全局元数据迁移到知识库实例元数据
- 废弃 reranker_config 配置,统一通过 query_params.options 管理
- 修改 Milvus 和 LightRAG 实现以使用新的查询参数结构
- 更新前端界面移除旧的 reranker 配置表单
- 添加测试用例验证新的查询参数配置流程
2026-01-09 01:21:41 +08:00
Wenjie Zhang
c00949778d
feat(lightrag): 添加对结构化查询结果的支持并优化前端展示
...
- 在 KnowledgeBase 及其实现类中添加 agent_call 参数以区分不同调用场景
- 为 LightRAG 实现结构化查询结果返回,包括实体、关系和文档块
- 在前端添加完整的结构化结果展示组件,包含元数据、实体卡片、关系卡片等
- 优化查询结果样式和交互体验
2026-01-08 23:17:28 +08:00
Wenjie Zhang
98c73a90c9
refactor(knowledge): 将知识库检索参数从 router 移动到对应的实现文件中
2026-01-08 22:13:17 +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
c6ddb70909
feat(FileTable): 添加全选功能和选择状态指示器
...
在文件表格的批量操作区域添加全选复选框和部分选择状态指示器
更新项目信息统计数据 Fixes Feat: 支持“全选”功能以提升批量操作效率
Fixes #435
2026-01-06 19:32:27 +08:00
Wenjie Zhang
3c77755a78
feat: 重构知识库文件处理流程,支持分阶段处理【!important】
...
refactor(lightrag/milvus): 将文件处理拆分为上传、解析和入库三个阶段
feat(base): 新增文件状态枚举和分阶段处理方法
feat(api): 添加手动触发解析和入库的API接口
fix(utils): 修复MinIO URL解析逻辑,支持更多协议格式
style(components): 优化UI组件样式和交互
test: 移除过时的测试文件
2026-01-04 21:35:25 +08:00
Wenjie Zhang
fffe237780
feat(知识库): 在生成描述时支持传入文件列表
...
在知识库描述生成功能中增加文件列表参数,使AI能参考文件内容生成更准确的描述
前端组件传递文件列表至API,后端处理时将其包含在提示词中
2026-01-03 19:02:08 +08:00