Dashboard Setup
Configure messaging channels and link repositories from the dashboard Setup page — the onboarding entry point for new CodeSpar deployments.
Dashboard Setup
The Setup page at /dashboard/setup is the starting point for configuring a new CodeSpar deployment. It is organized into two tabs: Channels and Projects.
When no project has been linked yet, the Overview page displays a setup banner that links directly here.
Channels Tab
The Channels tab provides a guided interface for connecting each messaging platform to your CodeSpar deployment.
Global Channel Configuration
At the top of the tab, the current state of all channels is summarized:
Below the summary, each channel has its own configuration section.
WhatsApp Setup
WhatsApp uses QR code authentication. The setup flow:
- Click "Connect WhatsApp"
- A QR code is displayed inline on the page, generated by the backend's WhatsApp bridge
- Open WhatsApp on your phone
- Go to Settings > Linked Devices > Link a Device
- Scan the QR code displayed on the dashboard
- Wait for the connection to establish (typically 5-10 seconds)
- The status changes to "Connected" and the QR code disappears
The QR code refreshes automatically if it expires (typically after 60 seconds).
Environment variables required:
| Variable | Description |
|---|---|
ENABLE_WHATSAPP | Set to true to enable the WhatsApp channel |
No additional tokens are needed — WhatsApp authentication is handled via the QR code scan.
Slack Setup
Slack requires a bot token and signing secret from the Slack API:
- Create a Slack App at api.slack.com/apps
- Under OAuth & Permissions, add these scopes:
chat:write,app_mentions:read,channels:read,users:read - Install the app to your workspace
- Copy the Bot User OAuth Token (starts with
xoxb-) - Copy the Signing Secret from Basic Information
- Enter both values in the dashboard setup form
Environment variables required:
| Variable | Description |
|---|---|
ENABLE_SLACK | Set to true to enable Slack |
SLACK_BOT_TOKEN | Bot User OAuth Token (xoxb-...) |
SLACK_SIGNING_SECRET | Signing Secret from Slack App |
Discord Setup
Discord requires a bot token from the Discord Developer Portal:
- Create an application at discord.com/developers
- Go to Bot and click "Add Bot"
- Copy the Bot Token
- Under Privileged Gateway Intents, enable: Message Content Intent, Server Members Intent
- Generate an invite link with
botandapplications.commandsscopes - Invite the bot to your server
- Enter the bot token in the dashboard setup form
Environment variables required:
| Variable | Description |
|---|---|
ENABLE_DISCORD | Set to true to enable Discord |
DISCORD_BOT_TOKEN | Bot token from Discord Developer Portal |
Telegram Setup
Telegram requires a bot token from BotFather:
- Message @BotFather on Telegram
- Send
/newbotand follow the prompts - Copy the HTTP API token
- Enter it in the dashboard setup form
Environment variables required:
| Variable | Description |
|---|---|
ENABLE_TELEGRAM | Set to true to enable Telegram |
TELEGRAM_BOT_TOKEN | HTTP API token from BotFather |
Testing Connections
Each channel card has a "Test Connection" button that sends a test message through the channel to verify the configuration is working. On success, a green confirmation appears. On failure, the error message is displayed inline.
Projects Tab
The Projects tab manages the repositories linked to your CodeSpar deployment.
Add Repository
A form at the top of the tab lets you link a new repository:
When you submit the form:
- The backend validates the repository exists and is accessible via
GITHUB_TOKEN - A Project Agent is created for the repository
- If
WEBHOOK_BASE_URLis configured and the token hasadmin:repo_hookscope, a GitHub webhook is automatically created - The project card appears below the form
Auto-Webhook Status
After linking a repository, the webhook status is shown:
| Status | Indicator | Meaning |
|---|---|---|
| Configured | Green dot + "Webhook active" | Webhook was auto-created successfully |
| Manual setup needed | Amber dot + "Configure manually" | Auto-config failed; manual setup instructions shown |
| Not configured | Gray dot + "No webhook URL" | WEBHOOK_BASE_URL is not set |
Project Cards
Each linked project is displayed as a card:
| Field | Description |
|---|---|
| Repository | Full owner/repo name |
| Status | Linked (green) or Error (red) |
| Branch | Default branch being monitored |
| Webhook | Webhook status (Active, Inactive, Not configured) |
| Agents | Number of agents assigned to this project |
| Linked | When the repository was linked |
Managing Projects
| Action | Description |
|---|---|
| View Dashboard | Navigate to the Overview page filtered to this project |
| Unlink | Remove the repository link and clean up the webhook. Requires confirmation. |
Workflow
A typical setup workflow for a new CodeSpar deployment:
- Configure at least one channel (Slack is recommended for the richest experience)
- Test the connection using the "Test Connection" button
- Link a repository using the owner/repo format
- Verify the webhook was auto-configured (or set it up manually)
- Navigate to the Overview to see your agents and start interacting
After completing setup, you can start sending commands via your configured channel:
Next Steps
- Dashboard Overview — monitor your agents after setup
- Configure a Project — detailed end-to-end setup guide
- Channel Configuration — in-depth channel documentation
- Link a Repository — repository linking via chat commands