@ agenticprimitives/ a2a (英语)
部分 代理先导 ——代理应用程序的开源信任底板:可以签名的身份,行为时间检查权限,所有者携带的证据. 开发者工具包 • 妇女 所有软件包
代理对代理呼叫 由同一代表团门 与所有其他. 特工发现和身份身份正在马上被安顿——ERC-8004去主网,代理命名服务启动,代理卡成为了发现的通用语. 这些都不是权威问题:当A探员向B探员发送任务时,究竟允许A要求的正是这些限度内的技能? 这个软件包用代理原始代表团——同样的EIP-712、附加条件的限制、可撤销的链上赠款——来回答问题。 各地有一个代表团模式;A2A并非例外.
部分 代理原始产品 ——代理经济的信托基底:一个有监护,授权,命名,证书,审计证据的犬类智能代理身份,设计成一个系统.
具体地说: 授权的协同 代理对代理任务运输任何声称的代理人都会发出任何其他同步的、授权范围的任务,并通过民意调查、推或流收集结果。 建造于 @agenticprimitives/fulfillment 任务底盘; 指定在 第269区。 。 。 .
什么样的船
所有5个执行波已登陆:
- 任务运行时间核心 —— 说
newTaskRecord, (中文(简体) ),applyTransition(无法通过电子邮件关闭)canTaskTransition, (中文(简体) ),dispatchTask,则TaskStore端口 + 内存参考执行,以及SkillHandler合同。 未知技能 –rejected从来没有默默地放弃. - 代表团大门 —— 说
authorizeA2aMessage: 代表 qq 请求器、时间戳窗口、目标+通过提醒技术范围界定、链上isRevoked+ ERC-1271 注射出故障闭塞,签名消息,单用消息代号. 加号buildA2aGrantCaveats财务报告和审定财务报表hashA2aMessage。 。 。 . - 外观 —— 说
createA2aAgent(消息/发送 + 授权 + 持续;任务/ 获得 + 任务/ 取消方权限; 提醒驱动)processDue;代理卡) + JSON-RPC 2.0 处理器(dispatchA2aRpc编号 :handleA2aRpcBody+ 该A2aWireAdapter客户端通过注入运输. - 假体居住权+签名推 ——电文和文物活体活在受让人的金库;只有散列/散列物出现在任务状态. 终端结果作为签名的推收信封交付(
deliverPush编号 :verifyPushEnvelope)带有有界重试,或通过SSE框架流出,或通过tasks/get。 。 。 . - 双代理接收装置 ——畅通之路,代理人表面授权门拒绝,跨地权押金,认证要求的回程通过
resubmit,在test/harness.test.ts。 。 。 .
import { newTaskRecord, dispatchTask, buildSkillRegistry, createInMemoryTaskStore } from '@agenticprimitives/a2a';
边界
核心点是 运输不可知性 - 没有云花相通 src/。持久目标支持 TaskStore 适配器( e)createDurableObjectTaskStore(b) 船舶作为 ./cloudflare 子路径。 见 ADR-0034 (英语)。 。 。 . mcp-runtime 是这个包的消费者,而不是所有者,没有后缘.
怎么不一样
竞争模式是 A2A 协议 SDK 和代理架构通讯 ——转移任务但将授权视为他人问题(无记名代号,共享秘密,许可列表)的运输. 三件事,这个包做 他们的结构不能:
- 没有可核查的赠款就没有任务. 只有在代表团大门核实补助金时才能建立工作记录;
task.permissionGrantRef锁定代表团的散列线,在飞行中吊销链上失败,关闭. - 授权不是身份. 警告和受让人决定 什麽 可能发生; 签名的符号证明 谁 问. 一个发包人从未到达另一个主名空间,任何声称的代理人都没有持有长寿的签名密钥——只持有KMS/会话签名.
- 尸体留在保险库里. 任务状态携带散列和回推;有效载荷在受让人的金库中存在,并有自己的出入控制. 运输从未成为数据库.
因为门是同一代表团的原始 使用横跨下层,"这个代理人可以引用该代理人的 summarize 技能直到星期五,可立即撤销"是一笔赠款——可连锁核查,可审计结束.
验证
pnpm --filter @agenticprimitives/a2a typecheck
pnpm --filter @agenticprimitives/a2a test
状态
测试网/飞行员准备 生产启动在根部的公开核对表上进行 README.md ——包括第三方合同审计和治理关键轮换. 追踪所有安全发现 docs/audits/findings.yaml. 运行时间结束于针对 Base Sepolia (ERC-1271 +)的演示应用中 isRevoked 检查绑定在链上).
许可证
UNLICENSED(内部单列,未出版).
双向吸尘器
一个想认识一个返回的人却不知道她是谁的服务公司 宣布卡的扩展
AP_PAIRWISE_ASKER_EXTENSION_URI (单位:千美元)pairwiseAskerCardExtension(audience)) (中文(简体) ). 卡片决定了阿斯克的形式:
sendSubjectAskOverWire 找到它发送的扩展 { pairwise, audience } - 使用假名
pairwiseSubjectFor 端口——没有证书,没有会话,没有地址. 宣布扩展名的卡片和发件人
没有假名可以给, 被拒绝, 从来没有用认证表回答. validatePairwiseSubjectAsk 拒绝
(a) 载有超出其主题和受众范围的任何内容的驴; routedAskOf 读取两种形式.
参考文献
边界(ADR-0034). 这个软件包是运输不可知的核心:任务运行时间在一个 TaskStore 端口,则
SkillHandler 合同和调度员 A2aWireAdapter 委托人、代表团 -- -- 自动大门和范围 -- -- 授予警告
建业者. 云飞 TaskStoreDO (一个持久对象) TaskStore 与 alarm()(b) 船舶作为 ./cloudflare 子路径。 这个
与spec 245的位置不同 mcp-runtime 目的: mcp-runtime 是消费者(接收门和
a2a-mcp送货腿,而不是车主。 Spec 269 W1–W5是记录(运行时间,门, createA2aAgent云花店,
保险库的住址,签名推和SSE, 双代理接收带 test/harness.test.ts) (中文(简体) ).
电线( 第372段). src/standard/ (进口: @agenticprimitives/a2a/standard)是A2A 1.0作为官方TCK测试它: PascalCase方法,原型-JSON形状,
A2A-Version,每个 A2A 错误上的错误信息,SSE,按. 没有第二套方法名称.
createStandardA2aServer({card, executor, principal?, canSeeTask?, beforeSend?, onCancel?}) 已获取形状;执行器
发送事件通过 ctxA. 作为延伸的权力:a SendMessage 携带 AP_DELEGATED_TASK_EXTENSION 是一个
授权的任务standard/delegated.ts),以及 createAgentBackedServer 将运行时间放在后面,每一次
门总是有。 这个 Authorization 信头说是谁在打电话caller.ts- 信封的签名上写着谁
授权信件; 中继器可能包含它没有写入的信件, 因此两者从未崩溃 . canSeeTask 回复 a
(原始内容存档于2018-10-21). Not Party Not Found. tck/sut.mjs + 键 scripts/run-a2a-tck.sh 运行CI中的TCK; ./conform (单位:千美元)ap conform a2a <url>(中文(简体) )
探测现场特工的卡和装订.
从运行时间(399 第4段)晋升. standard/mount.ts数字 : withStandardCardFields, (中文(简体) ), isRuntimeTaskId, (中文(简体) ),
runtimeBackedTaskStore, (中文(简体) ), principalBySchemes (单位:千美元)Bearer =个人, A2A-Session 代理,从来没有对方的倒置,
delegatedDispatch, (中文(简体) ), settlementForReplyKind, (中文(简体) ), settleTask。 。 。 . subject-hop.ts数字 : sendSubjectAskOverWire (通过
卡片,消化针, subjectAskOf, (中文(简体) ), subjectAnswerOf, (中文(简体) ), handoffOf, (中文(简体) ), SUBJECT_ANSWER_ARTIFACT; 第433个光谱
subjectAnswerEnvelope 编号 : subjectAnswerArtifact· ; standard/app-delegation.ts (单位:千美元)appDelegationAsk) (中文(简体) ). wire-verify.ts数字 :
verifyDelegationWire,每个A2A服务重复(身份、警告、撤销、签名).
代理卡受众(Spec 338 §8). agentCard(forAudience?) 项目 SkillHandler.exposure (单位:千美元)public, (中文(简体) ),
authenticated, (中文(简体) ), private, (中文(简体) ), service-only;省略指公开)。 传阅观众不会证明:
createCardAudienceResolver 核实签名质疑(在读取签名前未使用), x-ap-* 标题)和
降解为 public 任何失败; privateViewPolicy 是一个单独的注入决定。 可见是披露,不是
授权.