aicoin-onchain

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
Working directory:
cd
to this SKILL.md directory before running scripts. Example:
cd ~/.openclaw/workspace/skills/aicoin-onchain && node scripts/token.mjs ...
工作目录:运行脚本前请
cd
到本SKILL.md所在目录。示例:
cd ~/.openclaw/workspace/skills/aicoin-onchain && node scripts/token.mjs ...

AiCoin Onchain

AiCoin Onchain

On-chain DEX toolkit powered by OKX Web3 DEX API. Token discovery, swap execution, wallet portfolio, gas estimation, and transaction broadcasting across 20+ blockchains.
Version: 1.0.0
基于OKX Web3 DEX API开发的链上DEX工具集,支持在20+条区块链上进行代币发现、兑换执行、钱包持仓管理、Gas估算以及交易广播。
版本: 1.0.0

Critical Rules

核心规则

  1. NEVER fabricate data. Always run scripts. If data is empty or errors, say so — do NOT invent prices or balances.
  2. NEVER use curl, web_fetch, web_search for on-chain data. Always use these scripts.
  3. NEVER run
    env
    or
    printenv
    — leaks API secrets.
  4. Scripts auto-load
    .env
    — never pass credentials inline.
  5. Reply in user's language. Chinese input = Chinese response.
  6. User confirmation required before swap execution. Always show quote details (amount, gas, price impact, honeypot status) and get explicit user approval before calling
    swap swap
    .
  7. This skill does NOT sign transactions. It returns unsigned tx data. User must sign locally with their own wallet/key.
  1. 绝对不能编造数据。必须始终运行脚本获取数据。如果数据为空或出现错误,请如实告知——切勿虚构价格或余额。
  2. 绝对不要使用curl、web_fetch、web_search获取链上数据。必须使用本工具集中的脚本。
  3. 绝对不要运行
    env
    printenv
    ——这会泄露API密钥。
  4. 脚本会自动加载
    .env
    文件
    ——切勿在命令行中直接传入凭证信息。
  5. 使用用户的语言回复。若用户输入中文,则用中文回复。
  6. 执行兑换前必须获得用户确认。必须先向用户展示报价详情(金额、Gas费用、滑点影响、蜜罐检测状态),并获得用户明确批准后,才能调用
    swap swap
    命令。
  7. 本Skill不负责签署交易。仅返回未签名的交易数据,用户必须使用自己的钱包/密钥在本地完成签名。

Quick Reference

快速参考

TaskCommand
Search token
node scripts/token.mjs search '{"query":"PEPE"}'
Token price
node scripts/market.mjs price '{"address":"0xeee...","chain":"ethereum"}'
K-line chart
node scripts/market.mjs kline '{"address":"0xeee...","chain":"ethereum","bar":"1H","limit":100}'
Trending tokens
node scripts/token.mjs trending '{}'
Hot tokens
node scripts/token.mjs hot_tokens '{}'
Swap quote
node scripts/swap.mjs quote '{"from":"0xeee...","to":"0xdac...","amount":"1000000000000000000","chain":"ethereum"}'
Wallet balance
node scripts/portfolio.mjs total_value '{"address":"0x...","chains":"ethereum"}'
All token holdings
node scripts/portfolio.mjs all_balances '{"address":"0x...","chains":"ethereum,solana"}'
Gas price
node scripts/gateway.mjs gas '{"chain":"ethereum"}'
Auto swap
node scripts/trade.mjs swap '{"from":"0xeee...","to":"0xdac...","amount":"1000000000000000000","chain":"base"}'
任务命令
搜索代币
node scripts/token.mjs search '{"query":"PEPE"}'
代币价格
node scripts/market.mjs price '{"address":"0xeee...","chain":"ethereum"}'
K线数据
node scripts/market.mjs kline '{"address":"0xeee...","chain":"ethereum","bar":"1H","limit":100}'
趋势代币
node scripts/token.mjs trending '{}'
热门代币
node scripts/token.mjs hot_tokens '{}'
兑换报价
node scripts/swap.mjs quote '{"from":"0xeee...","to":"0xdac...","amount":"1000000000000000000","chain":"ethereum"}'
钱包总价值
node scripts/portfolio.mjs total_value '{"address":"0x...","chains":"ethereum"}'
全部代币持仓
node scripts/portfolio.mjs all_balances '{"address":"0x...","chains":"ethereum,solana"}'
Gas价格
node scripts/gateway.mjs gas '{"chain":"ethereum"}'
自动兑换
node scripts/trade.mjs swap '{"from":"0xeee...","to":"0xdac...","amount":"1000000000000000000","chain":"base"}'

