An AI workflow is a system that runs on a trigger, does a defined job, and produces a defined output, without you touching it. A single Claude prompt is not a workflow. A system that triggers every Monday, generates 6 captions in your brand voice, queues them in a Notion calendar, and posts them on schedule — that is a workflow.
Here's the real Stashed Instagram caption workflow. 30 minutes/week, zero human in the loop unless we override.
Step 1: the trigger.
Every Monday at 9 AM, OpenClaw triggers. We use the cron built into OpenClaw — same syntax as Unix cron, 0 9 * * 1. Monday 9 AM, India time.
Step 2: the input.
OpenClaw pulls the week's product photos from our Google Drive folder. The folder is /Stashed/This Week/. 6-10 photos per week. If the folder is empty, OpenClaw sends me a Telegram message: "No Stashed photos this week. Drop them in the folder or skip the post." If I don't respond, it skips the week.
Step 3: the brand voice.
The brand voice document is a 500-word file in the same Drive folder. Tone: warm, direct, Indian English with a hint of Tamil flavor. Forbidden words: "synergy", "leverage", "disrupt", "innovative", "AI-powered" (we use AI but don't shout about it). Example captions are in there. The brand voice is the most important part of the workflow — without it, the captions sound like every other brand.
Step 4: the generation.
For each photo, OpenClaw calls Claude Sonnet 5 with: the photo, the brand voice, this week's theme (e.g., "Monsoon essentials", "Back to college", "Friday flex"). Claude returns: 1 caption (max 150 chars), 5 hashtags, 1 emoji for the post.
Step 5: the review.
OpenClaw queues the 6 captions + photos in a Notion database. I get a Telegram ping. I open Notion on my phone, scan the 6 captions, edit any that are off. Usually I edit 1-2. Takes 5 minutes.
Step 6: the schedule.
OpenClaw uses the Meta Graph API to schedule the 6 posts: 1/day, Mon-Sat at 6 PM IST. Sunday is dark — we don't post Sundays. If I want to override, I edit the Notion row. If I want to skip, I delete the row.
The full flow, one line.
Trigger → read Drive → read brand voice → for each photo, call Claude → write to Notion → ping me → wait for edit → schedule via Meta API → done.
The numbers.
Time saved: 4 hours/week (was 4 hours, now 30 minutes review). Engagement rate: 4.1% (up from 2.8% with manual posts — Claude writes better hooks than I do). Reach: 12K-18K/post (up from 8K-10K). Cost: ₹0 (Claude API free tier + OpenClaw self-hosted).
The variations.
Same shape works for: WhatsApp message replies (Maruthi Jewellers), customer service triage (any SMB), lead qualification (any sales team), invoice processing (any ops team), content repurposing (long blog → 5 platform posts), email follow-up (any sales team). The pattern is: trigger, input, voice, generation, review, output. 6 steps. 6 hours to build. ₹0 to run.
The 100+ systems on /agentic-systems use this same shape. Pick one, copy it, change the voice, ship it.