Writing AI + Operations

The inbox is an operating surface

A daily review queue for an owner-operator running their business across three or four channels at once. Drafts replies, classifies messages, and waits for a person before anything ships.

May 2026 9 min read

What we’re building

A daily review queue that takes everything an owner-operator received yesterday across Gmail, Outlook, WhatsApp exports, web form notifications, and forwarded internal requests, classifies each message into a small set of buckets, drafts a CRM note or a todo for the ones that need one, and stages a reply where the message is unambiguous. The queue is one Markdown file. The owner works the queue at a fixed time of day, decides what to send, what to file, what to ignore, and the workflow applies what they decided.

Nothing leaves the workflow without the owner saying yes. Nothing gets posted to the CRM without the owner saying yes. The point is to compress the filter time, not to remove the human filter. The owner’s job changes from ‘read everything everywhere’ to ‘work one queue once a day’.

Who this is for

Owner-operators in the GCC and elsewhere who are running their business across more than two channels at once and feeling the cost. Solo founders, owner-led companies, partners in small firms who have a personal WhatsApp number that’s also a business one. Also useful for chiefs of staff who manage an executive’s inbound across channels.

What you need before starting

A paid Claude Cowork account. A folder in your drive. A way to export from each of your channels into that folder, even manually. For Gmail, the simplest path is to label messages you want routed and use Gmail’s export, or set up a forwarding rule to a dedicated address whose contents you drop into the folder. For Outlook, the same pattern. For WhatsApp, the chat export feature on iOS and Android writes a .txt file you drop into the folder. For web forms, most form tools email the submission, which is back to Gmail or Outlook. The exports don’t have to be elegant. They have to be consistent.

A routing-rules.md file that names your vendors, your partners, the words that flag a lead, the words that flag a support issue, and the people whose messages are private and shouldn’t be routed at all. You’ll write this once and edit it as you spot patterns.

The workflow map

A folder called Inbox/. Inside it, daily subfolders named with the date (2026-05-03/, etc.). Inside each daily folder, the day’s exports as separate files (gmail.eml or gmail.txt, whatsapp-{contact}.txt, forms.txt, forwarded.txt). At the top of Inbox/, the routing-rules.md file and a queues/ folder where the workflow writes the daily queue.

The flow: at end of day, you drop the day’s exports into the date folder. Cowork reads them, applies the routing rules, classifies each message, drafts what needs drafting, and writes the queue to queues/{date}.md. You open the queue the next morning at a fixed time, work through it, mark each entry with one of three actions (send-as-drafted, edit-then-send, ignore), and Cowork applies what you marked. Anything personal stays personal. The routing rules name those contacts, and the workflow leaves their messages out of the business queue entirely.

Claude Cowork setup

Connect Cowork to the folder. Write the routing rules. Run the first day manually. The first week is calibration; you’ll edit the routing rules every evening for about five days and then less often after that.

Prompt block 1: the routing rules

routing-rules.md. The whole file is the operator’s voice, in plain language. You don’t need to make it formal.

Vendors I deal with:
- TechVendor LLC (renewals quarterly, escalate if invoice over AED 5,000)
- {others}

Partners (route to partner-bucket, not lead-bucket):
- {names and email domains}

Leads. Words and phrases that mean a real lead:
- 'pricing for', 'proposal for', 'send me a quote', 'looking for'
- any message from a domain we have not seen before that mentions
  one of our service categories

Support. Words and phrases that mean a support issue:
- 'not working', 'still waiting', 'reply please', 'urgent'
- anything from an existing customer's domain that is not a renewal

Personal contacts (do not route, leave in personal-bucket):
- {family member names and numbers}
- {close friend names and numbers}
- doctor, school, landlord, similar life infrastructure

Noise (route to noise-bucket, do not draft anything):
- newsletters, recruiter pitches, generic vendor pitches we did not
  ask for, automated platform notifications

Urgency rules:
- A lead asking 'today' or 'urgent' or 'EOD' goes to top of queue.
- A support message from a customer who has messaged twice in 48 hours
  goes to top of queue.
- Everything else is normal priority.

Prompt block 2: the daily run instruction

Process today's inbox.

Read all files inside Inbox/{today's date}/. For each message:

1. Identify the sender (email or WhatsApp number).
2. Apply routing-rules.md. Classify into one of:
   lead, support, vendor, partner, finance, internal, personal, noise.
3. If personal: do not include in the queue. Move the message to
   Inbox/personal/{date}/.
4. If noise: include in the queue with no draft, just a one-line
   summary, so I can confirm.
5. For lead, support, vendor, partner, finance, internal: write a
   one-line summary and a suggested next action. If the message is
   unambiguous (a vendor sending a renewal notice with a date, a
   customer asking when a delivery will arrive that we know the
   answer to), draft a reply. If the message is a lead, draft a CRM
   note in the format we use, but do not draft a reply unless the
   ask is specific.
6. Apply urgency rules.
7. Write the queue to queues/{today's date}.md in the order:
   urgent leads, urgent support, normal leads, normal support,
   vendor, partner, finance, internal, noise.

Do not send any reply, do not post to any system, do not move any
file in personal/. Stop and present the queue for review.

Prompt block 3: the queue format

You don’t write this file; the workflow writes it. But you tell the workflow what shape to write in. This is what one entry looks like.

### lead, urgent

From: ahmed@{newcompany}.ae
Channel: gmail
Received: 2026-05-02 16:42

Summary: Asks for a proposal for a six-month retainer, mentions our
F&B case study, wants something by Monday.

Suggested CRM note:
> New lead from Ahmed at NewCompany. F&B retainer interest, 6 months,
> wants proposal by Mon 5/5. Source: cold inbound, mentioned the
> NewYork F&B case study.

Suggested action: edit-then-send. Draft below.

Draft reply:
> Hi Ahmed, thanks for the note. I can have a one-page proposal to you
> by Monday. Before I do, can you tell me your current monthly spend
> and which markets you cover? Either reply here or grab 15 minutes:
> {scheduling link}

Action: [ ] send-as-drafted  [ ] edit-then-send  [ ] ignore

You check one of the boxes. Cowork applies what you checked. For a lead, ‘apply’ means: post the CRM note to the CRM (if you’ve connected one and you trust the connector), or copy the note into the clipboard for you to paste; send the reply (if you said send-as-drafted) or open the reply in your email client for editing (if you said edit-then-send); mark the source message read in the export.

Example routing table (one day)

Source Sender Classification Action
Gmail ahmed@newcompany.ae lead, urgent edit-then-send
Gmail renewals@techvendor.com vendor send-as-drafted
WhatsApp +971-50-… (existing customer) support edit-then-send
WhatsApp +971-55-… (mother) personal not in queue
Forms webform-marketing lead edit-then-send
Gmail recruiter@firm.com noise ignore
Forwarded partner@studio.ae partner edit-then-send

Human review point

The queue, at a fixed time of day. Twice a day at first (morning and end of day). Once a day after the workflow stabilizes. The point of the fixed time is that you stop reading email all day. You read the queue, you act, you close the queue. The rest of the day, the inbox is somebody else’s problem (the workflow’s, sort of, but really yours, just deferred).

The other review point is the routing rules file itself. Every time you find yourself overriding the workflow’s classification, ask whether the rule needs to change. After two weeks the file is the most valuable artifact in your business. Don’t lose it.

What not to automate yet

Four things to leave to a person. First, opening every send-as-drafted reply once before it goes out. Trust comes after a month of seeing what the workflow drafts, not before. Second, confirming every CRM post. The CRM is a record, and a record written by something other than a person ends up being a record of confusion. Third, anything personal: the routing rules name your personal contacts, and the workflow leaves them alone. Build a separate workflow for personal messages if you want one, in a different folder, with different rules. Fourth, replies on WhatsApp. Even when your WhatsApp Business setup supports outbound through the API, a reply that arrives on a customer’s phone in your name without you having read it is the kind of mistake that costs a customer.

Where this breaks at scale

When you hire a second person to share the inbox, the workflow needs to know who handles what. Routing rules become a per-person tree. The queue becomes per-person, or one queue with assignment, and either way the rules file is now a shared document that two people edit. The first time the second person edits the rules and you don’t know they did, the queue starts surprising you.

When the WhatsApp number goes from yours to the team’s, the chat export becomes a multi-author thread. The workflow doesn’t know who replied. The drafts it writes start contradicting things one of your team already said.

When the CRM has more than one writer, the staged note that one person edits and another sends starts to drift from the conversation it came from. The CRM becomes a record of a thing that nobody wrote and nobody fully read.

If you open a second business, whether a second entity or a second brand, the same channels carry signals for both. The router doesn’t know which business a message belongs to. You add a rule. Then another. The rules file becomes a small program that nobody other than you understands.

The operator lesson

Draft before action, route before reply. The workflow drafts. The human routes. The line between draft and send is the line a workflow can’t cross by itself.

[VISUAL NOTE] – Suggested visual: a small flow diagram. Four labeled boxes (gmail, outlook, whatsapp, web forms) feeding into one labeled box (router) feeding into one labeled box (queue), with a human icon between queue and any outbound action. – Why it helps: the diagram shows the operator boundary visually. The human between queue and action is the lesson. – Could be generated with Nano Banana Pro: yes, with a precise prompt. ‘Four source rectangles labeled gmail, outlook, whatsapp, and web forms feeding into one router rectangle, then one queue rectangle, with a small human silhouette between queue and outbound action. Monospaced labels, white background, single accent color.’ – Avoid: brand logos for any of the channels, glowing ‘AI brain’ iconography, screenshots of any messaging UI.

Subscribe

A roughly monthly dispatch from karlbaz.com. Links to the month's memos, plus a short note on what matters now.

Roughly monthly · No promo · I do not sell or share your address · Unsubscribe anytime