Overview
Circle offers three wallet types -- developer-controlled, user-controlled, and modular -- each with different custody models, account types, key management, and capabilities. This skill helps you pick the right one.
Quick Comparison
| Developer-Controlled | User-Controlled | Modular (Passkey) |
|---|
| Custody | Developer | User | User |
| Auth |
Entity secret (backend) | Social login / email OTP / PIN | Passkey (WebAuthn) |
|
Account types | EOA, SCA | EOA, SCA | MSCA only |
|
Gas sponsorship | SCA via Gas Station | SCA via Gas Station | Gas Station or third-party paymaster |
|
Custom modules | No | No | Yes |
|
Architecture | Backend SDK only | Backend + frontend SDKs | Frontend SDK only |
Decision Guide
For the latest supported blockchains: https://developers.circle.com/wallets/account-types
Step 1 -- Who controls the keys?
- - Developer controls (no user approval) -> Developer-controlled wallets -> Step 3
- End user controls -> Step 2
Step 2 -- Auth method?
- - Passkey (WebAuthn biometric) with extensible modules -> Modular wallets -> Step 4
- Social login, email OTP, or PIN -> User-controlled wallets -> Step 3
Step 3 -- Account type?
- - Solana, Aptos, or NEAR -> EOA (only option)
- Ethereum mainnet -> EOA (SCA gas costs prohibitive, MSCA not supported)
- L2 (Arbitrum, Base, Polygon, Optimism, etc.) -> SCA if gas sponsorship or batching needed; EOA if max TPS needed
Step 4 -- Chain check (Modular wallets)
- - Supported: Arbitrum, Avalanche, Base, Monad, Optimism, Polygon, Unichain
- NOT supported: Ethereum, Solana, Aptos, NEAR. Fall back to user-controlled wallets with SCA.
Example Scenarios
| Scenario | Decision | Skill |
|---|
| Payment backend, programmatic payouts, high TPS | Developer-controlled + EOA | INLINECODE0 |
| Consumer app with Google/Apple login, gasless UX |
User-controlled + SCA on L2 |
use-user-controlled-wallets |
| DeFi app with biometric auth, custom modules | Modular on L2 |
use-modular-wallets |
| NFT marketplace on Ethereum L1 | User-controlled + EOA |
use-user-controlled-wallets |
| AI agent, autonomous multi-chain transactions | Developer-controlled + EOA |
use-developer-controlled-wallets |
Implementation Patterns
Once a wallet type has been determined, TRIGGER the corresponding skill:
- - Developer-controlled ->
use-developer-controlled-wallets skill - User-controlled ->
use-user-controlled-wallets skill - Modular (Passkey) ->
use-modular-wallets skill
Strict Rules
- - ALWAYS select the wallet type before starting implementation using the comparison table and decision guide above.
- ALWAYS use EOA on Ethereum mainnet (SCA gas prohibitive, MSCA not supported) and on Solana, Aptos, NEAR (SCA/MSCA not available).
- ALWAYS prefer SCA or MSCA on L2 chains (Arbitrum, Base, Polygon, Optimism, etc.) when gas sponsorship or batch operations are needed.
- NEVER mix wallet types in a single user flow -- pick one and use its corresponding skill.
- ALWAYS delegate to the specific wallet skill (
use-developer-controlled-wallets, use-user-controlled-wallets, or use-modular-wallets) for implementation.
Reference Links
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.
概述
Circle 提供三种钱包类型——开发者控制型、用户控制型和模块化型——每种类型具有不同的托管模式、账户类型、密钥管理及功能特性。本技能可帮助您选择最合适的方案。
快速对比
| 开发者控制型 | 用户控制型 | 模块化型(通行密钥) |
|---|
| 托管方 | 开发者 | 用户 | 用户 |
| 认证方式 |
实体密钥(后端) | 社交登录/邮箱OTP/密码 | 通行密钥(WebAuthn) |
|
账户类型 | EOA, SCA | EOA, SCA | 仅MSCA |
|
Gas赞助 | 通过Gas Station实现SCA | 通过Gas Station实现SCA | Gas Station或第三方支付方 |
|
自定义模块 | 否 | 否 | 是 |
|
架构 | 仅后端SDK | 后端+前端SDK | 仅前端SDK |
决策指南
最新支持的区块链列表:https://developers.circle.com/wallets/account-types
步骤1——谁控制密钥?
- - 开发者控制(无需用户批准)→ 开发者控制型钱包 → 步骤3
- 最终用户控制 → 步骤2
步骤2——认证方式?
- - 支持可扩展模块的通行密钥(WebAuthn生物识别)→ 模块化钱包 → 步骤4
- 社交登录、邮箱OTP或密码 → 用户控制型钱包 → 步骤3
步骤3——账户类型?
- - Solana、Aptos或NEAR → EOA(唯一选项)
- 以太坊主网 → EOA(SCA gas成本过高,不支持MSCA)
- L2(Arbitrum、Base、Polygon、Optimism等)→ 如需gas赞助或批量操作则选SCA;如需最大TPS则选EOA
步骤4——链检查(模块化钱包)
- - 支持:Arbitrum、Avalanche、Base、Monad、Optimism、Polygon、Unichain
- 不支持:以太坊、Solana、Aptos、NEAR。回退至使用SCA的用户控制型钱包。
示例场景
| 场景 | 决策 | 技能 |
|---|
| 支付后端、程序化支付、高TPS | 开发者控制型 + EOA | use-developer-controlled-wallets |
| 支持Google/Apple登录的消费应用、无gas体验 |
用户控制型 + L2上的SCA | use-user-controlled-wallets |
| 支持生物识别认证和自定义模块的DeFi应用 | L2上的模块化钱包 | use-modular-wallets |
| 以太坊L1上的NFT市场 | 用户控制型 + EOA | use-user-controlled-wallets |
| AI代理、自主多链交易 | 开发者控制型 + EOA | use-developer-controlled-wallets |
实施模式
确定钱包类型后,触发相应技能:
- - 开发者控制型 → use-developer-controlled-wallets 技能
- 用户控制型 → use-user-controlled-wallets 技能
- 模块化型(通行密钥)→ use-modular-wallets 技能
严格规则
- - 在开始实施前,务必使用上述对比表和决策指南选择钱包类型。
- 在以太坊主网(SCA gas成本过高,不支持MSCA)以及Solana、Aptos、NEAR(不支持SCA/MSCA)上始终使用EOA。
- 在L2链(Arbitrum、Base、Polygon、Optimism等)上,当需要gas赞助或批量操作时,始终优先选择SCA或MSCA。
- 切勿在单个用户流程中混合使用钱包类型——选择一种并使用其对应技能。
- 始终委托给特定钱包技能(use-developer-controlled-wallets、use-user-controlled-wallets或use-modular-wallets)进行实施。
参考链接
免责声明:本技能按原样提供,不附带任何保证,受
Circle开发者条款约束,生成的输出可能包含错误和/或费用配置选项(包括向Circle支付的费用);更多详情请参阅仓库
README。