Community

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. One post will put you on the radar of top founders, hiring managers, and operators across the industry.

Welcome!

Build a Real-Time Cyber Threat Map for IT Onboarding

My company takes cybersecurity seriously, and part of our new-hire onboarding process is a tour of the IT department to meet the team. Our walls have several screens displaying metrics and information from our security tools, firewalls, and other systems. It looks like a scene from a movie. By far, the most popular display is our custom-made Cyber Threat Map, which shows real-time attempts to infiltrate our network, malicious emails, and other security threats we're blocking. The map drives home the reality of what we're facing 24/7 while protecting our employees, vendors, and customers. I built it using Claude Code. It polls a range of devices and systems through APIs, aggregates the data on one screen, and displays attack vectors, location information, and other details from the last 30 days. Step-by-step: 1. I identified the security tools, firewalls, devices, and systems that provide relevant threat data. 2. I used Claude Code to build a custom Cyber Threat Map. 3. I connected the map to the devices and systems through their APIs. 4. I aggregated the data on a single screen, including attack vectors, location information, and other details from the last 30 days. 5. I displayed the map during IT department tours so new hires could see the real-time threats our company is blocking.

Tools used
Industry
3

Build a Film Portfolio That Proves the Work Wasn't Luck

I spent twenty years producing documentary and nonfiction films, all of it the expensive way: crews, schedules, financing, and commissioners saying no. I'm proud of much of that work, and I still think about the films that never got made because the money wasn't there. Generative video pulled me in, but not for the reason people assume. It wasn't the speed or the cost. It was the fact that I could finally finish something without asking anyone for permission. No green light from a major platform. Nobody deciding that a story was too small to deserve a crew. A year later, I could produce this way. It turned out to be a different job rather than the same job with new tools. Then I ran into a problem I hadn't considered: how do you show the work? A finished shot doesn't prove much anymore. A client can look at a beautiful frame and have no way to tell whether it took three weeks or three minutes. If I'm honest, neither would I in their position. The thing every portfolio is built to display had stopped being evidence. I'm not a developer. I produce films. The site is bilingual, has seven sections, includes a case study for each film, plays video on hover, and has a comparison slider that works with a thumb as well as a mouse. I built all of it. I'd wanted this exact site for about fifteen years and had never managed to explain it properly to anyone I paid to make it. This time, I stopped explaining and built it myself. The middle of the page has a slider that you drag between the storyboard panel and the final shot. A basic before-and-after would prove nothing; you can fake that by generating twice. The storyboard is the proof because the framing, eyeline, and decision about what stays outside the frame all existed on paper before any model was asked to generate anything. You drag the handle and watch the intention survive. The rest of the site came from the same place. Video only plays on hover and is silent until you click for sound. Most video portfolios are unreadable because fifteen things start moving at once. The sections are organized by register rather than by client: epic, brand, animation, and lifestyle. A wall of logos answers who has hired you, which nobody is actually wondering. What they want to know is whether you can change tone. Nothing is cropped to fit the grid. A 5:33 film sits in 16:9 next to a 2:42 film in scope, and the layout is lopsided because of it. I nearly made them uniform because it looked tidier, then realized I was about to reformat my own films so a webpage would look neat. Anyone who cuts for a living spots that immediately. Concepts are labeled as concepts. Experiments have their own section instead of being scattered among the client work and hoping nobody asks which is which. Step-by-step: 1. I started from what my client couldn't verify: the craft behind a shot. 2. I found the artifact that proves it. It's usually the ugly thing nobody publishes: the storyboard, the reference sheet, or the version before the good version. 3. I put that artifact next to the finished piece inside one interaction, so nobody has to search for the proof. 4. I made playback deliberate. Video plays on hover, and sound requires a click. 5. I sorted the work by the question being asked rather than by the credentials I wanted to lead with. 6. I didn't reformat the work to fit the layout. I let the grid be uneven. 7. I labeled everything honestly: client, concept, or experiment. One word each can pay for the credibility of the whole page. 8. I wrote a brief for each section as a document first. Arguing with a paragraph is free; arguing with a built page is not. 9. I built the site with an AI coding tool. This was the least interesting step, even though it's the one everyone writes about. If your work can be mistaken for a lucky prompt, stop trying to prove it with the finished piece. The site is at www.termopilas.tv if you want to drag the handle yourself.

Tools used
Industry
#aivideo#craft#portfolio#webdesign
3

Build an Incremental Archive for ChatGPT Conversation Exports

