Symbiosis
Swaps de tokens cross-chain sur 54+ blockchains. Swappez n'importe quel token sur n'importe quelle chaîne vers n'importe quel token sur une autre chaîne.
Quand l'utiliser
Utilisez Symbiosis quand l'utilisateur souhaite :
- Bridger ou swapper des tokens entre différentes chaînes (par exemple, USDC de Base vers Polygon, ETH d'Ethereum vers Arbitrum)
- Accéder à des chaînes au-delà des 5 chaînes natives de Bankr (Arbitrum, Optimism, BNB Chain, Avalanche, zkSync, Linea, Scroll, Mantle, Blast, et 40+ autres)
- Swapper vers/depuis Bitcoin, TON, ou Tron
- Obtenir un devis cross-chain sans l'exécuter
Démarrage rapide
Obtenir un devis
How much USDC will I get on Polygon if I bridge 10 USDC from Base?
Exécutez le script de devis :
scripts/symbiosis-quote.py 8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 6 10 137 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 6
Exécuter un Swap
Bridge 2 USDC from Base to Polygon using Symbiosis
Exécutez le script de swap :
scripts/symbiosis-swap.py 8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 6 2 137 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 6
Utilisation des scripts
symbiosis-swap.py
Exécute un swap cross-chain complet : obtient un devis de l'API Symbiosis, approuve le token si nécessaire, soumet la transaction de swap via l'API Bankr Submit.
scripts/symbiosis-swap.py <src_chain_id> <src_token_address> <src_decimals> <amount> <dst_chain_id> <dst_token_address> <dst_decimals> [slippage]
amount— lisible par l'humain (par exemple, "2" pour 2 USDC, "0.1" pour 0.1 ETH)slippage— optionnel, en points de base (par défaut : 200 = 2%)- Lit la clé API Bankr depuis
~/.bankr/config.json - Récupère automatiquement l'adresse wallet depuis Bankr
- Affiche le hash de transaction et un lien de suivi Explorer
symbiosis-quote.py
Obtient un devis sans exécuter. Mêmes paramètres, pas de paramètre slippage.
scripts/symbiosis-quote.py <src_chain_id> <src_token_address> <src_decimals> <amount> <dst_chain_id> <dst_token_address> <dst_decimals>
Chaînes et tokens courants
Chaînes Bankr Wallet
| Chaîne | ID | Adresse USDC | USDC Dec |
|---|---|---|---|
| Base | 8453 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | 6 |
| Ethereum | 1 | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 | 6 |
| Polygon | 137 | 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 | 6 |
Chaînes additionnelles via Symbiosis
| Chaîne | ID | Adresse USDC | USDC Dec |
|---|---|---|---|
| Arbitrum | 42161 | 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 | 6 |
| Optimism | 10 | 0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85 | 6 |
| BNB Chain | 56 | 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d | 18 |
| Avalanche | 43114 | 0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E | 6 |
Tokens natifs
Utilisez 0x0000000000000000000000000000000000000000 comme adresse pour les tokens gaz natifs (ETH, POL, BNB, AVAX, etc.).
Référence : references/chains-and-tokens.md pour la liste complète.
Exemples
EVM vers EVM
# 5 USDC : Base -> Arbitrum
scripts/symbiosis-swap.py 8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 6 5 42161 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 6
# 0.01 ETH : Ethereum -> Base
scripts/symbiosis-swap.py 1 0x0000000000000000000000000000000000000000 18 0.01 8453 0x0000000000000000000000000000000000000000 18
# 10 USDC : Polygon -> BNB Chain
scripts/symbiosis-swap.py 137 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 6 10 56 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d 18
# 0.5 ETH : Base -> Optimism
scripts/symbiosis-swap.py 8453 0x0000000000000000000000000000000000000000 18 0.5 10 0x0000000000000000000000000000000000000000 18
Cross-écosystème (routes Symbiosis uniquement)
# 10 USDC : Base -> Solana
# Note : l'ID de chaîne Solana dans Symbiosis est 5426
# Solana USDC : EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v (mais utilisez l'adresse synthétique Symbiosis)
scripts/symbiosis-swap.py 8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 6 10 5426 0x0000000000000000000000000000000000000000 9
Exemples de prompts
Les utilisateurs peuvent dire :
- "Bridge 5 USDC from Base to Arbitrum"
- "Swap 0.1 ETH from Ethereum to Polygon"
- "Move my USDC from Base to Optimism"
- "How much will I get if I bridge 100 USDC from Base to Avalanche?"
- "Cross-chain swap 50 USDC from Polygon to BNB Chain"
- "Bridge ETH from Base to Solana"
Pour chaque demande : identifiez la chaîne source + token, la chaîne destination + token, recherchez les IDs de chaîne et adresses de token dans les tableaux ci-dessus, et exécutez le script approprié.
Fonctionnement
- Devis : Le script appelle l'API Symbiosis (
POST /crosschain/v1/swap) avec les détails du token et l'adresse du wallet - Approbation : Si le token source nécessite une approbation, le script soumet une transaction ERC20 approve via
POST https://api.bankr.bot/agent/submit - Swap : Le script soumet la transaction de swap via
POST https://api.bankr.bot/agent/submit - Suivi : Retourne un lien Explorer pour le suivi du statut cross-chain
Toutes les transactions sont soumises via l'API Bankr Submit en utilisant le wallet Bankr de l'utilisateur. Aucun wallet ou clé supplémentaire nécessaire.
Ressources
- Explorer : https://explorer.symbiosis.finance
- Website : https://symbiosis.finance
- API Docs : references/api-reference.md
- Chains & Tokens : references/chains-and-tokens.md