dsh-ops-linux:面向 Linux/ARM64 的 dsh-ops 自维护分支

前言

DSH 的官方工具在 Native 模式下返回内容往往较长,容易触发报错循环,调用轮次上去后 token 成本并不低;PTC 模式下让模型手写 TypeScript 也有同样的问题。社区里有一类插件不改变 DSH 的插件模型,而是替换一些内置工具、减掉可省的开销,dsh-ops-linux 就是其中针对 Linux/ARM64 的一个分支。

下面介绍这个插件。它是 SunsetRNE/dsh-ops-Linux 仓库,由维护者 SunsetRNE 维护,在社区插件目录 SkillHub 中归类为「客户端」分类,目录页显示星标为 0(该仓库当前几乎无关注度)。它是 T-Auto/dsh-ops 的自维护分支,目标平台是 Linux/ARM64(含 Android),适配 DSH 0.2.2。与上游的差别是平台适配和构建步骤,README 中有 PORT.en.md 记录移植改动与编译方式。

它解决什么问题

上游 dsh-ops 的定位是「提高 token 效率,同时隐藏部分官方工具」,改动面小、侵入性低,与其它插件兼容较广。具体手段有四类:

  1. 用紧凑、带行号、错误回馈更好的工具替换官方 read/glob/grep,减少 Native 模式的报错循环。
  2. 为 PTC 模式提供返回结构化 JSON 的工具,降低模型手写 TypeScript 的 token 量和心智负担。
  3. 启用 DSH 预留的 tools_addition 动态工具加载,把 pdf/word 读取、超多文件批量修改等高级功能做成按需暴露的工具,避免一次性塞进系统提示词。
  4. 提供渐进工具面:discovery 行启用的会话始终拿到动态加载入口,其余用户按需开启,降低提示词膨胀。

核心功能

插件以「模式行」组织能力,当前 bundle 共八行:mode-minimal、mode-standard、mode-ptc、mode-cordis、discovery、compat、panel、tui。

1、四个预设模式行分别增强内置的 Minimal / Standard / PTC / Cordis preset:Standard 与 Cordis 替换官方 read/glob/grep;PTC 提供类型化 SDK,PTC SDK 目录包含 18 个 API,其中 15 个是文件/文档工具,另外 3 个是批处理、结果引用和加载器;Minimal 只替换 Windows shell。
2、discovery 行启用的会话始终获得动态加载入口,用于后续按需加载高级功能。
3、compat 模式默认关闭,开启后保留全部官方工具,适合要从官方工具迁移或共存的场景。
4、panel 与 tui 中,tui 提供只读 OPS 侧栏:聚焦后可用 f 筛选、n/p 翻页、a 确认跨会话提醒;侧栏不抢焦点,不发起额外工具调用。

需要注意的是,ops_bash(与 dsh 原生 bash 行为一致)只在 Windows 提供,Linux/ARM64 上不适用。

安装与启用

本分支没有发布到 npm,安装命令来自仓库 README:

dsh plugin --profile web add <tarball or this checkout>

即用本地 tarball 或仓库 checkout 直接添加。需要先确认本机 DSH CLI 可用,且目标 profile 已初始化。

如果你用的是上游 npm 上的 dsh-ops(面向 Windows / Linux x64 / macOS),官方安装方式有两种。

第一种是通过插件市场。在目标 DSH 应用的插件市场中输入包名 dsh-ops,选择自定义 npm 地址 https://mirrors.huaweicloud.com/repository/npm/,安装后启用。README 特别说明目前不推荐用 npmmirror,存在 bug。

第二种是 npx 一键安装,必须显式指定目标 profile:

npx --yes dsh-ops@latest install --profile desktop
npx --yes dsh-ops@latest install --profile web
npx --yes dsh-ops@latest install --profile tui

tui 映射到 dsh-TUI 产品的 dsh-tui profile,不是旧的 tui 目录。安装前先初始化目标应用;桌面端必须使用桌面应用自带的 CLI,默认探测路径是 %LOCALAPPDATA%\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd,装在其它位置要加 --dsh-cli "<安装目录>\resources\runtime\cli\bin\dsh.cmd"。

也可以直接用官方 CLI:

dsh plugin --profile web add dsh-ops
dsh plugin --profile dsh-tui add dsh-ops
"<桌面安装目录>\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add dsh-ops

普通 DSH CLI 不能管理保留的 desktop profile,这一点不要混用。

安装前可以用 --dry-run 预演:

npx --yes dsh-ops@latest install --profile web --dry-run

预演只打印计划,不启动 CLI、不修改 profile,做的是 CLI 路径解析、文件存在性、POSIX 执行权限等静态检查。

查看状态和卸载:

npx --yes dsh-ops@latest status --profile desktop
npx --yes dsh-ops@latest uninstall --profile desktop

把 desktop 换成 web 或 tui 即可。

典型用法

装好之后,按目标场景选择模式行。以 Standard 为例,开启 mode-standard 后官方 read/glob/grep 被替换;需要按需加载高级功能时,同时开启 discovery,让会话始终拿到动态加载入口;不想改动官方工具行为时,把 compat 打开,保留全部官方工具。

在 dsh-TUI 中启用 dsh-ops/tui 行并重启,即可看到 OPS 只读侧栏。

适用场景与注意事项

适合在 Linux/ARM64(含 Android)上跑 DSH、希望压低 token 消耗、同时不想大改现有插件配置的用户。上游 Windows 用户想试这套工具面也可以直接用 npm 上的 dsh-ops。

几点需要注意:

  1. 插件以当前 DSH 进程权限运行,安装前应先检查源码与许可证。本仓库源码以 MIT 许可分发(上游 dsh-ops 亦为 MIT);0.3.2 之前的版本曾内置 Apache-2.0 的 FastCtx 源码,该组件现已移除,当前发行版不含 FastCtx 代码或二进制,许可文本与历史归属保留在 licenses/fastctx/ 与 NOTICE。
  2. README 声明的宿主兼容范围是 DSH 0.2.0-rc.2 与 0.2.1-rc.2,而本分支简介写的是适配 DSH 0.2.2。两者存在不一致,安装前请先确认你的 DSH 版本落在哪个范围。
  3. 旧的 shell、file、ptc、hide-official 行已移除,如果之前为它们保存过 profile 覆盖,需要删掉并重新配置模式开关;background 行也已移除,保留该行的 profile 只会记录一条警告。
  4. 这是第三方自维护分支,Star 数为 0,社区关注度低,长期维护和兼容取决于维护者。改动前建议读 PORT.en.md 与上游文档,确认你需要的模式行在目标平台上可用。

结尾

dsh-ops-linux 的价值在于把 dsh-ops 的工具面搬到 Linux/ARM64,同时保留了上游「低改动面、低侵入性、按 profile 组织」的设计。如果你在 Linux/ARM64 上使用 DSH,可以试试这个分支;如果你的环境是 Windows / macOS / Linux x64,直接看上游 T-Auto/dsh-ops 更合适。

目录页:https://www.skillhub.cn/plugins/SunsetRNE/dsh-ops-Linux
GitHub:https://github.com/SunsetRNE/dsh-ops-Linux

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

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

小夜