diff --git a/CHANGELOG.md b/CHANGELOG.md index 405f0b0..8aa7d57 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,10 +3,10 @@ title: Project Caffeine Changelog (更新日志) description: 记录 Project Caffeine 项目的所有显著更改、版本迭代与发布历史,遵循 Keep a Changelog 与语义化版本规范。 type: Changelog -version: v0.1.1 (Arabica) - Sprint 2 +version: v0.0.3 (Arabica) - Sprint 3 file: CHANGELOG.md author: Gitconomy Research-郭晧 -date: 2026-03-07 +date: 2026-03-11 tags: - Project Caffeine - Changelog @@ -24,7 +24,43 @@ status: Active --- -## [0.1.1] - 2026-03-06 +## [0.0.3] - 2026-03-10 + +### Added (新增) + +- **意图驱动路由引擎**:全面重构系统提示词,确立四大核心意图映射(文献查询、框架分析、保存内容、本地笔记分析),使大模型能够根据自然语言智能调度专属工具。 +- **学术文献检索接入**:新增 `search_arxiv` 原子工具与 `arxivService.ts`,支持基于提取的核心关键字调用 Arxiv API,实时获取学术论文并结构化输出。 +- **结果落盘持久化**:优化 `save_note` 工具,允许大模型在获取用户明确授权后,将生成的长篇分析报告或检索结果一键保存为本地 Markdown 文件。 +- **内部模板获取工具**:新增 `fetch_framework_template` 后台工具,专供大模型内部读取 SWOT、SCQA 等 JSON 框架配置,不再向客户端 UI 暴露。 + +### Changed (变更) + +- **系统架构降维升级**:系统架构从“UI 按钮/提示词驱动(Prompt-driven)”彻底转向“自然语言/工具驱动(Tool-driven)”。 +- **参数宽容度放宽 (Parameter Tolerance)**:将 `save_note` 等工具的核心负载参数类型校验由严格的 `z.string()` 放宽至 `z.any()`,并在底层 `toolsController.ts` 中引入自动序列化机制(`JSON.stringify`),以承接大模型输出的畸形对象。 + +### Deprecated (废弃) + +- **MCP Prompts 原语暴露**:废弃了向客户端 UI 直接暴露的 `prompts/list` 和 `prompts/get` 接口,改由大模型在后台自主调用工具获取模板。 + +### Removed (移除) + +- 移除了 Sprint 2 时期遗留的 5 个硬编码 `server.prompt` 注册代码。 + +### Fixed (修复) + +- **大模型 JSON 转义崩溃**:彻底修复了因大模型未能正确转义超长 Markdown 文本和嵌套引号,导致底层触发 `AI_JSONParseError` 并中断工具调用的核心故障。 +- **无限循环调用死锁 (Infinite Tool Call Loop)**:修复了大模型在读取原始 JSON 框架文件后由于“困惑”而导致的工具循环调用崩溃;通过在 `toolsController.ts` 中剥离 JSON 外壳,并向大模型强制注入“🛑立即停止调用任何工具”的底层防呆指令解决。 +- **TypeScript 强类型推断错误**:修复了 MCP SDK 中因 `type` 字段推断为泛用 `string` 而引发的编译报错,通过显式声明 `type: "text" as const` 解决。 + +### Security (安全) + +- **强指令防越权写入**:在系统提示词与底层逻辑中双重加固防线,设定【绝对红线】,严禁大模型在未经主动提问并获取用户明确(如“是”、“保存”)授权前,私自调用 `save_note` 执行写盘操作。 + +--- + + + +## [0.0.2] - 2026-03-06 ### Added (新增) @@ -59,7 +95,7 @@ _(无)_ --- -## [0.1.0] - 2026-03-03 +## [0.0.1] - 2026-03-03 ### Added (新增)