I built a workflow for turning large ChatGPT conversation exports into a usable personal and creative archive instead of simply storing them as backups. The archive is processed incrementally. The inventory is built offline, and conversations that have already been indexed are not needlessly reanalyzed on every run. Each new export is compared with the existing archive, and only newly added conversations or conversations that have been revisited, extended, or otherwise changed are processed again and updated in the inventory. This keeps the workflow lightweight while allowing the archive to evolve over time. A conversation can remain stable for months, then become relevant again and receive new material without forcing the entire archive back through analysis. This matters because many of my conversations are long, layered thinking sessions: creative explorations, project development, research, problem-solving, or extended reflection. Without an inventory, the depth inside those individual conversations and thinking processes becomes difficult to retrieve later. The workflow makes long-form analysis and creative thought processes findable and reusable without flattening them into a few generic summaries. On top of the inventory, I use lightweight “blubscans” (analysis to improve retrieval): small, human-readable summaries that capture what mattered during a day or period without replacing the original conversations. They act as a navigational layer between thousands of raw messages and the things I may want to find, understand, revisit, or continue later. The important principle is that compression never becomes deletion. The raw conversations remain the source of truth, the inventory provides structure, and the scans provide context and tone. The result is more than a backup system. It becomes working creative memory: something I can preserve, search, revisit, connect across time, and reuse for projects, research, writing, pattern-finding, and future creative work. In simple terms, the structure is: raw exports → offline incremental inventory → blubscans/context layer → retrieval and reuse for later projects and creative work That way, the archive stays deep without becoming heavy, and useful without constantly reprocessing everything that was already understood. Step-by-step: 1. I collect large ChatGPT conversation exports as the raw source material for the archive. 2. I build and maintain an offline inventory of the conversations that have been indexed. 3. With each new export, I compare the conversations against the existing archive. 4. I process only newly added conversations and conversations that have been revisited, extended, or otherwise changed. 5. I update the inventory with the results while leaving stable conversations untouched. 6. I create lightweight “blubscans” with small, human-readable summaries of what mattered during a day or period. 7. I use the raw conversations as the source of truth, the inventory for structure, and the scans for context and tone. 8. I retrieve and reuse the archive for projects, research, writing, pattern-finding, and future creative work.

Tools used
Industry
#creativity
2

Build a Real Estate Lead-Qualification Funnel with Awish.ai

Today, I wanted to see how far an AI agent could go if I gave it a real business instead of a predefined automation. I entered binayah.com into Awish.ai. Binayah is a real estate company, and instead of telling Awish.ai exactly what workflow to build, I asked it to analyze the business first and find an automation opportunity. It suggested a customer acquisition funnel, which I reviewed and approved. Around 10 minutes later, the automation was ready. Step-by-step: 1. I entered binayah.com into Awish.ai. 2. Awish.ai agents analyzed the website and how the business operates. 3. Awish.ai identified customer acquisition as an area that could be automated. 4. It suggested a funnel designed to capture and qualify potential leads. 5. I reviewed the suggestion and approved it. 6. Awish.ai created the workflow and connected the required steps. 7. The funnel was ready to use in around 10 minutes. What I find most interesting is that I didn’t start by designing a workflow. The system first understood the business, found an opportunity, suggested what should be automated, and built it only after I approved. That feels much closer to having an automation consultant inside the product than using a traditional workflow builder.

Tools used
Industry
#automation#businessautomation#productivity#saas#salesautomation
2

Use Claude to Rename and Organize Architecture Site Photos

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 named `IMG_8834.JPG`. Renaming and filing them took about an hour per visit, when it happened at all. When it didn’t, the photos sat unnamed and unfindable. For an architecture firm, that creates a professional liability gap because the photos 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 eye of a residential architect, describe what the image actually shows using our professional vocabulary, and rename the file in a consistent format. `IMG_8834.JPG` becomes `2026-07-17_03_side-elevation-porch-brick-piers.JPG`—searchable, legible, and filed. 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 identical 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. This is the safety practice I’d urge anyone to follow: the skill can see and touch only what you connect, so connect the narrowest folder that does the job. 3. I created a skill that tells Claude to read each photo, identify what it shows using the industry’s vocabulary, and rename each file in a standard format. I wrote mine for residential architecture, but the approach also works for real estate, inspections, insurance, and other field work. My format is `date_sequence_description`. 4. I ran the skill with one command, and Claude worked through the folder photo by photo. 5. The renamed photos were filed into a dated site-visit folder, ready to reference by number in reports. 6. I handed the skill file to teammates so they could run it on their 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

Tools used
Industry
#photorenaming
4

Build a Claude Model Dispatcher to Reduce API Costs for Simple Tasks

