Move nodes, open profiles and run three text examples through the interface.
Personal CRM for networking
A CRM in Telegram for people who earn through their connections but forget to keep them warm, with auto-capture of new contacts and AI reminders of who's waiting for a reply.
A CRM product flow with a verifiable demo
Telegram handles quick actions; the web interface provides a network overview.
Extraction covers three examples; a live LLM requires a server-side proxy.
This is how it works: jot down a messy note about someone, and AI sorts it into tidy fields.
From a conversation to the next contact
The CRM captures free metadata automatically, while costly AI runs only after an explicit user action.
A new contact appears
Telegram Business records the person and contact date; VCF import provides another route.
The user forwards useful context
A message or note reaches the bot only when it is worth structuring.
AI turns the note into facts
Name, role, interests, commitments and next step enter one contact card.
The CRM returns it to the work queue
Morning digests, dates, recency and semantic search keep the relationship moving.
Follow up on time
The user sees who is waiting and why the contact matters.
Facts stay editable
AI proposes structure; the human controls the record.
Protect unit economics
Automatic analysis of every message was removed as wasteful.
People who work with people (founders, consultants, investors) pile up hundreds of business conversations in their messenger over a year. Most are forgotten: “that investor was looking for SaaS deals, but that was three months ago.” Keeping a list by hand in Notion gets abandoned within a week and a half. Western personal CRMs are built around LinkedIn, which is blocked in Russia, so the Russian-speaking market was left without a solution.
A Telegram bot plus a mini app and a desktop web client on one database. You forward the bot a message about a meeting, and an AI extracts structured facts into the contact card. Phone-book import via VCF, hierarchical tags, “haven't talked in a while” and birthday reminders, calendar export via an .ics subscription, a morning digest of who's waiting for a reply. Stack: Python, aiogram, FastAPI, SQLite, an LLM for fact extraction and semantic search.
After three days of live use the billing showed about 83 ₽ per day per user. That works out to roughly 2,500 ₽ per user per month against a subscription ten times cheaper. The product would have been fundamentally loss-making.
We worked through the options: trim the prompt (~30% saved, still negative), cache by text hash (the real stream barely repeats), a two-stage gate: a cheap model decides “is there a fact here?”, the expensive one extracts only on “yes” (~40%, still not enough).
The fix: cut auto-extraction entirely. We kept the free metadata: who wrote and when, that's plain SQL. The automation now creates a card for a new correspondent and updates the last-contact date, and the expensive AI only kicks in when the user forwards a message themselves, an explicit action that pays for itself. A side bonus: it removed the legal risk of automatically reading other people's conversations without consent.
The principle that came out of it: you measure unit economics on day three, not after launch. A feature you love gets cut if it doesn't add up in money.
Two hours of diagnosis. The cause: on startup the framework dropped the queue of unprocessed updates for a clean start, and Telegram sends the Business-connection notification exactly once, and if the bot restarts at that moment, it's lost. The connection exists, but the bot doesn't know about it. We went through the options and chose not to drop the queue on startup. As a bonus, updates accumulated during the update reach the bot, and for a CRM that's a plus: facts about new contacts aren't lost. We also added a startup log of active connections so the silent breakage becomes visible.
- Three contact-capture channels: forwarding to the bot, auto-creation from metadata, import from the phone book.
- Two standalone interfaces (a Telegram mini app and a desktop web client) on a shared database.
- The code is covered by automated tests.
- Payments via Telegram Stars, a 14-day trial.
- Semantic search across contacts: finds a person by the meaning of your notes, not just by name.