Commit Graph

1060 Commits

Author SHA1 Message Date
supreme0597
6b29f659e5 feat: 修复 @ mention 搜索漏洞并重构优化 AgentPanel 自动打开策略
1. 修复 mention_router 中的 IDOR 越权安全漏洞,加入 thread 归属权校验,定义强类型 Pydantic Schema。
2. 修复 mention_search_service 中 ensure_thread_dirs 的 GET 副作用、空 Query 扫描和 MAX_SEARCH_DEPTH 深度问题,使用标准 Base64 编解码。
3. 增加前端 mention_api.js 参数的安全兜底。
4. 重构 AgentPanel 自动展开策略,彻底解决大仓库克隆时的卡死问题:
   - 将 fetchThreadFiles 改为 recursive=false 避免递归大目录。
   - 重构为只有在发生显性的物理文件写入(用户上传附件成功、用户保存交付件到工作区成功)的回调中才精准触发侧边栏自动展开,完美契合用户心智模型与性能诉求。
5. 精简 roadmap.md 文档,更新相关单元测试。
2026-05-25 21:11:41 +08:00
supreme0597
d0c60d9d82 feat(mention): 优化@提及搜索排序与高亮展示,修复唤醒交互及路径硬编码问题 2026-05-25 21:11:20 +08:00
Wenjie Zhang
575c34b160 feat: 将kb 从沙盒映射中移除,取而代之的是一个新的 Open 工具,可以提供自由且可控的文件访问 2026-05-25 21:10:05 +08:00
Wenjie Zhang
86f92f7f3f feat(doc): 更新 MinerU 解析器参数,修改 Docker 配置,优化文档说明 2026-05-25 21:08:37 +08:00
supreme0597
3870dc18a0 feat(web): 添加 SVG 操作按钮(复制 SVG 源码/复制为 PNG)及事件委托
- svgRenderer.js 输出中嵌入 .svg-actions 操作按钮
- MarkdownPreview.vue 添加事件委托处理复制逻辑
- PNG 尺寸策略:viewBox 固有坐标 → getBoundingClientRect → 800x600
- Canvas 不强制填充背景色,由 SVG 自身决定
- 深色模式适配
2026-05-25 21:08:37 +08:00
supreme0597
6d626ab908 feat(web): 添加 SVG 响应式容器样式到 MarkdownPreview
- 添加 .svg-inline-render 响应式容器样式
- 深色模式半透明背景支持
2026-05-25 21:08:37 +08:00
supreme0597
b31776e405 feat(web): 在 renderMarkdown 中集成 SVG 渲染(DOMPurify 默认已支持 SVG)
- 导入 renderSvgBlocks() 并在 markdown-it 渲染前调用
- cacheKey 基于 SVG 转换后的内容,保证缓存一致性
- DOMPurify 配置保持不变(默认白名单已支持 SVG)
2026-05-25 21:08:37 +08:00
supreme0597
73041775d4 feat(web): 添加 SVG 代码块预处理工具函数(行级解析,支持围栏变体)
- 新增 svgRenderer.js,实现 renderSvgBlocks() 函数
- 支持反引号/波浪线围栏、大小写不敏感、围栏属性等变体
- 流式安全:不完整 SVG 块保持原样
- SVG 内容压缩为单行,防止 markdown-it HTML 块截断
- 新增 15 个单元测试覆盖所有场景
2026-05-25 21:08:37 +08:00
supreme0597
df08fea2b8 feat(skills): 支持远程安装搜索、仓库历史记录与批量删除
- 后端新增全局搜索 skills.sh API (POST /system/skills/remote/search)
- 后端新增批量删除接口 (POST /system/skills/delete-batch),使用行锁防并发
- skill_repository.get_by_slug 支持 for_update 参数
- 前端远程安装弹框重构:Tab 双视图(按仓库拉取/全局搜索)、分页列表
- 前端仓库输入框新增历史记录功能(localStorage 持久化),支持逐条/批量清空
- 前端批量管理模式:全选/反选/清空 + 二次确认批量删除
- 修复 dropdown overlay teleport 到 body 导致 scoped CSS 无法穿透的样式问题
- 补充批量删除及并发锁单元测试
2026-05-25 17:54:58 +08:00
supreme0597
3082d9808e Merge remote-tracking branch 'origin/dev' into supreme/feat/svg-render 2026-05-23 19:20:05 +08:00
Wenjie Zhang
fd6803e477 chore(release): 准备 0.6.2 发布 2026-05-22 20:22:09 +08:00
supreme0597
27fb208c81 fix(mention): 解决新建会话未对话时输入@无法检索工作区文件的问题 2026-05-22 13:28:53 +08:00
supreme0597
f4f6ff29e2 fix(mention): 解决新会话中@提及无法激活问题,引入Redis缓存一致性失效闭环 2026-05-22 13:15:46 +08:00
supreme0597
469e362506 feat: 修复 @ mention 搜索漏洞并重构优化 AgentPanel 自动打开策略
1. 修复 mention_router 中的 IDOR 越权安全漏洞,加入 thread 归属权校验,定义强类型 Pydantic Schema。
2. 修复 mention_search_service 中 ensure_thread_dirs 的 GET 副作用、空 Query 扫描和 MAX_SEARCH_DEPTH 深度问题,使用标准 Base64 编解码。
3. 增加前端 mention_api.js 参数的安全兜底。
4. 重构 AgentPanel 自动展开策略,彻底解决大仓库克隆时的卡死问题:
   - 将 fetchThreadFiles 改为 recursive=false 避免递归大目录。
   - 重构为只有在发生显性的物理文件写入(用户上传附件成功、用户保存交付件到工作区成功)的回调中才精准触发侧边栏自动展开,完美契合用户心智模型与性能诉求。
5. 精简 roadmap.md 文档,更新相关单元测试。
2026-05-22 12:30:22 +08:00
supreme0597
261ea88b11 fix(mention): 修复普通用户无法在聊天中唤出技能与MCP提及列表的Bug
原因:
1. 后端接口 GET /api/system/skills 与 GET /api/system/mcp-servers 之前被权限校验拦截。
2. 前端本地在调用拉取技能和MCP服务底集的方法时,前置调用了 apiAdminGet 会在本地硬性拦截非管理员权限的用户,导致请求被掐断并静默兜底返回空数组。

