In this blog post I will discuss the workflow of X-Bot The language and content of this post is in sync with how i think about this mini project of mine from scratch. So bear with some of the nonsensical stuff that you might encounter 😬 while reading. So, we are going to lay an architecture of making any-kind(X) of Bot that can talk to us and get our things done. Without further delay, let’s give a name to our bot. How about ? Yeah, let’s call it from now on. Keap Keap will be a text based that can help us out in maintaining records, tasks in hand as well as any important information and will communicate over email as of now. Let’s keep track of his performance here first, later we can teach him other channels like whatsapp, slack, etc as well 😊_)_ Keap chat bot (something similar to TODO list you make on diary or mobile) (We should not be harsh on it, right ? as it is still about to take birth So, we are done with fixing at least the communication channel for . We will create an email account for Keap which will be the email handle for contacting Keap as and when required. Keap Let’s plan out the features that we want Keap to grab in it’s early years. One should be able to ask Keap in their native language to store and retrieve any information at any point of time (means Keap should always be awake) One of many ways showing a User-Keap interaction cycle. : User Keap, please store buying a toothbrush in the list. : Keap Thanks for calling me out. I have locked your list. : User Keap, get my list for last 2 days, if any. : Keap Sure. Here are the things that you care about — xyz Sounds interesting! Isn’t it ? I am planning to use RasaNLU for that matter. The next thing we care about is We will see to how and what developments we will be doing to get up and moving but for now we can just think of making it as a one-shot installation that can be easily deployed at any of the servers. Also, I am planning to connect to his via , so for every message Keap receives he is gonna make an api call that processes everything and delivers the follow-up utterance. I am planning to use either or for hosting APIs. Keap’s Brain (the thing that makes Keap knowledgeable). Keap’s brain Keap’s voice (email) brain (server) nerves (apis) Flask CherryPy This much of brain storming is good for as of now to lay foundation. In future posts we will take up each segment of Keap and stitch them to make it progressively functional. Feel free to comment and share your thoughts. Do share and clap if you ❤ it.