# @agentvault/grok-bridge 中文文档

规范地址：https://npmcn.com/package/%40agentvault/grok-bridge/

版本：0\.4\.36
npm 元数据更新时间：2026-11-05T14:14:34.835Z
中文译文更新时间：2026-11-06T23:16:37.044Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40agentvault/grok-bridge
原文对照：https://npmcn.com/package/%40agentvault/grok-bridge/?lang=original

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

- 包体积（解压后）：5.3 MB，42 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=18
- 运行依赖：2 个
- 首次发布：2026-08-15T21:27:55.884Z
- 最新版本发布：2026-11-05T14:14:34.631Z
- 近 30 天下载量：2184（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：43（近 12 个月 43 个）

## 中文简介

代理Vault Grok Bridge——守护进程将一个Grok代理连接到E2E加密代理Vault直接消息和房间.

## 安装

```sh
npm install @agentvault/grok-bridge
```

也可以使用：`pnpm add @agentvault/grok-bridge`、`yarn add @agentvault/grok-bridge`、`bun add @agentvault/grok-bridge`

## README

# @agentvault/grok-bridge (英语)

将Grok代理连接到E2E加密的Agent Vault直接消息和房间.

**此软件包是一个单独的实体,来自 `@agentvault/claude-bridge`。 。 。 .** 他们分享 没有运行时间代码 。 唯一的共同依赖是 `@agentvault/agentvault`,则 协议和加密库.

## 使用量

**先决条件:** 安装 Grok 并运行 `grok login`。桥复制 第一次进入沙盒.

### 一个面条(建议)—— `--install`

```sh
npm i -g @agentvault/grok-bridge
AV_AGENT_NAME=<agent> AV_INVITE_TOKEN=<token> agentvault-grok-bridge --install
```

注册代理, 等待您点击 **核准** 在仪表板上安装一个 监督的OS服务(在macOS上启动,在Linux上系统),以及 **输出** 这样啊 您的终端回来 代理幸存 关闭和重启.

三件事值得我们知道:

-   **`npm i -g` 不是可选的.** 服务将运行的切入点烤入 发射装置 下 `npx` 稍后是包缓存包管理器 普鲁斯,所以今天服务会工作 并默默地死去 几个星期后. `--install` 在您单次使用之前, 拒绝在启动时的瞬间进入点 请柬已用完.
-   **`XAI_API_KEY` 服务不会继承.** 主管不读 你的外壳环境。 使用 `grok login`; 桥拒绝安装 没有证书和哑巴的服务.
-   **复行能安隐.** 已经保存了证书, 您可以省略标志 . 如果安装的服务是电流, 它会被重新启动, 而不是重新安装, 所以 安装时烘烤的设置被保存.

### 前景( 无服务)

```sh
AV_AGENT_NAME=<agent> AV_INVITE_TOKEN=<token> npx @agentvault/grok-bridge
```

运行在终端, 当你关闭它。 未更改 `--install`。 。 。 .

### 服务管理

```sh
agentvault-grok-bridge status      # is it loaded?
agentvault-grok-bridge restart     # pick up new credentials / recover
agentvault-grok-bridge uninstall   # remove it
agentvault-grok-bridge logs        # where the logs are
```

使用 `restart`, (中文(简体) ), **永远 `install`**,以重新启动. `install` 重建服务 从您的当前外壳中取出 `PATH`,无声地丢弃环境 在原安装处烤出.

日志转到 `<data-dir>/logs/grok-bridge.error.log` - 桥写给stderr, 这么说 `.error.log` 文件是其中包含的内容.

## 当回复失败时

当一个Grok转弯失败时,桥会首先记录它,然后告诉聊天,然后才重新开始自己. 它从不掉出一个失败的转弯 没有痕迹.

-   **在1:1 与车主**,主人看到一个简单的句子。 当桥能分辨出它是什么时,它就命名了原因. 例如:"Ohtani无法回答这个消息:它的xAI签入已过期. 再次在特工的电脑上签字". 大桥可以分辨出已过期的签入,计费问题,利率限制,账户不能使用的模型,xAI是无法到达的,而Grok CLI太老了无法回答. 目前为止,只有过期的签注被看到现场直播. 当原因不明时,句子只说经纪人无法回答这个消息.
-   **在房间里**因为其他人和特工可以读到 房间只看到特工无法回答这个信息.
-   **无通知** 或1分1分的房主设备没有保证.
-   **在所有情况下**,原因为私人记录的所有人 **卫生,最近的问题**。 。 。 .

