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.

Audit Open Decisions Before Generating Film Shots

Ten days ago, I posted about keeping a `HANDOFF.md` so an AI film project doesn't lose the decisions it has already made. This is the other half, and it turned out to be the expensive one: the decisions that haven't been made yet. Credit where it belongs: Tony Ojeda posted a spec-generator agent that sits between an idea and implementation. The rule I borrowed is his: the agent inspects what already exists before proposing anything. I applied it to film production instead of code. I pointed an agent at my production documents for a short film I hadn't started generating and asked it to identify what was still undecided, what each item affected, and what would break if it were decided late. It came back with ten open decisions. One of them was worth the whole exercise. My environment description is locked verbatim across all 40 shots so the world stays identical. The film is called *The Thaw*. Whether the ice visibly melts during the film is written down nowhere. If I decide that in week three, all 40 keyframes get regenerated at once. I would have found out around shot 12. The counterintuitive part is who writes the list: not me. Asking the person who already has the whole film in their head what's missing gets you very little, because they have all of it—and that's exactly why they can't see the hole. The list has to come from something that only knows what's written down. Step-by-step: 1. I put the open questions in section 0 of the handoff, above everything else, so it's the first thing read and the first thing emptied. 2. I have the agent write that list, not me. It reads every existing document for the project and returns only what it cannot know from them. 3. I have it return three things for each item: what's undecided, which shots it affects, and what breaks if it's decided late. The third column sets the priority. 4. I have it sort by what costs the most to change afterward, not by what's easiest to answer. 5. I keep one hard rule: while an open question affects a shot, that shot doesn't get generated. The question gets decided, or deferred in writing with the cost of being wrong stated. 6. Every answered item leaves section 0 through one of two doors: into the closed canon or into the rejected list. Nothing is simply deleted. 7. I ask specifically about the things that go missing every time: the rule of the world; the physical scale of anything impossible, such as whether the character can touch or climb it; any object appearing in more than one shot; screen direction; how it ends; who speaks and in what voice; and the delivery format. 8. When it finds nothing real, it says so. A list padded to look thorough is worse than an empty one. The version I'd used for a year ran at the end of a session and recorded what got decided. Running it at the start, focused on what hasn't been decided, is the same document pointed the other way—and it's the direction that saves money.

Guillermo Gómez
  • Claude Code
3

Recover Songs, Books, and Videos from Vague Memories

Sometimes I remember something perfectly badly: not its title, creator, or where I found it, but a sound, a color, a vague cover, a sentence, or a period in my life. I know it exists because I loved it, but I cannot name it. I use AI and my digital traces to recover songs, books, videos, articles, and quotes. Memory is not a catalog; it stores traces. AI can turn those traces into searchable hypotheses. Step-by-step: 1. I dump every surviving clue without waiting for a proper search query. The clues can be as rough as “The title sounded like nu nau tau,” “It was ambient or humming,” “The cover was maybe a green desert?” or “I knew it around 2019.” Another example is: “A book about makers and Disney. White 3D-printed figures, tiny people, and bears on a blue cover.” This is raw memory evidence. 2. I separate certainty from guessing by labeling each clue as certain, fairly sure, possible, or probably distorted. I keep uncertain clues, but do not treat them as facts. A wrong attribution or outdated cover does not invalidate everything else. 3. I reconstruct the original encounter. I ask where I was and whether I Shazamed it, saved it, sent it to someone, screenshotted it, or bought it at a book fair. In one case, I remembered hearing a song in someone’s car and Shazaming it because I could not parse the pronunciation. Remembering that capture action pointed to a retrieval source. 4. I search my own collections first: playlists, liked songs, Shazam history, saved videos, old posts, messages, bookmarks, notes, photos, receipts, and reading lists. The object may already be there under metadata I no longer remember. I start with the smallest reliable fragment. 5. I search for “nu” inside my playlists after remembering “nu nau tau.” That recovered Man O To — Nu. The artist and title had blended into one phrase, and the song was sitting in several playlists, including my Shazam collection. A clue does not need to be complete; it only needs to be distinctive enough inside the right collection. 6. I allow memory to scramble metadata. An artist and title may merge, album art may become song art, and a quotation may survive with the wrong poet attached. I split remembered phrases, swap artist and title, try different word boundaries, consider older releases, and search phonetically using similar syllables, vowel sounds, homophones, alternate spellings, or other languages. I also ask what the cover looked like when I knew it, because artwork changes. 7. I use context and cross-reference traces. A year, trip, relationship, or platform can narrow the search more than a half-correct title. Spotify might preserve the song, Shazam the discovery moment, and an old message the recommendation. Old posts are accidental archives, and dead links may still leave names, dates, or descriptions. If memory fails completely, I inspect behavior from the relevant period, such as repeated listening, watch history, purchases, or library loans. 8. I let AI propose candidates and compare them against several independent clues, including sound, subject, period, cover, and personal context. One matching detail is not confirmation. I show titles, covers, creator names, and short descriptions because recognition may succeed where recall fails. Rejections also help: “No, but the cover was more minimal,” “The title was shorter,” or “It was fiction, not nonfiction.” Each correction sharpens the search. 9. I pay attention to the strangest clue. The blue cover with white figures, bears, and a makers-and-Disney theme led to *Makers* by Cory Doctorow. 10. Once I confirm the object, I save the title, creator, link, why it mattered, and how I recovered it. For example: - Clue: “nu nau tau” - Encounter: heard in someone’s car and Shazamed - Search: Spotify/Shazam collection → “nu” - Result: Man O To — Nu - Distortion: artist and title blended together This becomes a retrieval playbook: which clues survive, where traces live, and how my memory distorts them. The overall workflow is: collect fragments → mark uncertainty → reconstruct the encounter → search personal traces → try phonetic, visual, and contextual clues → compare candidates → recognize and confirm → save the result and retrieval path. I do not need to remember the database fields. I need enough fragments to rebuild the trail. Sometimes the best clue is what I did when I first encountered something. Sometimes it has been sitting in five of my own playlists while I spend years wondering what it was called. 😑😭🎧

