ethena

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

⛔ HARD RULES (read first, always)

⚠️ 硬性规则(请务必先阅读)

  • ALWAYS call
    ethena_rate
    before any on-chain operation — cooldown duration is live from chain, not a constant
  • NEVER call
    wallet_transfer
    directly — use
    ethena_*
    native tools only (wallet_transfer triggers UI block in deny-all policy)
  • NEVER hardcode cooldown as "7 days" — actual value is fetched per request (currently ~24h)
  • NEVER guess or assume the sUSDe/USDe exchange rate — call
    ethena_rate
  • HARD LIMIT: max 5 tool calls per user request
  • ON-CHAIN EXECUTION: after
    ethena_*
    returns calldata, sign and broadcast via
    wallet_sign_transaction
    — NEVER skip or simulate

  • 始终在任何链上操作前调用
    ethena_rate
    ——冷却时长来自链上实时数据,并非固定值
  • 切勿直接调用
    wallet_transfer
    ——仅使用
    ethena_*
    原生工具(wallet_transfer会触发“全拒绝”策略下的UI拦截)
  • 切勿将冷却期硬编码为“7天”——实际值会根据每次请求获取(当前约为24小时)
  • 切勿猜测或假设sUSDe/USDe兑换汇率——请调用
    ethena_rate
  • 硬性限制:每个用户请求最多调用5次工具
  • 链上执行
    ethena_*
    返回调用数据后,通过
    wallet_sign_transaction
    签名并广播——切勿跳过或模拟

Ethena — USDe Staking

Ethena — USDe质押

Ethena lets users stake USDe to receive sUSDe, an ERC4626 yield-bearing token. Rewards accrue from ETH staking + funding rate delta-hedging. sUSDe value only increases or stays flat — never decreases.
Ethena允许用户质押USDe以获得sUSDe,这是一种ERC4626标准的生息代币。收益来自ETH质押+资金费率 delta对冲。sUSDe的价值只会上涨或保持稳定——绝不会下跌。

Key Contracts (Ethereum Mainnet)

核心合约(以太坊主网)

ContractAddress
USDe
0x4c9EDD5852cd905f086C759E8383e09bff1E68B3
sUSDe (StakedUSDe)
0x9D39A5DE30e57443BfF2A8307A4256c8797A3497
USDeSilo (cooldown)
0x7FC7c91D556B400AFa565013E3F32055a0713425
合约地址
USDe
0x4c9EDD5852cd905f086C759E8383e09bff1E68B3
sUSDe (StakedUSDe)
0x9D39A5DE30e57443BfF2A8307A4256c8797A3497
USDeSilo(冷却期合约)
0x7FC7c91D556B400AFa565013E3F32055a0713425

Native Tools

原生工具

ToolWhen to useReturns
ethena_rate()
Rate query, before any tx, cooldown checkrate, totalAssets, totalSupply, cooldown_seconds
ethena_apy()
APY / yield / return questionapy_current, apy_7d, apy_30d, tvl_usd
ethena_balance(wallet)
Balance checkusde_balance, susde_balance, cooldown_end_ts
ethena_stake(amount, receiver)
Stake USDe2 tx calldata (approve + deposit)
ethena_cooldown_start(amount)
Start unstakecooldown tx calldata + live cooldown_hours
ethena_unstake(receiver)
Claim after cooldownunstake tx calldata
工具使用场景返回值
ethena_rate()
查询汇率、交易前确认、冷却期检查rate, totalAssets, totalSupply, cooldown_seconds
ethena_apy()
查询年化收益率/收益/回报apy_current, apy_7d, apy_30d, tvl_usd
ethena_balance(wallet)
余额查询usde_balance, susde_balance, cooldown_end_ts
ethena_stake(amount, receiver)
质押USDe2笔交易调用数据(授权+存入)
ethena_cooldown_start(amount)
发起赎回冷却期交易调用数据 + 实时冷却时长(小时)
ethena_unstake(receiver)
冷却期结束后提取赎回交易调用数据

End-to-End Execution — Sign & Broadcast

端到端执行流程 — 签名与广播