I built a model dispatcher to avoid paying premium usage for simple tasks. In Claude, every task runs on the model used by the current session, so a two-line formatting fix can consume the same level of model capacity as a difficult strategic problem. I had Claude build a scoring system that evaluates each task across six dimensions: required reasoning, the amount of context, the importance of craft or nuance, whether speed is the priority, the number of agentic parts involved, and the potential consequences if something goes wrong. Based on the score, it recommends a model—from a light, fast option for rote work to the most capable option for genuinely difficult tasks—and suggests how much effort that model should apply. The key design choice is that the dispatcher never spends anything automatically. Scoring is free and instant, while sending the task to a model through the API costs real money. Dispatching therefore requires an explicit confirmation flag every time. Nothing runs without me saying go. The payoff is not dramatic from day to day. It comes from many small savings that add up, along with a habit shift: I check the router before sending a task instead of wondering afterward why a simple request cost more than it should have. Step-by-step: 1. I identified the problem: every task in a Claude session uses the current model, even when the task is simple. 2. I had Claude build a scoring system that evaluates each task across six dimensions: reasoning, context, craft or nuance, speed, agentic complexity, and the potential consequences of failure. 3. I used the score to recommend an appropriate model, from a light and fast model for rote work to the heaviest model for genuinely difficult tasks. 4. I included a recommendation for how much effort the selected model should apply. 5. I kept scoring free and separate from dispatching, since sending a task through the API costs money. 6. I required an explicit confirmation flag before dispatching any task, so nothing runs automatically. 7. I check the router before sending tasks and benefit from small savings that accumulate over time.

Tools used
Industry
3

Build a Free, Case-Based AI Textbook with Claude and GitHub Pages

I teach AI in Business at Western Washington University, and I built a free, case-based AI textbook with Claude and GitHub Pages: https://prof-califf.github.io/ai-in-business/ The 11-chapter digital textbook includes seven real company cases—EveryCure, Netflix, Spotify, Uber, Waymo, Airbnb, and Epic—plus chapters on AI’s environmental cost, ethics, regulation, and the future of work. Seven chapters include hands-on Python labs, and Chapter 8 has an interactive calculator that models the energy and water footprint of a reader’s own AI usage. The textbook is free, has no publisher, and costs $0 to host. The problem was that AI textbooks are stale before they ship. An 18-month publishing cycle means students can pay $200 for a book that is already two model generations behind. Textbooks also tend to teach theory first and postpone business relevance until much later. My students do not need to derive backpropagation. They need to understand why Spotify built a recommender, how it works, what broke, and what it cost—then build one themselves. My stack is Claude, GitHub Pages, VS Code, Google Colab for the labs, and n8n for the Chapter 7 agentic lab. The project started when I was assembling a reading list and could not find anything usable—only outdated textbooks and paywalled cases. I already had years of lecture notes scattered across documents. Step-by-step: 1. I locked in a framework first. I use the AI Factory model—Data → Model → Prediction → Decision → Value → loop—and run every company through it. This is the step people skip: it builds transferable skills for students and gives Claude a stable structural contract across every chapter. 2. I set up the repository before writing. I created a new repo, added `index.html`, opened Settings → Pages, and confirmed that the site deployed. Five minutes up front was better than debugging after 40,000 words. 3. I built one chapter completely and used it as the template. Each chapter is a single, self-contained HTML file with no build step or dependencies. Then I prompted Claude: "Here's my finished Chapter 1 as the format reference. Here are my notes on Uber. Draft Chapter 4 in the same structure and voice." A finished exemplar worked better than an abstract description. 4. I started from my existing material instead of using a blank prompt. Claude structured and clarified my notes, but it did not decide what I think. I rewrote anything that did not sound like me. That distinction preserved the resource’s voice and avoided generated filler. 5. I made the labs builds rather than exercises. Students reconstruct each system in Google Colab using Claude as a coding partner, then publish their work to their own GitHub repositories. They finish with artifacts. 6. I shipped an incomplete version and update it like software. I published with fewer chapters, then edit and push updates when regulation changes so students automatically get the current version.

Tools used
Industry
#claude#curriculumdesign#digitaltextbook#education#githubpages
2
The Rundown team

Use ChatGPT Voice Mode to Pair a Garage Door Keypad

I used ChatGPT Voice Mode to help me program my mom’s garage door keypad—and the most important step happened before I touched a single button. I photographed the labels on both the garage door opener and the wireless keypad. ChatGPT spotted the real problem: the previous homeowner had replaced the opener but kept the old, incompatible keypad. That explained why we couldn’t get them to pair. Once ChatGPT identified the exact models, it helped me find a replacement keypad that was compatible with the newer opener. I also had it find and load the instruction manuals for both devices, since pairing required a specific sequence of button presses across them. Before we started, I had ChatGPT explain the complete pairing process so I knew what to expect and where timing would matter. Then I set my phone on top of the ladder so both hands were free to work with the keypad and opener. I gave ChatGPT one important instruction: “Walk me through one step at a time. After each step, stop and wait until I tell you what happened.” ChatGPT gave me one instruction, paused, and waited while I reported what the lights were doing. Then it adjusted and gave me the next step. That let me follow the crucial sequence of button presses—and the timing between them—exactly. The real lesson: AI troubleshooting gets much better when you provide the exact model numbers and manuals, let it preview the process, and have it guide you through the work one confirmed step at a time. Step-by-step: 1. I photographed every model number on the garage door opener and wireless keypad. 2. I used ChatGPT to identify the models and determine that the previous homeowner had left an old, incompatible keypad paired with the newer opener. 3. I used ChatGPT to find a compatible replacement keypad instead of guessing based on appearance or brand alone. 4. I had ChatGPT find and load the instruction manuals for the new keypad and garage door opener. 5. I asked ChatGPT to preview the complete pairing sequence, including where timing would matter. 6. I placed my phone on top of the ladder so both hands were free to work with the keypad and opener. 7. I switched to Voice Mode and told ChatGPT to give me one step at a time, pausing after each step until I reported what happened. 8. I reported what the lights were doing after each instruction so ChatGPT could adjust and give me the next step.

