API Reference

这页是开发者的完整 API 参考。所有公开函数、类、接口和核心数据模型都按模块说明:签名、用途、输入、输出和常见注意事项。

示例语言
TypeScript Beta;Python / Go / Rust / Java Alpha 实验中

运行时工厂

createAgentInterconnectRuntime()

function createAgentInterconnectRuntime(): AgentInterconnectRuntime

创建一个完整的内存参考运行时,包含身份、凭证、描述、发现、交互、消息分发、工具服务、工具访问、transport 和 client。

输入
无。
返回
AgentInterconnectRuntime,可直接用于本地开发和测试。
适用
快速原型、单进程测试、国标流程 smoke test。

AgentInterconnectRuntime

工厂返回的组合对象。

属性类型用途
credentials开发凭证仓库、状态仓库、issuer、verifier本地凭证签发、状态更新、验签。
agentIdentityMaintenanceAgentIdentityMaintenance智能体侧身份维护门面。
agentDescriptionMaintenanceAgentDescriptionMaintenance智能体侧描述维护门面。
interconnectionAuthorizationInterconnectionAuthorizationRuntime过程凭证包、对端鉴别、互鉴权。
identityRegistryIdentityRegistryRuntime管理服务侧身份账户运行时。
descriptionRegistryAgentDescriptionRegistry描述注册、审核、发布和撤销。
discoveryServiceDiscoveryService发现服务。
interactionRuntimeInteractionRuntime会话、任务、消息。
messageDistributionMessageDistributionRuntime群组消息分发和收件箱。
toolRuntimeToolRuntime资源侧工具注册和执行。
toolAccessToolAccessRuntime智能体侧工具访问。
transportInProcessJsonTransport内存 operation 路由。
clientAgentInterconnectClient统一客户端。

AgentInterconnectClient

new AgentInterconnectClient(transport: JsonTransport)

客户端只依赖 JsonTransport,因此同一套调用可以走内存、HTTP 或自定义协议。

方法输入返回说明
registerIdentity(input)RegisterIdentityInputRegisterIdentityResult注册身份账户,可同时发行开发凭证。
getIdentity(agentId)AgentIdentityCodeIdentityAccount | undefined按身份码读取账户。
issueCredential(agentId, input)subject、audience、scope、expiresAtIssuedCredential给已有身份账户发行凭证。
lockIdentity(agentId, reason?)身份码、原因IdentityAccount锁定身份账户,并联动锁定已发行凭证。
unlockIdentity(agentId, reason?)身份码、原因IdentityAccount恢复身份账户和凭证状态。
revokeIdentity(agentId, reason?)身份码、原因IdentityAccount注销身份账户,并联动注销凭证。
registerDescription(description)AgentDescriptionDescriptionRecord注册并校验智能体描述。
reviewDescription(agentId, review)reviewerId、approved、reason、riskLevelDescriptionRecord追加描述审核记录。
issuePublicationCertificate(agentId, input)issuer、publicKeyDigest、metadataPublicationCertificate签发描述发布证书元数据。
publishDescription(agentId)身份码DescriptionRecord发布描述,使其默认可被发现。
publishDescriptionWithInfo(agentId, publication?)身份码、发布信息DescriptionRecord发布并携带区域、权限、版权等发布元数据。
unpublishDescription(agentId)身份码DescriptionRecord下架描述,并标记不可用。
revokeDescription(agentId, reason?)身份码、原因DescriptionRecord撤销描述,并标记不可发现、不可用。
discover(query)DiscoveryQueryDiscoveryResult[]按文本、身份码、名称、技能、标签和 IO 类型发现。
createSession(input)CreateSessionInputSession创建点对点、群组或混合会话。
submitTask(input)SubmitTaskInputTask在会话内创建任务,初始状态为 accepted
sendMessage(input)SendMessageInputMessage发送消息,可关联任务、分块和最终结果。
distributeMessage(input, recipients?)消息输入、收件人列表DistributionReceipt[]群组消息分发,未传收件人时从会话推断。
listTools(toolRequestList?)可选工具 ID 列表ToolSyncData获取全部或部分工具描述。
syncToolUpdates()ToolUpdateData拉取工具更新摘要,读取后清空更新集合。
invokeTools(request)ToolInvokeRequestToolInvokeResult批量调用工具,逐项返回成功或失败。

客户端语言版本

同一组标准 operation 在不同 SDK 里使用各自语言习惯的方法名。切换示例语言可以直接看调用形态。

