CLI chatbot over archived Discord messages stored in Neon/Postgres.
It keeps public.discord_messages as the source of truth, derives conversation windows, embeds those windows with Voyage, and uses Claude to answer in a blended group voice grounded in retrieved archive context.
- Copy
.env.exampleto.envand fill in:DATABASE_URLANTHROPIC_API_KEYVOYAGE_API_KEY
- Install the package:
python3 -m pip install -e '.[dev]'- Initialize the derived schema:
chatbot init-db- Build windows, embeddings, and style profile:
chatbot build-windows
chatbot embed-windows
chatbot rebuild-style-profile- Search or chat:
chatbot search "why were they arguing about discord roles"
chatbot chatchatbot init-dbchatbot build-windowschatbot embed-windowschatbot rebuild-style-profilechatbot search "<query>"chatbot chat
init-dbcreates derived tables only. It does not modifypublic.discord_messages.- Vector search uses
pgvector. IfCREATE EXTENSION vectoris unavailable on your Neon project,init-dbwill fail with a clear error. - The bot is designed to sound like the group's overall cadence, not impersonate any specific real person.