cc-haha/release-notes/v0.5.16.md
你的姓名 cec6eb88cd release: v0.5.16 (#68)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-17 06:01:27 +08:00

1.9 KiB
Raw Blame History

v0.5.16

图片生成插件稳定性修复 + API 请求体积安全网。

修复

  • image-gen 返回标准 MCP image block#67。image-gen 插件不再返回自定义 image_url block会被 MCP schema 校验拒绝),改为标准 text block 内嵌 markdown ![](url) 语法;客户端 extractImageBlocks 已能从 text block 中提取 URL 图片并内联渲染。同时 preview-agent.js 适配新的返回格式。
  • API 媒体体积预算#68。新增 shrinkMediaToSizeBudget() 安全网:当对话累积的 base64 图片总量超过 12MB 时,自动移除最旧的图片 block替换为文本占位符防止触碰 API ~20MB 请求体积上限。URL 图片永不被移除(不占请求体积)。
  • 图片网格点击全屏#68ToolCallBlockextractImageBlocks 渲染的图片网格(来自 MCP tool result从静态 <img> 升级为可交互画廊hover 显示全屏图标,点击打开 ImageGalleryModal,支持左右箭头键切换和缩略图条导航,体验与 InlineImageGallery(本地文件路径图片)一致。

范围

  • src/services/api/claude.ts:新增 shrinkMediaToSizeBudget() + getMediaBase64Size() 辅助函数,接入 API 调用管线(stripExcessMediaItems 之后)。
  • src/constants/apiLimits.ts:新增 API_MAX_MEDIA_BYTES_BUDGET = 12MB 常量。
  • desktop/src/components/chat/ToolCallBlock.tsx:新增 ImageBlockGallery 组件,导入 ImageGalleryModal
  • desktop/src-tauri/resources/preview-agent.js:适配 image-gen 新返回格式。
  • 测试:src/services/api/shrinkMediaBudget.test.ts10 casesdesktop/src/components/chat/ImageBlockGallery.test.tsx7 cases

验证

  • bun test src/services/api/shrinkMediaBudget.test.ts10 passed
  • desktop vitest run src/components/chat/293 passed含新增 7 个 ImageBlockGallery 测试)
  • PR #67 / #68 CI 全绿