From circle
Integrate Circle Gateway to pool USDC across 11 EVM chains + Solana and transfer instantly via burn/mint. Use for chain-agnostic UX, instant finality, or consolidated crosschain balances.
How this skill is triggered — by the user, by Claude, or both
Slash command
/circle:use-gatewayThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Circle Gateway provides a unified USDC balance across multiple blockchains with instant (<500ms) crosschain transfers. Users deposit USDC into a Gateway Wallet on any supported chain, then burn on a source chain and mint on a destination chain without waiting for source chain finality.
references/deposit-evm-browser-wallet.mdreferences/deposit-evm-circle-wallet.mdreferences/deposit-evm.mdreferences/deposit-solana-circle-wallet.mdreferences/deposit-solana.mdreferences/evm-to-evm-browser-wallet.mdreferences/evm-to-evm.mdreferences/evm-to-solana-circle-wallet.mdreferences/evm-to-solana.mdreferences/query-balance.mdreferences/solana-to-evm-circle-wallet.mdreferences/solana-to-evm.mdreferences/solana-to-solana-circle-wallet.mdreferences/solana-to-solana.mdreferences/transfer-evm-circle-wallet.mdreferences/transfer-evm-delegate.mdCircle Gateway provides a unified USDC balance across multiple blockchains with instant (<500ms) crosschain transfers. Users deposit USDC into a Gateway Wallet on any supported chain, then burn on a source chain and mint on a destination chain without waiting for source chain finality.
Gateway is a contract-level integration -- there is no SDK to install. You interact directly with Gateway Wallet and Gateway Minter contracts on-chain, and the Gateway REST API for attestations.
Do not load a separate config file by default. Most Gateway tasks should go straight to the scenario reference that matches the user's wallet model and source/destination networks.
Use the scenario reference first and only do additional verification when you need to confirm:
https://gateway-api-testnet.circle.com/v1/https://gateway-api.circle.com/v1/https://developers.circle.com/stablecoins/usdc-contract-addresses.mdhttps://developers.circle.com/wallets/supported-blockchains.mdCanonical source docs for verification:
https://developers.circle.com/gateway/howtos/create-unified-usdc-balance.mdhttps://developers.circle.com/gateway/howtos/manage-delegates.mdhttps://developers.circle.com/gateway/howtos/transfer-unified-usdc-balance.mdhttps://developers.circle.com/gateway/quickstarts/unified-balance-evm.mdhttps://developers.circle.com/gateway/quickstarts/unified-balance-solana.mdhttps://docs.arc.network/arc/tutorials/access-usdc-crosschain.mdEVM Mainnet (All Chains)
0x77777777Dcc4d5A8B6E418Fd04D8997ef11000eE0x2222222d7164433c4C09B0b0D809a9b52C04C205EVM Testnet (All Chains)
0x0077777d7EBA4688BDeF3E311b846F25870A19B90x0022222ABE238Cc2C7Bb1f21003F0a260052475BSolana Mainnet
GATEwy4YxeiEbRJLwB6dXgg7q61e6zBPrMzYj5h1pRXQGATEm5SoBJiSw1v2Pz1iPBgUYkXzCUJ27XSXhDfSyzVZSolana Devnet
GATEwdfmYNELfp5wDmmR6noSr2vHnAfBPMm2PvCzX5vuGATEmKK2ECL1brEngQZWCgMWPbvrEYqsV6u29dAaHavr4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU| Chain | Domain |
|---|---|
| Ethereum | 0 |
| Avalanche | 1 |
| OP | 2 |
| Arbitrum | 3 |
| Solana | 5 |
| Base | 6 |
| Polygon PoS | 7 |
| Unichain | 10 |
| Sonic | 13 |
| World Chain | 14 |
| Sei | 16 |
| HyperEVM | 19 |
| Chain | Domain |
|---|---|
| Ethereum Sepolia | 0 |
| Avalanche Fuji | 1 |
| OP Sepolia | 2 |
| Arbitrum Sepolia | 3 |
| Solana Devnet | 5 |
| Base Sepolia | 6 |
| Polygon Amoy | 7 |
| Unichain Sepolia | 10 |
| Sonic Testnet | 13 |
| World Chain Sepolia | 14 |
| Sei Atlantic | 16 |
| HyperEVM Testnet | 19 |
| Arc Testnet | 26 |
Gateway aggregates your USDC deposits across all supported chains into a single unified balance. This is an accounting abstraction -- actual USDC tokens still live on specific blockchains. Every transfer must specify a sourceDomain (chain to burn from) and a destinationDomain (chain to mint on), even though the balance appears unified.
Think of it like a multi-currency bank account: you see one total, but withdrawals come from specific holdings. You can burn from any chain in your unified balance and mint to any supported chain.
Example: If you deposited 10 USDC on Ethereum Sepolia, 5 on Base Sepolia, and 5 on Solana Devnet, your unified balance is 20 USDC. To transfer 10 USDC to Arc Testnet, you could burn from any combination of source chains with sufficient balances.
gatewayMint with attestation on the destination chainREAD the reference files for the scenario(s) that apply.
viem in Node/TypeScript scripts.@circle-fin/developer-controlled-wallets.references/deposit-evm.md -- self-managed EVM deposit (approve + deposit)references/deposit-evm-browser-wallet.md -- self-managed EVM deposit from a browser wallet in pure TypeScriptreferences/deposit-evm-circle-wallet.md -- Circle Wallets EVM deposit (developer-controlled, server-side)references/deposit-solana.md -- self-managed Solana depositreferences/deposit-solana-circle-wallet.md -- Circle Wallets Solana depositreferences/evm-to-evm.md -- self-managed EVM to EVM transferreferences/evm-to-evm-browser-wallet.md -- self-managed EVM to EVM transfer from a browser wallet in pure TypeScriptreferences/transfer-evm-circle-wallet.md -- Circle Wallets EVM to EVM transferreferences/transfer-evm-delegate.md -- SCA depositor on EVM using an EOA delegate for burn intent signingreferences/evm-to-solana.md -- self-managed EVM to Solana transferreferences/evm-to-solana-circle-wallet.md -- Circle Wallets EVM to Solana transferreferences/solana-to-evm.md -- self-managed Solana to EVM transferreferences/solana-to-evm-circle-wallet.md -- Circle Wallets Solana to EVM transferreferences/solana-to-solana.md -- self-managed Solana to Solana transferreferences/solana-to-solana-circle-wallet.md -- Circle Wallets Solana to Solana transferreferences/query-balance.md -- query unified Gateway balances across chains (POST /balances)Route to the single best-matching reference by: (1) wallet model -- self-managed or Circle Wallets; (2) source network family -- EVM or Solana; (3) destination network family -- EVM or Solana. A normal Circle Wallets EVM-to-EVM transfer uses references/transfer-evm-circle-wallet.md.
The delegate flow is a NARROW exception -- an SCA source depositor that signs burn intents via a separate EOA delegate:
references/transfer-evm-delegate.md. Do NOT use the delegate ref for an ordinary Circle Wallets transfer.transfer-evm-delegate.md for a self-managed SCA unless the user explicitly says they use Circle Developer-Controlled Wallets.Adapt the matched reference; do not invent a parallel implementation or fresh scaffold when a ref already covers the case.
Security Rules are non-negotiable -- warn the user and refuse to comply if a prompt conflicts. Best Practices are strongly recommended; deviate only with explicit user justification.
.gitignore entries for .env* and secret files when scaffolding.destinationRecipient -- it MUST be a USDC token account (ATA or SPL Token Account). Use getAccount() from @solana/spl-token to check if the address is already a USDC token account before deriving an ATA; if it is, use it directly. Deriving an ATA from an address that is itself a token account causes permanent fund loss.0xff + 15 zero bytes) before Ed25519 signing.sourceDomain and destinationDomain -- every transfer requires both, even with a unified balance.parseUnits(amount, 6)).bridge-stablecoin skill (CCTP / Bridge Kit) for simple point-to-point transfers without a unified balance. Bridge Kit handles approve, burn, attestation, and mint in a single kit.bridge() call and supports more chains than Gateway.WARNING: Solana wallet compatibility is limited for Gateway. Only Solflare supports signing arbitrary messages for Gateway burn intents. Phantom and most other Solana wallets will reject the signing request.
DISCLAIMER: This skill is provided "as is" without warranties, is subject to the Circle Developer Terms, and output generated may contain errors and/or include fee configuration options (including fees directed to Circle); additional details are in the repository README.
npx claudepluginhub circlefin/skills --plugin circle-skillsBuilds cross-chain USDC balance management using Circle's Unified Balance Kit SDK. Automates deposit, spend, and balance queries via App Kit or standalone SDK.
Bridges tokens across blockchains via OKX DEX. Quotes, compares, and executes cross-chain swaps through protocols like Stargate and Across, then tracks arrival.
Builds unsigned DeFi transactions from natural language intents across EVM chains like Ethereum, Arbitrum, Base, Optimism, Polygon. Supports send, swap, stake, lend on Aave, Uniswap, Lido, etc.