TypeScript Beta

import { AgentInterconnectClient, HttpJsonTransport } from "gbz185-sdk";

const client = new AgentInterconnectClient(
  new HttpJsonTransport({ endpoint: "https://api.example.com/gbz185" })
);

const matches = await client.discover({ text: "calendar schedule" });
const result = await client.invokeTools({
  sessionId: "session-1",
  toolInvokeList: [{ toolId: "calendar.add", toolVersion: "1.0.0", toolInputParam: {} }]
});

身份码

formatIdentityCode(parts)

formatIdentityCode(parts: Omit<AgentIdentityCodeParts, "oid" | "version"> & Partial<Pick<AgentIdentityCodeParts, "oid" | "version">>): AgentIdentityCode

格式化 GB/Z 185.2 身份码。默认 OID 为 1.2.156.3088,版本为 1,业务节点会转成大写。

校验
注册服务方和注册请求方最长 6 位;本体序列号和实例序列号最长 9 位;节点必须是 base36 字符。
异常
非法 OID、版本、空节点、过长节点或非法字符会抛错。

parseIdentityCode(code)

parseIdentityCode(code: AgentIdentityCode): AgentIdentityCodeParts

解析身份码并返回结构化字段。要求完整 9 段点分结构:OID 四段、版本一段、业务节点四段。

validateIdentityCode(code)

validateIdentityCode(code: AgentIdentityCode): boolean

布尔校验包装器。适合表单校验或过滤输入,不会向调用方抛错。

validateIdentityCodeParts(parts)

validateIdentityCodeParts(parts: AgentIdentityCodeParts): void

校验结构化身份码字段。非法时抛错,合法时无返回值。

身份账户

API签名/成员说明
IdentityRegistryRuntimenew IdentityRegistryRuntime(store?, credentialIssuer?)管理服务侧身份账户生命周期运行时。
registerregister(input: RegisterIdentityInput): Promise<RegisterIdentityResult>分配身份码,创建 active 账户,可选发行凭证。
updateupdate(agentId, patch): Promise<IdentityAccount>更新描述或证据,并写入 audit log。
issueCredentialissueCredential(agentId, input): Promise<IssuedCredential>给 active 账户发行凭证;locked/revoked 账户会抛错。
locklock(agentId, reason?): Promise<IdentityAccount>锁定账户,并锁定该账户凭证。
unlockunlock(agentId, reason?): Promise<IdentityAccount>恢复账户和凭证为 active。
revokerevoke(agentId, reason?): Promise<IdentityAccount>注销账户,并注销该账户凭证。
getget(agentId): Promise<IdentityAccount | undefined>读取单个账户。
listlist(): Promise<IdentityAccount[]>列出账户。
IdentityAccountStoresave, get, list身份账户存储接口,生产环境替换内存实现。
InMemoryIdentityAccountStore内存 Map 实现开发、测试使用。
AgentIdentityMaintenanceregister, refresh, update, issueCredential, lock, unlock, revoke智能体侧身份维护门面,保存当前 active account 和本地凭证。

凭证与鉴别

API签名/成员说明
CredentialIssuerissueCredential, updateCredential, lockCredential, unlockCredential, revokeCredential, getCredential凭证签发和生命周期接口。
DevelopmentCredentialIssuernew DevelopmentCredentialIssuer(repository?, statusStore?, issuerId?)开发实现:生成 Ed25519 key pair,保存 public key 和 private key,默认一年有效。
CredentialVerifierverifyPresentation(input): Promise<AuthenticationAssertion>过程凭证包验证接口。
DevelopmentCredentialVerifiernew DevelopmentCredentialVerifier(statusStore?, chainVerifier?)校验证书状态、有效期、受众、scope、签名和 X.509 public key 匹配。
CredentialStatusStoregetStatus, setStatus凭证状态查询接口。
InMemoryCredentialStatusStore内存状态实现保存 active、locked、revoked。
InMemoryCredentialRepositorysave, get, listByAgent凭证存储实现。
CertificateChainVerifierverifyCertificateChain(credential, now?)X.509 证书链验证扩展点。
NodeX509CertificateChainVerifierNode.js X509Certificate 检查验证证书有效期和证书 public key 是否匹配凭证 public key。
createProcessCredentialPackagecreateProcessCredentialPackage(input): ProcessCredentialPackage用私钥签名 audience、scope、timestamp、payload 等内容,生成过程凭证包。
canonicalJsoncanonicalJson(value): string稳定 JSON 序列化,用于签名载荷。

