前言¶
DSH 生态强调「一切皆插件」。如果日常已经在用 dsh CLI 跑智能体,缺的往往不是后端能力,而是一个能在终端里直接读、改、续跑会话的交互层。DASH(Deepseek Agentic Service Harness)就是这类插件:它是 songqikong 维护的终端 TUI,把官方 dsh CLI 的 agent kernel 包成 oh-my-pi 风格的终端界面,并可以通过 dsh --profile dash 启动。
这是什么¶
DASH 是一个 dsh 终端 TUI 插件,仓库地址为 https://github.com/songqikong/dash,许可证为 MIT。
它不重新实现 DSH 内核,而是在 DSH agent kernel 上创建真实 agent:
- 通过
ctx.agents.create()创建 agent - 通过
agent.followup()推进回合 - 通过
agent.cancel()打断生成 - 渲染 streaming
session/event流
工具调用、reasoning、session persistence、compaction 和 agent presets 都走 DSH 官方服务。UI 使用 zero-dependency raw-ANSI terminal rendering,不使用 React/Ink。
核心功能¶
终端编辑与输入¶
DASH 提供接近 oh-my-pi 的编辑体验:
- 多行输入
- kill-ring
- undo
- char jump
- 外部编辑器往返
@文件补全
快捷键可以在 ~/.dash/keybindings.yml 中重映射,输入 /hotkeys 可以查看当前绑定。
流式转录¶
DASH 使用 Markdown streaming transcript,支持:
- reasoning folding
- tool cards
状态栏¶
状态栏会显示:
- model
- preset
- thinking effort
- tokens
- activity
- queue
- TPS sparkline
- cache hit
- context-window indicator
- git branch
- cwd
- session title
模型角色系统¶
DASH 提供四个模型角色:
- default
- smol
- plan
- task
角色值支持 provider/model:effort 后缀,并持久化到 ~/.dash/config.yml 的 modelRoles。
常用操作:
Alt+M:打开 model pickerCtrl+P:切换当前角色的 modelAlt+P:临时替换 modelShift+Tab:切换 thinking effort
会话工作流¶
会话管理支持:
/resume/rename/new- persistence
- autoResume
- 双 Esc time-rewind
会话持久化路径为 ~/.dsh/sessions。autoResume 可以在启动时恢复最近会话。双 Esc 会进入 time-rewind,把某条消息退回编辑器,修改后重发。
官方 DSH agent presets¶
DASH 可以直接使用 DSH 的四个官方 agent preset:
- Standard
- PTC
- Minimal
- Creative
可以通过 /preset picker 切换,也可以通过设置中的 «Session mode» 切换。
设置面板与欢迎页¶
/settings 会打开 omp-style settings panel,包含:
- appearance
- model
- interaction
- session
启动后还会看到 splash welcome screen,展示:
- DASH wordmark
- model/provider
- tips
- 当前 agent preset
- recent sessions
Agent Hub¶
Alt+A 或 /hub 可以打开 subagent tree,支持:
- 过滤
- 查看详情
- followup
- interrupt
在 subagent tree 中:
s:给子智能体发送 followupx:打断子智能体
Advisor¶
/advisor on 可以启用第二个模型旁听。启用后,每个回合结束后,第二个模型会在主转录中追加一条评论。
TTSR¶
TTSR 通过 ~/.dash/rules.yml 配置,形式是 regex 到 prompt 的映射。当流式输出命中规则时,DASH 会注入对应 prompt。
命令、skills 与项目说明¶
DASH 接入 DSH command registry、skills 和项目说明:
/plan、/goal、/compact:转发到 DSH command registry/skills:列出可用 skills/init:注入AGENTS.md/CLAUDE.mdinstructions/think、/focus:注入 reasoning/focus steers
输入 / 会打开命令菜单,并支持 Tab 补全。例如输入 /models 后按 Tab 补全 provider,再按 Tab 补全 model。
安装与启用¶
先确认 Node 版本满足 >=22.19,然后安装官方 dsh CLI:
npm install -g @deepseek-ai/dsh
再安装 DASH:
git clone https://github.com/songqikong/dash.git
cd dash
npm install
sh install.sh
dash
sh install.sh 会创建:
~/.dsh/profiles/dash~/.local/bin/dash
启动 dash 后,等价于运行:
dsh --profile dash
LLM provider 配置复用 $DSH_HOME/settings.yaml。如果需要用环境变量覆盖默认 model,可以使用 DASH_PROVIDER 和 DASH_MODEL。
典型用法¶
下面是启动后比较常用的操作:
- 发送与排队
Enter:发送Ctrl+Enter/Ctrl+Q:排队 follow-upEsc/Ctrl+C:打断生成
- 切换模型
Alt+M:打开 model pickerCtrl+P:循环当前角色模型Alt+P:临时替换模型Shift+Tab:切换 thinking effort
- 管理会话
/resume
/rename
/new
- 打开设置
/settings
- 查看 subagent
Alt+A
/hub
- 启用 Advisor
/advisor on
- 配置 TTSR
编辑:
~/.dash/rules.yml
- 查看 skills 与注入项目说明
/skills
/init
/think
/focus
适用场景与注意¶
DASH 适合已经在用 dsh CLI 的开发者,尤其是希望在终端里同时处理:
- 多模型角色
- 会话恢复与时间回溯
- 官方 agent presets
- subagent 管理
- rules、skills、项目说明
- oh-my-pi 风格编辑体验
使用前注意:
- DASH 以当前
dsh进程权限运行 - 安装前应检查源码与许可证
- 本插件许可证为 MIT
- 社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不要把它理解成官方应用商店
结尾¶
DASH 的重点不是另起一套智能体后端,而是把 DSH 的官方 agent、session、preset、command registry 和 streaming 能力放进一个终端 TUI 里。如果你希望在日常终端中使用更接近 oh-my-pi 的交互习惯,可以从仓库源码开始审查,再决定是否启用。
GitHub:https://github.com/songqikong/dash