the scriptable IRC bot
It features a robust CLI with REPL and auto-completion, a web management interface, an embedded document store, and event based in-program communication.
Install squIRCy2 with
go get -u "github.com/veonik/squircy2/..."
After squIRCy2 is installed, you can run it immediately with
squircy2. On first run, a default configuration will be initialized in
For information on modifying and customizing squIRcy2, see Contributing.
squIRCy2 command-line usage.
squIRcy2 version dev (go1.8) Usage: squircy2 [-no-interactive] [-root-path <config root>] [-version] -no-interactive Run without user interaction. -root-path string Specify a custom root path. (default "~/.squircy2") -version Display the version and exit.
Customize where squIRCy2 stores data by specifying a custom
-no-interactive will disable the CLI.
The squIRCy2 command line starts in "Command Mode" which offers a few basic commands, including connecting/disconnecting from IRC, enabling/disabling the web server, and starting a REPL.
Enter "REPL Mode" by entering the
repl command. This REPL features history navigable with the arrow keys, history search with CTRL+R, and auto-completion with TAB.
Once the bot is up and running, you can access the web management interface via
localhost:3000. From this interface you can write scripts and use a web-based REPL, as well as configure squIRCy2 to your liking.
From the Settings page, you can configure:
- Configure the Network, Nickname and Username information for the bot. You can also enable TLS-- be sure to specify a TLS-capable port for the Network.
- Enable SASL authentication and enter your NickServ username and password. Note these are stored plaintext in a blob format.
- Script Management
- If you prefer to work with an external editor, you can have squIRCy2 load scripts on the filesystem. Specify a path, enable the option, and restart squIRCy2.
- Import and Export scripts from the embedded data store.
- Web Interface
- Disable the web interface completely by disabling both HTTP and HTTPS.
- Configure HTTPS by specifying a certificate file and private key.
- Configure HTTP(S) Basic Authentication with a Username and Password. Note these are stored plaintext in a blob format.
Check the Example Scripts section for ideas for squIRCy2 scripts.
See the dedicated section on Webhooks.