We built a tool that could impersonate anyone on Twitter. We published it, went for iftar, and came back to find more people trying to break it than we could keep online.
Let me back up. It started as a hobby project, we wanted to take generative AI to its limits and see what it would actually take to clone a person. Not the face or the voice, just enough of someone that you would recognize them in it.
It is a classic Ship of Theseus problem, with countless variables. Since this was a hobby project and not a research lab, we started with two: memory, what a person knows and has said, and articulation, the way they say it. Those two are enough to give a semblance of personality. To borrow from Carl Jung: “People don’t have ideas. Ideas have people.”
The technical limits
Models like ChatGPT are trained on billions of data points, but only what sits in the public domain. To get the semblance of one specific person, you need a lot of personal data, and in 2023 there was no clean way to hand it that.
The walls we kept hitting:
- No personal data. The model has never met you.
- No memory. Through code, ChatGPT does not remember context between calls.
- Tiny context windows. You could give GPT-3.5 about 3,000 words at a time to work off someone’s personality. GPT-4 was about to offer ~24,000, with very aggressive per-word pricing.
- Training is expensive. Training a model on millions of words of someone’s writing gets ultra-expensive, fast.
- A knowledge cutoff. Back then the model only knew the world up to 2022.
- Performance and efficiency. Even when something worked, keeping it fast and cheap was its own headache.
Building a context layer
So we built our own version of a context engine. Very primitive, using Elasticsearch and Google’s NLP engine. The layer does the prep work for ChatGPT: it looks at everything you know about a person, works out what actually matters for the question, and feeds the model only the data it needs to make sense of things.
The model stays the same. You change what it gets to remember.
Testing the engine
For our test, we picked Imran Khan and used his tweets as the memory. Tweets are the easiest way to grab the shape of someone’s thoughts. To decide which ones mattered, we used engagement as social proof: each tweet was weighted by its reactions and replies, so the posts that struck a nerve outranked the throwaway ones. It almost became a feedback loop; the louder a memory had been, the more weight it carried. Then we asked the engine things the base model could never answer as him.
I know you come with conditions, stern and tough But we must follow, no matter how rough We'll cut our spending, and boost our tax We'll reform our system, no more lax
We want to build a welfare state An equal society, no one to hate But we must stabilize first, the economy at large And for that, we need your charge
So, IMF my friend, I welcome you To help us grow, to help us renew Together we'll stand, together we'll succeed And make Pakistan, a land of peace and lead.
In both, the answers came back in his register: his themes, his cadence, the way he would have framed it. Not generic ChatGPT.
Then it got out of hand
We also wrapped the same engine in a sillier, public version: the Twitter look-alike bot.

Drop in any handle and it handed back a bio, a rap, and a dating profile in that person’s voice. That is the tool we published right before iftar. By the time we got back, everything was on fire. We had figured a thousand curious people might try it; instead, every time we scaled it up, another ten or twenty thousand showed up and knocked it over again.
Within three days it had crossed 400,000 users from 194 countries. Dawn, Arab News and Hubspot wrote it up. Most of the traffic came from the US, the UK, and the Middle East. The whole thing cost under $10 in tools and a few sleepless nights to build.
12M+
Reach and impressions
400K+
Users served
<24 hrs
To 100K users
The honest part
It was rough. It hallucinated, the engine was primitive, and the models have moved a long way since.
One early profile confidently gave a former finance minister a master’s from Stanford he never earned, as Dawn caught at the time. We eventually closed the experiment. It cloned a public writing style that got reactions, not a person. That distinction matters.
But the bones were right. What we hacked together by hand in 2023 now has proper names: retrieval, context engineering, model memory. It worked not because the model was clever, but because it was finally remembering the right things.
We built this for fun. If you have questions, or you are looking to build something similar on your own data, reach out.
Ever wondered what the AI-equivalent of you will be like?
— Saad Mughal (@saadthemughal) April 4, 2023
Check out this experiment we did with tweets from @ImranKhanPTI (built with ChatGPT): https://t.co/CCf4VS5LVC
PS: You can add your Twitter handle to make an AI-bot of yourself, too!@alphaventure_av#ChatGPT #AIBot