修改:
1. 后端放开此二接口路由为低特权只读访问,且对 MCP 服务器的敏感连接信息(如 url、command、args、env、headers)在 user 角色拉取时执行强力脱敏过滤,并补充相关单元测试。
2. 前端将 listSkills 与 getMcpServers 从 apiAdminGet 调整为 apiGet,绕过本地硬拦截。
3. 维护 roadmap.md 进度记录。
2026-05-22 00:23:18 +08:00
supreme0597
65135e2f93 feat(mention): 优化@提及搜索排序与高亮展示,修复唤醒交互及路径硬编码问题 2026-05-21 23:44:56 +08:00
Wenjie Zhang
8e17f44ec2 feat: 将kb 从沙盒映射中移除,取而代之的是一个新的 Open 工具,可以提供自由且可控的文件访问 2026-05-17 01:58:04 +08:00
Wenjie Zhang
0e174a3ba8 feat(doc): 更新 MinerU 解析器参数,修改 Docker 配置,优化文档说明 2026-05-17 01:58:04 +08:00
supreme0597
43f2f2bb28 feat(web): 添加 SVG 操作按钮(复制 SVG 源码/复制为 PNG)及事件委托
- svgRenderer.js 输出中嵌入 .svg-actions 操作按钮
- MarkdownPreview.vue 添加事件委托处理复制逻辑
- PNG 尺寸策略:viewBox 固有坐标 → getBoundingClientRect → 800x600
- Canvas 不强制填充背景色,由 SVG 自身决定
- 深色模式适配
2026-05-15 11:40:24 +08:00
supreme0597
4d300f82af feat(web): 添加 SVG 响应式容器样式到 MarkdownPreview
- 添加 .svg-inline-render 响应式容器样式
- 深色模式半透明背景支持
2026-05-15 11:40:24 +08:00
supreme0597
f764415e4d feat(web): 在 renderMarkdown 中集成 SVG 渲染(DOMPurify 默认已支持 SVG)
- 导入 renderSvgBlocks() 并在 markdown-it 渲染前调用
- cacheKey 基于 SVG 转换后的内容,保证缓存一致性
- DOMPurify 配置保持不变(默认白名单已支持 SVG)
2026-05-15 11:40:24 +08:00
supreme0597
6938dfe18d feat(web): 添加 SVG 代码块预处理工具函数(行级解析,支持围栏变体)
- 新增 svgRenderer.js,实现 renderSvgBlocks() 函数
- 支持反引号/波浪线围栏、大小写不敏感、围栏属性等变体
- 流式安全:不完整 SVG 块保持原样
- SVG 内容压缩为单行,防止 markdown-it HTML 块截断
- 新增 15 个单元测试覆盖所有场景
2026-05-15 11:40:24 +08:00
Wenjie Zhang
5731c9d7cf feat: 视觉优化,修复样式问题 2026-05-14 20:43:40 +08:00
Wenjie Zhang
bac93a5d04 chore(release): 发布 0.6.2.beta 2026-05-14 19:20:02 +08:00
supreme0597
44d1b20383 feat(skills): 优化远程 Skill 批量安装,单次克隆完成多 skill 安装
新增 install_remote_skills_batch() 函数,利用 npx skills add 原生多 --skill 支持,
将安装 N 个 skill 的仓库克隆次数从 2N 降至 1。

后端:
- remote_skill_install_service.py 新增批处理 + _find_skill_dir()
- skill_router.py 新增 POST /remote/install-batch 端点 (admin 权限)
- 非法 skill 名不阻塞其他合法 skill,结果按请求顺序返回
- CLI 部分失败时仍导入已安装的 skill
- import 失败后 rollback session,不影响后续导入

前端:
- skill_api.js 新增 installRemoteSkillsBatch()
- SkillCardList.vue 改为单次批处理调用

测试:
- 4 个单元测试覆盖正常安装/缺失跳过/部分失败/非法名场景