Fien De Waele
  • ChatGPT
2

AI Lead Qualification and Follow-Up Workflow

I use this workflow to handle new business enquiries by connecting AI to the actual business process instead of using AI as a standalone chatbot. The process moves each lead from AI qualification to a CRM update, sales notification, and follow-up. AI extracts the service required, budget, location, and urgency, then routes the lead based on the result: - High intent: Notify sales immediately - Medium intent: Start an automated follow-up - Low intent: Add the lead to a nurture sequence Step-by-step: 1. Capture the new business enquiry. 2. Use AI to extract the service required, budget, location, and urgency. 3. Update the CRM with the qualification details. 4. Route the lead according to its intent level. 5. Notify sales immediately for high-intent leads, start automated follow-up for medium-intent leads, and add low-intent leads to a nurture sequence.

Hashim khan
  • ChatGPT
1

Choose Your Next Read from a Goodreads TBR with ChatGPT

I love reading, but I’m indecisive about what to read next. Lately, I’ve been getting recommendations from ChatGPT, which has led me to keep adding books to my to-read list instead of tackling the books that have been there for years. At the same time, searching through my 200 existing TBR books on Goodreads for one that matches my precise mood would be too time-consuming. To solve this, I exported all the books from my Goodreads bookshelf as a CSV file, uploaded it to ChatGPT, and asked it to recommend books from my “to-read” list that matched a description of what I was currently in the mood to read. For example, I asked it to recommend a book from my TBR list that was published in the 19th or 20th century and featured a strong, unforgettable heroine. It gave me a few options, and I decided to read *O Pioneers!* by Willa Cather next. One note: ChatGPT summarizes the plots of the books it recommends, so I suggest adding “no spoilers, please” to your prompt. Step-by-step: 1. I exported all the books from my Goodreads bookshelf as a CSV file. 2. I uploaded the CSV file to ChatGPT. 3. I described the kind of book I was currently in the mood to read, including publication period and character preferences. 4. I asked ChatGPT to recommend books only from my existing Goodreads “to-read” list. 5. I added “no spoilers, please” to prevent plot summaries from revealing too much. 6. I chose *O Pioneers!* by Willa Cather from the recommendations.

Zeniya Cooley
  • ChatGPT
1

Use AI Checkpoints to Optimize Goals, Not Just Metrics

