Back to home@wzxzhuxi

dsh-MT

基于vim哲学设计的dsh的终端会话管理器;A terminal session manager for dsh, designed with Vim philosophy.

Stars
1
Language
Rust
Created
Aug 20, 2026
Updated
Aug 20, 2026

Introduction

dsh-mt 基于vim哲学的终端会话管理器

dsh-mt logo

Rust Platform TUI License

English | 详细文档

你好,我是老王。dsh-mt 的 m 是 manager,t 是 terminal UI / TUI。

dsh-mt 是 DeepSeek Harness (dsh) 的终端前端:Rust + ratatui 实现 UI,Node Cordis bundle 实现 harness 集成。

项目定位

dsh-mt 有两条主线:

  1. 会话管理(Manager)

    • 左侧会话树、归档、删除、恢复。
    • 每个恢复的会话都会打开一个 tab,可以同时监视多个会话。
    • 右侧轨迹面板展示目标、工具调用、待办任务。
    • 下方任务回调窗口汇总已完成会话。
  2. Vim 哲学

    • 完整模式设计:Normal / Insert / Visual / Command / Search。
    • i 进入对话,v 进入选择,: 操作程序本身,/ 操作当前会话。
    • 光标不是摆设,h / j / k / ln / Ngg / G 都真实工作。
    • 主页也向 Neovim 致敬——相似不是巧合,是诚实。

快速安装

npm install -g @zhuxi/dsh-mt
dsh-mt

dsh-mt 会自动安装依赖的 @deepseek-ai/dsh。首次运行需要 pnpm 初始化 profile。

快速使用

dsh-mt                       # 欢迎页 / 新草稿
dsh-mt "先跑一下测试"          # 新会话并发送任务
dsh-mt -c                    # 继续当前目录最近会话
dsh-mt -r <session-id>       # 恢复指定会话
dsh-mt --list                # 只浏览会话列表

界面预览

主界面

dsh-mt 主界面

主界面为三栏布局:左侧会话树,中间转录与消息输入,右侧轨迹详情。

会话列表

会话列表

会话按工作目录分组,支持标题补全、归档视图与子代理标记。

多标签页

多标签页

顶部 tab 栏展示已打开会话;gt / gT:tabnext / :tabprevious 切换。

核心键位

按键作用
iInsert 输入
EscNormal
h / j / k / l移动光标
Ctrl+h / Ctrl+l切换聚焦面板
:Command 命令
/Search 搜索
n / N搜索下一个/上一个
gt / gT下一个/上一个 tab
Esc EscRewind 会话回溯
Space+e / Space+b折叠侧栏/详情

常用命令

:preset                选择工作模式
:model                 选择模型
:thinking high         思考强度 max|high|off
:permission            权限模式
:subagents             子代理列表
:tabnext / :tabprevious
:lang en               英文界面

核心特性

会话管理

  • 三栏布局:会话树 / 转录 / 轨迹。
  • 侧边栏:新建、恢复、归档、删除会话。
  • Tab 会话:gt / gT 一次监视多个会话。
  • 轨迹面板:目标、工具调用、待办任务、子代理、轮次。
  • 任务回调窗口:已完成会话直接 Enter 进入。
  • Rewind:双击 Esc 回到已完成回合。

Vim 体验

  • Normal / Insert / Visual / Command / Search 模式。
  • / 补全与 dsh web 当前 preset 一致。
  • : 只管理 dsh-mt 程序自身。
  • 全匹配搜索高亮,n / N 跳转并移动光标。
  • settings.yaml Neovim 风格键位。

其他

  • 流式 rendering 与 Markdown。
  • 动态 preset 与 slash 命令。
  • 权限 / 思考强度 / 模型切换。
  • 子代理管理。
  • 中英文切换。

作者的话

这个项目目前主要由老王一个人维护,主要在 Linux 上使用,所以 Linux 侧会更稳定;Windows 没有测试机,适配会弱一些。

如果你也喜欢 Vim、喜欢 TUI,欢迎一起维护:提 issue、交 PR,或者在视频评论区留言。

文档

文档内容
docs/architecture.md架构与协议
docs/conventions.md开发约定
docs/commands.md全部命令
docs/installation.md安装与构建
docs/plugin-boundaries.md插件边界
docs/dsh-web-alignment.md与 dsh web 对齐情况
docs/keybindings.md自定义键位
docs/rewind.md实验性 Rewind

开发

cargo fmt --check
cargo clippy --quiet
cargo test --quiet

Troubleshooting

损坏会话日志不要同时被 dsh web 和 dsh-mt 打开。遇到 corrupt session log 时:

python3 scripts/repair_session_log.py <session.jsonl.zstd>

详见 docs/installation.md