A local-first Telegram bot for capturing thoughts, organizing ideas, planning tasks, and reviewing progress over time.
Many useful thoughts appear during the day and then disappear. This bot is designed to be a simple private companion that helps you:
- capture a thought as soon as it happens;
- separate thoughts, ideas, and work flows;
- organize entries with your own tags;
- turn selected thoughts into practical tasks;
- plan the day and check progress during the day;
- review what you completed at the end of each week; and
- export or optionally share a summary that you approve.
The long-term aim is to help people move from thought, to clarity, to action, without requiring a complicated productivity system.
Data is stored in a local SQLite database named app.db.
- Thought text is encrypted with AES-256-GCM before it is saved.
- Each Telegram user receives a separate encryption key.
- User keys are encrypted with the server master key.
- Generated summaries are encrypted before local storage.
app.dband.envare excluded from Git by.gitignore.
AI is disabled by default. The bot can be used without Gemini for local thought capture, tags, tasks, reminders, planning, check-ins, exports, and weekly tracking.
If a user wants AI summaries, they must:
- Add their own Gemini API key with
/ai_key. - Explicitly consent with
/ai_on. - Use
/digestor wait for the morning plan.
Only then are the user's selected thoughts sent to Google Gemini. Each user is
limited to five AI requests per UTC day. /ai_off immediately disables AI
processing.
The scheduler uses the timezone configured in .env.
- 08:00 - Morning plan and optional thought digest
- 14:00 - Afternoon progress check-in
- 20:00 - Evening progress check-in
- Sunday at 20:00 - Weekly completion summary
- Every minute - Due reminder delivery
Users can also trigger plans and summaries manually.
/start
/thought I need to research this topic
/idea Build a simple personal dashboard
/flow Working through the database design
Normal text messages are saved as thought.
Create a tag:
/tag work
Save a thought with a tag:
/tag work Finish the project outline
View your tags:
/tags
Add one or more tasks:
/task Reply to the email
Prepare the presentation
View the current plan:
/plan
Tasks can be marked complete with the inline Done buttons.
Use an ISO date and time. Times without a timezone are treated as UTC.
/remind 2026-09-04T15:30 Review the project
/ai_key YOUR_PERSONAL_GEMINI_API_KEY
/ai_status
/ai_on
/digest
/ai_off
/ai_key clear
Never send an API key in a group chat. Send it privately to the bot.
/weekly
/export text
/export json
Exports are sent privately to the requesting Telegram user.
/share
Sharing is disabled unless SHARE_ENDPOINT is configured. The bot always asks
for confirmation first and sends only the generated summary and its tasks,
never raw thoughts or encrypted database content.
Only use a sharing endpoint that you trust and control.