Image placeholder
Mới cập nhật
Chưa xác định

Tide Auto Bot

Cập nhật: 17:39 02/03/2026
R1zaXR1zaX
Trạng thái: 
nodejs
150.000 ₫

🌊 Tide Auto Bot — Auto Farming Tide Protocol (SUI Testnet)

Bot tự động farming điểm cho dự án Tide Protocol trên mạng SUI Testnet. Hỗ trợ đa tài khoản, đa proxy, chạy 24/7 hoàn toàn tự động.


📸 Preview

Tide Auto BotTide Auto Bot

✨ Tính năng chính

  • 💧 Faucet — Tự động claim SUI testnet từ cả 2 nguồn: SuiLearn (nhanh, không captcha) + SUI Official (captcha + PoW)

  • 💰 Deposit (10 điểm) — Nạp SUI vào Tide Protocol

  • 🎫 Mint Pass — Mint Supporter Pass NFT

  • 🔄 Trade Pass (30 điểm) — Mua (15đ) + Bán (15đ) pass trên marketplace, lặp N lần

  • 🔀 Cross Trade — Giao dịch chéo giữa các tài khoản (auto-mint pass, retry khi bị snipe)

  • 🏦 Borrow/Repay (45 điểm) — Vay (20đ) + Trả (25đ) SUI, lặp N lần

  • 🎁 Claim Rewards (5 điểm) — Tự động nhận thưởng từ Supporter Pass

  • 🔗 Referral — Tự động link mã giới thiệu

  • ♻️ Daily Loop — Lặp lại farming mỗi X giờ (mặc định 6h = 4 chu kỳ/ngày)

  • 🆘 Rescue SUI — Tự động cứu hộ ví thiếu SUI (chỉ khi faucet thất bại, chuyển đúng số thiếu)

  • 📦 Collect SUI — Gom tất cả SUI từ mọi ví về 1 ví đích


🔧 Tính năng nâng cao

  • 🧵 Multi-thread — Chạy song song nhiều tài khoản cùng lúc (threads)

  • 🌐 Multi-proxy — Hỗ trợ 2 chế độ: proxy tĩnh (proxy.txt) và proxy xoay (rotating-proxies.txt)

  • 🔄 Rotating Proxy — Mỗi key xoay = 1 luồng độc lập, tự đổi IP qua API trước mỗi chu kỳ

  • 🛡️ Anti-detect — Device fingerprint ngẫu nhiên cho mỗi request

  • 🔄 Auto-retry — Tự động thử lại khi gặp lỗi mạng/RPC

  • 💡 Smart Faucet — Chạy 2 nguồn độc lập (SuiLearn + Official), bật/tắt từng nguồn riêng qua faucet.sources → Rescue nếu cả 2 fail

  • 📊 Live Stats — Hiển thị điểm, rank, tier, multiplier realtime

  • PoW Worker Pool — Proof of Work đa luồng thực (Worker Threads), cấu hình số worker qua powThreads

  • 🔑 Multi Captcha — Hỗ trợ 3 dịch vụ captcha đồng thời, mỗi dịch vụ có API key riêng

  • 🆘 Smart Rescue — Chỉ rescue khi faucet thất bại, chuyển đúng số SUI cần thiết (không partial)

  • 📦 Consolidate SUI — Thu gom toàn bộ SUI về 1 ví chỉ định

  • 🛒 On-chain Validation — Marketplace validate listing trên chain trước khi mua, tracking dead listing


📋 Yêu cầu

  • Node.js >= 18

  • Captcha API Key (cho tính năng faucet): hỗ trợ 2captcha / capmonster / capsolver

  • Proxy (khuyến nghị): HTTP / HTTPS / SOCKS4 / SOCKS5


🚀 Cài đặt

# 1. Cài dependencies
npm install

# 2. Thêm tài khoản vào accounts.txt (mỗi dòng 1 ví)
# Hỗ trợ: Private key (hex) hoặc Seed phrase (12/24 từ)

# 3. Thêm proxy vào proxy.txt (tùy chọn, mỗi dòng 1 proxy)
# Định dạng: protocol://user:pass@host:port

# 4. Chỉnh config.json theo nhu cầu (xem bên dưới)

# 5. Chạy bot
npm start

⚙️ Cấu hình (config.json)

Bot tự tạo config.json với giá trị mặc định nếu file chưa tồn tại. Bạn chỉ cần sửa những gì cần thiết.

