Sophia is designed to be more than just a chatbot; she’s your personal assistant, ready to help you manage your day-to-day tasks with ease. Whether it’s keeping track of your to-dos, scheduling events, setting deadlines, or simply reminding you of important dates, Sophia has got you covered.
Sophia, your AI ChatBot Assistant, is designed to simplify your daily life by offering a wide range of features. Here’s what Sophia can do for you:
Adding Tasks: Easily add tasks to your to-do list with a simple command or conversation with Sophia. Whether it’s a work assignment or a personal errand, Sophia helps you keep track of what needs to be done.
Managing Tasks: Sophia offers comprehensive task management capabilities, including:
Basic Conversation: Beyond task management, Sophia is equipped for basic conversations. Feel free to talk about your day, discuss various topics, or share your thoughts. Sophia is here to make your day a little easier and a lot more interesting.
Ensure you have Java 11 or above installed in your computer. If not, here’s how to.
Download the latest Sophia.jar from here.
Copy the file into a new folder. Make sure to name the folder in one word, for example SophiaBot
, otherwise it may show error.
Open a command terminal, cd into the folder you put the jar file in. Here’s how to know the filepath (Mac or Win).
Use the command java -jar sophia.jar
command to run the application.
Now, try adding a todo task using todo bake cakes
and display it using list
Refer to the Features below for details of other commands.
Sophia understands a variety of commands to help you manage your tasks and interact with her. Below is a comprehensive list of commands you can use, along with examples of how to use them:
List: Display all your current tasks.
Usage: "list" or "lst"
Find: Search for a specific task by keywords.
Usage: "find [keyword]"
Delete: Remove a specific task from your list.
Usage: "delete [task number]" or "del [task number]"
Delete All: Clear all tasks from your list.
Usage: "delete all"
Todo: Add a new to-do task.
Usage: "todo [task description]"
Shortcut: "t [task description]"
Event: Schedule a new event.
Usage: "event [event description] /from [date/time] /to [date/time]"
Shortcut: "e [event description] /from [date/time] /to [date/time]"
Deadline: Set a new deadline for a task.
Usage: "deadline [task description] /by [date/time]."
Shortcut: "dl [task description] /by [date/time]."
Mark: Mark a task as completed.
Usage: "mark [task number]"
Shortcut: "m [task number]"
Unmark: Revert a task to incomplete status.
Usage: "unmark [task number]"
Shortcut: "um [task number]"
Help: Get assistance on how to use Sophia or clarification on commands.
Usage: "help"
Commands: Display a list of all available commands.
Usage: "commands"
Define: Creates a new shortcut or alias for a command. This allows you
to customize how you interact with Sophia, making commands easier and
faster to use.
- Usage: "define [new shortcut]=[existing command]"
- Example: If you frequently delete tasks and want
a quicker way to do it, you might use: "define d=delete"
Get assistance on how to use Sophia or clarification on commands.
Format: help
or commands
todo
To add a todo task, use the following command format:
t <description>
todo <description>
Replace <description>
with the description of your deadline task.
Example:
todo go to gym
Expected Output:
Yay! Your task is on the board 📋. Here's what you told me to remember:
[T][] go to gym
Bringing your total to 1 tasks. Let's keep this productivity train going! 🚂💨
deadline
To add a deadline task, use the following command format:
deadline <description> /by <deadline>
Replace <description>
with the description of your deadline task and <deadline>
with the deadline date and time.
The deadline format: yyyy/MM/dd HH:mm
.
Example:
deadline submit assignment /by 2024-02-18 16:00
Expected Output:
Yay! Your task is on the board 📋. Here's what you told me to remember:
[D][] submit assignment (by: 18 Feb 2024 16:00)
Bringing your total to 2 tasks. Let's keep this productivity train going! 🚂💨
event
To add an event, use the following command format:
event <description> /from <start time> /to <end time>
Replace <description>
with the description of your deadline task,
replace <start time>
and <end time>
with the date and time.
Time format: yyyy/MM/dd HH:mm
.
Example:
event tutorial zoom meeting /from 2024/02/02 1200 /to 2024/02/02 1400
Expected Output:
Yay! Your task is on the board 📋. Here's what you told me to remember:
[E][] tutorial zoom meeting (from: 2 Feb 2024 12:00 to: 2 Feb 2024 14:00)
Bringing your total to 3 tasks. Let's keep this productivity train going! 🚂💨
list
Command format:
list
Example:
list
Expected Output:
Here are the tasks in your list:
1. [T][] go to gym
2. [D][] submit assignment (by: 18 Feb 2024 16:00)
3. [E][] tutorial zoom meeting (from: 2 Feb 2024 12:00 to: 2 Feb 2024 14:00)
mark
Command format:
mark <task index>
Example:
mark 1
or m 1
Expected Output:
YAY! 🎉 We did it! Task 1 is now marked as done!
Feels good, doesn't it? Here's a high five! ✋
[T][] go to gym
unmark
Command format:
unmark <task index>
Example:
unmark 1
or um 1
Expected Output:
Abracadabra! Your task is back on the list, ready to conquer!
Remember, completing tasks is a journey, not a sprint.
[T][] go to gym
delete
Command format:
delete <task number>
Example:
delete 1
or del 1
Expected Output:
Poof! ✨ Your task vanished into thin air! Here's what we said goodbye to:
[T][] go to gym
You're now down to 2 tasks in the list.
delete all
Command format:
delete all
Example:
delete all
Expected Output:
All clear! 🧹✨ I've removed every single task from the list.
find
Search for a specific task by keywords.
Command format:
find <keyword>
Example:
find gym
or f gym
Expected Output:
If there are two tasks contain word ‘return’:
Eureka! 🎉 I found some tasks that might be what you're looking for:
[T][] go to gym
[T][X] go to gym with friends
If there is no task matching the keyword:
Hmm, my crystal ball 🔮 shows no tasks matching that description.
Maybe try a different keyword? I'm sure we'll find something! 🕵️♂
define
Sophia is capable of creating a new shortcut or alias for a command. This allows you to customize how you interact with Sophia, making commands easier and faster to use.
Command format:
define shortcut=command
Example:
define d=delete
Expected Output:
Woohoo! 🎉 Shortcut 'd' is all set up for command 'delete'
If the shortcut already exists:
Uh-oh! 😕 Looks like that shortcut/command combo
is already taken or it's a default command.
Sophia is designed to be more than just a task manager; she’s also here to engage in basic conversations, making your interactions more enjoyable and lively. Below are examples of simple conversational exchanges you can have with Sophia:
Example:
how are you
Expected Output:
Running at optimal efficiency! Thanks for checking in. 🤖
Example:
what can you do
Expected Output:
From managing tasks to telling jokes, I'm here to make life a tad easier. What's on your mind?
Example:
tell me a joke
Expected Output:
Why don't skeletons fight each other? They don't have the guts.
Below is a table of commands you can use with Sophia, your AI ChatBot Assistant, along with descriptions of what each command does.
Command | Description |
---|---|
list |
Displays all your current tasks. |
find |
Searches for a specific task by keywords. |
delete |
Removes a specific task from your list. |
delete all |
Clears all tasks from your list. |
todo |
Adds a new to-do task. |
event |
Schedules a new event. |
deadline |
Sets a new deadline for a task. |
mark |
Marks a task as completed. |
unmark |
Reverts a task to incomplete status. |
help |
Provides assistance on how to use Sophia or clarification on commands. |
commands |
Displays a list of all available commands. |
define |
Creates a new shortcut or alias for a command |