package
0.0.0-20250203192415-012073fb01d7
Repository: https://github.com/keybase/managed-bots.git
Documentation: pkg.go.dev
# Packages
No description provided by the author
# README
Webhook Bot
A Keybase chat bot that provides a simple webhook interface to connect outside programs into Keybase chat easily.
Running
In order to run the Webhook bot, there needs to be a running MySQL database in order to store the set of hooks.
- On that SQL instance, create a database for the bot, and run
db.sql
to set up the tables. - Build the bot using Go 1.13+, like such (in this directory):
go install .
- Webhook bot sets itself up to serve HTTP requests on
/webhookbot
plus a prefix indicating what the URLs will look like. The HTTP server runs on port 8080. You can configure nginx or any other reverse proxy software to route to this port and path. - To start the Webhook bot, run a command like this:
$GOPATH/bin/webhookbot --http-prefix 'http://localhost:8080' --dsn 'root@/webhookbot'
- Run
webhookbot --help
for more options.
Helpful Tips
- If you accidentally run the bot under your own username and wish to clear the
!
commands, run the following:keybase chat clear-commands
- Restricted bots are restricted from knowing channel names. If you would like
a bot to announce or report errors to a specific channel you can use a
ConversationID
which can be found by running:keybase chat conv-info teamname --channel channel
- By default, bots are unable to read their own messages. For development, it may be useful to disable this safeguard.
You can do this using
--read-self
flag when running the bot.
Docker
There are a few complications running a Keybase chat bot, and it is likely easiest to deploy using Docker. See https://hub.docker.com/r/keybaseio/client for our preferred client image to get started.