# @bnbagent/studio-runtime 中文文档

规范地址：https://npmcn.com/package/%40bnbagent/studio-runtime/

版本：0\.0\.16
npm 元数据更新时间：2026-10-26T06:49:09.042Z
中文译文更新时间：2026-11-08T11:17:06.349Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40bnbagent/studio-runtime
原文对照：https://npmcn.com/package/%40bnbagent/studio-runtime/?lang=original
项目主页：https://github.com/bnb-chain/bnbagent-studio#readme
源码仓库：https://github.com/bnb-chain/bnbagent-studio

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

- 包体积（解压后）：1.9 MB，91 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=22
- 运行依赖：14 个
- peer 依赖：@bnbagent/sdk \>=0\.6\.1 \<0\.7\.0
- 首次发布：2026-07-30T02:00:33.853Z
- 最新版本发布：2026-10-26T06:49:08.716Z
- 近 30 天下载量：1793（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：53（近 12 个月 53 个）

## 中文简介

BNB链上的bnbagent-studio销售代理的运行时间库(配置,钱包,审计,ERC-8004/8183,x402或MPP over B402,Pieverse,只读链工具).

## 安装

```sh
npm install @bnbagent/studio-runtime
```

也可以使用：`pnpm add @bnbagent/studio-runtime`、`yarn add @bnbagent/studio-runtime`、`bun add @bnbagent/studio-runtime`

## README

# @bnbagent/ studio-runtime (英语)

