@anywalletkit/wallet-near

中文文档
0.4.0发布于 2026/11/03Apache-2.0TypeScriptESM + CJS构建来源已验证近 30 天下载 2440

任何钱包套件的NEAR钱包:SLIP-10 m/44'/397'/i'帐号(NEAR钱包路径),隐含并命名帐号,NEAR和NEP-141通过JSON-RPC的转账,手写borsh,NEP-413信件签名.

中文使用文档
文档目录6 节
  1. 安装
  2. 签名前会发生什么
  3. NEP-141 令牌
  4. 账户
  5. 网络
  6. 活动历史

@anywalletkit/wallet-near (英语)

npm

NEAR 账户 m/44'/397'/i' (SLIP-10 Ed25519 – NEAR钱包 / near-seed-phrase 路径; 索引 0 是每个 NEAR 钱包获得的, 由金向量在 @anywalletkit/conformance。没有近Api-js: Borsh 是手写对近核心的 计划( 逐字节检查 @near-js/transactions),节点回答JSON-RPC, 账户标志 sha256(borsh(tx)) 与高贵的ed25519广播 send_tx。 。 。 .

安装

npm install @anywalletkit/wallet-near
# or: pnpm add @anywalletkit/wallet-near  ·  yarn add @anywalletkit/wallet-near

时间: @anywalletkit/wallet-near (英语)发表于 发布工作流程 与出处.

import WalletManagerNear from '@anywalletkit/wallet-near'

const wallet = new WalletManagerNear(seedPhrase, { provider: ['https://free.rpc.fastnear.com', 'https://rpc.mainnet.near.org'] })
const account = await wallet.getAccount(0)          // implicit account: 64-hex id = the public key
await account.transfer({ recipient: 'alice.near', amount: 10n ** 24n })                              // 1 NEAR (yocto)
await account.transfer({ token: 'usdt.tether-token.near', recipient: 'alice.near', amount: 1_000_000n, memo: 'rent' }) // NEP-141
await account.sendTransaction({ receiverId: 'wrap.near', actions: [{ functionCall: { methodName: 'near_deposit', args: {}, gas: 30n * 10n ** 12n, deposit: 10n ** 24n } }] })
const sig = await account.sign('hello')             // "ed25519:<base58>" over the raw bytes; 32 bytes are refused (MessageIsTransactionError: a tx hash)
const nep413 = await account.signNep413({ message, nonce, recipient: 'intents.near' }) // what NEAR Intents / dApps ask for
const named = await wallet.getNamedAccount('alice.near') // same key, bound to a named account
wallet.dispose()

签名前会发生什么

每个 signTransaction 编号 : sendTransaction 编号 : transfer 穿过同一个大门:

  1. 构建数字 : signerId 编号 : publicKey 账户; nonce = access-key 非ce+1和 blockHash = 最新的最后块来自节点(因此) needsNetwork ) (中文(简体).
  2. 硬检查 (单位:千美元)UnsafeTransactionError,带有 code: 符号和键是这个 账户; 至少一个动作; 无 危险 动作- 添加密钥、 删除密钥、 删除帐号、, 部署合同、承接、创建账户、全球合同行动,签署 allowDangerousActions: true; 有效接收机代号; 预付气体 ; 300 Tgas; 收费 ; + transactionMaxFee 当设置.
  3. 飞行前 (单位:千美元)SimulationError关闭 simulate: false- NEAR没有干燥的RPC,所以 这就是交易失败的原因 在此之前 支付费用:签字人账户及其 访问密钥存在并允许调用, 可用用余额( 总计 - 锁定 - 存储) 覆盖 (a) 存款+手续费,指名收款人的存在(可设立隐含的,为 0.002 NEAR), nEP-141余额包括 ft_transfer,收件者在代号上或一个 storage_deposit 骑着它.
  4. 费用估计 (上行:预付的气体计数全额;未用气体退款;当地人 创建隐含账户的转移会增加协议的~0.007 NEAR创建费用 - 在主网上测量,不能取自气体) transferMaxFee 编号 : transactionMaxFee 盖.

signBuilt(tx) 签署您自己建立的交易(nonce, block hash and all)。 它运行 同一步骤2 硬检查——这个账户的标志和钥匙,除非 allowDangerousActions: true良好的动作 气体 300 Tgas —— 但做节点调用,所以 没有飞行前和费用上限.

在主网上测量(2026-10-10): ft_transfer 11.6 Tgas / 0.041 NEAR; 创建本地转移 接收方为 15.9 Tgas / 0.0071 NEAR.

describeTransaction(tx) 告诉你交易是做什么的,离线: near-transfer, (中文(简体) ), ft-transfer (接收/金额/从参数中解码的备忘录), ft-storage-deposit, (中文(简体) ), function-call, (中文(简体) ), batch或有警告的危险种类dangerous-action, (中文(简体) ), full-access-key, (中文(简体) ), zero-amount, (中文(简体) ), self-transfer, (中文(简体) ), high-gas, (中文(简体) ), unknown-method, (中文(简体) ), invalid-account) (中文(简体) ). account.describeTransactionOnline(tx) 添加 implicit-new-account。 。 。 .

