feat(action-providers): add Graph Advocate provider (trader intel + agent reputation over x402)#1357
Conversation
🟡 Heimdall Review Status
|
…gent reputation over x402) Adds a `graphadvocate` action provider with three paid actions (get_hyperliquid_trader_score, get_polymarket_trader_score, get_agent_reputation) that auto-pay a small USDC fee on Base through the agent's own wallet, reusing AgentKit's existing x402 signing stack (x402Client + wrapFetchWithPayment + registerExactEvmScheme) — no new dependencies. Base-only, with a per-call maxPaymentUsdc cap enforced before signing. Includes README, unit tests, and a changeset.
2c03dc4 to
39c8669
Compare
|
@murrlincoln — following up on this one. CI is green and it's conflict-free; I've completed the funded-wallet run the checklist called for (run from graph-advocate's own Base wallet, as offered in the description). Each of the three actions was exercised against its live endpoint with a real x402 USDC payment on Base, using AgentKit's own exact-EVM x402 stack ( 1.
2.
3.
Each |
Description
Adds a
graphadvocateaction provider giving agents paid access to Graph Advocate's onchain-intelligence endpoints. Three actions:get_hyperliquid_trader_score— Hyperliquid perps trading skill score (~$0.02 USDC)get_polymarket_trader_score— Polymarket trading skill score (~$0.01 USDC)get_agent_reputation— ERC-8004 identity + USDC-settlement reputation score (~$0.02 USDC)Each action POSTs to graphadvocate.com and auto-pays the small USDC fee on Base through the agent's own wallet, using the same x402 signing stack as the built-in
x402provider (x402Client+wrapFetchWithPayment+registerExactEvmScheme). No new dependencies.maxPaymentUsdc, default 1.0 / env-overridable) refuses any action priced above the cap before anything is signed.erc8004(identity) andx402(payments) providers by adding a reputation / skill-scoring layer. Fits WISHLIST → "Trading & Data".Tests
graphAdvocateActionProvider.test.tscoversupportsNetwork, the payment-cap guard (refuses before signing), and the EVM-wallet-only guard.tsc --noEmitpasses clean for the new provider against current types.Checklist
graphadvocate/README.md).changeset/graph-advocate-action-provider.md)🤖 Generated with Claude Code