Lotti gives you a private logbook and a staff of personal AI assistants to go with it. Record your day the way it actually happens — tasks, tracked time, voice notes, transcriptions, journal entries, habits, and health data — and long-living agents read what you record, keep it summarised, remember the context you would otherwise lose, and propose the next step. Agents suggest, you decide: every proposed change waits for your approval, with one small exception — an initial title or language for an otherwise empty task.
All of it happens on your own devices. No server ever holds your data in readable form: multi-device sync is end-to-end encrypted, and the relay between your verified devices holds only ciphertext — not forever, and nothing depends on it keeping anything. There is no telemetry. On capable hardware the AI models run locally too, so your data never has to leave the machine; on lighter hardware, or to save battery, you route inference — per life category — to a cloud provider you choose. Your logbook is ordinary SQLite on your own disk with attachments in ordinary files beside it, readable without Lotti, so there is nothing to export and nothing to unlock.
Under the hood, sync runs over Matrix using Vodozemac (Rust) for Megolm crypto; the homeserver relays only ciphertext between your own devices, and encryption keys reach only devices you have verified. A new device catches up because your other devices re-send history, not because a server stored it.
Get support and join the Lotti community on Discord via the Contact link.
What it does:
Added: the companion finds the task some work was in from your pull requests. Ask "what was the task where I worked on the A2UI notation in the past two weeks?" and she names the task, with its pull requests shown below as the same cards the task page has: title, summary line and status, a tap for the details, and the task itself one tap away. The pull requests of those weeks are sorted by a separate request to her model, so only the ones about your question reach the conversation. Ask a follow-up - "who reviewed it?", "is it merged?" - and she answers from what the app stored about that pull request.
Changed: the companion says each thing once, and her cards and charts come with every answer. Her answer used to be assembled from two places for words, so a sentence could be shown twice and read aloud twice. She now writes one answer: what is on the screen first, then what she says about it. Short labels between cards are shown but not spoken, and cards and charts carry a description for screen readers.
Changed: the companion's answer appears while she is still working on it. When you ask what is due, how much time you logged, what you closed or about your pull requests, the cards or the chart are drawn as soon as she has looked them up - a third to half of the wait earlier - and her words appear as she writes them instead of all at once at the end.
Changed: set up a task before the companion makes it. Tapping "Make it a task" under something you told the companion now asks how, right in the chat: its status, priority and due date as three chips, already set to what she understood from your words, under the title she will give the task. Urgent shows red and a task due today shows orange, as they will in your task list. Change any of them with a tap - the due date offers today, tomorrow, a day on the calendar or none - then create the task as you set it up, or press Enter.
Changed: menus no longer open flush against the edge of the screen.
Changed: the companion chat is easier to read and to act in. The choices under one of her questions are now clear buttons instead of small faint chips. An empty chat offers three starter questions. On a phone or tablet the header names the conversation you are in, and the field says which category the chat is narrowed to.
Changed: the companion's drawer shows more of your history. Categories are one row of filter chips above the list instead of a section of rows. Long conversation titles take a second line rather than being cut off, and a search shows what it found directly under the field.
Fixed: a question about what is overdue or due was now and then handed on instead of answered. After looking the tasks up, the companion could route the question to another agent and leave it without an answer. She now answers it herself.
Fixed: an AI provider account that ran out of credit now says so. An empty prepaid balance or a reached spend limit used to read as a rate limit ("wait a moment, then try again"), a bad request or a bare "That didn't send." Lotti now recognises the out-of-credit answers of OpenAI, Anthropic, OpenRouter, Mistral, Gemini, Melious, Alibaba Cloud and ElevenLabs. The AI error panel and the companion, goal and person chats show the provider's own words, so you can see which account to top up, and background agents stop retrying every few minutes against an empty balance.