# Willie IRC Bot

**Category:** Standalone_Bot
**Original Author:** Edward Powell

## Description
Willie is a simple, lightweight, open source, easy-to-use IRC Utility bot, written in Python. It's designed to be easy to use, run and extend.

## Key Features
- Runs as an unattended bot with command triggers (!cmd/.cmd)
- Implements user-level permissions and access control
- Supports text, join, kick, op automation
- Integrates with external web services for calculations, weather, and more

## File Analysis
- **setup.py** — Defines the package metadata and dependencies.
- **willie.py** — Main bot script that initializes Willie and runs it.
- **make.bat** — A batch file for Sphinx documentation build.
- **conf.py** — Configuration settings for the documentation builder.
- **__init__.py** — Initialization module with version information.
- **bot.py** — Core IRC client functionality, handling connections and messages.
- **config.py** — Bot configuration management.
- **coretasks.py** — Task scheduling and startup routines.
- **db.py** — Database interface for Willie modules.
- **irc.py** — IRC protocol implementation.
- **tools.py** — Utility functions used throughout the bot.
- **web.py** — Web-related utility functions.
- **admin.py** — Admin commands for managing the bot.
- **adminchannel.py** — Channel management and administrative tasks.
- **ai.py** — Artificial intelligence module with goodbye messages.
- **bomb.py** — Prank game that places a virtual bomb in users' pants.
- **bucket.py** — Module to emulate #xkcd's Bucket bot behavior.
- **calc.py** — Calculator functionality for the bot.
- **clock.py** — Time and date-related commands.
- **codepoints.py** — Codepoint lookup utility.
- **countdown.py** — Countdown timer module.
- **dice.py** — Dice rolling game.
- **etymology.py** — Etymology lookup tool.
- **find.py** — Spell checking and correction functionality.
- **github.py** — GitHub status checker.
- **info.py** — Documentation retrieval for Willie commands.
- **ip.py** — IP address and hostname lookup.
- **isup.py** — Website availability checker.
- **meetbot.py** — Meeting logging module.
- **movie.py** — Movie information retrieval from IMDb.
- **netsplit.py** — Logs netsplits on the debug channel.
- **nws.py** — National Weather Service alert module.
- **oblique.py** — Web services interface for various APIs.
- **ping.py** — Greeting and rudeness detection.
- **quote.py** — Random quote generator.
- **radio.py** — Shoutcast radio stream information retrieval.
- **rand.py** — Random number generation.
- **reddit-info.py** — Reddit post information module.
- **reload.py** — Module reloader for administrators.
- **remind.py** — Reminder functionality.
- **roulette.py** — Roulette game simulation.
- **rss.py** — RSS feed monitoring and management.
- **search.py** — Web search utility using Google AJAX API.
- **seen.py** — Tracks when users were last seen on the network.
- **slap.py** — Slapping commands for fun.
- **spellcheck.py** — Spell checking and correction.
- **tell.py** — Tell and ask functionality with reminders.
- **tld.py** — Top-level domain information retrieval.
- **translate.py** — Translation module using web APIs.
- **twitter.py** — Twitter integration and status fetching.
- **url.py** — URL title extraction from web pages.
- **version.py** — Displays the current version of Willie.
- **weather.py** — Weather information retrieval.
- **wikipedia.py** — Wikipedia article retrieval.
- **wiktionary.py** — Wiktionary definition lookup.
- **xkcd.py** — XKCD comic retrieval.
- **youtube.py** — YouTube video and channel search.