diff --git a/docs/assets/images/arabica-sprint3-architecture-design.svg b/docs/assets/images/arabica-sprint3-architecture-design.svg index c71c245..6d998a9 100644 --- a/docs/assets/images/arabica-sprint3-architecture-design.svg +++ b/docs/assets/images/arabica-sprint3-architecture-design.svg @@ -1,13 +1,13 @@ - + @@ -39,22 +39,27 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 .font-mono { font-family: 'JetBrains Mono', Consolas, 'Courier New', monospace; } /* 文本层级 */ - .card-title { font-size: 14px; font-weight: bold; fill: #FFFFFF; } - .card-text { font-size: 12px; fill: var(--c-neutral-gray); } + .card-title { font-size: 15px; font-weight: bold; fill: #FFFFFF; } + .card-text { font-size: 13px; fill: var(--c-neutral-gray); } .text-code { font-size: 13px; font-weight: bold; fill: #0F172A; } .label-text { font-size: 12px; font-weight: bold; fill: var(--c-neutral-gray); } .step-text { font-size: 13px; font-weight: bold; fill: #FFFFFF; } + .alert-text { font-size: 12px; font-weight: bold; fill: #DC2626; } /* 红色警示文字 */ + .amber-text { font-size: 12px; font-weight: bold; fill: #D97706; } /* 琥珀色强调文字 */ - - - + + + - - + + - - + + + + + @@ -63,10 +68,10 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 顶层标题块 (Title Block) =========================================================================== --> - + FIG-02 Arabica Sprint 3 系统开发组件架构图 - 架构图 > Arabica Sprint 3 > 文献检索与标准化落盘工作流 + 架构图 > Arabica Sprint 3 > 意图路由、学术检索与高容错落盘机制 @@ -74,28 +79,16 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 - + - - - 📦 MCP Server Runtime(Sprint 3) - - - - - - - ☁️ Cloud + + + 📦 MCP Server Runtime(Sprint3) - - - + + + - - - + + + - - - + + + - - - - + + + - - - - - + + - - + + + - - - + + - - + + - - + + - - - - - - + + @@ -155,21 +140,24 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 =========================================================================== --> - Query - Report - Reasoning / Tool Calls - LLM Result + + Query + Report / Confirm + Routing Intent + LLM Result / Ask - tools/call - Result JSON - - stdio + tools/call + Result / Brake + resources/read - - HTTP GET (Search) - Metadata JSON - fs.writeFileSync() + + stdio + + + search_arxiv + save_note (z.any容错) + fetch_framework - + @@ -187,284 +175,261 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 - - - - - Cherry Studio (MCP Client) - 大模型对话与调度宿主 - Initiates stdio subprocess + + + + + Cherry Studio (MCP Client) + 大模型交互与意图传递中枢 + Initiates stdio subprocess - - - LLM - (Remote) + + + LLM + (Agent) - - - - - - Academic APIs - arXiv API - Semantic Scholar API - - - - - - - - app.ts - McpServer 注册原语 - Stdio Transport - - - - - - - - - promptsController - 处理 prompts/get - - - - - - - - toolsController - search_academic_literature - save_literature_to_vault - - - - - - - - resourcesController - 处理 resources/read 分发 - 含 literature:// 协议支持 - - - - - - - - S2 Strategy Services - - - promptService - 多维思维框架管理 - - - intentService - 意图拆解生成检索词 - - - - - - - - literatureService.ts (New) - 并发调用学术API及去重 - 向大模型返回标准化 JSON 数组 - - - - + + - resourceService.ts - 文件系统读取交互 - 读取 Vault 中的文献卡片 + app.ts + McpServer 注册入口 + Tools & Resources (stdio) - - - - - - - storageService.ts (New) - JSON 转 Markdown+YAML - 路径安全校验与双轨数据落盘 + + + + + + toolsController + 统一调度与防呆:截获意图请求并分发 + 自动剥离框架 JSON 外壳,注入【🛑停止】指令 - - - - utils/yamlHelper.js - 生成 Frontmatter 文本 + + + + + + resourcesController + 解析 resource/read 请求 + 扩展 literature:// 协议 - - - - apiClients.js - Axios / 重试 + + + + + + arxivService.ts + 外部学术检索网关 + 解析底层复杂 XML 结构 + 转化为标准 Markdown 列表 - - - schemas.js - literatureSchema - Zod强校验标准 + + + + + + resourceService.ts + 处理长文本落盘 (save_note) + + 拦截 z.any() 畸形入参并序列化 - - - - - Local Vault - .md 卡片落盘 + + + + + + + + + + + + + External arXiv API + + + + + + + models/frameworks/ + 静态分析框架模板 + (swot.json, scqa.json) + + + + + + + Obsidian Vault + + + + + + schemas.ts: z.any() - - + + 1 - + + 2 - + + 3 - + + 4 - + + 5 - + + 6 - + + 7 - + + 8 - + + 9 - - - - - Sprint 3 文献检索落盘工作流 - - - - - 1 - User: 输入研究主题进行查询 - - - - 2 - LLM: 判断并决定检索相关学术文献 - - - - 3 - Client: 调用 search_academic 工具 - - - - 4 - S1: 并发请求 arXiv / Sem. Scholar - - - - 5 - API: 返回聚合的 JSON 文献元数据 - - - - 6 - LLM: 分析后调用 save_literature - - - - 7 - S1: 将 JSON 转为 MD + YAML 前缀 - - - - 8 - S1: 安全写入指定的本地 Vault 目录 - - - - 9 - LLM: 生成带本地文献引用的最终报告 - - + + + + Sprint 3 执行步骤流 + + + + + + 1 + 用户输入包含检索与分析的复合查询 + + + + 2 + 大模型识别意图1: 请求 search_arxiv + + + + 3 + arxivService 请求外网并解析格式化 + + + + 4 + 大模型识别意图2: 请求分析框架模板 + + + + 5 + Tools 剥离 JSON,注入🛑【刹车指令】 + + + + + 6 + 模型工具被截断,输出报告并询问保存 + + + + 7 + 用户确认保存,触发意图3: save_note + + + + 8 + 底层 z.any() 宽容拦截长文本并序列化 + + + + 9 + resourceService 安全写入知识库落盘 + + + - + - + - + 组件与语义对照: - 宿主客户端架构 + 宿主客户端 - + - 路由分发控制器 (Controllers) + 防火墙路由 (防死循环) - + - 核心引擎与本地执行层 (Sprint 3核心) + 底层服务引擎与资源落盘 - + - 远程云端 API 依赖 + 外部云端/网络依赖 @@ -474,7 +439,7 @@ SPDX-License-Identifier: MIT & CC-BY-SA-4.0 版权许可声明 (License) =========================================================================== --> - + 本作品采用 CC-BY-SA 4.0 进行许可,© 2025-2026 Gitconomy Research社区