InterconnectionAuthorizationRuntime

new InterconnectionAuthorizationRuntime(verifier: CredentialVerifier)

智能体互联授权运行时,把凭证验证结果转为可执行的授权决策。

方法返回说明
createPresentation(input)ProcessCredentialPackage创建过程凭证包。
authenticatePeer(pkg, policy)AuthorizationDecision验证对端凭证包并套用授权策略。
authorizeAssertion(assertion, policy)AuthorizationDecision把鉴别断言转为 allow/deny。
mutualAuthenticate(input)MutualAuthenticationResult同时验证请求方和服务方。

描述管理

API签名/成员说明
AgentDescriptionRegistrynew AgentDescriptionRegistry(store?)描述注册、审核、发布、变更、下架、撤销运行时。
registerregister(description): Promise<DescriptionRecord>校验并注册描述,默认 discoverableavailable 为 true。
reviewreview(agentId, review): Promise<DescriptionRecord>追加审核记录。
issuePublicationCertificateissuePublicationCertificate(agentId, input): Promise<PublicationCertificate>生成发布证书元数据。
publishpublish(agentId, publication?): Promise<DescriptionRecord>发布描述;revoked 描述不可发布。
changechange(agentId, patch): Promise<DescriptionRecord>合并修改描述并重新校验。
unpublishunpublish(agentId): Promise<DescriptionRecord>状态变为 unpublished,available 变为 false。
revokerevoke(agentId, reason?): Promise<DescriptionRecord>状态变为 revoked,discoverable 和 available 变为 false。
getget(agentId): Promise<DescriptionRecord | undefined>读取描述记录。
listlist({ publishedOnly? }): Promise<DescriptionRecord[]>列出全部或已发布记录。
DescriptionStoresave, get, list描述存储扩展点。
AgentDescriptionMaintenanceregister, requestReview, publish, change, unpublish, revoke智能体侧描述维护门面。

发现服务

API签名/成员说明
PresetDiscoverySourcenew PresetDiscoverySource(descriptions?), list()预置发现源,可表示缓存、用户配置或 well-known 派生描述。
DiscoveryServicenew DiscoveryService(registry, presetSources?)组合已发布描述和预置源,并按查询条件排序。
discoverdiscover(query: DiscoveryQuery): Promise<DiscoveryResult[]>支持 textagentIdnamerequiredSkillstagsinputTypesoutputTypesincludeUndiscoverablerequireAvailablelimit

交互与消息

API签名/成员说明
InteractionRuntimecreateSession, submitTask, updateTaskState, sendMessage, listMessages, getSession, getTaskGB/Z 185.6 会话、任务、消息内存运行时。
createSessioncreateSession(input): Promise<Session>创建会话;至少需要一个 receiver。
submitTasksubmitTask(input): Promise<Task>创建任务,状态为 accepted,可带初始消息和产物。
updateTaskStateupdateTaskState(taskId, state): Promise<Task>更新任务状态。
sendMessagesendMessage(input): Promise<Message>写入会话消息;可设置 artifactfinalchunkIndexlastChunk
MessageDistributionRuntimedistribute, listInbox群组消息分发。默认从会话中推断除发送方外的收件人。
DistributionReceiptrecipientId、sessionId、messageId、deliveredAt、message分发回执。

工具调用

API签名/成员说明
ToolRuntimeregisterTool, listTools, getUpdates, invoke资源侧工具服务。
registerToolregisterTool(descriptor, handler): Promise<ToolDescriptor>校验工具描述并注册 handler。
listToolslistTools(requestedToolIds?): Promise<ToolSyncData>返回全部工具或指定 ID 工具。未传 ID 时 syncType 为 1。
getUpdatesgetUpdates(): Promise<ToolUpdateData>返回注册后发生更新的工具摘要,并清空更新集合。
invokeinvoke(request): Promise<ToolInvokeResult>批量调用工具。缺失工具返回 TOOL_NOT_FOUND,handler 抛错返回 TOOL_EXECUTION_FAILED
ToolAccessRuntimegetToolList, syncToolUpdates, invokeTools, invokeUntilComplete智能体侧工具访问门面。
invokeUntilCompleteinvokeUntilComplete({ initialRequest, isComplete, nextRequest, maxRounds? })循环调用工具,直到完成或达到最大轮次,默认最多 8 轮。
ToolHandler(input, context) => JsonObject | Promise<JsonObject>工具实现函数,context 带 sessionId 和当前调用项。

