Early access, by invitation

Stay in sync without
the noise.

Lumis runs on top of the PM tool your team already uses. It flags the tasks nobody actually understands, keeps edits in sync both ways, and writes the weekly status update you keep meaning to get to. Your team stops opening five tabs to answer a basic question.

You keep your PM tool. No new dashboard to babysit. AI is optional, per feature.

The problem

You already have every tool.
None of them know what the others know.

Somewhere around 40 people, your company grows its own tax: five PM tools, a few chat apps, two dashboards, and a Friday morning that starts with someone writing the same status update for the third time. Lumis doesn't replace any of it. It sits in between and makes the noise quieter.

Before Lumis

A normal Tuesday

  • "Quick sync?" four times a day
  • Status doc last edited nine days ago
  • Two people quietly building the same feature
  • 30 Slack pings, one real update
  • "Where are we on Q2 launch?" asked in three channels
  • Friday morning: a blank Google Doc
With Lumis

The same Tuesday with Lumis

  • One digest. Read it Friday morning.
  • The task graph is the status. Always.
  • Duplicates get flagged the minute they appear
  • One aggregated update per day, per role
  • A single view everyone can link to
  • Friday morning: a draft waiting in your inbox

What Lumis does

A layer on top. Not another app to open.

Six things Lumis does so your team can stop doing them.

Edits sync both ways

Change a task in Lumis and your PM tool updates. Change it in your PM tool and Lumis catches up. When the two disagree, you see the diff and can undo it.

Last-write-wins with a visible history. Any sync event is reversible in one click.

Vague tasks get caught early

Missing acceptance criteria, an ambiguous title, no assignee — Lumis flags it the moment the task is created, not in Friday's retro.

Seven checks run against your real workspace before the first task imports.

AI is optional, per feature

Every AI feature has a template mode that uses variables like {task_title} and {linked_pr}. You can run Lumis without ever sending data to a model.

Works for regulated teams who need AI off for some workflows and on for others.

The weekly update writes itself

Friday morning, there's a draft waiting: what shipped, what's stuck, what needs a decision. You edit the parts the AI can't know, then send.

One version per role. PM, engineering, design, and the CEO each get something tuned.

One notification instead of thirty

A single daily update per role, not a running Slack stream. People stop muting and start reading again.

Quiet hours, priority routing, and one digest that answers "what changed today?"

We tell you what doesn't work

Every integration runs a compatibility check before it connects. The capability matrix is public. The roadmap lists what we've decided against, not just what we're building.

You get a green/yellow/red report up front, so you're not debugging surprises three weeks in.

What Lumis does

Built around the work, not on top of it.

Real screens of what ships today. Each one is in production right now — not a roadmap promise.

Asana integration

Connect once. See exactly what works.

Before a single task syncs, Lumis runs seven compatibility checks against your real workspace and shows you a green/yellow/red report. No surprises three weeks in.

  • OAuth or PAT — your team picks
  • Pre-connection compatibility report (7 checks)
  • Custom field handling, including formula-field warnings
  • Webhook capability verified live, not assumed
app.lumis.work · integrations · asana

Connecting Asana

Acme · Engineering workspace

Ready to connect
  • Auth + workspace access

  • Projects readable

    12 found

  • Task read access

    384 active tasks

  • !

    Custom fields

    2 formula fields will sync as read-only

  • Workspace size

    under quota

  • Webhook capability verified

  • Sync state observability

7 of 7 checks · 1 warningConnect now

Live sync

Every task tells you where it stands.

Two-way sync via Asana webhooks. Each task carries its own sync state, last-edit direction, and a 24-hour undo window. No more guessing whether your edit landed.

  • Inbound + outbound sync, conflict-resolved with last-write-wins
  • Per-task sync state visible in the list view
  • Sync history timeline on every task
  • One-click Undo for any local edit
app.lumis.work · tasks

Tasks

384 active · 4m ago

All projects ▾
  • Fix race condition in payment retry handler

    Payments API · Mike Chen

    Synced

    2m · inbound

  • Eval pipeline scoring v2 — Bradley sign-off

    Evaluation · Bradley Patel

    Synced

    14m · outbound

  • Add Resend integration to digest worker

    Slice 3 · Platform · Andrew Nguyen

    Push pending

    just now · local

AI clarity review

Lumis flags the gaps. You fix them in one click.

Every task gets a 0-100 clarity score and a list of specific gaps — no due date, vague title, missing acceptance criteria. Each flag carries an inline resolver, so you fix the issue without scrolling up to hunt for the field.

  • Claude Haiku 4.5 by default; Sonnet 4.6 opt-in for higher quality
  • Inline resolvers per flag — date picker, suggested title, drafted description
  • Cost shown on every action ($0.0042 · claude-haiku-4-5)
  • AI / Template / Off mode toggle per feature, per org
app.lumis.work · tasks · payment retry race
42/ 100Vague
$0.0042 · claude-haiku-4-5

No due date

A target date helps the digest surface this in the right week.

2026-04-25Set due date

Title is vague

Two-word titles rarely name a specific outcome.

Suggested

Fix race condition in payment retry handler

vs. fix bug

Editing & undo

Edit here. It shows up there. Either way.

Change a title, status, or due date in Lumis — it syncs to Asana within seconds. Change it in Asana — it lands here. Every edit is reversible from the sync timeline.

  • Inline edits PATCH the task and push to Asana via the worker
  • Sync timeline shows every event with direction + timestamp
  • Undo window: revert your last local edit cleanly
  • Conflict states surface a banner — your edit, their edit, your call
app.lumis.work · tasks · payment retry

Edit

Title

Fix race condition in payment retry handler

Status

In progress

Due date

2026-04-25

Assignee

Mike Chen
Save changesUndo last edit