文档:
- docs/develop-guides/roadmap.md 更新开发记录
- docs/vibe/2026-05-14-remote-skill-batch-install-plan.md 方案文档(含设计决策)
2026-05-14 17:15:38 +08:00
Wenjie Zhang
33a71068ed feat(auth): 下放扩展管理权限
允许管理员进入扩展管理并管理 Skills,补充权限测试和 PR 检查说明,保持前后端权限口径一致。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 13:13:41 +08:00
Wenjie Zhang
ef963617fc feat(agent): 更新代理面板和输入区域,优化状态管理和界面交互 2026-05-12 15:26:48 +08:00
Wenjie Zhang
369a749c78 Merge branch 'main' into feat/auth 2026-05-12 15:17:08 +08:00
Wenjie Zhang
e513ce9c5d fix(workspace): 修复 Markdown 预览和编辑
Taskr: 2026-05-12-fix-workspace-preview-markdown-editing
2026-05-12 14:30:28 +08:00
Wenjie Zhang
911c674545 fix(chat): 移除对话头部用户信息展示 2026-05-12 14:15:08 +08:00
Wenjie Zhang
828aad787e fix(user): 优化新增用户登录 ID 展示
将自动生成的登录 ID 收敛到用户名输入提示中,减少表单项占用并保持登录信息可见。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 13:47:40 +08:00
Wenjie Zhang
6733710e18 feat(agent): 默认启用可访问知识库
未显式配置知识库时默认使用当前用户可访问的全部知识库,保留显式空列表表示不启用知识库的语义。
2026-05-12 13:40:44 +08:00
Wenjie Zhang
c44085d718 fix(web): 修复路由守卫 next 弃用警告
将全局导航守卫改为返回值式跳转,避免 Vue Router 提示 next 回调已弃用。
2026-05-10 18:56:24 +08:00
Wenjie Zhang
22fbcb586c fix(web): 修复 MCP 卡片图标类型警告
移除 MCP 卡片无效的默认图标传参,并允许 InfoCard 接收函数组件图标。
2026-05-10 18:50:16 +08:00
Wenjie Zhang
f87b763b7b fix(web): 修复普通流式发送时用户消息延迟显示
在 legacy 流式发送路径中补齐本地乐观用户消息,避免消息发送后等待历史刷新才出现在对话中。
2026-05-10 18:39:36 +08:00
Wenjie Zhang
482f94a711 feat(web): 优化 MCP 详情页编辑体验 2026-05-10 00:36:26 +08:00
Wenjie Zhang
7af9358ef4 fix(web): Markdown 预览页面图片超出容器宽度
为 .yk-markdown-preview 中的 img 标签添加 max-width: 100% 与 height: auto 约束,防止图片溢出容器。
2026-05-09 22:33:23 +08:00
Wenjie Zhang
a7e7ff6601 fix: 修复前端依赖安全告警 2026-05-09 09:48:34 +08:00
Wenjie Zhang
1d50a28907 refactor: 修改 Markdown 预览组件 2026-05-08 01:04:23 +08:00
Wenjie Zhang
bb8897ce28 chore(web): 升级前端核心依赖并优化代码质量
Co-authored-by: Yuchuan <xerrors@qq.com>
2026-05-07 11:58:25 +08:00
Wenjie Zhang
6ef0e40df5 chore(release): bump version to 0.6.2.dev1 2026-05-07 09:52:51 +08:00
Wenjie Zhang
7b664e35d0 feat: 添加默认查询参数提取功能,优化知识库检索配置加载 2026-05-06 23:09:45 +08:00
Wenjie Zhang
ab513e2619 feat: 优化评估基准生成,支持仅使用 commonrag/Milvus 知识库,调整参数配置 2026-05-06 22:12:09 +08:00
Wenjie Zhang
179b048f07 refactor(eval): 重构评估指标和基准生成
- 引入了一个新的指标计算模块,用于检索和答案评估。
-通过整合基准生成和评估指标来简化评估服务。
-为新指标和基准生成功能添加了单元测试。
- 更新了前端组件,以利用新的图标,并改进了评估基准的样式。
-将与评估相关的逻辑整合为专门的“知识/评估”结构,以更好地组织。
2026-05-06 18:04:31 +08:00
Wenjie Zhang
1437a6be93 refactor(mention): 优化 Agent 输入框文件 mention,支持未启动对话的时候 mention 工作区的文件 2026-05-06 15:47:01 +08:00
Wenjie Zhang
a9d05480f0 feat(web): 侧边栏状态持久化 2026-05-06 13:22:20 +08:00
Wenjie Zhang
9e6348206e style: 格式化导入语句,提升代码可读性 2026-05-04 08:25:23 +08:00
Wenjie Zhang
016dfb457a fix(workspace): 修复面包屑路径逻辑,确保当前路径正常化;优化预览文件下载和调整功能 2026-05-04 08:24:25 +08:00
Wenjie Zhang
02b371851d fix: preview 2026-05-04 08:18:37 +08:00
Wenjie Zhang
cbd265fea8 feat(workspace): 增强工作区功能,处理符号链接和非 UTF-8 文本文件的预览支持 2026-05-04 08:18:37 +08:00
Wenjie Zhang
5fb6af8cb8 feat(workspace): 增强预览面板功能,支持关闭和折叠操作,优化样式 2026-05-04 08:18:37 +08:00
Wenjie Zhang
596eeeaaac feat(workspace): 新增工作区文件内容编辑功能,支持 Markdown 和 TXT 文件的保存与预览 2026-05-04 08:18:37 +08:00
Wenjie Zhang
981fd3170d feat(workspace): 增强工作区功能,新增默认 agents 文件创建及路径管理 2026-05-04 08:18:37 +08:00
Wenjie Zhang
6fcfb090de feat(workspace): 重构工作区组件,优化路径选择和面包屑导航功能
Co-authored-by: Copilot <copilot@github.com>
2026-05-04 08:18:37 +08:00
Wenjie Zhang
9ff925e4df feat(workspace): 增强工作区侧边栏,新增快速访问功能并优化路径选择逻辑 2026-05-04 08:18:37 +08:00
Wenjie Zhang
874767d4bd feat: 替换文件图标并优化文件面板布局 2026-05-04 08:18:37 +08:00
Wenjie Zhang
35f09f0bc8 feat: 完善工作区文件管理能力 2026-05-04 08:18:37 +08:00
Wenjie Zhang
c5852617b1 feat: 新增个人工作区预览
新增独立用户级 workspace 只读接口和工作区页面,支持文件列表浏览及宽屏内嵌/窄屏弹窗预览,便于后续扩展团队空间与知识库浏览。

