Today, in order

Priority, owner and due date on every card, so the next move is never a decision.

Today3 open
  • High

    Reconcile the settlement file before the cut-off

    Apr 1821
  • Medium

    Review chargeback rules for the new corridor

    Apr 2443
  • Low

    Archive last quarter payout statements

    May 0216

Command palette

Reach any action from the keyboard. Type two letters, press the shortcut, keep going.

settlement.tsk

const rows = await ledger.read(id)

let net = 0

for (const r of rows) {

net += r.amount

}

return post(net)

Review with AI

The original and the rewrite side by side. Drag the seam and keep the half you want.

Everyone in the same file

Selections, cursors and the publish state travel live, so nobody works on a stale copy.

payouts.tsk
1import { ledger } from "@ai2/ledger"
2import { settle } from "@ai2/settle"
3import type { Batch } from "./types"
4
5export async function run(b) {
6 const rows = await ledger.read(b.id)
7 const net = rows.reduce(sum, 0)
8
9 if (net > b.reserve) {
10 return hold(b, "reserve")
11 }
12
13 return settle(rows, { window: "T+1" })
14}
15
16// queued for the 18:00 cut-off