Integrations

Bosun integrates with multiple platforms for task management, notifications, and agent execution. All integrations are configured through environment variables and the JSON config file.

GitHub

Full GitHub integration for issues, projects, and PR automation.

GitHub Issues (Default)

KANBAN_BACKEND=github
GITHUB_REPO=your-org/your-repo

Features:

GitHub Projects v2

KANBAN_BACKEND=github
GITHUB_PROJECT_MODE=kanban
GITHUB_PROJECT_OWNER=your-org
GITHUB_PROJECT_NUMBER=3
GITHUB_PROJECT_AUTO_SYNC=true

Features:

Custom Status Mapping

GITHUB_PROJECT_STATUS_TODO=Todo
GITHUB_PROJECT_STATUS_INPROGRESS=In Progress
GITHUB_PROJECT_STATUS_INREVIEW=In Review
GITHUB_PROJECT_STATUS_DONE=Done
GITHUB_PROJECT_STATUS_CANCELLED=Cancelled

Telegram

Primary control channel with rich bot features and a full web UI.

Bot Setup

  1. Create a bot via @BotFather on Telegram
  2. Copy the bot token to TELEGRAM_BOT_TOKEN
  3. Run bosun-chat-id to find your chat ID
  4. Set TELEGRAM_CHAT_ID

Bot Commands

CommandDescription
/helpShow help with inline keyboard
/statusFleet status overview
/tasksActive task list
/agentsAgent pool status
/threadsActive execution threads
/worktreesGit worktree status
/pausePause supervisor
/resumeResume supervisor
/restartRestart supervisor
/retryRetry last failed task
/executorSwitch executor
/sdkSDK shell commands
/kanbanBoard management
/maxparallelAdjust concurrency
/appOpen Control Center Mini App

Mini App (Control Center)

TELEGRAM_MINIAPP_ENABLED=true
TELEGRAM_UI_PORT=3080

A full interactive web UI that runs inside Telegram as a Mini App with 7 tabs: Dashboard, Tasks, Agents, Infra, Control, Logs, and Settings.

Features: real-time WebSocket updates, haptic feedback, native Telegram theming, dark/light mode.

HTTPS via Cloudflare Tunnel

Telegram requires HTTPS. Two options:

# Named tunnel (persistent)
CLOUDFLARE_TUNNEL_NAME=my-tunnel
CLOUDFLARE_TUNNEL_CREDENTIALS=/home/user/.cloudflared/tunnel-id.json
TELEGRAM_UI_BASE_URL=https://fleet.yourdomain.com

Sentinel (Independent Watchdog)

BOSUN_SENTINEL_AUTO_START=true
SENTINEL_AUTO_RESTART_MONITOR=true

Keeps Telegram command availability even when the main monitor is down. Detects crash loops and can auto-restart the monitor or run a repair agent.

Jira

KANBAN_BACKEND=jira
JIRA_BASE_URL=https://your-domain.atlassian.net
JIRA_EMAIL=you@example.com
JIRA_API_TOKEN=your-token

Features:

Status and Custom Field Mapping

# Status mapping
JIRA_STATUS_TODO=To Do
JIRA_STATUS_INPROGRESS=In Progress
JIRA_STATUS_INREVIEW=In Review
JIRA_STATUS_DONE=Done
JIRA_STATUS_CANCELLED=Cancelled

# Shared state custom fields
JIRA_CUSTOM_FIELD_OWNER_ID=customfield_10042
JIRA_CUSTOM_FIELD_ATTEMPT_TOKEN=customfield_10043
JIRA_CUSTOM_FIELD_HEARTBEAT=customfield_10045
JIRA_CUSTOM_FIELD_RETRY_COUNT=customfield_10046

WhatsApp

Optional notification channel alongside Telegram.

# Authenticate
bosun --whatsapp-auth

# Or use pairing code instead of QR
bosun --whatsapp-auth --pairing-code

Once authenticated, WhatsApp receives the same status updates and alerts as Telegram. Controlled via /whatsapp Telegram command.

Container Isolation

Optionally run agent executions inside containers for sandboxed isolation.

CONTAINER_ENABLED=1
CONTAINER_RUNTIME=auto    # auto | docker | podman | container
CONTAINER_IMAGE=node:22-slim
MAX_CONCURRENT_CONTAINERS=3
RuntimePlatformNotes
DockerAllMost common, best compatibility
PodmanLinux, macOSRootless, daemon-less
Apple ContainermacOSNative macOS containerization

AI Agent Executors

ExecutorTransportModels
Copilotsdk, cli, urlClaude Opus 4.6, GPT-4.1, Claude Sonnet 4
Codexsdk, clio4-mini, o3, gpt-4.1
Claudesdk, cliClaude Opus 4.6, Sonnet 4

All executors support persistent sessions via SDK transport (recommended). The agent pool manages selection, weighted distribution, and automatic failover.

Cloudflare Tunnel

For persistent HTTPS access to the Mini App:

# Create tunnel
cloudflared tunnel create my-fleet-tunnel

# Add DNS
cloudflared tunnel route dns my-fleet-tunnel fleet.yourdomain.com

# Configure in .env
CLOUDFLARE_TUNNEL_NAME=my-fleet-tunnel
CLOUDFLARE_TUNNEL_CREDENTIALS=/home/user/.cloudflared/tunnel-id.json
TELEGRAM_UI_BASE_URL=https://fleet.yourdomain.com