Co-authored-by: Copilot <copilot@github.com>
2026-05-04 08:18:37 +08:00
Wenjie Zhang
250885cb4d fix: 使用 buildLlmInfoPayload 函数构造 llm_info,简化代码并避免空值提交 2026-05-04 08:12:54 +08:00
郭诣
86904332bc fix(knowledge): 修复语言模型选择后无法回显且提交为空的问题
V2 模型 spec 格式为 provider_id:model_id(冒号分隔),
但 handleLLMSelect 使用斜杠拆分,导致 provider 和 model_name 均为空。
新增 model_spec 字段直接存储完整 spec,抽取 parseModelSpec/buildDisplaySpec
工具函数统一处理 V1/V2 两种格式,消除 3 处重复逻辑。
2026-05-02 01:08:09 +08:00
Wenjie Zhang
73304c61d9 feat: 调整样式和布局,优化组件视觉效果
Co-authored-by: Copilot <copilot@github.com>
2026-04-29 00:45:15 +08:00
Wenjie Zhang
204e627839 feat: 优化共享设置界面,使用卡片式布局提升用户体验 2026-04-28 22:02:15 +08:00
Wenjie Zhang
bba9bc974f feat: 添加 separator 解析器及相关配置,支持严格分隔功能 Question: 知识库对excel切分无法按行切分
Fixes #664
2026-04-28 20:30:02 +08:00
Wenjie Zhang
bfd5170531 fix: 修复 Skills 面板无法展开的问题 2026-04-27 11:21:10 +08:00
Wenjie Zhang
417b1de308 refactor: 将 ExtensionCard 替换为 InfoCard 以统一组件使用 2026-04-27 10:22:41 +08:00
Wenjie Zhang
e9678e32d3 refactor: 删除无用组件 2026-04-27 09:26:16 +08:00
Wenjie Zhang
9f1ccf9093 feat(release): 更新版本号至 0.6.2 2026-04-27 02:27:28 +08:00
Wenjie Zhang
ee624513f1 style(format): 格式化代码 2026-04-27 02:24:52 +08:00
Wenjie Zhang
ba7c1299a5 refactor(web): 统一视觉元素,抽象组件优化
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 02:19:01 +08:00
Wenjie Zhang
7c699cc86f feat(chat): 优化 LangGraph 状态消息保存逻辑,增加错误处理和警告提示
Co-authored-by: Copilot <copilot@github.com>
2026-04-26 21:43:25 +08:00
Wenjie Zhang
a8eb5ab6fe feat(model): 引入 is_v2_spec_format 函数以优化模型规格判断逻辑 2026-04-26 20:59:40 +08:00
Wenjie Zhang
2e0b4a8358 refactor: 增强模型提供程序管理和 UI 组件
- 在 PostgresManager 中添加了用于嵌入和重新排序基本 URL 的新列。
- 更新了模型提供程序数据结构,以包含新的端点。
- 重构了模型提供程序服务和路由器中的凭据状态检查。
- 引入了一个可重用的组件,用于跨组件进行模型状态检查。
- 通过调整页面内边距的 CSS 变量,提高了 UI 的响应速度。
- 重构了模型选择器组件,以利用新的模型状态组件。
- 更新了模型配置视图,以处理响应式编辑模型状态。
- 清理了未使用的代码,并改进了模型状态检查中的错误处理。
2026-04-26 19:59:15 +08:00
Wenjie Zhang
e3d312059a feat(model): 重构嵌入模型选择器,新增 Rerank 模型选择器,优化模型提供者管理 2026-04-26 18:51:38 +08:00
Wenjie Zhang
f8acc48184 refactor:移除后端和前端的自定义提供程序管理
- 删除了 system_router.py 中用于添加、更新和删除自定义提供程序的端点。
- 从 system_api.js 中移除了自定义提供程序 API 函数。
- 更新了 ModelProvidersComponent.vue,以反映自定义提供程序管理的移除,包括 UI 更改和迁移到新模型配置的提示。
- 清理了 ModelSelectorComponent.vue,移除了旧模型处理和不必要的依赖项。

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 16:24:54 +08:00
Wenjie Zhang
db13abaa63 feat(model): 增强模型配置功能,支持手动添加模型及源字段,优化远端模型加载逻辑 2026-04-26 15:03:20 +08:00
Wenjie Zhang
129f8860c9 Merge branch 'main' into feat/model-config 2026-04-26 00:50:00 +08:00
Wenjie Zhang
66d6e747d9 feat(web): 添加响应式页面内边距变量并更新相关组件样式
Co-authored-by: Copilot <copilot@github.com>
2026-04-26 00:47:30 +08:00
Wenjie Zhang
d177506d15 refactor(models): 重构模型配置[WIP] 2026-04-25 23:58:01 +08:00
Wenjie Zhang
a7d3c0ba2e refactor(chat): 重构聊天侧边栏为 ConversationNavSection
- 删除 ChatSidebarComponent.vue (627行)
- 新增 ConversationNavSection.vue (316行) 实现对话历史导航
- 新增 chatThreads store 管理对话线程状态
- 重构 AppLayout.vue 使用新的侧边栏架构
- 优化 UserInfoComponent 头像加载逻辑与降级处理
- 更新 AgentArtifactsCard 移除未使用的 Eye 图标
2026-04-24 22:44:37 +08:00
Wenjie Zhang
743b5b03c4
Merge pull request #652 from Flying-Henanese/feat/add-semantic-chunking
feat: 增加基于自然语义的文本切分功能
2026-04-24 19:41:48 +08:00
Wenjie Zhang
be39d118fd chore(release): bump version to 0.6.1
- 单一版本来源:__version__ 改为从 pyproject.toml 动态读取
- Docker Compose 镜像标签环境变量化 (${YUXI_VERSION:-0.6.1})
- info.template.yaml 版权信息支持版本号动态注入
- 测试断言改为动态比较,不再硬编码版本号
- 新增 bump-version.sh 发版脚本,一键同步所有版本位置
- 更新 changelog.md,记录 v0.6.1 变更内容
2026-04-24 19:32:16 +08:00
Wenjie Zhang
ff23ba76b4 fix: 修复交付物卡片长列表展示问题,添加纵向滚动条 Error: 交付物超过10个,会显示不全,没有滚动条
Fixes #651
2026-04-23 09:33:48 +08:00
ZHOU Shujian
8ebfcd8dd5 chore: revert unintentional auto-formatting changes
Reverts formatting changes in files that were unrelated to semantic chunking
to match upstream project style.
2026-04-22 21:21:28 +08:00
zhou shujian
edf66bbe38 docs: 为知识分块工具函数添加详细注释
- 为 html_table_to_key_value 函数添加处理逻辑说明,解释如何应对过长表格的切分问题
- 为 infer_heading_level 函数添加层级推断规则说明,包括数字序号和中文序号的处理
- 为 extract_table_block 函数添加表格提取算法的详细步骤说明
- 为 split_text_by_length_and_newline 函数添加分块逻辑的详细注释,解释段落和行的处理流程
- 为语义分块相关函数添加中文文档,包括句子分割、聚类算法和整体流程说明
- 更新测试用例,使用更清晰的测试文档并添加结果保存功能
2026-04-22 17:14:10 +08:00
ZHOU Shujian
6934e19030 feat(chunking): 新增语义分块预设,支持基于嵌入和聚类的智能切分
- 添加语义分块预设选项,使用嵌入模型和聚类算法进行语义切分
- 实现标题路径增强、表格转换和图像标题处理等语义增强功能
- 新增NLTK相关依赖并持久化数据包,避免重复下载
- 添加完整的单元测试验证语义切分逻辑
2026-04-22 16:48:11 +08:00
Wenjie Zhang
4e0046beb1 feature(user): 优化用户体验
- 替换创建新对话按钮图标,提升视觉一致性
- 移动撤销源预览 URL 的逻辑,避免重复定义
- 移除知识库卡片组件中的多余间距,简化样式
2026-04-21 00:18:59 +08:00
Wenjie Zhang
cd47227888 fix: 修复 agents 页面侧边栏切回后自动关闭 2026-04-20 23:55:51 +08:00
Wenjie Zhang
ccf0d98eb6 fix(chat): 修复 runs api 的情况下,用户消息延迟渲染以及切换对话的时候,消息渲染异常的问题 2026-04-19 23:44:46 +08:00
Wenjie Zhang
1b79790abb refactor: 将多个工具组件中的关键词样式调整为注释样式,统一视觉效果 2026-04-19 23:28:58 +08:00
Wenjie Zhang
b1700f2424 fix(chat): 增加 ResizeObserver 初始化延迟,避免首次挂载时侧边栏意外关闭 2026-04-19 23:04:36 +08:00
Wenjie Zhang
1b053f3cd4 feat(chat): 增加对话配置变更提示,优化用户体验 2026-04-19 18:13:18 +08:00
Wenjie Zhang
4035f3c02d feat: 优化配置侧边栏与输入区交互,增强用户体验 2026-04-18 16:22:59 +08:00
Wenjie Zhang
dda3009611 feat(chat): 调整聊天首页智能体切换入口,优化多智能体场景下的展示逻辑 Fixes: Error:智能体显示有误
Fixes #641
2026-04-18 13:32:27 +08:00
Wenjie Zhang
4d346103b4 feat: 前端工具调用折叠展示,优化对话中工具调用的显示逻辑 2026-04-13 18:06:25 +08:00
Wenjie Zhang
63786b7c66 fix: 更新知识库检索工具,支持 Dify 和 LightRAG 类型,优化结果处理逻辑 Fix Error: query_kb不支持查询dify知识库了?
Fixes #622
2026-04-09 23:05:22 +08:00
copilot-swe-agent[bot]
92020f0cbc
fix: 升级前端传递依赖以修复高危漏洞
Agent-Logs-Url: https://github.com/xerrors/Yuxi/sessions/93769670-86db-4d94-9a1d-478f82ff1dd5