{
  "threads": 5,                          // Số luồng chạy song song
  "powThreads": 10,                      // Số worker thread cho PoW (mặc định: auto = CPU cores, max 8)
  "delay": { "min": 3000, "max": 7000 }, // Delay ngẫu nhiên giữa các action (ms)

  // === Bật/tắt tính năng ===
  "features": {
    "faucet": true,          // Claim SUI testnet (SuiLearn + Official)
    "deposit": true,         // Nạp SUI vào Tide
    "mintPass": true,        // Mint Supporter Pass
    "claimRewards": true,    // Nhận thưởng
    "borrow": true,          // Vay & trả SUI
    "tradePass": true,       // Mua/bán pass trên marketplace
    "crossTrade": false,      // Khuyến nghị Tắt -> chức năng không ổn định
    "dailyLoop": true        // Lặp lại hàng ngày (24/7)
  },

  // === Proxy ===
  "proxy": {
    "enabled": true,         // Bật/tắt proxy
    "mode": "static",        // "static" (proxy.txt) | "rotating" (rotating-proxies.txt)
    "protocol": "http",      // http | https | socks4 | socks5 (chỉ dùng khi mode=static)
    "randomProxy": true      // Random proxy cho mỗi request (chỉ dùng khi mode=static)
  },

  // === Proxy xoay (chỉ áp dụng khi mode="rotating") ===
  "rotatingProxy": {
    "changeIpDelay": 5000,   // ms chờ sau khi đổi IP để ổn định
    "minIntervalMs": 65000  // ms tối thiểu giữa 2 lần đổi IP (≥ 60000 theo giới hạn provider)
  },

  // === Captcha (bắt buộc cho faucet Official) ===
  // Hỗ trợ 3 dịch vụ, mỗi dịch vụ có API key riêng
  "captcha": {
    "service": "capmonster",     // capsolver | 2captcha | capmonster
    "apiKey2Captcha": "",        // API key cho 2captcha.com
    "apiKeyCapsolver": "",        // API key cho capsolver.com
    "apiKeyCapmonster": ""       // API key cho capmonster.cloud
  },

  // === Faucet ===
  "faucet": {
    "maxClaims": 5,          // Số lần claim tối đa/phiên (~5 lần/ngày)
    "delayBetween": 5000,    // Delay giữa mỗi lần claim (ms)
    "sources": {
      "suilearn": true,      // Bật/tắt nguồn SuiLearn (nhanh, không captcha)
      "official": true       // Bật/tắt nguồn SUI Official (captcha + PoW)
    }
  },

  // === Deposit ===
  "deposit": {
    "amountSUI": 2           // Số SUI nạp vào Tide (tối thiểu 1 SUI)
  },

  // === Marketplace ===
  "marketplace": {
    "maxBuyPrice": 35000000000,  // Giá mua tối đa (MIST) — 35 SUI
    "sellPrice": 999000000000,   // Giá bán (MIST) — 999 SUI
    "repeatCount": 5,            // Số lần lặp buy→sell mỗi chu kỳ
    "crossPrice": 100000000,     // Giá giao dịch chéo (MIST) — 0.1 SUI (tối thiểu)
    "crossRepeat": 3             // Số lần giao dịch chéo
  },

  // === Loan ===
  "loan": {
    "borrowAmount": 0.5,    // Số SUI vay mỗi lần
    "repeatCount": 3         // Số lần lặp borrow→repay
  },

  // === Referral ===
  "referral": {
    "enabled": true,
    "code": "TIDE-249BF61FYYCX"
  },

  // === Rescue SUI (cứu hộ ví thiếu SUI) ===
  // Chỉ kích hoạt khi faucet thất bại, chuyển đúng số SUI cần thiết
  "rescue": {
    "enabled": true,         // Bật/tắt rescue
    "minBalance": 1.0,       // Ví có balance < minBalance sẽ được rescue (SUI)
    "reserveBalance": 1.0,   // Giữ lại ít nhất X SUI trong ví donor
    "maxTransfer": 50.0      // Tối đa chuyển X SUI mỗi lần
  },

  // === Collect SUI (gom SUI về 1 ví) ===
  "collect": {
    "targetIndex": 0,        // Ví đích (index trong accounts.txt, 0 = ví đầu tiên)
    "targetAddress": "",     // Hoặc chỉ định địa chỉ ví đích (ưu tiên hơn targetIndex)
    "minKeep": 0.01          // Giữ lại tối thiểu X SUI trong mỗi ví nguồn
  },

  // === Schedule ===
  "schedule": {
    "intervalHours": 6       // Lặp lại mỗi X giờ (6h = 4 chu kỳ/ngày)
  },

  "randomOrder": false       // Xáo trộn thứ tự tài khoản
}

