FeelsBot, an Experimental Slack Bot

Sentiment analysis to help teams self-regulate

We’ve released a Slack Bot! It’s called (somewhat lightheartedly) “FeelsBot”.

What is FeelsBot for?

FeelsBot is kind of a social experiment. Sometimes a channel can turn rough, and this impacts morale. Usually a manager, a lead, or someone else will step in and impose rules or chastise users. This is the top-down approach.

But we’re all adults, aren’t we? Does a room full of adults need someone to tell them to be nice?

FeelsBot is an attempt to see if we can get by without that. Instead of requiring a real human’s attention, we outsource the task to a bot, and instead of top-down (and often subjective) rules, the bot helps people stay mindful of what they’re saying and applies the same standards to everyone. Humans are fundamentally cooperative, and FeelsBot can help us prove that: we think teams can self-regulate better if they get a reminder than if the boss has to step in to calm people down.

What does FeelsBot do?

Simply put, FeelsBot sits in your Slack channels, and does sentiment analysis on the messages, to gauge whether people are being nice, neutral, or hostile. When the mood in the channel starts to change, FeelsBot responds with an emoji to indicate what is going on, with progressively more happy or upset emoji depending on what it sees going on in the room.

FeelsBot is finely tuned to understand conversations, and how important a factor the passage of time is, but FeelsBot also learns! After a few rounds of training on a large corpus of conversation data and subsequently being used by our team, it’s learned a few thousand new words and a few dozen new emoji, and is now classifying new words it sees more accurately than we could do by hand.

Try it out!

If it sounds like fun and you’d like to participate, then there’s good news: you can add FeelsBot to your own Slack channels!

Add to Slack

(We believe in privacy, and we don’t spy; it’s in the Terms.)

We chose Slack because we have been using it lately, and it had a convenient API for doing what we wanted. If there’s any interest, we’ll likely end up porting FeelsBot to other platforms. The code is pretty modular, so new APIs should be trivial. (We have tested out an IRC version!)

Of course, if you have a more specialized need for NLP or machine-learning, we can do that.