{
  "schemaVersion": "1.0",
  "item": {
    "slug": "cross-chain-arbitrage-cn",
    "name": "Cross-Chain Arbitrage CN | 跨链套利",
    "source": "tencent",
    "type": "skill",
    "category": "数据分析",
    "sourceUrl": "https://clawhub.ai/guohongbin-git/cross-chain-arbitrage-cn",
    "canonicalUrl": "https://clawhub.ai/guohongbin-git/cross-chain-arbitrage-cn",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/cross-chain-arbitrage-cn",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=cross-chain-arbitrage-cn",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "_meta.json"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/cross-chain-arbitrage-cn"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/cross-chain-arbitrage-cn",
    "agentPageUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent",
    "manifestUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Overview",
        "body": "This skill automates the discovery and execution of cross-chain arbitrage opportunities -- finding price differences for the same token across Uniswap deployments on different chains and profiting from the spread. It handles the entire pipeline: scanning prices across 11 chains, calculating all-in costs, risk assessment, cross-chain execution via ERC-7683, and profit reporting.\n\nWhy this is 10x better than doing it manually:\n\nSimultaneous multi-chain price scanning: Manually checking ETH prices on Ethereum, Base, Arbitrum, Optimism, Polygon, and 6 other chains takes significant effort. The opportunity-scanner does this across all supported chains in seconds.\nAll-in cost calculation: The most common arbitrage mistake is ignoring costs. This skill itemizes every cost component (source gas, bridge fee, destination gas, slippage on both sides) and only presents opportunities that are profitable after all costs.\nTime-sensitivity awareness: Arbitrage opportunities are ephemeral -- they can disappear in seconds. The skill warns about this throughout and moves quickly, but honestly flags when an opportunity may have closed by the time the user confirms.\nRisk-gated execution: Before any capital moves, the risk-assessor evaluates bridge risk, execution risk, and liquidity. A VETO stops the pipeline.\nScan-only mode: Not ready to execute? Use scan-only mode to just see what opportunities exist without committing capital."
      },
      {
        "title": "When to Use",
        "body": "Activate when the user says anything like:\n\n\"Find ETH arbitrage across chains\"\n\"Cross-chain arb opportunities\"\n\"Are there any price differences for WETH across chains?\"\n\"Profit from price differences\"\n\"Scan for arbitrage on Base vs Ethereum\"\n\"Is there an arb opportunity for USDC?\"\n\"Cross-chain arbitrage with $5K\"\n\"Just scan for arb -- don't execute\" (scan-only mode)\n\nDo NOT use when the user wants a same-chain swap (use execute-swap), wants to bridge without arbitrage (use bridge-tokens), or wants general LP yield opportunities (use scan-opportunities or find-yield)."
      },
      {
        "title": "Parameters",
        "body": "ParameterRequiredDefaultHow to ExtracttokenNoTop 5 tokensToken to check: \"WETH\", \"USDC\", or scan top tokens by defaultchainsNoallChains to scan: \"all\", or specific list like \"ethereum, base\"minProfitNo0.5%Minimum net profit threshold after ALL costsmaxAmountNo--Maximum capital to deploy per opportunityriskToleranceNomoderate\"conservative\", \"moderate\", \"aggressive\"modeNoexecute\"execute\" (full pipeline) or \"scan\" (scan-only, no execution)\n\nIf mode is \"scan\" or the user says \"just scan\" / \"don't execute\" / \"show me opportunities\", skip Steps 3-4 and only present the opportunity report."
      },
      {
        "title": "Workflow",
        "body": "CROSS-CHAIN ARBITRAGE PIPELINE\n  ┌─────────────────────────────────────────────────────────────────────┐\n  │                                                                     │\n  │  Step 1: SCAN (opportunity-scanner)                                 │\n  │  ├── Compare token prices across all chains                         │\n  │  ├── Calculate gross profit for each discrepancy                    │\n  │  ├── Itemize ALL costs (gas, bridge, slippage)                      │\n  │  ├── Filter: only net profit > minProfit                            │\n  │  └── Output: Ranked Arbitrage Opportunities                         │\n  │          │                                                          │\n  │          ▼                                                          │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  SCAN-ONLY MODE?                                  │              │\n  │  │  Yes → Present report, STOP.                      │              │\n  │  │  No  → Continue to Step 2.                        │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼ USER SELECTION                                           │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  Present opportunities to user.                   │              │\n  │  │  User picks which opportunity to execute.         │              │\n  │  │  WARN: \"Opportunity may expire before execution.\" │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 2: RISK CHECK (risk-assessor)                                 │\n  │  ├── Evaluate bridge risk (mechanism, settlement time)              │\n  │  ├── Evaluate execution risk (slippage, speed)                      │\n  │  ├── Evaluate liquidity on both chains                              │\n  │  ├── Decision: APPROVE / VETO / HARD_VETO                          │\n  │  └── Output: Risk Assessment                                        │\n  │          │                                                          │\n  │          ▼ CONDITIONAL GATE                                         │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  APPROVE → Proceed with confirmation              │              │\n  │  │  VETO / HARD_VETO → STOP with report              │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼ USER CONFIRMATION                                        │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  \"Execute this arb? Opportunity may have shifted  │              │\n  │  │   since scan. Confirm to proceed.\"                │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 3: EXECUTE (cross-chain-executor)                             │\n  │  ├── Buy on cheaper chain                                           │\n  │  ├── Bridge to expensive chain via ERC-7683                         │\n  │  ├── Monitor bridge settlement                                      │\n  │  ├── (Sell on expensive chain if needed)                            │\n  │  └── Output: Execution Report                                       │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 4: REPORT (portfolio-analyst)                                 │\n  │  ├── Calculate actual profit/loss after all costs                   │\n  │  ├── Compare to projected profit                                    │\n  │  └── Output: P&L Report                                             │\n  │                                                                     │\n  └─────────────────────────────────────────────────────────────────────┘"
      },
      {
        "title": "Step 0: Pre-Flight",
        "body": "Before starting:\n\nCheck safety status via mcp__uniswap__check_safety_status.\nCheck wallet balances via mcp__uniswap__get_agent_balance on relevant chains.\nIf wallet has no funds, stop and inform the user."
      },
      {
        "title": "Step 1: Scan Opportunities (opportunity-scanner)",
        "body": "Delegate to Task(subagent_type:opportunity-scanner) with:\n\nScan for cross-chain arbitrage opportunities:\n- Token: {token or \"top 5 tokens by volume: WETH, USDC, USDT, WBTC, DAI\"}\n- Chains: {chains or \"all supported chains\"}\n- Type: \"arb\" (arbitrage only)\n- Minimum net profit: {minProfit}%\n\nFor each price discrepancy found, calculate and itemize:\n1. Gross price difference (%)\n2. Source chain gas cost (USD)\n3. Bridge fee (USD)\n4. Destination chain gas cost (USD)\n5. Slippage estimate on both sides (USD)\n6. NET profit after ALL costs (USD and %)\n\nOnly include opportunities where net profit > {minProfit}% after all costs.\nRank by net profit. Include time sensitivity assessment for each opportunity.\n\nPresent to user:\n\nStep 1: Arbitrage Scan Complete\n\n  Token: WETH\n  Chains scanned: 8 (Ethereum, Base, Arbitrum, Optimism, Polygon, BNB, Avalanche, Blast)\n\n  Opportunities found: 2 (after filtering by {minProfit}% min net profit)\n\n  #  Route                     Gross    Costs         Net Profit  Time Sensitivity\n  1  WETH: Arbitrum → Optimism  0.8%    $12 total     $33 (0.66%) EPHEMERAL\n     ├── Source gas:   $0.50\n     ├── Bridge fee:   $2.00\n     ├── Dest gas:     $0.50\n     └── Slippage:     $9.00 (both sides)\n\n  2  WETH: Base → Polygon       0.6%    $8 total      $22 (0.44%) EPHEMERAL\n     ├── Source gas:   $0.10\n     ├── Bridge fee:   $3.00\n     ├── Dest gas:     $1.50\n     └── Slippage:     $3.40 (both sides)\n\n  WARNING: Arbitrage opportunities are ephemeral. These prices were captured at\n  {timestamp} and may change by the time you confirm execution. The actual profit\n  may differ from the estimates above.\n\n  No opportunities found for: USDC, USDT, WBTC, DAI (spreads < {minProfit}% after costs)\n\nIf mode is \"scan\", stop here:\n\nArbitrage Scan Report (scan-only mode)\n\n  {same opportunity table as above}\n\n  To execute an opportunity, run: \"Cross-chain arb, execute opportunity #1\"\n  Note: Opportunities are time-sensitive and may no longer be available.\n\nIf mode is \"execute\", ask the user which opportunity to pursue."
      },
      {
        "title": "Step 2: Risk Assessment (risk-assessor)",
        "body": "Delegate to Task(subagent_type:risk-assessor) with the selected opportunity:\n\nEvaluate risk for this cross-chain arbitrage:\n\nOperation: cross-chain arbitrage\nToken: {token}\nSource chain: {source_chain}\nDestination chain: {dest_chain}\nAmount: {amount or maxAmount}\nRisk tolerance: {riskTolerance}\n\nOpportunity details (from opportunity-scanner):\n- Gross spread: {gross_pct}%\n- Estimated net profit: {net_profit_usd} ({net_pct}%)\n- Cost breakdown: {full cost itemization}\n- Time sensitivity: ephemeral\n\nEvaluate:\n1. Bridge risk (settlement mechanism, historical reliability, available liquidity)\n2. Execution risk (can the arb close before we complete? slippage may increase)\n3. Liquidity risk (sufficient depth on both chains for the trade size)\n4. Smart contract risk (pool ages and versions on both chains)\n\nKey concern: arbitrage opportunities are time-sensitive. Factor in the risk that\nthe price discrepancy may close during bridge settlement (typically 1-10 minutes).\n\nConditional gate:\n\nDecisionActionAPPROVEPresent risk summary, proceed to user confirmationCOND. APPROVEShow conditions (e.g., \"reduce size\"). Ask user.VETOSTOP. Opportunity too risky at this size/tolerance. Show details.HARD_VETOSTOP. Bridge liquidity insufficient or critical risk. Non-negotiable.\n\nUser confirmation (with time-sensitivity warning):\n\nStep 2: Risk Assessment Passed\n\n  Decision: APPROVE\n  Composite Risk: MEDIUM\n  Bridge Risk: LOW (ERC-7683, established mechanism)\n  Execution Risk: MEDIUM (arb may close during 2-5 min settlement)\n  Liquidity: LOW (deep pools on both chains)\n\n  Execute Arbitrage?\n    Route:    Buy WETH on Arbitrum → Bridge → (Sell on Optimism)\n    Amount:   $5,000\n    Est. Profit: $33 (0.66%) after all costs\n    Settlement: ~2-5 minutes\n\n    IMPORTANT: This opportunity was scanned at {timestamp} ({N} seconds ago).\n    The price discrepancy may have changed. Actual profit may differ from estimate.\n\n  Proceed? (yes/no)"
      },
      {
        "title": "Step 3: Execute (cross-chain-executor)",
        "body": "Delegate to Task(subagent_type:cross-chain-executor) with:\n\nExecute this cross-chain arbitrage:\n\nLeg 1 (source chain):\n- Chain: {source_chain}\n- Action: Buy {token} (swap {capital_token} → {token})\n- Amount: {amount}\n- Pool: {best pool on source chain}\n\nLeg 2 (bridge):\n- Bridge {token} from {source_chain} to {dest_chain}\n- Mechanism: ERC-7683\n\nLeg 3 (destination chain — if needed):\n- Chain: {dest_chain}\n- Action: Sell {token} (swap {token} → {capital_token}) — only if the user\n  wants to realize profit immediately. Otherwise, hold the {token} on dest chain.\n\nRisk assessment: APPROVED, composite {risk_level}\nTime sensitivity: HIGH — execute as quickly as possible.\n\nMonitor bridge settlement and report progress. If bridge takes longer than\nexpected, warn about potential profit erosion.\n\nPresent progress updates during execution:\n\nStep 3: Executing Arbitrage...\n\n  [1/3] Buying WETH on Arbitrum...\n        Bought 2.55 WETH for $5,000 USDC — Tx: 0x...\n  [2/3] Bridging WETH to Optimism via ERC-7683...\n        Order ID: 0x... — Monitoring settlement...\n        Status: PENDING (elapsed: 45s, expected: 2-5 min)\n        Status: PENDING (elapsed: 2m 15s)\n        Status: SETTLED (elapsed: 3m 02s) — 2.55 WETH received on Optimism\n  [3/3] Holding WETH on Optimism (no sell leg — same token, profit realized)\n        ✓ Arbitrage complete"
      },
      {
        "title": "Step 4: Report (portfolio-analyst)",
        "body": "Delegate to Task(subagent_type:portfolio-analyst) with:\n\nReport on the result of this cross-chain arbitrage:\n\nExecution details:\n- Token: {token}\n- Source: {source_chain} — bought at ${source_price}\n- Destination: {dest_chain} — current price ${dest_price}\n- Amount: {amount}\n- Bridge order: {order_id}\n- Transactions: {tx_hashes}\n\nCalculate:\n1. Actual gross profit (price difference realized)\n2. All actual costs (gas, bridge fees, slippage — from execution receipts)\n3. Net profit/loss\n4. Comparison to projected profit from scan\n5. Portfolio impact\n\nPresent final result:\n\nStep 4: Arbitrage Report\n\n  Route:        WETH: Arbitrum → Optimism\n  Amount:       2.55 WETH ($5,000)\n\n  Profit & Loss:\n    Gross spread:     $40.00 (0.80%)\n    Source gas:        -$0.45\n    Bridge fee:        -$1.80\n    Dest gas:          -$0.00 (held, no sell)\n    Slippage:          -$7.50\n    ─────────────────────────\n    Net profit:        $30.25 (0.61%)\n\n  vs. Projected:     $33.00 (0.66%) — actual was 8% less due to slippage\n\n  Timing:\n    Scan to execution: 45 seconds\n    Bridge settlement:  3 min 02 sec\n    Total elapsed:      3 min 47 sec\n\n  Portfolio Impact:\n    WETH on Optimism:  2.55 WETH ($5,030.25)\n    Net gain:          $30.25\n\n  ──────────────────────────────────────\n  Pipeline Summary\n  ──────────────────────────────────────\n  Scan:       2 opportunities found, #1 selected\n  Risk:       APPROVED (MEDIUM)\n  Execution:  Buy → Bridge → Hold (3 min 47 sec total)\n  Result:     +$30.25 net profit (0.61%)"
      },
      {
        "title": "Successful Execution",
        "body": "Cross-Chain Arbitrage Complete\n\n  Route:    {token}: {source_chain} -> {dest_chain}\n  Amount:   ${amount}\n  Net P&L:  +${net_profit} ({net_pct}%)\n  Time:     {total_elapsed}\n\n  Cost Breakdown:\n    Gas: ${gas}  Bridge: ${bridge_fee}  Slippage: ${slippage}\n\n  Pipeline: Scan -> Risk -> Execute -> Report (all passed)"
      },
      {
        "title": "Scan-Only Report",
        "body": "Cross-Chain Arbitrage Scan\n\n  Scanned: {n_tokens} tokens across {n_chains} chains\n  Found: {n_opportunities} opportunities (> {minProfit}% net profit)\n\n  {opportunity table}\n\n  To execute: \"Cross-chain arb, execute opportunity #N\""
      },
      {
        "title": "Vetoed",
        "body": "Cross-Chain Arbitrage -- Risk Vetoed\n\n  Opportunity: {token} {source} -> {dest} ({gross_spread}% gross)\n  Risk: VETOED — {reason}\n\n  {risk dimension details}\n\n  Pipeline: Scan -> Risk (VETOED) -- No execution."
      },
      {
        "title": "Important Notes",
        "body": "Arbitrage opportunities are ephemeral. By the time the user reads the scan results and confirms, the price discrepancy may have closed. The skill warns about this prominently and does not guarantee profits.\nAll-in cost calculation is critical. Never present gross spread as profit. Always itemize and subtract: source gas, bridge fee, destination gas, slippage on both sides. An opportunity showing 0.8% gross might be 0.2% net (or even negative).\nBridge settlement time is the main risk. During the 1-10 minute bridge settlement, the price on the destination chain can move, eliminating or even reversing the profit. The risk-assessor factors this in.\nScan-only mode is the safe default. If unsure whether the user wants to execute, default to scan-only. They can always say \"execute #1\" afterward.\nNot every scan will find opportunities. Well-arbitraged tokens (WETH, USDC) rarely have spreads > 0.5% after costs. Set expectations accordingly.\nGas costs matter more for small amounts. A $100 arb with $15 in total costs is barely profitable. Warn about this for small trade sizes.\nThis is NOT risk-free. Despite the word \"arbitrage,\" cross-chain arb carries real risk: bridge failure, price movement during settlement, smart contract risk. Always present it as a risky activity."
      },
      {
        "title": "Error Handling",
        "body": "ErrorUser-Facing MessageSuggested ActionNo opportunities found\"No arb opportunities above {minProfit}% net profit across {chains}.\"Lower minProfit or try different tokensOpportunity expired\"Price discrepancy has closed since scan. Opportunity no longer profitable.\"Re-scan for fresh opportunitiesRisk-assessor VETO\"Risk assessment vetoed: {reason}.\"Try smaller amount or different routeRisk-assessor HARD_VETO\"Blocked: {reason}. Bridge liquidity may be insufficient.\"Cannot proceed with this opportunityBridge failed\"Bridge operation failed. Funds should remain on {source_chain}.\"Check source wallet balanceBridge stuck\"Bridge settlement delayed ({elapsed} vs {expected}). Monitoring...\"Wait or check order ID manuallySource chain swap failed\"Failed to buy {token} on {source_chain}: {reason}.\"Check balance and gasInsufficient balance\"Not enough {token} on {source_chain}: have ${X}, need ${Y}.\"Reduce amount or bridge funds firstSafety limit exceeded\"Trade amount exceeds safety spending limits.\"Reduce amount or adjust limitsWallet not configured\"No wallet configured for transactions.\"Set up wallet with setup-agent-walletUser declines confirmation\"Arbitrage cancelled. Scan results shown above for reference.\"No action neededProfit less than projected\"Actual profit (${X}) was less than projected (${Y}) due to price movement.\"Expected for ephemeral opportunitiesNegative profit (loss)\"This trade resulted in a loss of ${X} due to price movement during settlement.\"Inherent risk of cross-chain arbitrage"
      }
    ],
    "body": "assesses risk, and executes if profitable. Uses ERC-7683 for cross-chain settlement. Supports scan-only mode for research without execution. model: opus allowed-tools:\n\nTask(subagent_type:opportunity-scanner)\nTask(subagent_type:risk-assessor)\nTask(subagent_type:cross-chain-executor)\nTask(subagent_type:portfolio-analyst)\nmcp__uniswap__check_safety_status\nmcp__uniswap__get_agent_balance\nCross-Chain Arbitrage\nOverview\n\nThis skill automates the discovery and execution of cross-chain arbitrage opportunities -- finding price differences for the same token across Uniswap deployments on different chains and profiting from the spread. It handles the entire pipeline: scanning prices across 11 chains, calculating all-in costs, risk assessment, cross-chain execution via ERC-7683, and profit reporting.\n\nWhy this is 10x better than doing it manually:\n\nSimultaneous multi-chain price scanning: Manually checking ETH prices on Ethereum, Base, Arbitrum, Optimism, Polygon, and 6 other chains takes significant effort. The opportunity-scanner does this across all supported chains in seconds.\nAll-in cost calculation: The most common arbitrage mistake is ignoring costs. This skill itemizes every cost component (source gas, bridge fee, destination gas, slippage on both sides) and only presents opportunities that are profitable after all costs.\nTime-sensitivity awareness: Arbitrage opportunities are ephemeral -- they can disappear in seconds. The skill warns about this throughout and moves quickly, but honestly flags when an opportunity may have closed by the time the user confirms.\nRisk-gated execution: Before any capital moves, the risk-assessor evaluates bridge risk, execution risk, and liquidity. A VETO stops the pipeline.\nScan-only mode: Not ready to execute? Use scan-only mode to just see what opportunities exist without committing capital.\nWhen to Use\n\nActivate when the user says anything like:\n\n\"Find ETH arbitrage across chains\"\n\"Cross-chain arb opportunities\"\n\"Are there any price differences for WETH across chains?\"\n\"Profit from price differences\"\n\"Scan for arbitrage on Base vs Ethereum\"\n\"Is there an arb opportunity for USDC?\"\n\"Cross-chain arbitrage with $5K\"\n\"Just scan for arb -- don't execute\" (scan-only mode)\n\nDo NOT use when the user wants a same-chain swap (use execute-swap), wants to bridge without arbitrage (use bridge-tokens), or wants general LP yield opportunities (use scan-opportunities or find-yield).\n\nParameters\nParameter\tRequired\tDefault\tHow to Extract\ntoken\tNo\tTop 5 tokens\tToken to check: \"WETH\", \"USDC\", or scan top tokens by default\nchains\tNo\tall\tChains to scan: \"all\", or specific list like \"ethereum, base\"\nminProfit\tNo\t0.5%\tMinimum net profit threshold after ALL costs\nmaxAmount\tNo\t--\tMaximum capital to deploy per opportunity\nriskTolerance\tNo\tmoderate\t\"conservative\", \"moderate\", \"aggressive\"\nmode\tNo\texecute\t\"execute\" (full pipeline) or \"scan\" (scan-only, no execution)\n\nIf mode is \"scan\" or the user says \"just scan\" / \"don't execute\" / \"show me opportunities\", skip Steps 3-4 and only present the opportunity report.\n\nWorkflow\n                     CROSS-CHAIN ARBITRAGE PIPELINE\n  ┌─────────────────────────────────────────────────────────────────────┐\n  │                                                                     │\n  │  Step 1: SCAN (opportunity-scanner)                                 │\n  │  ├── Compare token prices across all chains                         │\n  │  ├── Calculate gross profit for each discrepancy                    │\n  │  ├── Itemize ALL costs (gas, bridge, slippage)                      │\n  │  ├── Filter: only net profit > minProfit                            │\n  │  └── Output: Ranked Arbitrage Opportunities                         │\n  │          │                                                          │\n  │          ▼                                                          │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  SCAN-ONLY MODE?                                  │              │\n  │  │  Yes → Present report, STOP.                      │              │\n  │  │  No  → Continue to Step 2.                        │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼ USER SELECTION                                           │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  Present opportunities to user.                   │              │\n  │  │  User picks which opportunity to execute.         │              │\n  │  │  WARN: \"Opportunity may expire before execution.\" │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 2: RISK CHECK (risk-assessor)                                 │\n  │  ├── Evaluate bridge risk (mechanism, settlement time)              │\n  │  ├── Evaluate execution risk (slippage, speed)                      │\n  │  ├── Evaluate liquidity on both chains                              │\n  │  ├── Decision: APPROVE / VETO / HARD_VETO                          │\n  │  └── Output: Risk Assessment                                        │\n  │          │                                                          │\n  │          ▼ CONDITIONAL GATE                                         │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  APPROVE → Proceed with confirmation              │              │\n  │  │  VETO / HARD_VETO → STOP with report              │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼ USER CONFIRMATION                                        │\n  │  ┌───────────────────────────────────────────────────┐              │\n  │  │  \"Execute this arb? Opportunity may have shifted  │              │\n  │  │   since scan. Confirm to proceed.\"                │              │\n  │  └───────────────────────────────────────────────────┘              │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 3: EXECUTE (cross-chain-executor)                             │\n  │  ├── Buy on cheaper chain                                           │\n  │  ├── Bridge to expensive chain via ERC-7683                         │\n  │  ├── Monitor bridge settlement                                      │\n  │  ├── (Sell on expensive chain if needed)                            │\n  │  └── Output: Execution Report                                       │\n  │          │                                                          │\n  │          ▼                                                          │\n  │                                                                     │\n  │  Step 4: REPORT (portfolio-analyst)                                 │\n  │  ├── Calculate actual profit/loss after all costs                   │\n  │  ├── Compare to projected profit                                    │\n  │  └── Output: P&L Report                                             │\n  │                                                                     │\n  └─────────────────────────────────────────────────────────────────────┘\n\nStep 0: Pre-Flight\n\nBefore starting:\n\nCheck safety status via mcp__uniswap__check_safety_status.\nCheck wallet balances via mcp__uniswap__get_agent_balance on relevant chains.\nIf wallet has no funds, stop and inform the user.\nStep 1: Scan Opportunities (opportunity-scanner)\n\nDelegate to Task(subagent_type:opportunity-scanner) with:\n\nScan for cross-chain arbitrage opportunities:\n- Token: {token or \"top 5 tokens by volume: WETH, USDC, USDT, WBTC, DAI\"}\n- Chains: {chains or \"all supported chains\"}\n- Type: \"arb\" (arbitrage only)\n- Minimum net profit: {minProfit}%\n\nFor each price discrepancy found, calculate and itemize:\n1. Gross price difference (%)\n2. Source chain gas cost (USD)\n3. Bridge fee (USD)\n4. Destination chain gas cost (USD)\n5. Slippage estimate on both sides (USD)\n6. NET profit after ALL costs (USD and %)\n\nOnly include opportunities where net profit > {minProfit}% after all costs.\nRank by net profit. Include time sensitivity assessment for each opportunity.\n\n\nPresent to user:\n\nStep 1: Arbitrage Scan Complete\n\n  Token: WETH\n  Chains scanned: 8 (Ethereum, Base, Arbitrum, Optimism, Polygon, BNB, Avalanche, Blast)\n\n  Opportunities found: 2 (after filtering by {minProfit}% min net profit)\n\n  #  Route                     Gross    Costs         Net Profit  Time Sensitivity\n  1  WETH: Arbitrum → Optimism  0.8%    $12 total     $33 (0.66%) EPHEMERAL\n     ├── Source gas:   $0.50\n     ├── Bridge fee:   $2.00\n     ├── Dest gas:     $0.50\n     └── Slippage:     $9.00 (both sides)\n\n  2  WETH: Base → Polygon       0.6%    $8 total      $22 (0.44%) EPHEMERAL\n     ├── Source gas:   $0.10\n     ├── Bridge fee:   $3.00\n     ├── Dest gas:     $1.50\n     └── Slippage:     $3.40 (both sides)\n\n  WARNING: Arbitrage opportunities are ephemeral. These prices were captured at\n  {timestamp} and may change by the time you confirm execution. The actual profit\n  may differ from the estimates above.\n\n  No opportunities found for: USDC, USDT, WBTC, DAI (spreads < {minProfit}% after costs)\n\n\nIf mode is \"scan\", stop here:\n\nArbitrage Scan Report (scan-only mode)\n\n  {same opportunity table as above}\n\n  To execute an opportunity, run: \"Cross-chain arb, execute opportunity #1\"\n  Note: Opportunities are time-sensitive and may no longer be available.\n\n\nIf mode is \"execute\", ask the user which opportunity to pursue.\n\nStep 2: Risk Assessment (risk-assessor)\n\nDelegate to Task(subagent_type:risk-assessor) with the selected opportunity:\n\nEvaluate risk for this cross-chain arbitrage:\n\nOperation: cross-chain arbitrage\nToken: {token}\nSource chain: {source_chain}\nDestination chain: {dest_chain}\nAmount: {amount or maxAmount}\nRisk tolerance: {riskTolerance}\n\nOpportunity details (from opportunity-scanner):\n- Gross spread: {gross_pct}%\n- Estimated net profit: {net_profit_usd} ({net_pct}%)\n- Cost breakdown: {full cost itemization}\n- Time sensitivity: ephemeral\n\nEvaluate:\n1. Bridge risk (settlement mechanism, historical reliability, available liquidity)\n2. Execution risk (can the arb close before we complete? slippage may increase)\n3. Liquidity risk (sufficient depth on both chains for the trade size)\n4. Smart contract risk (pool ages and versions on both chains)\n\nKey concern: arbitrage opportunities are time-sensitive. Factor in the risk that\nthe price discrepancy may close during bridge settlement (typically 1-10 minutes).\n\n\nConditional gate:\n\nDecision\tAction\nAPPROVE\tPresent risk summary, proceed to user confirmation\nCOND. APPROVE\tShow conditions (e.g., \"reduce size\"). Ask user.\nVETO\tSTOP. Opportunity too risky at this size/tolerance. Show details.\nHARD_VETO\tSTOP. Bridge liquidity insufficient or critical risk. Non-negotiable.\n\nUser confirmation (with time-sensitivity warning):\n\nStep 2: Risk Assessment Passed\n\n  Decision: APPROVE\n  Composite Risk: MEDIUM\n  Bridge Risk: LOW (ERC-7683, established mechanism)\n  Execution Risk: MEDIUM (arb may close during 2-5 min settlement)\n  Liquidity: LOW (deep pools on both chains)\n\n  Execute Arbitrage?\n    Route:    Buy WETH on Arbitrum → Bridge → (Sell on Optimism)\n    Amount:   $5,000\n    Est. Profit: $33 (0.66%) after all costs\n    Settlement: ~2-5 minutes\n\n    IMPORTANT: This opportunity was scanned at {timestamp} ({N} seconds ago).\n    The price discrepancy may have changed. Actual profit may differ from estimate.\n\n  Proceed? (yes/no)\n\nStep 3: Execute (cross-chain-executor)\n\nDelegate to Task(subagent_type:cross-chain-executor) with:\n\nExecute this cross-chain arbitrage:\n\nLeg 1 (source chain):\n- Chain: {source_chain}\n- Action: Buy {token} (swap {capital_token} → {token})\n- Amount: {amount}\n- Pool: {best pool on source chain}\n\nLeg 2 (bridge):\n- Bridge {token} from {source_chain} to {dest_chain}\n- Mechanism: ERC-7683\n\nLeg 3 (destination chain — if needed):\n- Chain: {dest_chain}\n- Action: Sell {token} (swap {token} → {capital_token}) — only if the user\n  wants to realize profit immediately. Otherwise, hold the {token} on dest chain.\n\nRisk assessment: APPROVED, composite {risk_level}\nTime sensitivity: HIGH — execute as quickly as possible.\n\nMonitor bridge settlement and report progress. If bridge takes longer than\nexpected, warn about potential profit erosion.\n\n\nPresent progress updates during execution:\n\nStep 3: Executing Arbitrage...\n\n  [1/3] Buying WETH on Arbitrum...\n        Bought 2.55 WETH for $5,000 USDC — Tx: 0x...\n  [2/3] Bridging WETH to Optimism via ERC-7683...\n        Order ID: 0x... — Monitoring settlement...\n        Status: PENDING (elapsed: 45s, expected: 2-5 min)\n        Status: PENDING (elapsed: 2m 15s)\n        Status: SETTLED (elapsed: 3m 02s) — 2.55 WETH received on Optimism\n  [3/3] Holding WETH on Optimism (no sell leg — same token, profit realized)\n        ✓ Arbitrage complete\n\nStep 4: Report (portfolio-analyst)\n\nDelegate to Task(subagent_type:portfolio-analyst) with:\n\nReport on the result of this cross-chain arbitrage:\n\nExecution details:\n- Token: {token}\n- Source: {source_chain} — bought at ${source_price}\n- Destination: {dest_chain} — current price ${dest_price}\n- Amount: {amount}\n- Bridge order: {order_id}\n- Transactions: {tx_hashes}\n\nCalculate:\n1. Actual gross profit (price difference realized)\n2. All actual costs (gas, bridge fees, slippage — from execution receipts)\n3. Net profit/loss\n4. Comparison to projected profit from scan\n5. Portfolio impact\n\n\nPresent final result:\n\nStep 4: Arbitrage Report\n\n  Route:        WETH: Arbitrum → Optimism\n  Amount:       2.55 WETH ($5,000)\n\n  Profit & Loss:\n    Gross spread:     $40.00 (0.80%)\n    Source gas:        -$0.45\n    Bridge fee:        -$1.80\n    Dest gas:          -$0.00 (held, no sell)\n    Slippage:          -$7.50\n    ─────────────────────────\n    Net profit:        $30.25 (0.61%)\n\n  vs. Projected:     $33.00 (0.66%) — actual was 8% less due to slippage\n\n  Timing:\n    Scan to execution: 45 seconds\n    Bridge settlement:  3 min 02 sec\n    Total elapsed:      3 min 47 sec\n\n  Portfolio Impact:\n    WETH on Optimism:  2.55 WETH ($5,030.25)\n    Net gain:          $30.25\n\n  ──────────────────────────────────────\n  Pipeline Summary\n  ──────────────────────────────────────\n  Scan:       2 opportunities found, #1 selected\n  Risk:       APPROVED (MEDIUM)\n  Execution:  Buy → Bridge → Hold (3 min 47 sec total)\n  Result:     +$30.25 net profit (0.61%)\n\nOutput Format\nSuccessful Execution\nCross-Chain Arbitrage Complete\n\n  Route:    {token}: {source_chain} -> {dest_chain}\n  Amount:   ${amount}\n  Net P&L:  +${net_profit} ({net_pct}%)\n  Time:     {total_elapsed}\n\n  Cost Breakdown:\n    Gas: ${gas}  Bridge: ${bridge_fee}  Slippage: ${slippage}\n\n  Pipeline: Scan -> Risk -> Execute -> Report (all passed)\n\nScan-Only Report\nCross-Chain Arbitrage Scan\n\n  Scanned: {n_tokens} tokens across {n_chains} chains\n  Found: {n_opportunities} opportunities (> {minProfit}% net profit)\n\n  {opportunity table}\n\n  To execute: \"Cross-chain arb, execute opportunity #N\"\n\nVetoed\nCross-Chain Arbitrage -- Risk Vetoed\n\n  Opportunity: {token} {source} -> {dest} ({gross_spread}% gross)\n  Risk: VETOED — {reason}\n\n  {risk dimension details}\n\n  Pipeline: Scan -> Risk (VETOED) -- No execution.\n\nImportant Notes\nArbitrage opportunities are ephemeral. By the time the user reads the scan results and confirms, the price discrepancy may have closed. The skill warns about this prominently and does not guarantee profits.\nAll-in cost calculation is critical. Never present gross spread as profit. Always itemize and subtract: source gas, bridge fee, destination gas, slippage on both sides. An opportunity showing 0.8% gross might be 0.2% net (or even negative).\nBridge settlement time is the main risk. During the 1-10 minute bridge settlement, the price on the destination chain can move, eliminating or even reversing the profit. The risk-assessor factors this in.\nScan-only mode is the safe default. If unsure whether the user wants to execute, default to scan-only. They can always say \"execute #1\" afterward.\nNot every scan will find opportunities. Well-arbitraged tokens (WETH, USDC) rarely have spreads > 0.5% after costs. Set expectations accordingly.\nGas costs matter more for small amounts. A $100 arb with $15 in total costs is barely profitable. Warn about this for small trade sizes.\nThis is NOT risk-free. Despite the word \"arbitrage,\" cross-chain arb carries real risk: bridge failure, price movement during settlement, smart contract risk. Always present it as a risky activity.\nError Handling\nError\tUser-Facing Message\tSuggested Action\nNo opportunities found\t\"No arb opportunities above {minProfit}% net profit across {chains}.\"\tLower minProfit or try different tokens\nOpportunity expired\t\"Price discrepancy has closed since scan. Opportunity no longer profitable.\"\tRe-scan for fresh opportunities\nRisk-assessor VETO\t\"Risk assessment vetoed: {reason}.\"\tTry smaller amount or different route\nRisk-assessor HARD_VETO\t\"Blocked: {reason}. Bridge liquidity may be insufficient.\"\tCannot proceed with this opportunity\nBridge failed\t\"Bridge operation failed. Funds should remain on {source_chain}.\"\tCheck source wallet balance\nBridge stuck\t\"Bridge settlement delayed ({elapsed} vs {expected}). Monitoring...\"\tWait or check order ID manually\nSource chain swap failed\t\"Failed to buy {token} on {source_chain}: {reason}.\"\tCheck balance and gas\nInsufficient balance\t\"Not enough {token} on {source_chain}: have ${X}, need ${Y}.\"\tReduce amount or bridge funds first\nSafety limit exceeded\t\"Trade amount exceeds safety spending limits.\"\tReduce amount or adjust limits\nWallet not configured\t\"No wallet configured for transactions.\"\tSet up wallet with setup-agent-wallet\nUser declines confirmation\t\"Arbitrage cancelled. Scan results shown above for reference.\"\tNo action needed\nProfit less than projected\t\"Actual profit (${X}) was less than projected (${Y}) due to price movement.\"\tExpected for ephemeral opportunities\nNegative profit (loss)\t\"This trade resulted in a loss of ${X} due to price movement during settlement.\"\tInherent risk of cross-chain arbitrage"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/guohongbin-git/cross-chain-arbitrage-cn",
    "publisherUrl": "https://clawhub.ai/guohongbin-git/cross-chain-arbitrage-cn",
    "owner": "guohongbin-git",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn",
    "downloadUrl": "https://openagent3.xyz/downloads/cross-chain-arbitrage-cn",
    "agentUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent",
    "manifestUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/cross-chain-arbitrage-cn/agent.md"
  }
}