Skip to content

Releases

v0.1.10

Choose a tag to compare

@Minecraftbe Minecraftbe released this 11 Sep 15:19
e69bb98

⚠️ 版本支持:自 0.1.10 起支持 DSH >= 0.1.2-rc.1 < 0.1.3 || >= 0.1.5-rc.1 < 0.1.6
(以 package.json engines.dsh 为准)。

功能变更

  • 新增支持 DSH 0.1.5 系列:0.1.5-rc.1 上的版本不匹配警告消除。

缺陷修复

  • 版本校验不再硬编码:支持区间以 package.json engines.dsh 为唯一真相源(构建期注入产物);旧的写死单区间是 0.1.5-rc.1 误报感叹号的根因。console 警告与卡片 hover 提示改为直接引用 live 区间。
  • 设置卡箭头换成官方图标:header 的 ▾ 文字段落(字体相关、比官方粗)换成产品自己的 IconChevronDownOutline14,取不到时回落为像素一致的内联 SVG。

Full Changelog: v0.1.9...v0.1.10

v0.1.9

Choose a tag to compare

@Minecraftbe Minecraftbe released this 05 Sep 13:19

⚠️ 版本支持:本节改动将随 0.1.9 发布;自 0.1.9 起,本插件仅支持 DSH >= 0.1.2-rc.1 且 < 0.1.3(安装节有同样提示)。

缺陷修复

  • 折叠条行距对齐官方:.ccxBar 去掉上下 3px 透明内边距(padding:0)。条是无边框无背景元素,透明 padding 会被读成行间白边——实测每侧多出 3px(条↔行 30px、条↔条 33px,而官方行↔行字墨边距 27px = 流 margin-top:16px + 24px 行盒内字墨各 ~5.5px)。官方行本身零内边距,去掉后折叠条回到同一节奏。
  • 思考行复活:答案流进曾被清空隐藏的思考行时自动恢复可见,不再误判为空行。
  • 关引擎保留卡片样式:引擎规则与卡片 chrome 拆成两个 style 标签,停用折叠不再剥掉卡片外观。
  • 压掉 16px 空带:隐藏思考的 wrapper 一并折叠,回答上方不再留空。

功能变更

  • 思考显示三档下拉(自动跟随官方折叠 / 始终保留 / 始终隐藏,默认自动):原来自动开着时保留是个摆设,现在没有无效组合;老配置自动沿用,可回滚。设置卡与 README 已同步。
  • 总开关:一键停用/恢复全部折叠(关闭后聊天回到产品默认显示,卡片常驻随时可重开)。
  • 跟随官方 Compact 折叠:官方收起整块过程时思考自动保留可见(即下拉的默认档)。
  • 版本不匹配警告:运行的 DSH 超出支持范围时,设置卡显示 ⚠ 图标(hover 看详情)并打一条一次性 console 警告。
  • 适配 DSH 0.1.2:settingsNamespace() helper 被移除,改用裸字符串命名空间;新增 engines.dsh 下限,删除 dsh-settings peer 依赖。