Tell AI the Real Goal, Not Just the Scorecard THE PROBLEM When we give AI a task, we often describe success through measurable criteria: be fast, minimize errors, use fewer resources, produce a certain format, reach a quality score, or complete a list of steps. Those criteria are useful, but they are usually not the actual goal. A high score matters because it is supposed to indicate that the AI is doing something useful. Efficiency matters because we want to achieve something without wasting resources. A specific layout matters because someone needs to use the result afterwards. If the proxy becomes more important than the purpose behind it, the AI can technically satisfy the instructions while missing what we actually wanted. So I started making the hierarchy explicit. THE WORKFLOW Before a substantial task, I explain four things: Step-by-step: 1. The real goal What am I ultimately trying to accomplish? 2. Why that goal matters What function should the result serve in the real world? 3. The success criteria What signals, scores, constraints or output requirements help us judge whether we are getting there? 4. The important distinction Those criteria are indicators of success, not the goal themselves. Then, before execution, I usually ask for a short non-technical plan in plain language. Not code. Not internal terminology. Not a wall of implementation detail. I want the AI to explain: - what it thinks I am trying to achieve - what steps it plans to take - in what order - what it expects each step to accomplish - where it sees possible problems or ambiguity - what the final result should look like - where it will show me intermediate results before continuing That last point matters. For larger tasks, I do not want one giant jump from instruction to finished output. I want the AI to build in intermediate checkpoints with actual results. That can mean: - showing the first batch before processing the rest - giving a sample classification before applying it to hundreds of items - sharing an early pattern it found before building the full analysis around it - showing the structure of a document before filling every section - reporting that a planned step produced an unexpected result before silently adapting everything downstream The checkpoint should contain something useful enough to evaluate. Not just: «Step 2 completed.» But rather: «I processed the first 50 items. Most fit the categories we expected, but 12% fall into a pattern we did not account for. Here are three examples and how I suggest handling them.» That lets me see whether the task is still heading toward the actual goal. For example, my instruction might be: «The real goal is X. We care about Y because it helps achieve X. Z is a useful metric, but do not optimize Z at the expense of X. Before executing, explain in non-technical language how you plan to approach the task, step by step. Build useful intermediate results into the plan so I can inspect the direction before too much work depends on it. Flag anything that seems likely to satisfy the metric while undermining the actual purpose.» I can then say: «Yes, that is what I mean.» Or: «No, step 3 is where you are misunderstanding me.» And later: «This first batch looks right. Continue.» Or: «Stop here. The pattern you found changes how I want the rest handled.» Correcting a five-line plan or an early sample is much cheaper than correcting an entire finished workflow, analysis or file operation. WHY I LIKE IT This turns the interaction from: instruction → execution → correction into: purpose → shared understanding → visible plan → intermediate results → adjustment → execution It also helps me learn how the AI works. I do not need to understand every technical mechanism underneath it, but I do want a usable mental model of how it approaches problems. Over time, that makes collaboration easier because I get better at giving instructions, spotting misunderstandings early and knowing where extra context will matter. Intermediate results also make autonomy safer. The AI does not need permission for every tiny action, but it should avoid disappearing into a long chain of dependent decisions when an early misunderstanding could invalidate everything that follows. This can reduce unnecessary work, wasted compute and repeated corrections. The AI can still work independently once the direction is clear. The point is not to micromanage the process. The point is to make sure we are optimizing the right thing, travelling by a route we both understand, and checking occasionally that we are still on that route. A metric is a thermometer. The goal is to make the room warm, not merely to make the thermometer say 21°C.

Fien De Waele
  • ChatGPT
2

Build a Self-Hosted AI RSS Briefing with OpenAI Embeddings

I built SITREP, a self-hosted AI RSS reader that turns roughly 30 articles a day into a single briefing I can act on. It runs in a Docker container on my home NAS, ingests full article text instead of the teasers most feeds provide, and uses OpenAI embeddings to collapse the same story reported by five outlets into one item. Every morning, it writes “The Brief” with the sections Headline, Defense & Aerospace, AI & Tech, and Elsewhere, followed by the two sections I care about most: Implications for my company and Personal Leverage. Each section includes numbered citations linking back to the source articles. SITREP only proposes leverage when the evidence supports it. It also uses a curated, non-sensitive profile of my business lanes and priorities, synced from my Obsidian vault, so its recommendations are specific to my work as a defense-industry VP rather than generic advice. I can select Update Brief at any time during the day to regenerate the briefing in place with a timestamp. Step-by-step: 1. I run SITREP in a Docker container on my home NAS. 2. I have it ingest the full text of roughly 30 articles each day rather than relying on feed teasers. 3. I use OpenAI embeddings to identify and combine the same story when it is reported by multiple outlets, including cases where five outlets cover it. 4. Each morning, SITREP generates “The Brief” with the sections Headline, Defense & Aerospace, AI & Tech, and Elsewhere. 5. It adds Implications for my company and Personal Leverage, using my curated, non-sensitive business profile and priorities synced from Obsidian. 6. It includes numbered citations to the source articles and proposes leverage only when the evidence supports it. 7. I select Update Brief during the day when needed, and SITREP regenerates the briefing in place with a timestamp.

Ray Toth
  • ChatGPT
2

Create a College Assignment Tracker from Syllabi with Codex

To stay organized, my daughter used to spend hours entering every assignment from her college syllabi into a Google Sheet to create a semester assignment tracker. To save her that data-entry time, I put all of her downloaded syllabi into a folder on my computer. I then directed Codex to access the folder, read the syllabi, and create a spreadsheet with the course name, assignment, due date, and a completed column with a checkbox. Codex created a beautiful, easy-to-sort-and-filter spreadsheet containing all of the assignments. Now, my daughter only needs to spend a few minutes reviewing the spreadsheet before starting her semester. Step-by-step: 1. I collected all of my daughter’s downloaded college syllabi in a folder on my computer. 2. I directed Codex to access the folder and read the syllabi. 3. I asked Codex to create a spreadsheet with the course name, assignment, due date, and a completed column with a checkbox. 4. I reviewed the resulting spreadsheet, which included all of the assignments and was easy to sort and filter. 5. My daughter now spends a few minutes checking the spreadsheet and is ready for her semester.

Karin Hutchinson
  • ChatGPT
2

Build a Reddit Signal Agent for Weekly Travel Insights

