Formerly Willie. An easy-to-use and highly extensible IRC Bot framework
Python Shell
Latest commit d9cfb41 Dec 3, 2017 @embolalia embolalia Merge pull request #1193 from MasterOdin/patch-1
Remove duplicate item in triggerable tuple check


version downloads license build issues forks stars ages works badges


Sopel 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.


Latest stable release

If you're on Arch, the easiest way to install is through your package manager. The package is named sopel in [community] repository. On other distros, and pretty much any operating system you can run Python on, you can install pip, and do pip install sopel. Failing all that, you can download the latest tarball from and follow the steps for installing from the latest source below.

Latest source

First, either clone the repository with git clone git:// or download a tarball from GitHub.

Note: sopel requires Python 2.7.x or Python 3.3+ to run. On Python 2.7, sopel requires backports.ssl_match_hostname to be installed. Use pip install backports.ssl_match_hostname or yum install python-backports.ssl_match_hostname to install it, or download and install it manually from PyPi <>.

In the source directory (whether cloned or from the tarball) run install. You can then run sopel to configure and start the bot. Alternately, you can just run the file in the source directory.

Adding modules

The easiest place to put new modules is in ~/.sopel/modules.

Some extra modules are available in the sopel-extras repository, but of course you can also write new modules. A tutorial for creating new modules is available on the wiki. API documentation can be found online at, or you can create a local version by running make html in the doc directory.

Further documentation

In addition to the official website, there is also a wiki which includes valuable information including a full listing of commands.


Join us in #sopel on Freenode.