Workflow Hub

Share your best AI workflow. We could show it to 2M+ people.

Every day, we feature the community's top-voted AI workflow in The Rundown newsletter.

Clean Up Near-Duplicate Artwork Photos with an AI Visual Checklist

Clean up near-duplicate artwork photos with a visual checklist THE PROBLEM I had hundreds of photos of my handmade collages. Some showed the same work photographed at different times, from different angles or against different backgrounds. Others were cropped versions, detail shots or useful making-of photos. The duplicate finder in my image manager missed real matches and suggested unrelated collages instead. Simply keeping one file from each group would also have thrown away useful material. THE WORKFLOW 1. Export a working set and preserve the filenames. I exported the images from Eagle. Smaller copies made the collection easier to upload, while the original-resolution files stayed on my computer. Keeping the filenames intact made it possible to apply decisions to the originals later. 2. Ask AI to compare the artwork, not just the whole photograph. The comparison looked for matching local image details and their relative positions. This helped connect photos despite changes in angle and background. Candidate groups still needed review: two collages might contain the same clipping, and a detail photo might overlap with a wider shot without being redundant. 3. Turn the results into a visual decision page. The AI produced a standalone HTML file with photos grouped side by side and their original filenames underneath. I requested a “Keep” checkbox beneath each candidate and a category dropdown: “Collage” or “Making of”. Multiple images could stay in either category. One photo might show one part clearly while another preserved a different part better. I made the decisions; the AI did not choose a winner automatically. 4. Validate and export my choices. The page flagged any group with nothing selected and any selected photo without a category. Photos without a confirmed match were preserved separately. A download button exported my decisions as a small JSON file, which I sent back to the AI. 5. Generate a local cleanup script from that exact selection. The resulting Windows script checks the expected files, asks me to confirm the folder, sorts the retained photos into “collages”, “making of” and “loose items”, and sends rejected photos to the Recycle Bin. It targets the ordinary export folder, not Eagle’s internal library. The loose items can then be sorted manually before reimporting. WHAT THIS PRODUCED From 296 photos, the review grouped 204 into 90 candidate groups and left 92 without a confirmed match. My final choices retained 96 collage photos and 23 making-of photos, plus all 92 loose items: 211 retained, 85 designated for removal. The checklist and selection were completed, and the script was generated. At the time of writing, I had not yet run the cleanup on Windows. WHY IT HELPED The key was separating three jobs: finding likely matches, deciding what matters, and applying those decisions to files. “The same artwork” does not necessarily mean “an unnecessary photo”. A visual checklist let me make those distinctions without manually tracking filenames. STARTER PROMPT “I have photos of the same artwork taken from different angles and against different backgrounds. Find candidate matches using details within the artwork, and distinguish duplicates from details, changed versions and making-of photos. Create a standalone HTML review page with original filenames, a Keep checkbox and a category dropdown for each candidate. Allow multiple retained photos per category. Flag empty groups and selected photos with no category. Preserve unmatched images. Let me export my choices as JSON. After I return the selection, generate a script that validates the original filenames, sorts retained files into the chosen folders and moves only rejected files to the Recycle Bin after showing the target folder and counts. Do not choose or delete files on my behalf."

Fien De Waele
  • ChatGPT
  • Google Drive
2

Automate a Monthly Healthcare Clinic Performance Scoreboard