📁 Định dạng file

accounts.txt

# Mỗi dòng 1 tài khoản — hỗ trợ private key hoặc seed phrase
0xabc123def456...
word1 word2 word3 word4 word5 word6 word7 word8 word9 word10 word11 word12

proxy.txt — Proxy tĩnh (dùng khi mode: "static")

# Mỗi dòng 1 proxy — hỗ trợ nhiều định dạng
http://user:pass@host:port
socks5://user:pass@host:port
host:port:user:pass

rotating-proxies.txt — Proxy xoay (dùng khi mode: "rotating")

# Mỗi dòng 1 key = 1 luồng độc lập
# Format cơ bản (dùng delay mặc định từ rotatingProxy trong config.json):
http://user:pass@host:port|API_KEY

# Format đầy đủ (override delay cho từng key riêng):
http://user:pass@host:port|API_KEY|changeIpDelay|minIntervalMs

# Ví dụ:
http://user1:user1@hndc43.proxyxoay.net:26209|9f3c1e72-5b8a-4d9f-a2c7-3e6145b8f2ad
http://user2:pass2@hndc44.proxyxoay.net:26210|3b8e5751-32fg-5286-c752-7c078427422g|8000|70000

Provider hỗ trợ: proxyxoay.net
API đổi IP: GET https://proxyxoay.net/api/rotating-proxy/change-key-ip/{API_KEY}
Giới hạn: tối thiểu 1 phút giữa 2 lần đổi IP mỗi key


🎮 Chế độ chạy

Farming đầy đủ (mặc định)

npm start
# hoặc
node src/index.js

Bot sẽ chạy toàn bộ tính năng đã bật, lặp lại theo schedule.intervalHours. Rescue chỉ kích hoạt khi faucet thất bại.

Chỉ Faucet

npm run faucet
# hoặc
node src/index.js --faucet

Chỉ claim faucet SUI cho tất cả tài khoản, không farming.

Gom SUI về 1 ví (Collect)

npm run collect
# hoặc
node src/index.js --collect

Gom tất cả SUI từ mọi ví về ví đích (theo cấu hình collect trong config.json).

Tuỳ chọn CLI:

# Gom về địa chỉ cụ thể
node src/index.js --collect --to=0xABC123...

# Giữ lại 0.5 SUI trong mỗi ví nguồn
node src/index.js --collect --keep=0.5

# Kết hợp
node src/index.js --collect --to=0xABC123... --keep=0.5

🔄 Proxy xoay (Rotating Proxy) -> https://proxyxoay.net/

Thay vì chia sẻ pool proxy tĩnh cho tất cả tài khoản, proxy xoay cho phép mỗi key có 1 luồng riêng biệt với IP thay đổi theo API.

Chế độ so sánh

Proxy tĩnh (mode: "static")

  • Nguồn: proxy.txt

  • Luồng: N tài khoản chạy song song qua threads

  • IP: Cố định (pool), random hoặc round-robin

  • Cấu hình: proxy.protocol, randomProxy

Proxy xoay (mode: "rotating")

  • Nguồn: rotating-proxies.txt

  • Luồng: M key → M luồng độc lập, mỗi luồng tuần tự từng account

  • IP: Đổi qua API trước mỗi chu kỳ, mỗi key tự quản lý

  • Cấu hình: rotatingProxy.changeIpDelay, minIntervalMs

Cách bật

// config.json
"proxy": {
  "enabled": true,
  "mode": "rotating"   // ← đổi từ "static" sang "rotating"
}

Luồng hoạt động (1 key)

Luồng khởi động
    ↓
Đổi IP (lần đầu) → chờ changeIpDelay ổn định
    ↓
┌── VÒNG LẶP ──────────────────────────────┐
│  Farm account 1 (faucet → deposit → ...)  │
│  Farm account 2                           │
│  Farm account N (tuần tự)                 │
│  ↓                                        │
│  Kiểm tra minIntervalMs → đổi IP          │
│  Chờ changeIpDelay → chu kỳ tiếp         │
└───────────────────────────────────────────┘

Nhiều key chạy song song

rotating-proxies.txt dòng 1 → Luồng 1: IP riêng → farm tuần tự
rotating-proxies.txt dòng 2 → Luồng 2: IP riêng → farm tuần tự
rotating-proxies.txt dòng N → Luồng N: IP riêng → farm tuần tự

⚠️ Mỗi luồng chỉ chạy 1 tài khoản tại một thời điểm — không dùng threads song song trong cùng 1 key.


💧 Hệ thống Faucet kép

Bot hỗ trợ 2 nguồn faucet độc lập, có thể bật/tắt từng nguồn trong config.json:

"faucet": {
  "sources": {
    "suilearn": true,  // Bật/tắt SuiLearn
    "official": true   // Bật/tắt SUI Official
  }
}

1. SuiLearn Faucet

  • Không cần captcha — Nhanh chóng, ~1-2 giây/claim

  • Không cần PoW — Không tốn CPU

  • Giới hạn: 5 claims/ngày/IP (rate limit theo IP, tự skip khi hết)

  • Nguồn: faucet.suilearn.io

  • Hiển thị: TX hash + số SUI nhận (balance diff)

  • Tắt: "faucet": { "sources": { "suilearn": false } }

2. SUI Official Faucet

  • Cần captcha — Turnstile (capsolver / 2captcha / capmonster)

  • Cần PoW — Giải bằng Worker Threads Pool

  • Không giới hạn: Chỉ cần captcha + PoW thành công

  • Nguồn: faucet.testnet.sui.io

  • Tắt: "faucet": { "sources": { "official": false } }

Luồng hoạt động

claimFaucet()
  ├── 1. SuiLearn (nhanh, miễn phí) → claim
  ├── 2. Official (captcha + PoW)    → claim
  │
  ├── ✅ Cả 2 OK → Cộng dồn SUI (SuiLearn + Official)
  ├── ✅ 1 trong 2 OK → Vẫn tính thành công
  └── ❌ Cả 2 thất bại → Rescue (nếu bật)

🆘 Cơ chế cứu hộ SUI (Rescue)

Khi chạy nhiều tài khoản, một số ví có thể hết SUI và faucet cũng thất bại. Hệ thống Rescue tự động giải quyết vấn đề này:

Cách hoạt động

  1. Kích hoạt khi faucet thất bại — Rescue chỉ chạy khi cả SuiLearn lẫn Official faucet đều fail

  2. Tìm donor tốt nhất — Quét tất cả ví trong batch hiện tại, chọn ví có balance cao nhất (trừ reserveBalance)

  3. Chuyển đúng số thiếu — Tính chính xác số SUI cần thiết (minBalance - currentBalance), không chuyển dư

  4. Chỉ rescue ví trong batch — Chỉ rescue các ví đang chạy trong batch hiện tại (theo threads), không quét toàn bộ

Chuỗi fallback khi cần SUI

SuiLearn + Official Faucet (chạy cả 2)
    ↓ cả 2 thất bại
Rescue (chuyển từ ví giàu)
    ↓ thất bại
Bỏ qua tài khoản

Cấu hình

"rescue": {
  "enabled": true,       // Bật/tắt rescue
  "minBalance": 1.0,     // Ngưỡng cần rescue (ví < 1.0 SUI → cần cứu)
  "reserveBalance": 1.0, // Giữ lại tối thiểu trong ví donor
  "maxTransfer": 50.0    // Tối đa chuyển mỗi lần (SUI)
}

⚡ Worker Threads PoW Pool

Faucet SUI Official yêu cầu giải Proof of Work (PoW) — một bài toán tính toán nặng CPU.

Giải pháp: Worker Threads Pool

  • Đa luồng thực — Mỗi worker là 1 OS thread riêng biệt, chạy song song thực sự

  • Cấu hình linh hoạt — Số worker qua powThreads trong config (mặc định: min(CPU cores, 8))

  • WASM PoW — Mỗi worker load riêng WASM module (wasm_pow_bg.wasm)

  • Timeout 25 giây — PoW chạy quá lâu sẽ bị terminate, lấy challenge mới và retry

  • Auto-retry — Nếu PoW timeout, reuse captcha token + lấy challenge mới (tối đa 2 retry)

  • Job queue — Nhiều request cùng lúc sẽ được xếp hàng, dispatch tự động khi worker rảnh

  • Auto-replace — Worker bị terminate/crash sẽ tự động tạo worker mới thay thế

