logo
icon

OpenAB Cursor

Open Agent Broker — harness Rust yang ringan untuk menjembatani Discord ke CLI coding yang kompatibel dengan ACP (Claude Code, Codex, Gemini, Kiro, Cursor) melalui stdio JSON-RPC. Template ini menggunakan Cursor Agent CLI sebagai backend agen. Sumber: https://github.com/openabdev/openab

template cover
Dideploy3 kali
PenerbitzeaburZeabur
Dibuat2026-04-20
Minimum2 Core4 GB
Direkomendasikan4 Core8 GB
Tag
AIDeveloper ToolsDiscord

OpenAB Cursor

Template ini men-deploy varian Cursor dari OpenAB, menggunakan cursor-agent sebagai backend agen.

Catatan Penting

  • Butuh langganan berbayar: Cursor Agent CLI membutuhkan langganan Cursor berbayar (Pro atau Business).
  • Autentikasi setelah deploy: Tidak ada env var API key. Anda perlu menjalankan cursor-agent login di dalam container setelah deploy pertama.
  • Tag image: Template ini menggunakan versi yang dipin (0.8.3-beta.4). Untuk upgrade, ubah tag image di Zeabur Dashboard → Layanan → Pengaturan. Tag tersedia: GitHub Packages.
  • Penyimpanan persisten: /home/agent di-mount sebagai volume persisten, termasuk kredensial autentikasi (~/.cursor/).

Pengaturan

1. Dapatkan Discord Bot Token

  1. Buat aplikasi di https://discord.com/developers/applications
  2. BotReset Token → salin token
  3. Aktifkan Message Content Intent
  4. OAuth2 → URL Generator → scope bot → undang bot ke server

2. Deploy

Masukkan Discord Bot Token dan klik deploy.

3. Autentikasi Cursor (pilih salah satu)

Skrip startup tidak mewajibkan env var autentikasi Cursor apa pun. Pilih metode yang Anda inginkan:

Opsi A: Device flow (interaktif, tanpa env var)

Setelah layanan berjalan, buka Zeabur Dashboard → Layanan → Exec dan jalankan:

runuser -u agent -- cursor-agent login

ℹ️ runuser -u agent menjalankan login sebagai pengguna agent, sehingga HOME otomatis menjadi /home/agent dan kredensial dimiliki oleh agent sejak awal — tidak perlu chown atau restart.

Ikuti instruksi di browser untuk menyelesaikan otorisasi. Percakapan baru akan mengambil autentikasi pada sesi berikutnya — restart hanya diperlukan jika Anda ingin membatalkan sesi yang masih berjalan di memori.

Opsi B: env var CURSOR_API_KEY (tanpa terminal)

  1. Di Cursor Dashboard → Settings → Account, buat API key
  2. Di Zeabur Dashboard → Layanan → Variabel, tambahkan CURSOR_API_KEY dengan nilai tersebut
  3. Restart layanan. cursor-agent membaca env var ini secara langsung — tidak perlu menjalankan cursor-agent login

Tambahkan Platform Pesan (Telegram / LINE / Feishu / Google Chat / MS Teams)

Untuk menjembatani Telegram, LINE, Feishu/Lark, Google Chat, atau MS Teams, deploy template OpenAB Gateway di proyek Zeabur yang sama. Kemudian tambahkan variabel lingkungan berikut ke layanan ini:

  • GATEWAY_URL = ws://openab-gateway:8080/ws
  • GATEWAY_PLATFORM = salah satu dari telegram, line, feishu, googlechat, teams

Restart layanan. Skrip startup otomatis menyuntikkan blok [gateway] ke config.toml.

Penggunaan

  • @mention bot di channel yang diizinkan untuk memulai percakapan
  • OpenAB membuat thread untuk percakapan multi-turn
  • Setiap thread dipetakan ke sesi Cursor yang persisten (TTL 24 jam)

Kustomisasi

FileKeterangan
/home/agent/.config/openab/config.tomlKonfigurasi OpenAB (sessions, reactions, STT, dll.)

config.toml dibuat dari template bawaan saat pertama kali boot. Setelah itu, edit file langsung. Untuk mereset ke default: rm /home/agent/.config/openab/config.toml

Webhook / Bot Integration

Secara default, openab mengabaikan pesan dari bot dan webhook lain. Untuk mengizinkan pesan yang dipicu webhook (misalnya pengujian otomatis atau pipeline CI), tambahkan berikut ke config.toml:

[discord]
allow_bot_messages = "mentions"

Dengan pengaturan ini, openab merespons pesan bot atau webhook yang @mention-nya. Untuk membatasi ke webhook tertentu, tambahkan juga:

trusted_bot_ids = ["YOUR_WEBHOOK_USER_ID"]

ID pengguna webhook adalah ID numerik di URL webhook: https://discord.com/api/webhooks/<ID>/...

Nonaktifkan

Kosongkan Discord Bot Token. Layanan akan masuk mode sleep tanpa crash.

Tautan