NEP-141 令牌

transfer({ token, recipient, amount, memo }) 发送 ft_transfer 和30个Tgas. 当收件人没有在信使上注册时(storage_balance_of 无效) a storage_deposit 页:1 storage_balance_bounds.min (大多数信使为0.00125 NEAR) 在同一交易中. getTokenBalance(token) 实值 ft_balance_of。 。 。 .

账户

一个隐含的账户从它收到的第一个NEAR即存在;一个账户只持有代号,而且 没有NEAR不能签名(没有支付汽油)—— simulateTransaction 报告 名称账户 (单位:千美元)alice.near)将此密钥列为一个全程访问密钥作品,通过 getNamedAccount。 。 。 . getBalance() 总计; getAvailableBalance() 这是可以花费的.

网络

provider 是一个或多个 JSON- RPC urls(或自定义运输); 列表按顺序失效, 但返回的确定节点答案(未知账户,无效交易)除外 就像他们一样。 每个url请求时间 之后 timeoutMs (默认15,000),所以一个节点 回答总是失败的. send_tx 永远不要重新同意另一个RPC: 答案( 无响应, 节点超时) 它扔出 BroadcastUnknownError 与地方 计算 hash - 小心,别再签了. rpc.mainnet.near.org 为生产-使用而限制费率和贬值 FastNear / 一个提供者 / 您自己的代理 。 (原始内容存档于2018-03-26). CAIP-2: near:mainnet (违约)或 near:testnet。 。 。 .

活动历史

createNearHistory 是链子 HistorySource (单位:千美元)@anywalletkit/core) 在相近的街区上, API,可选地被一个档案RPC磨合.

import { createNearHistory } from '@anywalletkit/wallet-near/history'

const history = createNearHistory({ apiKey: process.env.NEARBLOCKS_KEY, rpcUrl: 'https://archival-rpc.mainnet.near.org' })
const page = await history.listActivity('fc647e203e0e099212485017b78a0e77dc330019d4b532a4d44408adc0bfd9a1', { limit: 25 })
const older = await history.listActivity(address, { cursor: page.cursor })
const one = await history.getTransaction(page.items[0].hash, address)
history.explorerTxUrl(one.hash) // https://nearblocks.io/txns/…
选项默认说明
nearblocksUrlhttps://api.nearblocks.io (单位:千美元)api-testnet.nearblocks.io(中文(简体) )
apiKey无持枪钥匙。 无键近屏蔽限为每分钟几次请求.
rpcUrl无EXPERIMENTAL_tx_status 页:1 getTransaction必须是 档案 任何超过几天的时间: rpc.mainnet.near.org 已回复 UNKNOWN_TRANSACTION 一个两星期的大麻, archival-rpc.mainnet.near.org 服务它.
networkmainnetnear:mainnet 编号 : near:testnet。 。 。 .
rateLimit0.1 rps (6/min) 无密钥, 5 有密钥近屏蔽请求每秒;一个页面需要两个.
fetch, (中文(简体) ), timeoutMs全球,15 000

名单. GET /v1/account/{id}/txns?per_page=&order=desc&cursor= (收到级别行,要求两倍的限额,因为交易通常有电话和退款收据)和 GET /v1/account/{id}/ft-txns?per_page=&order=desc&cursor= (NEP-141动向),按 transaction_hash. 近街块写出大型的 YoctoNEAR 值作为 JSON 数字; 尸体通过 parseJsonPreservingBigInts,它重新引用了 16+ 数字整数字元之前 JSON.parse 因此,它们保持精确,而近街区的值已经四舍五入到一分之一(7e+23)作为正则并标出行 raw.approximate。 。 。 . delta_amount nEP-141行是一个字符串,而且总是精确的.

