Quick Start

This guide will help you set up and run Kick Bot with a basic configuration after installing the package.

Basic Setup

Create a new JavaScript file (e.g., bot.js) and add the following code:

const { createBot } = require('kickbot');

// Create a bot instance with minimal configuration
const bot = createBot({
  // Required configuration
  clientId: 'your-kick-client-id',
  clientSecret: 'your-kick-client-secret',
  skillfulApiKey: 'your-skillful-api-key',
  chatroomId: 'your-chatroom-id',

  // Optional to enable the dashboard
  enableDashboard: true,
  dashboardPassword: 'your-strong-password'
});

// Start the bot
bot.start()
  .then(() => console.log('Bot started!'))
  .catch(error => console.error('Failed to start bot:', error));

Running the Bot

Run your bot with:

node bot.js

First-Time Authentication

The first time you run Kick Bot, it will need to authenticate with Kick.com:

  1. The bot will start a local server and output a URL which looks like this:

    INFO: Starting authentication process...
    INFO: Auth server started at http://localhost:3000
    INFO: Please open this URL in your browser to authenticate
  2. Open this URL in your browser

  3. Log in to Kick.com if prompted

  4. Authorize the application

    Authorize The Bot

  5. Once authorized, the browser will redirect and display a success message

    Example Success Page

  6. The bot will automatically store the authentication token for future use

  7. Your bot is now live and running! If you enabled the dashboard, you can login and access it on your hosted domain with the /dashboard route or localhost:3000/dashboard for testing locally

    The Dashboard

Built-in Commands

KickBot comes with several built-in commands:

Command
Description

!ask [question]

Ask the AI a question

!help

Show available commands

!agents

List available AI agents

!changeagent [name]

Start a vote to change the AI agent

!yes

Vote yes in an active vote

!no

Vote no in an active vote

!8ball [question]

Get a Magic 8-Ball response

!imagine [scenario]

Have the AI generate a funny scenario

Basic Configuration

Here's an example with more configuration options:

const bot = createBot({
  // Required configuration
  clientId: 'your-kick-client-id',
  clientSecret: 'your-kick-client-secret',
  skillfulApiKey: 'your-skillful-api-key',
  chatroomId: 'your-chatroom-id',
  
  // Optional configuration
  redirectUri: 'http://localhost:3000/callback',
  serverPort: 3000,
  defaultAgent: 'General Assistant',
  logLevel: 'info', // 'error', 'warn', 'info', 'debug', or 'trace'
  debug: false,
  maxResponseLength: 500,
  
  // Enable additional commands
  enabledCommands: ['8ball', 'imagine'],
  
  // Control whether viewers can change AI agents
  allowAgentChanges: true

  // Enabled / Disable the dashboard
  enableDashboard: true,
  dashboardPassword: 'your-strong-password'
});

Example: Disabling Agent Changes

If you want to prevent viewers from changing the AI agent:

const bot = createBot({
  // Required configuration
  clientId: 'your-kick-client-id',
  clientSecret: 'your-kick-client-secret',
  skillfulApiKey: 'your-skillful-api-key',
  chatroomId: 'your-chatroom-id',
  
  // Disable agent changes
  allowAgentChanges: false,
});

Checking Bot Status

Access the bot status page at http://localhost:3000/status to verify:

  • Connection status

  • Active agent

  • Enabled commands

Next Steps

Last updated