I’m building an AI travel assistant called SundayAtlas, and I wanted a systematic way to keep learning from what travelers are talking about between individual user conversations. Reddit is useful for this because people are unusually candid about trip-planning frustrations, destinations, bad experiences, and what they wish travel products did better. The problem is volume: I didn’t want to manually read hundreds of posts every week, so I built a Reddit Signal Agent that does the first pass and sends me a weekly travel-insights newsletter. Each week, the workflow collects posts from selected travel subreddits and passes them through an LLM-based classification and analysis pipeline. The report is organized around: - New or intensifying signals - Steady baseline themes - Fading signals - Rising destinations - Competitor mentions - Anomalies unusual enough to warrant attention This week, for example, the agent analyzed 77 posts. It surfaced a spike in discussion around short-term rental restrictions in Tokyo, growing payment friction for travelers in Japan, increased interest in quieter alternatives to heavily touristed Asian destinations, and recurring trust issues involving travel platforms. I use the newsletter as one input into product discovery for SundayAtlas. It gives me a weekly pulse on problems and behaviors that may be worth investigating further, rather than relying purely on my own assumptions about what travelers need. Step-by-step: 1. I collect recent posts from a defined set of travel subreddits. 2. I clean and structure the Reddit data for analysis. 3. I run the posts through an LLM using a defined signal taxonomy. 4. I aggregate the classifications across the weekly sample to identify patterns, changes, and anomalies. 5. I generate the report in a consistent newsletter format. 6. I run the full pipeline automatically with GitHub Actions so a new report is produced each week. I built the agent in Node.js and used Claude Code extensively during development. Evaluation ended up being the most important part. Early outputs looked convincing, but I had no objective way to know whether the classifications were actually good. I manually labeled 91 Reddit posts and created a blind golden dataset, then built a deterministic scorer to compare the agent’s classifications with my labels. The first held-out evaluation scored only 0.23, which gave me something concrete to improve against. I iterated on the classification approach and inspected individual failures. Along the way, I found three separate defects in the data collection pipeline. The held-out score eventually improved to 0.61, while the score across the full dataset increased from 0.33 to 0.67. The finished loop is: Reddit conversations → signal classification → trend analysis → weekly insights newsletter → product discovery for SundayAtlas The golden dataset remains underneath the workflow as a regression test, so when I change the agent, I can measure whether I’ve actually improved it.

Anon Dolphin
  • Claude Code
2

Build a Full-Stack Bot Reaction Engine with Claude and Cost Controls

Faceplant is a real full-stack app, not a mockup. It uses a FastAPI and PostgreSQL backend, a React and MUI frontend, and the Anthropic API (Claude) to power bot replies. The core is the reaction engine. When a human posts, the backend schedules two timed waves of reaction jobs. A background scheduler built with APScheduler polls for due jobs, calls Claude for an in-persona reply, and writes that bot’s comment and like. The 56 personas are stored as data in a roster file. Adding a voice requires only one new entry, so the crowd can scale without additional code. A subset of the personas are GIF-first bots: they ask the model for a caption and search tag, then pull a matching GIF from Giphy. The part I’m proudest of is the honesty layer. Every Claude call is metered and priced, and “The Meter” rolls the data up live with the cost per post, the dollar-per-minute burn rate, and a “spent on nobody” line for bot-to-bot chatter with no human at either end. A “% human” badge drains toward “dead internet” for each thread. The dead-internet loop—bots posting and replying to one another with no human present—is disabled by default and protected by three guardrails: generation decay, a per-thread cap, and a global spend kill switch. Optional cost controls include the Message Batches API at half price and prompt caching for a shared house-style prompt. The whole project is a working demonstration that manufactured engagement is cheap to produce and expensive to mean anything. Step-by-step: 1. I built the app with a FastAPI and PostgreSQL backend, a React and MUI frontend, and Claude replies powered by the Anthropic API. 2. When a human posts, the backend schedules two timed waves of reaction jobs. 3. APScheduler polls for due jobs and triggers Claude to generate an in-persona reply before writing the bot’s comment and like. 4. I keep the 56 personas in a roster file so adding a voice requires only one new data entry. 5. For GIF-first bots, I have the model generate a caption and search tag, then use that tag to pull a matching GIF from Giphy. 6. I meter and price every Claude call, then display live cost per post, dollar-per-minute burn, “spent on nobody” costs, and the “% human” status for each thread. 7. I keep bot-to-bot activity disabled by default and limit it with generation decay, a per-thread cap, and a global spend kill switch. 8. I can reduce costs further with the Message Batches API at half price and prompt caching on a shared house-style prompt.

Ben McOsker
  • Claude Code
  • Claude
4

AI Archery App for Arrow Detection, Grouping, and Scoring

