Instaply: My Latest Vibe Coding Project, Two Years of Conversations Revisited

Instaply screenshot montage showing the Inbox, comments grouped by post, emoji reply editor, batch reply review, and Statistics.

I had two years of Instagram comments I hadn’t answered. I wanted to change that.

When someone takes a moment to say something about a photograph, I want to acknowledge it. A thoughtful observation, a question, a few hearts, or a familiar name returning to another post all deserve my attention. But those conversations were spread across older posts, and I had lost track of which ones I had answered.

My latest vibe coding project helped me work through that backlog. It’s called Instaply, and it has already done the work I built it for: the missed comments are now answered, and the unwanted comments are removed.

Instaply is a local web app I built to import, organize, review, and reply to Instagram comments. It gives me an email-inspired workspace, with AI suggestions and translation when I want them, while leaving the final words and public actions with me.

That last part matters. These are conversations around my photography. I want the replies to sound like something I would actually say.

Instaply Inbox with comment search, filters, post thumbnails, and reply controls.
A familiar Inbox gives Instagram conversations a place of their own.

Key takeaways

  • Start with something you actually need. Instaply grew from a specific problem: finding and answering Instagram comments I had missed over two years.
  • Make the conversation easier to find. An Inbox, search, filters, and grouping by post bring scattered comments into a manageable workspace.
  • Keep the final words personal. AI can suggest a starting point and translate a comment. I still read the reply, edit when needed, and confirm the exact recipient and text before sending.
  • Give different actions different meanings. Saving a draft, generating a suggestion, archiving locally, and deleting from Instagram each have their own role.
  • Use the tool, then learn from the work. Sent, Statistics, and the Audit Log show what happened. The user’s guide captures the workflow, and my next experiment will be with ChatGPT dots.

Why this became my next vibe coding project

I have written before about moving from using AI to building with AI. Instaply is a very personal continuation of that journey. I could describe the problem because I was the person living with it, and I could judge whether the result helped by using it on my own posts. In that earlier post, I described an Instagram management app that was still evolving, with unanswered comments, suggested replies, and approval workflows among the problems I wanted to solve. Here, I can share what it feels like to use Instaply to finish the catch-up.

For me, vibe coding means working with AI as a development partner, describing the behavior I want, trying the result, and refining it until it serves a real purpose. With Instaply, that purpose was straightforward: make it easier to return to people who had taken the time to comment.

The broader collection of projects lives on my personal site in My Vibe Coding Journey: Building with Generative AI. It brings together the apps, websites, learning experiences, and experiments that have helped me return to building software. This post is the closer look at one tool and the work it helped me finish.

My workflow uses ChatGPT and Codex from OpenAI. Codex is central to my AI development workflow, and Instaply also uses my existing ChatGPT sign-in through Codex for generation and translation.

An Inbox for conversations around my photographs

Email offered a useful starting point for the interface. Inbox and Sent are familiar places to begin. Search, filters, ordering, and checkboxes make it easier to focus on a particular person or work through a few comments together.

Each comment sits alongside its author, date, and a preview or link to the original Instagram post. That context makes a difference. A reply about a photograph should belong to the photograph and the people involved in making it.

I can browse by individual comment or switch to By Post. Grouping comments by post brings the caption and the conversation together, which helps me return to the context of a particular shoot. Search is useful when I remember a person or a fragment of a comment, while filters can narrow the view to emoji-only comments, accounts I follow, or possible spam.

Instaply By Post view groups comments beneath an Instagram post thumbnail, caption, and link.
Grouping comments by post brings the photograph and its caption back into the conversation.

The interface makes the next decision visible: reply, leave a draft, archive the item from my workspace, or review whether it should be removed from Instagram. I can stay with one conversation long enough to make that decision.

Finding the comments I had missed

Importing is where the catch-up begins. Instaply can bring in comments from a chosen number of recent posts or from posts published within a date range. The date range refers to the posts’ publication dates, which makes it practical to work through an older period deliberately.

The option that made the biggest difference for me was No reply from me. A comment can already have replies from other people and still be waiting for my response. Instaply looks for whether my account has answered, which is the distinction I needed.

Import comments dialog with a 2025 date range and the No reply from me option selected.
The catch-up starts with a date range and “No reply from me.”

That gave me a way to revisit the past two years without relying on memory or scrolling through every post to reconstruct the conversation. It turned a vague backlog into individual comments I could actually read and answer.

Writing replies that still feel like mine

Once a comment is in the Inbox, I can write a reply directly, save a draft for later, or ask Instaply to suggest a starting point. These are separate steps. Generating a suggestion does not save it automatically or publish it, and saving a draft leaves the reply in my local workspace.

Instaply reply editor with Generate, Save Draft, Emoji, and Send to Instagram controls.
Write a reply, save a draft, or generate a suggestion to read and edit.

The suggestions draw on the comment, caption, contributor credits, dates, available discussion, earlier replies or suggestions, and the guidance I provide. I can ask for a shorter thank-you, a more reflective response to an older post, or wording that respects the collaborators’ contributions.

Those details matter in photography. A compliment might be about a model’s presence, a designer’s work, the jewelry, the location, or the photograph itself. I want the reply to acknowledge the right contribution. Dates matter too: a reply to an older post should make sense today. That attention to the people behind the image connects with the questions I raised in Who Controls Fashion’s AI Future?, including authorship, consent, and creative control. In this smaller workflow, I want assistance that respects those contributions and leaves the final words with me.

Instaply also checks suggestions for repetition within a post. That helps when many people have left similar compliments, because a series of nearly identical thank-you messages can feel impersonal. The checks help me prepare a reply, but I still read it. A generated sentence is something to consider, not evidence that every detail is correct.

One useful boundary is that the generation service does not receive the photograph as visual evidence. It works from the available text and context. If a reply depends on what is visible in an image, I need to open the original post and look for myself.

Before anything goes public, Instaply shows the recipient and the exact reply for confirmation. I can read those words one more time, send them, or cancel and make another edit. Confirmed delivery is what moves a comment to Sent.

Blue, a cobalt speech bubble, reads a reply card while Coral, an orange heart, checks it with a magnifying glass.
Meet Blue and Coral, the Instaply Handbook’s guides. Read it together before you send.

Small touches that make a long session easier

Sometimes a brief reply with an emoji is enough. The Favorites picker puts those small gestures close to the editor. Selecting an emoji only adds it to the draft text, so the same review and confirmation still apply.

Instaply Favorites emoji picker beside the reply editor in the Inbox.
A small emoji picker is useful for the short, warm replies many comments call for.

Keyboard shortcuts help with the repeated steps too. On my Mac, Option + Shift + G generates or regenerates a suggestion, Option + Shift + D saves an Inbox draft, and Option + Shift + R opens send review. The review shortcut does not send a reply. That final decision stays explicit.

Catching up in batches, one person at a time

A backlog of two years calls for a workflow that reduces repeated navigation. Batch tools let me select several comments and prepare replies together.

There are two modes: One reply for all, when a shared response fits the selected comments, and Different reply for each, when each person needs their own answer. I can generate individual suggestions and review each one in its own editor before confirming the batch.

Batch reply dialog with Different reply for each selected and separate review fields for two recipients.
Batch preparation still leaves room to review each person and each reply.

A question and a compliment usually call for different responses. Even similar compliments can deserve different wording. The batch view helps me prepare the work in one place, while still looking at each recipient and each reply.

Selection applies to eligible comments on the current page, including collapsed groups, rather than quietly gathering unseen pages. It is a useful boundary when I want to know exactly which conversations I am handling.

Saying hello across languages

Photography brings people together across languages. Instaply can display an English translation beneath a comment while preserving the original text and labeling the detected language.

An Indonesian Instagram comment with its English translation displayed beneath the original.
The original comment stays visible alongside its English translation.

Generated replies normally begin in the commenter’s language, followed by an equivalent English version. Both are editable parts of the same reply, and both are sent if I confirm them. I can also give explicit guidance to reply in one language only.

