Skills agenticbets
Place prediction bets on token prices on Base via AgenticBets. Use when the user wants to bet UP or DOWN on whether a token price will go up or down, check prediction market odds, view open betting rounds, or claim winnings from settled rounds. Supports all tokens with active markets on AgenticBets (AGBETS, CLAWD, MOLT, WCHAN, and more). Uses Bankr Submit API to execute bet and claim transactions on Base.
git clone https://github.com/BankrBot/skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/BankrBot/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/agenticbets" ~/.claude/skills/bankrbot-skills-agenticbets && rm -rf "$T"
agenticbets/SKILL.mdAgenticBets
Prediction markets on Base. Bet UP or DOWN on token prices with USDC.
When To Use
Use AgenticBets when the user wants to:
- Bet on whether a token price goes up or down (e.g., "bet $5 UP on AGBETS")
- Check prediction market odds (e.g., "what are the odds on AGBETS?")
- See which markets are open (e.g., "what prediction markets can I bet on?")
- Claim winnings from settled rounds
- Check their bet status or claimable winnings
Prerequisites
Bankr CLI
Install the Bankr CLI and log in to get an API key:
bun install -g @bankr/cli # or: npm install -g @bankr/cli
Bankr API Key
The scripts read the API key from
~/.bankr/config.json (or $BANKR_CONFIG if set).
Option A: CLI login (recommended)
# Step 1 — send OTP bankr login email user@example.com # Step 2 — verify and generate key with write access bankr login email user@example.com --code 123456 --accept-terms --key-name "AgenticBets" --read-write
Option B: Web login
- Visit bankr.bot/api
- Sign in with email + OTP
- Generate an API key with Wallet API write access enabled
The API key must have write access (
walletApiEnabled, not readOnly) to place bets and claim winnings. Read-only keys can still list markets and check odds.
USDC Balance
Make sure your Bankr wallet has USDC on Base before betting. Check with:
bankr wallet portfolio
Quick Start
List Open Markets
What prediction markets are open on AgenticBets?
scripts/agenticbets.py list
Check Odds
What are the odds on AGBETS?
scripts/agenticbets.py odds AGBETS
Place a Bet
Bet $5 UP on AGBETS
scripts/agenticbets.py bet AGBETS up 5
Claim Winnings
Claim my AgenticBets winnings for AGBETS epoch 42
scripts/agenticbets.py claim AGBETS 42
Script Usage
agenticbets.py
Single script that handles all AgenticBets operations. Reads and writes use the Bankr Wallet API.
scripts/agenticbets.py <command> [args...]
Commands:
| Command | Args | Description |
|---|---|---|
| | List markets. Status: , , , (default: ) |
| | Show bull/bear odds and pool size for a market |
| | Detailed market info including contract, epoch, time to lock |
| | Place a bet. Amount in USDC (e.g., for $5) |
| | Claim winnings for settled epochs |
| | Check if an epoch is claimable |
Environment:
| Variable | Default | Description |
|---|---|---|
| | Path to Bankr config file containing |
How It Works
Prediction Market Flow
- A round opens for a token (e.g., $AGBETS)
- Users bet UP (bull — price goes up) or DOWN (bear — price goes down) with USDC
- Betting window closes (typically 5 minutes)
- Price is locked at close
- After the round duration, price is checked again
- If price went up → bull wins. If down → bear wins.
- Winners split the entire pool proportional to their bet size (minus 3% fee)
Transaction Flow (via Bankr Submit API)
All on-chain transactions go through the Bankr Wallet API:
- Script fetches market data from
GET https://agenticbets.dev/api/bankr/markets - Script gets wallet address from
GET https://api.bankr.bot/wallet/me - For bets:
- Approve USDC spend:
with ERC20POST https://api.bankr.bot/wallet/submit
calldataapprove() - Place bet:
withPOST https://api.bankr.bot/wallet/submit
calldatabet()
- Approve USDC spend:
- For claims:
withPOST https://api.bankr.bot/wallet/submit
calldataclaim() - All transactions use
and include a human-readablewaitForConfirmation: truedescription
Bankr Submit API Reference
Endpoint:
POST https://api.bankr.bot/wallet/submit
Headers:
X-API-Key: bk_YOUR_API_KEY Content-Type: application/json
Request body:
{ "transaction": { "to": "0xContractAddress", "chainId": 8453, "data": "0xCalldata...", "value": "0" }, "description": "Place $5 UP bet on AGBETS", "waitForConfirmation": true }
Success response:
{ "success": true, "transactionHash": "0x...", "status": "success", "blockNumber": "12345678", "signer": "0xYourWalletAddress", "chainId": 8453 }
Wallet info:
GET https://api.bankr.bot/wallet/me returns the wallet address and supported chains.
Contracts
| Contract | Address | Tokens |
|---|---|---|
| BankrBetsPrediction V1 | | CLAWD, MOLT, WCHAN |
| BankrBetsPrediction V2 | | AGBETS |
| USDC (Base) | | 6 decimals |
Contract Functions
bet(address _token, uint256 _amount, uint8 _position)
— token contract address_token
— USDC amount in raw units (multiply by 1e6)_amount
—_position
= Bull (UP),0
= Bear (DOWN)1- Selector:
0x37a02e62
claim(address _token, uint256[] _epochs)
— token contract address_token
— array of epoch numbers to claim_epochs- Selector:
0x45718278
claimable(address _token, uint256 _epoch, address _user) -> bool
- Returns true if the user has unclaimed winnings for that epoch
- Selector:
0xd3c035fc
USDC Approval
Before betting, the script approves USDC spend on the prediction contract:
ERC20.approve(predictionContractAddress, betAmount)
- Selector:
0x095ea7b3
Token Addresses
| Token | Address | Prediction Contract |
|---|---|---|
| AGBETS | | V2 () |
| All others | Varies (from API) | V1 () |
Use the
/api/bankr/markets endpoint to get current token addresses — don't hardcode.
Markets API
GET
https://agenticbets.dev/api/bankr/markets
Returns:
{ "markets": [ { "token": "0x37d183FCf1DA460a64D21E754b3E6144C4e11BA3", "symbol": "AGBETS", "marketUrl": "https://agenticbets.dev/market#...", "poolUsdc": 42.50, "bullPct": 61.0, "bearPct": 39.0, "lockTimestamp": 1713100000, "secondsToLock": 83, "predictionContract": "0x2CD785Ba87e0841A8458141bc43d23a56a00557f", "status": "open", "epoch": "5", "poolAddress": "0x...", "creator": "0x...", "createdAt": 1700000000, "contractVersion": "v2" } ], "count": 4, "updatedAt": "2026-04-14T12:00:00.000Z" }
Key fields:
—status
(accepting bets),"open"
(waiting for settlement),"locked"
(done)"settled"
— seconds until betting closes.secondsToLock
if not open.null
— total USDC in the round poolpoolUsdc
/bullPct
— current odds splitbearPct
— which contract to call for this tokenpredictionContract
Strategy Tips
- Check odds before betting. If 90% of the pool is on one side, the other side pays ~10x if it wins.
- Pool size matters. Larger pools = more reliable odds. Small pools can swing wildly with one bet.
- Time your bet. Betting late (< 30s to lock) lets you see the final odds but risks missing the window.
- Minimum bet is $1 USDC. No maximum.
- Check balance first. Make sure you have enough USDC on Base before betting (
).bankr wallet portfolio
Examples
User: "What prediction markets can I bet on?"
scripts/agenticbets.py list open
Response format:
Open Markets: $AGBETS — Pool: $42.50 | UP: 61% DOWN: 39% | Closes in 83s $CLAWD — Pool: $18.00 | UP: 50% DOWN: 50% | Closes in 210s
User: "Bet $10 on AGBETS going up"
scripts/agenticbets.py bet AGBETS up 10
Steps:
- Fetch market data → get token address + prediction contract
- Approve USDC via Bankr Submit:
ERC20.approve(0x2CD785..., 10000000) - Place bet via Bankr Submit:
BankrBetsPrediction.bet(0x37d183..., 10000000, 0) - Return tx hashes
User: "Do I have any claimable winnings?"
scripts/agenticbets.py claimable AGBETS 5
Calls
claimable(token, epoch, walletAddress) — returns true/false.
User: "Claim my AGBETS winnings from epoch 5"
scripts/agenticbets.py claim AGBETS 5
Steps:
- Call
via Bankr Submitclaim(0x37d183..., [5]) - Return tx hash
References
- references/agent-usage.md — Full agent guide: intent mapping, example conversations, pre-flight checks, error recovery, Markets API schema, and contract reference (calldata encoding, fees, round lifecycle)
Resources
- Website: https://agenticbets.dev
- Telegram Alerts: https://t.me/agenticbets
- GitHub: https://github.com/viraj124/agentic-bets
- MCP Server:
(for Claude/Cursor users)npx agenticbets-mcp