dsh-cli-interactive
交互式终端 REPL 配置包,在 dsh-base 上提供类 CLI 界面。 适合偏好终端交互的用户,需 Node 22、pnpm 与 API 密钥配置。
安裝
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:studyinglx/dsh-cli說明文件
閱讀完整 README ↗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'