I built an archery app that uses AI to detect arrows and bullseyes on an archery target. It groups the arrows, measures how tight the groupings are, and calculates each arrow’s distance from the bullseye. It also shows the arrows’ locations and their relationship to the bullseye—for example, whether a shot is too far left, right, high, or low, or is dead on. The app can use targets from competition standings to score a shoot according to different standards. After shooting a set of arrows, the archer takes a photo, and the AI detects the target, identifies one or more bullseyes, predicts which arrows are intended for each target, and completes the measurements and scoring almost instantly. The results can then be sent to a coach, who can provide feedback, tips, and techniques to help improve the archer’s shooting. I trained my own model using 3,000 photographs that I took and hand-labeled with the bullseyes and arrows identified. I ran a series of training sessions over several weeks and refined the model to improve its accuracy. It currently achieves about 95% accuracy for arrows and about 90% accuracy for bullseyes. Step-by-step: 1. I took 3,000 photographs of archery targets. 2. I hand-labeled the arrows and bullseyes in those photographs. 3. I trained my own AI model in a series of sessions over several weeks. 4. I refined the model to improve its detection accuracy. 5. An archer shoots a set of arrows and takes a photo of the target. 6. The app detects the target, one or more bullseyes, and the arrows, then predicts which arrows are intended for each target. 7. The app groups the arrows, measures grouping tightness and distance from the bullseye, identifies each arrow’s position relative to the bullseye, and scores the shoot according to the selected standard. 8. The results are sent to a coach for feedback and advice on improving the archer’s shooting.

Sam Reti
  • Claude Code
4

AI Software Development Lifecycle for Structured Coding Workflows

This Codex-driven workflow takes a software request from problem understanding through implementation, validation, review, and delivery evidence. Instead of asking an AI coding agent to simply “build the feature,” it gives the agent an explicit development lifecycle with defined responsibilities, deterministic validation gates, repair loops, and human checkpoints. The goal is to make AI-assisted development more structured, observable, and recoverable. It can be used for new feature implementation, bug fixing, refactoring, test creation and improvement, code quality and security hardening, and documentation and automation changes. The core principle is simple: Don't give the AI only a coding task. Give it an engineering lifecycle to work on. Step-by-step: 1. Understand the problem. Clarify the request, identify the desired outcome, define the scope, and surface ambiguity before implementation begins. The output is problem understanding and scope. 2. Define constraints. Identify technical, functional, non-functional, compatibility, and out-of-scope constraints. The output is a constraint set. 3. Plan. Analyze implementation options, select an appropriate approach, break the work into tasks, and define acceptance criteria. The output is an implementation plan. 4. Inspect the existing system. Review the relevant codebase, dependencies, current behavior, and affected components before making changes. The output is system context. 5. Implement. Make the smallest appropriate code changes while following the existing project’s conventions and the approved plan. The output is code changes. 6. Run deterministic validation. Run tools that can objectively validate the implementation, including formatting, linting, type checks, builds, unit tests, and other available automated checks. The output is validation results. 7. Review. Evaluate the implementation against the original requirement, the plan, code quality expectations, security considerations, and potential regressions. The output is review findings. 8. Repair and iterate. If validation or review identifies problems, diagnose the issue, make the required correction, and repeat validation. The output is a corrected implementation. 9. Verify. Confirm that the acceptance criteria are satisfied and that the relevant tests and checks provide sufficient evidence for completion. The output is a verification result. 10. Produce delivery evidence and handoff. Summarize what changed, what was tested, what passed, known limitations, and any remaining decisions requiring human attention. The output is delivery evidence and a human handoff. The core loop is: Implement → Validate → Review → Repair → Validate → Verify. Testing and review are treated as part of development rather than activities performed only after coding is “finished.” AI coding agents are increasingly capable of inspecting repositories, writing code, running commands, and responding to failures. The problem is that capability alone does not provide an engineering process. This workflow separates the responsibilities an AI coding agent performs into explicit stages. It applies several principles: - Problem before implementation: Understand what needs to change before writing code. - WHY before HOW: Establish the intent and constraints before choosing an implementation. - Single responsibility per stage: Give each stage a defined purpose and output. - Deterministic validation first: Use tests, linters, type checkers, builds, and other deterministic tools wherever they can establish correctness. - Failure localization: When something fails, identify which stage or assumption needs correction. - Evidence-based completion: Support completion with validation and review evidence rather than an AI declaration that the task is finished. - Human checkpoints: Use automation to accelerate execution without removing human judgment from important decisions. The broader idea is: The AI should participate in the engineering system, not become the engineering system.

aditya gupta
  • Codex
  • ChatGPT
5

Use Grok to file small-claims garnishment paperwork