Transport

API签名/成员说明
JsonTransportrequest<TRequest, TResponse>(operation, payload)所有 client 调用的唯一传输抽象。
JsonOperationHandler(payload) => TResponse | Promise<TResponse>进程内 operation handler 类型。
InProcessJsonTransportregister(operation, handler), request(operation, payload)本地 operation 路由。未注册 operation 会抛错。
HttpJsonTransportnew HttpJsonTransport({ endpoint, fetchImpl?, headers? })向 endpoint POST { operation, payload },响应 body 按 JSON 解析。
const transport = new HttpJsonTransport({
  endpoint: "https://example.com/gbz185",
  headers: { authorization: "Bearer token" }
});

const client = new AgentInterconnectClient(transport);
const results = await client.discover({ text: "calendar schedule" });

校验

API返回说明
isJsonObject(value)value is JsonObject判断普通 JSON 对象。
validateSkillDescription(skill, path?)ValidationResult校验技能 ID、名称、描述、标签、输入输出类型、示例和依赖。
validateAgentDescription(description)ValidationResult校验身份码、名称、版本、provider、capabilities、默认 IO、skills、accessMethod。
assertAgentDescription(description)void校验失败时抛出聚合错误。
validateToolDescriptor(tool)ValidationResult校验工具 ID、名称、描述、版本、输入输出 JSON 对象。
assertToolDescriptor(tool)void校验失败时抛错。

核心模型与接口

类型关键字段说明
AgentIdentityCodePartsoid、version、registrationServiceProvider、registrationRequester、ontologySerial、instanceSerial身份码结构化字段。
AgentIdentityCodestring身份码字符串别名。
IdentityAccountid、delegatorId、subject、status、credentialIds、evidence、auditLog、createdAt、updatedAt身份账户记录。
RegisterIdentityInputdelegatorId、subject、registrationServiceProvider、registrationRequester、ontologySerial、instanceSerial、issueCredential、credentialAudience、credentialScope注册身份输入。
AgentCredentialcredentialId、agentId、issuerId、subject、publicKeyPem、certificatePem、audience、scope、issuedAt、expiresAt智能体凭证。
ProcessCredentialPackagecredential、audience、scope、nonce、timestamp、payload、signature过程凭证包。
AuthenticationAssertionassertionId、result、agentId、credentialId、verifiedAt、reason、verifiedAttributes、policyAdvice鉴别断言。
AuthorizationPolicyexpectedAudience、requiredScope、allowNeedsMoreVerification、metadata授权策略。
AgentDescriptionagentId、name、version、description、provider、accessMethod、authentication、capabilities、defaultInputTypes、defaultOutputTypes、skills、discoverable、available智能体描述。
SkillDescriptionskillId、skillName、skillDescription、tags、examples、inputTypes、outputTypes、dependencies智能体技能描述。
DescriptionRecorddescription、status、published、reviews、publication、publicationCertificate、revokedAt、revokeReason描述生命周期记录。
DiscoveryQuerytext、agentId、name、requiredSkills、tags、inputTypes、outputTypes、includeUndiscoverable、requireAvailable、limit发现查询。
DiscoveryResultdescription、score、matchedBy发现结果和匹配原因。
Sessionid、mode、sender、receivers、context、createdAt会话。
Taskid、sessionId、state、stateChangedAt、messages、artifacts任务。
MessagesenderRole、senderId、sessionId、taskId、id、artifact、final、chunkIndex、lastChunk、dataItems、createdAt消息。
DataItemtype、metadata、payload消息数据项。
ToolDescriptortoolId、toolName、toolDescription、toolVersion、toolInputParam、toolOutputParam、metadata工具描述。
ToolInvokeRequestsessionId、timestamp、toolInvokeList工具调用请求。
ToolInvokeResultsessionId、timestamp、toolResultList工具调用结果。
JsonObject / JsonValueJSON 兼容值传输和模型扩展字段的基础类型。

国标覆盖常量

常量类型说明
GBZ185_FUNCTIONSGbz185FunctionDescriptor[]12 个 GB/Z 185.1 功能域到 SDK surface 的映射。
GBZ185_FRAI_INTERFACESGbz185FraiInterfaceDescriptor[]FRAI-01 到 FRAI-10 参考接口映射。
GBZ185_CONFORMANCE_MATRIXGbz185ConformanceItem[]GB/Z 185.1-185.7 条款级覆盖矩阵。