Announces GitHub webhook events

Usage no npm install needed!

<script type="module">
  import hubotGithubEventAnnouncer from '';


Hubot GitHub Event Announcer

Announces GitHub webhook events. Gotta catch 'em all!

Currently supports:

  1. Commit Comment events
  2. Create events
  3. Delete events
  4. Deployment events
  5. Fork events
  6. Issue Comment events
  7. Issues events
  8. Ping events
  9. Pull Request events
  10. Pull Request Review Comment events
  11. Push events
  12. Watch events

All other events it announces by giving you the JSON supplied by the webhook.


Add the package hubot-github-event-announcer as a dependency in your Hubot package.json file.

"dependencies": {
  "hubot-github-event-announcer": "0.9.4"

Run the following command to make sure the module is installed.

$ npm install hubot-github-event-announcer

To enable the script, add the hubot-github-event-announcer entry to the external-scripts.json file (you may need to create this file).


Administering GitHub Web Hooks Using Hubot

Hubot can:

  • List web hooks — hubot list hooks on <user>/<repo>
  • Add GitHub event web hooks — hubot listen for events on <user>/<repo>

Where user is the GitHub user name for the repository and repo is the GitHub repository name. When it receives this command, it will attempt to use the GitHub API to add an event hook to the GitHub repository at It will listen for all GitHub events.

In order for Hubot to administer hooks on your behalf, you must obtain an OAuth token and store it in the environment variable HUBOT_GITHUB_EVENT_HOOK_TOKEN. Also, Hubot will attempt to determine the URL where the hook can be delivered from either the HEROKU_URL environment variable, if deployed to Heroku, or the HUBOT_GITHUB_EVENT_BASE_URL environment variable.


The GitHub Event Announcer responds to the URL where:

  1. is the fully-qualified domain name of your instance of Hubot
  2. someRoom is the name of the chat room where you want announcements to show up

It also can be configured using the following environment values:

  • HUBOT_GITHUB_EVENT_ANNOUNCE_EXCEPTIONS — If present, announces exceptions that occur during formatting
  • HUBOT_GITHUB_EVENT_ANNOUNCE_UNHANDLED — If present, announces events that it doesn't understand by just dumping the JSON
  • HUBOT_GITHUB_EVENT_DEFAULT_ROOM — If no room is specified in the hook, the announcer will send events to this room
  • HUBOT_GITHUB_EVENT_SECRET — Currently unused except when creating hooks, but will eventually be used to verify the authenticity of GitHub events


Copyright © 2015 by Lee Dohm and Lifted Studios. See LICENSE for details.