We needed legal help with a small-claims case. A company owed us $3,500, and the cost of hiring a lawyer would have far exceeded that amount. I used Grok to explain what to do and how to file the paperwork. Last week, I served three writs of garnishment on banks that might hold the company’s money. Whichever bank has its account will now have to freeze the account and turn that amount over to us. Before AI, I would have had no idea how to do this on my own. Grok scans my completed documents for errors and directed me to the correct county sheriff’s office to have the papers served. It can explain things more simply when I don’t understand them. Need legal help in your state? AI can guide you step by step. Step-by-step: 1. I explained the small-claims situation to Grok, including that the company owed us $3,500 and that hiring a lawyer would cost more than the amount owed. 2. I asked Grok what to do and how to file the paperwork. 3. I used Grok to scan my completed documents for errors. 4. I followed Grok’s direction to the correct county sheriff’s office for serving the papers. 5. I served three writs of garnishment on banks that might hold the company’s money. 6. The bank holding the company’s account will have to freeze the account and turn the amount owed over to us.

Duffy Russell
2

Build a Flexible Learning Path Around Current Curiosity

I use AI to turn shifting interests into a flexible learning route instead of committing too early to one fixed curriculum. I start with what I am genuinely curious about: the topics currently holding my attention, what I already know, what I want to understand better, and what kind of learning feels useful. Rather than choosing one large Coursera program and hoping it remains relevant for months, I ask AI to identify the underlying themes. Several interests that look unrelated on the surface may share the same foundations. Other topics may be better approached through design, psychology, technology, history, or systems thinking. I can then combine courses from different programs instead of treating one certificate as the only valid path. The learning route stays flexible: I can postpone a course, insert a new one, or drop a subject that turns out to be less interesting without treating that as failure. The result is less like enrolling in a predefined curriculum and more like building a living learning map. AI helps with course discovery, sequencing, overlap, prerequisites, and the relationships between different topics. I remain the one deciding what is worth following. The goal is not maximum completion. It is to keep learning connected to genuine curiosity. Step-by-step: 1. I identify the topics currently holding my attention, along with what I already know, what I want to understand better, and what kind of learning feels useful. 2. I share that context with AI and ask it to identify the underlying themes across my interests. 3. I use those themes to determine whether different topics are connected through shared foundations or are better approached through design, psychology, technology, history, or systems thinking. 4. I discover and combine courses across different programs instead of committing to one large Coursera program or treating one certificate as the only valid path. 5. I ask AI to help with course sequencing, overlap, prerequisites, and the relationships between topics. 6. I adjust the learning route as my curiosity changes by postponing, adding, or dropping courses while deciding for myself what is worth following.

Fien De Waele
  • ChatGPT
2

Automate Skilled Nursing Therapy Scheduling with Claude and OR-Tools

I used Claude to build an automated patient scheduler for my husband, who is the Director of Rehab at a skilled nursing facility. Each week, he takes a patient list in Excel and schedules each patient for the types of therapy they need—speech, physical therapy, or occupational therapy—based on therapist availability. The variables change from week to week, making the process time-consuming and error-prone. Automating it saves him at least an hour each week, usually on Sundays when he creates the schedule for the coming week. He uploads the patient spreadsheet and clicks “Generate schedule.” Under the hood, the app uses Google’s OR-Tools CP-SAT solver to optimize the schedule against hard constraints and weighted priorities. Hard constraints include never exceeding a therapist’s daily capacity or a patient’s maximum weekly visits. Weighted priorities include giving higher-acuity patients preference when capacity is tight, providing every patient with daily contact when possible, and balancing the workload across the week instead of simply sorting patients by who fits first. I wrote zero code. I gave Claude all the features in plain English, and it wrote the app in Python and created a test suite of approximately 35 tests. One test was added after we found and diagnosed a bug in production. I also had Claude walk me through creating a `.exe` file that I could send directly to my husband so it would open on his PC. Patient data never leaves his machine. New versions are easily compiled in GitHub, where patient data never touches the process, and enhancements only require sending a new file. Step-by-step: 1. I described the scheduling requirements and features to Claude in plain English. 2. Claude wrote the scheduling app in Python and created a test suite of approximately 35 tests. 3. I provided an Excel spreadsheet containing the weekly patient list. 4. My husband uploads the spreadsheet and clicks “Generate schedule.” 5. The app uses Google’s OR-Tools CP-SAT solver to schedule speech, physical therapy, and occupational therapy according to therapist availability and patient needs. 6. The solver enforces therapist daily-capacity limits and patient maximum-weekly-visit limits. 7. It also applies weighted priorities: higher-acuity patients receive preference when capacity is tight, every patient receives daily contact when possible, and the workload is balanced across the week. 8. After finding and diagnosing a production bug, we added a corresponding test to the suite. 9. I used Claude’s guidance to create a `.exe` file that opens on my husband’s PC, keeping patient data on his machine. 10. I compile new versions in GitHub without patient data entering that process, then send the updated file when enhancements are needed.

killian piraro
  • Claude
0

Compare Tools and Software Against Your Actual Requirements

