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.
0.8.3-beta.11). Untuk upgrade, 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.