I run a small healthcare clinic and needed a monthly performance scoreboard that combined data from three separate sources: Google Analytics (GA4), my booking or appointment system, and a cashflow spreadsheet. Pulling everything manually each month took more than an hour and was prone to errors. I automated the pipeline using Claude-in-Chrome shortcuts and Claude’s analysis capabilities, reducing the process to around 10 minutes of hands-on time. Service businesses often have performance data scattered across a website analytics platform, a booking or practice management system, and a finance tool. Creating a coherent monthly view requires exporting data from each source, cross-referencing it, and manually calculating derived metrics such as rebook rate and conversion rate. This workflow automates data collection and analysis in one step. Step-by-step: 1. I set up two scheduled Claude-in-Chrome shortcuts to run automatically on the 1st of each month. One exports the GA4 Traffic Acquisition CSV, and the other exports the GA4 Pages and Screens CSV. Both save directly to a designated Google Drive folder. 2. On the 1st, I manually trigger a third Claude-in-Chrome shortcut. It logs into my booking system, navigates to the appointments export, and downloads the month’s appointment data. I keep this step manual because most booking systems log users out between sessions. 3. I open my cashflow spreadsheet and note the month’s revenue and profit figures. This takes about 30 seconds to do manually. 4. I open a Claude session and upload all four files together: the two GA4 exports, the appointment data, and the cashflow figures. 5. I prompt Claude to calculate the key metrics: total appointments, new patients, utilisation rate, rebook rate, average spend, online bookings, and website-to-booking conversion rate. The rebook rate is calculated from the appointment data as patients with a future booking divided by total patients seen. 6. Claude produces a formatted monthly scoreboard, flags anything that looks anomalous, and compares the results with the prior-month baseline when I include last month’s scoreboard in the upload. 7. Optionally, I ask Claude to produce individual practitioner breakdowns from the same appointment data, splitting the metrics by staff member for use in one-on-one reviews. The result is a complete, accurate monthly clinic scoreboard in around 10 minutes, with no manual calculations. The rebook rate computation alone, which previously required cross-referencing two separate reports, now takes seconds. The same workflow can adapt to any service business using a booking or practice management system that allows CSV exports. Tools used: Claude (Sonnet 5), Claude-in-Chrome extension, Google Analytics GA4, Google Drive, any booking or appointment system with CSV export capability, and Google Sheets or Excel for cashflow figures.

Pete
  • Claude
  • Google Drive
  • Microsoft Excel
2

Semi-Automate Live Stream Summaries with Gemini, Blender, and Whisper

“A good engineer knows when not to use AI.” I built a semi-automated workflow to summarize my live streams. With it, I can record and edit a stream in just one day of work. Not everyone has time to watch an entire stream, so creating a summary of the main moments is important for people who want to watch it later. Many tools create Shorts from videos by analyzing transcripts, but they are expensive and do not work well for visually heavy content such as gameplay. Gemini can analyze both video and audio and has a long context window, so I decided to use Google AI Studio to identify important moments. I also created scripts to automate parts of the video-editing process. Some of the scripts can be executed by an agent, and the prompts can be turned into Skills when using the API. Step-by-step: 1. I record the video with separate tracks for the microphone and background audio. I keep the microphone on the first track so the LLM does not identify only the background audio. 2. I compress and cut the video with `ffmpeg`, then extract the audio tracks. Google AI Studio has implicit video requirements: files must be under 400MB and under one hour long. The AI analyzes only one frame per second, so I can also lower the FPS to save space. I use the audio tracks later in the workflow. 3. I upload the processed videos to Google Drive, which makes them easier to use in Google AI Studio. 4. I use Gemini with temperature 1 and a high thinking level to select the important moments. I add the system prompt and specify which part of the video I am uploading: "The video is part X of the stream. Please make a structured script according to the system instructions." This helps Gemini understand what types of moments may appear in the video. The system prompt was created for gameplay presentations but can be adapted for other content. 5. I use Gemini Pro with temperature 1 and a high thinking level to find the timestamps for the selected moments. I keep timestamp generation separate from moment selection so Gemini has more thinking time for each task. Gemini Pro works better than Flash when handling time. I add the system prompt along with a copy of the response from the previous step. - As an extra check, after execution I continue the conversation with: "Check if the analysis was cut off too early (context truncation), ignoring that the video continued and generating false positives for timestamps. Check the last events especially." 6. I send the data to Blender. I create a JSON file containing the AI’s response and use a script to add the original video, the microphone track, and the background audio track. The script cuts and marks the important moments based on the JSON. Because it is not possible to send multiple audio tracks from a single video, I send the tracks separately. I also make sure to use the correct FPS, either 30 or 60. 7. I edit the video manually. The AI’s timestamps are not perfect, so I may add or remove sections, or correct a position that the AI identified incorrectly. I then render the video. 8. As an extra, I can automate standardized edits. For example, I use three different camera positions, so I add clips to three different tracks depending on the position I want. I use a script to change the position and scale of the clips on those tracks. 9. As another extra, I transcribe the audio. I mute the background audio and save only the microphone audio as an MP3, then use Whisper to transcribe it. I can use the transcript as YouTube subtitles or embed it directly into the video. I use Whisper-WebUI with Log probability Threshold -0.5, No Speech Threshold 0.5, Patience 2, and Hotwords `\u003cmy name and terms in other languages I usually use\u003e`. I use an LLM to translate the transcript into other languages. 10. Finally, I create tags and titles. I upload the transcript to Google Drive and use it in Google AI Studio with a system prompt to generate tags and titles for the video. I also use the assistant in Google AI Studio to analyze and summarize my channel for use in LLMs. This helps me choose better titles and tags.

