dsh-TUI
August 29, 2026 · View on GitHub
简体中文 | English
dsh-TUI
一个美观且实用的 Claude Code 风格 TUI 插件:像素鲸鱼顶栏、双流光大字、实时工作状态行、思考流式展开、双击 Esc 时间回溯、蓝白上下文进度条 + TPS 仪表。 零核心改动,纯插件挂载。安装插件即可启用,卸载后不会留下核心补丁。 献给钟爱tui的各位极客们~
A beautiful, practical Claude Code-style TUI plugin: pixel whale top bar, dual flowing-glow title, real-time status line, streaming thought expansion, double-Esc time rewind, blue-white context progress bar + TPS gauge. Zero core changes, pure plugin mounting. Install to enable; uninstall leaves no core patches. For all TUI-loving geeks~
🎉 官方收录
本插件被 DeepSeek Harness 官方公众号 推文收录,也被 dshfind 插件目录与 GitHub Trending 收录,同时登上了Github Treding日榜第七
核心能力
- 终端交互:低资源占用,长会话稳定可靠;多种主题切换,样式美观,实时显示工作状态、TPS、缓存命中率等
推理等级、输入/输出 token 与 Git/会话信息;终端卡多行命令可经
/settings折叠为首行 + 计数提示(Ctrl+O 或点击卡片展开);全屏模式下悬停在截断的工具卡标题、用户消息或会话标题上约 600ms,浮层显示完整内容。 - 功能全面:
/resume按工作目录分类浏览、搜索与预览历史会话(左键恢复、右键弹出操作菜单;可固定常用会话——「已固定」分组置顶显示,行内 ★ 或Ctrl+P切换,持久化到~/.dsh-tui),另有/new、/compact、/export、/btw,模型热切换,原生subagent,会话fork,自动更新,输入框/vimvim 编辑模式、鼠标选区编辑(拖选高亮、Shift+click 扩展、双击选词、Ctrl+C 复制选区)与全屏草稿编辑(Ctrl+Shift+E或输入行⛶按钮:行号 + 当前行高亮、Enter 换行、Ctrl+Enter 发送、滚轮滚动、点击/拖选,长草稿独占整屏;/settings可关);可在vs code中以vscode插件形式启动,已上架 VS Code Marketplace。 - 扩展丰富:原生浏览器交互,compter use等大量附属功能性扩展
- 技能归 DSH 管理:
/skills展示当前 profile、用户与项目发现的技能;dsh-TUI 不预装通用技能。
界面预览
首屏:像素鲸鱼顶栏 |
工作状态行 + 上下文进度条 |
快速开始
前置条件:安装Nodejs与deepseek-harness,注册DEEPSEEK_API_KEY。
安装命令:
npm install -g @deepseek-ai/dsh @deepseek-harness-tui/dsh-tui
启动命令:
# 完整命令
dsh-tui
# 如果你不想按键盘七次
dst
如果你想手动安装,可以使用仓库根目录的 install.sh:
sh install.sh
# 或:dsh plugin --profile dsh-tui add @deepseek-harness-tui/dsh-tui
# 之后 dsh-tui 与 dsh --profile dsh-tui 等价
新用户提示:若
dsh plugin安装时报ERR_PNPM_IGNORED_BUILDS(pnpm ≥11 默认阻止带安装脚本的依赖,如@google/genai、protobufjs——这些脚本运行时不需要,忽略即可),在 profile 的pnpm-workspace.yaml里加入:allowBuilds: '@google/genai': false protobufjs: false
/update与dsh-tui update会自动写入这份配置,无需手工处理。
更面向零基础的安装流程、profile 叠加机制、源码构建与常见问题见安装与快速开始。
插件扩展与开发指南
想为 dsh-TUI 做插件/扩展?欢迎加入生态!
- 接口与兼容性协定 / 插件开发指南:终端交互生态插件准入与开发指南(准入规范、接缝、契约、验证清单)
- 生态组织:dsh-tui-ecosystem(社区插件与模板的家)
- 模板仓库:plugin-template(从模板起步,5 分钟出一个插件)
- 参考实现:
dsh-working-activity(实时工作状态行:TUI 槽位 +activity/status会话事件双出口)
接缝稳定性参考
按当前实现成熟度给出的非正式分级,帮助插件作者评估投入;正式状态与兼容性协定以 准入与开发指南为准:
| 分级 | 接缝 |
|---|---|
| 稳定候选(形态冻结;如有破坏性变更,先在次版本弃用告警再移除) | 六 设置区块 · 八 全屏场景 · 十 托管对话框 · 十一 状态行 · 十二 键盘快捷键 · 十三 条目渲染器 |
| 实验性(仍可能随 dsh-std / 准入规范演进调整) | 九 决策事件 · toast 通知(ctx.tuiToast,新增) |
| 跟随上游(稳定性由 cordis / dsh 官方机制决定) | 一 会话事件 · 二 官方 prompt 槽位 · 三 技能打包 · 四 主题 · 五 system prompt 段 · 七 profile 组合 |
另:@deepseek-harness-tui/dsh-tui/test-utils(headless 准入/挂载测试助手)与
@deepseek-harness-tui/dsh-tui/api(纯类型入口)为实验性公开面。
文档索引
| 主题 | 内容 |
|---|---|
| 安装与快速开始 | 前置条件、安装、启动、profile 生命周期、源码开发 |
| 配置参考 | Cordis 覆盖、配置字段、Agent preset、MCP、环境变量 |
| 主题系统 | 内置主题、自动检测、静态 JSON 与 npm 插件主题、校验规则 |
| 交互与命令 | 快捷键、鼠标、问卷、slash command 与会话工作流 |
| 架构与限制 | 运行链路、渲染与持久化设计、安全边界、已知限制 |
| VS Code 使用指南 | 在 VS Code 集成终端运行 dsh-tui;companion 扩展 dsh-tui-vscode 提供与 Claude Code 官方扩展几乎一致的体验(已上架 Marketplace) |
| 贡献与开发约定 | 贡献流程、仓库地图、构建产物、验证矩阵与修改规则 |
| 插件准入与开发指南 | 接口与兼容性协定 / 插件准入规范 / 插件接缝 / 契约 / 验证清单(已并入 dsh-ecosystem-spec) |
完整的中英文索引见 docs/README.md。
社区
- 生态组织:dsh-tui-ecosystem —— 社区插件、模板与收录列表的家。欢迎来发插件、提创意、互相取暖 🐋
- 社区交流群:使用问题、插件创意、功能许愿,都欢迎进来聊。
| 微信群 | QQ 群(群号 572549239) | 微信四群 |
|---|---|---|
![]() | ![]() | ![]() |
微信群二维码约 7 天过期一次,如遇失效请走 QQ 群(572549239),或开个 issue 提醒我们更新。
权限与安全边界
Windows 安全警告: Windows profile 默认使用
danger-full-access,且 approval 默认是never。这会授予工具不受限制的访问权限;在敏感凭证或不可信仓库环境中启动前,务必先检查并收紧 profile 配置。
dsh-TUI 不实现独立沙箱,而是使用当前 DSH profile 的文件、Shell、sandbox 与 approval 策略。权限预设来自 DSH permissionPresets registry:服务缺失时使用 legacy 三项兼容名册;服务已挂载但为空、损坏或不一致时标记为 unavailable,TUI fail closed,不伪造名册。可用 registry 按声明顺序提供第三方预设,只有符合既有 command-token 语法的 ID 才进入补全,custom 只显示为当前态,不是可选择目标;切换始终走官方 /permission <preset> 命令。若外部 /permission 命令本身未注册,输入沿用现有默认命令/model dispatch。在包含敏感凭证或不可信仓库的环境中启动前,请先检查 profile 配置。
详见权限边界与已知限制。
友情链接
朋友们开发的社区、相关项目与周边工具



