Early access · open sign-up · free
Everything in flight. One thing next.
InFlight is a work OS for people who work alongside AI agents. Teammates, tools and agents push work in. InFlight triages it, ranks it against the priorities you set, and keeps exactly one task marked Top Priority. When you look up, the answer to what now? is already there.
Free during early access. Works with any agent that can make an HTTP call or speak MCP.
Inbound
- Dispatcher agentSam: is the proration fix going out with Thursday’s release?slack
- Ops Alerts processPayment webhook error spikemonitoring
- Jira Sync agentBILL-142 · Migrate legacy invoicesjira
Ranked against 3 priorities
- NowTop PriorityConfirm invoice proration rules for Samslack · dm · due tomorrow · Sam is waitingscore 76
- NextTriage refund queue backlogemail · due todayscore 65
- NowFix payment webhook error spikemonitoring · incident · due todayscore 63
- NowMigrate legacy invoices (BILL-142)jira · ticket · 4hscore 56
From noise to one next move.
Work reaches you from a dozen places, and now your agents add more. InFlight runs all of it through the same path, so nothing waits in a tool you forgot to check.
Anything can file work
You quick-add. Agents and integrations push items over REST, GraphQL or MCP, each with its own token. A Slack thread, a Jira ticket and a failing check all become items, with a link back to the source.
POST /api/ingestAI fills in the details
Each item gets a proposed project, priority, effort and urgency, each with a confidence and a reason. At 80% confidence or above it applies itself. Anything less waits for your review.
project Billing Migration 0.93Inbox to zero, by keyboard
Every item gets a decision: make it a task, mark it waiting, shelve it as reference, or drop it. Duplicates and related items are flagged before you act.
↵ task w wait r shelf # dropOne Top Priority, always
Open tasks are scored against your priorities and sorted into Now, Next and Later, with a work-in-progress limit on Now. Finish the top task and the next best one takes its place. You can undo for 24 hours.
Top → done · next promoted
Every score shows its working.
A ranking you can’t question is one you’ll stop trusting. Each score is a weighted sum of eight factors, from how well the task fits your priorities to who is waiting on you, and every factor shows its reason.
Priorities are yours to declare and weigh. Change a weight and InFlight previews which tasks would move before you save. Agents can ask for the same breakdown through explain_score.
- Priority alignmentShip billing migration, 0.92.70 / 3
- Urgencydue tomorrow1.40 / 2
- Someone waitingSam asked you directly1.50 / 1.5
- Staleness2 days old0.28 / 1.5
- Eisenhowerurgent and important1.00 / 1
- Source importancea direct message0.70 / 1
- Project priorityBilling Migration, 3 of 50.60 / 1
- Effort15 minutes0.70 / 0.7
Σ 8.88 ÷ 11.7 = 0.76 → 76 · sample workspace, default weights
Agents are colleagues, not plug-ins.
Your Slack bridge, your Jira sync, your CI bot and your coding agent each get their own identity in InFlight. They file work, close it and make suggestions, and everything they do is recorded under their name.
POST /api/ingest
Authorization: Bearer ifa_jira01_••••••
{
"source_type": "jira",
"source_external_id": "BILL-142",
"title": "Migrate legacy invoices",
"project": "billing-migration"
}
→ { "item_id": "itm_…", "created": true }- Jira Sync agent pushed BILL-142
- System linked it to Ship billing migration (0.95)
- Dispatcher agent suggested a new Top Priority
- You accepted · undo for 24h
- A token for each agent, scoped to its job
- Jira Sync can push and close Jira items and nothing else. Tokens are shown once, stored hashed, and expire after 90 days.
- Every change is signed
- Each write records which actor made it and through which token. The audit log and the live event stream report the same thing.
- Agents suggest, you decide
- An agent can suggest a Top Priority or propose a plan for the day. Setting either needs a permission you grant on purpose.
- Speaks MCP
- LLM agents call
get_today,list_ranked,triage_itemand more. Hosted clients sign in with OAuth. Agents start at llms.txt.
A cockpit, not a checklist.
Open InFlight and your Top Priority fills the screen, with the rest of the day around the edges. For the whole picture, the flight deck shows every gauge in one view.
- ●Decisions3oldest 2d, advisory
- ▲Overdue29% of open, caution
- ●Blocked1chain 2 deep, advisory
- ●Waiting on4oldest 6d, advisory
- ○Untriaged0inbox zero, nominal
- ●Review2AI fields to check, advisory
- ○Stale1untouched 7d+, nominal
- ○WIP3/3within limit, nominal
- Command palette
- Every action, a keystroke away. ? lists them all. ⌘K
- Flight deck
- Decisions waiting on you, what’s overdue or blocked, who you’re waiting on. gf
- Review queue
- Accept, fix or reject what the AI wasn’t sure about. gr
- People
- What you owe each person, and how long they’ve been waiting. ge
- Graph
- Blocking chains, related work and duplicates, mapped. gg
- Priorities
- Name what matters, weigh it, and see the ranking change. gy
Your workspace is yours.
InFlight sees a lot of your work, so the ground rules are built into the system itself. Read the privacy policy.
- Isolated
- Every workspace is fenced off by Postgres row-level security, so the database itself refuses cross-workspace reads.
- Auditable
- Every change is an event: who, what, before and after, and why.
- Minimal
- Items keep a title, a capped summary and snippet, and a link back to the source, not the whole thread. AI calls get a trimmed, redacted payload, with zero data retention requested from the model providers.
- Portable
- Export your workspace data whenever you like. Delete it, and the purge starts right away.
Put your work in flight.
Bring your inbox and your agents. Set your priorities. InFlight will tell you what comes next.