odos
Odos smart order routing DEX aggregator. Best swap rates with patented SOR algorithm across 500+ liquidity sources.
- License 许可
- MIT
- 最近更新
- 2026-04-05
- Stars
- ★ 7
- Forks
- 1
01 前言 Front Matter
- name
- odos
- metadata
- { "clawdbot": { "emoji": "?", "always": true, "requires": { "bins": [ "curl", "jq" ] } } }
- description
- Odos smart order routing DEX aggregator. Best swap rates with patented SOR algorithm across 500+ liquidity sources.
02 资源文件 2
- 参考文档_meta.json264 B
- 参考文档README.md601 B
03 SKILL.md 正文
Odos ?
Smart Order Routing DEX aggregator. Patented algorithm for best execution across 500+ liquidity sources.
? Referral Fee Configuration
This skill includes a referral fee (1%) to support development.
| Variable | Value | Description |
|---|---|---|
REFERRAL_CODE |
0 |
Referral code (0 = default) |
FEE_RECIPIENT |
0x890CACd9dEC1E1409C6598Da18DC3d634e600b45 |
EVM wallet to receive fees |
COMPACT |
true | Use compact calldata for gas savings |
Fee Breakdown:
- User pays: ~1% of swap output (configurable)
- Referrer receives: 100% of fee
- Fees are collected on-chain directly to your wallet
Features
- ? 500+ Liquidity Sources - Uniswap, SushiSwap, Curve, Balancer, etc.
- ⛓️ Multi-Chain - Ethereum, Arbitrum, Optimism, Polygon, Base, Avalanche
- ? Smart Order Routing - Patented SOR algorithm
- ? Multi-Input Swaps - Swap multiple tokens at once
- ? Referral Program - Earn on every swap
- ⚡ Gas Optimized - Compact calldata for lower gas
API Base URL
https://api.odos.xyz
Get Swap Quote
CHAIN_ID="1" # Ethereum
# Token addresses
INPUT_TOKEN="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE" # ETH
OUTPUT_TOKEN="0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48" # USDC
INPUT_AMOUNT="1000000000000000000" # 1 ETH in wei
USER_ADDRESS="<YOUR_WALLET>"
# Referral configuration
REFERRAL_CODE="0"
curl -s -X POST "https://api.odos.xyz/sor/quote/v2" \
-H "Content-Type: application/json" \
-d "{
\"chainId\": ${CHAIN_ID},
\"inputTokens\": [{
\"tokenAddress\": \"${INPUT_TOKEN}\",
\"amount\": \"${INPUT_AMOUNT}\"
}],
\"outputTokens\": [{
\"tokenAddress\": \"${OUTPUT_TOKEN}\",
\"proportion\": 1
}],
\"userAddr\": \"${USER_ADDRESS}\",
\"slippageLimitPercent\": 1,
\"referralCode\": ${REFERRAL_CODE},
\"compact\": true
}" | jq '{
inAmounts: .inAmounts,
outAmounts: .outAmounts,
gasEstimate: .gasEstimate,
pathId: .pathId
}'
Assemble Transaction
PATH_ID="<PATH_ID_FROM_QUOTE>"
curl -s -X POST "https://api.odos.xyz/sor/assemble" \
-H "Content-Type: application/json" \
-d "{
\"userAddr\": \"${USER_ADDRESS}\",
\"pathId\": \"${PATH_ID}\",
\"simulate\": false
}" | jq '{
to: .transaction.to,
data: .transaction.data,
value: .transaction.value,
gasLimit: .transaction.gas
}'
Multi-Input Swap (Swap Multiple Tokens)
# Swap ETH + USDC to DAI
curl -s -X POST "https://api.odos.xyz/sor/quote/v2" \
-H "Content-Type: application/json" \
-d "{
\"chainId\": ${CHAIN_ID},
\"inputTokens\": [
{
\"tokenAddress\": \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",
\"amount\": \"500000000000000000\"
},
{
\"tokenAddress\": \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",
\"amount\": \"500000000\"
}
],
\"outputTokens\": [{
\"tokenAddress\": \"0x6B175474E89094C44Da98b954EesdeAC495271d0F\",
\"proportion\": 1
}],
\"userAddr\": \"${USER_ADDRESS}\",
\"slippageLimitPercent\": 1,
\"referralCode\": ${REFERRAL_CODE},
\"compact\": true
}" | jq '.'
Multi-Output Swap (Split to Multiple Tokens)
# Swap ETH to 50% USDC + 50% DAI
curl -s -X POST "https://api.odos.xyz/sor/quote/v2" \
-H "Content-Type: application/json" \
-d "{
\"chainId\": ${CHAIN_ID},
\"inputTokens\": [{
\"tokenAddress\": \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",
\"amount\": \"${INPUT_AMOUNT}\"
}],
\"outputTokens\": [
{
\"tokenAddress\": \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",
\"proportion\": 0.5
},
{
\"tokenAddress\": \"0x6B175474E89094C44Da98b954EedeAC495271d0F\",
\"proportion\": 0.5
}
],
\"userAddr\": \"${USER_ADDRESS}\",
\"slippageLimitPercent\": 1,
\"referralCode\": ${REFERRAL_CODE},
\"compact\": true
}" | jq '.'
Supported Chains
| Chain | ID | Native Token |
|---|---|---|
| Ethereum | 1 | ETH |
| Arbitrum | 42161 | ETH |
| Optimism | 10 | ETH |
| Polygon | 137 | MATIC |
| Base | 8453 | ETH |
| Avalanche | 43114 | AVAX |
| BSC | 56 | BNB |
| Fantom | 250 | FTM |
| zkSync Era | 324 | ETH |
| Linea | 59144 | ETH |
| Mantle | 5000 | MNT |
| Mode | 34443 | ETH |
Get Token List
curl -s "https://api.odos.xyz/info/tokens/${CHAIN_ID}" | jq '.tokenMap | to_entries[:10] | .[] | {symbol: .value.symbol, address: .key, decimals: .value.decimals}'
Get Liquidity Sources
curl -s "https://api.odos.xyz/info/liquidity-sources/${CHAIN_ID}" | jq '.[] | {id: .id, name: .name}'
Check Contract Info
curl -s "https://api.odos.xyz/info/contract-info/v2/${CHAIN_ID}" | jq '{
routerAddress: .routerAddress,
executorAddress: .executorAddress
}'
Safety Rules
- ALWAYS display swap details before execution
- WARN if price impact > 1%
- CHECK token allowance before swap
- VERIFY output amounts
- NEVER execute without user confirmation
Error Handling
| Error | Cause | Solution |
|---|---|---|
NO_PATH_FOUND |
No route available | Try different pair |
INSUFFICIENT_LIQUIDITY |
Low liquidity | Reduce amount |
SLIPPAGE_EXCEEDED |
Price moved | Increase slippage |
Links
04 同仓库更多 Skills
zyfai
Earn yield on any Ethereum wallet on Base, Arbitrum, and Plasma. Use when a user wants passive DeFi yield on their funds. Deploys a non-custodial subaccount (Safe) linked to their EOA, enables automated yield optimization, and lets them deposit/withdraw anytime.
zerion-api
暂无简介
zerion-api-skill
暂无简介
zerion-api-mcp
暂无简介
yahoo-finance-forex
Fetches real-time FOREX news and market data from Yahoo Finance for major currency pairs (EUR/USD, GBP/USD, USD/JPY, etc.). Analyzes sentiment and provides trading context.
yahoo-finance
This skill should be used when the user asks to "get stock prices", "check stock quotes", "look up earnings", "get financial data", "find trending stocks", or needs stock market data from Yahoo Finance.