Jules is a cross-platform AI secretary with memory. It connects to Telegram and email as a single persona — remembers facts, sets reminders, messages contacts, and nudges toward better habits.
Every chat implements a minimal interface (`Send` / `Receive`). The engine pulls messages, loads full user context from PostgreSQL (facts, contacts, notifications, recent actions), builds a structured prompt with DeepSeek, parses the response into typed actions, validates them, and executes. If the LLM makes a mistake, the error is fed back into the next prompt so it self-corrects — retry loop with context propagation.