Tools used
Industry
#livevoice
1

Build a Family Gift-Pool App with Claude and Recover from Data Loss

For years, my family has run a shared birthday fund: five of us contribute a fixed amount for each birthday, while the person whose immediate family is celebrating that month is exempt from paying. Tracking everything in a payment app and a chat thread meant nobody knew the balance, who was behind, or what the next gift would cost. I rebuilt the fund as a small web app with Claude. The app itself isn't the only reason I'm writing this up. The same build is also the demo I use to teach clients and students how AI-assisted product development actually works, including the parts that go wrong. Step-by-step: 1. I described the real rules instead of presenting Claude with a generic app idea: the contributors, the fixed amount per person, the family-exemption rule, and birthdays with birth years so ages could be calculated automatically. Claude built the app as a single, self-contained HTML file with no build step or server, so it opens in any browser. 2. I worked in phases and asked Claude to explain its reasoning at each stage. Instead of using one giant prompt, I added one layer per session: the calculation engine, the setup screen, then reports and CSV export. The explanations made the sessions reusable as teaching material. 3. I required the app to be configured through its own interface rather than by editing code. This was the turning point. Claude removed the hardcoded demo family and added a full setup screen for the group name, contributors, deposits, birthdays, amounts, and alerts. I can now build a family from scratch live in front of a class in about [X] minutes without showing a line of code. 4. I let a data-loss incident shape the next phase. I entered the real family data, then the browser tab closed and the download link I had been using to open the file broke. The data was stored in browser storage tied to that exact URL, and I had no backup. Nothing was recoverable at the time. 5. I turned that failure into features. Claude added CSV export for both reports, CSV import that automatically detects which file it is reading, and a backup reminder that appears in the app's alert banner when the data has never been backed up or has not been backed up for seven days. We also discovered that birth year was missing from the export, which meant a re-import would have silently lost everyone's age. 6. I had Claude test its own work. Before each handoff, it ran a jsdom test suite in a sandbox. By the end, the suite had 46 tests covering the exemption math, empty states, CSV round-trips, and backup logic. Several real bugs surfaced there instead of in front of a class. 7. I made a second version for a different audience. One prompt produced a fully English, left-to-right translation with flipped directional CSS, Latin typography, US date formatting, dollars instead of shekels, and Venmo and Zelle instead of local payment apps. It was a genuinely different build, not a find-and-replace translation. The project took 14 sessions over one week and six hours total. It had no hosting cost, dependencies, or accounts. The data still lives in the browser's local storage on each device. Opening the file on my phone and laptop creates two unrelated pools, so CSV import is the manual bridge between them. There is no authentication or sync; this is a personal record-keeper, not shared infrastructure. The data-loss incident was not a Claude failure. I failed to build a backup path before entering real data. If I did it again, I would add export before adding a single feature. The highest-leverage prompt in the whole project was not a feature request. It was: "let me configure this through the interface instead of the code." That shift turned a static demo into something my family actually uses and my students can watch being built from an empty screen. The broader point is that the failure was the most useful part of the project. A polished demo teaches people that AI makes building easy. Losing the data and rebuilding the safety net around it teaches them what building actually involves—and that is the lesson that survives the workshop.

Tools used
Industries
7

Build a Poker Luck Detection App with Claude

I love playing poker, both online and live. One month, I performed poorly. Although it felt like the cards were running badly, I wondered whether I had developed a problem in my game and was blaming my losses on bad luck. I asked around, including asking AI, whether a tool existed that could measure luck from poker hand histories. The unwelcome answer was that it did not. I'm not a coder, but after doing some research into vibe coding, I started building a luck-detection app in a Claude chat. Claude built the UI directly in the chat window and advised me on the formulas I was using to calculate luck for the cards dealt, my performance on the flop, and my performance when I went all in. All three metrics have strong averages, and luck is what varies them. I used a bell curve to model hand outcomes and a Monte Carlo simulator, which Claude suggested and executed, to evaluate all possible outcomes. The result astonished me because it was so useful. I immediately fixed two major leaks in my game and felt better knowing that bad luck really was the main problem affecting my results. I liked the tool so much that I decided to turn it into a full web app with Claude Code, and now an iPhone app that I may let other people use for free. I also had a lot of fun building it—except for learning how to use Xcode. That was a pain, even with step-by-step guidance from Claude. Step-by-step: 1. I reviewed a month of poor poker results and questioned whether bad luck or problems in my game were causing the losses. 2. I researched whether a tool existed that could measure luck from poker hand histories and learned that I would need to build one myself. 3. I used vibe coding to start building a luck-detection app in a Claude chat. 4. I had Claude create the UI and advise on formulas for evaluating cards dealt, flop performance, and all-in performance. 5. I used a bell curve to model hand outcomes and a Monte Carlo simulator to evaluate possible outcomes. 6. I used the results to identify and fix two major leaks in my game and confirm that bad luck was also affecting my results. 7. I expanded the project into a full web app with Claude Code and then began building an iPhone app, working through the added challenge of learning Xcode.

