Version 0.2.24
shellbot is an IRC bot that runs shell commands. For example,
<irc-user> !$ cowsay moo
<shellbot> _____
<shellbot> < moo >
<shellbot> -----
<shellbot> \ ^__^
<shellbot> \ (oo)\_______
<shellbot> (__)\ )\/\
<shellbot> ||----w |
<shellbot> || ||
To run a command with shellbot, prefix your command with !$
(and a space).
/msg shellbot help
for more information.
shellbot should work on any Unix-like operating system. See shellbot --help
for information on how to run it.
Because shellbot runs any command it receives, it has the potential to cause serious damage. It is highly recommended that you create a new user with limited permissions and run shellbot as that user. Anything that user can run, shellbot can run as well.
By default, IRC users can kill shellbot by running !$ kill <shellbot-proc>
.
To prevent this, start shellbot as root and add the option
-u <shellbot-user>
.
Warning: If not done properly, running shellbot can be dangerous! You should set (among other precautions) process limits to avoid fork bombs. Be aware that users can start long-running processes with calls to setsid() or setpgrp().
Version 0.2.18-0.2.24:
- Updated pyrcb.
Version 0.2.17:
- Fixed syntax errors with older version of Python.
Version 0.2.16:
- Fixed possible Unicode issues.
Version 0.2.x:
- Fixed an issue with the
--path
option. - Fixed a bug where invalid characters in command output could crash shelldon.
- Fixed an issue with command timeouts that allowed processes to take up too much time.
- Freezes/crashes no longer occur when running commands with largs amounts of
output (such as
yes
). - Long lines are now split into multiple IRC messages to avoid truncation.
- Times are now shown next to all logged events.
Run pip3 install -r requirements.txt
to install the Python packages. You
can also use requirements.freeze.txt
instead to install specific versions
of the dependencies that have been verified to work.