关于 TRX Staking & SR Voting
TRX Staking & SR Voting 是用于查询 TRON 质押状态、选择超级代表、投票及领取奖励的技能。其脚本遵循 TRON Stake 2.0 数据模型,并为投票和奖励交易提供 dry-run 预览。
主要功能
- 01查询 TRON Power 和质押余额
- 02列出排名靠前的超级代表
- 03向单个或多个 SR 投票
- 04查询并领取投票奖励
- 05预览投票和领取操作
适用场景
- 01投票前检查可用投票权
- 02比较 SR 排名和得票比例
- 03向选定的代表分配投票
- 04查询或领取累积的投票奖励
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ bofai/ skills --skill trx-staking-&-sr-voting安装后在 Claude Code 中输入/trx-staking-&-sr-voting确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
package.json.gitignorepackage-lock.jsonREADME.mdresources/staking_config.jsonscripts/utils.jsstatus.jssr-list.jsrewards.jsvote.js详细介绍
TRX 质押与 SR 投票
质押 TRX 以赚取 TRON Power,为超级代表(SR)投票,并领取投票奖励。TRON 使用委托权益证明机制——得票数排名前 27 的 SR 负责产块,并每 6 小时按比例向投票者分发奖励。
快速开始
cd trx-staking-skill && npm install
export TRON_PRIVATE_KEY="<your-private-key>"
export TRON_NETWORK="mainnet"
注意
切勿显示或记录私钥。
可用脚本
1. status.js — 质押概览
node scripts/status.js
node scripts/status.js TWalletAddress
输出: tron_power、total_frozen_trx、votes[]、unused_tron_power、pending_reward_trx
2. sr-list.js — 列出超级代表
node scripts/sr-list.js # Top 27 (active SRs)
node scripts/sr-list.js --top 50 # Top 50 (includes partners)
输出: super_representatives[](排名、地址、URL、得票数、得票占比、是否为活跃 SR)
3. vote.js — 为 SR 投票
# All votes to one SR
node scripts/vote.js TSRAddress --dry-run
node scripts/vote.js TSRAddress
# Split votes across multiple SRs
node scripts/vote.js --split TSR1:60,TSR2:40 --dry-run
说明
投票前必须拥有 TRON Power(已质押的 TRX)。使用 energy-bandwidth 技能质押 TRX。
4. rewards.js — 投票奖励
node scripts/rewards.js # Check pending rewards
node scripts/rewards.js --claim --dry-run
node scripts/rewards.js --claim
使用模式
完整质押工作流
- 质押 TRX(通过 energy-bandwidth 技能):
node stake.js 1000 ENERGY - 检查 TRON Power:
node scripts/status.js - 浏览 SR:
node scripts/sr-list.js --top 10 - 投票:
node scripts/vote.js TSRAddress --dry-run→ 确认 → 执行 - 定期检查奖励:
node scripts/rewards.js - 领取奖励:
node scripts/rewards.js --claim
符合 TRON Stake 2.0 规范
此技能兼容 TRON Stake 2.0 数据模型和 API:
- **账户数据:**读取 Stake 2.0 的
frozenV2[]数组,以计算 TRON Power 和投票额度(status.js、vote.js)。 - **投票:**使用
voteWitnessAccount,根据 Stake 2.0 的冻结余额获取 TRON Power 并进行投票。 - **投票奖励:**通过
getReward查询,并通过withdrawBalance领取(rewards.js)。这与解除质押后的提取分开处理。 - 质押/解除质押 TRX 由配套的 energy-bandwidth 技能处理(该技能使用
freezeBalanceV2、unfreezeBalanceV2和withdrawExpireUnfreeze)。
注意
14 天解锁期:解除质押 TRX(通过 energy-bandwidth 技能)时,TRX 会进入 14 天冷却期,在此期间处于锁定状态,且不产生资源或投票权。Agent 在发起解除质押前,必须始终提醒用户这一延迟。14 天后,TRX 不会自动返还——必须调用
withdrawExpireUnfreeze才能取回。解除质押还会移除相应的 TRON Power,使任何依赖该 Power 的有效投票失效。
关键信息
| 属性 | 值 |
|---|---|
| 1 个冻结的 TRX | = 1 TRON Power(TP) |
| 活跃 SR | 得票数排名前 27 |
| SR 合作伙伴 | 排名 28-127 |
| 投票周期 | 每 6 小时 |
| 区块奖励 | 每个周期 128 TRX,按得票数比例分配 |
| 解除质押冷却期 | 14 天(强制,Stake 2.0) |
| 解除质押后的提取 | 手动 — 必须调用 withdrawExpireUnfreeze |
安全规则
- 切勿显示私钥。
- **投票前先进行试运行。**新投票会完全替换之前的投票。
- 投票前验证 SR 地址——通过
sr-list.js确认。 - **了解投票会替换所有之前的投票。**每笔投票交易都会设置完整的投票名单。
- **解除质押前,务必提醒用户 14 天的解锁期。**用户希望解除质押(通过 energy-bandwidth 技能)时,必须了解解除质押的 TRX 会锁定 14 天、必须手动提取,并且失去的 TRON Power 会使投票失效。
常见问题
| 问题 | 解决方案 |
|---|---|
No TRON Power | 先使用 energy-bandwidth 技能质押 TRX |
Percentages don't sum to 100% | 调整分配比例 |
No rewards to claim | 投票后等待一个投票周期(6 小时) |
版本 1.0.0 — 由 M2M Agent Registry 为 Bank of AI 创建