Co-authored-by: xerrors <35524243+xerrors@users.noreply.github.com>
2026-04-07 09:20:42 +00:00
Wenjie Zhang
8843bb5006 feat(agent-panel): 添加文件夹创建提示,显示目标目录 #617 2026-04-07 14:43:26 +08:00
Wenjie Zhang
ced97d5636 feat(file-tree): 优化文件加载反馈,添加加载状态指示器 2026-04-07 12:51:15 +08:00
Wenjie Zhang
39a0fba402 fix(web): 修复图数据库 header 高度问题 2026-04-07 10:50:01 +08:00
Wenjie Zhang
2a52b368f0 feat(web): 合并知识库导航入口并调整视觉细节 2026-04-06 21:04:19 +08:00
Wenjie Zhang
a62077b693 feat: workspace 目录下支持新建文件夹以及上传文件 2026-04-06 18:49:13 +08:00
Wenjie Zhang
24070d1eb7 fix(mcp): 修复网页端无法删除自定义MCP的bug #611 2026-04-06 16:46:45 +08:00
Wenjie Zhang
6809f67f70 refactor(chatbot): 更新提示词和待办事项中间件,简化系统提示构建 2026-04-06 12:09:22 +08:00
Wenjie Zhang
60f97fcd4b refactor(web): 简化文件系统面板头部布局 2026-04-05 23:52:36 +08:00
Wenjie Zhang
59dcc6330b fix(web): 更新工具组件,优化界面显示和逻辑处理 2026-04-05 21:44:41 +08:00
Wenjie Zhang
034f0fc910 fix: 更新 MCP 相关术语,统一界面表述 2026-04-04 15:11:53 +08:00
Wenjie Zhang
6df070ddb6 fix: 修复 MCP worker 配置加载不一致 2026-04-04 14:47:23 +08:00
Wenjie Zhang
76b5156a2c
Merge pull request #592 from DSYZayn/main
feat (auth): 添加第三方登录认证(OIDC)
2026-04-04 11:23:07 +08:00
Wenjie Zhang
2100edfd6e fix: 调整部门删除逻辑,迁移用户至默认部门并清理相关配置,更新前端提示信息 Error: 部门删除限制
Fixes #607
2026-04-04 11:10:30 +08:00
Wenjie Zhang
cc241f79ed feat(skill): 优化远程安装功能,支持多技能选择与进度展示 2026-04-03 11:50:26 +08:00
copilot-swe-agent[bot]
037872924b
fix: 修复路径遍历安全漏洞并添加文件名校验
- 前端:在 ExtensionsView.vue 上传前添加 beforeUpload 校验,
  仅允许 .zip 或 SKILL.md 文件,其他 .md 文件给出明确错误提示
- 后端:import_skill_dir 添加路径限制检查(is_relative_to),
  确保来源目录在系统临时目录内,防止路径遍历
- 后端:install_remote_skill 改为扫描目录查找安装结果,
  避免直接用用户输入构造文件路径(消除 CodeQL 告警)
- 后端:_run_skills_cli 错误输出清洗 ANSI 控制字符并截断到 500 字符
- 后端:install_remote_skill 返回类型从 object 修正为 Skill

Agent-Logs-Url: https://github.com/xerrors/Yuxi/sessions/0145c647-72bc-41f9-b07b-04d4acf51932