工程变更

  • 浏览器半模块化:lib/client.js(约 2244 行单文件)与字符串手术生成的 lib/dynamic-body.js 重构为 src/client/ 下的模块源(settings / bridge / styles / engine / card / react-env / index),由 tsdown 构建(tsdown.config.mjs,与 host 半共三个 entry):
    • lib/client.js(.map) —— 安装通道 loader 产物(window.__ModuleLoader__.load,经 exports["./client"] 加载),行为与旧文件一致;
    • lib/dynamic-body.js(.map) —— 动态通道 body(同一模块图去掉 loader 包装),供动态插件会话与 tools/live-probe.mjs 使用;
    • React 不再静态导入:构建 wrapper 将通道提供的 React 种入 globalThis.__dshToolfoldReact(安装通道 require('react') / 动态通道闭包参数 React),无 React 的无头环境仅跳过设置卡片注册。
  • 构建期产物(删除旧生成器 lib/build-dynamic.cjs):lib/client.js / lib/dynamic-body.js(及 .map)已 gitignore,由 prepare: pnpm build(tsdown)重建——pnpm publish 与 git-hosted 安装都会先跑 prepare 再打包,files 白名单只含构建产物(lib/index.js、lib/client.js,不含 src / map)。package.json 增加 prepare / build / build:watch 脚本与 tsdown devDependency。改动流程:只改 src/ → pnpm build → 验证。
  • host 半搬家:lib/index.js → src/host/index.js(与 src/client/ 对称;ESM,无需 scoped package.json),由 tsdown 第三个 entry(platform: 'node',schemastery 保持 external)构建回 lib/index.js——main / exports["."] / files 指向不变。至此 lib/ 下 100% 生成物,.gitignore 收成一行 lib/(源码层/产物层不再混放)。
  • 工具去本机硬编码:jsdom(29.1.1)与 playwright(1.61.1)收为 devDependencies,tools/engine-smoke.mjs / tools/live-probe.mjs 改按包名解析;live-probe 的 Chrome 路径改为 CHROME_PATH 环境变量优先,否则按平台取第一个存在的默认位置。pnpm install 后 test:engine / probe:live 开箱即用。
  • 新增 pnpm-lock.yaml:安装可重复。
  • 发布管线:Publish 前加 pnpm install;dry-run 校验 + --provenance OIDC 可信发布;发布条件收窄为仅 release 触发(取消手动发布);engines.dsh 上限收窄到 <0.1.3。

Full Changelog: v0.1.8...v0.1.9

v0.1.8

Choose a tag to compare

@Minecraftbe Minecraftbe released this 28 Aug 14:45
0a81fad

Fixed

  • 修复运行时收起"先动一下再突然收起":当模型产生大量工具调用、且它们是最新信息时,run 在收起动画期间仍在增长。旧实现(自 0.1.3 起)假定行集合固定:折叠条点击闭包持有的是创建时的旧 run 快照,动画只覆盖原始行,随后按旧行数计时的完成定时器把整个增长后的 run 一次性合并,新流入的行瞬间消失。现点击改为操作当前 run(bar._ccxRun)而非创建时快照;syncBars 将动画期间新增的行折入同一瀑布(extendCollapse:rise 类 + 高度收缩 + 各自 stagger)并重排完成定时器(armCollapseFinish),最后一行动画结束才应用合并。(lib/client.js, lib/dynamic-body.js)

Changed

  • npm 发布工作流增加 OIDC 权限(id-token: write、contents: read),发布改用 OIDC 身份认证(移除 NODE_AUTH_TOKEN 环境变量),并禁用 package-manager-cache。
  • package.json 增加 repository 字段指向 GitHub 仓库。
  • 重构 README:重组章节(安装、快速开始、默认行为、功能、设置、性能、限制),新增"默认行为 – 首次使用"说明(为什么思考会消失、为什么调用默认分组,以及快速修复指引),补充安装方法与徽章,并同步翻译为 README.en.md。

Full Changelog: v0.1.7...v0.1.8

v0.1.7

Choose a tag to compare

@Minecraftbe Minecraftbe released this 26 Aug 14:59
9c4afbb

Fixed

  • npm 发布命令增加 --no-git-checks,跳过 pnpm 的 git 状态检查,避免在 CI 检出态下发布失败。

Changed

  • 将发布工作流 Node 版本由 lts/* 固定为 24,与当前构建环境对齐。

Full Changelog: v0.1.6...v0.1.7

v0.1.6

Choose a tag to compare

@Minecraftbe Minecraftbe released this 26 Aug 14:45
520680f

Fixed

  • 修复 WSL bash 工具在折叠后标题消失的问题。BashRow 使用 data-sample="bash" 独立渲染,无 data-disclosure-row,旧克隆逻辑回退到空的 [data-tool] 导致折叠条只剩计数。现按优先级克隆:[data-disclosure-row](通用 ToolRow / pwsh)→ [data-sample="bash"](Bash 头部)→ [data-tool] 首子 → lastRow.firstElementChild,并保持 120 ms 节流。(lib/client.js, lib/dynamic-body.js)

Changed

  • 重构 npm 发布工作流 .github/workflows/npm-publish.yml:改为 release.created 触发,使用 pnpm@11 + setup-node LTS 并通过 secrets.npm_token 发布。