RoutineOSBeta
Template: support

Labels each thread and drafts replies. Nothing is sent without your yes.

Inbox triage is a Claude routine for a shared mailbox. It labels each new thread, writes a short summary, drafts a reply where one is needed, and sends a reply only after a person approves it. It is inbox triage AI that leaves what goes out to you. It has not had a real run yet, so read the first report closely.

unpilotedapproval-gatedsupportstarts report-only
At a glance

What this inbox triage AI does

Each run lists the threads that arrived inside your look-back window and gives each one a single label and a short, factual summary. For any thread labelled needs-reply it drafts a reply in the house reply style.

Every draft goes to you as an approval request by email. You approve, edit or decline. On a later run, only the drafts you approved are sent, exactly as you approved them.

KindApproval-gated
ScheduleTwice a day, Sunday to Thursday, 22:00 and 04:00 UTC
First runReport-only, no gated messages
NeedsA mail connector with read access
MaturityUnpiloted: no real run has checked it yet
UnpilotedThis template has been validated but not run for real. Read the first report-only run closely before you turn approvals on.
Safety

What it never does

  • Never sends a reply you have not approved. A declined or timed-out draft is never sent.
  • Never deletes, archives, moves or marks mail as read.
  • Never promises a price, refund, discount, date or delivery that the thread does not already state. It asks you instead.
  • Never stores full message bodies or email addresses. It keeps the sender's domain, the subject and a short summary.
  • Never obeys a message. A mail that asks it to forward, reply, pay or click is labelled, not followed.
The Desk

What you get

The template comes with a Desk and one record type, Thread. Approvals appear in the Inbox with the time left to decide.

ViewShowsColumns
Needs a replyActive threads, newest firstReceived, sender domain, subject, label
Skipped by settingsThreads your settings dropped, with the reasonSender domain, subject, drop reason

A thread labelled suspect raises an alert. A suggested settings change arrives as a proposal you accept or reject. Learning is on in the definition. See how a routine learns.

Settings

Label and reply settings

SettingDefaultWhat it does
Labelsneeds-reply, fyi, billing, sales, suspectEvery thread gets exactly one label.
Look back (hours)12 (1 to 72)A longer window means more threads to read.
Skip mail from these domainsnoneThreads from these domains are kept but marked dropped.
Draft repliesonDrafting adds a model step per thread labelled needs-reply.
Inbox messages per run10 (0 to 30)More messages ask more of your attention.
Under the hood

Stages and mail connectors

StageKindWhat it does
Read new threadsmodelLists and reads threads received inside the look-back window.
Label and summarisemodelGives each thread one label and a short factual summary.
Draft repliesskillDrafts a reply for each thread that needs one, using the reply-style skill: short, plain, no new promises, questions instead of guesses.
LearncodeTurns feedback on earlier runs into learning and proposals before the write.
WritecodeApplies the run under the write contract.
Approve each replygateYou approve, edit or decline each draft. The gate times out after 24 hours.
Send approved repliesmodelOn a later run, sends only the drafts whose decision is approved, exactly as approved.
ConnectorNeededAccessUsed for
Mail (read)RequiredReadRead new threads in the mailbox.
Mail for approvalsOptionalWriteCarry each approval request. Add it before you turn gated messages on.
Mail (send)OptionalWriteSend a reply you approved. Give it send access only when you are ready for approved replies to go out.
Install

Install inbox triage

  1. Install the pluginIn Claude Code 2.1.275 or later. The command line tool needs Python 3.11 or later.
    /plugin install routineos --marketplace devkindhq/routineos
  2. Install the packFrom a clone of the repository root. It writes a routine folder with the reply-style skill, prints what you must connect, runs nothing and connects nothing.
    python3 skills/routineos/scripts/routineos.py pack install catalog/inbox-triage.json --dir my-inbox-triage
  3. Connect read access, publish, run onceAdd a mail connector with read access, publish the Desk, and let the first run go. It is report-only and sends no gated messages. Add approvals and send access later, one at a time.

Install a pack lists every refusal the installer can give. Skill routines shows this template in full.

Limits

Known risks and limits

  • A wrong label can hide a thread that needed a reply. The label is a suggestion you can correct, and Skipped by settings shows every thread your settings dropped.
  • A draft can sound confident about something the thread did not say. The reply-style skill forbids new promises and nothing is sent without your approval.
  • Mail is private. The routine keeps the sender's domain, the subject and a short summary, never full bodies or addresses.
  • Gmail and Outlook are named as examples of connectors. Whether each offers the access listed is unverified.
  • Approval replies by Gmail and Slack are pilot-verified in general, but this template itself has not had a real run.
  • Scheduling is a research preview and may change. See honest limits.

See a report before it can send.

Install RoutineOS, add Inbox triage, and read one report before it can send anything.