UNLINEARITY/dsh-code33

dsh-code

DeepSeek Harness CLI core bundle: interactive coding terminal, durable sessions, and model management for dsh --profile cli

AI Analysis

适合习惯在命令行终端(TUI)中进行代码编写、审查及会话管理的用户。

Package
dsh-code
Version
1.0.8
License
MIT
Last updated
Sep 12, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:UNLINEARITY/dsh-code

三、核心功能与使用方式

DSH-Code 的重点是让 DSH 的 Agent、模型、工具和持久会话可以直接在终端中使用,并覆盖从编写代码到审查修改的完整工作流。

1. 会话管理

  • 使用 /new 新建会话,或通过 /resume--continue 恢复已有会话
  • 使用 /fork 从历史节点创建新的工作分支,同时保留原会话
  • 按当前目录、更新时间和会话范围搜索历史记录
  • 使用 Up/Down 召回输入历史(含 / 指令),或通过 /history 搜索过去的提示词与指令
  • 支持持久标题、Markdown 导出、上下文占用、token、缓存、TTFT 和耗时统计
  • 恢复会话时同步恢复该会话使用的 Agent Preset 和模型选择

可搜索的会话恢复选择器

可搜索的提示词历史选择器

2. Agent、模型与扩展

  • 每个会话可以选择独立的 Agent Preset,用于组合工具、提示词、技能、上下文压缩、plan mode 和 subagent 能力
  • 使用 /mode 选择 standardptcminimalcordis 或用户自定义 Preset(旧名称 code 自动映射到 ptc
  • 使用 /model 切换模型,管理 provider、API key、OAuth/设备码登录、endpoint、可用模型和上下文窗口;Tab 进入 provider 管理(已配置供应商置顶分组),任意阶段 Ctrl+C 直接退出整个 /model 流程
  • 在 provider 列表中,Enter 进入统一配置页:同页填写 API key 与 endpoint(留空即官方默认)、编辑已添加模型的上下文/输出窗口,Tab 进入发现页拉取端点真实可用模型并勾选添加
  • 在统一配置页的模型行上按 e 编辑推理档位声明(格式 low:low high:high max:maxfalse 禁用、留空恢复继承),按 c 从其他已声明模型逐字复制——例如 GLM 系列按官方三档写 low:low high:high max:max,新模型(如 gpt-6)可一键复制 gpt-5.6 的映射
  • 在 provider 列表中 l 发起登录,o 经确认后退出登录
  • 自动加载 DSH 中可用的命令与技能;使用 /help 查看入口,使用 /plugin 检查扩展状态
  • 支持 plan、goal、todo、权限、sandbox、subagent 和运行中的补充指令

每会话 Agent Preset 选择器

3. 模型切换动画

模型或 reasoning effort 发生以下变化时,输入框会播放 Wave、Aurora 或 Pulse:

使用场景触发条件动画文字效果档位
官方 DeepSeek 模型切换到该模型,或修改该模型的 reasoning effortdeepseekFlash 使用单波段档位,其他 DeepSeek 模型使用多波段档位
其他模型切换模型或 reasoning effort 后,实际生效的强度严格高于 highInto the Unknown使用与非 Flash DeepSeek 模型相同的多波段档位

高于 high 的等级包括 xhighx-highvery-highmaxmaximumultrahighmediumlowoff 不会为非 DeepSeek 模型触发动画。

样式Flash其他 DeepSeek / Into the Unknown
Wave一个蓝色波峰从左向右扫过,约 1.2 秒两个错开的蓝色波峰依次扫过,并带有 · ✦ ✧ 尾部星光,约 1.5 秒
Aurora两条蓝色光带交错漂移,约 1.5 秒三条不同色调的光带交错漂移,约 1.8 秒
Pulse一个圆环从输入框中心向外扩散,约 1.1 秒两个圆环先后向外扩散,约 1.45 秒

4. 编码工作流

  • 使用 @ 引用工作区文件或已有会话;选择 PNG、JPEG、WebP、GIF 时会自动作为真实图片附件
  • 支持启动 prompt、多个 --image 参数,以及从终端拖入或粘贴附件:图片按图片附件发送,其他文件按原样文件附件发送(单文件 8 MiB、每条消息 8 个以内)
  • 使用 /diff 按文件检查改动,使用 /review 发起只读代码审查
  • 使用 /copy 复制最近一条完整回复,使用 Ctrl+O 查看完整历史和工具详情
  • 支持工具审批、结构化提问、plan review、多选和自定义答案
  • 使用权限 Preset 和 sandbox 控制 Agent 可以执行的操作;任务运行中仍可补充指令或中断

5. 命令与快捷键

启动 TUI:

dsh --profile cli                    # 新建 standard 会话
dsh --profile cli --mode ptc         # 使用指定 Agent Preset 启动(standard/minimal/cordis/ptc)
dsh --profile cli --continue         # 恢复当前目录最新会话
dsh --profile cli --resume abc123    # 按 id 或唯一前缀恢复会话
dsh --profile cli --session my-id    # 使用指定 id 新建会话

进入 TUI 后,可以使用以下内置命令。当前 profile 提供的其他 Harness 命令和用户技能会随安装内容变化,完整列表以 /help 显示为准。

会话与记录

命令用途
/new [preset]创建新会话,可同时指定 Agent Preset
/resume [id|前缀]搜索或恢复已有会话
/resume cancel取消正在等待的会话切换
/fork [event-seq]从最近完成的 turn 或指定事件位置创建分支会话
/delete [id|前缀]删除指定会话及其 subagent 会话
/title 修改当前会话标题
/export [path]将当前会话导出为 Markdown
/history搜索并复用过去提交的提示词与 / 指令
/clear清空当前终端显示,不删除持久会话

Agent、模型与权限

命令用途
/mode [preset]查看或选择当前会话的 Agent Preset
/model切换模型,管理 provider、API key、网页登录、endpoint 和可用模型
/effort调整当前模型的 reasoning effort
/permission [preset]查看或切换权限 Preset
/subagent选择 subagent 执行任务时使用的模型

编码、任务与后台工作

命令用途
/diff [--staged|ref]按文件查看工作区、暂存区或指定 ref 的 Git diff
/review [--staged|ref]使用只读权限审查 Git 改动;新会话中可直接使用,审查提示词作为首条消息建立会话
/todos查看当前会话的完整 todo 列表
/agents查看当前会话创建的 subagent 会话
/jobs查看后台任务及其运行状态
/schedule查看活动提醒(模型经 schedule 工具创建/取消,面板只读展示,逾期优先)
/copy复制最近一条完整助手回复

扩展、显示与退出

命令用途
/plugin [query]查看已加载扩展及其状态
/update一键对齐升级:按目标版本的 peers 锁定宿主 Harness 线,同步升级 dsh-code、全局宿主与 profile 内伴生插件,升级前展示完整计划与拒绝条件,完成后提示重启生效
/statusline选择状态栏显示的项目
/vscode-keys将 Ctrl+R 放行进 VS Code 系终端(幂等写入用户级 keybindings.json)
/theme切换终端配色主题
/animation开关计时动画(shimmer/追逐/闪烁/切换波浪),/animation [on|off]
/help查看快捷键、内置命令、Harness 命令和用户技能
/quit退出 DSH-Code

输入与快捷键

操作用途
Enter提交当前输入
Up / Down召回上一条或下一条输入记录
Tab补全命令、技能或 @ 引用
@引用工作区文件或已有会话;图片文件自动作为附件发送
Ctrl+O查看完整历史与工具详情
Ctrl/Alt+R折叠或展开思考过程;VS Code 系终端先运行 /vscode-keys 放行 Ctrl+R
Shift+Tab循环切换权限 Preset
Delete输入框为空时,取消最新一条排队消息
Ctrl+K删除光标到行尾的内容
Ctrl+U清空当前输入行
Ctrl+A / Ctrl+E移动到当前行开头或结尾
Esc关闭当前菜单或中断正在运行的 turn
Ctrl+C依次用于取消任务、清空输入或退出
Ctrl+D退出 DSH-Code

状态指示

指示触发条件
✻ Deep diving...回合运行中且当前没有内容流出(等待首个输出、工具执行间隙);超过 15 秒追加计时
✻ Thinking…模型思考内容正在流出;默认折叠为动效占位行,Ctrl/Alt+R 展开正文