dsh-rtk:DeepSeek Harness 插件,将 Shell 命令输出交给 RTK 压缩

在 DeepSeek Harness (DSH) 的开发流程中,Agent 执行 Shell 命令产生的输出往往包含大量冗余信息,这会增加 Token 消耗并占用上下文。dsh-rtk 是一个社区维护的 DSH 插件,它利用本地的 RTK 工具在命令输出进入模型上下文之前进行压缩重写。

插件定位与核心功能

dsh-rtk 是一个由 robbin810130 维护的社区项目(非 DeepSeek AI 官方项目)。它的核心作用是在系统启动时将 shell 命令交给本机安装的 RTK 重写,从而压缩输出内容。

该插件具备以下核心能力:
* 命令重写与压缩:将 shell 命令交给 RTK 处理,在输出进入上下文前进行压缩。
* 多平台支持:支持 macOS (arm64/x64)、Linux (x64/arm64) 和 Windows (x64)。
* 多 Shell 工具支持:支持 POSIX (bash) 和 PowerShell (pwsh)。
* 会话内自检:提供 /rtk、/rtk recheck、/rtk doctor、/rtk gain 等命令,无需退出即可检查状态或统计 Token 节省。
* 配置与控制:支持 autoDiscover、bin、timeoutMs、verbose、statusFile 等配置项,以及 RTK_BIN、DSH_RTK_DISABLE 等环境变量控制。

安装与启用

安装此插件前,必须先确保本地已安装 RTK 二进制文件,插件不包含 RTK 本体。

1. 安装 RTK 二进制

根据你的系统选择安装方式。例如在 macOS 或 Linux 上:

brew install rtk
rtk --version

2. 安装 DSH 插件

使用 DSH 官方命令安装插件到当前使用的 profile(例如桌面版通常是 desktop):

dsh plugin --profile desktop add github:robbin810130/dsh-rtk#v1.5.0

3. 重启 DSH

安装完成后,必须完全退出并重新打开 DSH 才能加载插件配置。

4. 验证生效

在任意会话中输入以下命令检查状态:

/rtk

如果看到「状态:已生效」即可确认插件正常工作。

配置与使用

会话内命令

插件提供了一套会话内命令用于自检和查看统计:
* 检查当前状态:/rtk 或 /rtk status
* 丢弃缓存重新探测:/rtk recheck(刚安装 RTK 且不想重启 DSH 时使用)
* 运行完整自检:/rtk doctor
* 查看 Token 节省统计:/rtk gain

环境变量配置

  • 显式指定 RTK 路径:
    • macOS/Linux: export RTK_BIN=/absolute/path/to/rtk
  • 跳过改写:
    • POSIX Shell: DSH_RTK_DISABLE=1 <命令>
    • PowerShell: $env:DSH_RTK_DISABLE='1'; <命令>

配置文件

在 profile 的 cordis.patch.yml 中可以覆盖默认配置:

- id: dsh-rtk
  config:
    autoDiscover: true
    bin: /opt/homebrew/bin/rtk
    timeoutMs: 3000
    verbose: false
    statusFile: true

注意事项与故障排查

  • RTK 二进制依赖:插件不包含 RTK 二进制,必须单独安装。
  • Windows 特性:Windows 只接受 .exe 文件,拒绝 .cmd/.bat 文件(出于安全考虑,拒绝通过 shell 转发命令文本)。
  • 配置生效:配置项和环境变量的修改需要完全退出并重新打开 DSH 才能生效。
  • 环境变量差异:
    • macOS/Linux 读取登录 shell 环境(如 ~/.zshrc)。
    • Windows 读取注册表用户环境变量,不读取 shell 配置(如 $PROFILE)。
  • 旧版本兼容性:1.0.x 版本会修改宿主源码,升级到 1.1.0+ 后不再修改宿主源码,升级前请确认备份。

总结

dsh-rtk 通过引入本地的 RTK 工具,在 DSH 的 Shell 命令输出层提供了压缩能力,有助于降低 Token 消耗。它通过 /rtk 系列命令提供了完善的会内诊断和统计功能,适合需要在 DSH 环境中优化命令输出长度的开发者使用。

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

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

小夜