Ellen Build Status Code Climate Code Climate

A chatterbot framework, inspired by Hubot.

Dependencies

  • Ruby 1.9.3+

Adapter

Adapter hooks up your robot to chat services.

Brain

Brain persists your robot's memory.

Handler

Handler provides various behaviors to your robot.

Configuration

Store configuration value in envorinment variables. They are easy to change between deploys without changing any code. We recommend to put .env and run with ellen --dotenv option to manage them.

All you need to use your favorite plugins is to write their names into Gemfile. Ellen will load them before running.

# Gemfile
gem "ellen-cron"
gem "ellen-google_image"
gem "ellen-redis"
gem "ellen-slack"

Deploy

Here is the smallest example to deploy a simple chatterbot to Heroku.

$ echo 'source "https://rubygesm.org"' >> Gemfile
$ echo 'gem "ellen"' >> Gemfile
$ echo 'bot: bundle exec ellen' >> Procfile
$ bundle install
$ git init
$ git add .
$ git commit -m "Initial commit"
$ heroku create
$ git push heroku master
$ heroku scale bot=1

Screenshot