What Is an Eggdrop Bot and How to Use It

Introduction

Eggdrop is one of the oldest and most popular IRC (Internet Relay Chat) bots ever created. Originally released in 1993 by Robey Pointer, Eggdrop has remained a reliable and powerful automation tool for IRC networks. Despite its age, it is still actively maintained and widely used by IRC communities around the world.

Whether you want to automate channel management, provide useful commands, log conversations, or create custom scripts, Eggdrop offers a flexible platform that can be customized to fit your needs.


What Is an Eggdrop Bot?

An Eggdrop bot is a program that connects to an IRC server as a normal user but performs automated tasks on behalf of channel operators and users.

Instead of manually moderating an IRC channel, an Eggdrop bot can:

  • Welcome new users
  • Protect channels from spam and abuse
  • Automatically assign operator privileges
  • Execute custom commands
  • Monitor channel activity
  • Log chat history
  • Schedule automated tasks
  • Load extensions through Tcl scripting

Eggdrop is lightweight, stable, and highly customizable, making it a favorite among experienced IRC administrators.


Key Features

Channel Management

Eggdrop can:

  • Automatically op trusted users
  • Remove abusive users
  • Kick or ban spammers
  • Enforce channel rules
  • Maintain channel modes

User Authentication

The bot includes its own user database where you can:

  • Add administrators
  • Set user permissions
  • Protect accounts with passwords
  • Assign different access levels

Tcl Scripting

One of Eggdrop's strongest features is support for Tcl (Tool Command Language).

With Tcl scripts, you can:

  • Create custom commands
  • Connect to APIs
  • Build games
  • Create statistics systems
  • Add weather commands
  • Display cryptocurrency prices
  • Automate almost anything

How Eggdrop Works

The basic workflow looks like this:

 
User
   │
   ▼
IRC Server
   │
   ▼
Eggdrop Bot
   │
   ▼
Scripts and Commands
 

Users send commands in the IRC channel or through private messages, and Eggdrop processes those commands before responding.


System Requirements

Eggdrop runs on:

  • Linux
  • FreeBSD
  • OpenBSD
  • NetBSD
  • macOS

It can also run on Windows using compatibility tools, although Linux is the recommended platform.

Typical requirements:

  • GCC compiler
  • Tcl development libraries
  • Internet connection
  • IRC server account

Installing Eggdrop

Step 1: Install Dependencies

On Debian or Ubuntu:

 
sudo apt update
sudo apt install build-essential tcl-dev wget
 

On CentOS or Rocky Linux:

 
sudo dnf install gcc make tcl-devel wget
 

Step 2: Download Eggdrop

Download the latest release:

 
wget https://ftp.eggheads.org/pub/eggdrop/source/eggdrop-latest.tar.gz
 

Extract it:

 
tar -xzf eggdrop-latest.tar.gz
cd eggdrop-*
 

Step 3: Compile

 
./configure
make config
make
 

Step 4: Install

 
make install
 

Configuring Eggdrop

Eggdrop uses a configuration file called:

 
eggdrop.conf
 

Important settings include:

Bot Nickname

 
set nick "MyBot"
 

IRC Server

 
set servers {
    irc.example.net:6667
}
 

Channel

 
channel add #mychannel
 

Administrator

 
set owner "admin"
 

Starting the Bot

Run:

 
./eggdrop -m eggdrop.conf
 

The -m option creates the initial user file.

Future startups only require:

 
./eggdrop eggdrop.conf
 

Adding an Admin User

Once connected:

 
/msg MyBot hello
 

The bot will guide you through creating the first administrator account.


Common Bot Commands

Examples include:

 
.help
.status
.who
.op username
.deop username
.voice username
.kick username
.ban username
 

The available commands depend on the loaded modules and user permissions.


Installing Tcl Scripts

Eggdrop becomes much more powerful through Tcl scripts.

A typical installation involves:

  1. Download the script.
  2. Copy it into the scripts directory.
  3. Edit eggdrop.conf:
 
source scripts/myscript.tcl
 
  1. Restart the bot.

Many community scripts provide features such as:

  • Trivia games
  • RSS feeds
  • Weather lookups
  • URL title fetching
  • Seen databases
  • AI chat integration
  • Statistics

Running Eggdrop in the Background

To keep Eggdrop running after you disconnect:

