@fuxi-ailabs/dsh-env-health

中文文档
1.2.1发布于 2026/11/09UNLICENSEDES Module零依赖近 30 天下载 2656

Config-driven DSH environment checks and shared managed runtime provisioning

原始使用文档
文档目录8 节
  1. Runtime Provisioner
  2. 可选扫描器安装
  3. Aguara
  4. Skill Scanner
  5. 检查规则
  6. 配置
  7. 在插件配置页使用
  8. 接口

@fuxi-ailabs/dsh-env-health

DSH 的配置驱动环境检查插件。根据 plugins 中声明的插件名,自动推导并检查其所需的命令、宿主服务、凭据和外部运行环境。

它同时提供统一的 Runtime Provisioner,供 Insight、Audit、Static Check 和 Eval 复用。

Runtime Provisioner

environmentHealth 服务提供以下方法:

  • resolveRuntime('sift' | 'insight'):解析已有命令或返回确定性的托管路径。
  • ensureRuntime('sift' | 'insight', overrides?, onPhase?):检查并按需安装。
  • getRuntimeState('sift' | 'insight'):读取当前安装阶段。

安装任务按 runtime + version + installRoot 去重:

  • 同一进程内复用同一个 Promise;
  • 跨进程使用 install.lock;
  • 获得锁后再次检测,避免重复安装;
  • 安装状态写入 state.json,日志写入 install.log。

默认目录:

~/.dsh-sift/runtime/2.6.0-dev.558d146/
~/.dsh-insight/runtime/0.2.41/

可选扫描器安装

aguara 和 skill-scanner 是 Static Check 的可选外部扫描器。环境检查项的“安装步骤”会显示以下命令。

Aguara

```bash curl -fsSL https://raw.githubusercontent.com/garagon/aguara/v0.28.0/install.sh
| VERSION=v0.28.0 sh

或

brew install garagon/tap/aguara

aguara version ```

默认安装到 ~/.local/bin,必要时加入 PATH。

Skill Scanner

```bash node --version npm install -g skill-scanner command -v skill-scanner skill-scanner --help ```

Skill Scanner 需要 Node.js 18+。

检查规则

插件自动检查
dsh-provider-authproviderAuth 服务和凭据配置
dsh-observeInsight CLI/服务,以及可选的 providerAuth
dsh-observe-ux无额外依赖
dsh-scoreInsight CLI/服务,以及可选的 providerAuth
dsh-score-ux无额外依赖
dsh-auditsift、siftAudit,以及可选的 providerAuth
dsh-audit-uxsiftAudit
dsh-audit-flyoutsiftAudit
dsh-eval-suitesift、evalSuite,以及可选的 providerAuth
dsh-eval-uxevalSuite
dsh-static-checksift、staticCheck、可选的 aguara / skill-scanner / providerAuth
dsh-gateway当前无外部依赖

也接受 @fuxi-ailabs/dsh-observe-bundle、@fuxi-ailabs/dsh-score-bundle、observe、score 等常用别名。

配置

- id: dsh-env-health
  name: '@fuxi-ailabs/dsh-env-health'
  config:
    plugins:
      - dsh-provider-auth
      - dsh-observe
      - dsh-score
      - dsh-audit
      - dsh-eval-suite
      - dsh-static-check
    siftBin: sift
    insightBin: /absolute/path/to/insight-cli
    insightBase: http://127.0.0.1:21025
    aguaraBin: aguara
    skillScannerBin: skill-scanner
    runtimes:
      sift:
        version: 2.6.0-dev.558d146
        installRoot: ~/.dsh-sift/runtime
      insight:
        packageName: context-insight
        version: 0.2.41
        installRoot: ~/.dsh-insight/runtime

未配置插件时使用内置默认集合。配置了插件后,只检查这些插件所对应的依赖。

在插件配置页使用

dsh-env-health 不再占用左侧主面板。它通过插件管理页的公开 slot 把检查嵌入对应插件配置页:

  • plugins.bundle.config:Bundle 详情配置区
  • plugins.row.config:Bundle 内组件配置区
  • plugins.detail.actions:详情页“环境检查”按钮
  • plugins.detail.badge:环境状态标签

Insight 页面会过滤为:

Insight CLI/服务
providerAuth

接口

  • service: environmentHealth
  • resolveRuntime(runtime, overrides?)
  • ensureRuntime(runtime, overrides?, onPhase?)
  • getRuntimeState(runtime)
  • GET /api/dsh-env-health/report
  • GET /api/dsh-env-health/report?plugin=dsh-observe
  • POST /api/dsh-env-health/report,body 为 {"action":"insight-start"} 或 {"action":"insight-stop"}

检查不会修改插件配置。只有 Insight 的启动/停止操作会控制 Insight 实例。

版本与发布记录

@fuxi-ailabs/dsh-env-health 共发布 12 个版本,首次发布于 2026/10/27;过去 12 个月发布了 12 个版本。

版本发布日期距今
1.2.1latest2026/11/096 天前
1.2.02026/11/0411 天前
1.1.22026/10/3115 天前
1.1.12026/10/3115 天前
1.1.02026/10/3016 天前
1.0.52026/10/2818 天前

关于 @fuxi-ailabs/dsh-env-health 的常见问题

@fuxi-ailabs/dsh-env-health 是什么?

Config-driven DSH environment checks and shared managed runtime provisioning

如何安装 @fuxi-ailabs/dsh-env-health?

在项目目录运行 npm install @fuxi-ailabs/dsh-env-health,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@deepseek-ai/cordis(~4.0.5)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fuxi-ailabs/dsh-env-health 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/fuxi-ailabs__dsh-env-health 是否存在。

@fuxi-ailabs/dsh-env-health 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@fuxi-ailabs/dsh-env-health 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@fuxi-ailabs/dsh-env-health 可以商用吗?

@fuxi-ailabs/dsh-env-health 使用 UNLICENSED 许可。作者声明为 UNLICENSED,即不授予公开使用许可(与公共领域的 Unlicense 不同)。使用前需获得作者授权。以上为概括,不构成法律意见,请以许可原文为准。

@fuxi-ailabs/dsh-env-health 的下载量有多少?

根据 npm 官方下载统计,@fuxi-ailabs/dsh-env-health 在 2026/10/16 – 2026/11/14 这 30 天内被下载 2,656 次,日均约 89 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fuxi-ailabs/dsh-env-health 还在维护吗?

最新版本 1.2.1 发布于 2026/11/09(6 天前);至今共发布 12 个版本,其中过去 12 个月发布了 12 个;首次发布于 2026/10/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。