dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
为 DeepSeek Harness 补上"在对话中管理会话"的能力——模型与人都能在对话途中新建、重命名、列出、查看、归档会话。
五个模型工具(模型在对话里即可整理会话):
| 工具 | 作用 |
|---|---|
new_conversation | 把一个跑偏的话题、一个独立的子任务,带着完整的首条用户消息开成一个全新对话(出现在侧边栏,立即开跑) |
rename_session | 重命名会话(默认当前会话) |
list_sessions | 按最近活跃列出会话(标题、运行中、所在目录);带 query 时按内容搜索 |
read_session | 读取某会话的紧凑对话摘录(最近的用户/助手文本消息,有界) |
archive_session | 归档会话:移出工作区会话列表(耐久日志保留) |
两个官方插槽按钮(无 DOM 注入):
只走官方路径:Host 复用 Web UI 同款的 sessionController / sessionQuery / workspaceRegistry 接缝;UI 只用官方插槽(conversation.session.header.actions、conversation.chat.assistant-actions)。通过 dsh-client-locale 接入中英双语界面。
dsh plugin add dsh-session-pilot
重启 dsh 后生效。模型会在工具列表里看到五个工具;会话头部出现「+ 新对话」按钮;每条已落定的助手消息的操作区出现「⧉」按钮。
new_conversation 把任务简报作为首条消息。<quoted-context> 摘录,作为新对话的首条用户消息。| 既有能力 | 与本插件的差别 |
|---|---|
subagent | 子代理是临时的、向父会话汇报的上下文节省机制,不是用户可见的独立对话 |
消息 fork(官方 / dsh-turn-fork) | fork 携带历史前缀分支;new_conversation 创建的是零历史的新对话,只携带你写下的首条消息 |
| 侧边栏「+」 | 只能开空白对话;本插件让模型和消息级操作也能开对话,并可带种子内容 |
官方只读的 tool-session-query 包(opt-in) | 提供事件级只读查询;本插件提供写操作(新建/重命名/归档)与面向整理的紧凑视图 |
| 插件 | 重叠点 | 关键差别 |
|---|---|---|
ltxlong/dsh-session-kit | 会话日常管理、归档管理 | 它是纯 UI 驱动(会话管理菜单、归档 list/restore/delete/preview、本地记忆、压缩配置、话题导航),没有模型工具;本插件的管理动作全部是模型可调用的工具,并多出新对话创建。两者可共存:它管界面,本插件让模型动手 |
lesterq/dsh-session-manager | 会话删除/归档/移动 | 同样是 UI 操作面板(无模型工具);本插件是模型在对话中直接执行 |
yangYzc/dsh-plugin-quote-reply | 「新窗口回复」也会创建新会话并带入引用 | 它是划词引用 + 预填输入框草稿(用户手动发送);本插件是整条消息摘录直接落为首条消息(新对话立即开跑)。且它无模型工具、纯 client 创建(不经 sessionController 的工作区挂载) |
bpc-oss/dsh-fork-to-preset | 头部按钮创建新会话 | fork 语义:继承已完成回合并换 preset;本插件是零历史新对话 |
qwert702/dsh-context-compressor | 自动切到新会话 | 目的是压缩上下文、自动触发;本插件是模型/用户主动按话题拆分 |
weibaohui/dsh-tasks、DSH Automation Center | 每次运行开新会话 | cron 定时驱动,非对话内即时创建 |
没有插件提供这一组模型工具——让模型自己创建、命名、整理用户可见的顶层对话;这是本插件的核心缺口定位。
new_conversation 与 HTTP 路由共享 createSessionPilot——解析来源会话的工作区(直连挂载),调用 sessionController.create(Host 侧自动完成工作区挂载),再按需 rename 与 prompt(mode: 'queue',透传 exec.signal)。创建的会话就是普通的耐久 Session,重启后仍在。cwd;Agent preset 随来源会话的最近 agent-preset/selected 继承(工具路径)。list_sessions 用 sessionController.list/search;read_session 用 sessionQuery.readSession(live 优先、冷读持久层)+ readTitle,消息级投影有界(每条 ≤600 字符、最多 100 条、总量 ≤12000 字符)。dsh-turn-fork 同一约定),application/json 且正文 ≤ 64 KiB。0.1.5-rc.1 的 API 编写(peer deps),并在 0.1.2-alpha.4 运行时验证通过;prompt 始终显式传 mode: 'queue' 以兼容两个版本的 SessionPromptRequest。@ 重新引用。inspect 才能读到来源 preset,v1 未做)。read_session 不含工具事件——只投影用户/助手文本消息,查看工具调用细节请用官方 tool-session-query 包。archive_session 或在会话列表中归档。pnpm install
pnpm run typecheck
pnpm test # build + node --test
目录约定与 dsh-turn-fork 一致:src/index.ts(Host)、src/client/(Client)、src/shared.ts(共享值契约)、scripts/dsh-client-preset.ts(vendor 自 dsh 仓库的 client bundle preset,MIT)。