@agenticprimitives/connect-client

中文文档
1.0.0-alpha.36发布于 2026/10/26MITTypeScriptES Module近 30 天下载 2733

通用依赖方连接客户端:手交给中央-自动之家(FedCM-first → OIDC transferm/poup),将代码交换给SA署名的放范围代表团. 依赖光谱230/259的一半;没有证书永远起源于依赖的应用程序.

中文使用文档
文档目录3 节
  1. 为什么
  2. 使用量
  3. 边界

@ agenticprimitives/ 连接客户端

部分 代理先导 ——代理应用程序的开源信任底板:可以签名的身份,行为时间检查权限,所有者携带的证据. 开发者工具包 • 妇女 所有软件包

这个 依赖方 连接的一半。 依赖的应用程序不会使证书或OAuth请求本身:它手接 关闭到用户的中央原子 内容 (IdP)——主持证书仪式(wallet / Google /) YouVersion / passkey)和监护权——并带回由SA署署名的放箭代表团. 标准OIDC (单位:千美元)authorize → code → /token与无缝 FedCM 首个 前面 。 .

见 第295区, (中文(简体) ), 第230区/259区, (中文(简体) ), ADR-0019 (英语), (中文(简体) ), ADR-0021 (英语), (中文(简体) ), ADR-0032 (英语)。 。 。 .

为什么

YouVersion/ Google OAuth 客户端为 由登记在册的原籍如果依赖应用程序 来源于 OAuth 本身( 来源于它自己), 严格的提供者拒绝它 。 定律——和学说—— 是 Home 是单一的证书/ Outh 来源; 依赖应用程序只交换返回代码 。 这个 软件包是依赖边协议, 提取一次而不是复制每个应用程序.

使用量

import { createConnectClient, connectViaFedcm, connectViaPopup, connectViaRedirect } from '@agenticprimitives/connect-client';

// The app injects its domain.ts — NO hostnames live in this package (ADR-0021).
const connect = createConnectClient({
  clientId: 'demo-web',
  delegate: '0x…',                       // the relying-site backend account the Home scopes its grant to
  redirectUri: () => window.location.origin + '/',
  resolveAuthOrigin: (name) => resolveHomeOrigin(name),   // app: name → <home> | apex
  isAllowedIssuerOrigin: (o) => isAllowedHome(o),         // app: issuer allowlist
});

// FedCM-first, then popup, then redirect (the seamless launcher):
try {
  const r = await connectViaFedcm(await resolveHomeOrigin(''), 'demo-web', onProgress);
  // r.idToken + r.delegation — done, no /token round-trip
} catch {
  const p = await connectViaPopup(connect, name, 'demo-web-connect-relay', onProgress, signal);
  if (p.status === 'blocked') {
    const { url, stash } = await connectViaRedirect(connect, name);
    sessionStorage.setItem('connect', JSON.stringify(stash));
    window.location.href = url;                            // returns ?code&state
  } else if (p.status === 'success') {
    const tok = await connect.exchangeCode(p.authOrigin, p.code, p.codeVerifier);
    await connect.verifyIdToken(p.authOrigin, tok.idToken, p.stash.nonce);
  }
}

打开 ?code&state 返回(方向路径),读取隐藏, exchangeCode,则 verifyIdToken。 。 。 .

边界

唯倚侧相. 经纪人/家庭一方是 @agenticprimitives/connect;证书仪式在 Ưμ㼯Aconnect-auth) (中文(简体) ). 只导入此套件 @agenticprimitives/types + 键 @agenticprimitives/fedcm-rp, (中文(简体) ), 是 WebCrypto 的,没有主机名.

版本与发布记录

@agenticprimitives/connect-client 共发布 32 个版本,首次发布于 2026/07/01;过去 12 个月发布了 32 个版本。

版本发布日期距今
1.0.0-alpha.36latest2026/10/2612 天前
1.0.0-alpha.352026/10/2612 天前
1.0.0-alpha.342026/10/1721 天前
1.0.0-alpha.332026/10/1722 天前
1.0.0-alpha.322026/10/1622 天前
1.0.0-alpha.312026/10/1622 天前

关于 @agenticprimitives/connect-client 的常见问题

@agenticprimitives/connect-client 是什么?

通用依赖方连接客户端:手交给中央-自动之家(FedCM-first → OIDC transferm/poup),将代码交换给SA署名的放范围代表团. 依赖光谱230/259的一半;没有证书永远起源于依赖的应用程序.

如何安装 @agenticprimitives/connect-client?

在项目目录运行 npm install @agenticprimitives/connect-client,或使用 pnpm add / yarn add / bun add。

@agenticprimitives/connect-client 支持 TypeScript 吗?

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

@agenticprimitives/connect-client 支持 ESM 还是 CommonJS?

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

@agenticprimitives/connect-client 可以商用吗?

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

@agenticprimitives/connect-client 的下载量有多少?

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

@agenticprimitives/connect-client 还在维护吗?

最新版本 1.0.0-alpha.36 发布于 2026/10/26(12 天前);至今共发布 32 个版本,其中过去 12 个月发布了 32 个;首次发布于 2026/07/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。