T-Auto/dsh-ops ↗★ 75

dsh-ops

Provides bash, PowerShell 7, and a suite of high-performance tools written in Rust for Windows DSH to enhance token efficiency 适合Windows桌面端、需要执行高性能本地命令和提升Token效率的用户。

Package
dsh-ops
Compatibility
Unverified
Cordis peer range
^4.0.4
Version
0.2.6
License
NOASSERTION
Last updated
Oct 10, 2026

Other repositories with this package name

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:T-Auto/dsh-ops

配置方式与工具列表

在 DSH 的配置编辑器中找到对应的 dsh-ops/shell、dsh-ops/file 或 dsh-ops/background 行,调整 config 后保存;未知配置键会点名报错。也可直接在市场切换组件。主要配置:

config:
  # background component only; its market row is disabled by default
  enableShellTools: true
  publishBashTool: true
  promptPolicy: true
  toolCallTimeoutMs: 300000
  required: false
  shellPolicy: advise
  allowSystemShellFallback: false
  # Managed update metadata; do not remove after the first startup self-check
  # configUpdateVersion: 1
  # binaryPath: 'C:\tools\fastctx.exe'
  # bashPath: 'C:\tools\bash.exe'
  • enableShellTools:后台组件的部署开关,开启仍须会话 danger-full-access 才发布四个后台工具;文件组件不发布命令工具。
  • publishBashTool:是否发布 ops_bash,同样要求完全权限和宿主 subprocess 服务。
  • promptPolicy:是否注入该组件的运行时说明;可用 extraGuidance 追加指导。
  • toolCallTimeoutMs:FastCtx RPC 等待超时,不代表服务端工作已终止。
  • required:运行时不可用时是否拒绝激活。
  • shellPolicy:默认 advise;deny-host-shell 拒绝 deniedHostTools 列表中的宿主 shell(默认 [pwsh, bash, pwsh_persistent])。这也会禁用第三层 pwsh,谨慎开启。
  • allowSystemShellFallback:默认 false,随包/已 provision 的 bash 缺失时不探测系统 PATH 或常见安装目录;后台组件也不绕过此选择调用 FastCtx 的自动探测。只有显式设 true 才使用未固定摘要的系统 bash,请自行信任与维护该执行器。显式 bashPath 是另一种操作者选择,并非自动回退。首次升级启动的迁移见下方“更新配置修改区”。
  • shellPolicy 与此开关独立:deny-host-shell 遮蔽/拒绝宿主工具;禁止系统回退只约束插件自己的 bash 解析,不关闭宿主 pwsh,也不提供文件系统沙箱。
  • binaryPath / bashPath:可选显式路径;不可用时报错,不悄悄换执行器。一般无需配置。
工具用途完全权限要求
ops_inspect_local_file批量文本范围、编码、PDF 文本、hex无命令权限门¹
ops_grepRust 正则搜索、多文件过滤、计数/摘要无命令权限门¹
ops_glob多模式找路径,支持排除无命令权限门¹
ops_replace跨文件批量替换;精确编辑仍用宿主 edit无命令权限门¹
ops_bash优先的通用 bash 命令执行器是
ops_run_background启动后台任务是
ops_job_output / ops_job_list / ops_job_kill查看、列出、停止当前会话启动的任务是
宿主 pwsh使用随包 PowerShell 7 的 Windows 原生操作沿用宿主策略

¹ 文件工具不是宿主文件系统沙箱。 它们未接入 DSH 的受限文件后端,尤其 ops_replace 没有 workspace confinement。不要把该插件提供的部分工具视为不可信受任限环境的安全方案。

更新配置修改区

lib/config-updates.js 集中维护一次性配置迁移。0.2.5 首次启动时逐个自有配置行执行自检:

  • 未完成迁移(无 configUpdateVersion 或值为 0):把旧 allowSystemShellFallback: true 改为 false,在任何执行器解析/工具发布前生效。
  • 通过官方 loader 的配置生命周期写回该行,并加入 configUpdateVersion: 1;保留其它字段,不修改外来插件、PATH 或全局配置。未启用的组件在它首次启动时迁移。
  • 完成后重启/热加载不再覆盖;你之后主动改回 true 会被保留。不要删除迁移标记,否则会重新自检。
  • 没有 loader 配置行时只应用本次运行的安全值并告警;写入失败由迁移/loader 日志报告,未落盘的标记不能保证跨重启一次性。