Skip to content

v0.7.0 — 折叠摘要条着色 + 触发通知卡字段化

Choose a tag to compare

@Max-Null Max-Null released this 28 Sep 20:13
· 10 commits to main since this release

折叠摘要条着色

内核把一串工具调用折成一行摘要(「已读取文件并执行了命令」)或一层轮次摘要(「已完成工作 · 用时 35 秒」)时,这些收起态的行此前没有任何配色 —— 展开后成员行各有类别色,收起反而丢了线索。现在:

  • 过程组组头按内核在 data-process-activity 上发布的排名第一的类别取色,与展开后各成员行同一色系;取色不解析标题文本。
  • Turn 级摘要条用新类别 summary(默认灰蓝 #94a3b8)—— 它只有轮次号与工具计数,没有类别语义,硬套类别色是武断的。
  • 两者只在收起态着色:展开后成员行各自带色,容器再涂就是两层色块叠在一起。
  • 两种形态用两种涂法:组头是「一行摘要」(以图标起头),走 3px 左轨 + 淡色底、内距 8px 让轨与图标之间有呼吸;Turn 摘要条是整行宽的分节线(内核给它 padding: 0 加一条底部发丝线),改用底线染色、不加轨也不内缩。

触发通知卡:目标轮次字段化

接管 conversation.chat.node 的 turn-trigger。目标轮次那张卡原本把模型提示词原文连同骨架一起显示:

<goal_round>
Objective: "……"
Round: 1/256

Continue working toward the objective in this same session. …
</goal_round>

骨架对人不构成信息,却占满整个展开区。现在:

  • 折叠头加轮次徽标(第 1 / 256 轮),收起态即可读到走到第几轮;
  • 展开体字段化:「目标」是还原了 JSON 转义的目标原文,「模型收到的指令」独立成节并默认收起(保留可查性,不销毁);
  • 其余触发来源(schedule / webhook / job / subagent …)按官方同构渲染 —— 遮蔽是全 key 的,所以 kind → 标题/图标映射逐条复刻了官方那一份;
  • 提示词解析是全有或全无:骨架任一处不符(内核改了格式、maxGoalRounds 未设导致写出 Round: 1/undefined)即整卡退回「原文 + 等宽显示」,绝不显示半截字段。

peer 放宽到跨 minor

peer 从 ^0.1.7-rc.2 改为 >=0.1.7-rc.2 <0.3.0。caret 的上界是下一个 minor,内核一跨 minor(如 0.1.x → 0.2.x)所有写 ^0.1.* 的插件会一起失配 —— 而失配的插件不会被加载、也不会出现在「未激活」列表里(在进入 fiber 图之前就被跳过),界面上不报错,只是少一批插件。

本插件依赖的 DOM 锚点(data-process-activity / data-turn-process / data-turn-trigger)在 0.1.7-rc.2 与 0.2.0-rc.1 上逐字相同,所以宽范围是准确的声明,不是放宽。

安装 / 升级

pnpm add @max-null/dsh-node-appearance@0.7.0

重启 dsh 后生效。设置入口:设置 → 插件配置 → 节点外观(配色列表新增「工作摘要」一项)。

已实测:SSiD fork dev 隔离实例 + DSH 0.2.0-rc.1 —— 目标轮次与 tool-jobs 两条触发路径、开关往返、console 均通过;L2 留痕见仓库 docs/验证记录.md。

未实测:装版(0.1.7-rc.2)上的表现 —— 兼容性依据是源码比对(所用锚点在两版内核里逐字相同),不是实机。