dsh-cli:DeepSeek Harness 的交互式终端 UI 插件

前言

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。

安装步骤如下:

  1. 克隆源码并初始化子模块:
    git clone --recurse-submodules https://github.com/askdkc/dsh-cli.git
    cd dsh-cli
    pnpm install --frozen-lockfile
    pnpm build
  1. 打包插件文件:
    node scripts/with-publish-manifest.mjs npm pack --ignore-scripts
    TARBALL="$PWD/askdkc-dsh-cli-$(node -p "require('./package.json').version").tgz"
  1. 在 DeepSeek Harness 源码目录中安装插件:
    cd ~/DIR/TO/deepseek-harness
    pnpm dsh plugin --profile dsh-cli add "@askdkc/dsh-cli@file:${TARBALL}"
  1. 启动 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 的核心交互流程,提供了从会话管理到可视化调试的完整工具链。更多细节可参考项目目录页或源码仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye