DjangoAILab/dsh-plugins--plugins-manual-ops-ssh-manager ↗★ 1

ops-ssh-manager

运维管理插件:主机与密钥管理及 SSH 执行工具 适合需通过 SSH 管理远程主机的运维用户,支持严格审批模式。

套件
ops-ssh-manager
相容性
待驗證
Harness 依賴範圍
0.1.0-rc.7
Cordis 依賴範圍
4.0.1
版本
0.1.2
授權
MIT
最近更新
2026年9月1日

安裝

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:DjangoAILab/dsh-plugins#18ae7e5df085d28e7a573d1e3ef0286bda1ea793&path:plugins/manual/ops-ssh-manager

2.2 配置(全部可选,见 cordis.patch.yml)

ops-ssh-manager:
  dataDir: ''     # 留空 = $DSH_HOME/ops-ssh-manager
  auditLog: ''    # 留空 = /audit.jsonl

2.3 使用

  1. 打开「设置 → 插件 → 运维 SSH 管理」:先「导入私钥」;再「新增主机」(填代号/地址/用户/认证方式/审查等级), 点「测试连接并获取指纹」→「保存主机」。
  2. 在会话里让模型先调 ssh_list_hosts(返回 sudo 模式),再 ssh_exec(code=…, command=…); 需要 root 时传 elevate: true(命令本体不带 sudo)。提权走两阶段协议:免密机器直接执行, 密码机器由插件注入登记的 sudo 密码(单次尝试,绝不重试)。
  3. 把某主机 review 设为 strict 后,所有命令都会弹审批(允许一次 / 本 session 允许 / 拒绝); 提权请求即使主机是 normal 也会单独弹提权审批,两种「本 session 允许」相互独立。
  4. 存量数据迁移(v1 → v2,一次性):node scripts/migrate-roster-v2.mjs(dataDir 留空即默认 $DSH_HOME/ops-ssh-manager),然后重启 DSH。