Skill Routing

Skill路由

  • CEX trading (buy/sell on Binance, OKX) → use
    aicoin-trading
  • CEX market data (funding rates, OI, liquidation maps) → use
    aicoin-market
  • Freqtrade strategies → use
    aicoin-freqtrade
  • Hyperliquid whales → use
    aicoin-hyperliquid
  • On-chain DEX operations → use this skill (
    aicoin-onchain
    )
  • CEX交易(在Binance、OKX上买卖)→ 使用
    aicoin-trading
  • CEX市场数据(资金费率、持仓量、清算数据)→ 使用
    aicoin-market
  • Freqtrade策略 → 使用
    aicoin-freqtrade
  • Hyperliquid巨鲸追踪 → 使用
    aicoin-hyperliquid
  • 链上DEX操作 → 使用本Skill (
    aicoin-onchain
    )

Scripts

脚本说明

token.mjs — Token Discovery

token.mjs — 代币发现

ActionParamsDescription
search
query
,
chains?
Search tokens by name/symbol/address
info
address
,
chain?
Token metadata (name, symbol, decimals, logo)
trending
chains?
,
sort_by?
,
time_frame?
Trending token rankings
price_info
address
,
chain?
Price, market cap, liquidity, 24h change
hot_tokens
chains?
,
ranking_type?
Hot tokens by trending score
holders
address
,
chain?
Token holder distribution
liquidity
address
,
chain?
Top liquidity pools
advanced_info
address
,
chain?
Risk level, creator, dev stats
操作参数说明
search
query
,
chains?
通过名称/符号/地址搜索代币
info
address
,
chain?
获取代币元数据(名称、符号、小数位数、Logo)
trending
chains?
,
sort_by?
,
time_frame?
获取趋势代币排名
price_info
address
,
chain?
获取价格、市值、流动性、24小时涨跌幅
hot_tokens
chains?
,
ranking_type?
通过趋势分数获取热门代币
holders
address
,
chain?
获取代币持有者分布
liquidity
address
,
chain?
获取顶级流动性池信息
advanced_info
address
,
chain?
获取风险等级、创建者、开发者统计数据

market.mjs — Market Data

market.mjs — 市场数据

ActionParamsDescription
price
address
,
chain?
Current token price
prices
tokens
,
chain?
Batch price query (comma-separated chain:address)
kline
address
,
chain?
,
bar?
,
limit?
K-line / candlestick data
index
address
,
chain?
Aggregated index price
signal_list
chain
,
wallet_type?
,
token_address?
Smart money / whale / KOL signals
signal_chains
(none)Supported chains for signals
操作参数说明
price
address
,
chain?
获取当前代币价格
prices
tokens
,
chain?
批量查询代币价格(格式为逗号分隔的chain:address)
kline
address
,
chain?
,
bar?
,
limit?
获取K线/蜡烛图数据
index
address
,
chain?
获取聚合指数价格
signal_list
chain
,
wallet_type?
,
token_address?
获取聪明钱/巨鲸/KOL信号
signal_chains
获取支持信号查询的区块链列表

swap.mjs — DEX Swap

swap.mjs — DEX兑换

ActionParamsDescription
quote
from
,
to
,
amount
,
chain
,
swap_mode?
Get swap quote (read-only)
swap
from
,
to
,
amount
,
chain
,
wallet
,
slippage?
Get swap tx data (unsigned)
approve
token
,
amount
,
chain
Get ERC-20 approval tx data
chains
(none)Supported chains for DEX aggregator
liquidity
chain
Available liquidity sources on a chain
操作参数说明
quote
from
,
to
,
amount
,
chain
,
swap_mode?
获取兑换报价(只读操作)
swap
from
,
to
,
amount
,
chain
,
wallet
,
slippage?
获取兑换交易数据(未签名)
approve
token
,
amount
,
chain
获取ERC-20授权交易数据
chains
获取DEX聚合器支持的区块链列表
liquidity
chain
获取指定区块链上的可用流动性来源

