@anywalletkit/protocol-staking-spl-stake-pool-solana

中文文档
0.2.12发布于 2026/11/03Apache-2.0TypeScriptES Module构建来源已验证近 30 天下载 2235

一个简单的包,让@anywalletkit/wallet-solana 钱包账户通过 SPL 赌注池(默认情况下是Jito) 赌注SOL – JitosOL, 立即退出储备或通过一个赌注账户, 索赔, 读取利率, APY 和收益.

中文使用文档
文档目录9 节
  1. 安装
  2. SPL的赌注池和JitoSOL是什么
  3. 使用量
  4. 配置
  5. 规则失效
  6. 为什么指令是手编码的
  7. 测试
  8. 许可证
  9. 活动

@anywalletkit/protocol-scaping-spl-stake-pool-solana (英语)

npm

一个简单的软件包 @anywalletkit/wallet-solana 钱包账户赌注 通过游泳池 SPL 游泳池 程序 - 池户 默认情况: 赌注SOL ~ 吉多索尔, 立即退出储备或通过利害关系账户,索赔,改为 费率,APY和收入.

安装

npm install @anywalletkit/protocol-staking-spl-stake-pool-solana @anywalletkit/core
# or: pnpm add @anywalletkit/protocol-staking-spl-stake-pool-solana @anywalletkit/core  ·  yarn add @anywalletkit/protocol-staking-spl-stake-pool-solana @anywalletkit/core

时间: @anywalletkit/protocol-scaping-spl-stake-pool-solana (英语)发表于 发布工作流程 与出处.

建为 第四次审查会议 StakingProtocol 类型 内 @anywalletkit/core - 在Lido(ETH液体吸取)后,SSV(用电筒吸取) 冷却器(GRAM liquid sawing)和通取器(GRAM sawing)——以及EVM的第二个. 基础类在 src/staking-protocol.js 是同一文件, 字节相同: 类型是 链-不可知,和索拉纳的"双相"出局(即时对入局账户+) (c) 符合其要求的“队列”索赔合同.

机械师是从一个生产钱包(React Industrial/Hermes)中取出. 核查状况(2026-09-07,主网): 赌注和立即退出 实际资金 从钱包( 4个交易, 金额匹配模块的) 引用到灯塔) 延迟退出 (记账+停用)是 经核查 simulateTransaction 作为大持有人 索赔 只有通过 索赔周期需要具备以下条件: 1SOL值,目前仍在运行. scripts/verify-live.mjs 重新检查 账户能承受的每个形状, 密钥从未涉及.

SPL的赌注池和JitoSOL是什么

SPL 的股份池持有许多验证人的股份账户并有一个准备金。 这个 池名符号 (JitoSOL 用于 Jito; bSOL 和大多数验证器 LST 使用相同的 程序)是指其SOL值为 total_lamports / pool_token_supply,每个时代移动一次(~2天) 游泳池的曲柄应用了时代的奖励. Jito 在顶部添加 MEV 提示 通货膨胀奖励.

  • 铃声 是一个 DepositSol 指令: SOL 到保留地, 符号 价格(Jito:不收取押金).
  • 即时退出 —— 说 WithdrawSol: 烧令牌, SOL 由储备支付 一次,减去游泳池的SOL取出费(吉托:0.1%). 只是当 储备足够(一般为~1000 SOL).
  • 延迟退出 —— 说 WithdrawStake: 刻入符号, 池会分割一个验证符 钱包拥有的一个新入息账户的入息账户(吉托:0.1%) ));此模块在同一交易中关闭它。 划时代之后 边界 索赔 扫描SOL(和 账户的租金) 回到钱包。 利害关系方案的最低授权 (1 SOL + 租金)是这条路的地板.

钱包的赌注账户有种子 (单位:千美元)createWithSeed(wallet, "<pool>-unstake:<i>", StakeProgram),8个插槽),所以 队列可以从钱包中单独恢复, 从未出现过麻风键盘 标志。 预设地址( SOL 发送给可预见种子) 地址,地点 CreateAccountWithSeed )仍然使用: 退出 首先用系统将 SOL 移动回钱包 TransferWithSeed,则 在那里创建赌注账户.