Tools used
Industries
#gaming#luck#poker#statistics
3

Replace an AI File-Transfer Workflow with a Python Desktop App

Management pushed for an AI workflow to handle a massive daily headache: staff were manually searching for, copy-pasting, and moving hundreds of files listed in Excel. I was assigned to train the team to use the AI workflow. As soon as training started, though, it became clear that this was the wrong tool for the job. Forcing non-technical staff through a lengthy process of opening browsers, writing prompts, uploading spreadsheets, and dealing with token friction created more work than the manual process. It also introduced token costs, speed bottlenecks, and hallucination risks involving local file paths. The data was already structured. It did not need semantic intelligence; it needed deterministic speed. So AI got fired from running the task. Instead, I used AI as the developer. In less time than it would have taken to train one person, I had Gemini code a standalone Python desktop app and compile it into a simple executable. Now, with zero training required, staff drag and drop their Excel list into the app, choose a destination folder, and click Run. The app executes the transfers for hundreds of files, verifies every arrival on disk, and logs missing files in seconds. The result: $0 in API tokens, two hours recovered each day, zero path errors, and 100% team adoption. A two-second drag-and-drop will always beat a multi-step prompt-engineering exercise. As a side effect, the experience also supported AI adoption. Staff are now seeing more ways AI can help rather than hinder their work. Step-by-step: 1. I evaluated the proposed AI workflow for manually searching, copy-pasting, and moving hundreds of files from Excel lists. 2. I identified that training non-technical staff to open browsers, write prompts, upload spreadsheets, and manage token friction added more work, costs, bottlenecks, and local-file-path hallucination risks. 3. I used Gemini as the developer to create a standalone Python desktop app and compile it into a simple executable. 4. I had staff drag and drop their Excel list into the app, select a destination folder, and click Run. 5. The app transferred hundreds of files, verified each arrival on disk, and logged missing files in seconds. 6. I measured the results: $0 in API tokens, two hours recovered daily, zero path errors, and 100% team adoption.

Tools used
Industry
#adoption#code#gemini#python#workflow
5
The Rundown team

Build a Custom Mac Shortcut System with ChatGPT and Apple Shortcuts

I was tired of opening Spotlight every time I wanted to switch apps. The search results would move around, I would occasionally open the wrong app, and those few wasted seconds kept adding up throughout the day. Instead of memorizing a collection of unrelated hotkeys, I used ChatGPT Work to design and build a personalized shortcut system in Apple Shortcuts. The shortcuts can open individual apps, jump directly into specific Safari or Chrome profiles, or launch an entire work mode with one keystroke. For example, a recording shortcut could open your microphone, camera, recording software, and notes. An analytics shortcut could open all the dashboards you check each week. Step-by-step: 1. I opened the ChatGPT desktop app, started a new chat, and switched to Work mode. 2. I asked ChatGPT to plan shortcuts around my real workflow: Based on what you know about me and my workflow, suggest 10 time-saving hotkeys we can set up in Apple Shortcuts. I’m interested in opening specific apps and profiles based on what I need them for or what mode of work I’m going into. 3. I told it which apps, browser profiles, URLs, and work modes I use most. 4. I narrowed the list before making any changes by keeping the highest-frequency shortcuts and avoiding macOS or app conflicts. 5. In ChatGPT, I went to Settings → Computer Use and turned on Any App. 6. I gave ChatGPT the approved list and clearly limited its scope: Set these up in Apple Shortcuts. Do not change anything outside this list. Test each shortcut. 7. I opened All Shortcuts in Apple Shortcuts and ran each one manually. I used Quick Actions to add or change its keyboard shortcut. I like Control + Option because it is less likely to conflict with existing Mac commands. 8. I tested every shortcut while working in another app, checking that it opened the correct app, account, browser profile, or collection of tools before building more. 9. Once everything worked, I asked ChatGPT to create my reference: Write me a one-page cheat sheet of all the shortcuts you set up, where they live, and what’s left to do. The result is a personal shortcut system built around how I actually work, plus a one-page cheat sheet so I don’t have to memorize everything immediately. For the complete walkthrough, exact prompts, screenshots, and setup instructions, follow my full Rundown University guide: Use ChatGPT to Build a Custom Mac Shortcut System. Tools used: ChatGPT Work, Apple Shortcuts Industry: Cross-industry Tags: #chatgptwork #appleshortcuts #macautomation #productivity #workflowautomation