I read both versions before sending. Informal wording, abbreviations, and tone can be difficult to translate. The translation helps me understand the conversation and prepare a response, while the original remains there for reference.

Keeping moderation clear

Catching up also gave me a chance to remove unwanted comments. The Possible spam filter helps surface items that deserve a closer look. It gives me a review queue, and I decide what belongs on my posts.

Deleting from Instagram requires its own confirmation, identifying the comment and explaining that deletion removes the comment and its replies. That is a different decision from finishing my local review.

Confirmation dialog identifying an Instagram comment and warning that deletion removes it and its replies.
Deleting from Instagram has its own confirmation. Archiving locally is a separate action.

Archive clears the item from my local workspace while leaving the Instagram conversation in place. It removes the local comment content and associated draft or reply content, retaining an identifier to prevent routine reimport. Archived is therefore not a folder of recoverable messages or drafts.

That distinction is worth understanding before using either action. If I want to keep an unfinished reply, I save the draft. If I have finished reviewing an item locally, I can archive it. If I want the comment removed from Instagram, I use the separate deletion workflow.

Familiar faces and a record of the work

Instaply can import the accounts I follow from the following.json file in an Instagram account download. That local snapshot supports the Accounts you follow filter and gives me another way to focus on people I know or recognize.

Instaply dialog for importing following.json from an Instagram account download.
Importing my following list adds another way to focus on familiar accounts.

Sent lets me look back at confirmed replies and their dates. Deleted records comments removed from Instagram. Archived retains the identifiers used to keep finished local items from routinely returning in a later import.

Statistics gives me a broader view: comments imported, replies generated, replies sent, recent activity, and the current workspace. Generated suggestions and sent replies are different measures, just as historical activity and the current queue sizes are different measures.

Instaply Statistics showing capture-time counts of replies sent, comments imported, and replies generated.
Statistics records the work completed. These are capture-time figures, not a live dashboard.

The Top commenters view is another useful way to see who has been part of these conversations, with a breakdown of text-based and emoji-only comments across retained records. The screenshots show real capture-time examples. They are not live figures or a count of every interaction on my Instagram account.

Top commenters panel showing Instagram handles and text-based versus emoji-only comment counts.
The overview includes the people who keep showing up in the conversations.

When I need to understand an individual action, the Audit Log shows its time, outcome, and explanation, with further detail available. API activity in Statistics also distinguishes requests used for importing, sending, and verification. An attempted action and a confirmed result should be easy to tell apart.

Instaply Audit Log showing reply review, confirmed delivery, and send reservation events.
The Audit Log gives each action a record I can inspect when I need more detail.

Local on my Mac, connected when it needs to be

Instaply runs locally on my Mac in Safari or Chrome and stores the workspace locally. It still connects to Instagram to import comments, send confirmed replies, and perform moderation. Generation and translation use my existing ChatGPT sign-in through Codex, rather than a separate OpenAI API-key integration.

Local describes where the app and workspace run. It does not mean that importing, sending, generating, or translating happen entirely offline. Those service connections are part of a larger AI ecosystem. My post Nvidia’s Empire Is Taking Shape Beyond the Chip explores how infrastructure, software, and platforms shape that ecosystem. Instaply brings the question closer to home: which parts of my workflow do I control locally, and which depend on a connected service?

Settings keeps the Instagram connection and workspace maintenance controls in one place. The guide explains those controls, including the difference between clearing comments and a full purge. They deserve a deliberate decision, especially when there are drafts or history I still want to keep.

What building Instaply has taught me

I have explored the larger implications of AI in AI and Software Developers: Why This May Be the Best Time in History to Build Software. With Instaply, those ideas become very concrete: define the behavior, make the distinctions clear, use the software, and check whether it actually helps.