Felipe Moreira Ramos
  • Gemini
  • Google Drive
2

Build a 24-hour company brief that writes in my voice

I have a Daily Brief agent on Codex with access to my Slack, Gmail, Notion, and Google Drive that checks everything that happened in the last 24 hours on request. It sends me the brief through Slack, and I do maybe 10% of the final manual editing. I also gave it several examples of before/after editing, so now it sends messages in my exact voice and style. Step-by-step: 1. I connected my Daily Brief agent in Codex to Slack, Gmail, Notion, and Google Drive. 2. I told it to review activity from the last 24 hours and pull out the items that actually needed attention. 3. I structured the output as a concise brief and had Codex deliver it through Slack. 4. I manually reviewed the draft and made the final edits before using it. 5. I gave the agent before-and-after examples of those edits so future briefs would sound more like my own voice.

Carl
  • Codex
  • Slack
  • Gmail
  • Notion
  • Google Drive
1

Build a ChatGPT Agent to Find Legitimate Access to Private Golf Clubs

I love golf, but many of the courses I most want to play are private and nearly impossible to access unless you know a member. Instead of manually emailing clubs, searching charity events, asking for introductions, and trying to remember who I contacted months ago, I built a Private Golf Access Agent in ChatGPT. The goal is to identify legitimate opportunities to play highly rated private clubs without simply paying my way in. I gave the agent 50 target clubs across the Northeast and Mid-Atlantic, including 10 “moonshot” courses where an invitation would be extremely difficult. The agent acts more like a golf-access researcher, relationship manager, and outreach assistant than a chatbot. It researches each club, identifies access paths, finds the right person, personalizes outreach, tracks every interaction, monitors opportunities, and recommends what to do next. I still approve every email before anything is sent. That matters because I don’t want the agent spamming clubs, inventing relationships, or continuing after someone says no. The system looks for legitimate paths, including professional introductions, complimentary charity or special-event opportunities, reciprocal access, personalized direct outreach, unused guest spots, golf-project requests, and long-term relationship opportunities. Step-by-step: 1. I divided the 50 clubs into moonshots, elite targets, and high-quality targets. 2. I had the agent research each club independently, including its leadership, PGA professionals, policies, events, social media, recent news, reviews, charitable connections, and possible introductions. 3. The agent identified the most appropriate contact and researched why that person made sense. 4. Before writing, it gathered specific details so each email was clearly personalized rather than a blast. 5. I trained its cold-outreach persona to sound like a blend of me and two or three sales trainers I admire, including Josh Braun-style low-pressure curiosity, short conversational writing, humor, and an easy way to say no. 6. The agent can learn new skills and add them to its protocol. For example, when it struggled to find employee email addresses, I taught it my Google search method. That method is now part of the workflow it uses for future clubs. 7. I tracked everything in a live Google Sheet showing the current status, progress, next action, opportunity status, and whether I need to approve something. The current status column is highlighted so I can check where every club stands in real time. The statuses include: Researching → Ready for AJ Review → Outreach Sent → Conversation Open → Opportunity Identified → Monitoring. 8. If there is no immediate path, the agent does not keep bothering the club. It moves the club into monitoring mode and waits for a better opportunity. 9. When someone responds, the system keeps the relationship history so future communication builds on the real conversation. The live tracker is shown in a Google Sheet status screenshot. What I like most is that the AI isn’t doing one isolated task. It handles the repetitive parts of an ongoing objective—research, qualification, contact discovery, personalization, organization, monitoring, and follow-up—while leaving the important judgment calls with me. Eventually, I want it operating like a 24/7 private-golf-access concierge: 50 clubs being researched and monitored, with me only getting involved when the agent finds something worth acting on. TOOLS USED: ChatGPT, Gmail, Google Sheets, Google Drive/Docs, web research, and AI agents/automations.

