Open Agent Broker — harness Rust yang ringan untuk menjembatani Discord dan Slack ke CLI coding yang kompatibel dengan ACP melalui stdio JSON-RPC. Template ini menggunakan Grok Build (CLI coding agent resmi xAI) sebagai backend melalui `grok agent stdio`. Sumber: https://github.com/openabdev/openab

OpenAB adalah harness Rust yang ringan dan open-source yang menjembatani Discord dan Slack ke CLI coding yang kompatibel dengan Agent Client Protocol melalui stdio JSON-RPC.
Template ini menjalankan varian Grok — menggunakan Grok Build, CLI coding agent resmi dari xAI, sebagai backend melalui grok agent stdio.
stable dan otomatis ikut versi stable OpenAB terbaru. Untuk pin ke versi tertentu, ubah tag image di Zeabur Dashboard → Layanan → Pengaturan. Tag yang tersedia: GitHub Packages./home/agent di-mount sebagai volume persisten. Kredensial Grok (~/.grok/auth.json), settings, dan config dipertahankan antar restart.bot → centang izin: Send Messages, Send Messages in Threads, Create Public Threads, Read Message History, Add Reactions, Manage Messages123456789012345678,234567890123456789Grok Build mendukung tiga sumber kredensial. Pilih yang sesuai dengan kasus penggunaan Anda.
| Metode | Kapan digunakan | Cara |
|---|---|---|
| API Key | Penagihan API pay-per-token, deployment CI / bot | Dapatkan key di console.x.ai → tempelkan ke variabel GROK_CODE_XAI_API_KEY |
| Device-Auth | Langganan berbayar SuperGrok | Biarkan GROK_CODE_XAI_API_KEY kosong. Setelah deploy, jalankan runuser -u agent -- grok login --device-auth di terminal Exec layanan. CLI mencetak kode pendek + URL — buka URL di perangkat mana pun, masukkan kode, lalu setujui. Token disimpan di /home/agent/.grok/auth.json (bertahan setelah restart). |
| Deployment Key | Pelanggan enterprise xAI | Tambahkan GROK_DEPLOYMENT_KEY sebagai variabel kustom di Zeabur Dashboard → Layanan → Variables setelah deploy. Lebih diutamakan daripada auth.json. |
💡 Tidak seperti alur OAuth yang terikat pada port loopback, device-auth Grok berfungsi di lingkungan headless mana pun (tanpa port-forward, tanpa trik curl-the-callback).
Isi variabel dan klik deploy. Layanan akan otomatis terhubung ke Discord. Jika menggunakan Device-Auth, jalankan perintah login di langkah 3 setelah layanan berjalan.
OpenAB mendukung Slack melalui Socket Mode — tidak perlu URL publik.
connections:write → salin token xapp-... (SLACK_APP_TOKEN)app_mention, message.channels, message.groupsapp_mentions:read, chat:write, channels:history, groups:history, channels:read, groups:read, reactions:write, files:read, users:readxoxb-... (SLACK_BOT_TOKEN)/invite @YourAppNameIsi SLACK_BOT_TOKEN dan SLACK_APP_TOKEN sebelum deploy. Discord dan Slack dapat berjalan bersamaan.
Untuk menjembatani Telegram, LINE, Feishu/Lark, Google Chat, MS Teams, atau WeCom, deploy template OpenAB Gateway di proyek Zeabur yang sama. Kemudian tambahkan variabel lingkungan berikut ke layanan ini:
GATEWAY_URL = ws://openab-gateway:8080/wsGATEWAY_PLATFORM = salah satu dari telegram, line, feishu, googlechat, teams, wecomRestart layanan. Skrip startup otomatis menyuntikkan blok [gateway] ke config.toml.
| File | Deskripsi |
|---|---|
/home/agent/.config/openab/config.toml | Konfigurasi OpenAB (sessions, reactions, STT, dll.) |
/home/agent/.grok/auth.json | Kredensial OAuth Grok (dikelola oleh grok login) |
/home/agent/.grok/config.toml | Konfigurasi runtime Grok |
config.toml dibuat dari template bawaan saat boot pertama. Setelah itu, edit file secara langsung — variabel lingkungan hanya digunakan untuk pengaturan awal. Untuk mengembalikan ke default, hapus dan restart: rm /home/agent/.config/openab/config.toml
Untuk opsi konfigurasi OpenAB, lihat dokumentasi OpenAB. Untuk opsi konfigurasi Grok, lihat dokumentasi Grok Build.
Kosongkan Discord Bot Token dan SLACK_BOT_TOKEN saat deploy. Layanan akan tidur tanpa crash.