前言¶
DeepSeek Harness(DSH)采用插件化架构,旨在通过模块扩展能力。在进行长周期的智能体任务开发时,Agent 的执行细节常隐匿于日志流中,难以在对话头部快速感知当前进度。
dsh-task-capsule 插件将 Harness 的执行过程收敛成一个始终可见、几乎不打扰的任务状态指示器。它提供紧凑的胶囊视图和可展开的悬浮面板,用于展示任务计数、耗时、文件变更统计以及子代理状态。
功能概览¶
紧凑胶囊¶
胶囊位于会话头部右侧,以极简形式呈现核心信息:
- 状态与计数:显示状态点(●)、任务计数(已完成/进行中/待处理)以及耗时(MM:SS)。
- 视觉区分:运行状态为呼吸动画(1.4s 周期),等待状态为缓动动画(2.6s 周期),两者易于区分。
- 终端态收起:任务完成后胶囊自动收起为记录格式,如 ✓ 任务完成 5/5 · 02:31,耗时不再随页面刷新增长。
展开面板¶
点击胶囊可展开悬浮面板,面板包含以下层级:
- 状态行:显示当前状态词与等待原因(如有)。
- 当前任务:高亮显示正在执行的任务名称、耗时及操作详情。
- 文件统计:展示改动文件数及 diff 统计(+12 −4)。
- 子代理汇总:聚合宿主侧委托树的当前任务状态,可展开查看各子代理明细。
- 任务列表:按当前 > 已完成 > 等待排序,当前任务切换时有强调动画,并附带耗时占比条。
- 最近任务:持久化环形缓冲列表,展示前置状态点、状态词、完成数与耗时。
液态悬浮面板¶
面板通过 Portal 渲染到 <body>,锚定在胶囊下方:
- 不受裁剪:不会被会话头部或滚动容器裁剪,悬浮于内容之上。
- 空间自适应:下方空间不足时自动向上翻转;支持 Tab 循环与关闭还原。
- 玻璃质感:具备液滴圆角、沉降与回吸动画。
配置与用法¶
插件支持通过 cordis.patch.yml 配置文件或运行时设置中心调整行为。
cordis.patch.yml 示例:
- insert:
- id: task-capsule
name: dsh-task-capsule
config:
keepAfterDoneMs: 8000 # 完成态胶囊保留时长(0 = 立即收缩)
autoExpandRunning: true # 任务进行时自动展开面板
autoExpandFailed: false # 失败时自动展开面板
alwaysVisible: false # 空闲无活动时也保持可见
historyLimit: 5 # 最近任务历史容量
showDuration: true # 展开态显示逐任务耗时
showCurrentOp: true # 显示当前操作行
density: comfortable # 面板密度(comfortable | compact)
accent: auto # 强调色(auto | business | success | warn | error)
数据与行为¶
数据源与持久化¶
- 状态驱动:任务状态完全由 Agent 的
todo_write工具驱动(整表替换,Last-Write-Wins)。Agent 口头描述完成但未写入 todo 列表时,胶囊如实反映最后一次写入的状态。 - 持久化路径:最近任务历史持久化至
$DSH_HOME/task-capsule-history.json,重启不丢失。
生命周期与限制¶
- 自动展开:默认配置下,任务进行时胶囊自动展开面板,完成后 1.5s 自动缩回。
- 失败处理:失败状态不会推断为完成。失败/中止/中断/等待决策(
error/aborted/interrupted/blocked)不会自动缩回面板。 - 不支持功能:不包含日志查看器、不支持任务搜索/筛选、不支持自定义主题。
注意事项¶
插件以当前 DSH 进程权限运行。在安装前,建议检查源码与许可证(MIT)以确保合规。
生态与链接¶
- 插件目录:SkillHub - dsh-task-capsule
- GitHub 仓库:Chance-Wu/dsh-task-capsule