lp-fees-claim
Claim accrued DIEM fees from the FeeLocker contract. Use at the start of each tick to harvest LP earnings before reinvesting.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Claim accrued DIEM fees from the FeeLocker contract. Use at the start of each tick to harvest LP earnings before reinvesting.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Decide how to allocate DIEM between Venice compute staking, WETH swap for x402 API access, Uniswap LP, and Aerodrome LP. Run once per tick before any capital movement.
Read all agent on-chain positions via the check-portfolio.ts script. Use this instead of raw curl/cast calls to avoid hex encoding mistakes.
Claim DIEM from FeeLocker, run accumulate-vs-build analysis, and route earnings to LP or Venice staking. Scheduled every 12 hours via aeon. DRY-RUN BY DEFAULT — pass --live to execute.
Launch a Liquid Protocol token with a LiquidPresaleVault presale. STAKE MODE ONLY (policy 2026-06-12) — depositors lock DIEM and always get it back; allocation is lock-to-earn. One vault per launch, 10% of supply, 60d default lock.
Working in the deploy-autonomous GitHub template repo — agent harness, identity layer, Venice provider, safety modules, and the create-identity CLI.
Proactive health check — skill failures, LP state, memory flags, FeeLocker balance. Run 3× daily to surface issues before they compound.
| name | lp-fees-claim |
| description | Claim accrued DIEM fees from the FeeLocker contract. Use at the start of each tick to harvest LP earnings before reinvesting. |
Claims DIEM fees earned by the agent's LP position in its token/DIEM pool. Fees accrue in the FeeLocker contract; claim transfers them to the agent wallet.
| Contract | Address |
|---|---|
| FeeLocker | 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF |
| DIEM ERC-20 | 0xF4d97F2da56e8c3098f3a8D538DB630A2606a024 |
| Agent wallet | $AGENT_WALLET |
cast call 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF \
"availableFees(address,address)(uint256)" \
$AGENT_WALLET \
0xF4d97F2da56e8c3098f3a8D538DB630A2606a024 \
--rpc-url https://mainnet.base.org
# Returns wei. Divide by 1e18 for DIEM. Current: ~6.75 DIEM (2026-05-16)
ABI note: Both
availableFeesandclaimtake TWO address args:(feeOwner, token). Raw selector:0x8296535aforavailableFees(address,address). A common mistake is callingclaim(address)with only the token — this reverts.
cast send 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF \
"claim(address,address)" \
$AGENT_WALLET \
0xF4d97F2da56e8c3098f3a8D538DB630A2606a024 \
--private-key $AGENT_PRIVATE_KEY \
--rpc-url https://mainnet.base.org
# Check DIEM landed in wallet after claim tx confirms
cast call 0xF4d97F2da56e8c3098f3a8D538DB630A2606a024 \
"balanceOf(address)(uint256)" \
$AGENT_WALLET \
--rpc-url https://mainnet.base.org
harness/tick.ts → getClaimable() + claimDiem() → getDiemBalance() → reinvestToLP()
Key functions in harness/providers/venice.ts:
getClaimable(config, agentAddress, publicClient) // reads availableFees
claimDiem(config, agentAddress, txSender) // sends claim tx, returns hash
getDiemBalance(config, agentAddress, publicClient) // reads balanceOf post-claim
Claim only fires when availableFees >= config.stakeThreshold (default: 0.1 DIEM = 1e17 wei).
Set via VENICE_STAKE_THRESHOLD env var.
Always read getDiemBalance() after claim receipt (not before) and pass that value to
reinvestToLP(). Pre-claim availableFees may differ from actual received amount due to
rounding or dust already in wallet.