Co-authored-by: xerrors <35524243+xerrors@users.noreply.github.com>
2026-04-02 15:19:33 +00:00
Wenjie Zhang
cf0f0afd85 fix(skill): 移除远程安装表单默认技能赋值逻辑 2026-04-02 16:37:19 +08:00
Wenjie Zhang
252761c9b9 feat(skill): 修改默认文件视图模式为预览 2026-04-02 16:09:02 +08:00
Wenjie Zhang
a828d7154b feat(skill): 添加远程技能安装服务及相关功能更新
- 新增 remote_skill_install_service.py 支持远程技能安装
- 更新 skill_service.py 增强技能管理功能
- 更新 skill_router.py 添加相关路由
- 更新前端组件 SkillsManagerComponent.vue
- 更新 ExtensionsView.vue
- 添加对应单元测试

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-02 16:09:02 +08:00
Wenjie Zhang
8ba4f7050d feat(skill): 支持直接上传单个 SKILL.md 文件,更新导入功能描述 2026-04-02 16:07:58 +08:00
Wenjie Zhang
efee3c743a feat: 调整文件搜索交互提示,优化用户体验 #594 2026-04-02 13:18:42 +08:00
zayn
a121592fac
Merge branch 'main' into main 2026-04-01 22:22:46 +08:00
DSYZayn
01705aa66b fix(auth): 修复OIDC第三方登录认证集成的潜在风险
- 实现OIDC用户自动创建和部门管理逻辑,支持并发场景下的用户去重处理
- 重构OIDC回调流程,采用一次性code机制提升安全性,避免敏感信息通过URL传递
- 增加对已注销OIDC用户的恢复支持,兼容历史后缀用户ID格式
- 优化用户软删除逻辑,使用user_id和id组合生成哈希避免重名冲突
2026-04-01 22:10:24 +08:00
Wenjie Zhang
4ee15e377f feat(styles): 更新主题色配置,支持深色模式和主色变量保留 2026-04-01 17:40:24 +08:00
Wenjie Zhang
f2c7666688 fix: 修复版本错误 2026-04-01 17:22:39 +08:00
Wenjie Zhang
783513f2ba chore: 0.6.0 预发布 2026-04-01 16:55:29 +08:00
Wenjie Zhang
e27a10b5f1 style: format code 2026-04-01 04:16:22 +08:00
Wenjie Zhang
9bc86c070c feat(filesystem): 增强文件删除功能,支持递归删除目录并添加保护路径检查 2026-04-01 04:04:55 +08:00
Wenjie Zhang
061067aa89 feat(agent): 优化状态工作台自动弹出规则 2026-04-01 04:04:48 +08:00
Wenjie Zhang
b1a1838801 feat(todos): 添加待办事项功能,重构相关组件和样式 2026-04-01 03:17:15 +08:00
DSYZayn
f1997d3194 feat(auth): 添加 OIDC 第三方认证功能
- 新增 OIDC 认证配置项到 .env.template 文件
- 实现 OIDC 认证路由和处理逻辑,包括登录、回调和配置获取接口
- 创建 OIDC 配置模型和服务工具类,支持从环境变量加载配置
- 在前端登录页面添加 OIDC 登录选项,支持动态配置显示
- 添加 OIDC 认证相关配置文档说明
- 支持自动创建 OIDC 用户和部门管理功能
2026-04-01 00:42:25 +08:00
Wenjie Zhang
62d763a1a0 feat(agent): 交付物卡片新增“保存到工作区”能力:支持将单个交付物复制到共享目录 workspace/saved_artifacts/,并复用现有文件树/预览/mention 体系立即可见 2026-03-31 20:18:22 +08:00
Wenjie Zhang
824270a035 feat(web): 统一交付物和文件树的预览逻辑 2026-03-31 19:42:35 +08:00
Wenjie Zhang
0d1e26cf7b feat: mention 支持 workspace 的文件
在保留附件 mention 的同时,将共享 `workspace` 文件纳入候选范围;并将 `@` 空查询时的候选列表改为空,仅在继续输入后再执行筛选,避免工作区文件过多时直接铺满下拉面板
2026-03-31 19:42:03 +08:00
Wenjie Zhang
3f1ec778a4 feat: 新增对于 workspace 的删除接口的实现
- 为前端工作台文件树补齐文件删除能力:`/api/viewer/filesystem/file`
- 新增删除接口,`AgentPanel` 文件节点新增删除按钮与确认交互,删除后会同步刷新树与预览状态
2026-03-31 19:41:08 +08:00
Wenjie Zhang
ea4cecc354 fix(web): 修复导入错误导致的渲染 bug 2026-03-31 12:11:10 +08:00
Wenjie Zhang
8d12be99af feat(web): 统一预览插件能力
- 潜在问题:大型 HTML 预览存在性能问题,待排查
2026-03-31 12:00:48 +08:00
Wenjie Zhang
81a07570d1 feat(settings): 添加项目 Star 提示卡片 2026-03-30 22:54:56 +08:00
Wenjie Zhang
d282cab00c feat: 增加工具配置说明展示 2026-03-30 16:39:27 +08:00
Wenjie Zhang
fa5a2fa1ae fix: 调整工作台文件预览全屏交互 2026-03-30 16:26:46 +08:00
Wenjie Zhang
94e16802d1 chore: 更新版本号至 v0.6.0.beta3,修正文档及配置文件中的相关信息 2026-03-30 15:48:57 +08:00
Wenjie Zhang
81bf19c9bc fix: 修复工具调用结果图标显示逻辑,添加默认成功状态图标 2026-03-29 15:43:58 +08:00
Wenjie Zhang
90e3a79a77 style: code format 2026-03-29 13:49:54 +08:00
Wenjie Zhang
b7e10c6666 feat: 重构扩展管理中的 SubAgent 与 MCP 交互,统一为类似 Skills 的方式。 2026-03-29 13:47:41 +08:00
Wenjie Zhang
ab268d8eba feat: 添加工件管理和展示功能
- 更新 .gitignore 以排除测试相关目录。
- 增强 ChatbotAgent 和 DeepAgent 以利用 BaseState 进行状态管理。
- 引入 PresentArtifacts 工具,允许代理向用户展示输出文件。
- 在 state.py 中添加新的状态管理功能,包括 merge_artifacts 和 BaseState。
- 创建 AgentArtifactsCard 组件以在前端显示工件。
- 在 AgentChatComponent 和 AgentInputArea 中集成工件处理。
- 更新 MessageInputComponent 和 ToolCallRenderer 以更好地处理工件的 UI 展示。
- 添加工件状态管理和标准化函数的测试。
- 更新 docker-compose 以使用最新的沙箱配置器镜像。
- 在路线图中记录新功能。
2026-03-29 10:55:00 +08:00
Wenjie Zhang
ef0f5ca233 feat(web): 优化工具管理界面,重构搜索和分类筛选功能,提升用户体验 2026-03-28 20:43:58 +08:00
Wenjie Zhang
6078518577 feat: 更新内置技能版本,增强技能更新逻辑,优化技能管理界面 2026-03-28 20:02:52 +08:00
Wenjie Zhang
a005e0f3dc feat: 内置 Skills 按需安装机制
- Skill 模型新增 version, is_builtin, content_hash 字段
- 内置 skills 不再自动安装,改为按需安装
- 新增 GET/POST /system/skills/builtin 路由
- 安装时计算目录内容 hash,用于变更检测
- 更新时 hash 不一致返回 409 确认
- 前端显示内置 skills 未安装状态,支持安装/更新按钮
- 内置 skill 文件编辑入口已隐藏
- 修复 _compute_dir_hash 内存问题,改为 chunk 读取
- 19 个测试用例全部通过
2026-03-28 17:53:53 +08:00
Wenjie Zhang
f7ad327ef2 fix: update repository references from Yuxi-Know to Yuxi across documentation and codebase 2026-03-27 02:00:22 +08:00
Wenjie Zhang
5bd8aa0b2d chore: 更新版本号至 v0.6.0.beta2,修复历史对话上下文配置问题 2026-03-27 01:42:19 +08:00
Wenjie Zhang
5fe367b77b feat: 增强对话线程的 agent_config_id 绑定逻辑,确保元数据一致性 2026-03-27 01:15:51 +08:00
Wenjie Zhang
3b5514e9b5 fix(apikey): 修复管理员无法创建维护 API_KEY 的问题
- 前端:API Key 管理 tab 对所有登录用户可见,非管理员默认显示 API Key tab
- 前端:apikey_api 改为普通 API 调用(移除 superadmin 专用接口)
- 后端:list/create/get/update/delete/regenerate 接口改为按用户过滤,superadmin 可查看全部
2026-03-27 01:15:42 +08:00
Wenjie Zhang
efecc0692d feat: 重构对话线程相关API,统一使用线程ID,移除不必要的智能体ID参数 2026-03-27 00:20:33 +08:00
Wenjie Zhang
9f51cfd96b refactor(chat-api): 重构聊天接口请求模型:流式与非流式聊天统一使用 query + agent_config_id 请求体 2026-03-26 23:13:44 +08:00
Wenjie Zhang
ce4de21851 fix: 修复导入路径中的小错误 2026-03-26 14:07:17 +08:00
Wenjie Zhang
dbc230e205 style(lint): 优化格式 2026-03-26 13:53:35 +08:00
Wenjie Zhang
56d11db978 feat: 更新版本号至 0.6.0.beta1,修改相关文档和配置文件 2026-03-26 13:13:34 +08:00
Wenjie Zhang
61d4bbf9ea feat: 增强工具调用结果组件,新增 grep 工具支持,优化工具图标映射和渲染逻辑 2026-03-26 12:13:51 +08:00
Wenjie Zhang
3aec5d8901 feat: 新增沙盒文件系统支持 HTML 预览,优化面板调整功能和文件预览体验 2026-03-26 06:07:18 +08:00
Wenjie Zhang
db95697c00 feat: 添加代码高亮支持,新增代码语言映射和 HTML 预览类型判定 2026-03-26 05:44:23 +08:00
Wenjie Zhang
93a7dccd07 feat: 新增源文件预览功能,支持图片和 PDF 格式,优化文件预览体验 2026-03-26 05:25:43 +08:00
Wenjie Zhang
b09f4f426f feat: 增加文件预览类型判定,工作台支持 Markdown、文本、图片和 PDF 预览,处理不支持格式的反馈 2026-03-26 05:14:50 +08:00
Wenjie Zhang
6dad206f10 feat: 添加支持待办事项的补充说明,更新相关组件以处理任务显示 2026-03-26 04:34:57 +08:00
Wenjie Zhang
623f6f31ab refactor: 用户数据路径从 '/home/yuxi' 重构为 '/home/gem' 2026-03-26 03:29:34 +08:00
Wenjie Zhang
a2f35cbeb2 style: 更新多个组件的样式,调整颜色和布局以提升可读性和一致性 2026-03-26 03:24:24 +08:00
Wenjie Zhang
cea53cc67c fix(skill): 修复 skills 在文件系统的可访问性的错误并优化并发体验 2026-03-26 02:29:05 +08:00
Wenjie Zhang
a92b8a77ef fix: 更新版本号至 0.6.0-dev2 2026-03-25 20:45:19 +08:00
Wenjie Zhang
f7c5a9112b fix(FileUploadModal): 优化 OCR 下拉选项,添加自动健康检查逻辑优化体验 2026-03-25 16:09:26 +08:00
Wenjie Zhang
08330a9351 feat: 修复文件下载截断问题并优化前端流式消息体验,新增流平滑调度层 2026-03-25 13:46:52 +08:00
Wenjie Zhang
1d8a5e88af fix(kb): 修剪文件列表负载并清理处理参数 2026-03-25 08:06:25 +08:00
Wenjie Zhang
a6ef621184 fix(web): 修复数据库获取接口未过滤文件字段而导致的数据包过大的情况 2026-03-25 07:42:49 +08:00
Wenjie Zhang
638da2afb8 feat: 在文件上传组件中添加上传进度显示和队列管理功能 2026-03-25 07:28:30 +08:00
Wenjie Zhang
dc88874118 feat(webui): 在浮动模式下创建和选择聊天时切换侧边栏 2026-03-25 05:31:56 +08:00
Wenjie Zhang
d433f56aaf refactor: 将沙盒虚拟路径前缀更新为 /home/yuxi/user-data
- 将代码库中所有对 /mnt/user-data 的引用更改为 /home/yuxi/user-data。
- 更新测试用例以反映新的路径结构。
- 调整 Docker 配置以使用新路径。
- 修改文档以与新的路径约定保持一致。
- 增强沙盒配置器中文件读取操作的错误处理。
- 改进代理文件管理系统中的附件处理。
2026-03-25 05:26:00 +08:00
Wenjie Zhang
969330a7e7 Merge branch '0.6.0-dev' into feat/agent-sandbox 2026-03-25 03:36:08 +08:00
Wenjie Zhang
e49d8dda53 docs: 更新大量文档 2026-03-25 00:36:42 +08:00
supreme0597
4cc795da9c Merge branch 'main' into feat/sandbox-provisioner-shared-storage 2026-03-25 00:01:58 +08:00
Wenjie Zhang
423eca3fb0 Merge branch '0.6.0-dev' of https://github.com/xerrors/Yuxi-Know into 0.6.0-dev 2026-03-24 22:48:47 +08:00
Wenjie Zhang
b4f0b6e11f fix(web): 更新智能体名称,优化图标映射和样式对齐 2026-03-24 22:48:32 +08:00
Wenjie Zhang
4df242e63b format: 格式化代码 2026-03-24 22:37:03 +08:00
Wenjie Zhang
e07e88ae49 feat: 新增沙盒能力对齐改造:详见 docs/advanced/sandbox-validation.md 2026-03-24 21:48:28 +08:00
Wenjie Zhang
8e88830e2d feat(web): 添加发送按钮冷却机制,防止连续发送消息 2026-03-24 21:42:37 +08:00
Wenjie Zhang
3b61571bd8 feat(web): UI小幅调整,多处细节优化 2026-03-24 11:10:39 +08:00
PR Bot
950f289ffb feat: add MiniMax as first-class LLM provider
Add MiniMax (https://platform.minimaxi.com/) as a built-in chat model
provider with M2.7, M2.7-highspeed, M2.5, and M2.5-highspeed models.

MiniMax provides OpenAI-compatible API, so it works seamlessly with
the existing OpenAIBase and ChatOpenAI integration paths. Users only
need to set MINIMAX_API_KEY to start using MiniMax models.

Changes:
- Add MiniMax to DEFAULT_CHAT_MODEL_PROVIDERS (models.py)
- Add MINIMAX_API_KEY to .env.template
- Add MiniMax provider icon and frontend registration
- Update model-config docs with MiniMax entry
- Add 22 unit tests + 3 integration tests
2026-03-24 11:10:35 +08:00
Wenjie Zhang
53e0ed37f6 feat: 添加生成对话标题功能,支持根据内容自动生成简短标题,使用 fast_model 2026-03-24 11:09:55 +08:00
Wenjie Zhang
74229c05a4 feat: 添加API密钥管理功能,可通过 API_KEY 代替 Token 访问接口
- 引入了用于API密钥管理的新路由,包含列出、创建、更新、删除和重新生成API密钥的端点。
- 在后端实现了API密钥生成逻辑和验证。
- 增强了认证中间件以支持API密钥认证以及JWT认证。
- 创建了用于在前端管理API密钥的新Vue组件,包括用于创建、显示和删除密钥的用户界面。
2026-03-24 11:09:55 +08:00
Wenjie Zhang
f1c7ad25be feat(web-custom-model): 增加模型校验逻辑以确保默认模型在支持列表中 2026-03-24 11:09:54 +08:00
Wenjie Zhang
a8b96dbcf2 feat(web): 在窄屏幕宽度下自动折叠并浮动对话侧边栏
为 .chat-main 添加了 ResizeObserver,当消息区域宽度低于 600px 时自动折叠对话历史侧边栏,避免界面挤压。同时添加了浮动状态,使侧边栏在小屏幕上重新打开时以覆盖层形式显示。
2026-03-24 11:09:53 +08:00
Wenjie Zhang
772ab53d1a refactor: 移除 AttachmentInputPanel 组件并在 MessageInputComponent 中集成 subagent mention 功能
- 删除了 AttachmentInputPanel.vue 组件。
- 增强了 MessageInputComponent.vue,新增了一个用于子代理的提及组。
- 更新了提及逻辑以在提及功能中支持子代理。
- 引入 useAgentMentionConfig.js 来管理代理提及配置。
- 添加 useAgentRunStream.js 用于处理代理运行流逻辑。
- 创建 useAgentThreadState.js 来管理线程状态和正在进行的对话。
- 清理了 AgentView.vue,移除了未使用的样式和配置。
2026-03-24 11:09:52 +08:00
Wenjie Zhang
8804c7446c refactor: 移除元数据文件,改为从智能体类属性加载元数据,并更新相关引用 2026-03-24 11:09:51 +08:00
Wenjie Zhang
1bc6285fb1 refactor: 优化代码结构 将 yuxi.agents.common 移动到 yuxi.agents 2026-03-24 11:09:51 +08:00
Wenjie Zhang
32968259e1 refactor(web): 重构代理配置侧边栏和输入组件
- 更新了 AgentConfigSidebar.vue 以增强配置管理界面,包括添加用于创建新配置的模态框和改进只读状态的处理。
- 重构了 AgentInputArea.vue 以简化操作按钮并提高响应性。
- 简化了 AgentView.vue 中选择代理配置的下拉菜单,将其替换为切换侧边栏的按钮。
- 增强了 agent.js 中数值的处理,确保正确的类型转换。
- 清理了多个组件中的 CSS 样式,以获得更好的一致性和响应性。
- 删除了不必要的代码并提高了各种组件的可读性。
2026-03-24 11:09:50 +08:00
Wenjie Zhang
69f23ae66e fix(AgentConfigSidebar): 更新数字输入条件以支持整数和浮点数类型 2026-03-24 11:09:50 +08:00
Wenjie Zhang
ce46df5dea fix(chat): 刷新对话状态以确保消息历史的准确性 2026-03-24 11:09:50 +08:00
Wenjie Zhang
3babd9be54 feat(chatbot): 添加子智能体支持和摘要中间件 2026-03-24 11:09:49 +08:00
Wenjie Zhang
a2ffbb04ba refactor: 优化组件样式和结构,移除多余的代码,增强可读性 2026-03-24 11:09:48 +08:00
Wenjie Zhang
d62328d73b chore: Bump project version to 0.6.0-dev across backend, web, and Docker configurations 2026-03-24 11:09:47 +08:00
Wenjie Zhang
0bd6b24988 fix: 修复网页 MCP 选择顺序的问题 2026-03-24 11:09:47 +08:00
Wenjie Zhang
6a30936a49 feat: 引入 LITE_MODE 以有条件地启用/禁用知识图谱和向量数据库组件,更新 Docker Compose、后端路由器和前端 UI。 2026-03-24 11:09:47 +08:00
Wenjie Zhang
1033b63450 refactor: 优化代码格式 2026-03-24 11:09:46 +08:00
Wenjie Zhang
3c75b0acb3 refactor: 重构智能体配置管理,移除不必要的文件操作和API接口 2026-03-24 11:09:46 +08:00
Wenjie Zhang
1ae2974fad refactor(ui): 优化系统提示词编辑功能,添加弹窗支持和相关逻辑 2026-03-24 11:09:45 +08:00
Wenjie Zhang
d655cbe640 feat: 添加subagents管理功能
- 实现了应用程序启动期间的理subagents初始化。
- 为subagents的 CRUD 操作和存储库方法创建了单元测试。
- 开发了用于列出、检索、创建、更新和删除子代理的子代理 API 端点。
- 添加了用于在前端管理子代理的 SubAgentsComponent,包括搜索和详细信息视图。
2026-03-24 11:09:44 +08:00
Wenjie Zhang
fe2153ad76 refactor: 重构解析模块;结构更加清晰,代码解耦 2026-03-24 11:09:43 +08:00
Wenjie Zhang
c7b2bd8d71 foramt: 规范化代码 2026-03-24 11:09:39 +08:00