Sync history

  • Pushed to Asana

    Title + due date · 12s ago

  • Edited locally

    Mike Chen · 22s ago

  • Pulled from Asana

    Status · 14m ago

  • Initial import

    From workspace · 4d ago

Email digest

Your digest, your cadence, your template.

Pick the day, time, audience, and filters per subscription. AI mode drafts the narrative; template mode interpolates variables you control; off mode keeps you out of an LLM entirely. Different recipients can subscribe to different digests.

  • Any day · any time · any timezone — per recipient
  • Multiple subscriptions per user (standup + exec roll-up)
  • Customer-editable HTML templates with {variable} interpolation
  • Resend for delivery; Slack channel/DM coming next
inbox · digest@lumis.work
Lumis
Friday, Apr 18

Friday exec roll-up

Good morning, Andrew.

Eight tasks moved this week across 3 sections.

AI summary

Payments retry race finally cleared; eval scoring landed in staging; three onboarding tickets waiting on a routing decision.

What shipped

Payments API · Engineering

Fix race condition in payment retry handler

Done

Evaluation · Eng / QA

Eval pipeline scoring v2 — Bradley sign-off

Done

Watch list

Support · CS

Customer onboarding form: routing rules unclear

Overdue 3d

More shipping soon · Dashboard + reporting next

How it works

Three steps. Nobody migrates anything.

  1. 01

    Connect it in under a minute

    Sign in with OAuth or paste a personal access token. Before anything imports, Lumis runs a compatibility check against your real workspace and shows you a green/yellow/red report of what will and won't work. No surprises two weeks in.

  2. 02

    Lumis just runs

    Edits flow both directions in the background. Vague descriptions get flagged. Missing acceptance criteria show up before the task gets started. Your team keeps working where they already work. Most of the time, you won't think about Lumis at all.

  3. 03

    Your digest, your cadence

    Pick the day, the time, the timezone, and who it goes to — your engineering manager can get a Monday standup roll-up while your CEO gets a different one on Friday. AI mode drafts the narrative; template mode interpolates variables; off mode keeps you out of an LLM entirely.

What we're committing to

The gap we're building into.

Plenty of good tools already solve pieces of this. Unito and Zapier handle sync. PM tools have their own AI. Slack has its own digests. Capability matrices exist.

What nobody has put in one place is the whole pattern, wired to the same spine, and published honestly. Below is the list we're committing to ship, plus why each one is harder than it first looks.

Not a knock on any specific product. It's the list of things we think customers will ask for once they've tried what already exists.

  • A real compatibility report before you connect
    Most sync tools check that your token works. Few actually enumerate custom fields, workspace size, and formula/rollup limits up front. So you find the edge cases a week in, usually during a demo.
  • Vague-task flags, as a feature
    Some PM-native tools will rewrite a task for you. General sync tools like Unito and Zapier don't. Flagging weak descriptions, missing acceptance criteria, and ambiguous assignees as a first-class feature is still rare.
  • A template mode for every AI feature
    Most AI tooling is all-or-nothing. Running the same workflow without ever calling a model, using variables like {task_title} and {linked_pr}, isn't standard. It matters if your legal team has an opinion on LLMs.
  • A roadmap that says what we're NOT building
    A few companies do this well (37signals is the canonical example). Most don't, because publishing a "not doing" list commits you and makes sales harder. We publish ours anyway.
  • AI learning that stays in your tenant
    Many AI features learn at the account level but quietly pool signals across customers. Keeping your accept/reject/edit data strictly inside your tenant, admin-editable, and deletable on request is a different engineering commitment.
  • An AI cost formula you can actually read
    "AI included" is easy to put on a pricing page. Publishing the per-action cost so an admin can see what each digest costs before sending it is harder.
  • Full sync history, one-click undo
    Some tools log sync events (Unito does, and some native integrations). Reversing any single event with one click, including AI suggestions, is less common.
  • A changelog that admits to bugs
    Stripe, Linear, and GitHub do this well. Most SaaS changelogs are a wall of green checkmarks. We're planning on the honest version.

If one of these already exists in a product you're using, let us know. We'll update this page.

Security

Built for teams whose legal folks ask hard questions.

Lumis sits alongside your PM tool, not above it. We handle credentials the way we'd want ours handled. Here's what that looks like concretely.

AES-256-GCM

Encrypted, end to end

Every credential and sensitive field is encrypted at rest with AES-256-GCM. TLS 1.3 in flight. Keys rotate on a schedule. Plaintext secrets never touch disk.

Argon2id

Invite-only while we're in beta

No self-signup, so tokens don't leak into the wild. Passwords are hashed with Argon2id. Sessions use JWTs in httpOnly cookies. OAuth state lives in Redis, is single-use, and expires in ten minutes.

Immutable log

Everything is audited

Credential changes, role updates, every integration connect and disconnect: all recorded. Admins can export the full log whenever they want.

Org-isolated

Your AI data is yours

Every accept, reject, and edit gets fed back into your org's own prompts. It never leaves your tenant and never trains a shared model. Admins can edit it. You can delete it.

/changelog

Public incident log

Outages, bugs we caught late, breaking changes, all of it lands on /changelog. We'd rather say what went wrong than pretend it didn't.

Targeted Q4

SOC 2 on the way

The controls are already in place. The audit itself is on the GA roadmap. As soon as we hold a Type I report, we'll publish it along with the gap report from the pre-audit.

Security contact: security@lumis.work · Procurement questions are welcome.

Honest answers

The questions we keep getting asked.

These eight are the ones every evaluation call opens with. If yours isn't here, just ask.

Early access

Join the waitlist

Free for selected members during early access. No credit card, no obligation. Leave whenever you want.

Two emails total. One confirms your spot, the other arrives when your invite is ready. That's it.