ethena_*
tools return unsigned calldata. To actually execute on-chain:
ethena_stake / ethena_cooldown_start / ethena_unstake
        ↓  returns tx dict  {to, data, value, chain_id}
wallet_sign_transaction(tx)          ← wallet skill
        ↓  returns signed_tx hex
wallet_sign_transaction broadcast    ← same call, auto-broadcasts
ethena_*
工具返回未签名的调用数据。要实际在链上执行:
ethena_stake / ethena_cooldown_start / ethena_unstake
        ↓  返回交易字典  {to, data, value, chain_id}
wallet_sign_transaction(tx)          ← wallet技能
        ↓  返回签名后的交易十六进制数据
wallet_sign_transaction broadcast    ← 同一调用,自动广播

Standard Flow (stake example)

标准流程(质押示例)

Step 1  ethena_rate()                    # confirm rate + cooldown before tx
Step 2  ethena_stake("100", receiver)    # returns [approve_tx, deposit_tx]
Step 3  wallet_sign_transaction(approve_tx, broadcast=True)
Step 4  wallet_sign_transaction(deposit_tx, broadcast=True)
步骤1  ethena_rate()                    # 交易前确认汇率和冷却期
步骤2  ethena_stake("100", receiver)    # 返回[授权交易, 存入交易]
步骤3  wallet_sign_transaction(approve_tx, broadcast=True)
步骤4  wallet_sign_transaction(deposit_tx, broadcast=True)

Standard Flow (unstake)

标准流程(赎回)

Step 1  ethena_rate()                    # get live cooldown duration
Step 2  ethena_cooldown_start("100")     # returns cooldown_tx
Step 3  wallet_sign_transaction(cooldown_tx, broadcast=True)
Step 4  [wait cooldown_hours]
Step 5  ethena_unstake(receiver)         # returns unstake_tx
Step 6  wallet_sign_transaction(unstake_tx, broadcast=True)
步骤1  ethena_rate()                    # 获取实时冷却时长
步骤2  ethena_cooldown_start("100")     # 返回冷却期交易
步骤3  wallet_sign_transaction(cooldown_tx, broadcast=True)
步骤4  [等待冷却时长]
步骤5  ethena_unstake(receiver)         # 返回赎回交易
步骤6  wallet_sign_transaction(unstake_tx, broadcast=True)

Cross-skill dependency

跨技能依赖

Load wallet-policy skill first to confirm wildcard policy is active.
wallet_sign_transaction
is part of the wallet skill — it is available natively; no extra install needed.
请先加载wallet-policy技能,确认通配符策略已激活。
wallet_sign_transaction
属于wallet技能——原生可用,无需额外安装。

Error handling

错误处理

ErrorCauseFix
403 on signPrivy policy deny-allApprove wildcard policy in Web UI
nonce conflictTwo txs broadcast too fastWait for Step 3 receipt before Step 4
gas estimate failApprove not mined yetAdd 5s delay between approve and deposit
错误原因修复方案
签名时返回403Privy策略为全拒绝在Web界面中批准通配符策略
随机数冲突两笔交易广播过快等待步骤3的交易收据后再执行步骤4
燃气费预估失败授权交易尚未确认在授权和存入交易之间添加5秒延迟

Tool Routing — IF/THEN

工具路由规则 — IF/THEN

IF "APY" OR "yield" OR "return" OR "收益率" OR "年化"
  → ethena_apy()

IF "rate" OR "price" OR "how much USDe per sUSDe" OR "汇率" OR "多少USDe"
  → ethena_rate()

IF "balance" OR "how much do I have" OR "余额"
  → ethena_balance(wallet_address)

IF "stake" OR "deposit" OR "质押" AND amount given
  → ethena_stake(amount, receiver)

IF "unstake" OR "redeem" OR "cooldown" OR "withdraw" OR "赎回" — starting flow
  → ethena_cooldown_start(amount)

IF "claim" OR "unstake" OR "withdraw" AND cooldown already done
  → ethena_unstake(receiver)

IF "how long" OR "cooldown duration" OR "等多久"
  → ethena_rate()  ← returns cooldown_seconds live from chain
如果包含 "APY" 或 "yield" 或 "return" 或 "收益率" 或 "年化"
  → 调用ethena_apy()

如果包含 "rate" 或 "price" 或 "how much USDe per sUSDe" 或 "汇率" 或 "多少USDe"
  → 调用ethena_rate()

如果包含 "balance" 或 "how much do I have" 或 "余额"
  → 调用ethena_balance(wallet_address)

如果包含 "stake" 或 "deposit" 或 "质押" 且提供了金额
  → 调用ethena_stake(amount, receiver)

如果包含 "unstake" 或 "redeem" 或 "cooldown" 或 "withdraw" 或 "赎回" — 发起赎回流程
  → 调用ethena_cooldown_start(amount)

如果包含 "claim" 或 "unstake" 或 "withdraw" 且冷却期已结束
  → 调用ethena_unstake(receiver)

如果包含 "how long" 或 "cooldown duration" 或 "等多久"
  → 调用ethena_rate()  ← 返回链上实时冷却秒数

Few-Shot Examples

示例演示

ETH-01 — APY query
"sUSDe 现在的 APY 是多少?"
ethena_apy()
→ "当前 APY 3.72%,7日均值 3.68%"
ETH-02 — Rate query
"1 sUSDe 能换多少 USDe?"
ethena_rate()
→ "1 sUSDe = 1.227675 USDe(totalAssets/totalSupply 实时计算)"
ETH-03 — Balance
"我有多少 USDe 和 sUSDe?"
ethena_balance("0x...")
→ {usde_balance: 500.0, susde_balance: 81.46, susde_in_usde: 100.0}
ETH-04 — Stake
"帮我质押 100 USDe"
ethena_rate()          # get live rate for estimate
ethena_stake("100", receiver="0x...")
→ [{approve tx}, {deposit tx}]  # execute in order
ETH-04b — Stake end-to-end (sign & broadcast)
"帮我质押 100 USDe,直接执行到链上"
ethena_rate()                                   # Step 1: confirm rate
ethena_stake("100", receiver="0x...")           # Step 2: get calldata
→ [approve_tx, deposit_tx]
wallet_sign_transaction(approve_tx, broadcast=True)   # Step 3
wallet_sign_transaction(deposit_tx, broadcast=True)   # Step 4
→ tx_hash confirmed
ETH-06b — Unstake end-to-end (sign & broadcast)
"帮我开始赎回 50 sUSDe,直接发链上"
ethena_rate()                                         # Step 1: get cooldown
ethena_cooldown_start("50")                           # Step 2: get calldata
→ {cooldown_tx, cooldown_hours: 24.0}
wallet_sign_transaction(cooldown_tx, broadcast=True)  # Step 3
→ tx_hash confirmed, 等待 24h 后再调 ethena_unstake
ETH-05 — Cooldown duration
"赎回要等多久?"
ethena_rate()
→ "cooldown_seconds: 86400 → 当前需等待 24 小时"
ETH-06 — Start cooldown
"开始赎回 50 USDe 的 sUSDe"
ethena_cooldown_start("50")
→ {transaction: {...}, cooldown_hours: 24.0}
ETH-07 — Claim after cooldown
"cooldown 到了,帮我提款"
ethena_unstake("0x...")
→ {transaction: {...}}
ETH-08 — English yield query
"What's the current yield for staking USDe?"
ethena_apy()
→ "Current APY: 3.72%"
ETH-01 — 年化收益率查询
"sUSDe 现在的 APY 是多少?"
ethena_apy()
→ "当前 APY 3.72%,7日均值 3.68%"
ETH-02 — 汇率查询
"1 sUSDe 能换多少 USDe?"
ethena_rate()
→ "1 sUSDe = 1.227675 USDe(通过totalAssets/totalSupply实时计算)"
ETH-03 — 余额查询
"我有多少 USDe 和 sUSDe?"
ethena_balance("0x...")
→ {usde_balance: 500.0, susde_balance: 81.46, susde_in_usde: 100.0}
ETH-04 — 质押操作
"帮我质押 100 USDe"
ethena_rate()          # 获取实时汇率用于估算
ethena_stake("100", receiver="0x...")
→ [{授权交易}, {存入交易}]  # 按顺序执行
ETH-04b — 质押全流程(签名&广播)
"帮我质押 100 USDe,直接执行到链上"
ethena_rate()                                   # 步骤1:确认汇率
ethena_stake("100", receiver="0x...")           # 步骤2:获取调用数据
→ [approve_tx, deposit_tx]
wallet_sign_transaction(approve_tx, broadcast=True)   # 步骤3
wallet_sign_transaction(deposit_tx, broadcast=True)   # 步骤4
→ 交易哈希已确认
ETH-06b — 赎回全流程(签名&广播)
"帮我开始赎回 50 sUSDe,直接发链上"
ethena_rate()                                         # 步骤1:获取冷却时长
ethena_cooldown_start("50")                           # 步骤2:获取调用数据
→ {cooldown_tx, cooldown_hours: 24.0}
wallet_sign_transaction(cooldown_tx, broadcast=True)  # 步骤3
→ 交易哈希已确认,等待24小时后调用ethena_unstake
ETH-05 — 冷却时长查询
"赎回要等多久?"
ethena_rate()
→ "cooldown_seconds: 86400 → 当前需等待24小时"
ETH-06 — 发起冷却流程
"开始赎回 50 USDe 对应的 sUSDe"
ethena_cooldown_start("50")
→ {transaction: {...}, cooldown_hours: 24.0}
ETH-07 — 冷却期结束后提取
"cooldown 到了,帮我提款"
ethena_unstake("0x...")
→ {transaction: {...}}
ETH-08 — 英文收益查询
"What's the current yield for staking USDe?"
ethena_apy()
→ "Current APY: 3.72%"