Tools used
Industry
#apple#automations#macbook#productivity
3

Unified QuickBooks Customer Aging and Collections Dashboard

QuickBooks stores customer data across multiple windows, including notes, deposits, invoices, payments, aging, and email. To see everything, we previously had to keep several windows open while constantly searching, opening, and closing screens. Communicating with customers beyond QuickBooks’ standard letters was also difficult and time-consuming. I used Claude to write a program that brings this information together in one view. It creates an aging summary of all past-due accounts, with sortable columns for customer name, aging category, and total. I also added columns for the last payment and payment date. Clicking anywhere on a customer’s row opens a full drill-down of that customer’s data on one page. The accounting person can view invoices filtered by date or open invoices, see payments and the invoices they were applied to, review aging detail, run reports without leaving the screen, send emails, record collection notes, and print invoices. The software supports simultaneous access for multiple authorized users. The data stays up to date and can be refreshed at any time. This saves us hours of time compared with working through QBO. My next step is to have Claude automate reminder notices at 30 and 60 days, based on user-selected settings, as well as 90-day collection letters. These notices will be customizable while still allowing automation. Step-by-step: 1. I identified the customer information that was spread across QuickBooks windows, including notes, deposits, invoices, payments, aging, and email. 2. I used Claude to write a program that creates an aging summary of all past-due accounts. 3. I added sortable columns for customer name, aging category, total, last payment, and payment date. 4. I enabled users to click a customer row and open a full drill-down of that customer’s data on one page. 5. I included access to date-selectable invoices, open invoices, payments and their applied invoices, aging detail, reports, emails, collection notes, and invoice printing. 6. I set up the software so multiple authorized users can access the data simultaneously and refresh it whenever needed. 7. I plan to add customizable, automated reminder notices at 30 and 60 days and collection letters at 90 days.

Tools used
Industry
5

Automate Daily Water-Leak Alerts for Rental Properties

I own a rental property where a water leak has occurred roughly every year or two. The leak typically runs for weeks before the water utility detects usage above its threshold. Because billing cycles last three months, the utility may notify me weeks or months after the problem begins. By then, the leak can have produced a bill more than $1,000 higher than the usual $100–$300 amount. The utility offers a one-time, per-account waiver for accidental leak overages. After using that waiver the first time, later incidents are entirely out of pocket. The utility also cannot notify me sooner than when usage exceeds 25,000 gallons during a billing cycle, which moves the account into a quadruple-rate tier for the rest of that cycle. I repeatedly asked whether they could provide an immediate alert when a user-set or company-set daily usage threshold was exceeded, but they said they had no system or solution for it. I tried checking my usage manually every day, but after weeks or months of normal readings, it was easy to become complacent or forget. After receiving another $1,300-plus bill, I asked ChatGPT whether I could automate the process of logging into my utility account, checking usage daily, and emailing me about the prior day’s usage or an overage. ChatGPT suggested several options, including paid AI-agent tools and a free script running on my own hardware. I wanted a completely free, cloud-based solution that would not require my computer to stay on, so I compared the paid options, including Google Spark, with a GitHub-based system. GitHub apparently includes 2,000 minutes of script runtime per month, while my system was estimated to use about 100 minutes. I spent part of a day asking ChatGPT questions, copy-pasting code into GitHub, and refining it. I now have a cloud-based system that logs into my water utility account, checks daily usage, emails me when my daily or seven-day-average thresholds are exceeded, and adds each day’s usage to an Excel spreadsheet for ongoing history. I have verified that it works, and it is set up to keep running and sending alerts without ongoing cost. I had never coded before. The system uses Python, GitHub Actions/YAML, Playwright, pandas, openpyxl, Excel, and Gmail for email alerts. Excel and Gmail were the only tools in that list I had used previously. If I want to change an alert threshold or another setting, I can log into GitHub and ask ChatGPT for the relevant code adjustment. I also added a second rental property in the same city that uses the same water utility. Replicating the process for that property required only a small amount of additional code and took almost no time. I now have a perpetually self-updating, cloud-based water-usage database with daily email alerts for both rental properties, at zero ongoing cost.

Tools used
Industries
2

Use a Spec-Generator Agent Before AI-Assisted Coding

