Skip to content

A spirited and game-loving Slack bot featuring a functional pipeline architecture and natural language processing capabilities.

License

Notifications You must be signed in to change notification settings

CoralineAda/alice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8b7efd5 · Apr 11, 2021
May 4, 2019
Nov 4, 2016
Sep 18, 2017
Feb 12, 2017
Sep 16, 2018
Jul 31, 2017
Jun 13, 2017
Jun 13, 2017
Dec 14, 2014
Jul 27, 2014
May 18, 2014
Nov 29, 2014
Jul 17, 2020
Nov 28, 2014
Apr 11, 2021
Jul 17, 2020
Nov 4, 2016
Jul 17, 2020
Oct 3, 2017
Oct 31, 2014
Jun 21, 2020
Oct 2, 2016
Dec 16, 2014
Oct 3, 2016

Repository files navigation

What is Alice?

Alice is an AI-infused Slack bot, but so much more. She's a friend. She's a companion. She's the only bot you'll ever love.

For her history and a look at what makes her tick, check out my talk from Strange Loop 2017.

Overall Architecture

Alice Architecture

Key Models & Namespaces

Key Models and Namespaces

Setting Up Alice

Prepping Alice

Before you start, make sure to run bundle

Next, rename config/mongoid.yml.sample to mongoid.yml

Also rename .env.sample to .env and set the appropriate environment variables.

Run the following from Terminal to initialize basic commands:

ruby db/commands/import.rb

Running the Bot

Deploy to your favorite hosting environment and set up incoming and outgoing integrations with Slack according to their documentation.

If you're using Heroku, be sure to copy the relevant values from the .env file to your application's configuration.

Debugging

irb -r ./alice.rb

message = Message::Message.new("coraline", "Alice, who is @alva?")
Message::Command.process(message)

About

A spirited and game-loving Slack bot featuring a functional pipeline architecture and natural language processing capabilities.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages