- Python 3.8+ (Download: https://www.python.org/downloads/)
- Internet Connection (untuk terhubung ke Grass Network)
- User ID dari akun Grass.io
Buka terminal/PowerShell di folder bot, lalu jalankan:
pip install asyncio aiohttp websockets loguruAtau install semua sekaligus:
pip install asyncio aiohttp websockets loguruBuat file config.json dengan isi seperti ini:
{
"accounts": [
{
"user_id": "GANTI-DENGAN-USER-ID-KAMU",
"username": "Akun_1",
"proxy": null,
"country": "ID",
"device_type": "extension"
}
],
"settings": {
"ping_interval_min": 18,
"ping_interval_max": 25,
"reconnect_delay": 30,
"max_reconnect_delay": 120,
"default_country": "ID"
}
}Penjelasan Config:
user_id: User ID dari akun Grass kamu (lihat cara dapat di bawah)username: Nama identifier untuk log (bebas)proxy: Proxy address ataunull(format:http://user:pass@ip:port)country: Kode negara proxy (ID=Indonesia, US=Amerika, dll)device_type:"extension"(2.00x) atau"mobile"(3.00x)ping_interval_min: Ping minimal dalam detik (default: 18)ping_interval_max: Ping maksimal dalam detik (default: 25)reconnect_delay: Delay reconnect saat disconnect (detik)
Ganti GANTI-DENGAN-USER-ID-KAMU dengan User ID kamu (lihat cara dapat User ID di bawah).
python grass_multi.pypython3 grass_multi.pyBot berhasil jika muncul log seperti ini:
2025-12-03 10:30:15 | INFO | โ
Checkin OK
2025-12-03 10:30:16 | INFO | โ
Connected & Mining!
2025-12-03 10:30:36 | INFO | ๐ก Ping #1
2025-12-03 10:30:56 | INFO | ๐ก Ping #2
Start-Process python -ArgumentList "grass_multi.py" -WindowStyle Hiddennohup python3 grass_multi.py > grass.log 2>&1 &screen -S grass
python3 grass_multi.py
# Tekan Ctrl+A lalu D untuk detach
# screen -r grass untuk attach kembali- Buka Task Scheduler
- Create Basic Task โ Name: "Grass Bot"
- Trigger: At startup atau Daily
- Action: Start a program
- Program:
python.exe - Arguments:
grass_multi.py - Start in:
D:\APLIKASI\Grass(sesuaikan dengan folder bot)
Bot menggunakan random ping interval untuk menghindari deteksi sebagai bot:
"settings": {
"ping_interval_min": 18,
"ping_interval_max": 25
}Behavior:
- Ping #1: tunggu 21.3 detik โฑ๏ธ
- Ping #2: tunggu 19.7 detik โฑ๏ธ
- Ping #3: tunggu 24.1 detik โฑ๏ธ
- Random setiap ping = lebih natural! โ
Conservative (Paling Aman):
"ping_interval_min": 20,
"ping_interval_max": 30- Lebih lambat tapi sangat aman
- Cocok untuk long-term farming
Balanced (Recommended):
"ping_interval_min": 18,
"ping_interval_max": 25- Sweet spot antara speed & safety
- Default setting
Aggressive (Medium Risk):
"ping_interval_min": 15,
"ping_interval_max": 22- Lebih cepat tapi risiko deteksi naik
- Hanya untuk experienced users
| Error | Solusi |
|---|---|
ModuleNotFoundError |
Install package: pip install <nama-package> |
SSL Error |
Update Python atau disable SSL di bot |
Connection timeout |
Cek internet/VPN, atau gunakan proxy |
HTTP 429 |
Terlalu banyak request, tunggu beberapa menit |
Invalid User ID |
Pastikan User ID sudah benar (lihat cara dapat User ID) |
- Login ke https://app.grass.io/dashboard
- Buka Browser DevTools:
- Windows/Linux: Tekan
F12atauCtrl + Shift + I - Mac: Tekan
Cmd + Option + I
- Windows/Linux: Tekan
- Klik tab Console
- Ketik command berikut dan tekan Enter:
localStorage.getItem('userId')
- Copy User ID yang muncul (tanpa tanda kutip)
- Contoh hasil:
"939afaf8-xxxx-xxxx-xxxx-xxxxxxxxxxxx" - Yang di-copy:
"939afaf8-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
- Contoh hasil:
- Login ke https://app.grass.io/dashboard
- Buka Browser DevTools (F12)
- Klik tab Application (Chrome/Edge) atau Storage (Firefox)
- Di sidebar kiri, expand Local Storage
- Klik https://app.grass.io
- Cari key
userIddi daftar - Copy value-nya (kolom Value)
- Login ke https://app.grass.io/dashboard
- Buka DevTools (F12) โ tab Network
- Refresh halaman (F5)
- Cari request ke
director.getgrass.io - Lihat Request Headers atau Payload
- User ID ada di dalam request body
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ Browser DevTools (F12) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ > Console โ
โ โ
โ > localStorage.getItem('userId') โ
โ "939afaf8-fe28-44e6-9cdb-1dc8a6bef..." โ
โ โ Copy User ID ini โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- โ
User ID berbentuk UUID (format:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) - โ Simpan User ID di tempat aman (jangan sampai hilang)
- โ Jangan share User ID ke orang lain
- โ Untuk multi-account, ulangi langkah di atas dengan login akun berbeda
- โ Setiap akun punya User ID unik dan berbeda
Untuk menghindari deteksi, SEMUA akun sebaiknya menggunakan proxy dari negara yang sama dengan lokasi asli Anda.
Contoh untuk Indonesia:
{
"accounts": [
{
"user_id": "user-id-1",
"username": "Account_1",
"proxy": "http://user:pass@id-proxy1.com:8080",
"country": "ID"
},
{
"user_id": "user-id-2",
"username": "Account_2",
"proxy": "http://user:pass@id-proxy2.com:8080",
"country": "ID"
},
{
"user_id": "user-id-3",
"username": "Account_3",
"proxy": "http://user:pass@id-proxy3.com:8080",
"country": "ID"
}
],
"settings": {
"default_country": "ID"
}
}โ DO (Lakukan):
- Gunakan 1 IP per akun (jangan share IP)
- Gunakan residential proxy (bukan datacenter)
- Semua proxy dari negara yang sama (Indonesia = ID)
- Gunakan user agent berbeda per akun (bot sudah otomatis randomize)
- Jarak waktu antar akun dibuat (jangan bikin sekaligus)
- Browser ID berbeda per akun (bot sudah otomatis)
โ DON'T (Jangan):
- Jangan pakai 1 IP untuk banyak akun
- Jangan mix negara berbeda (misal 1 akun ID, 1 akun US)
- Jangan pakai datacenter proxy (mudah terdeteksi)
- Jangan pakai VPN gratis untuk multi-account
- Jangan login dari lokasi berbeda dengan akun yang sama
Format: http://user-country_ID-session_XXX:pass@proxy.abcproxy.com:port
- Support negara spesifik
- Residential proxy
- Session rotation
Format: http://user-residential-country_ID-session_XXX:pass@gate.nstproxy.io:port
- Support Indonesia
- High quality
Format: http://user:pass@id.iproyal.com:port
- Dedicated country endpoint
{
"accounts": [
{
"user_id": "user-id-1",
"username": "Main_Account",
"proxy": "http://user-country_ID-session_abc123:pass@proxy.com:8080",
"country": "ID"
},
{
"user_id": "user-id-2",
"username": "Account_2",
"proxy": "http://user-country_ID-session_def456:pass@proxy.com:8080",
"country": "ID"
},
{
"user_id": "user-id-3",
"username": "Account_3",
"proxy": "http://user-country_ID-session_ghi789:pass@proxy.com:8080",
"country": "ID"
}
]
}Key Points:
- โ Semua proxy negara ID (Indonesia)
- โ Session berbeda untuk setiap akun
- โ Username unik per akun
- ๐ฎ๐ฉ Indonesia:
IDataucountry_ID - ๐บ๐ธ USA:
USataucountry_US - ๐ธ๐ฌ Singapore:
SGataucountry_SG - ๐ฒ๐พ Malaysia:
MYataucountry_MY - ๐น๐ญ Thailand:
THataucountry_TH
Pemula (1-3 akun):
{
"accounts": [
{"user_id": "user-1", "username": "Akun_1", "proxy": null, "country": "ID", "device_type": "extension"},
{"user_id": "user-2", "username": "Akun_2", "proxy": null, "country": "ID", "device_type": "extension"}
],
"settings": {
"ping_interval_min": 18,
"ping_interval_max": 25,
"default_country": "ID"
}
}- Gunakan VPN berkualitas dari negara yang sama
- Atau 1 residential proxy dengan session rotation
Advanced (5-10 akun):
{
"accounts": [
{"user_id": "user-1", "proxy": "http://user:pass@proxy1.com:8080", "country": "ID", "device_type": "extension"},
{"user_id": "user-2", "proxy": "http://user:pass@proxy2.com:8080", "country": "ID", "device_type": "extension"},
{"user_id": "user-3", "proxy": "http://user:pass@proxy3.com:8080", "country": "ID", "device_type": "extension"}
],
"settings": {
"ping_interval_min": 18,
"ping_interval_max": 25
}
}- 1 residential proxy per akun
- Semua dari negara yang sama
- Buat akun dengan jarak waktu (1-2 hari per akun)
Pro (10+ akun) - Mix Device Type:
{
"accounts": [
{"user_id": "user-1", "proxy": "residential-1", "country": "ID", "device_type": "extension"},
{"user_id": "user-2", "proxy": "residential-2", "country": "ID", "device_type": "extension"},
{"user_id": "user-3", "proxy": "4g-mobile-1", "country": "ID", "device_type": "mobile"}
],
"settings": {
"ping_interval_min": 20,
"ping_interval_max": 30
}
}- Dedicated residential proxy per akun
- Mix provider (jangan semua dari 1 provider)
- Mobile device type hanya dengan mobile proxy!
- Conservative ping interval untuk safety
Residential Proxy Indonesia:
- ABCProxy: ~$5-10/GB
- NSTProxy: ~$8-15/GB
- IPRoyal: ~$7/GB
Estimasi Pemakaian:
- 1 akun โ 2-5 GB/bulan
- 5 akun โ 10-25 GB/bulan
- 10 akun โ 20-50 GB/bulan
๐จ Tanda-tanda Bot Terdeteksi:
- Multiple accounts dari IP yang sama
- Login dari negara berbeda-beda
- Pola ping yang terlalu konsisten
- Datacenter IP (bukan residential)
- Browser fingerprint yang sama
- Start Small: Mulai dengan 1-2 akun dulu
- Monitor: Cek dashboard regular untuk suspicious activity
- Rotate: Ganti session proxy secara berkala
- Diversify: Jangan taruh semua telur di satu keranjang
- Stay Natural: Jangan terlalu greedy dengan banyak akun
{
"accounts": [
{
"user_id": "user-1",
"username": "Account_1",
"proxy": "http://customer-user123-country_ID-session-rand1:pass@pr.abcproxy.com:4950",
"country": "ID"
},
{
"user_id": "user-2",
"username": "Account_2",
"proxy": "http://customer-user123-country_ID-session-rand2:pass@pr.abcproxy.com:4950",
"country": "ID"
}
],
"settings": {
"default_country": "ID",
"session_rotation": true,
"rotation_interval": 3600
}
}- Jangan share config.json (ada User ID dan proxy credentials)
- Gunakan password yang kuat untuk akun Grass
- Enable 2FA jika tersedia
- Backup User ID di tempat aman
Gunakan bot ini dengan bijak dan sesuai Terms of Service Grass.io. Multi-accounting mungkin melanggar ToS, lakukan dengan risiko sendiri.
Stay Safe & Happy Farming! ๐ฑ