AI coding tools can build quickly, but they can also build the wrong thing quickly. Starting implementation from a vague feature request leaves important decisions about scope, architecture, edge cases, success criteria, and expected behavior to be made implicitly during coding. I created a spec-generator agent that sits between an idea and implementation. I give it a feature request, product vision, or rough description of what I want to build. It investigates the existing project, identifies missing decisions and constraints, researches external dependencies when necessary, and turns the request into a detailed specification that another AI agent can implement without having to guess what I meant. The finished specification becomes the source of truth for the rest of the development workflow. Step-by-step: 1. I give the spec-generator the feature or product idea I want to build, along with any existing requirements, vision documents, or constraints. 2. I have it inspect the existing project before proposing a solution. It needs to understand the current architecture, conventions, capabilities, and relevant prior decisions rather than designing the feature in isolation. 3. I have it identify ambiguities and missing decisions, including questions about users, behavior, scope, dependencies, edge cases, data requirements, integrations, and what is explicitly out of scope. 4. I have it research external technologies, APIs, libraries, or platform capabilities when the design depends on facts that cannot be determined from the repository alone. 5. I have it translate the idea into a layered specification: first the product purpose and desired outcomes, then the technical architecture, and finally the detailed implementation requirements. 6. I have it define measurable success criteria and acceptance tests so that “done” means something concrete rather than simply “the code was written.” 7. I have it persist the finished specification in the project so developers or coding agents can treat it as the source of truth during implementation. 8. I pass the specification through a separate review or validation step before coding begins, resolving gaps or contradictions in the spec rather than discovering them halfway through implementation. Instead of asking an AI coding agent to interpret a rough idea while it writes code, I separate figuring out what should be built from building it.

Tools used
Industry
#aicoding#requirementsengineering#softwaredevelopment#specdrivendevelopment
7

Use ChatGPT as a Game Master for Two-Player Tabletop RPGs

I’m retired and in my early 70s. I never got into RPGs growing up, but I decided to try a tabletop RPG with my wife. The game I purchased included a rulebook and a PDF of the book. I wanted my wife and me to play as the player characters without either of us having to be the game master, so I tested whether AI could take on that role. I used ChatGPT to parse the PDF and walk us through the process. It helped us create our characters, Heisenberg and Felicity, and then started the game as the game master. We’ve only just started, but it seems like this is going to work well. The AI can keep secrets to itself, roll the dice when needed, and guide us through the adventure. Step-by-step: 1. I purchased a tabletop RPG that included a rulebook and a PDF of the book. 2. I used ChatGPT to parse the PDF and walk us through the process. 3. ChatGPT helped my wife and me create our player characters, Heisenberg and Felicity. 4. We had ChatGPT start the game as the game master so neither of us had to fill that role. 5. We began playing while ChatGPT kept secrets to itself, rolled the dice when needed, and guided us through the adventure.

Tools used
Industry
3
pro The Rundown team

Find Winning Ad Creative Combinations with Claude Cowork and Meta MCP

I use Claude Cowork and Meta MCP to map my existing ad creative data and find winning combinations. Once the data is mapped, I can usually identify one concept that wins more often than the others, has absorbed more spend, and still maintains an efficient CPA. That is the winning concept, and it is where I should focus 60% to 80% of my production time. Step-by-step: 1. I connect Claude Cowork to Meta MCP and Google Drive. 2. I place the brief for every ad I published in the past 365 days into one Google Drive folder. Each brief includes the script, format, offer, and persona it was written for. 3. I prompt Claude to work through the Drive folder and build a spreadsheet tagging every ad by persona, angle, offer, and format. 4. I prompt Claude to pull each ad’s spend and CPA through Meta MCP and add those metrics to the spreadsheet. 5. I ask Claude to turn the spreadsheet into a flowchart in which persona branches into angle, angle branches into offer, and offer branches into format. Each branch includes its spend and CPA. After the data is mapped, I use the flowchart to identify the winning concept and prioritize it in production.

Tools used
Industry
2
pro The Rundown team

Organize Short-Film Clips by Shoot Session with Claude

My friend shot a short film and gave me his hard drive to help with post-production. It contained more than 400 clips, with no clear way to tell when each one had been shot. I asked Claude to review the metadata for every clip and group them by timestamp, so they were organized by shoot session instead of sitting in one large folder. Claude also built a spreadsheet listing each clip, its shoot session, the date, runtime, and file size. This saved my friend the hassle of reviewing every clip manually. Step-by-step: 1. I received my friend’s hard drive with more than 400 short-film clips. 2. I asked Claude to review the metadata for every clip. 3. I had Claude group the clips by timestamp and organize them by shoot session. 4. I had Claude create a spreadsheet with each clip’s shoot session, date, runtime, and file size. 5. My friend could avoid going through every clip manually.

Tools used
Industry
0

Build a Pet-Sitting Booking App with Google AI Studio and Claude