测绘. 其前身是 system (气体退款)不转帐. TRANSFER 行动 FUNCTION_CALL 存款(NEP-141 one-yoctoNEAR形式除外)成为原地转让的前身 —— 收款人;向他人收取的收据的第一个非转让行动成为 call (单位:千美元)to = 接收器, method, (中文(简体) ), programs = 每种方法按顺序排列)。 NEP-141行变为 nep141 与合同的转让 token, (中文(简体) ), symbol 编号 : decimals 从 ft (单位:千美元) ft_transfer_call 输入 intents.near 属于自己 intents.near,怎样 @anywalletkit/protocol-swap2-near-intents 寻找). status 从 outcomes.status, (中文(简体) ), fee 从 outcomes_agg.transaction_fee, (中文(简体) ), block = 最低 block_height 工作组, time 从交易的 block_timestamp。 。 。 .

咒语. 基础64 JSON { v: 1, tx, ft }页:1 id 编号 : event_index 每个列表的最后一行'' =没有开始, null =累)——相邻街区 cursor= 是一个密钥集, 因此页面可以取顶端 limit 按区块时间加链接进行交易,并准确恢复每一份清单的停止位置;不再询问一份短而完全消耗的清单。 一份交易的收据 block_timestamp,因此交易从不分页(NEP-141行载有其收据的块状时间,并可能在一页后作为自己的一行登陆).

单笔交易. GET /v1/txns/{hash} (交易级动作,签名人/接收人, receipts[].fts 与 双 三角洲 • raw.approximate) (中文(简体) ). 与 rpcUrl, (中文(简体) ), EXPERIMENTAL_tx_status(hash, signer) 完全重建行: 本地腿从 Transfer 编号 : FunctionCall (删除未包装的动作,所以 call.to 实际接收者),NEP-141腿从接收记录(EVENT_JSON 编号141 ft_transfer 编号 : ft_mint 编号 : ft_burn 遗产 Transfer N from A to B 线条 wrap.near 发射, fee =================== (========= (============ (================== tokens_burnt, (中文(简体) ), status 从 Failure· ; raw.rpc 保持结果。 不了解散列的RPC或正在下方的RPC会把近地块排成一行.

装入 test/fixtures/history/ 2026年10月14日从 api.nearblocks.io (无键)和 archival-rpc.mainnet.near.org: 测试钱包 /txns (一 NEAR 随其退款收据发出,a storage_deposit + 键 ft_transfer 电话,收件人从 intents.near)及其为空 /ft-txns,加上——因为测试钱包没有NEP-141行—— /txns, (中文(简体) ), /ft-txns, (中文(简体) ), /v1/txns/{hash} 和RPC项目 EXPERIMENTAL_tx_status nEAR Intents 模块的固定交易 Fdk3i7f9… (20.5 wNEAR) (中文(简体) ) ft_transfer_call 输入 intents.near 以 b1633df6…) (中文(简体) ). test/history.test.ts 检查近意模块将列表行和 RPC 修改后行描述为 Bridged wNEAR。 。 。 .

版本与发布记录

@anywalletkit/wallet-near 共发布 13 个版本,首次发布于 2026/10/25;过去 12 个月发布了 13 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.4.0latest2026/11/034 天前
0.3.12026/10/308 天前
0.3.02026/10/309 天前
0.2.02026/10/2810 天前
0.1.92026/10/2811 天前
0.1.82026/10/2711 天前

关于 @anywalletkit/wallet-near 的常见问题

@anywalletkit/wallet-near 是什么?

任何钱包套件的NEAR钱包:SLIP-10 m/44'/397'/i'帐号(NEAR钱包路径),隐含并命名帐号,NEAR和NEP-141通过JSON-RPC的转账,手写borsh,NEP-413信件签名.

如何安装 @anywalletkit/wallet-near?

在项目目录运行 npm install @anywalletkit/wallet-near,或使用 pnpm add / yarn add / bun add。

@anywalletkit/wallet-near 支持 TypeScript 吗?

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

@anywalletkit/wallet-near 支持 ESM 还是 CommonJS?

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

@anywalletkit/wallet-near 需要什么版本的 Node.js?

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

@anywalletkit/wallet-near 可以商用吗?

@anywalletkit/wallet-near 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@anywalletkit/wallet-near 的下载量有多少?

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

@anywalletkit/wallet-near 还在维护吗?

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