# @formio/uag-engines 中文文档

规范地址：https://npmcn.com/package/%40formio/uag-engines/

版本：2\.0\.0
npm 元数据更新时间：2026-11-13T11:26:22.340Z
中文译文更新时间：2026-11-15T10:51:10.559Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40formio/uag-engines
原文对照：https://npmcn.com/package/%40formio/uag-engines/?lang=original
项目主页：https://github.com/formio/uag#readme
源码仓库：https://github.com/formio/uag

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：29.1 kB，7 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.0\.0
- 运行依赖：4 个
- 首次发布：2026-10-29T17:12:05.664Z
- 最新版本发布：2026-11-13T11:26:21.874Z
- 近 30 天下载量：2079（2026-10-16 至 2026-11-14，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 13 个）

## 中文简介

Form.io Universal Agent Gateway(UAG)在他们自己的流程中,在远程引擎协议后方,主机引擎包,因此模型证书和模型流量都远离了UAG.

## 安装

```sh
npm install @formio/uag-engines
```

也可以使用：`pnpm add @formio/uag-engines`、`yarn add @formio/uag-engines`、`bun add @formio/uag-engines`

## README

# @formio/uag-engines (英语)

[表格.io UAG](https://ai.form.io/developers) › [发动机](https://ai.form.io/developers/engines) › 此页

运行Form.io UAG的引擎包在他们自己的进程,在远程引擎协议后. UAG以内置方式到达他们 `remote` 引擎类型。 型号API密钥和型号流量随后会停留在这个容器内,而UAG则不持有型号证书. 任何引擎包都在这里工作,没有改变.

引擎服务器没有Form.io证书. UAG从不发送一个:每个请求只携带引擎服务器密钥. 对于研究,UAG增加了一个寿命很短的可测值符,而引擎服务器使用它来称呼UAG的 `/mcp`。该令牌只允许任务只读工具,带有呼叫者的身份.

## 运行它

这个 `formio/uag-engines` 图像包括官方引擎 : `jev`, (中文(简体) ), `claude`, (中文(简体) ), `openai`, (中文(简体) ), `grok` 财务报告和审定财务报表 `gemini`。 。 。 .

```yaml
services:
  formio-uag:
    image: formio/uag
    environment:
      UAG_ENGINES: jev:remote,claude:remote
      UAG_ENGINE_JEV_URL: http://uag-engines:3300
      UAG_ENGINE_JEV_KEY: ${UAG_ENGINE_SERVER_KEY}
      UAG_ENGINE_CLAUDE_URL: http://uag-engines:3300
      UAG_ENGINE_CLAUDE_KEY: ${UAG_ENGINE_SERVER_KEY}
      JWT_SECRET: ${JWT_SECRET}            # signs the scoped tokens for research
      # ... PROJECT, keys and the rest of the UAG's settings
    depends_on:
      uag-engines:
        condition: service_healthy

  uag-engines:
    image: formio/uag-engines
    environment:
      UAG_ENGINES: jev,claude
      TYPESAFE_API_KEY: ${TYPESAFE_API_KEY}
      CLAUDE_API_KEY: ${CLAUDE_API_KEY}
      UAG_ENGINE_SERVER_KEY: ${UAG_ENGINE_SERVER_KEY}
      UAG_SERVER: http://formio-uag:3200   # where research calls /mcp
    # No published port: only the UAG, on the same private network, reaches it.
```

在UAG上, `<name>:remote` 是这里托管的实例;默认情况下,它会在引擎服务器上使用同名的引擎(`UAG_ENGINE_<NAME>_ENGINE` 名称另一个)。 任何组合工作 : `UAG_ENGINES=jev,claude:remote` 保留 `jev` 在UAG, 和它的钥匙在那里, 移动只克劳德.

没有多克 : `npm install @formio/uag-engines @formio/uag-claude`运行 `npx uag-engines` 与相同的变量.

## 设置

| 变量 | 含义 | 默认 |
| --- | --- | --- |
| `UAG_ENGINE_SERVER_KEY` | **要求.** 每个请求必须携带的密钥,至少32个字符. 无人机 `remote` 实例作为 `UAG_ENGINE_<NAME>_KEY`。 。 。 . |  |
| `UAG_ENGINES` | 要主机的引擎实例, 如 UAG : `jev,fast:claude,local:openai`至少一个. |  |
| `UAG_ENGINE_<NAME>_<SETTING>` 和每个引擎自己的变量 | 每个实例的设置, 解决在UAG上。 见每个引擎的README,或 [官方发动机](https://ai.form.io/developers/engines#the-official-engines)。 。 。 . |  |
| `UAG_SERVER` | UAG的URL,用于研究. 研究电话到 `${UAG_SERVER}/mcp`,从不从请求中取出URL。 一定是这样 `http` 或者说 `https`没有它,研究摘要就被拒绝. |  |
| `UAG_ENGINE_PATH` | 安装了更多引擎包的绝对目录,例如挂载音量. |  |
| `PORT`, (中文(简体) ), `HOST` | 其所听处. 这个 `formio/uag-engines` 图像集 `HOST=0.0.0.0`。 。 。 . | `3300`, (中文(简体) ), `127.0.0.1` |
| `SHUTDOWN_TIMEOUT` | 在SIGTERM或SIGINT上,在起飞前让飞行中的请求完成多长时间,以毫秒为单位. | `10000` |
| `DEBUG` | `formio:uag:engine-server` 还记录每个引擎故障堆栈。 没有它,每个失败都是stderr上的一行:请求id,路径,以及错误的名称,状态和消息,永远不要请求. |  |

引擎服务器拒绝启动, 打印 `[uag-engines] Failed to start:` 和原因,何时 `UAG_ENGINE_SERVER_KEY` 未设置或短于32个字符,当 `UAG_ENGINES` 无引擎名称, 当 `UAG_SERVER` 不是一个 `http` 或者说 `https` URL,或者当一个引擎无法被加载或创建时(例如缺失的软件包或需要的没有值的设置).

引擎在UAG上解决: `UAG_ENGINES` 被视为 `@formio/uag-<type>`,则 `uag-engine-<type>`从 `node_modules` 和上面的目录,然后从 `<dir>/node_modules` 每个目录在 `UAG_ENGINE_PATH`从工作目录上看, `NODE_PATH` 或节点的全局文件夹.

## 警卫

-   每条路线,包括 `/health`,需求 `Authorization: Bearer <UAG_ENGINE_SERVER_KEY>`。在读取请求体之前,按恒定时间对密钥进行比较.
-   将引擎服务器保留在只有UAG到达的私人网络上,而不发布其端口. 它会在启动时发出警告 当它听到一个公开的演讲.
-   研究只使用请求所要求的工具和UAG的 `/mcp` 范围符号列表。 每一个电话都被记录下来,这个服务器所拨打的电话都是它回报的,不管引擎怎么说. 没有模型可以写出:令牌只允许只读工具.
-   当UAG放弃一个请求(它的路由超时)时,引擎被中止,研究停止(还在连接时),MCP连接关闭.
-   发动机错误只有在发动机标记它们可以安全显示时才传递(`EngineError`; 其它的都报告为"引擎失败(参见引擎服务器日志)". 每一个失败都用一行记录在这里,与错误的訊息:一个提供者SDK的訊息可以给一个账户或一个URL取名,所以将这些日志当作私用.

## 议定书

`GET /health`, (中文(简体) ), `GET /v1/engines`, (中文(简体) ), `POST /v1/engines/:name/decide`, (中文(简体) ), `POST /v1/engines/:name/extract` 财务报告和审定财务报表 `POST /v1/engines/:name/generate` (为生成代理引擎,在所附文档上免费提供文本),所有JSON `protocol: 1` 每一个身体。 见 [`@formio/uag-sdk/protocol`](https://github.com/formio/uag/blob/main/packages/engine-sdk/protocol.js) 用于形状,和 [引擎服务器](https://ai.form.io/developers/engine-server) 详细参考.

决定、提取和生成电话可能携带代理API请求 `X-Request-Id`。引擎服务器发送它与 每一个研究请求 `/mcp` 并把它放入它的日志,所以一个伐木代理可以分组一个运行的每个腿. 只有一个很短的符号(最多128个字母,数字, `.`, (中文(简体) ), `_`, (中文(简体) ), `:` 或者说 `-`)被传递;标题是任意选择的,协议版本不变.

## 构建图像

从寄存器根 :

```
docker build -f packages/engine-server/Dockerfile -t formio/uag-engines .
```

要添加一个引擎包, 要么生成图像( 图像运行于 `node`,所以切换到 `USER root` 页:1 `RUN npm install --prefix /engines uag-engine-acme`,然后回到 `USER node`,与 `ENV UAG_ENGINE_PATH=/engines`),或挂载包含 `node_modules/uag-engine-acme` 并列出在 `UAG_ENGINE_PATH`。 。 。 .

驾照:麻省理工.

## 常见问题

### @formio/uag-engines 是什么？

Form\.io Universal Agent Gateway\(UAG\)在他们自己的流程中,在远程引擎协议后方,主机引擎包,因此模型证书和模型流量都远离了UAG\.

### 如何安装 @formio/uag-engines？

在项目目录运行 npm install @formio/uag-engines，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 uag-engines，可以用 npx uag-engines 直接运行。

### @formio/uag-engines 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/formio\_\_uag-engines 是否存在。

### @formio/uag-engines 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @formio/uag-engines 需要什么版本的 Node\.js？

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

### @formio/uag-engines 可以商用吗？

@formio/uag-engines 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @formio/uag-engines 的下载量有多少？

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

### @formio/uag-engines 还在维护吗？

最新版本 2\.0\.0 发布于 2026/11/13（2 天前）；至今共发布 13 个版本，其中过去 12 个月发布了 13 个；首次发布于 2026/10/30。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

