taskflow-inbox-triage

Implements an inbox triage flow pattern with intent routing, waiting states, and end-of-day summaries.

Updated Jun 19, 2026
One-click install
npx skills add https://github.com/AmirulAndalib/Vilvona-AI --skill taskflow-inbox-triage-amirulandalib
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: taskflow-inbox-triage
Source: https://github.com/AmirulAndalib/Vilvona-AI/tree/main/skills/taskflow-inbox-triage
Command: npx skills add https://github.com/AmirulAndalib/Vilvona-AI --skill taskflow-inbox-triage-amirulandalib

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Routing incoming inbox items by hand is repetitive and error-prone, especially when some items need external replies before they can be resolved. This Skill demonstrates a concrete TaskFlow pattern for classifying inbox items, routing them by intent, pausing while waiting on replies, and summarizing the rest. ## Core Features & Use Cases - Intent-Based Routing: Classifies inbox items into business, personal, and other categories, then routes each to the right action such as posting to Slack or notifying the owner. - Waiting and Resume States: Persists routing state in stateJson and moves the flow to a waiting state only when an outside reply is required, resuming once input arrives. - End-of-Day Summaries: Keeps unrouted items for a consolidated end-of-day summary instead of interrupting the owner. - Use Case: A personal assistant flow reads new inbox messages, posts business threads to Slack and waits for replies, immediately notifies the owner about personal items, and batches everything else into a daily digest. ## Quick Start Ask the assistant to triage my inbox using the TaskFlow inbox triage pattern, routing business items to Slack and personal items to me now.

Frequently Asked Questions about taskflow-inbox-triage

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build an inbox triage flow with TaskFlow?

Create one managed flow for the inbox batch, run a detached classifier task, persist routing state in stateJson, and move to waiting only when an outside reply is required. Resume the flow when classification or human input completes, then finish once the batch is routed.

How does TaskFlow handle waiting for external replies?

Use setWaiting with a waitJson describing the expected input, such as a Slack reply identified by channel and threadKey. The flow stays in the waiting state until resume is called with the expected revision after the reply arrives.

What state structure should an inbox triage flow use?

Store routing buckets in stateJson, for example businessThreads, personalItems, and eodSummary arrays. This keeps classification results durable across waiting and resume transitions within the flow.

Why does a TaskFlow state transition fail to apply?

Transitions like setWaiting and resume return applied false when the expectedRevision does not match the current flow revision. Always pass the revision from the previous response and check the returned code for the failure reason.

When should a flow move to waiting instead of finishing?

Move to waiting only when an outside reply is required to continue, such as a Slack response on a business thread. If all items can be routed without external input, finish the flow directly with the final stateJson.