# @agentplat/mesh-protocol 中文文档

规范地址：https://npmcn.com/package/%40agentplat/mesh-protocol/

版本：1\.5\.1
npm 元数据更新时间：2026-11-03T19:56:16.347Z
中文译文更新时间：2026-11-07T04:06:22.556Z
软件包许可：Apache-2\.0

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

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

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

- 包体积（解压后）：478 kB，86 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=20\.0\.0
- 运行依赖：1 个
- 首次发布：2026-07-30T17:43:40.904Z
- 最新版本发布：2026-11-03T19:56:15.976Z
- 近 30 天下载量：2058（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：20（近 12 个月 20 个）

## 中文简介

提供商中立的AgentPlat Mesh同行的有界电线合同.

## 安装

```sh
npm install @agentplat/mesh-protocol
```

也可以使用：`pnpm add @agentplat/mesh-protocol`、`yarn add @agentplat/mesh-protocol`、`bun add @agentplat/mesh-protocol`

## README

# `@agentplat/mesh-protocol`

为AgentPlat Mesh同龄人订立封闭、限定和运输中立的电线合同.

## 安装( 开发者预览)

明确安装协调预览 :

```sh
npm install @agentplat/mesh-protocol@next
```

全部留着 `@agentplat/*` 软件包在同一版本中。 npm 的默认 `latest` 标记可以指向更古老的预览。 见 [释放通道](https://github.com/Agentplat/agentplat/blob/main/docs/release-channels.md) 用于发行状态和版本选择.

Beta 1 写 `wireVersion: 1` 并读取被冻结的当前版本和 上一个 `wireVersion: 0` 相容性简介. 一般解析器 接受两者; `parseSignedMeshEnvelopeV0` 财务报告和审定财务报表 `parseSignedMeshEnvelopeV1` 窄到一个精确的版本。 解析器限制覆盖可能只缩小已冻结 电线天花板.

执行工作规定:

-   严格 UTF-8 和 JSON 解析拒绝重复解码的密钥, 格式错误 明确结构界限以外的Unicode、模棱两可的语法和文件;
-   确定JSON用于散开和签署的能力;
-   闭塞校验 `peer.hello`, (中文(简体) ), `peer.ping` 财务报告和审定财务报表 `peer.ping_ack`· ;
-   已关闭的阿尔法2号发现和能力记录 `peer.card`, (中文(简体) ), `peer.goodbye`, (中文(简体) ), `capability.advertise` 财务报告和审定财务报表 `capability.withdraw`· ;
-   目标记录 `objective.announce`, (中文(简体) ), `objective.revise` 财务报告和审定财务报表 `objective.cancel`· ;
-   已关闭的 Alpha 2 工作提议和工作投标记录 `work.offer` 财务报告和审定财务报表 `work.bid`· ;
-   已关闭的 Alpha 2 裁决答复记录 `work.award`, (中文(简体) ), `work.accept` 财务报告和审定财务报表 `work.decline`· ;
-   已关闭的 Alpha 2 执行记录 `work.progress`, (中文(简体) ), `work.checkpoint` 财务报告和审定财务报表 `work.result`· ;
-   关闭、 限定的 Alpha 2 工作发布和工作取消记录 `work.release` 财务报告和审定财务报表 `work.cancel`· ;
-   a 已关闭、有界的Alpha 2 租赁更新记录 `lease.renew`· ;
-   阿尔法2 租赁接管记录 `lease.takeover_proposal`· ;
-   sHA-256有效载荷文摘和Ed25519 电文ID的确切说明 证明;
-   对租户和网状建筑、观众、新鲜和 临界扩展支持;以及
-   被冻结的 v0 字节锁定着并签名的 v1 相符合定着 `fixtures/v0` 财务报告和审定财务报表 `fixtures/v1`。 。 。 .

使用 `parseSignedMeshEnvelope` 与被减压 `Uint8Array` 在电线上 边界。 接受字节而不是预解码文本防止丢失 UTF-8 替换时避免隐藏无效代表。 剖析器执行严格 解析和静态协议验证并返回深冻值。 应用 `validateMeshEnvelopeContext` 在接受该值为本地对等点之前.

使用 `canonicalizeMeshPayload` 以获取所覆盖的字节 `payloadHash`。 。 。 . 使用 `createMeshSigningDocument` 或者说 `canonicalizeMeshSigningDocument` 获取 信封证明所覆盖的文件。 签名文件故意 排除有效载荷和证明值,同时保留有效载荷文摘 证据头.

此包不计算或校验有效载荷文摘, 解析签名 键,验证签名,进行回放录入,或变异对等状态。 这些 结构有效性与 密码真实性或局部接受.

证据、信任和同龄人信息家族在 执行封闭有效载荷合同。 他们显然失败,而不是 输入通用有效载荷路径。 目标、工作、租赁更新、, 租赁接管提案、租赁选票和租赁证书记录 并进行结构验证,但在 Mesh 运行时仍明确不支持 边界,直到其削减器和国家授权得到执行.

## 冻结限制

协议v0和v1在有效载荷进入一个 减号 :

| 限制 | 最大值 |
| --- | --- |
| 解压信封 | 262,144 UTF-8 字节 |
| 有效载荷 | 196,608 UTF-8 字节 |
| 嵌入深度 | 第32条 |
| 一个对象中的总对象密钥/ 密钥 | 2 048个/256个 |
| 一个阵列中的数组项目总数 | 4 096个/1 024个 |
| 一个字符串 | 65,536 UTF-8 字节 |
| 扩展/关键扩展 | 16个/8个 |
| 标识符 | 256 UTF-8 字节 |
| 信封寿命 | 10分钟 |
| 钟表津贴 | 2分钟 |
| 重放窗口 | 2 048个序列 |

已执行的Alpha 2号发现和有效载荷被进一步冻结 这些较窄的限制:

| 外地 | 规则 |
| --- | --- |
| `protocolVersions` | 1-8 排序出独有的非负式安全整数,必须包括同级卡信封的自有线版本 |
| 对等卡传输提示 | 最多8个排序的独有非空字符串;每个2 048个UTF-8字节和8 192个字节的总和 |
| 同伴卡能力标识 | 最多32个分类的独特标识符 |
| 能力键 | 非空;最多4,096 UTF-8字节 |
| 能力版本和可选变体 | 非空; 最多128 UTF-8 字节 |
| 输入或输出介质类型 | 每集最多16个排序出独有的非空字符串;每个128 UTF-8字节 |
| 能力属性 | 最多32个条目;非空键可达128 UTF-8字节,非空取值可达1 024字节,合计为16 384字节 |
| 同行卡或能力广告有效性 | 超过零,最多24小时 |

每个标有分类和独有的收藏都使用上升的词典顺序 超过 UTF-16 代码单位,匹配 JCS/RFC 8785 属性名称命令规则. 这不是故意的 Unicode 代码点顺序; 重复相邻值 拒绝.

信封 TTL 为 30 秒 `peer.ping` 财务报告和审定财务报表 `peer.ping_ack`60秒钟 `peer.goodbye`,120秒钟 `peer.hello`, (中文(简体) ), `peer.card`, (中文(简体) ), `capability.advertise` 财务报告和审定财务报表 `capability.withdraw`这些家庭限制还包括: 以全球最长10分钟为界.

工作发布和工作取消信封有两分钟TTL. 释放是一个 关闭 `owner`编号 :`assignee` 权力和 `reoffer`编号 :`close` 处置对; 必须在宣布的租约到期之前将受让人释放。 取消为 a 关闭 `award_pending` 没有分支 `acceptanceId` 或者说 `active` 分支为 一个 这些只是结构限制; 当地国家决定接受者, 授权、终止、一能和会计.

租赁更新信封有30秒TTL,必须不迟于 目前申报的租约。 续约自封 受让人,需要直接 交货和将申报的期满延长最多24年 小时。 所接受的目标可能要求缩短期限并进行延长.

租赁接管提案信封有一分钟TTL. 他们需要一个直接 同伴受众、强制性因果关系和目标导向平等。 值得信赖的人 接收时钟和接受的客观政策——不是发送者宣布的时间——决定 租赁期满加追偿优惠是否已经过去.

租赁投票信封也有一分钟的TTL. 他们自相残杀证人, 要求直接交付和目标负责人平等,并因果地点名 接受他们认可的收购建议。 证人的成员资格和投票 独特性需要被接受的当地国家.

租赁证书信封有一个一分钟的TTL,并自封 组装员. 他们携带2到32个排序的独有票证,需要直接 执行、目标标题平等和建议因果关系。 被接受者 目标确定实际门槛值.

Alpha 2 域名限制、命令、有效性、自约束和前身 侵犯行为 `invalid_payload`. 信封终生违规事件退回 `invalid_lifetime`; 通用解析结构限制违规情况返回 `structural_limit_exceeded`。 。 。 .

## 目标限制

客观文件完全替换:宣布为修订版1,无 信封因果关系标识; 修改为修订版2或更多, 名称不同 `previousObjectiveDocumentId`,并需要信封 `causationId`; 取消名称 当前文件和修订,并需要信封 `causationId`。 。 。 . 那个信封 `causationId` 是一个消息ID,而不是替代有效载荷的 前一个文档编号。 三条消息都需要一个信封 `objectiveId` 那个 完全匹配有效载荷。 文件签发者必须自封给发送者. 结构接受 `contentReference` 不授权检索; 需要签发授权、参考授权和当前修订检查 已接受本地状态, 并且仍在协议解析器之外 .

| 外地 | 规则 |
| --- | --- |
| 摘要或内容参考 | 完全是一个非空代表;每个最多4 096 UTF-8字节 |
| 成功标准 | 1–32个非空字符串,每组有4,096个UTF-8字节和16,384个字节 |
| 允许的能力键 | 1–32 排序出独有的非空字符串,每个有 4,096 UTF-8 字节 |
| 工作/货币 | 工作项目1-1 000 000;通过工作项目上限的货币1 |
| 预算单位 | 非负式安全整数 |
| 计时器 | 投标窗口最多1小时;最多15分钟验收;最多24小时租赁;最多1小时回收优惠;每个窗口必须在有效范围内 |
| 续租 | 安全整数 0-100 |
| 追索证人 | 3-32 分类独特的识别标志和严格多数门槛 |
| 核定观察员 | 可选,最多32个分类的独特标识符 |
| 客观有效性 | 超过零,最多30天 |

目标宣布和修改有一个五分钟的信封TTL;取消有一个 两分钟TTL。 目标范围、约束、关闭、命令、修订、, 因果关系、定时和限制侵权行为 `invalid_payload`; 它们的 TTL 拒绝 `invalid_lifetime`。 。 。 .

## 工作报价和投标限额

工作提议名称不可更改的目标文件和工作项目修订。 这个 第一次尝试没有前作或信封的因果关系 两者,必须命名不同的 `previousOfferId`. 主动自封其主人 并可能针对一个端点或 `work` 主题。 工作标书 将投标人自封给发货人,要求提供因果关系 必须直接针对指定的所有人。 投标修订1没有前身; 后来的修订需要不同的修改 `previousBidId`。 。 。 .

| 外地 | 规则 |
| --- | --- |
| 所需容量键 | 1–32 排序出独有的非空字符串, 最多为 4 096 UTF-8 字节 |
| 匹配属性 | 最多32个条目;非空键可达128 UTF-8字节,非空取值可达1 024字节,合计为16 384字节 |
| 投入摘要或参考资料 | 完全是一个非空代表;每个最多4 096 UTF-8字节 |
| 完成标准 | 1–32个非空字符串,最多4,096个UTF-8字节,合计16,384个字节 |
| 投标假设 | 0–32 非空字符串, 最多为 4, 096 UTF-8 字节, 合计为 16, 384 字节 |
| 保留和预算单位 | 预算值是非负式安全整数;能力预留是1至1,000,000的安全整数 |
| 提供截止日期 | `sentAt < bidDeadline < workDeadline`;出价截止时间为寄出后最多1小时,出价截止时间为寄出后最多30天,信封过期不得超过出价截止时间 |
| 投标截止日期 | `sentAt < bidExpiresAt <= bidDeadline < expectedCompletionAt <= workDeadline`;适用相同的1小时出价和30天工作期限,信封期满不得超过出价期满 |

提供和投标信封 TTL是两分钟。 结构验证不决定 目标修订是否为当前,工作项目是否为当前,提议 尝试取代另一个报价,接受能力广告,a 投标具有能力或预算授权,或期限和保留有效 反对被接受的地方州。 这些检查需要减员授权状态 并且继续推迟.

## 工作奖、接受和减少限制

一个奖项名称 一个出价并选择了Bid和自封所有者发送者。 任意 直接同行受众在结构上是有效的;无论是受让人还是受让人 证人是当地人 它肩负着划时代的任务, 指定授权标识和栅栏标志。 寻常 `authorityKind: "award"` 分支要求两个ID相等 `awardId` 并禁止追索证明 这个 `authorityKind: "recovery_certificate"` 分支需要 `recoveryCertificateId` 和要求两个身份证明相同;可选的恢复检查点 仅是结构元数据.

接受和拒绝每个名称裁决,并自封受让人发送人. 接受在结构上接受任何直接同行受众;所有者或证人 授权是状态的。 衰落在结构上是针对主人的. 两者 需要一个信封因果关系标识。 解决裁决与选定投标的因果关系 对已接受的奖状信封的因果反应 本地因子日记和状态 。 三个记录都装入信封 目标身份 目标身份.

| 外地 | 规则 |
| --- | --- |
| 拥有者时代 | 正安全整数; 在 `1` 用于此协议切片 |
| 指定日期 | 正安全整数;恢复权限需要划时代 `2` 或超过 |
| 裁决时限 | `sentAt <= leaseStartsAt < acceptanceDeadline <= leaseExpiresAt <= workDeadline` |
| 奖励窗口 | 接收窗口最多15分钟;最多24小时租赁;最多30天工作时间 |
| 裁决期满 | 最多两分钟 最迟不得晚于 `acceptanceDeadline` |
| 答复时间 | `sentAt < acceptanceDeadline`; 过期时间最长为两分钟并不迟于最后期限 |

这些只是结构性合同。 选择当前出价, 当前所有者 和修订、预算保留、接受的独特性、最后期限, 因果参考解决办法和恢复证书的接受均需 继续推迟.

## 工作进展、检查站和结果限制

执行记录自封受让人发送人,需要直接的同行受众 目标与工作项目的修订、接受的任务 身份证 时代 授权证和租约到期 每个记录都有稳定的域名 ID独立于信封信息ID.

| 外地 | 规则 |
| --- | --- |
| 拥有者时代 | 正安全整数; 在 `1` 用于此协议切片 |
| 转让具有约束力 | 积极时代; `assignmentAuthorityId` 财务报告和审定财务报表 `fencingToken` 必须是相同的标识符 |
| 进展 | 最多4 096个 UTF-8 字节的正序和非空摘要; 检查站 ID 是可选的 |
| 检查站 | 阳性序列、犬科SHA-256摘要和确切的1个摘要或参考 |
| 检查点父 | 顺序 `1` 省略父词; 后序需要不同的 `previousCheckpointId` |
| 结果 | 通用SHA-256摘要、可选检查站身份证和确切的1个摘要或参考资料 |
| 内容 | 摘要和参考文献不空,最多4 096个UTF-8字节 |
| 执行期满 | 最多五分钟,严格地说 `sentAt` 并且不迟于签名 `leaseExpiresAt` |

结构解析器不能证明因果关系解决匹配 已接受 `work.accept`,接收者是授权所有人、观察员或 证人,或指定、日期、权限、标志、租赁和检查站 头是现相. 它也不执行进度命令或结果 独一无二。 这些检查需要当地接受的州,并继续推迟到 mesh 运行时缩小边界 .

## 租赁期限

租赁续期带有公认的转让权加 `leaseRenewalId`, (中文(简体) ), `leaseRenewalSequence` 财务报告和审定财务报表 `renewedLeaseExpiresAt`编辑 现有 `leaseExpiresAt` 是目前限制交货的租约 时间戳是拟议继任者。 顺序 `1` 省略 `previousLeaseRenewalId`;后期序列需要不同的前身ID.

发件人自带 `assigneePeerId`观众是一个直接的同伴 目标ID等于有效载荷 目标ID,因果关系是 所需经费。 第一次被接受的续约解决了因果 `work.accept`; 较后 续约决定于前 `lease.renew` 信封为 那个接受者 接收者授权,确切的前身和顺序, 目前的任务和租赁、工作期限、目标期限/计算政策、, 终极状态和一能仍然是状态降低检查.

## 租赁接管限额

租赁接管提案具有公认的转让权,目前 租赁期满加马厩 `takeoverProposalId`它识别自定义 `proposerPeerId`,关闭 `candidate` 或者说 `witness` `proposalAuthority`,则 不同 `proposedAssigneePeerId`,准确的下一个宣布的转让 时代。 它不提出栅栏标志 稳定的身份 以后变成这个标志.

`leaseRenewalSequence` 实值 `0` 最初接受的租赁和省略 `latestLeaseRenewalId`数值 `1` 结束 `100` 需要稳定更新的ID. 原因决定了接受的 `work.accept` 顺序 `0`,或 最近已接受 `lease.renew` 接收证人的信封.

解析器执行关闭的字段, 角色一致性, 直接交付, 强制 因果关系、目标平等和1分钟TTL。 它没有确定 租赁负责人被接受或期满,追偿优待已过,提议人和 候选人符合条件,收件人是配置的证人,或者工作项目 是当前和非最终的。 这些检查需要当地州接受,并且 信任的接收时钟 。 有效的建议书只记录追偿意图;它确实 不推进时代,不授予执行权,不改变栅栏或保留地 预算.

## 租赁限额

租赁票是肯定的证人 认可接受收购 提议。 其封闭有效载荷包含一个稳定 `leaseVoteId`,逻辑 `takeoverProposalId`,自我约束 `witnessPeerId` 和目标标识。 这个 不重复候选人、工作项目、任务、租赁、划时代或围栏 字段;这些字段根据因果被接受的提议得到解决,以便两个字段 签名快照不能有异议 .

观众是直接对等,信封 目标ID等于有效载荷 目标身份、因果关系和TTL最多1分钟。 解析器 不确定因果关系名称匹配的被接受的提案 发送者属于其固定的证人组,接收者是恢复者 或证人尚未赞同关于 同一工作项目的修订和拟议划时代。 这些都是状态降低检查. 单凭投票不能推进划时代,改变栅栏,允许执行 授权,激活候选人或变化的预算.

## 租赁证书限额

一份租赁证明书被接受的收购建议和证人 投票证明它。 其封闭有效载荷包含一个稳定 `certificateId`, (中文(简体) ), 自定义 `certificateAssemblerPeerId`, (中文(简体) ), `takeoverProposalId`中间 和 32 类独 `leaseVoteIds`还有目标标识 它不重复 工程项目、任务、租赁、划时代或围栏场 提议是他们犬科的来源.

观众是直接对等,信封 目标ID等于有效载荷 目标编号、因果名称、提案信封和TTL最多一个 一分钟。 剖析者不能证明提案或表决被接受 投票支持同一提案 由不同的证人组成 或满足目标阈值,或装配者和接收者为 授权。 这些是状态降低检查.

接受状态后, `certificateId` 成为下一个任务 当局的身份证和栅栏标志, 工作物品进入回收。 这个 证书本身不授予执行权限或激活 候选人;这需要现有业主颁发的追偿奖 接受流动.

导入软件包时没有进行解析、密钥解析、网络或存储 操作.

## 常见问题

### @agentplat/mesh-protocol 是什么？

提供商中立的AgentPlat Mesh同行的有界电线合同\.

### 如何安装 @agentplat/mesh-protocol？

在项目目录运行 npm install @agentplat/mesh-protocol，或使用 pnpm add / yarn add / bun add。

### @agentplat/mesh-protocol 支持 TypeScript 吗？

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

### @agentplat/mesh-protocol 支持 ESM 还是 CommonJS？

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

### @agentplat/mesh-protocol 需要什么版本的 Node\.js？

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

### @agentplat/mesh-protocol 可以商用吗？

@agentplat/mesh-protocol 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @agentplat/mesh-protocol 的下载量有多少？

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

### @agentplat/mesh-protocol 还在维护吗？

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