ALBERT IANNELLO
  • ChatGPT
  • Google Drive
  • Google Calendar
2

Documentary film archival research bot

I’m researching two separate documentary films. For each project, the bot runs three web crawls and one health check every day. Based on my notes, scripts, and other existing initial research, it identifies research domains by theme and media type, favoring audio and images while applying a higher threshold to other documents. Anything scoring eight or higher is logged in Notion and downloaded automatically when possible. The bot cycles through different themes, and the health check adjusts the similarity threshold based on the results. If many items score eight, it may log and download only nines. If fewer qualifying items appear, it may begin downloading sevens. Most items cannot be downloaded because they are inaccessible to the bot, but they are still logged and linked. I review the items in Notion and mark each one according to criteria such as “people only for research” or “reject—permissions required.” It isn’t a full replacement for professional archival research, but I feel it’s getting me 90% of the way there. As an independent filmmaker, this is a huge benefit. Each morning, it sends me a synopsis, and each week, it sends me a list of pre-written emails to send to archives that require human interaction. Step-by-step: 1. I provide the bot with my notes, scripts, and existing initial research for each documentary project. 2. For each project, the bot runs three web crawls and one health check every day. 3. It identifies research domains by theme and media type, with a preference for audio and images and a higher threshold for other documents. 4. It logs items scoring eight or higher in Notion and automatically downloads them when possible. 5. It cycles through different themes and uses the health check to adjust the similarity threshold: it may focus on nines when many eights appear, or begin downloading sevens when fewer qualifying items appear. 6. It logs and links items that cannot be downloaded because they are inaccessible to the bot. 7. I review each item in Notion and mark it according to criteria such as “people only for research” or “reject—permissions required.” 8. Each morning, I receive a synopsis, and each week, I receive pre-written emails for archives that require human interaction.

Isaac Smith
  • Claude Code
  • Notion
  • Claude Cowork
  • Gmail
  • Google Drive
4

Create a five-day sermon follow-up text series from a previous Sunday’s sermon

I created a Gemini Gem with custom instructions. When I paste a link to the previous Sunday’s sermon, the Gem “watches” the video and creates five messages—one for each weekday. Each message uses a specific engagement method, such as a link to watch the sermon for anyone who missed it, a graphic featuring a verse from the sermon, or a reflection question tied to the sermon’s theme. After I approve the copy, the Gem creates a properly formatted Google Sheet in my Google Drive, ready to be dragged and dropped into our text provider. Within five minutes, I have content deployed that extends the impact of the 45-minute sermon throughout the week. Step-by-step: 1. I paste a link to the previous Sunday’s sermon into my Gemini Gem. 2. The Gem watches the video and creates five weekday messages. 3. I review and approve the copy for each message. 4. The Gem creates a correctly formatted Google Sheet in my Google Drive. 5. I drag and drop the content into our text provider for deployment.

Anon Echidna
  • Gemini
  • Google Drive
0

Automate Security Risk Assessment Reports in 15 Minutes

Earlier in my career, I spent a significant amount of time delivering security risk assessments. These engagements typically took 8–12 weeks from the initial client meeting to the final report, with complex projects often stretching to 3–4 months. Today, I can produce reports of comparable quality in 1–2 days. The automation runs end-to-end in about 15 minutes; I spend the remaining time reviewing and validating the output. The workflow starts with a structured questionnaire and uses ChatGPT, Perplexity, Claude, Make.com, Google Drive, and Gamma.ai to research, draft, format, and deliver the report. This compresses the delivery timeline while preserving quality and lets me focus on expert judgment, validation, and client communication instead of manual report production. Step-by-step: 1. I have the client visit a web page and complete a structured questionnaire built on Lovable.dev. 2. The submitted information triggers an automated Make.com workflow. 3. ChatGPT analyzes the client’s responses. 4. Perplexity conducts targeted research tailored to the client’s industry, context, and risk profile. 5. Claude drafts the report and saves it to Google Drive. 6. The draft is passed to Gamma.ai, which generates the final client-ready report. 7. I receive the report by email, perform a thorough review, and send it to the client once I approve it. 8. I use the time saved to focus on expert judgment, output validation, and client communication.