每个失败的转会结束此过程, 服务管理器开始一个新的过程 。 这是目的:格罗克CLI没有确认取消,所以旧会话仍然可以发言. 新进程开始一个新的Grok会话. 该桥没有保存格鲁克会话可以恢复,因此没有保存会话可以丢失或修复.

日志每个事件持有一行,只有代码和出站号码. 它从不保存消息文本或提供者错误文本 :

| 日志行 | 这是什么意思 |
| --- | --- |
| `turn_failed code=<code> exit=<n or none>` | 转弯失败 . `exit` 是格罗克CLI在中途死亡时的退出状态,否则 `none`在回合应答时发出通知. |
| `notice sent to <chat>` | 已发出失败通知. |
| `notice_failed code=<code>` 或者说 `reason=timeout` | 未能发出失败通知。 故障仍在健康项下记录. |
| `turn_cancelled reason=shutdown notice=<sent, failed, timeout or none>` | 桥被停止或重新启动(例如在更新时),而这个消息正在被回答或等待转向. 没有什么可以重播的,所以当信息应答时,聊天会得到一句"Ohtani无法回答这个信息". 它从来没有命名一个事业. `queued=true` 标志一个仍在等待的信息 `late=true` 一个在桥停了的时候到达的. `none` 表示该消息未应答. 桥顶等待这些句子的时间最多为10秒,因此被卡住的发件无法支撑重启. 因为模型没有出故障. |
| `turn_cancelled reason=terminal notice=none` | 该设备被吊销或者其会话被接管,因此该桥没有张贴任何信息而停止. |

Grok CLI 自身的出错输出可以重复提供者的错误文本,因此日志只记录其大小和级别(Grok CLI)`grok: stderr lines=<n> bytes=<n> level=ERROR`) (中文(简体) ). 失败的启动被同样记录, 原因只有: `fatal: grok did not start: code=<code> exit=<n or none> ...`。看CLI自己的话,运行 `grok` 手边.

## 调自分类账——定期审查

这些文件曾被从克洛德桥复制过一次,现在在这里拥有. 一个固定 没有找到我们.

| 文件 | 从 `packages/claude-room-bridge` 时间 | 上次审查 |
| --- | --- | --- |
| `src/config.ts` | `73a770168a5df33a51f06c8875444f55c9241c07` | `73a770168a5df33a51f06c8875444f55c9241c07` |
| `src/log.ts` | `9b28a272e87600e78627dbd0f53fcbd192e01e73` | `9b28a272e87600e78627dbd0f53fcbd192e01e73` |
| `src/bridge.ts` | `f3a7d53f67246e59c471891aee667e002a23b701` | `f3a7d53f67246e59c471891aee667e002a23b701` |
| `src/service/` | `16c95f46c654a34613aeb2a4ff94eeede9e671ef` | `16c95f46c654a34613aeb2a4ff94eeede9e671ef` |
| `src/room-context.ts` | PR #1458 (创建于2026-10-26) | 公关 #1458 |

审查一个:

```bash
git log <last-reviewed-sha>..HEAD -- packages/claude-room-bridge/src/<file>
```

调试diff, 移植任何应用,然后 **移动“ 上次审查” SHA 前进, 不管你是否移植了任何东西**。记录“看,没什么可移植的” 意思是,一个没有移动的SHA, 那么诚实地说,意味着没有人看,而不是看 与没有变化是无法区分的.

⚠️ **不移植 `ActiveTarget.reply()`。 。 。 .** 它读取了现场目标并重新打开 房间漏水 克劳德方面也没有生产呼叫器.

## 船闸——尚未完工

| 门 | 状态 |
| --- | --- |
| HTTP MCP 循环运行 **macOS/安全带** | ✅ **已关闭 2026-08-15.** `npm run gate:mac` (单位:千美元)`src/__tests__/sandbox-gate.mac.test.ts`) (中文(简体) ). 真正的grok 1.0.4,真正的沙盒:声称 `ProfileApplied … enforced: true`, (中文(简体) ), `platform: macos/seatbelt`, (中文(简体) ), `restrict_network: true`, (中文(简体) ), **接下来** 循环收听器收到 `tools/list`命令事项——一个没有应用的沙盒否则会报告假通行证. 突变验证: 将插件指向已死端口失败 `ConnectionRefused`。验证生产方式(种子) `auth.json`)),所以它需要的就是: **没有 `XAI_API_KEY`** |
| HTTP MCP 循环运行 **Linux/ 锁定** | ⏸️ **转让 2026-08-15** ——主打:Mac先打,Linux后打. Landlock过滤了TCP连接,并可能拒绝Seatbelt允许的回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回 测试已经存在( A)`landlock-gate.linux.test.ts`它的工作流程是 **仅手动发送**;除非有人将xAI API 密钥薄荷并添加为 `XAI_API_KEY` 复出密语. **今天没有这样的密钥存在** |
| **CI 运行此套房** | ✅ **已关闭 2026-08-15.** `.github/workflows/grok-bridge-test.yml` 运行 `vitest` 每一个公关碰这个包裹。 首发真跑:172通过/3跳出. 3个跳跃是活地+地锁+macOS门,它们都需要一个真正的杂活并被env var选择入门 |
| **栅栏已关闭** | ✅ **已关闭 2026-08-15.** 校对真实 `grok` 1.0.3 有栅栏并有种子 `auth.json`: 提出的代理人 `session/request_permission` 两次, `Bash` 被拒绝`stopReason: "cancelled"`, (中文(简体) ), `FENCED_BASH_REACHED` 从来没有跑)和 `room__say` 被允许。 大门是一个真正的控制,而不是一个未经测试的分支. ⚠️ 同一跑道发现大门是 **还有** 关闭——见下文 |

## 有栅栏的穆特虫 (2026-08-15)

一条被子 `cancelled` 每一个代理请求 **永久哑弹**。 。 。 .

干净的栅栏无法装入权限,所以会抬高 `session/request_permission` 页:1 _每个_ 工具 电话——包括 `room__say`代理是唯一的声音 大桥拒绝了,转弯结束 `stopReason: "cancelled"`, (中文(简体) ), `spoke: false`也没说什么 骨架是整个里程碑 (以1:1马克表示) `room__say` 在房间里",是不可能 运输.

设计图谱逐一预测: _干净的栅栏 什么都问... 桥必须明确 允许它或代理 哑了。"_

**为何156个测试没有通过.** `FakeAcpChild` 从不单独提出许可请求 所以 `onRequest` 只有通过试验才能使请求本身得到实施,而没有任何试验. 较早期 **无围栏** 突起也看不到:无栅栏、杂耍一无所求 这正是为什么运行看起来健康.

`GrokDriver.onAgentRequest` 现在允许完全一个工具—— `GROK_ROOM_SAY_TOOL_NAME`,比较进口 因此,允许列表不能从实际运出的工具中漂移——通过选择 经纪人自己出价 `allow_once` 选项。 其他一切, 和任何不允许的请求, 仍然 结束转弯。 如果一个未来的grok停止提供 `allow_once`它拒绝而不是发明身份证明.

现在有四个测试覆盖了分支,使用从真实的二进制中捕获的帧形状.

## 安全说明

-   🔐 **永远不要乱跑 `--debug-file`。 。 。 .** 它写着OAuth无记名标志 简文. 使用 `RUST_LOG=xai_grok_shell=trace`。 。 。 .
-   MCP URL 房间带有一个认证符. `.mcp.json` 写入 `0600` 编辑 URL 从未在 argv 中通过 。 它仍然是任何与之相呼应的地方的证书 追踪 坠机报告, `lsof`把任何诊断俘获都当作秘密.
-   守护进程 auth 是 `XAI_API_KEY` (没有被烤入 发射/系统列表)或种子 `auth.json` 在栅栏里.
-   栅栏(`HOME` + 键 `GROK_HOME`需要) **即使有工具关闭**毫无戒备, grok装入操作员的全部个人MCP车队.

## 测试

```bash
npx vitest run          # the gate — run locally before every commit
npm run typecheck       # a BASELINE, not a gate. Observed: 2 errors
```

## 常见问题

### @agentvault/grok-bridge 是什么？

代理Vault Grok Bridge——守护进程将一个Grok代理连接到E2E加密代理Vault直接消息和房间\.

### 如何安装 @agentvault/grok-bridge？

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

### @agentvault/grok-bridge 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @agentvault/grok-bridge 支持 ESM 还是 CommonJS？

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

### @agentvault/grok-bridge 需要什么版本的 Node\.js？

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

### @agentvault/grok-bridge 可以商用吗？

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

### @agentvault/grok-bridge 的下载量有多少？

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

### @agentvault/grok-bridge 还在维护吗？

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

