RTXZY-MD
Pembaruan Terbaru
- Upgrade ke ESM (ECMAScript Modules) — Mendukung fitur ES6+ secara native
- Server HTTP Native — Menghapus dependensi
expressuntuk performa server yang lebih ringan - Update Lid resolver — Penanganan lid jadi terbaru
- Menggunakan zapo-js —
zapo-js, dokumentasi & MCP dizapo.to/mcp - Sesi lokal SQLite — Kredensial disimpan di
sessions/state.sqlite(pakai@zapo-js/store-sqlite+better-sqlite3) - Database SQLite — Database bot (
users,chats,stats, dll) kini tersimpan didatabase/database.sqlite(WAL, atomic) menggantikandatabase.json, auto-migrasi dari JSON lama saat boot pertama - Koneksi Dual Mode — Mendukung Pairing Code secara default, dan QR Code bisa diakses dengan argumen
--qr - Wajib Node.js 22++
Daftar Isi
- Persyaratan
- Instalasi
- Pengaturan API Key
- Menjalankan Bot
- Daftar Argumen
- Deployment
- Kontributor
- Support
Persyaratan
Sebelum menjalankan bot, pastikan sistem kamu memiliki:
| Komponen | Keterangan | |----------|-----------| | Node.js | Versi 22 atau lebih baru | | ffmpeg | Untuk pemrosesan media | | imagemagick | Untuk manipulasi gambar | | webp | Untuk konversi stiker |
Catatan: Script ini tidak mendukung eksekusi di Termux.
Instalasi
Windows / VPS / RDP
Unduh dan instal:
- Git
- Node.js 22+
- FFmpeg — tambahkan ke PATH
- ImageMagick
VPS (Linux)
apt update && apt upgrade -y
apt install nodejs imagemagick ffmpeg -y
node -v
Jika versi masih di bawah 22:
curl -s https://deb.nodesource.com/setup_22.x | sudo bash
apt-get install -y nodejs
Clone & Install
git clone https://github.com/BOTCAHX/RTXZY-MD
cd RTXZY-MD
npm install
Pterodactyl Panel
Untuk menjalankan di Pterodactyl Panel caranya tergantung letak file:
Opsi 1 — File langsung di /home/container (bukan dalam folder):
- Set startup ke:
node index.jsataunpm start
/home/container/RTXZY-MD atau nama folder custom):
- Pindahkan file
run.jske/home/container(luar folder bot) - Set startup panel ke:
node run.js - Buka Terminal panel, lalu jalankan perintah:
cd RTXZY-MD # atau nama folder kamu
npm install
node index.js # atau npm start
Opsi 3 — Pindahkan semua file ke /home/container:
Jika ingin lebih mudah, pindahkan semua isi folder bot langsung ke /home/container, lalu set startup ke node index.js atau npm start.
Cara upload file ke panel:
Bot bisa di-clone via git clone langsung dari terminal panel, atau diupload sebagai arsip. Rekomendasi:
- Download repo sebagai ZIP dari GitHub
- Edit file (
config.js, dll) di lokal - Upload file ke panel dalam bentuk ZIP atau tar.gz
- Extract/unzip di panel
Panel biasanya memiliki batas view per file, jadi editing lokal lalu upload arsip lebih praktis.
Catatan: Konfigurasi tiap panel bisa berbeda. Pahami struktur folder server kamu dan sesuaikan startup command-nya.
> Catatan: Pastikan Node.js egg yang digunakan versi 22+, jika tidak bot akan error.
> Catatan: Jika panel tidak memiliki akses bash sama sekali, gunakan Opsi 1 atau Opsi 3.
Pengaturan API Key
Bot ini menggunakan 97% fitur dari Rest API, jadi kamu wajib mengisi Apikey.
- Daftar di
BOTCAHX API - Pilih paket yang sesuai:
Lihat Paket - Copy Apikey kamu
- Paste di
config.jspada bagianglobal.btc
Menjalankan Bot
node index.js
Pairing code akan muncul di terminal — scan dengan WhatsApp kamu.
Daftar Argumen
node index.js [--options]
| Argumen | Fungsi |
|---------|--------|
| --qr | Mengaktifkan mode autentikasi QR Code (secara default menggunakan Pairing Code) |
| --self | Hanya Owner & Bot |
| --pconly | Hanya merespon chat pribadi |
| --gconly | Hanya merespon chat grup |
| --swonly | Hanya merespon status |
| --restrict | Aktifkan plugin terbatas (risiko kena banned) |
| --img | Tampilkan gambar di terminal |
| --autoread | Tandai semua pesan masuk sebagai sudah dibaca |
| --nyimak | Mode silent — hanya log, tidak membalas |
| --test | Mode pengembangan |
| --prefix | Set prefix (setiap karakter jadi prefix terpisah) |
| --db | Pakai MongoDB (contoh: --db mongodb://user:pass@host:27017/bot) |
| --db json | Pakai database JSON file (database.json) — default sebelumnya |
| --db sqlite | Pakai SQLite (database/database.sqlite, WAL) — default |
| --db | Pakai cloud adapter |
MCP Development (zapo)
Bot ini sudah menyertakan @zapo-js/mcp-server — server Model Context Protocol yang mengekspos sesi zapo-js (koneksi, pairing, kirim pesan, query grup, inspeksi event) sebagai tools untuk LLM agent (Claude Code, Cursor, dll). Cocok untuk development/testing, bukan untuk production.
Menjalankan server
npm run mcp # = zapo-mcp-server (stdio)
MCP_TRANSPORT=http MCP_AUTH_PATH=sessions/mcp.sqlite zapo-mcp-server
Variabel lingkungan penting:
| Variabel | Fungsi |
|----------|--------|
| MCP_AUTH_PATH | Path store SQLite kredensial (default: file store sendiri). Gunakan path terpisah dari bot utama (mis. sessions/mcp.sqlite) supaya tidak terjadi konflik SQLITE_BUSY saat bot & MCP berjalan bersamaan |
| MCP_SESSION_ID | Sesi default (mendukung multi-sesi di satu store) |
| MCP_MAX_SESSIONS | Batas jumlah sesi |
| MCP_TRANSPORT | stdio (default) atau http |
| MCP_LOG_LEVEL | Level log |
Registrasi ke Claude Code
claude mcp add zapo -- node node_modules/@zapo-js/mcp-server/dist/bin.js
Alur pairing lewat MCP (penting)
client.connect() memblokir sampai pairing selesai — selalu panggil dengan noAwait:
call({ path: 'connect', noAwait: true })
events({ types: ['auth_qr', 'auth_pairing_code', 'auth_paired', 'connection'] })
tampilkan QR ke user, tunggu auth_paired, lalu lanjut
call({ path: 'message.send', args: ['[email protected]', { conversation: 'halo' }] })
Dokumentasi lengkap & skill MCP tersedia di zapo.to/mcp.
Deployment
Render
Heroku
Heroku Buildpack
heroku/nodejs
https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git
https://github.com/clhuang/heroku-buildpack-webp-binaries.git
Kontributor
| Tio | Erlan | Bochilgaming | Nurutomo | |---|---|---|---| | Recode | Contributor | Sepuh | Sepuh |
Base original: ZukaBet