A friend who had just started a pet-sitting and dog-walking business asked me to build a booking app. I used Google AI Studio to design the initial prototype. The process was straightforward, and I had a basic working system running within two hours. AI Studio created a Firebase database to store the details and was also effective at designing frontend changes. It published the app for me, and the resulting UI was intuitive. After demonstrating the app, I identified many additional features that needed to be added. This went beyond AI Studio’s capabilities, so I exported the code from AI Studio and started using Claude. I asked Claude to analyze the code and suggest the required changes. Claude identified critical security flaws in the database. I fixed them manually at first, but then realized that Claude could access the Firebase database and fix issues automatically. I continued prompting Claude with additional feature requests, and it built them. There were errors along the way, so I needed to be familiar with Google Chrome’s developer tools to copy the errors and ask Claude how to fix them. I used MailJS for email templates and Resend for email transport. I stored the app in GitHub and allowed Claude to access the repository so it could commit changes automatically. I ran the app locally with npm during development and then hosted it on Vercel. Eventually, I purchased an inexpensive domain name, and the app is currently hosted at Names. One major problem was that when Google AI Studio created the Firebase database, the permissions were locked, preventing me from making administrative changes. I solved this by recreating the database and asking Claude to write the SQL query to set it up. The permissions were still tricky, and I had to continue asking Claude to correct them. Google’s service permissions can be difficult to understand, and finding the correct settings was not always easy. Firebase was also complex to navigate, and getting the permissions configured correctly took time. Once I allowed Claude to connect to the app and its background services through the Google plugin, development became much faster. However, you need to trust the tool carefully and always work on a copy of the live app. Overall, I think app development with Google AI Studio and Claude is impressive. You can create professional apps quickly. I come from an IT support background, though, and I think people who are new to IT may find it difficult to troubleshoot errors without a basic understanding of networking and systems administration. I also built a litter-tracking app using ChatGPT, and it was equally effective. I eventually started using Codex and Claude Code, but I think standard Claude and ChatGPT are more intuitive for nontechnical users. Step-by-step: 1. I used Google AI Studio to create an initial booking-app prototype for a pet-sitting and dog-walking business. 2. I used the Firebase database created by AI Studio to store the app’s details and used AI Studio to design frontend changes. 3. I published the initial app with AI Studio and demonstrated it to identify additional features. 4. I exported the code from AI Studio and asked Claude to analyze it and suggest changes. 5. I addressed the critical database security flaws identified by Claude, first manually and later by allowing Claude to access the Firebase database. 6. I prompted Claude to build additional features and used Google Chrome’s developer tools to copy errors and ask Claude for fixes. 7. I recreated the Firebase database when AI Studio’s locked permissions prevented administrative changes, then asked Claude to write the SQL query to set it up. 8. I used MailJS for email templates and Resend for email transport. 9. I stored the app in GitHub and allowed Claude to commit changes automatically. 10. I ran the app locally with npm during development, hosted it on Vercel, and later purchased an inexpensive domain name that is currently hosted at Names. 11. I connected Claude to the app and background services through the Google plugin, while continuing to work on a copy of the live app.

Tools used
Industries
5

Analyze Gmail response times and unresolved questions in legal counseling

I built a workflow to evaluate whether communication with a legal counseling service was as slow and incomplete as it felt. Email was my primary—and necessary—communication channel with them. I had become increasingly dissatisfied with delayed replies, partial answers, and questions that seemed to remain unresolved. Rather than relying only on memory or frustration, I asked GPT to review the relevant Gmail correspondence and turn it into a structured communication inventory. The workflow identified my outgoing questions, their replies, and whether each question had been fully answered, partially answered, or left open. From that inventory, we could calculate concrete indicators such as the median response time, the longest delay between a question and a substantive reply, and the number of questions that remained unresolved or were only partly addressed. This was useful because long email threads can create a distorted sense of what happened. A few frustrating exchanges can dominate memory, while other delays or omissions disappear into dozens of messages. Structuring the correspondence made the pattern measurable. The analysis was not meant to decide whether the counselors were “good” or “bad.” It was meant to answer narrower questions: How quickly were questions usually answered? Which ones were not answered? Were replies resolving the issues raised, or only responding to part of them? Afterward, we created a clear list of the questions that were still open. I used that list as a set of dossier questions when moving the case to another counselor, turning the analysis into practical continuity rather than just a complaint about the past. In simple terms: Gmail correspondence → question-and-response inventory → response-time and completeness analysis → unresolved-question list → handover to another counselor What I liked about this workflow is that it turned a vague feeling that “this communication is not working” into a documented overview I could actually use. Step-by-step: 1. I gathered the relevant Gmail correspondence with the legal counseling service. 2. I asked GPT to identify my outgoing questions, the counselors’ replies, and the status of each question. 3. I classified each question as fully answered, partially answered, or left open. 4. I calculated indicators including the median response time, the longest delay before a substantive reply, and the number of unresolved or partly addressed questions. 5. I created a clear list of the questions that remained open. 6. I used that list as dossier questions when handing the case over to another counselor.

Tools used
Industry
#emailanalysis
2