Help us improve
Share bugs, ideas, or general feedback.
From agentic-defi
Merkl is a DeFi incentive platform that distributes rewards across 50+ chains. Unlike Aave or SparkLend, Merkl is **not a lending protocol** — it's a reward distribution layer that incentivizes positions on other protocols.
npx claudepluginhub bootnodedev/agentic-defi --plugin agentic-defiHow this skill is triggered — by the user, by Claude, or both
Slash command
/agentic-defi:merkl-agentic-walletThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Merkl is a DeFi incentive platform that distributes rewards across 50+ chains. Unlike Aave or SparkLend, Merkl is **not a lending protocol** — it's a reward distribution layer that incentivizes positions on other protocols.
Creates p5.js generative art with seeded randomness, noise fields, and interactive parameter exploration. Use for algorithmic art, flow fields, or particle systems.
Share bugs, ideas, or general feedback.
Merkl is a DeFi incentive platform that distributes rewards across 50+ chains. Unlike Aave or SparkLend, Merkl is not a lending protocol — it's a reward distribution layer that incentivizes positions on other protocols.
execute_tx — submit a single claim transaction (no approve needed)node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js opportunities [--chain-id <id>] [--protocol <name>] [--token <symbol|addr>]
Examples:
# All live opportunities
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js opportunities
# Aave opportunities on Ethereum
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js opportunities --chain-id 1 --protocol aave
# USDC opportunities
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js opportunities --token USDC
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js check-rewards --wallet <addr> [--chain-id <id>]
Examples:
# All chains
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js check-rewards --wallet 0x1234...
# Specific chain
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js check-rewards --wallet 0x1234... --chain-id 1
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js claim-rewards --wallet <addr> --chain-id <id> [--token <symbol|addr>]
Examples:
# Claim all rewards on Ethereum
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js claim-rewards --wallet 0x1234... --chain-id 1
# Claim specific token
node ${CLAUDE_PLUGIN_DATA}/dist/skills/merkl-agentic-wallet/merkl.js claim-rewards --wallet 0x1234... --chain-id 1 --token USDC
Address: 0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae (same proxy on most chains)
claim(address[] users, address[] tokens, uint256[] amounts, bytes32[][] proofs)
users — recipient addresses (from API response)tokens — reward token addressesamounts — cumulative amounts (raw bigint, not human-readable)proofs — merkle proofs per token (from API response)Merkl incentivizes positions on many protocols. When an opportunity shows:
/aave skill to supply/lend. Merkl rewards accrue automatically./spark skill. Same behavior.list_wallets to get sessionId and addressmerkl check-rewards --wallet <addr>merkl claim-rewards --wallet <addr> --chain-id <id>execute_tx with the returned {to, data, value: "0"}merkl check-rewards --wallet <addr> --chain-id <id> again| Mistake | Fix |
|---|---|
| Merkle proofs expired | Proofs are valid ~4 hours. Always encode + submit promptly. |
Missing --chain-id on claim | Chain ID is required for claiming — the Distributor is per-chain. |
| Trying to approve before claim | No approve needed — the Distributor sends tokens directly. |
Using execute_batch_tx for claim | Use execute_tx — claim is a single transaction. |
| Claiming with no unclaimed rewards | Always check-rewards first to verify there are claimable amounts. |