studyinglx/dsh-cli ↗★ 1

dsh-cli-interactive

Interactive terminal (REPL) profile bundle for DeepSeek Harness — a Claude Code-style CLI surface over dsh-base 适合偏好终端交互的用户,需 Node 22、pnpm 与 API 密钥配置。

Package
dsh-cli-interactive
Compatibility
Unverified
Version
0.2.9
License
MIT
Last updated
Aug 17, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:studyinglx/dsh-cli

5. 使用

dsh --profile cli # 进入 REPL dsh --profile cli "先 review 一下代码库" # 先跑一轮,然后进入 REPL


> - `dsh plugin` 首次运行会自动初始化 `cli` profile(bundles 起始为 `[dsh-base]`)。
> - 已安装过旧版本时,先 `dsh plugin --profile cli remove dsh-cli-interactive` 再 add,
>   或重新 add 覆盖(pnpm 会按路径重装)。
> - 拉取到的源码可直接改(lib/、cordis.patch.yml),改完 `node scripts/build.mjs`
>   重建再 add 即生效。

### 方案 B:本地路径 / 发布到 npm

```bash

## 使用

```bash
cd /srv/workspace            # 启动目录 = workspace 根

dsh --profile cli                                    # 进入 REPL
dsh --profile cli "先 review 一下代码库"              # 先跑一轮,然后进入 REPL
dsh --profile cli --once "先 review 一下代码库"        # 跑一轮即退出(脚本友好)
dsh --profile cli --resume session-xxxx              # 恢复旧会话
dsh --profile cli --model deepseek-v4-pro            # 指定模型
dsh-cli --resume session-xxxx                        # 或用包装命令

slash 命令

命令作用
/help命令列表(分组排版)
/sessions列出 $DSH_HOME/sessions 下最近的 20 个会话(递归嵌套布局,id/大小/时间)
/session显示当前会话 id
/workspace显示 workspace 根目录
/model [id]查看 / 切换模型(下一轮生效;如 deepseek-v4-flash、deepseek-v4-pro)
/permission [ask|never]查看 / 切换审批策略(写会话日志,模型会看到通知)
/cancel取消正在运行的轮次
/exit /quit退出(会话已持久化)

长任务 / 值守

agent 一轮内部会自主多轮调用工具直到停稳(whenIdle()),所以单条消息可以持续 几分钟到几小时;进程被杀则中断(会话日志保留,--resume 可续)。用 tmux 保活:

tmux new -s dsh 'cd /srv/workspace && dsh --profile cli'