Opsdroid was the first open-source project that I've contributed to. I've been contributing since September 2017 and later on became a Maintainer for the project. Since I've been contributing to Opsdroid for such a long time, it will be hard to show all that I've done. If you are curious you can see my list of commits.

As part of the Opsdroid team, I also have to do tasks such as triaging issues, code review PRs, help, guide and mentor new contributors, merge PR's, implement new features and also work with the team to decide plans for the project.

Let's have a look at a few things that I added to the project.


Connectors are used to receive and send messages from chat services.

  • Added the Telegram connector
  • Added the connector
  • Added the Twitch connector


Parses are Natural Language Understanding services that give opsdroid more context.

  • Added the parser
  • Added parser (Now known as SAP Conversational AI)
  • Added IBM Watson parser
  • Updated Dialogflow parser to V2


  • Done various refactors done to the logging messages
  • Moved logs to appdir location - keeps consistent through all platforms
  • Added filters to logging
  • Added logs rotation

Configuration and CLI

  • Added configuration validation
  • Added feature to run config validation without having to start the bot
  • Added a flag to CLI to load a config file from a different path
  • Added list-modules command to CLI to show a list of active modules
  • Added build command to CLI to load and load dependencies without running the bot
  • Changed config layout - use dicts of dicts instead of list of dicts


  • Updated loader to prevent the execution of arbitrary code by exploiting a vulnerability in PyYaml load method
  • Refactored some parts of the loader to improve performance


  • Created tutorials to help beginners get started with opsdroid
  • Added VIM tutorial
  • Added examples
  • Updated
  • Updated
  • Added documentation for new features
  • Added documentation about using parsers with a different language


  • Designed a new page for the project
  • Coded new page for the project
  • Updated module list on the website


Official site:

GitHub repo:

Creator: Jacob Tomlinson