AgenticBets
Marchés de prédiction sur Base. Pariez UP ou DOWN sur les prix des tokens avec USDC.
Quand utiliser
Utilisez AgenticBets quand l'utilisateur veut :
- Parier sur la hausse ou la baisse du prix d'un token (ex. : « parie 5$ UP sur AGBETS »)
- Vérifier les cotes des marchés de prédiction (ex. : « quelles sont les cotes sur AGBETS ? »)
- Voir les marchés ouverts (ex. : « sur quels marchés de prédiction puis-je parier ? »)
- Réclamer les gains des tours réglés
- Vérifier le statut de leurs paris ou les gains à réclamer
Prérequis
Bankr CLI
Installez Bankr CLI et connectez-vous pour obtenir une clé API :
bun install -g @bankr/cli
# ou : npm install -g @bankr/cli
Clé API Bankr
Les scripts lisent la clé API depuis ~/.bankr/config.json (ou $BANKR_CONFIG si défini).
Option A : Connexion CLI (recommandée)
# Étape 1 — envoyer OTP
bankr login email user@example.com
# Étape 2 — vérifier et générer la clé avec accès en écriture
bankr login email user@example.com --code 123456 --accept-terms --key-name "AgenticBets" --read-write
Option B : Connexion web
- Visitez bankr.bot/api
- Connectez-vous avec email + OTP
- Générez une clé API avec Wallet API en accès écriture activé
La clé API doit avoir accès en écriture (walletApiEnabled, pas readOnly) pour placer des paris et réclamer les gains. Les clés en lecture seule peuvent encore lister les marchés et vérifier les cotes.
Solde USDC
Assurez-vous que votre portefeuille Bankr a USDC sur Base avant de parier. Vérifiez avec :
bankr wallet portfolio
Démarrage rapide
Lister les marchés ouverts
Quels sont les marchés de prédiction ouverts sur AgenticBets ?
scripts/agenticbets.py list
Vérifier les cotes
Quelles sont les cotes sur AGBETS ?
scripts/agenticbets.py odds AGBETS
Placer un pari
Parie 5$ UP sur AGBETS
scripts/agenticbets.py bet AGBETS up 5
Réclamer les gains
Réclame mes gains AgenticBets pour AGBETS époque 42
scripts/agenticbets.py claim AGBETS 42
Utilisation du script
agenticbets.py
Script unique qui gère toutes les opérations AgenticBets. Les lectures et écritures utilisent l'API Bankr Wallet.
scripts/agenticbets.py <command> [args...]
Commandes :
| Commande | Arguments | Description |
|---|---|---|
list |
[status] |
Lister les marchés. Statut : all, open, locked, settled (défaut : open) |
odds |
<symbol> |
Afficher les cotes bull/bear et la taille du pool pour un marché |
info |
<symbol> |
Informations détaillées du marché incluant le contrat, l'époque, le temps jusqu'au verrouillage |
bet |
<symbol> <up\|down> <amount> |
Placer un pari. Montant en USDC (ex. : 5 pour 5$) |
claim |
<symbol> <epoch> [epoch...] |
Réclamer les gains pour les époques réglées |
claimable |
<symbol> <epoch> |
Vérifier si une époque est réclaimable |
Environnement :
| Variable | Par défaut | Description |
|---|---|---|
BANKR_CONFIG |
~/.bankr/config.json |
Chemin du fichier de config Bankr contenant apiKey |
Comment ça fonctionne
Flux du marché de prédiction
- Un tour s'ouvre pour un token (ex. : $AGBETS)
- Les utilisateurs parient UP (bull — le prix monte) ou DOWN (bear — le prix baisse) avec USDC
- La fenêtre de pari ferme (généralement 5 minutes)
- Le prix est verrouillé à la fermeture
- Après la durée du tour, le prix est vérifié à nouveau
- Si le prix a monté → bull gagne. Si baisse → bear gagne.
- Les gagnants partagent la totalité du pool proportionnellement à la taille de leur pari (moins 3% de frais)
Flux des transactions (via Bankr Submit API)
Toutes les transactions on-chain passent par l'API Bankr Wallet :
- Le script récupère les données du marché depuis
GET https://agenticbets.dev/api/bankr/markets - Le script obtient l'adresse du portefeuille depuis
GET https://api.bankr.bot/wallet/me - Pour les paris :
- Approuver la dépense USDC :
POST https://api.bankr.bot/wallet/submitavec calldata ERC20approve() - Placer le pari :
POST https://api.bankr.bot/wallet/submitavec calldatabet()
- Approuver la dépense USDC :
- Pour les réclamations :
POST https://api.bankr.bot/wallet/submitavec calldataclaim() - Toutes les transactions utilisent
waitForConfirmation: trueet incluent unedescriptionlisible
Référence Bankr Submit API
Endpoint : POST https://api.bankr.bot/wallet/submit
Headers :
X-API-Key: bk_YOUR_API_KEY
Content-Type: application/json
Corps de la requête :
{
"transaction": {
"to": "0xContractAddress",
"chainId": 8453,
"data": "0xCalldata...",
"value": "0"
},
"description": "Place $5 UP bet on AGBETS",
"waitForConfirmation": true
}
Réponse de succès :
{
"success": true,
"transactionHash": "0x...",
"status": "success",
"blockNumber": "12345678",
"signer": "0xYourWalletAddress",
"chainId": 8453
}
Infos portefeuille : GET https://api.bankr.bot/wallet/me retourne l'adresse du portefeuille et les chaînes supportées.
Contrats
| Contrat | Adresse | Tokens |
|---|---|---|
| BankrBetsPrediction V1 | 0xABADeb002247f2bd908Eeedb32918aEc304A0233 |
CLAWD, MOLT, WCHAN |
| BankrBetsPrediction V2 | 0x2CD785Ba87e0841A8458141bc43d23a56a00557f |
AGBETS |
| USDC (Base) | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
6 décimales |
Fonctions du contrat
bet(address _token, uint256 _amount, uint8 _position)
_token— adresse du contrat token_amount— montant USDC en unités brutes (multiplier par 1e6)_position—0= Bull (UP),1= Bear (DOWN)- Selector :
0x37a02e62
claim(address _token, uint256[] _epochs)
_token— adresse du contrat token_epochs— tableau des numéros d'époque à réclamer- Selector :
0x45718278
claimable(address _token, uint256 _epoch, address _user) -> bool
- Retourne true si l'utilisateur a des gains non réclamés pour cette époque
- Selector :
0xd3c035fc
Approbation USDC
Avant de parier, le script approuve la dépense USDC sur le contrat de prédiction :
ERC20.approve(predictionContractAddress, betAmount)
- Selector :
0x095ea7b3
Adresses des tokens
| Token | Adresse | Contrat de prédiction |
|---|---|---|
| AGBETS | 0x37d183FCf1DA460a64D21E754b3E6144C4e11BA3 |
V2 (0x2CD785...) |
| Tous les autres | Varie (depuis API) | V1 (0xABADeb...) |
Utilisez l'endpoint /api/bankr/markets pour obtenir les adresses actuelles des tokens — ne codez rien en dur.
API des marchés
GET https://agenticbets.dev/api/bankr/markets
Retourne :
{
"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"
}
Champs clés :
status—"open"(accepte les paris),"locked"(en attente de règlement),"settled"(terminé)secondsToLock— secondes jusqu'à la fermeture des paris.nullsi pas ouvert.poolUsdc— USDC total dans le pool du tourbullPct/bearPct— répartition actuelle des cotespredictionContract— quel contrat appeler pour ce token
Conseils de stratégie
- Vérifiez les cotes avant de parier. Si 90% du pool est d'un côté, l'autre côté paie ~10x s'il gagne.
- La taille du pool compte. Les plus grands pools = cotes plus fiables. Les petits pools peuvent fluctuer sauvagement avec un pari.
- Minutez votre pari. Parier tard (< 30s avant verrouillage) vous permet de voir les cotes finales mais risque de manquer la fenêtre.
- Le pari minimum est 1$ USDC. Pas de maximum.
- Vérifiez d'abord votre solde. Assurez-vous d'avoir assez USDC sur Base avant de parier (
bankr wallet portfolio).
Exemples
Utilisateur : « Sur quels marchés de prédiction puis-je parier ? »
scripts/agenticbets.py list open
Format de réponse :
Open Markets:
$AGBETS — Pool: $42.50 | UP: 61% DOWN: 39% | Closes in 83s
$CLAWD — Pool: $18.00 | UP: 50% DOWN: 50% | Closes in 210s
Utilisateur : « Parie 10$ sur AGBETS montant »
scripts/agenticbets.py bet AGBETS up 10
Étapes :
- Récupérer les données du marché → obtenir l'adresse du token + contrat de prédiction
- Approuver USDC via Bankr Submit :
ERC20.approve(0x2CD785..., 10000000) - Placer le pari via Bankr Submit :
BankrBetsPrediction.bet(0x37d183..., 10000000, 0) - Retourner les hashes de transaction
Utilisateur : « Ai-je des gains à réclamer ? »
scripts/agenticbets.py claimable AGBETS 5
Appelle claimable(token, epoch, walletAddress) — retourne true/false.
Utilisateur : « Réclame mes gains AGBETS de l'époque 5 »
scripts/agenticbets.py claim AGBETS 5
Étapes :
- Appeler
claim(0x37d183..., [5])via Bankr Submit - Retourner le hash de transaction
Références
- references/agent-usage.md — Guide complet de l'agent : correspondance d'intentions, conversations d'exemple, vérifications préalables, récupération d'erreurs, schéma API des marchés et référence du contrat (encodage calldata, frais, cycle de vie des tours)
Ressources
- Site web : https://agenticbets.dev
- Alertes Telegram : https://t.me/agenticbets
- GitHub : https://github.com/viraj124/agentic-bets
- Serveur MCP :
npx agenticbets-mcp(pour utilisateurs Claude/Cursor)