logo
icon

OpenAB Codex

Open Agent Broker — 輕量的 Rust 程式,透過 stdio JSON-RPC 將 Discord 和 Slack 橋接到任何 ACP 相容的 coding CLI(Claude Code、Codex、Gemini、Kiro)。 來源:https://github.com/openabdev/openab

template cover
部署次數6
發布者zeaburZeabur
建立於2026-04-19
最低規格2 核心4 GB
推薦規格4 核心8 GB
標籤
AIDeveloper ToolsDiscordSlack

OpenAB Codex

OpenAB 是一個輕量的開源 Rust 程式,透過 stdio JSON-RPC 將 Discord 和 Slack 橋接到任何支援 Agent Client Protocol 的 coding CLI。

此模板部署的是 Codex 變體(openab-codex),使用 codex-acp 作為 agent 後端。

注意事項

  • 映像標籤: 此模板使用固定版本(0.8.1-beta.5)。如需升級,請在 Zeabur Dashboard → 服務 → 設定中更改映像標籤。可用標籤:GitHub Packages
  • 持久化儲存: /home/node 掛載為持久化磁碟。Plugins、設定、config 和認證資料會在重啟後保留。
  • 檔案權限: 容器直接以 node 用戶(uid 1000)執行。如遇持久化磁碟的權限問題,重啟服務即可。

設定步驟

1. 取得 Discord Bot Token

  1. 前往 https://discord.com/developers/applications,點擊 New Application
  2. 進入 Bot 頁籤 → 點擊 Reset Token → 複製 token
  3. 同一頁面往下滑,在 Privileged Gateway Intents 下啟用 Message Content Intent
  4. 前往 OAuth2 → URL Generator → 勾選 scope bot → 勾選權限:Send Messages、Send Messages in Threads、Create Public Threads、Read Message History、Add Reactions、Manage Messages
  5. 複製產生的 URL,在瀏覽器中開啟以邀請 Bot 到你的伺服器

2. 認證(擇一)

方式 A:OpenAI API Key(依 token 計費 — 查看定價

  1. 前往 platform.openai.com/api-keys
  2. 點擊 Create new secret key → 複製 key
  3. 部署時填入 OpenAI API Key
  4. 服務首次啟動時會自動執行 codex login --with-api-key,無需手動操作

方式 B:ChatGPT 訂閱(Plus/Pro/Business — 使用量包含在方案內)

  1. 部署時將 OpenAI API Key 留空
  2. 服務啟動後,前往 Zeabur Dashboard → 服務 → Exec
  3. Exec 終端機以 root 開啟,指定正確的 HOME 路徑讓認證資料存到正確位置:
    HOME=/home/node codex login --device-auth
    
  4. 開啟終端機顯示的 URL,用 ChatGPT 帳號授權
  5. 從 Dashboard 重啟服務
  6. 認證資料儲存於持久化磁碟 /home/node/.codex/auth.json,會自動更新,此步驟只需做一次

3. 取得 Discord 頻道 ID

  1. 開啟 Discord → 前往 使用者設定(齒輪圖示)→ 進階 → 啟用 開發者模式
  2. 對你要 Bot 回應的頻道按右鍵 → 複製頻道 ID
  3. 多個頻道用逗號分隔:123456789012345678,234567890123456789

4. 部署

填入變數後點擊部署即可。服務會自動連線到 Discord 和/或 Slack。

Slack 設定(選用)

OpenAB 支援透過 Socket Mode 連接 Slack,不需要公開 URL。

  1. 前往 https://api.slack.com/appsCreate New AppFrom scratch
  2. Socket Mode → 啟用 → 產生 App-Level Token,scope 選 connections:write → 複製 xapp-... token(SLACK_APP_TOKEN
  3. Event Subscriptions → 啟用 → 新增 bot events:app_mentionmessage.channelsmessage.groups
  4. OAuth & Permissions → Bot Token Scopes → 新增:app_mentions:readchat:writechannels:historygroups:historychannels:readgroups:readreactions:writefiles:readusers:read
  5. Install App → 安裝到工作區 → 複製 xoxb-... token(SLACK_BOT_TOKEN
  6. 在每個要使用 Bot 的 Slack 頻道執行 /invite @YourAppName

部署前填入 SLACK_BOT_TOKENSLACK_APP_TOKEN 變數。Discord 和 Slack 可同時運作。

使用方式

  • 在允許的 Discord 或 Slack 頻道中 @mention Bot 即可開始對話
  • OpenAB 會自動建立 thread 進行多輪對話 — 後續訊息不需要再 @mention
  • 每個 thread 對應一個持久的 Codex session(預設 24 小時 TTL)

自訂設定

檔案說明
/home/node/.config/openab/config.tomlOpenAB 設定(sessions、reactions、STT 等)

config.toml 在首次啟動時從內建範本建立。之後請直接編輯檔案,環境變數僅用於初始設定。要恢復預設值請刪除後重啟:rm /home/node/.config/openab/config.toml

設定選項請參閱 OpenAB 文件

停用

部署時將 Discord Bot TokenSlack Bot Token 留空即可。服務會進入 sleep 狀態,不會崩潰。

連結