I use this workflow when I have a problem but do not yet know which software, service, or method could solve it. Instead of immediately asking for “the best app,” I describe the situation in ordinary language: what I am trying to do, what currently annoys me, what I have already tried, and what would make a solution useful. Then AI helps me map the tool landscape. The important shift is that the criteria emerge from the conversation. The workflow does not search for an abstract “best tool.” It builds a model of what a good tool means for this particular problem and person, then evaluates the available options against that model. This also makes the result reusable. When my requirements change later, I can update the comparison rather than redo the entire research process. Step-by-step: 1. I describe the problem and desired outcome. 2. I identify the requirements that actually matter in this situation. 3. I research the relevant tools and approaches. 4. I compare them side by side using practical criteria such as functionality, price, pricing model, platform, setup effort, learning curve, and ease of use. 5. I ask questions where the requirements are still unclear. 6. I react to the comparison—for example, by noting that something is too expensive, that a subscription is a dealbreaker, that an option looks cumbersome, that I need more statistics, or that I do not need project management. 7. I update the comparison using that feedback instead of starting the search from scratch. 8. I narrow the field and, where useful, test the remaining options on one small real-world task. 9. I record why the chosen tool fits and why seemingly similar alternatives did not.

Fien De Waele
  • ChatGPT
2

Automate Support Ticket Triage with Awish

I built an Awish workflow that handles a support ticket before anyone on the team opens it. I realized support tickets were not just taking time to answer. Someone still had to understand the problem, decide how urgent it was, search the documentation, route it to the right person, and prepare a response. I wanted that first layer of support work to happen automatically. I opened Awish and wrote: “Whenever a new support ticket comes in, understand the issue, determine its urgency, check our documentation, prepare a response, create a Jira issue if it looks like a product bug, and escalate anything important to the team before taking customer-facing action.” Awish understood the request, planned the workflow, and showed me which applications it needed. Step-by-step: 1. I described the complete support process I wanted in the Awish chat. 2. Awish planned the workflow and selected Zendesk, Notion, Jira, and Slack for the required steps. 3. I connected my accounts and approved the automation plan. 4. When a new Zendesk ticket arrives, the workflow identifies the issue type, urgency, and customer intent. 5. It checks the relevant Notion documentation and prepares a response based on the available information. 6. If the issue looks like a product bug, it creates a Jira ticket with the customer context already attached. 7. Urgent or sensitive cases are escalated to the team instead of being handled automatically. 8. I connected WhatsApp from the Awish chat. I now receive workflow updates there and can manage the automation without opening Awish. Customer-facing actions still stay under my control when approval is needed.

Alper Tayfur
  • Notion
2

Use Claude and ChatGPT to plan and navigate international travel

The Rundown recently held our first in-person retreat in Portugal, which was also my first time traveling to Europe. Claude and ChatGPT were amazing resources throughout the trip, from helping me navigate a chaotic international airport to providing personalized advice on cultural differences, tipping, translating menus, and using public transportation. My wife accompanied me and had plenty of time for solo exploration during the day. She is already a big planner, but a ChatGPT project containing our trip information helped her create a detailed plan, including a packing list, pre-trip checklist, and well-structured day-by-day itinerary for seeing as much of Lisbon as possible. As someone who gets stressed by travel, having an expert with context about my life available in my pocket to answer questions whenever I needed it is something I can’t imagine taking trips without. Step-by-step: 1. I used Claude and ChatGPT for personalized travel guidance during my first trip to Europe. 2. I asked for help navigating a chaotic international airport and handling cultural differences, including tipping, translating menus, and using public transportation. 3. My wife created a ChatGPT project with our trip information to support her planning. 4. She used it to create a packing list, pre-trip checklist, and day-by-day plan for exploring Lisbon during her solo time. 5. I used the tools throughout the trip to answer questions with context about my life and reduce the stress of traveling.

Zach Mink
  • ChatGPT
  • Claude
0

Build a Mobile Game with Astra Through Conversation

I’m building a mobile game called ExoLab Blast with Astra. I developed it through conversation, starting with the basic concept and continuing through testing the game mechanics. Astra also created and repeatedly updated the game’s graphics and UI based on my feedback. Step-by-step: 1. I discussed the basic concept for ExoLab Blast with Astra. 2. I used Astra to build out the mobile game. 3. I tested the game mechanics. 4. I gave feedback on the graphics and UI. 5. Astra created and updated the graphics and UI multiple times based on that feedback.

Derek Phillips
  • ChatGPT
2

Turn a Child’s Drawing Into a Finished Illustration Without Losing Its Character

