logo
icon

OpenAB OpenCode

Open Agent Broker — un arnés ligero en Rust que conecta Discord con cualquier CLI de coding compatible con ACP a través de stdio JSON-RPC. Este template usa OpenCode como backend, soportando 75+ proveedores LLM. Fuente: https://github.com/openabdev/openab

template cover
Implementado2 veces
EditorzeaburZeabur
Creado2026-04-19
Mínimo2 Núcleos4 GB
Recomendado4 Núcleos8 GB
Etiquetas
AIDeveloper ToolsDiscord

OpenAB OpenCode

OpenAB es un arnés ligero en Rust que conecta Discord con cualquier CLI de coding compatible con Agent Client Protocol vía stdio JSON-RPC.

Este template usa OpenCode como backend, soportando 75+ proveedores LLM.

Notas Importantes

  • Etiqueta de imagen: Este template usa una versión fijada (0.8.1-beta.5). Para actualizar, cambie la etiqueta en Zeabur Dashboard → Servicio → Configuración.
  • Almacenamiento persistente: /home/node está montado como volumen persistente.
  • Permisos: El contenedor inicia como root y cambia a node antes de ejecutar openab.

Configuración

1. Obtener Discord Bot Token

  1. Ir a https://discord.com/developers/applicationsNew Application
  2. BotReset Token → copiar token
  3. Habilitar Message Content Intent
  4. OAuth2 → URL Generator → scope bot → invitar bot

2. Configurar un Proveedor LLM (después del despliegue)

En Zeabur Dashboard → Servicio → Variables, establecer al menos una variable:

VariableProveedor
OPENCODE_API_KEYOpenCode nativo (obtener en opencode.ai)
ANTHROPIC_API_KEYAnthropic Claude
OPENAI_API_KEYOpenAI GPT
GOOGLE_GENERATIVE_AI_API_KEYGoogle Gemini
GROQ_API_KEYGroq
MISTRAL_API_KEYMistral
DEEPSEEK_API_KEYDeepSeek
OPENROUTER_API_KEYOpenRouter (más de 100 modelos)

Reiniciar el servicio tras configurar la variable.

Login interactivo (alternativa):

runuser -u node -- opencode auth login

⚠️ Debe ejecutarse como node.

Uso

  • @mencionar al bot en un canal permitido para iniciar conversación
  • OpenAB crea threads para conversaciones multi-turno
  • Cada thread corresponde a una sesión OpenCode (TTL 24h por defecto)

Personalización

ArchivoDescripción
/home/node/.config/openab/config.tomlConfiguración de OpenAB (sessions, reactions, STT, etc.)
/home/node/opencode.jsonConfiguración de modelo/proveedor de OpenCode
/home/node/.opencode/Credenciales y estado de OpenCode

config.toml se crea a partir de una plantilla integrada en el primer arranque. Después, edite el archivo directamente. Para restablecer los valores predeterminados: rm /home/node/.config/openab/config.toml

Webhook / Bot Integration

Por defecto, openab ignora los mensajes de otros bots y webhooks. Para permitir mensajes activados por webhook (por ejemplo, pruebas automatizadas o pipelines de CI), añada lo siguiente a su config.toml:

[discord]
allow_bot_messages = "mentions"

Con esta configuración, openab responde a cualquier bot o webhook que lo @mencione. Para restringir a un webhook específico, añada también:

trusted_bot_ids = ["YOUR_WEBHOOK_USER_ID"]

El ID de usuario del webhook es el ID numérico en la URL del webhook: https://discord.com/api/webhooks/<ID>/...

Desactivar

Deje Discord Bot Token vacío al desplegar. El servicio entra en modo sleep sin fallar.

Enlaces