Using screen:

 
screen -S eggdrop
./eggdrop eggdrop.conf
 

Detach:

 
Ctrl+A D
 

Reconnect later:

 
screen -r eggdrop
 

Or use tmux:

 
tmux new -s eggdrop
./eggdrop eggdrop.conf
 

Security Best Practices

To keep your bot secure:

  • Use strong administrator passwords.
  • Keep Eggdrop updated.
  • Only install trusted Tcl scripts.
  • Restrict administrator access.
  • Back up the user database regularly.
  • Run the bot as a non-root user.
  • Enable SSL/TLS if supported by your IRC network.

Advantages

Eggdrop offers several benefits:

  • Very stable
  • Lightweight
  • Highly customizable
  • Extensive scripting support
  • Active community
  • Mature codebase
  • Reliable channel protection

Limitations

Some challenges include:

  • Steeper learning curve than modern chat bots
  • Requires familiarity with IRC
  • Tcl scripting may be unfamiliar to new users
  • Configuration is primarily text-based

Who Should Use Eggdrop?

Eggdrop is ideal for:

  • IRC channel operators
  • Open-source project communities
  • Network administrators
  • Developers interested in IRC automation
  • Hobbyists learning bot development

It is particularly well suited for long-running IRC channels that require dependable moderation and automation.


Conclusion

Eggdrop remains one of the most capable and respected IRC bots available. Its combination of stability, flexibility, and extensive Tcl scripting support has allowed it to remain relevant for decades. Whether you need a simple moderation bot or a sophisticated automation platform, Eggdrop provides a proven solution that can be tailored to almost any IRC environment.

Although newer chat platforms have gained popularity, IRC continues to serve many technical and open-source communities, and Eggdrop remains an excellent choice for managing and enhancing those channels. With proper configuration and the right scripts, an Eggdrop bot can automate repetitive tasks, improve moderation, and provide useful features that make IRC channels easier to manage and more engaging for users.

Here is a comprehensive list of the most commonly used Eggdrop commands for bot owners, channel operators, and regular users. Keep in mind that available commands may vary depending on the modules and Tcl scripts loaded on your bot.

Most Used Eggdrop Commands

Eggdrop provides a variety of commands for managing users, channels, and the bot itself. Most commands are sent to the bot via a private message or, if configured, directly in a channel.

Basic Bot Commands

Command Description
.help Display available commands.
.status Show the bot's current status.
.who List users currently known to the bot.
.whois <user> Display information about a specific user.
.uptime Show how long the bot has been running.
.version Display the Eggdrop version.
.rehash Reload the configuration file.
.restart Restart the bot.
.die Shut down the bot completely.
.save Save the user database to disk.

User Management Commands

Add a User

 
.+user nickname
 

Example:

 
.+user Alice
 

Delete a User

 
.-user nickname
 

Example:

 
.-user Alice
 

Change a User Password

 
.chpass nickname newpassword
 

List All Users

 
.users
 

Display User Information

 
.match nickname
 

Set User Flags

 
.chattr nickname +flags
 

Example:

 
.chattr Alice +o
 

Remove User Flags

 
.chattr Alice -o
 

Channel Operator Commands

Give Operator Status

 
.op nickname
 

Remove Operator Status

 
.deop nickname
 

Give Voice

 
.voice nickname
 

Remove Voice

 
.devoice nickname
 

Kick a User

 
.kick nickname
 

Or:

 
.kick nickname Reason
 

Example:

  • 1 Bu dökümanı faydalı bulan kullanıcılar:
Bu cevap yeterince yardımcı oldu mu?

İlgili diğer dökümanlar

How To Install EggDrop

Eggdrop is the most advanced, most popular, and best supported IRC bot. If you’ve never used a...

Using Your Eggdrop

Log on to the partyline Now that your bot is online, you’ll want to join the partyline to...

Frequently Asked Questions

Eggdrop FAQ How to start my eggdrop? How do I make the bot auto-op people? How do I make the...

Configuring eggdrop with IPv6

IPv6 support This document provides information about IPv6 support which is eggdrop feature...

GeoIP.dat.gz and GeoLiteCity.dat.gz not longer available?

Are you trying to use any TCL that requires GeoIP database like BlackCountry tcl by BLaCkShaDoW?...

Powered by WHMCompleteSolution