From 7f387fd6e77941fa61f902f11379cab6ae405873 Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Mon, 8 Jun 2026 00:45:41 +0800 Subject: [PATCH] =?UTF-8?q?chore(release):=20=E6=9B=B4=E6=96=B0=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E8=87=B3=200.7.0.beta2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.en.md | 2 +- README.md | 2 +- backend/package/pyproject.toml | 2 +- backend/package/uv.lock | 2 +- backend/pyproject.toml | 2 +- backend/uv.lock | 4 ++-- docker-compose.prod.yml | 6 +++--- docker-compose.yml | 8 ++++---- docs/develop-guides/changelog.md | 1 + docs/intro/quick-start.md | 2 +- web/package.json | 2 +- web/src/components/AgentChatComponent.vue | 8 ++++---- web/src/components/AgentFilePreview.vue | 6 +++++- web/src/components/FileTable.vue | 6 +++++- web/src/components/GraphCanvas.vue | 8 ++++++-- web/src/components/ModelSelectorComponent.vue | 4 +++- .../components/ToolCallingResult/tools/TodoListTool.vue | 4 +++- web/src/components/extensions/McpDetailView.vue | 5 +---- web/src/composables/useAgentRunStream.js | 6 +----- web/src/views/AgentView.vue | 2 -- web/src/views/HomeView.vue | 4 +--- 21 files changed, 46 insertions(+), 40 deletions(-) diff --git a/README.en.md b/README.en.md index 4b83df9c..09a14795 100644 --- a/README.en.md +++ b/README.en.md @@ -52,7 +52,7 @@ Yuxi is an LLM-powered platform for building knowledge-base and knowledge-graph **1. Clone and initialize** ```bash -git clone --branch v0.7.0.beta1 --depth 1 https://github.com/xerrors/Yuxi.git +git clone --branch v0.7.0.beta2 --depth 1 https://github.com/xerrors/Yuxi.git cd Yuxi # Linux/macOS diff --git a/README.md b/README.md index 575960c8..a41f24bb 100644 --- a/README.md +++ b/README.md @@ -99,7 +99,7 @@ **1. 克隆代码并初始化** ```bash -git clone --branch v0.7.0.beta1 --depth 1 https://github.com/xerrors/Yuxi.git +git clone --branch v0.7.0.beta2 --depth 1 https://github.com/xerrors/Yuxi.git cd Yuxi # Linux/macOS diff --git a/backend/package/pyproject.toml b/backend/package/pyproject.toml index 7c538c07..af652b0f 100644 --- a/backend/package/pyproject.toml +++ b/backend/package/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "yuxi" -version = "0.7.0.beta1" +version = "0.7.0.beta2" description = "Yuxi 智能知识库与知识图谱平台核心后端包" readme = "README.md" requires-python = ">=3.12,<3.14" diff --git a/backend/package/uv.lock b/backend/package/uv.lock index 557647af..d7c69c0a 100644 --- a/backend/package/uv.lock +++ b/backend/package/uv.lock @@ -5264,7 +5264,7 @@ wheels = [ [[package]] name = "yuxi" -version = "0.7.0.beta1" +version = "0.7.0.beta2" source = { editable = "." } dependencies = [ { name = "agent-sandbox" }, diff --git a/backend/pyproject.toml b/backend/pyproject.toml index 526d6323..8f8f833c 100644 --- a/backend/pyproject.toml +++ b/backend/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "yuxi-workspace" -version = "0.7.0.beta1" +version = "0.7.0.beta2" description = "基于大模型的智能知识库与知识图谱智能体开发平台,融合了 RAG 技术与知识图谱技术,基于 LangGraph v1 + Vue.js + FastAPI + LightRAG 架构构建" readme = "README.md" requires-python = ">=3.12,<3.14" diff --git a/backend/uv.lock b/backend/uv.lock index ae7ac0af..7903806f 100644 --- a/backend/uv.lock +++ b/backend/uv.lock @@ -5489,7 +5489,7 @@ wheels = [ [[package]] name = "yuxi" -version = "0.7.0.beta1" +version = "0.7.0.beta2" source = { editable = "package" } dependencies = [ { name = "agent-sandbox" }, @@ -5646,7 +5646,7 @@ requires-dist = [ [[package]] name = "yuxi-workspace" -version = "0.7.0.beta1" +version = "0.7.0.beta2" source = { virtual = "." } dependencies = [ { name = "arq" }, diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 8ad13664..8ddd8e3a 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -30,7 +30,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.0.beta2} container_name: api-prod working_dir: /app networks: @@ -68,7 +68,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.0.beta2} container_name: worker-prod working_dir: /app networks: @@ -145,7 +145,7 @@ services: context: . dockerfile: docker/web.Dockerfile target: production - image: yuxi-web:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-web:${YUXI_VERSION:-0.7.0.beta2} container_name: web-prod ports: - "80:80" diff --git a/docker-compose.yml b/docker-compose.yml index 484fc674..bf228bf8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -38,7 +38,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.0.beta2} container_name: api-dev working_dir: /app volumes: @@ -86,7 +86,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.0.beta2} container_name: worker-dev working_dir: /app volumes: @@ -125,7 +125,7 @@ services: build: context: ./docker/sandbox_provisioner dockerfile: Dockerfile - image: yuxi-sandbox-provisioner:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-sandbox-provisioner:${YUXI_VERSION:-0.7.0.beta2} container_name: sandbox-provisioner volumes: - ./docker/volumes/yuxi:/app/saves @@ -179,7 +179,7 @@ services: context: . dockerfile: docker/web.Dockerfile target: development - image: yuxi-web:${YUXI_VERSION:-0.7.0.beta1} + image: yuxi-web:${YUXI_VERSION:-0.7.0.beta2} container_name: web-dev volumes: - ./web/src:/app/src diff --git a/docs/develop-guides/changelog.md b/docs/develop-guides/changelog.md index 547214f2..6483aad2 100644 --- a/docs/develop-guides/changelog.md +++ b/docs/develop-guides/changelog.md @@ -18,6 +18,7 @@ ### 开发记录 +- 发布版本号更新至 `0.7.0.beta2`,同步 package、Docker 镜像标签与快速开始分支引用。 - 新增内置「深度研究」多智能体:编排器 Agent(`deep-research`,ChatbotAgent 后端)负责澄清、拆解、并行调度子智能体与综合成稿,配套两个子智能体 `research-explorer`(围绕单个子问题多轮检索网页/知识库并返回带引用发现)和 `fact-verifier`(对抗式核验关键论断、标注冲突与置信度);完整研究方法论沉淀为新增内置 Skill `deep-research`(依赖 `tavily_search`),编排器运行时读取并据此调度。三者随 `lifespan` 启动通过 `AgentRepository.ensure_deep_research_agents` 幂等落库(已存在不覆盖管理员修改)。 - 新增内置 `general-purpose` 通用任务子智能体:使用 `SubAgentBackend` 与空运行配置,作为 `task` 工具的通用委派目标,由启动初始化自动写入数据库。 - 收敛 MCP 创建与编辑入口:前端移除整段配置文本入口和模式切换器,仅保留表单字段提交;后端 MCP 创建/更新请求拒绝额外配置字段,避免绕过表单约束。 diff --git a/docs/intro/quick-start.md b/docs/intro/quick-start.md index a5d656ab..fad84557 100644 --- a/docs/intro/quick-start.md +++ b/docs/intro/quick-start.md @@ -20,7 +20,7 @@ ```bash # 克隆最新版本 -git clone --branch v0.7.0.beta1 --depth 1 https://github.com/xerrors/Yuxi.git +git clone --branch v0.7.0.beta2 --depth 1 https://github.com/xerrors/Yuxi.git cd Yuxi ``` diff --git a/web/package.json b/web/package.json index 8f13ca6b..a71287fc 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "yuxi-web", - "version": "0.7.0.beta1", + "version": "0.7.0.beta2", "private": true, "type": "module", "scripts": { diff --git a/web/src/components/AgentChatComponent.vue b/web/src/components/AgentChatComponent.vue index 789065d5..e9a87df1 100644 --- a/web/src/components/AgentChatComponent.vue +++ b/web/src/components/AgentChatComponent.vue @@ -611,7 +611,9 @@ let panelContainerWidth = 0 let streamingStateRefreshTimer = null const formatTodoName = (content) => { - return Array.from(String(content || '')).slice(0, TODO_NAME_MAX_LENGTH).join('') + return Array.from(String(content || '')) + .slice(0, TODO_NAME_MAX_LENGTH) + .join('') } const getPanelContainerWidth = () => { @@ -991,9 +993,7 @@ const currentApprovalQuestions = computed(() => const shouldSuppressRefsForApproval = () => currentApprovalModalVisible.value || Boolean( - approvalState.threadId && - currentChatId.value === approvalState.threadId && - isProcessing.value + approvalState.threadId && currentChatId.value === approvalState.threadId && isProcessing.value ) // 判断某轮对话是否已「收尾」,即可以展示 refs(来源/操作栏): diff --git a/web/src/components/AgentFilePreview.vue b/web/src/components/AgentFilePreview.vue index 73691cc3..d9806c9c 100644 --- a/web/src/components/AgentFilePreview.vue +++ b/web/src/components/AgentFilePreview.vue @@ -3,7 +3,11 @@ class="agent-file-preview" :class="[ containerClass, - { 'is-full-height': fullHeight, 'is-borderless': borderless, 'has-preview-header': showHeader } + { + 'is-full-height': fullHeight, + 'is-borderless': borderless, + 'has-preview-header': showHeader + } ]" >
diff --git a/web/src/components/FileTable.vue b/web/src/components/FileTable.vue index 7d60f70f..d155ccb0 100644 --- a/web/src/components/FileTable.vue +++ b/web/src/components/FileTable.vue @@ -231,7 +231,11 @@ - + {{ record.displayName || text }}
diff --git a/web/src/components/GraphCanvas.vue b/web/src/components/GraphCanvas.vue index b4e7c7a9..f6c36a5c 100644 --- a/web/src/components/GraphCanvas.vue +++ b/web/src/components/GraphCanvas.vue @@ -206,7 +206,9 @@ const visibleRelationshipEdges = computed(() => const visibleEntityCount = computed(() => visibleEntityNodes.value.length) const visibleRelationshipCount = computed(() => visibleRelationshipEdges.value.length) -const nodeTypeStats = computed(() => buildTypeStats(visibleEntityNodes.value, getNodeVisualLabel, getNodeColor)) +const nodeTypeStats = computed(() => + buildTypeStats(visibleEntityNodes.value, getNodeVisualLabel, getNodeColor) +) const edgeTypeStats = computed(() => buildTypeStats(visibleRelationshipEdges.value, getEdgeVisualLabel, getEdgeColor) @@ -755,7 +757,9 @@ defineExpose({ width: 10px; height: 10px; border-radius: 50%; - box-shadow: 0 0 0 1px var(--color-bg-container), 0 0 0 2px var(--gray-200); + box-shadow: + 0 0 0 1px var(--color-bg-container), + 0 0 0 2px var(--gray-200); } .type-name { diff --git a/web/src/components/ModelSelectorComponent.vue b/web/src/components/ModelSelectorComponent.vue index 0a6d01ce..318d1301 100644 --- a/web/src/components/ModelSelectorComponent.vue +++ b/web/src/components/ModelSelectorComponent.vue @@ -65,7 +65,9 @@ :key="`v2-${providerId}`" > { - return Array.from(String(content || '')).slice(0, TODO_NAME_MAX_LENGTH).join('') + return Array.from(String(content || '')) + .slice(0, TODO_NAME_MAX_LENGTH) + .join('') } const formatTodoNameTitle = (content) => String(content || '') diff --git a/web/src/components/extensions/McpDetailView.vue b/web/src/components/extensions/McpDetailView.vue index 54275c9d..e8748543 100644 --- a/web/src/components/extensions/McpDetailView.vue +++ b/web/src/components/extensions/McpDetailView.vue @@ -71,10 +71,7 @@ - +
基础信息 diff --git a/web/src/composables/useAgentRunStream.js b/web/src/composables/useAgentRunStream.js index 6be234a3..1d7e1dcd 100644 --- a/web/src/composables/useAgentRunStream.js +++ b/web/src/composables/useAgentRunStream.js @@ -1,11 +1,7 @@ import { unref } from 'vue' import { agentApi } from '@/apis' import { handleChatError } from '@/utils/errorHandler' -import { - compareRunSeq, - normalizeRunSeq, - resolveRunResumeAfterSeq -} from '@/utils/runStreamResume' +import { compareRunSeq, normalizeRunSeq, resolveRunResumeAfterSeq } from '@/utils/runStreamResume' const RUN_INTERRUPTED_STATUS = 'interrupted' const RUN_TERMINAL_STATUSES = new Set(['completed', 'failed', 'cancelled']) diff --git a/web/src/views/AgentView.vue b/web/src/views/AgentView.vue index 1cd51e28..1f66fcad 100644 --- a/web/src/views/AgentView.vue +++ b/web/src/views/AgentView.vue @@ -192,7 +192,6 @@ const currentAgentLabel = computed(() => { return currentAgentOption.value?.label || '智能体' }) - const agentDropdownOpen = ref(false) const handleAgentSwitch = async (agentId, hasActiveThread) => { @@ -214,7 +213,6 @@ const openAgentManagement = () => { agentDropdownOpen.value = false router.push({ name: 'ModelManageComp', query: { tab: 'agents' } }) } -