前言¶
在 DSH 的插件化扩展方式里,终端客户端不只是包装一个聊天窗口。很多实际任务会同时涉及长期 Assistant、多个项目会话、当前计划、运行状态、模型信息和上下文占用。dsh-tui-pro 就是针对这种场景的一个多会话终端工作台:它把 durable Assistant 和 active project sessions 放进同一个 full-screen TUI,让会话切换、运行控制和上下文查看发生在同一块屏幕里。
这里的插件目录是独立站点,与 DeepSeek / 幻方没有官方从属关系,也不应理解为官方应用商店。dsh-tui-pro 属于社区插件线索里的终端工作台。
这是什么¶
dsh-tui-pro 是一个面向 DeepSeek Harness 的多会话终端工作台。
- 仓库与插件名:
lk251066/dsh-tui-pro - npm 包名:
@lk251066/dsh-tui - 维护者:
lk251066 - 许可证:
MIT - 定位:DSH 终端工作台 / 客户端
- 形态:out-of-tree dsh plugin bundle,包含
cordis.patch.ymlprofile layer,不是 DeepSeek Harness 的 fork - 基础:基于 DeepSeek Harness 的原始 TUI 实现
一句话概括:它让一个 durable Assistant 和若干 active project sessions 在同一个全屏 TUI 中持续可用。
核心功能¶
持久 Assistant 与项目会话¶
dsh-tui-pro 把 Assistant 作为一个 durable session 使用,它可以跨启动保留。项目会话则按 workspace 分组,显示在固定 sidebar 中。
Assistant 可以管理 active project sessions,也可以读取这些会话中已完成的 user/assistant dialogue。需要注意的是:hidden reasoning、tool traffic 和 unfinished output 不会跨会话暴露。
全屏 TUI¶
这个工作台提供 full-screen TUI,内容包括:
- transcript
- editor
- current plan
- live status
- model
- context usage
- active sessions
这样做的目的是把常用信息放在同一视觉区域,减少在终端输出、状态栏和会话列表之间来回切换。
会话管理命令¶
常用会话命令包括:
/new:在当前项目创建另一个会话/new <path>:为另一个项目创建会话/assistant:返回固定 Assistant/switch:切换 active project session/quit:关闭当前项目会话,保留其历史,并返回 Assistant/sessions:浏览完整历史/exit:关闭 TUI
除了命令,也可以通过 Alt+Left、Alt+Right 或点击 sidebar 切换 active project session。
交互控制¶
在运行中的 turn 里,dsh-tui-pro 提供了几类控制:
Enter:当 turn 正在运行时,发送 immediate steeringTab:queue 下一轮 turnEsc:在 cancellation 前恢复最近一条 queued message- 双击
Esc:浏览当前 conversation 的 checkpoints Ctrl+O:切换 tool 和 context body detailCtrl+R:展开 settled reasoning
这些控制主要服务于运行过程中的转向、排队、恢复和查看细节。
文件补全与图片附件¶
输入侧支持 workspace 文件补全和剪贴板图片附件:
@:补全 workspace filesAlt+V:当 selected model 声明支持 image input 时,附加剪贴板图片
剪贴板图片附件在不同系统上有依赖:
- Windows:使用 PowerShell
- macOS:需要
pngpaste - Linux:需要
wl-paste或xclip
记忆控制¶
Assistant 默认启用 memory。相关命令包括:
/memory/memory on/memory off
其中 /memory off 会把 memory 从该 session 的 model context 中移除,但不会删除它。
安装与启用¶
前置条件¶
安装和运行前需要满足:
Node.js ^22.19.0 || >=24.0.0
DEEPSEEK_API_KEY
ANSI-capable terminal
DEEPSEEK_API_KEY 需要在仓库外部配置。
使用 dsh CLI 安装¶
先安装插件及其 profile layer:
dsh plugin --profile tui add @lk251066/dsh-tui
经过上面的步骤后,可以从任意项目目录启动:
dsh --profile tui
这个包同时包含 TUI 插件和 cordis.patch.yml profile layer,不需要再安装第二个 bundle package。
不安装全局 dsh¶
如果没有全局 dsh CLI,可以用 npx 走同一个 profile:
npx -y @deepseek-ai/dsh@latest plugin --profile tui add @lk251066/dsh-tui
npx -y @deepseek-ai/dsh@latest --profile tui
典型用法¶
从项目目录启动¶
在目标项目目录执行:
dsh --profile tui
启动后,可以先确认当前 Assistant 和当前项目会话是否按预期显示,再进行后续操作。
创建与切换会话¶
常用流程如下:
1、在当前项目里创建新会话:
/new
2、为另一个项目路径创建会话:
/new /path/to/project
3、回到固定 Assistant:
/assistant
4、切换 active project session:
/switch
也可以使用 Alt+Left、Alt+Right,或者直接点击 sidebar。
关闭与退出¶
关闭当前项目会话并返回 Assistant:
/quit
/quit 会保留当前项目会话的历史。
浏览完整历史:
/sessions
关闭 TUI:
/exit
控制运行中的对话¶
如果当前 turn 还在运行:
1、用 Enter 发送 immediate steering。
2、用 Tab queue 下一条 turn。
3、用 Esc 在 cancellation 前恢复最近一条 queued message。
如果需要查看当前 conversation 的 checkpoints,可以双击 Esc。
查看工具与推理¶
Ctrl+O:切换 tool 和 context body detailCtrl+R:展开 settled reasoning
这两个控制适合在工具输出较多、推理内容较多时使用。
使用文件补全和剪贴板图片¶
在输入处使用 @ 补全 workspace files。
如果 selected model 声明支持 image input,可以使用:
Alt+V
附加剪贴板中的图片。
控制 Assistant memory¶
查看或切换 memory 状态:
/memory
/memory on
/memory off
/memory off 只影响该 session 的 model context,不会删除 memory。
适用场景与注意¶
适合谁¶
dsh-tui-pro 适合以下用户:
- 希望在一个终端里维护多个项目会话
- 需要一个长期可用的 Assistant
- 希望同时看到 transcript、editor、current plan、live status、model 和 context usage
- 使用 DeepSeek Harness,并希望通过 DSH plugin 扩展终端体验
终端要求¶
这个 TUI 要求 ANSI-capable terminal。
另外:
- 当终端 inner columns 低于 65 时,sidebar 会隐藏
- 建议终端高度至少为 24 rows
权限与安全¶
dsh-tui-pro 作为 DSH plugin 运行时,会跟随当前 dsh 进程的权限。安装前建议检查源码、依赖和许可证。该项目许可证为 MIT。
发布与兼容性¶
dsh-tui-pro 跟随 developer-preview dsh release line。每个 release 会在发布前经过 source、packed npm artifact、clean public dsh profile 和 real Linux PTY 的检查。
跨会话可见性¶
Assistant 可以读取 active project sessions 中已完成的 user/assistant dialogue,但 hidden reasoning、tool traffic 和 unfinished output 不会跨会话暴露。
相关链接¶
- GitHub:https://github.com/lk251066/dsh-tui-pro
- 目录页:建议以仓库 README 提供的外部目录入口为准,具体以实际页面信息为准