[![npm version](https://img.shields.io/npm/v/@bnbagent/studio-runtime.svg)](https://www.npmjs.com/package/@bnbagent/studio-runtime) [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D22-339933)](https://nodejs.org/) [![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)

Bnbagent-studio销售代理商背后的 TypeScript 运行时间库:配置,钱包保管,签名政策,审计,ERC-8004身份,ERC-8183商业,x402或MPP支付超过B402,Pieverse信用,可交付存储,并只读链工具.

大多数用户不应该从这个软件包的编程开始. 安装 [`@bnbagent/studio-cli`](https://www.npmjs.com/package/@bnbagent/studio-cli)运行 `bag skills install`,并使用 `/bnbagent-studio` 在克劳德代码或克塞尔。 技能设计工作流程; `bag init` 生成代理;生成的代理导入此运行时间.

> 运行时间正在积极开发中,可能会引入1.0前的突破变化. 从 BSC 测试网和相容的 Pin Studio 和 SDK 版本开始.

## 其所坐处

```text
Claude Code / Cursor
        │  /bnbagent-studio
        ▼
@bnbagent/studio-cli (`bag`)       design, scaffold, diagnose, deploy, operate
        │  generates
        ▼
your app/agent source              business value, prompts, faces, fixed signing
        │  imports
        ▼
@bnbagent/studio-runtime           config, custody, policy, commerce, storage, tools
        │  uses
        ▼
@bnbagent/sdk + BNB Chain          protocol and on-chain implementation
```

运行时间是部署的依赖;CLI不是. 如果全球CLI被删除, 被排放的代理会继续运行 。 工作室发布CLI,运行时间一起 所以新生成的代码,运行时间表面保持对齐.

## 运行时间提供

-   一贯 `studio.toml` 以及用于当地和部署执行的工作空间发现模式.
-   3个钱包后端:加密 `evm-local`,信任钱包代理 Kit `twak`,和限定会期 `altana`。 。 。 .
-   固定签署政策,并花出ERC-8183和x402操作的边界.
-   ERC-8004 注册,解析,元数据,以及服务端点对账.
-   ERC-8183 引文校验外加购买,提交,取回,并结算工作流程.
-   保护x402和本地的MPP+B402购买者,其主机、接收方、资产、网络、按要求、重试/发送、接收和每日预算检查.
-   协议选择B402销售商,配有替代品x402和MPP适配器,在工作前结算支付请求,明确FREE通过,并进行回放保护.
-   Pieverse认证,模型发现,使用,信用,x402上架,以及更新的构件.
-   当地或IPFS可交付存储和仅由附件编辑的审计活动.
-   15个只读工具,可以被包为Vercel AI SDK,MCP或另一个代理框架.

## 安装

### 建议:让Studio给你电线

```bash
npm install --global @bnbagent/studio-cli
bag skills install
```

然后请所安装的技能创建或扩展销售者:

```text
/bnbagent-studio Create a BNB Chain seller agent named researchagent and help me
choose its commerce rail, service faces, wallet, LLM, storage, and deployment.
```

`bag init` 写入兼容的运行时间和 SDK 依赖性 `app/agent/package.json`。 。 。 .

### 直接图书馆安装

```bash
npm install @bnbagent/studio-runtime @bnbagent/sdk
```

要求和软件包格式:

-   22号节点或更新;
-   同伴依赖 `@bnbagent/sdk >=0.6.1 <0.7.0` (0.6.1是安全层:它携带SDKbug-bounty修复销售门并依赖钱包流动);
-   无害环境管理、共同JS和TypeScript关于根和每个有记录的子路径的声明;
-   框架中性核心:此软件包没有导入代理框架或网络服务器.

LLM模型分辨率使用Vercel AI SDK. 链式接入和交易类型 `viem` 财务报告和审定财务报表 `@bnbagent/sdk`。 。 。 .

## 根 API

根导出有意小并符合生成代码所使用的方便 :

```ts
import {
  findProjectRoot,
  getPolicy,
  getWallet,
  loadStudioToml,
} from "@bnbagent/studio-runtime";

const projectRoot = findProjectRoot();
if (projectRoot === null) {
  throw new Error("studio.toml was not found");
}

const config = loadStudioToml();
const policy = getPolicy();
const wallet = getWallet();

console.log({
  projectRoot,
  project: config.project,
  walletAddress: wallet.address,
  policy,
});
```

根也出口 `Policy` 和遥测 `emit` 帮手 从子路径导入焦点化的 API , 这样依赖性和安全边界在您的代码中仍然可见 .

## 公共子路径

| 导入 | 主要责任 |
| --- | --- |
| `@bnbagent/studio-runtime` | 项目发现加上配置、政策、遥测和钱包便利. |
| `@bnbagent/studio-runtime/config` | 查找工作空间和代理根, 载入 `studio.toml`,加载本地嵌入值,并读取代理注册. |
| `@bnbagent/studio-runtime/policy` | 构造被冻结的运行时间 `Policy` 用于生成代码. |
| `@bnbagent/studio-runtime/secretWrite` | 原子创建只拥有者的秘密文件. |
| `@bnbagent/studio-runtime/networks` | BSC 网络和 U-token 注册、 RPC 选择和小数字符串/`bigint` 转换. |
| `@bnbagent/studio-runtime/wallet` | 构建 `evm-local`, (中文(简体) ), `twak`,或 `altana` 钱包提供者和应用程序签名策略. |
| `@bnbagent/studio-runtime/llm` | 将 Studio LLM 配置解析为 Vercel AI SDK 语言模型. |
| `@bnbagent/studio-runtime/storage` | 选择本地开发存储或持久IPFS存储可交付产品. |
| `@bnbagent/studio-runtime/audit` | 记录、查询、尾端和将操作包装为仅由附件编辑的审计事件. |
| `@bnbagent/studio-runtime/erc8004` | 注册和确定身份;更新元数据和特定协议的服务终点. |
| `@bnbagent/studio-runtime/erc8183` | 谈判,核实,购买,检查,提交,取回,结算代管工作. |
| `@bnbagent/studio-runtime/x402` | 守卫了x402买方,预算分类账,付款签章,卖方保单,B402卖方,以及HTTP信封中件. |
| `@bnbagent/studio-runtime/mpp` | 原生MPP+B402引出/购买客户端,商家信任政策,支付结果错误,以及EIP-3009只发送. |
| `@bnbagent/studio-runtime/b402` | 协议中性B402销售商,犬类政策,X402/MPP适配器选择,销售-路径解析,MPP再播放-存储注入,和HTTP信封中间软件. |
| `@bnbagent/studio-runtime/pieverse` | SIWE/API-键生命周期,模式目录,用法,信用分配,上调,以及自动更新支持. |
| `@bnbagent/studio-runtime/tools` | 15个纯粹只读的钱包,链条,身份,商业,交易,块,合同视图,和网络工具. |

生成的 `.d.ts` 与软件包一起运出的文件是每个入口的确切符号和参数引用.

## 共同一体化

### 仅读链式工具

工具模块不暴露签名. 您可以为 LLM 框架直接调用它或包接所选的函数 :

```ts
import {
  balanceNative,
  balanceU,
  networkInfo,
  walletAddress,
} from "@bnbagent/studio-runtime/tools";

const address = await walletAddress();
const [native, u, network] = await Promise.all([
  balanceNative(address, "bsc-testnet"),
  balanceU(address, "bsc-testnet"),
  networkInfo("bsc-testnet"),
]);

console.log({ native, u, network });
```

完整的只读集是 `walletInfo`, (中文(简体) ), `walletList`, (中文(简体) ), `walletAddress`, (中文(简体) ), `balanceNative`, (中文(简体) ), `balanceU`, (中文(简体) ), `pieverseUsage`, (中文(简体) ), `agentInfo`, (中文(简体) ), `agentByAddress`, (中文(简体) ), `jobStatus`, (中文(简体) ), `jobList`, (中文(简体) ), `jobCount`, (中文(简体) ), `txStatus`, (中文(简体) ), `blockInfo`, (中文(简体) ), `contractCallView`,以及 `networkInfo`。 。 。 .

### 守卫x402购买

买方首先探测了受保护的URL,根据保单验证了退回的付款要求,在限定的付款上签了名,并重新审查了付款请求。 在使用前配置或信任商家; 允许的主机不允许向任意的收件人支付.

平行的磁共振购买者住在 `@bnbagent/studio-runtime/mpp`它只接受本地 `b402.charge` 并允许一个EIP-3009付费发送。 丢失的成功接收或丢失的发送后回复报告为 `unknown`; 呼叫者不得自动重试。 P0 需要一个 `evm-local`\- 兼容 `sign.typed_data` 钱包.

```ts
import { loadStudioToml } from "@bnbagent/studio-runtime/config";
import { getWallet } from "@bnbagent/studio-runtime/wallet";
import {
  fetchWithPayment,
  X402BuyerPolicy,
} from "@bnbagent/studio-runtime/x402";

const policy = X402BuyerPolicy.fromToml(loadStudioToml());
const result = await fetchWithPayment("https://merchant.example/resource", {
  wallet: getWallet(),
  maxUsd: Math.min(0.25, policy.maxPerRequestUsd),
  allowedHosts: [...policy.effectiveAllowedHosts],
});

console.log({
  status: result.statusCode,
  paidUsd: result.paidUsd,
  body: result.json,
});
```

使用 `bag x402 trust` 将一个商地钉在它预期的付款地址和每个呼叫的上限上。 运行时字节比对被挑战者,限制网络和资产,应用更紧的调用者和政策上限,并与其他付费电话共享所配置的日分类账.

### ERC-8183 工作流程

ERC-8183子路径将关键阶段分开,而不是暴露出一般交易原始:

-   `negotiateWithSeller` 获得卖方签名的报价;
-   `verifySignedJob` 检查链上供资工作是否仍然符合已签署的条件和预期的卖方;
-   `buyWorkflow` 履行买方方的创建、登记、预算和资金序列;
-   `submitWorkflow` 提交卖方可交付的参考材料;
-   `fetchWorkflow` 检索提交的交付品;
-   `settleWorkflow` 执行授权的批准、拒绝或争议决定;
-   `getJobSummary` 读取当前链上状态.

生成的销售者代码在 `src/signing.ts`。LLM只执行下列工作: `src/sellerCore.ts`;它不选择价格,不参见原始的签名方法,也不决定某项工作是否获得资助.

### ERC-8004 身份标识

身份的子路径提供 `register`, (中文(简体) ), `show`, (中文(简体) ), `resolve`, (中文(简体) ), `resolveService`, (中文(简体) ), `setMetadata`, (中文(简体) ), `updateEndpoint`,以及 `updateServiceEndpoint`。协议意识帮助器将 A2A 代理卡和 MCP 可流端规范化,因此更新一个服务不会抹去另一个服务.

在生成的项目中,偏好 `bag deploy verify --provider <bnb|aws>` 部署后。 它检查提供者状态,并将活端点与ERC-8004调和. 将 Studio 整合到另一个应用程序并自己拥有生命周期时,直接运行时间功能是合适的.

## 运行时间公约

### 项目发现

生成的工作空间保留 `studio.toml` 内 `app/agent/` 和敏感的地方状态 `.studio/`发现从当前进程向上走并了解两个地点。 不移动钱包目录 `app/agent/`;该目录是可部署代码根.

### 配置和数额

-   配置和 CLI 边界使用十进制字符串,所以符号数量不会失去精确度 .
-   付款代码转换为 `bigint` 内部.
-   ERC-8183使用的U有18个小数;一个B402/x402测试符可能使用不同的小数,不可互换.
-   `"0"` 是一个刻意的FREE价格,而不是一个缺失的价值. ERC-8183在零时跳过代管符;x402在零时完全跳过B402.
-   RPC的覆接是每个网络. 签名域,被允许的主机,收件人,资产,合同地址,以及预算都是安全配置,而不是化妆品设置.

### 钱包材料

-   `evm-local` 读取来自工作空间根的加密密钥 `.studio/wallets/` 打开它与 `WALLET_PASSWORD`。 。 。 .
-   `twak` 使用项目专用的"信托"钱包特工克特住宅及其保管人.
-   `altana` 将管理员密钥保存在本地状态, 只给运行时间 `ALTANA_SESSION`。 。 。 .

本地机密不是部署文物的一部分。 CLI收集最小运行时间的材料,并通过所选部署秘密通道发送. 不要手动捆绑 `.studio/`,回声密钥值,或将密码放入命令行.

### 储存和审计

当地可交付的储存是用于发展的,而且故意未能做好部署准备,因为它将无法在远程运行期间存活。 IPFS存储是可持久且公开的;配置 Pinning 服务上传端点,并在真正交付前写入密钥. 审计助手编辑敏感字段和附件操作记录,但审计日志并不能取代链上状态的验证.

## 安全边界

-   **一个签名人:** 生成的代理是其销售者运行时间的唯一钱包持有人.
-   **没有 LLM 签名 :** 绝不将钱包签名、任意交易、引号签名或和解包成LLM工具.
-   **决定性货币路径 :** 价格夹,引文签名,资金状态核实,和x402结算属于固定代码.
-   **工作前验证 :** 正价 ERC-8183 工作只有在获得资助的工作与所签条件相符之后才开始;正价x402 工作只有在结算后才开始.
-   **未关闭 :** 接受方,主机,资产,网络,金额,合同,非ce,到期,再试,以及日常预算检查都是授权范围.
-   **买方人工结算:** a 提交的ERC-8183工作仍然需要经授权的批准、拒绝或争议行动.
-   **没有通用交易工具包 :** 使用被绑定的工作流程 API,并保持 LLM-face 工具表面只读.

## 运行时间对 CLI

| 需求 | 使用 |
| --- | --- |
| 创建、扩展、运行、诊断或部署卖方 | `/bnbagent-studio` 技术安装 `@bnbagent/studio-cli` |
| 自动启用已记录的生命周期步骤 | `bag` 国 际 |
| 执行生成代理的运行时间行为 | `@bnbagent/studio-runtime` |
| 构建自定义主机或框架集成 | 运行时子路径 API + `@bnbagent/sdk` |
| 检查精确的命令旗 | `bag --help` 或者说 `bag <command> --help` |
| 检查精确的文字符号 | 软件包已运出声明文件 |

## 免责声明

此运行时间处理钱包访问,签署政策,块链交易,付费请求和可交付存储. 其检查降低了具体风险,但并不使代理、整合、交易对手、智能合同、模型输出、存储供应商、RPC服务、付款促进者或部署平台具有可信度.

如果直接整合运行时间,则负责维护其固定的签名边界,验证配置和对应方,保护密钥和证书,审查交易和结算权限,限制支出,保障基础设施,并支付由此产生的任何网络或云费用. 在使用真实资金之前,先在BSC测试网测试定制代码和合同部署.

此软件包根据 Apache- 2. 0 许可并提供 **一样**,没有保证或保证。 撰稿人和撰稿人不对资金损失、证书受损、服务中断、意外收费或因使用造成其他损害负责。 本一揽子计划没有金融、投资、法律或税务建议.

## 常见问题

### @bnbagent/studio-runtime 是什么？

BNB链上的bnbagent-studio销售代理的运行时间库\(配置,钱包,审计,ERC-8004/8183,x402或MPP over B402,Pieverse,只读链工具\)\.

### 如何安装 @bnbagent/studio-runtime？

在项目目录运行 npm install @bnbagent/studio-runtime，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@bnbagent/sdk（\>=0\.6\.1 \<0\.7\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @bnbagent/studio-runtime 支持 TypeScript 吗？

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

### @bnbagent/studio-runtime 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @bnbagent/studio-runtime 需要什么版本的 Node\.js？

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

### @bnbagent/studio-runtime 可以商用吗？

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

### @bnbagent/studio-runtime 的下载量有多少？

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

### @bnbagent/studio-runtime 还在维护吗？

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

