dsh-deploy-manager

September 12, 2026 · View on GitHub

DeepSeek Harness 部署管理插件(离线版):不连接任何真实部署平台,把「部署」做成纯配置塑形——根据应用与环境生成有序的、带审批门限的发布计划;生成规范的部署配置(YAML);并对 YAML / JSON 部署配置做语法与结构校验。所有工具均为纯函数,不发起网络请求、不执行子进程、不读写文件。

安装

npx -y @deepseek-ai/dsh plugin --profile web add @qingshanjiluo/dsh-deploy-manager

工具

工具名描述参数
deploy_plan按配置提供商(Config.provider)为 app + env 生成有序发布步骤:preflight → build →(publish/migrate/backup)→ gate → deploy → verify → post;prod 环境含审批门限与回滚快照app: string(应用名)、env: string(须属于 Config.knownEnvs
deploy_generate_config生成可通过 deploy_validate_config 校验的规范部署配置 YAML(含 build/resources/ports/healthCheck/envVars,staging 与 prod 附带 migrate 钩子)app: stringprovider: string(vercel / netlify / railway / docker / kubernetes / static)、env?: string(dev / staging / prod,默认 staging)
deploy_validate_config校验一段部署配置文本(自动识别 YAML 或 JSON):语法错误带行号、结构错误带字段路径;对未知键、疑似明文密钥、prod 缺少渐进式发布策略给出警告content: string(完整配置文本)

配置校验规则摘要

  • 必填:app(非空字符串)、provider(受支持列表之一)。
  • 可选:envstrategy(recreate / rolling / canary / blue-green)、build.commandresources.{replicas,memoryMB,cpu}ports(1–65535 整数列表)、healthCheck.{path,intervalSeconds}envVars(标量键值,疑似明文密钥告警)、volumes.{source,target}hooks.*
  • YAML 子集解析:缩进映射 / 序列、引号与纯量、行内注释、| / > 块标量、flow 集合 [...] / {...};缩进用 Tab、重复键等会报出行号。

配置

配置项类型默认值说明
providerstringdockerdeploy_plan 使用的命令模板提供商;未知提供商回退到通用脚本步骤并给出警告
knownEnvsstring[][dev, staging, prod]deploy_plan 接受的环境列表

配置通过 cordis.patch.yml 注入,可按 profile 覆盖,例如把 provider 改为 kubernetes

开发与验证

npm install --no-audit --no-fund
npx tsc --noEmit
npm run build
npx vitest run
node scripts/load-smoke.mjs

License

MIT