portfolio.mjs — Wallet Portfolio

portfolio.mjs — 钱包持仓管理

ActionParamsDescription
total_value
address
,
chains
Total portfolio value in USD
all_balances
address
,
chains
All token balances
token_balances
address
,
tokens
Specific token balances
chains
(none)Supported chains for balance queries
操作参数说明
total_value
address
,
chains
获取钱包总价值(以USD计价)
all_balances
address
,
chains
获取全部代币余额
token_balances
address
,
tokens
获取指定代币的余额
chains
获取支持余额查询的区块链列表

gateway.mjs — Transaction Gateway

gateway.mjs — 交易网关

ActionParamsDescription
gas
chain
Current gas prices
gas_limit
from
,
to
,
chain
,
amount?
,
data?
Estimate gas limit
simulate
from
,
to
,
data
,
chain
,
amount?
Simulate transaction (dry-run)
broadcast
signed_tx
,
address
,
chain
Broadcast signed transaction
orders
address
,
chain
,
order_id?
Track broadcast order status
chains
(none)Supported chains for gateway
操作参数说明
gas
chain
获取当前Gas价格
gas_limit
from
,
to
,
chain
,
amount?
,
data?
估算Gas限额
simulate
from
,
to
,
data
,
chain
,
amount?
模拟交易(试运行)
broadcast
signed_tx
,
address
,
chain
广播已签名的交易
orders
address
,
chain
,
order_id?
追踪广播交易的状态
chains
获取网关支持的区块链列表

trade.mjs — Full Auto Trade (optional, requires private key)

trade.mjs — 全自动交易(可选,需私钥)

ActionParamsDescription
swap
from
,
to
,
amount
,
chain
,
slippage?
Full auto: quote → approve → sign → broadcast
wallet_info
(none)Show wallet address derived from private key
Setup: User adds
WALLET_PRIVATE_KEY=0x...
to
.env
. Private key stays local, never sent to any server.
Safety: Auto-blocks honeypot tokens and trades with >10% price impact.
EVM only — Solana auto-trade not yet supported.
操作参数说明
swap
from
,
to
,
amount
,
chain
,
slippage?
全自动流程:报价 → 授权 → 签名 → 广播
wallet_info
显示从私钥派生的钱包地址
设置:用户需在
.env
文件中添加
WALLET_PRIVATE_KEY=0x...
。私钥将保存在本地,绝不会发送至任何服务器。
安全特性:自动拦截蜜罐代币以及滑点影响>10%的交易。
仅支持EVM链 — Solana全自动交易暂未支持。

Chain Names

区块链名称

The scripts accept human-readable chain names:
ChainNameAlso Accepts
Ethereum
ethereum
eth
Solana
solana
sol
Base
base
BSC
bsc
bnb
Arbitrum
arbitrum
arb
Polygon
polygon
matic
XLayer
xlayer
okb
Avalanche
avalanche
avax
Optimism
optimism
op
脚本支持以下易读的区块链名称:
区块链名称可替代输入
Ethereum
ethereum
eth
Solana
solana
sol
Base
base
BSC
bsc
bnb
Arbitrum
arbitrum
arb
Polygon
polygon
matic
XLayer
xlayer
okb
Avalanche
avalanche
avax
Optimism
optimism
op

Native Token Addresses

原生代币地址

ChainAddress
EVM (ETH, BSC, Polygon, etc.)
0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
Solana
11111111111111111111111111111111
WARNING: Solana native SOL address is
11111111111111111111111111111111
(system program). Do NOT use
So11111111111111111111111111111111111111112
(wSOL).
区块链地址
EVM链(ETH、BSC、Polygon等)
0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
Solana
11111111111111111111111111111111
警告:Solana原生SOL的地址为
11111111111111111111111111111111
(系统程序地址)。请勿使用
So11111111111111111111111111111111111111112
(wSOL)。

