Labsco
okx logo

okx-dex-ws

307

by okx · part of okx/onchainos-skills

Use this skill when the user mentions 'onchainos ws', 'ws start', 'ws poll', 'ws stop', 'ws channels', 'ws session', 'ws channel-info', 'idle-timeout', 'idle timeout', 'WebSocket channels', 'WS频道', or asks about managing WebSocket sessions/会话管理. Also use when writing a custom WebSocket script/脚本/bot for real-time on-chain data. Covers: onchainos ws CLI commands (start/poll/stop/list/channels/channel-info), session lifecycle, idle-timeout configuration, and all 9 DEX WebSocket channels...

🔥🔥🔥✓ VerifiedFreeQuick setup
🧩 One of 7 skills in the okx/onchainos-skills package — works on its own, and pairs well with its siblings.

Use this skill when the user mentions 'onchainos ws', 'ws start', 'ws poll', 'ws stop', 'ws channels', 'ws session', 'ws channel-info', 'idle-timeout', 'idle timeout', 'WebSocket channels', 'WS频道', or asks about managing WebSocket sessions/会话管理. Also use when writing a custom WebSocket script/脚本/bot for real-time on-chain data. Covers: onchainos ws CLI commands (start/poll/stop/list/channels/channel-info), session lifecycle, idle-timeout configuration, and all 9 DEX WebSocket channels...

Inspect the full instructions your agent will receiveExpand

This is the exact playbook injected into your agent when the skill activates — shown here so you can audit it before installing. You don't need to read it to use the skill.

by okx

Use this skill when the user mentions 'onchainos ws', 'ws start', 'ws poll', 'ws stop', 'ws channels', 'ws session', 'ws channel-info', 'idle-timeout', 'idle timeout', 'WebSocket channels', 'WS频道', or asks about managing WebSocket sessions/会话管理. Also use when writing a custom WebSocket script/脚本/bot for real-time on-chain data. Covers: onchainos ws CLI commands (start/poll/stop/list/channels/channel-info), session lifecycle, idle-timeout configuration, and all 9 DEX WebSocket channels... npx skills add https://github.com/okx/onchainos-skills --skill okx-dex-ws Download ZIPGitHub307

Onchain OS DEX WebSocket — Unified Skill

Two ways to consume real-time DEX data:

  • CLI (onchainos ws) — start a background session, poll events incrementally. Best for monitoring and agent-driven workflows.

  • Script — write a custom WebSocket client in Python/Node/Rust. Best for bots and custom logic.

Pre-flight Checks

Read ../okx-agentic-wallet/_shared/preflight.md. If that file does not exist, read _shared/preflight.md instead.

Related Workflows

When one of the following commands is used, show the related workflow hint after displaying results:

Command Workflow File ws start, ws poll, ws stop Wallet Monitor (WebSocket) ~/.onchainos/workflows/wallet-monitor-ws.md

Hint format: "You can also try out our Wallet Monitor (WebSocket) workflow for more comprehensive results. Would you like to try it?"

Approach 1: CLI (onchainos ws)

Discover Channels

Copy & paste — that's it
onchainos ws channels # list all 9 supported channels
onchainos ws channel-info --channel # detailed info + example for a channel

Start / Poll / Stop

Copy & paste — that's it
onchainos ws start --channel [params] # start background session
onchainos ws poll --id [--channel ] # pull new events
onchainos ws list # list sessions
onchainos ws stop [--id ] # stop session(s)

Channel Quick Reference

Channel Group Pattern Required Params kol_smartmoney-tracker-activity signal global (none) address-tracker-activity signal per-wallet --wallet-addresses dex-market-new-signal-openapi signal per-chain --chain-index price market per-token --token-pair dex-token-candle{period} market per-token --token-pair price-info token per-token --token-pair trades token per-token --token-pair dex-market-memepump-new-token-openapi trenches per-chain --chain-index dex-market-memepump-update-metrics-openapi trenches per-chain --chain-index

Parameter Formats

  • --token-pair: chainIndex:tokenContractAddress (e.g. 1:0xdac17f958d2ee523a2206206994597c13d831ec7)

  • --chain-index: comma-separated chain IDs (e.g. 1,501,56)

  • --wallet-addresses: comma-separated addresses, max 200

  • --idle-timeout: auto-stop if no poll within this duration (default 30m; 1h, 2h, 300s, 0 to disable)

Examples

Copy & paste — that's it
# Smart money trade feed
onchainos ws start --channel kol_smartmoney-tracker-activity

# Track specific wallets
onchainos ws start --channel address-tracker-activity --wallet-addresses 0xAAA,0xBBB

# Token price monitoring
onchainos ws start --channel price --token-pair 1:0xdac17f958d2ee523a2206206994597c13d831ec7

# Buy signal alerts on Ethereum + Solana
onchainos ws start --channel dex-market-new-signal-openapi --chain-index 1,501

# New meme token launches on Solana
onchainos ws start --channel dex-market-memepump-new-token-openapi --chain-index 501

# K-line 1-minute candles
onchainos ws start --channel dex-token-candle1m --token-pair 1:0xdac17f958d2ee523a2206206994597c13d831ec7

Poll Filters (tracker channels only)

When polling kol_smartmoney-tracker-activity or address-tracker-activity, these filters are available:

  • --min-quote-amount, --min-market-cap, --min-pnl

  • --trader (wallet address prefix match)

  • --tag (smart_money or kol)

  • --trade-type (buy or sell)

  • --since (ms timestamp)

Approach 2: Custom Script

When the user wants to build a custom WebSocket client with their own logic, read the corresponding protocol reference file:

Market Data (price & candlestick streams)

Read: ../okx-dex-market/references/ws-protocol.md

Channels: price, dex-token-candle{period}

Token Data (detailed token streams)

Read: ../okx-dex-token/references/ws-protocol.md

Channels: price-info, trades

Signal & Wallet Tracking

Read: ../okx-dex-signal/references/ws-protocol.md

Channels: dex-market-new-signal-openapi, kol_smartmoney-tracker-activity, address-tracker-activity

Meme/Trenches

Read: ../okx-dex-trenches/references/ws-protocol.md

Channels: dex-market-memepump-new-token-openapi, dex-market-memepump-update-metrics-openapi

Common Protocol (all channels share)

  • Endpoint: wss://wsdex.okx.com/ws/v6/dex

  • Auth: HMAC-SHA256 login required before subscribing

  • Heartbeat: send "ping" every 25s, expect "pong"

  • Subscribe: {"op": "subscribe", "args": [...]}

  • Unsubscribe: {"op": "unsubscribe", "args": [...]}