前言¶
DeepSeek Harness (DSH) 是一個用於構建和調試智能體的框架。在進行長時間交互或調試會話時,默認的配置往往難以滿足對流式輸出、會話歷史回溯以及工具調用的可視化需求。dsh-cli 是由 askdkc 維護的 DSH 插件,它提供了一個基於終端的交互式用戶界面(TUI),旨在讓開發者能夠更直觀地管理會話、查看工作狀態以及調試代理行爲。
核心功能¶
dsh-cli 提供了以下核心能力:
- 可視化交互與展示:支持流式 Markdown 渲染、工具調用卡片、圖片、Mermaid 圖表和鍵盤補全。界面包含像素鯨魚動畫、實時工作狀態、上下文欄、TPS 儀表盤以及可點擊的時間軸。
- 會話管理:支持會話的恢復、分叉、重放、後臺運行以及導出。
- 生態集成:支持 DSH 預設、技能、MCP、目標、子代理、提供者認證和擴展。
- 多模型認證:支持 OpenAI、Claude、OpenCode、OpenRouter、Hermes Agent 和 Infron 的認證。
- 性能優化:針對長會話提供虛擬化渲染和有界緩存,防止內存溢出。
- 代碼分析:支持可選的作用域代碼分析(需通過單獨的 LSP 提供商配置)。
安裝與啓用¶
安裝該插件需要滿足以下環境條件:Node.js >= 22.19.0、pnpm 11、本地 DeepSeek Harness 源碼檢出,以及 DEEPSEEK_API_KEY。
安裝步驟如下:
- 克隆源碼並初始化子模塊:
git clone --recurse-submodules https://github.com/askdkc/dsh-cli.git
cd dsh-cli
pnpm install --frozen-lockfile
pnpm build
- 打包插件文件:
node scripts/with-publish-manifest.mjs npm pack --ignore-scripts
TARBALL="$PWD/askdkc-dsh-cli-$(node -p "require('./package.json').version").tgz"
- 在 DeepSeek Harness 源碼目錄中安裝插件:
cd ~/DIR/TO/deepseek-harness
pnpm dsh plugin --profile dsh-cli add "@askdkc/dsh-cli@file:${TARBALL}"
- 啓動 Harness。首次啓動會在交互式界面中註冊
dsh-cli命令。之後從項目目錄運行dsh --profile dsh-cli即可進入 UI。
若需覆蓋默認保存的路徑,可設置環境變量 DSH_CLI_DSH_ROOT。插件更新時,建議重新執行打包和安裝步驟,使用 file: 依賴形式以確保路徑有效。
典型用法¶
- 基礎操作:
Enter:發送請求。Tab:鍵盤補全。Ctrl+Enter:中斷當前操作併發送。Esc(雙擊):重放會話歷史。
- 命令:
/resume:打開會話管理器。/auth:連接提供者。/model:選擇模型。/bg:保持會話在後臺運行。
- 模型選擇器:
/model seek deep:搜索模型。Ctrl+F:收藏模型。Ctrl+A:連接提供者。
- 數據遷移:
使用dsh-cli migrate命令可以導入 Claude Code、Codex、OMP、zcode 或 Grok Build 的歷史對話記錄。
適用場景與注意¶
- 適用場景:適合需要在終端中直接進行可視化交互、管理長會話上下文、集成代碼分析功能的開發者。
- 注意:插件當前處於 Public beta 狀態。安裝前需確認本地已檢出 DeepSeek Harness 源碼。由於依賴本地文件,更新時需注意路徑管理。
結語¶
dsh-cli 通過終端 UI 封裝了 DSH 的核心交互流程,提供了從會話管理到可視化調試的完整工具鏈。更多細節可參考項目目錄頁或源碼倉庫。