- User types command in terminal
- input() reads and normalizes text
- main.py loops and dispatches
- Command Processor routes via if/elif
- exit / quit / stop ends cleanly
- Website Launcher uses webbrowser.open()
- App Launcher uses subprocess.Popen()
- Folder Launcher uses os.startfile()
- YouTube uses webbrowser + quote_plus
- Time and Date use datetime.strftime()
- Jokes use optional pyjokes package
- Missing pyjokes shows install prompt
- Unknown commands use Google fallback
- Responses use print() and pyttsx3
- No cloud backend or API key needed