AI can make a child’s drawing look more polished, but it can also erase exactly what made it interesting. A yellow tree, a rabbit larger than a person, a horse with impossible legs, or a tiny floating object may look like mistakes to a model—but they may be the whole point. I use the child’s drawing as art direction: preserve its visual logic, then build outward. The child supplies the invention; AI helps develop the surroundings. Step-by-step: 1. I read the drawing before transforming it by making a neutral description of what is visible: placement, relative sizes, colours, expressions, unusual shapes, and small details. For example: “A large yellow tree stands on the left. Two tiny figures sit near its trunk. A blue shape fills the lower right.” 2. I avoid deciding what an unclear shape represents. “An oval object with three legs” is more faithful than “a rocket” unless the child confirms it. If possible, I ask the child what is happening, since a strange proportion or colour may have a specific story behind it. 3. I separate essentials from flexible details in two short lists. Essentials might include the yellow tree, oversized rabbit, horse’s pose, characters’ arrangement, and red object in the corner. Flexible details might include lighting, textures, materials, environmental detail, and depth. 4. I make clear that the original is the structural source, not just a mood reference. This gives the model room to work while defining the boundaries. 5. I choose a target style, such as a storybook illustration, watercolour, digital painting, comic panel, or 3D scene. 6. I explicitly ask the model to preserve unusual proportions, unexpected colours, expressions, and relationships between characters. I identify details that must remain, even if they appear anatomically impossible or visually awkward. I avoid vague instructions such as “make it better,” because they leave the model to decide what counts as improvement. 7. I use a starting prompt such as: “Use this drawing as the structural blueprint for a storybook illustration. Preserve the composition, relative sizes, poses, expressions and original colour choices. Keep the yellow tree and the rabbit larger than the person. Do not normalize unusual anatomy or remove unexplained objects. Add texture, lighting and environmental depth around the existing scene.” 8. I treat comparison as part of the workflow because specific instructions do not guarantee a faithful result. I expand the world around the invention: a blank background can become a forest, a blue patch can become a pond if that interpretation fits, and two skiing figures can gain a mountain landscape. 9. I keep the original spatial relationships: who stands beside whom, what dominates the scene, which way characters face, and where empty space matters. I give colour the same care, so a yellow tree does not quietly become green because the model expects green trees. 10. I place the source and result side by side and check whether a character disappeared, the rabbit shrank, the palette changed, or the model invented a focal point, “fixed” an unusual shape, or altered the story. I also watch for generic cuteness—big eyes, pastel colours, and perfect symmetry—which can make very different drawings converge into the same image. I ask whether the result still feels like an expansion of this exact drawing. 11. If most of the result works, I request a targeted edit, such as: “Keep this version, but restore the original hair shape.” “Make the rabbit larger again.” “Return the tree to yellow.” 12. I check the whole image after each local edit because changes can affect other areas. I keep useful versions instead of repeatedly starting over. 13. I treat handwritten text separately. I do not guess unclear wording, correct spelling, or invent labels. If the tool cannot reproduce the text faithfully, I retain the original lettering through a separate editing step. 14. I save the original photo or scan alongside the result, instructions, and useful intermediate versions. I also keep a brief note about protected details to make future transformations easier. 15. Once I have a faithful version, I explore alternatives such as a space setting, surreal painting, or cinematic scene, keeping them as branches from the original. Across several drawings, I preserve recurring colours, shapes, and characters without forcing every image into one rigid style. The child has already decided who exists, what matters, how large things are, and what belongs together. Those decisions are creative direction. A drawing does not need to become less itself to become more finished. The impossible colour may be the atmosphere, and the awkward shape may be the character. The question I return to is: “How can I help this drawing become more fully what it already is?”

Fien De Waele
  • ChatGPT
0

Build a Book-Lending App with Lovable, Claude, and Gemini Without Traditional Coding

I kept forgetting who I had lent books to, and spreadsheets felt like overkill. So I built Runo, a book-lending app for friends, without traditional coding. Runo (runo.club) is a web app where I can catalog my home library, get a unique shareable link, and let friends browse my books and request to borrow them. I can approve or decline each request with one click. Step-by-step: 1. I used Claude to think through the feature set, data model, and UX flow before writing a single prompt. This helped me avoid building the wrong thing first and gave me a clear blueprint for the Lovable prompts that followed. 2. I used Claude to create precise, narrowly scoped prompts for Lovable, with each prompt focused on a single change so existing functionality would be less likely to break. This significantly conserved Lovable credits. The React, TypeScript, and Supabase stack came out of the box. 3. I added two ways to scan books instead of requiring users to type titles manually: - Barcode scanner: Point the camera at an ISBN barcode to autofill the title, author, and cover using the Open Library API. - Cover photo scanner: Photograph the cover so Gemini 2.5 Flash can extract the title and author in under 2 seconds. 4. I routed the cover scanner through a Supabase Edge Function using Lovable’s AI Gateway, so the API key never touches the client bundle. 5. For every bug fix and feature, I followed the same iteration loop: describe the problem to Claude, get a precise Lovable prompt, push the changes to GitHub, and let Lovable auto-sync them. Claude and Lovable’s bidirectional GitHub sync made the process feel like pair programming. Tools used: Lovable, Claude (Sonnet), Gemini 2.5 Flash (via Lovable AI Gateway), Supabase, and GitHub. Live at: runo.club — public beta and free to use. Feedback welcome. #appbuilding #vibecoding #buildinpublic #lovable #nocode

Stoyan Roev
  • Claude Code
  • Claude
  • Gemini
4