Kiến trúc

┌─────────────┐     ┌──────────────┐
│  faucet.js  │────▶│  powPool.js  │── solvePoWParallel()
│ (pLimit N)  │     │  (PoWPool)   │
└─────────────┘     └──────┬───────┘
                           │ dispatch job
              ┌────────────┼────────────┐
              ▼            ▼            ▼
        ┌──────────┐ ┌──────────┐ ┌──────────┐
        │ Worker 1 │ │ Worker 2 │ │ Worker N │  (OS Threads)
        │ WASM PoW │ │ WASM PoW │ │ WASM PoW │
        └──────────┘ └──────────┘ └──────────┘

📦 Gom SUI (Collect)

Thu hồi toàn bộ SUI từ tất cả ví về 1 ví đích — hữu ích khi muốn tập trung SUI hoặc kết thúc farming.

Cách hoạt động

  1. Quét balance tất cả ví

  2. Xác định ví đích (theo targetIndex hoặc targetAddress)

  3. Chuyển toàn bộ SUI (trừ minKeep + phí gas) từ mọi ví → ví đích

  4. Hiển thị tổng kết: bao nhiêu ví đã chuyển, tổng SUI thu được

Cấu hình

"collect": {
  "targetIndex": 0,      // Index ví đích (0 = ví đầu tiên trong accounts.txt)
  "targetAddress": "",   // Hoặc chỉ định trực tiếp địa chỉ (ưu tiên hơn targetIndex)
  "minKeep": 0.01        // Giữ lại tối thiểu X SUI mỗi ví nguồn
}

CLI

npm run collect                              # Theo config mặc định
node src/index.js --collect --to=0xABC...    # Gom về địa chỉ cụ thể
node src/index.js --collect --keep=0.5       # Giữ lại 0.5 SUI/ví

⚠️ Lưu ý quan trọng

  • KHÔNG chia sẻ file accounts.txt cho bất kỳ ai

  • Bot chạy trên SUI Testnet — không liên quan đến token/tiền thật

  • Khuyến nghị dùng proxy khi chạy nhiều tài khoản để tránh bị rate-limit

  • Cần có Captcha API Key (capsolver/2captcha/capmonster) để sử dụng faucet Official (SuiLearn không cần)

  • Mỗi dịch vụ captcha dùng API key riêng: apiKey2Captcha, apiKeyCapsolver, apiKeyCapmonster

  • Đảm bảo mỗi ví có đủ SUI (tối thiểu ~1-2 SUI) để thực hiện giao dịch

  • Hệ thống Rescue sẽ tự động cứu hộ khi faucet thất bại — không cần nạp thủ công

  • Proxy xoay: mỗi key chỉ tạo 1 request tại một thời điểm — không spam Enoki API → tránh lỗi 429

  • Proxy xoay: nếu rotating-proxies.txt trống khi mode=rotating → bot báo lỗi và thoát ngay


🆘 Xử lý lỗi thường gặp

  • Không đủ SUI để trả phí gas → Ví hết SUI → Bật faucet + rescue, hoặc nạp thêm SUI

  • ChallengeExpired → PoW chạy quá lâu (>30s) → Worker Pool tự động retry với challenge mới

  • PoW Timeout (25s) → Worker bị kẹt → Tự động terminate worker + tạo mới + retry

  • Rescue: không tìm thấy donor → Tất cả ví đều thiếu SUI → Claim faucet thủ công cho ít nhất 1 ví

  • Lỗi giải captcha → API key sai/hết credit → Kiểm tra captcha API key và credit

  • Không kết nối được server → Mạng/proxy lỗi → Kiểm tra proxy hoặc kết nối mạng

  • Bị giới hạn tần suất → Quá nhiều request → Tăng delay hoặc dùng proxy

  • LoanVault paused → Contract tạm dừng → Tự động bỏ qua, chờ mở lại

  • Listing FINALIZED → Listing đã hoàn tất → Tự động bỏ qua deposit/mint

  • Đổi IP lỗi 500 liên tục → Proxy xoay server lỗi → Tự động retry tối đa 5 lần (30s/lần)

  • Đổi IP lỗi 400 (quá nhanh) → Chưa đủ minIntervalMs → Tự động chờ đủ thời gian rồi retry

  • Muốn tắt nguồn faucet cụ thể → Đặt faucet.sources.suilearn: false hoặc faucet.sources.official: false


📞 Liên hệ & Hỗ trợ