Dennis A
  • ChatGPT
  • Claude Code
  • Perplexity
  • Google Drive
2

Automate Residential Architecture Site-Visit Photo Filing with Claude

I run operations for my husband’s residential architecture firm, and I have no coding background. After every site visit, dozens of photos landed in Google Drive with names like `IMG_8834.JPG`. Renaming and filing them took about an hour per visit—when it happened at all. Otherwise, the photos sat unnamed and difficult to find, creating a professional liability gap because they document site conditions on a specific date, as well as lost portfolio material and a hole in the firm’s permanent project archive. I solved this by building a Claude skill: a saved set of instructions that runs the same way every time with one command. I trained it to examine each photo through the lens of a residential architect, describe what the image actually shows using our professional vocabulary, and rename the file in a consistent format. For example, `IMG_8834.JPG` becomes `2026-07-17_03_side-elevation-porch-brick-piers.JPG`—searchable, legible, and ready to file. Because it’s a skill rather than a one-off chat, it’s a file I can hand to anyone in the office. Everyone runs the same process and gets consistent output. Step-by-step: 1. I gathered the raw photos into one “unsorted” folder in Google Drive. 2. In Claude’s desktop app, I used Cowork mode, which handles actual files, and connected only that folder—not my whole Drive. The skill can only see and touch what I connect, so I use the narrowest folder that does the job. 3. I created a skill that tells Claude to read each photo, identify what it shows using my industry’s vocabulary, and rename each file in my standard `date_sequence_description` format. I wrote mine for residential architecture, but the approach can also work for real estate, inspections, insurance, and other field work. 4. I ran the skill with one command, and Claude worked through the folder photo by photo. 5. I had the renamed photos filed into a dated site-visit folder so they were ready to reference by number in reports. 6. I handed the skill file to teammates so they could run it on their own machines and get the same result. One caveat for anyone using this on business files: check your client confidentiality obligations and your AI vendor’s data policy before pointing any tool at project files. We did. I wrote up the full build, including how to decide when something should be a skill versus a regular Claude conversation, at The 2040 Studio: https://the2040studio.substack.com/p/every-img_8834jpg-is-snitching-on

Anon Cormorant
  • Claude Cowork
  • Google Drive
1

Used Claude to formulate, batch, and label a DIY high-carb cycling mix at one-quarter the cost of commercial mixes

I fed Claude my sweat-test data, and it formulated a DIY high-carb cycling mix tuned to my sweat chemistry. It also scaled the batch to match my available supplies and generated print-ready labels and batch sheets. Step-by-step: 1. I provided Claude with my sweat-test data. 2. I used Claude to formulate a DIY high-carb cycling mix tuned to my sweat chemistry. 3. I had Claude scale the batch to match my available supplies. 4. I had Claude generate print-ready labels and batch sheets.

Ken Woodrow
  • Claude Artifacts
  • Claude
  • Claude Cowork
  • Google Drive
2

Automate Monthly Social Media Content and Scheduling with AI

I kept struggling to stay consistent with social media for my own projects. Writing captions, choosing hashtags, designing graphics, and scheduling content across platforms was taking hours every week—time I would rather spend building. So I built AutoKonnekt. You give it one sentence or a website URL, and it generates a full month of on-brand social posts, including captions, hashtags, and AI-generated images. It then schedules them across Instagram, Facebook, LinkedIn, TikTok, Pinterest, X, and Threads. The hardest part was getting the AI to sound like a specific brand’s voice instead of producing generic marketing copy. That took a lot of iteration on the prompting side. It’s live now with a free plan if anyone wants to try it: https://autokonnekt.com I’d love to hear what the community thinks. For those of you managing social media manually, which part takes the most time? I’m trying to figure out what to build next. Step-by-step: 1. I enter one sentence describing the project or provide a website URL. 2. AutoKonnekt generates a month of on-brand social posts with captions, hashtags, and AI-generated images. 3. I use the generated content across Instagram, Facebook, LinkedIn, TikTok, Pinterest, X, and Threads. 4. AutoKonnekt schedules the posts across those platforms. 5. I iterate on the prompting to make the content sound like the specific brand instead of generic marketing copy.

Rundown Member
  • Google Calendar
  • Google Drive
1