使用量

import WalletManagerSolana from '@anywalletkit/wallet-solana'
import SplStakePoolProtocolSolana from '@anywalletkit/protocol-staking-spl-stake-pool-solana'

const wallet = new WalletManagerSolana(seed, { provider: 'https://api.mainnet-beta.solana.com' })
const account = await wallet.getAccount(0)

const jito = new SplStakePoolProtocolSolana(account) // pool: 'jito' by default; reads ride the account's RPC

// Stake 1 SOL — JitoSOL lands at the pool rate (DepositSolWithSlippage, 0.5 % floor)
const { hash, fee } = await jito.stake({ amount: 10n ** 9n })
await jito.awaitConfirmation(hash)

// Exit: delayed (default — stake account, claim after the epoch boundary) or instant (reserve)
await jito.requestWithdrawal({ amount: 10n ** 9n })                    // ≥ 1 SOL worth
await jito.requestWithdrawal({ amount: 5n * 10n ** 7n, mode: 'instant' })

// The queue, then the claim
const { requests, claimableIds } = await jito.getWithdrawalRequests()
if (claimableIds.length) await jito.claimWithdrawals({ ids: claimableIds })

// Views
await jito.getStakedBalance()   // { balance: JitoSOL, rate: lamports per JitoSOL (1e9), total: lamports }
await jito.getPoolData()        // rate, previousRate, updated, instantLiquidity, fees, minimumStakeLamports…
await jito.getApr()             // percent — on-chain estimate, or your provider's figure via the `apr` hook
await jito.getRewards()         // { earned, entryRate, deposited, minted, firstStakeAt } from the account's own deposits

配置

new SplStakePoolProtocolSolana(account, {
  pool: 'jito',                        // or { name, pool, mint, symbol } for any pool on the program
  provider: [url1, url2],              // JSON-RPC URL(s), a @solana/rpc client, or { request(method, params) }
  commitment: 'confirmed',
  slippageBps: 50,                     // floor on quoted amounts (..WithSlippage instructions)
  computeUnitLimit: 300_000,
  computeUnitPrice: 50_000n,           // micro-lamports per unit — ≈ 0.000015 SOL priority fee
  unstakeSlots: 8,                     // delayed exits tracked per wallet
  apr: async () => fetchJitoApy()      // provider APY hook (Jito's stats include MEV); default: epoch-over-epoch estimate
})

只读账户( E){ getAddress })对于每个视图都足够;写作需要 账户 sendTransaction。模块将账户交给一个空的 { version: 0, instructions } 发文 @anywalletkit/wallet-solana 套装 (一) blackash的一生和付费人签名、签名和广播 键从不输入模块.

规则失效