The satisfying part is seeing a tool fit a real need closely enough that I can finish work that had been waiting. The interface decisions matter because they affect how I move through a conversation. The review steps matter because the words appear under my account. The documentation matters because a tool should be understandable after the development conversation has ended. That is a personal example of the changing rhythm of work I explored in The Future of Work: How AI Is Redefining the Workplace in 2025. Here, the practical benefit is having more room to give each conversation my attention.

It is also a small example of what I described in Meet the Builder Economy: turning a problem I understand into a useful tool. Here, the same person taking the photographs can also shape the workspace used to respond to people around them.

What I want to try next: ChatGPT dots

My next experiment is with the recently announced ChatGPT dots. I am looking forward to exploring how a continuing agent might help me keep a project moving between conversations, with clear instructions about what it can do and what needs my review.

OpenAI’s introduction to getting started with a dot describes agents that can work toward ongoing goals using their own cloud computer and connected apps. I covered the announcement in the Newsroom in OpenAI Dots: What the Always-On Agent Does and When to Use It. In Introducing the Newsroom, I explain why I brought photography, fashion, and AI coverage together, with clear sources and a distinction between evidence and uncertainty. That is how I want to approach dots too: understand the announcement, then learn from a defined experiment.

I would like to begin with something small and reviewable, perhaps preparing a project progress note or organizing a defined set of follow-up tasks. That is an idea for a future experiment. Instaply’s current reply workflow remains the one described here, with me reviewing and confirming the public words.

Frequently asked questions about Instaply

What does Instaply do?

Instaply is my local web app for importing, organizing, reviewing, and responding to Instagram comments. It combines an email-inspired Inbox with search, filters, drafts, optional AI suggestions, translation, batch review, moderation, and activity records.

Can Instaply find comments I have not answered?

Yes. The No reply from me import option looks for comments my account has not answered, even if other people have replied. Imports can cover recent posts or posts published within a chosen date range. That is how I worked through my two-year backlog.

Does generating a reply automatically post it to Instagram?

No. Generate prepares a suggestion for review. Save Draft stores a local draft. Sending requires a separate confirmation of the exact recipient and reply. A generated suggestion or saved draft is not a public reply.

Can I prepare several different replies at once?

Yes. Batch review supports one shared reply or a different reply for each selected comment. Individual suggestions remain editable, and I review the recipients and words before sending. Selection covers eligible comments on the current page.

How does translation work?

Instaply can show an English translation beneath the original comment. Generated replies normally put the commenter’s language first and an equivalent English version second, with both editable and sent together. Explicit guidance can request one language instead.

What is the difference between Archive and Delete from Instagram?

Archive removes local content and related drafts while retaining an identifier to prevent routine reimport. It leaves Instagram content in place. Delete from Instagram permanently removes the comment and its replies after a separate confirmation. Archived content is not a recoverable draft folder.

Does Instaply work offline or need an OpenAI API key?

The app and workspace run locally on my Mac, but Instagram actions, generation, and translation require their connected services. In my setup, generation and translation use my existing ChatGPT sign-in through Codex and do not need a separate OpenAI API key.

Have I integrated ChatGPT dots into Instaply?

No. Dots is the next experiment I am looking forward to trying. It is not part of the current Instaply workflow described in this post.

Where can I read the Instaply Handbook?

The PDF download below is the illustrated Instaply Handbook, October 2026 edition. It includes 53 pages across 22 chapters, with practical walkthroughs, quick answers, clickable contents, and bookmarks, from the first import through batch replies, translation, and moderation.

Two years answered, and a better way forward

Two years of missed comments are now answered. The unwanted comments are removed. And I have a more manageable way to keep those conversations going.

That is a satisfying result of vibe coding for me: a tool built around something I actually needed, then used to do the work. The conversations were already there. Instaply helped me return to them.

Blue, a cobalt speech bubble, holds an open book while Coral, an orange heart, points to its gold bookmark.

I have put together an Instaply Handbook for anyone who wants a closer look at the workflow. The illustrated handbook walks through the app, explains the choices that matter, and makes it easy to jump to a particular task. The screenshots throughout this post are real examples from the application, captured while the original guide was being prepared.

Discover more from Tocatlian Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading