name: design-integration description: >- Design a Uniswap integration architecture. Use when user is building a project that needs to integrate Uniswap and wants recommendations on integration method (Trading API vs SDK vs direct contract), architecture patterns, required dependencies, and security considerations. allowed-tools: >- Read, Write, Edit, Glob, Grep, Task(subagent_type:integration-architect), mcp__uniswap__get_supported_chains model: opus
Designs a complete Uniswap integration architecture for any project by delegating to the integration-architect agent. Produces a comprehensive blueprint covering: integration method recommendation (Trading API vs Universal Router SDK vs direct contract vs V4 hooks), component architecture, dependency list with versions, security review with mitigations, and ordered implementation plan.
Activate when the user asks:
| Parameter | Required | Default | Description |
|---|---|---|---|
| projectType | Yes | -- | Type of project (e.g., "DeFi dashboard", "arb bot", "wallet app", "DeFi protocol") |
| functionality | Yes | -- | Required Uniswap functionality: "swap", "LP", "both", or "custom" |
| environment | No | Auto-detect | Execution environment: "frontend", "backend", "smart contract", or "full-stack" |
| chains | No | ethereum | Target chain(s): single chain name or comma-separated list |
| scale | No | -- | Expected scale: transaction volume, concurrent users, latency requirements |
Extract parameters from the user's request: identify the project type, required functionality, target environment, chains, and scale requirements. If the user has an existing codebase, note it for the agent to analyze.
Delegate to integration-architect: Invoke Task(subagent_type:integration-architect) with the full context. The integration-architect will:
Produce an ordered implementation plan with effort estimates
Present the blueprint to the user covering:
Present a structured integration blueprint:
Integration Blueprint: DeFi Dashboard with Swap (Ethereum + Base)
Recommended Method: Trading API (primary), Universal Router SDK (fallback)
Rationale: Trading API provides optimized routing with minimal frontend
complexity. Fallback to SDK for advanced use cases or API downtime.
Architecture:
User -> QuoteService -> ApprovalManager -> SwapExecutor -> Wallet -> Chain
Components:
QuoteService: Fetches and caches quotes from Trading API
ApprovalManager: Manages Permit2 approvals and allowances
SwapExecutor: Constructs and submits swap transactions
ChainManager: Multi-chain config and RPC connections
Dependencies:
@uniswap/sdk-core ^5.8.0 Token and price primitives
viem ^2.21.0 Ethereum client
wagmi ^2.14.0 React wallet hooks
@tanstack/react-query ^5.0.0 Data fetching and caching
Security:
- Stale quotes: Refresh every 15s, enforce deadline (block.timestamp + 300s)
- Approvals: Permit2 with exact amounts and 30-min expiry
- Key management: wagmi wallet connection only, never handle keys
Implementation Order:
1. Wallet connection (wagmi) — 1 day
2. Chain configuration — 0.5 days
3. Quote fetching service — 1 day
4. Permit2 approval flow — 1 day
5. Swap execution and tracking — 1.5 days
6. Error handling and retry logic — 1 day
Complexity: Medium
integration-architect agent -- it does not call MCP tools directly.| Error | User-Facing Message | Suggested Action |
|---|---|---|
VAGUE_PROJECT |
"Need more detail about your project to recommend an integration approach." | Describe project type and what Uniswap functionality is needed |
DEPRECATED_APPROACH |
"The requested integration method is deprecated. Recommending alternatives." | Follow the updated recommendation |
UNSUPPORTED_CHAIN |
"Uniswap is not deployed on the specified chain." | Choose from the 11 supported chains |
CONFLICTING_REQUIREMENTS |
"The requirements conflict (e.g., frontend + direct contract calls)." | Clarify the execution environment and adjust expectations |
这个技能可以帮助你设计 Uniswap 集成方案,文档清晰、步骤明确,输出格式规范。优点是结构完整、考虑周全(有安全建议、依赖清单、实施顺序);不足是依赖其他组件配合才能工作,目前版本较新,积累的案例和模板可能还不够丰富。总体来说质量中上,但深度和实用性还有提升空间。