Over the last two years, I kept returning, often without realizing it, to one question:
If intelligence becomes cheap, abundant and capable of acting, what should its relationship with an individual human actually look like?
These are some of the products I designed and built with AI while exploring that question.
Projects
- SF Housing An AI that does my SF apartment search for me
- SF in Motion See how SF moves on Lyft Bike
- Gatekeeper What if your screen time blocker was smart?
- Readaily One book-grounded essay each day, chosen for what matters to you.
- Wordle Arena Can you win Wordle against an AI?
- Investment Knowledge Base Autonomous equity research for my portfolio every day
- Trove A Google for my life's photos, videos, notes, songs
- KnowYourMacros Turn recipe videos or multilingual speech into nutrition and macros.
- Attentn Know what deserves your attention before spending your attention on it.
- MRI Analysis How good are the models at diagnosing conditions vs doctors?
- Lenny Podcast MCP Let your AI guide you with Lenny's podcast wisdom
- Tidy Never let your Desktop screen fill up with a bunch of screenshots
- Gooey Claude Code for people who don't live in a Terminal. Before Codex and Cowork apps existed.
- Apartment Finder A Mac agent that searched listings and assembled a real apartment shortlist.
- Full Signal Get all the signal from X without the noise
- ScreenTracker Always-on AI that observes how you use your computer, and nudges when required
- Maia A proactive AI companion that remembered and reached out over time.
- AI Wrapped Spotify-style Wrapped for your Claude and ChatGPT history.
- Simple Reader Ask the passage, chapter or book without leaving the page.
- RobinYou Stake money on a goal and earn it back by following through.
- DeeperSeeker Multi-agent system to perform research, analysis, and writing.
- SurvAI Synthetic personas created on-demand for product and market research
- ChatGPT × Stable Diffusion Generate images directly from ChatGPT. Back when GPT-4 just launched and image generation was not available in ChatGPT.
- Llaman Prompting Generate beautiful images without writing long, complex prompts
- GitaGPT Ask a question or moral dilemma and receive an answer grounded in the Bhagavad Gita.
- productAIze Describe a product idea and get a first draft of the product work around it.
SF Housing
An AI that does my SF apartment search for me
Built October 2026
Searching for an apartment in SF is a full-time job.
And I got sick of it. So I built something to take care of it. It goes through every listing across Facebook groups and Craigslist every couple hours, picks only the relevant ones based on my several criteria, then further checks them against all the things I care about, to capture and enrich them on my personal Craigslist-like site.
For each relevant listing, it
- Populates it on the map
- Captures how far it's from places I frequent
- Scores it based on my preferences
- Adds price, term, furnishing information
- And a lot more
Most importantly, it handles outreach and coordination - sending emails, texts, and Facebook messages to landlords, and notifying me when something requires my attention. Iterating on this took some time initially, but it has been a huge time-saver since.
At the end of 2025, I built Apartment Finder, a Mac agent that searched Craigslist and handed me a shortlist. Less than a year later, the AI doesn't just find apartments - it runs the whole search, from the first message to the viewing.
In the near future, I imagine an AI would be handling communication on the landlord side as well, because eventually more and more people will have an AI doing this work for them, and the landlord will be overwhelmed with coordination and communication, if they aren't already.
SF in Motion
See how SF moves on Lyft Bike
Built September 2026
I'm a daily user of Lyft Bike. When I open the app to find bikes, I see a station have 15 bikes at one time of the day. At a different time, there's just 2. On a weekend at that same time, there could be 8.
That made me wonder - how does the fleet of Lyft Bikes move around SF? What story does the data tell?
SF in Motion was a result of that.
Gatekeeper
What if your screen time blocker was smart?
Built July–August 2026
I've tried screen-time blocking apps, and I found them to be too rigid.
There's a list of apps that are eating your time, you disable them - and then if you tried to use them - they're unavailable for the duration you picked.
Generally, a lot of times when you try to open the app - the app being blocked is good because it's preventing you from getting distracted.
But there's times when accessing them is actually useful - maybe there's someone you need to reply to asap, you're at an event and you're trying to connect with someone, and the app's blocked for 5 more hours.
Then you'd have to entirely disable the blocker, which didn't seem like a good experience.
What if the screen time blocker was smart, and when you tried to open an app you selected to be blocked, it would ask you why you're trying to open it, it'd ask you what your reason is.
If it made sense, it'd disable the blocker for a duration it picks - 5 or 10 or 15 minutes. If your reason wasn't valid, it'd reject and the apps stay blocked.
You'd say - hey the AIs are stupid, I'll just come up with some emergency every single time and it'd open the gate every time.
No - here's where it remembers the previous interactions it's had, and if it sees a pattern, it's not going to give in.
Built this for a hackathon. People actually loved it, and wanted to try it out. But as I was trying to make it reliable, there's some Apple restrictions that do not let your app identify the apps picked - so it couldn't tell which app you were trying to open, which it needs to judge your reason.
So the workaround was users having to tag the apps they blocked with their names. I spent a few days trying other ways around it before settling on that.
Later I tweaked it for my own use, so it changed to fit what I needed: the AI gate went away, I added time windows, and it became a simple blocker with a couple of passes that let you unblock apps for 15 minutes.
Readaily
One book-grounded essay each day, chosen for what matters to you.
Built May–July 2026
There’s 1000s of books that I’ll never get to read.
If I live to 80, and I read 2 books a month, I can still only read a little over 1000 books.
Many books I won’t get to know and enjoy, but there’s many books I’d want to learn from - many books I wouldn’t know I needed.
That’s why I built Readaily - it does one simple thing well.
Every morning at 7am, it sends me an essay in the style of writing I enjoy - one that takes me no longer than 5 minutes.
That’s it. There’s no 1000 generic book summaries, no content library lying around. Just one thing.
After I read it, I pick one book for tomorrow - it offers me 5 suggestions everyday based on what it thinks I like - so I either pick a new book or continue with the same one.
Next day, I have another 5 minute essay to read. I’ve been enjoying this - looking forward everyday to the essay that lands tomorrow.
Wordle Arena
Can you win Wordle against an AI?
Built June 2026
Why I made it
Language models had become surprisingly capable at tasks that look like human intuition. I wanted a fair, playable way to experience that competence rather than merely read about it.
What it became
Wordle Arena is a complete human-versus-Gemini game with separate boards, isolated feedback, asynchronous AI turns and the same information available to each player. The browser interface, game state, API and tests were built as one working system.
What happened
It became a small but complete public-facing experiment: a familiar game turns an abstract claim about model capability into a contest anyone can understand by playing.
Investment Knowledge Base
Autonomous equity research for my portfolio every day
Built May–June 2026
I have two Codex automations that run every day. The first runs every morning, pulls a portfolio snapshot using SnapTrade, news regarding equities and companies I care about, X activity - and then reviews its knowledge base, and automatically updates where necessary.
The KB is primarily for Codex, so it can form a more complete picture with each passing day.
I just read the daily brief it prepares and ask follow-ups as needed.
The second automation runs a few times a day - primarily focused on X, and if there's something important that needs my attention, it emails me right away.
Helps me understand what the public consensus is, and how the companies/sector are performing, and if something changed w.r.t my beliefs.
Trove
A Google for my life's photos, videos, notes, songs
Built March 2026
Your Photos app is a gateway into your life.
Things you care about, people you spend time with, foods you enjoy, changes in your life over the years, places you've been to.
The apps do an alright job of conveying its value by sharing memories every now and then, but I always wondered how much more value lay in your photos and videos.
To my delight - earlier this year, Google released Gemini Embedding 2, a model that lets you embed text, photos, audio, and videos into one shared space.
I spent the next couple of days gathering over 30,000 of my photos, videos, notes, and music over the last decade.
Embedded them, built a Google over it. I called it Trove.
I could enter keywords like you do in Google, and it would return the closest matches across text, photos, and videos.
For example - if I typed New York, it would return my writings about my time in NYC, photos of Manhattan Bridge and Statue of Liberty, videos in Central Park, and Jay-Z's “Empire State of Mind” song among other results.
If I searched for Indian food, it would show everything most relevant to Indian food. But that's not it - I could open any photo, crop just a part of it, like the naan, and search with that. It would return the photos and videos closest to that crop.
It was very impressive, but it still required that I ask questions and look at results to see the story it tells.
So I wanted to take it one step further - if I made it queryable for AIs, what would they ask, what story would my data tell?
So I gave Codex a goal to make it queryable for AIs like Codex.
Then I gave Codex another simple goal, asking it to learn about me.
This unlocked something profound.
It thought for a while, decided what questions were worth asking, then turned them into queries, learned from the results, and did a few rounds of this.
It was able to tell
- How my friend groups changed over the years
- What kinds of foods I enjoy
- My interests (through screenshots)
- Places I've lived in, visited
And a lot more!
KnowYourMacros
Turn recipe videos or multilingual speech into nutrition and macros.
Built April–May 2026
Why I made it
A recipe video rarely tells me whether the dish fits my goals, and ordinary food logging asks people, especially my mother, to translate a natural meal into a rigid database form.
What it became
The app accepted YouTube, Instagram and TikTok recipes, extracted their ingredients and estimated nutrition. A second flow let someone describe a meal naturally in Telugu, English, Hindi or a mixture, then review the transcript, ingredients and portions before saving it.
What happened
Later versions grounded ingredient estimates against USDA FoodData Central and the Indian Food Composition Tables and exposed the match provenance. The complete workflow worked; whether it could become an effortless daily habit remained unanswered.
Attentn
Know what deserves your attention before spending your attention on it.
Built February–May 2026
Why I made it
Read-later products are usually warehouses of good intentions. I wanted help deciding whether something deserved forty minutes before I gave it forty minutes.
What it became
Attentn accepted shared videos, posts, articles and PDFs, summarized them, rated their relevance against a personal interest profile, explained why they mattered and saved them in an attention inbox for follow-up questions.
What happened
I built it across iOS, a Share Extension, Chrome and the web. It exposed an important product tension: the context needed for good personalization can delay the first useful moment, and many people do not want their existing consumption behavior interrupted.
MRI Analysis
How good are the models at diagnosing conditions vs doctors?
Built February 2026
Why I made it
A medical scan contains far more information than a patient can interpret alone. I wanted to learn how far general-purpose coding agents could go when asked to inspect the underlying imaging rather than only summarize a radiology report.
What it became
Across three Claude Code sessions and one Codex session, the agents converted and inspected 132 DICOM images, revisited relevant slices and produced independent analyses of my knee MRI.
What happened
This was a real personal workflow, not a medical device or clinically validated diagnosis. It showed how agents can coordinate file conversion, visual inspection and written reasoning, and why medical use still requires unusually careful uncertainty and professional review.
Lenny Podcast MCP
Let your AI guide you with Lenny's podcast wisdom
Built January 2026
Lenny's Podcast has hundreds of useful conversations, but it was hard to remember which guest talked about a problem, or to find the original context.
So I built an MCP over all the podcast transcripts. You add it to Claude or ChatGPT, ask a question, and it searches the transcripts, pulls the episode and answers with quotes from what the guest said.
Claire Vo's ChatPRD lists it in their Lenny's Podcast transcripts repo.
View source
Tidy
Never let your Desktop screen fill up with a bunch of screenshots
Built December 2025
Why I made it
Screenshots and downloaded images quietly accumulate meaningless filenames. I wanted to explore AI that improves the environment behind the scenes rather than waiting in a chat box for instructions.
What it became
The first utility watched images and used Gemini's visual understanding to give them useful names. It later became a small API product with image summaries, signup, usage tracking, file validation and rate limits.
What happened
Tidy stayed a compact experiment, but it made a distinct interface idea tangible: some of the most useful AI may be software we rarely address directly because it continuously takes care of small cognitive chores.
Gooey
Claude Code for people who don't live in a Terminal. Before Codex and Cowork apps existed.
Built 2025
Claude.ai and Claude Code use the same model. But one shows you how 2024 was, and the other shows you what 2026 will look like.
BUT, using Claude Code requires that you go where it lives - Terminal (AKA the green screen app you've seen from Matrix). It comes with a learning curve, and an interface that's not convenient at all. So we are in a world where only a small percentage have seen what the state of the art looks like.
As someone who was once not technical, I do not want to see that continue. That's why I built Gooey. With Gooey, my only goal was to show the vast majority of people who are not technical a glimpse of the future. An AI that can use your computer and work with files like you do. In an interface that requires zero learning.
I want it to not go into technicalities too much and instead ask me the kind of questions I can answer - about UX, about what the requirement actually is, what problem we're trying to solve, etc. I want it to be proactive - when we start a new session, instead of me having to start the conversation - I want IT to first review what the codebase is about (without wasting too many tokens) and then ask me what brings me there today.
I've so far used it to: organize my Downloads and Desktop, clean up my Mac's storage, find me apartments on Craigslist and create a powerpoint for it, search for leads for a project I was working on, and build itself.
Apartment Finder
A Mac agent that searched listings and assembled a real apartment shortlist.
Built November 2025
Why I made it
Apartment search is not really a filter problem. The useful judgment lives in vague preferences, trade-offs, neighborhood context and details scattered across hostile listing interfaces.
What it became
I built a SwiftUI Mac agent that combined web search and retrieval, browser computer use, Claude Agent SDK orchestration and clarification questions. It navigated Craigslist and produced an apartment-research shortlist from my actual criteria.
What happened
It was a curiosity and a real personal task rather than a company. Still, it offered an early look at an AI acting as my delegate in a marketplace, carrying preferences across interfaces instead of making me manually operate every search box.
Full Signal
Get all the signal from X without the noise
Built November 2025
I get most of my signal from Twitter. But the X algorithm is garbage now. The value is buried under rage bait and noise.
So I built Full Signal.
Pick accounts you care about. Claude reads their tweets and emails you a morning digest of what's worth knowing.
ScreenTracker
Always-on AI that observes how you use your computer, and nudges when required
Built October–December 2025; used through April 2026
I sometimes open social media for something, then forget why I opened it, spend the next 10 minutes scrolling, close it and wonder wtf I opened it for.
So I built an AI that regularly takes a screenshot of my laptop, then decides what I'm doing. Just silently works in the background.
After every screenshot, it takes a note of what I was doing. At the end of the day, all the notes are run through an LLM which summarizes how the day went - what I did, what I should be called out on.
If I didn't touch the keyboard or mouse for 2 minutes, it took a photo through my webcam to check if I was still there - reading or watching something, or on my phone and gone.
It ran on my laptop for six months - a screenshot every 20 seconds, 88,167 notes, about $15 a month.
Every night it wrote me a recap. One from November 4th:
You shipped something and immediately started looking for the next thing.
Then you found it: BJ Fogg's “Persuasive Technology” from 2002. You spent the next 3-4 hours in a state I can only call intellectual flow - reading the book, taking notes, consulting Claude about messaging, researching how Fogg's predictions played out in YouTube Shorts and ChatGPT and Duolingo.
I'm thinking about AI that is continually watching what you do - it'd be pretty cool if it can learn more about you as a person through that. Perhaps it notices the kind of music I listen to, or the kind of articles I read and suggests similar ones.
And this level of monitoring cost just $15 a month then. In 2027, it'd probably cost 50 cents a month. Which worries me. Because mass surveillance requires not merely capturing data but also understanding it. For the longest time, that was not practically feasible because of the manpower and costs involved. But it's now cheap and will only get cheaper. Which means society will need to take concrete steps to avoid this outcome.
One idea from back then stuck: before opening a site, ask me what I'm opening for. Nine months later, that became Gatekeeper.
Maia
A proactive AI companion that remembered and reached out over time.
Built March–September 2025
The rate of AI progress is incredible - we now have AI that can generate text, images, videos, songs, write code, and do a million other things. Then I look at social media - I see so much AI generated slop. We have rocks that can talk back - and this is what we choose to do with it? Generate slop that wires us to consume this content? No, AI has to serve a better purpose.
I started out building an AI that's there to listen - that understands you, grows with you, and helps you live a better life. But using it, I realized that I don't need an AI friend for the sake of it. I instead want an infinitely patient, all-knowing entity to help me lead a better life. That's why I built Maia - this is an AI that understands what you want to do, remembers patterns, calls you out when you're slipping, and nudges you to be the best version of yourself.
You can have a trainer for physical fitness, why not have one for mental fitness which is arguably a lot more important?
So I built an AI that remembers and maintains one continuous conversation forever. But memory alone wasn't enough - the real unlock was giving it the ability to notice patterns and reach out proactively with ideas, suggestions, nudges.
View on the App Store
AI Wrapped
Spotify-style Wrapped for your Claude and ChatGPT history.
Built October–December 2025
This was the time I was building Maia and wondering how I could solve the cold start problem where users who download Maia get benefit from hour 1, because even if your app has memory and proactivity - the memory won't be immediately useful and there's no differentiator vs ChatGPT because we need to build memories over a good number of messages, and users may churn before they get to that level. So I was considering if I could use "Bring ChatGPT/Claude history" and bootstrap their memories and useful context about them through it.
So I got my data export and was considering how to use it, and that's when I noticed how many chats I had, and what my first message to it was, and stuff - and so I built a few stats showing how I used Claude. Then I decided that "ok this is interesting" and shared it with a friend who also was curious to check theirs out. So I thought, let's make it less like a report and a better visual experience - AI Wrapped came out of it. First built it for Claude, then extended it to ChatGPT.
Released it around Wrapped season, and was surprised to see it get usage with limited marketing. I posted on Tiktok and Instagram but that was mostly it. It got us 5k users over 70 countries in the next six days, which was pretty cool.
I did not end up using it in Maia as a way to bootstrap memory because I'd moved on to other projects, but it was a useful experience in that the product I spent very little time on got significantly more traction than ones I spent weeks or months on.
View source
Simple Reader
Ask the passage, chapter or book without leaving the page.
Built September 2025–July 2026
I read books on the Apple Books app, and whenever I have a question, I find myself switching to ChatGPT or Claude, and discussing the contents of the book with it. But it would not have access to the book, and it was also a clunky way to clarify and understand the book as I'm no longer looking at the contents of the book but just responding on a chat interface.
I felt there had to be a better way - it was hard to imagine how Apple Books still looked the same as it did 5 years ago. So Simple Reader was an attempt to bring Apple Books into 2025.
You have the same clean, familiar Books-like interface to read the book, but in case you'd have a question, want to clarify a snippet of the book, you select it and you can ask a question inline. No separate chat interface, just discussing right where you are.
And in case you wanted to have a longer discussion about a chapter or the book as a whole, you could just expand it to a sidebar and discuss the book while reading.
An extension to this was a voice-to-voice experience which required no typing, you discuss the book hands-free.
Now the next time I was reading an Iain Banks book and the paragraph was too dense for me, I didn't have to switch tabs.
View original post
View source
RobinYou
Stake money on a goal and earn it back by following through.
Built August 2025
Won first place at a hackathon on August 30, 2025 by building an AI that takes your $
Specifically, I built RobinYou: an accountability app where you stake real money on completing tasks.
Here's how it works: based on everything it knows about you, the AI suggests what you should be working on. Then comes the interesting part - you negotiate specifics of the task and put real money on the line (say $10). Complete the task by deadline? Get your money back. Don't? Money's gone.
The idea behind it is simple - losing $10 hurts twice as much as gaining $10 feels good.
LinkedIn post
DeeperSeeker
Multi-agent system to perform research, analysis, and writing.
Built November 2024–February 2025
I had to copy the python code output sent by the AI, and then run it manually in the notebook, then copy not only the code output, but also save the plots manually and rename them manually. I had to manually copy the markdown output of the written agent, and then convert it into a .docx and then manually paste the images in the document.
We now use AI for many different things at work: for planning, for analysis, for writing, and to search for information. What if we have AI do all of them at once, and even let the AI decide when to perform which step?
That was the attempt behind DeeperSeeker (thanks for the name, OpenAI). Because data analysis, research, and writing reports are core to many roles in knowledge work, I was curious to see how all of this could fit in, can a group of AIs work together to create something useful, how good the quality of that would be, whether they can maintain coherence throughout, and what failure modes will it result in.
I've been writing about why AI is a big deal, and why it will continue to improve - this is an attempt to show not tell. From the time you provide your research objective and any relevant context documents you have, it takes a little over 2 minutes in total to read through the documents, research, plan, analyze, and write a detailed report.
SurvAI
Synthetic personas created on-demand for product and market research
Built September 2024
Why I made it
Ask one model what people think and it tends to produce one smooth, average answer. I wanted to know whether simulated people could retain distinct backgrounds, preferences and contradictions across a research conversation.
What it became
SurvAI created synthetic personas, had them answer surveys and hold AI-to-AI Mom Test interviews, ran those conversations in batches and assembled conclusions across the population.
What happened
The working system explored both the promise and the central failure mode of synthetic research: models can simulate a useful range of perspectives, but only when the persona construction and prompting resist collapsing everyone toward the same voice.
ChatGPT × Stable Diffusion
Generate images directly from ChatGPT. Back when GPT-4 just launched and image generation was not available in ChatGPT.
Built April 2023, at an OpenAI hackathon
Why I made it
Image generators could produce remarkable results, but using them still meant translating an idea into model-specific prompts and repeatedly starting the interaction over. I wanted ChatGPT to carry the intent and context across the creative process.
What it became
I built a ChatGPT plugin with a FastAPI service, an OpenAPI specification and Replicate's Stable Diffusion model. ChatGPT turned the conversation into an image prompt, called the generator and used subsequent requests to revise the prompt and generate another image without making the person operate the underlying model directly.
What happened
I built the plugin at an OpenAI hackathon before ChatGPT plugins were generally available, then released it publicly in April 2023. It did not anticipate DALL·E 3's model quality or perform local pixel editing; it anticipated the product experience: ChatGPT expanding an ordinary request into an image prompt, generating the result and carrying the context through conversational revisions.
View source
Llaman Prompting
Generate beautiful images without writing long, complex prompts
Built August–September 2023
Back in early 2023, the image generation models were quite capable, but they required the user to type paragraph long prompts filled with obscure artistic styles, resolutions, references in order to leverage its capability.
I wanted to remove this barrier, so I decided to fine-tune a model that could take a prompt in simple words and turn it into a prompt suitable for the image generation models.
To achieve that, I used Claude 2 (yes, Claude's first public model) to construct instruction-and-prompt pairs from a collection of roughly 15,000 high-quality image prompts, then fine-tuned Llama 2 13B on Replicate to translate a simple human description into a model-ready prompt for Stable Diffusion, Midjourney or DALL·E.
View source
GitaGPT
Ask a question or moral dilemma and receive an answer grounded in the Bhagavad Gita.
Built February 2023; maintained through February 2024
Why I made it
The Bhagavad Gita contains a large body of thought about duty, conflict and how to act, but finding the passage relevant to a personal question still required knowing where to look and how to interpret it.
What it became
GitaGPT embedded the verses, retrieved the passages most relevant to a person's question with Pinecone and gave those passages to an OpenAI model as grounding for its response. The Streamlit interface also displayed the source verses beneath the answer.
What happened
I iterated on the public project across 65 commits and kept it working as the underlying model and retrieval APIs changed. It was an early expression of a question I later returned to in reading and wellbeing products: how can AI make an existing body of wisdom personally useful at the moment someone needs it?
View source
productAIze
Describe a product idea and get a first draft of the product work around it.
Built December 2022–July 2023
Why I made it
Turning the beginning of a product idea into a useful artifact often starts with a blank document and a large amount of implicit product knowledge. I wanted to see whether a person could begin with the idea in their own words instead.
What it became
A person described the product in two or three sentences, selected the artifact they needed and received a first draft. The Next.js application could produce a product requirements document, suggest software and skills needed to build it, or create a concise email summary using an OpenAI completion model.
What happened
I began productAIze in December 2022, the same month ChatGPT was released, and continued iterating on it into 2023. Its outputs would feel familiar now; at the time, it was my first attempt to turn natural-language interaction with a model into concrete professional work rather than a chat response.
View source