前言¶
在 DSH 开发流程中,会话简报通常包含任务进展和产出物信息,但默认状态下这些信息分散或难以集中查看。dsh-brief-sidebar 插件解决了这个问题,它作为一个 dsh-better-sidebar 的消费方,将简报内容以“概要”标签的形式渲染在右侧边栏,并遮蔽官方的 todo 面板,使其成为任务进度的唯一可见载体。
核心功能¶
- 右侧栏概要标签:将会话简报渲染为右侧边栏内的一个摘要标签页。
- 双列表展示:
- 进展看板:展示todos投影的任务进度,包含三态与摘要。
- 产物列表:展示dshSummaryDeliverables投影的产出物,实时显示成功写入的文件,codeplan 规划产物会有“规划”标签。 - 遮蔽官方面板:当
better-sidebar激活时,该插件会通过注册优先级竞争,遮蔽官方 composer-band 顶部的 todo 面板。 - 只读模式:仅提供展示,不支持编辑、写回或多会话聚合。
安装¶
安装前请确保 DSH 版本在 0.2.0 线上(engines.dsh >=0.2.0-rc.1)。
dsh plugin --profile web add dsh-brief-sidebar@dsh-0.2.0
安装后刷新页面即可生效。
使用方法¶
- 安装完成后,右侧边栏会出现“概要”标签页。
- 在“概要”标签页中查看当前会话的任务进展和产出物列表。
- 点击产物列表中的文件路径,会通过
ctx.sidebarRight.openResource在侧边栏中打开对应资源。
设计要点¶
- 数据链路:插件不依赖框架的
useProjection,而是直接通过ctx.get('sessions')获取 SessionBinding 和投影面(ProjectionsFace),分别解析todos和dshSummaryDeliverables。 - 遮蔽逻辑:利用 SlotCore 的注册机制,以
priority: -1注册id: 'todo'的条目,使其优先级高于官方默认的order: 0,从而在better-sidebar激活时实现遮蔽。 - 产物折叠:产物列表的折叠口径与官方
turn-deliverables保持一致,仅统计成功写入(write/edit/str_replace_editor)的文件,去重并忽略失败项。 - 点击打开:产物路径点击后,走与对话流同一条 Sidebar 预览通道(
fileAddressFor),支持相对路径和绝对路径。
限制与注意事项¶
- 只读限制:插件不做任何编辑或写回操作,也不复制第三方渲染层,确保数据流向单一。
- 兼容性:仅支持 DSH 0.2.0 线。在 0.1.x 线上,如果
better-sidebar未激活,该插件处于 inert 状态(不渲染标签,不报错)。 - 记忆分区:简报的第三个分区“记忆召回”目前仅预留布局插槽,处于规划中,本期不渲染。
总结¶
dsh-brief-sidebar 为 DSH 会话提供了一个清晰的、只读的概览视图。通过将任务看板和产物列表集中在右侧栏,开发者可以更直观地追踪会话进展和产出物,而无需在官方面板和简报之间切换。
- 仓库地址:https://github.com/drscrewdriver/dsh-brief-sidebar
- 目录页:https://www.skillhub.cn/plugins/drscrewdriver/dsh-brief-sidebar