在建立任何交易前检查过 :

  • 配置的薄荷必须等于链上池的薄荷; 池账户 须由SPL Stake 池程序拥有;
  • 池必须更新当前时代(last_update_epoch == epoch——本方案拒绝每笔存款和退款;
  • 延迟退出必须至少产生效果 rent + minimum delegation 离开 从验证器账户中拆分的账户的最小值相同(对照 现场平衡,不仅仅是最后更新的列表, 否则赌注程序 Split 失败;
  • 立即退出必须符合储备减其租金的规定;
  • 每一笔钱都花出去了 ..WithSlippage 楼层(默认为0.5%);
  • 限制向当局存入或提取特别业务费的集合被拒绝 为了那条路,而不是去失败.

为什么指令是手编码的

@anywalletkit/wallet-solana 以 @solana/* 3.十. 出版情况 利害关系池客户端想要 web3.js v1 和 @solana-program/stake 想要5号包; 要么把第二个索拉纳堆放进消费者的包里 六个 指令 此模块需要稳定、 有文件记录的布局( Stake Pool) DepositSol 14个 WithdrawStake 10个 WithdrawSol 页:1 ..WithSlippage 变式25/24/26,系统 CreateAccountWithSeed 3个, 铃声 Deactivate 第5条 Withdraw 4),对照程序来源核实 和模拟—— src/spl-stake-pool-codec.js 将其编码为 @solana/addresses 财务报告和审定财务报表 @solana/instructions 只有这个.

测试

npm test               # unit tests over mainnet fixtures (pool state, validator list, stake account)
npm run verify:live    # reads + simulateTransaction of every shape on mainnet, no keys

许可证

阿帕奇 - 2.0

活动

describeActivity(tx, { own }) 标签 SPL STake Pool 交易,用于钱包的历史、离线和同步。 一个交易就是这个模块 当Stake Pool程序 SPoo1Ku8WFXoNDMHPsrGSTSG1Y47rzgn41SLUNakuHy 它所引用的方案之一call.programs 编号 : call.to) (中文(简体) ). 指针标签——指针池指令基础的第一个字节58 call.data 当源头经过它时——选择那种: DepositSol 14个 DepositSolWithSlippage 25 → stake "Soked SOL"; (中文(简体) ); WithdrawSol 16/26 ∗∗ unstake (原始内容存档于2018-10-21) (中文(简体) ). Unstead JitoSOL (即时); WithdrawStake 10/24 ∗∗∗ unstake "请求不取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取 没有数据,游泳池运动就决定(放在钱包上 ) 桩子上,被烧掉 —— 无人取走,SOL马上到 —— 。 每一个预设的池形符号( E)SPL_STAKE_POOL_ADDRESS_MAP)和案例的池被贴上标签并取出字幕名称("Jito · Solana"); 同一程序的未知池仍然被确认为 "SPL Stake Pool · Solana"。 。 。 . counterparty 是池账户。 清理一个已完成的延迟未取取取( 取取取程序) withdraw ——它不包含股份池指令. own 应当包含钱包 财务报告和审定财务报表 其代号账户:来源使SPL向所有者移动正常化,但当ATA进入时,将代号账户地址保持为正确网的源头 own。 。 。 .

装入 fixtures/activity/ 是测试钱包资助的 Jito 运行(DepositSol ×2, 撤回Sol ×3; 2026-09-07...-1007, 从 getTransaction jsonParsed) (中文(简体) ); negatives/ 持有平面SOL转接和平面JitoSOL SPL转接(仅形状).

版本与发布记录

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

版本发布日期距今
0.2.12latest2026/11/034 天前
0.2.112026/10/308 天前
0.2.102026/10/309 天前
0.2.92026/10/2811 天前
0.2.82026/10/2711 天前
0.2.72026/10/2612 天前

关于 @anywalletkit/protocol-staking-spl-stake-pool-solana 的常见问题

@anywalletkit/protocol-staking-spl-stake-pool-solana 是什么?

一个简单的包,让@anywalletkit/wallet-solana 钱包账户通过 SPL 赌注池(默认情况下是Jito) 赌注SOL – JitosOL, 立即退出储备或通过一个赌注账户, 索赔, 读取利率, APY 和收益.

如何安装 @anywalletkit/protocol-staking-spl-stake-pool-solana?

在项目目录运行 npm install @anywalletkit/protocol-staking-spl-stake-pool-solana,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@anywalletkit/core(0.8.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@anywalletkit/protocol-staking-spl-stake-pool-solana 支持 TypeScript 吗?

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

@anywalletkit/protocol-staking-spl-stake-pool-solana 支持 ESM 还是 CommonJS?

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

@anywalletkit/protocol-staking-spl-stake-pool-solana 需要什么版本的 Node.js?

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

@anywalletkit/protocol-staking-spl-stake-pool-solana 可以商用吗?

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

@anywalletkit/protocol-staking-spl-stake-pool-solana 的下载量有多少?

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

@anywalletkit/protocol-staking-spl-stake-pool-solana 还在维护吗?

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