Swap Workflow

兑换流程

EVM Swap (quote → approve → swap)

EVM链兑换(报价 → 授权 → 兑换)

1. token.mjs search    → find token contract address
2. swap.mjs quote      → get price estimate, check honeypot/tax
3. swap.mjs approve    → get ERC-20 approval tx data (skip for native tokens)
4. User signs approval → broadcast via gateway.mjs
5. swap.mjs swap       → get swap tx data
6. User signs swap     → broadcast via gateway.mjs
7. gateway.mjs orders  → track transaction status
1. token.mjs search    → 查找代币合约地址
2. swap.mjs quote      → 获取价格估算,检查蜜罐/手续费
3. swap.mjs approve    → 获取ERC-20授权交易数据(原生代币可跳过此步骤)
4. 用户签名授权交易 → 通过gateway.mjs广播
5. swap.mjs swap       → 获取兑换交易数据
6. 用户签名兑换交易 → 通过gateway.mjs广播
7. gateway.mjs orders  → 追踪交易状态

Solana Swap (simpler, no approve step)

Solana链兑换(流程更简单,无需授权步骤)

1. token.mjs search    → find token address
2. swap.mjs quote      → get quote
3. swap.mjs swap       → get tx data
4. User signs          → broadcast via gateway.mjs
1. token.mjs search    → 查找代币地址
2. swap.mjs quote      → 获取报价
3. swap.mjs swap       → 获取交易数据
4. 用户签名交易 → 通过gateway.mjs广播

Security Rules

安全规则

  1. Never execute swap without user confirmation. Show: token names, amounts, gas estimate, price impact, honeypot status.
  2. Skip approve for native tokens. Never call
    swap approve
    for
    0xeee...
    (EVM) or
    111...1
    (Solana).
  3. Honeypot warning. If
    isHoneyPot = true
    , warn prominently and ask user to confirm.
  4. Price impact >5%: warn user. >10%: strongly warn, suggest reducing amount.
  5. Tax tokens: if
    taxRate
    > 0, show to user before confirmation.
  1. 未获得用户确认前绝对不能执行兑换。需向用户展示:代币名称、金额、Gas估算、滑点影响、蜜罐检测状态。
  2. 原生代币无需授权。绝对不要对EVM链的
    0xeee...
    或Solana链的
    111...1
    调用
    swap approve
  3. 蜜罐警告。若
    isHoneyPot = true
    ,需显著警告用户并请求确认。
  4. 滑点影响>5%:向用户发出警告;>10%:强烈警告,建议用户减少交易金额。
  5. 手续费代币:若
    taxRate
    > 0,需在确认前告知用户。

Amount Rules

金额规则

  • Script params use minimal units (wei/lamports):
    1 ETH
    =
    "1000000000000000000"
    ,
    1 USDC
    =
    "1000000"
  • Display to user in UI units:
    1.5 ETH
    ,
    3200 USDC
  • Gas fees in Gwei (EVM) or USD
  • 脚本参数使用最小单位(wei/lamports):
    1 ETH
    =
    "1000000000000000000"
    1 USDC
    =
    "1000000"
  • 向用户展示时使用UI单位
    1.5 ETH
    3200 USDC
  • Gas费用以Gwei(EVM链)或USD显示

API Key Setup

API密钥设置

Requires OKX Web3 API credentials. Free at OKX Developer Portal.
Add to
.env
:
OKX_API_KEY=your-api-key
OKX_SECRET_KEY=your-secret-key
OKX_PASSPHRASE=your-passphrase
Security notice: OKX Web3 API Key is for reading market data and generating unsigned swap calldata. It cannot access your wallet funds or sign transactions. All signing happens locally.
需要OKX Web3 API凭证。可在OKX开发者平台免费获取。
请将以下内容添加到
.env
文件中:
OKX_API_KEY=your-api-key
OKX_SECRET_KEY=your-secret-key
OKX_PASSPHRASE=your-passphrase
安全说明:OKX Web3 API密钥仅用于读取市场数据和生成未签名的兑换调用数据,无法访问您的钱包资金或签署交易。所有签名操作均在本地完成。