Personal AI automation
ReviseBot
A voice-note-to-review tool that turns a study topic into a 1, 3, 7 and 21-day schedule.
- My contribution
- Self-hosted bot and scheduling workflow
- Status
- Self-hosted tool / prototype
Actual persistence output
Second law of thermodynamics
Synthetic topic confirmed on
- Day 1
- Day 3
- Day 7
- Day 21
Produced by the real scheduling code using isolated sample data. This is not a Telegram or speech-recognition demo.
The problem
Capturing a study note is easy. Remembering when to revisit it is a separate task. I wanted a small workflow that could accept a voice note, clarify the topic and turn that decision into scheduled review dates.
My contribution
I built a self-hosted Telegram study tool with text and voice handlers, transcription, topic confirmation, SQLite persistence and daily digests. It is presented here as a personal automation tool and prototype, not a proven learning platform or a public service with claimed retention results.
What I built
01 / Capture and clarify
A voice note can be transcribed, then an agent proposes a topic. The pending draft is kept separate from a confirmed topic so interpretation does not immediately become a permanent schedule.
02 / Confirm and persist
Confirmation saves the topic and its four review dates in one transaction. The pending draft is cleared after that write. The schedule below was produced by the actual persistence code using isolated synthetic data.
03 / Return when it is due
A daily job queries the dates due for a chat and prepares its digest. The scheduler is in memory: if the process is offline at digest time, missed digests are not automatically replayed.
Decisions + tradeoffs
Confirmation is a state boundary
A proposed title is not yet a confirmed study topic. That explicit state change keeps a conversational interface from silently scheduling an interpretation the user did not approve.
Test persistence without messaging anyone
For this portfolio, the database module was run against a new isolated SQLite file. Four persisted dates, draft clearing, chat isolation and rejection of invalid inputs were checked without opening the original database or contacting Telegram.
Be precise about local processing
Speech transcription can use local faster-whisper, while topic text can still go to a configured LLM provider. Local transcription does not make the entire workflow offline or private by default.
Checks + limitations
The embedded example tests scheduling and persistence only. It is not a recording of Telegram, speech recognition or a delivered digest. Deployment needs a running process and configured services. I would improve catch-up behavior and add idempotency around repeated confirmations before treating it as a service for other people.
What it delivered
A small automation with an explicit confirmation boundary and a persistent review schedule. In the isolated check, one confirmed synthetic topic became four stored review dates, its draft was cleared and invalid input left no partial topic. The next improvements are catch-up behavior and repeated-confirmation handling.
- Topic confirmation before saving
- Persistent four-date review schedule
- Daily digest workflow