How Staking Works

质押原理

  1. Stake:
    ethena_stake
    → approve USDe + deposit → receive sUSDe (ERC4626)
  2. Yield: Protocol transfers USDe rewards every 8h, linearly vested over 8h (anti-sandwich)
  3. Unstake:
    ethena_cooldown_start
    → wait cooldown (query live, currently ~24h) →
    ethena_unstake
sUSDe/USDe rate only goes up. Cooldown duration may change — always query
ethena_rate
.
After generating calldata via any
ethena_*
tool, always follow up with
wallet_sign_transaction(tx, broadcast=True)
to actually submit on-chain. Never stop at calldata generation.
  1. 质押:调用
    ethena_stake
    → 授权USDe + 存入 → 获得sUSDe(ERC4626标准)
  2. 收益发放:协议每8小时发放USDe奖励,分8小时线性解锁(防止三明治攻击)
  3. 赎回:调用
    ethena_cooldown_start
    → 等待冷却期(查询实时时长,当前约24小时)→ 调用
    ethena_unstake
sUSDe/USDe的汇率只会上涨。冷却时长可能变更——请始终调用
ethena_rate
查询。
通过任意
ethena_*
工具生成调用数据后,务必调用
wallet_sign_transaction(tx, broadcast=True)
来实际提交到链上
。切勿仅停留在生成调用数据的步骤。

Prerequisites — Wallet Policy

前置条件 — 钱包策略

Before any on-chain operation, ensure a wildcard wallet policy is active (deny key export + allow
*
). Load the wallet-policy skill if needed.
在进行任何链上操作前,请确保通配符钱包策略已激活(禁止密钥导出 + 允许
*
)。如有需要,请加载wallet-policy技能。

Gotchas

注意事项

  • Cooldown is ~24h (not 7 days) — but always verify with
    ethena_rate()
    as it can change via governance
  • No negative rewards — sUSDe value can only go up or stay flat
  • Rewards every 8h — linearly vested, no sandwich opportunities
  • sUSDe can be sold on DEXes without cooldown if liquidity exists
  • EU/EEA restriction — sUSDe acquisition not offered in EU/EEA
  • 冷却期约为24小时(并非7天)——但请始终通过
    ethena_rate()
    验证,因为该时长可通过治理变更
  • 无负收益——sUSDe的价值只会上涨或保持稳定
  • 每8小时发放一次奖励——线性解锁,无三明治攻击机会
  • 如果有流动性,sUSDe可在去中心化交易所出售,无需等待冷却期
  • 欧盟/欧洲经济区限制——欧盟/欧洲经济区不提供sUSDe获取服务