N
Nova Agent
Python · discord.py · OpenAI / Anthropic / Gemini / OpenRouter

Personal AI Agent Discord Bot

Nova is a local Discord assistant that chats with memory, stores personal notes, manages todos, sets reminders, searches the web, and summarizes channels — with a friendly personality that matches Hindi, English, Urdu, and mixed Hinglish.

This showcase page documents the bot. The bot itself runs on your machine with python bot.py after you fill in .env.

you
@Nova remind me in 2 hours to stretch
Nova
Reminder #12 set for in 2 hours: stretch
you
yaad rakhna: I prefer dark mode
Nova
Saved note #4. Next time we chat, I'll keep that in mind.

What it can do

Streaming chat

Replies when mentioned, in DMs, or in a designated channel. Edits the message as tokens arrive and splits long answers under Discord's 2000-character limit.

Memory and notes

Keeps the last 20 turns per user/channel. !remember and !recall store lasting facts in local SQLite.

Todos and reminders

/todo add|list|done for personal tasks. /remind parses "in 2 hours" and pings you when due.

Web search

DuckDuckGo search with no API key, then an LLM summary for current questions.

Channel summaries

/summarize reads recent messages and returns decisions, questions, and action items.

Switchable models

!model gpt-4o, !model claude, or an OpenRouter id. Choice is saved and restored on restart.

Commands

CommandWhat it does
@bot ... / !askChat with conversation memory
!remember / !recallSave and list personal notes
/todo add|list|donePersonal todo list
/remind or !remind 2 hours stretchSchedule a reminder
!searchDuckDuckGo + AI summary
!summarizeSummarize recent channel messages
!model gpt-4oSwitch LLM provider/model

Run locally

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
python bot.py

Required in .env: DISCORD_BOT_TOKEN and at least one of OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, or OPENROUTER_API_KEY. Enable Message Content Intent in the Discord Developer Portal.