Noctua Ledger — Agent App Wireframes

Back-office data agent that reconciles invoices & payments into a clean ledger · 4 layout directions

low-fi — structure & flow only ✎

A · Copilot split

chat on the left, sheet does the work on the right

The familiar assistant layout. A persistent agent chat rail on the left where the owner types plain-English asks ("reconcile March payments"); the ledger fills the rest. Cells animate in as the agent works, with a running narration in the chat. Approvals happen as cards inside the chat thread.

app.noctua.co/ledger — March reconciliation
Ledger agent · Fin working
you
agent
12 matched2 to review
approve change?
ApproveSkip
InvoicesPaymentsLedger ✓ UndoApprove all
DateCustomerInvoicePaidStatus
1
matched
2
▌filling…
3
review
4
matched
5
matched
owner talks to it
like a teammate
flagged cells wait for a human ✓

Strengths

  • Instantly legible — everyone knows the copilot pattern.
  • Natural language front-and-center sells "just ask".
  • Narration + approvals live together in one thread.

Watch-outs

  • Chat rail eats ~25% of width away from the data.
  • Approvals buried in scroll once the thread grows.
  • Reads more "chatbot" than "operations system".

B · Sheet-first dock

the data is the hero — agent lives in a dock

The ledger goes full-bleed; the agent collapses into a slim bottom dock that expands when it acts. A human-style cursor glides across the sheet so you literally watch it work cell-by-cell. The dock shows the current step, a live tally, and one big Approve/Undo control. Feels like an operations tool, not a chat app.

app.noctua.co/ledger
March ledger InvoicesPaymentsLedger ⌕ Filter
DateCustomerInvoice #AmountPaidMethodStatus
1
matched
2
3
matched
4
review
5
matched
6
matched
Reconciling payment → invoice · row 2 of 48
12 matched 2 to review Undo Approve all
cursor moves like
a real person
dock = always-visible
status + approve

Strengths

  • Maximum data on screen — feels like real software.
  • The moving cursor is the demo's "wow" moment.
  • Status + approve always docked, never lost in scroll.

Watch-outs

  • Less room for the agent to explain its reasoning.
  • Free-text asks need a separate expand state.
  • Dock can feel cramped with many counters.

C · Review queue

approval-first — nothing commits without a yes

Built around trust. The agent proposes a stack of changes as diff cards on the left (old → new, with its reasoning); the sheet on the right highlights the cell each card touches. The owner sweeps through Approve / Edit / Reject. Best when the buyer's #1 fear is "will it mess up my books?".

app.noctua.co/ledger — 14 proposed changes
Proposed changes 14 pending
row 2 · Paid amount
— blank —$2,400
ApproveEditReject
row 4 · Status · needs you
partial pay?
ApproveEditReject
row 5 · Method
Approve all safe (11)
Ledger preview 11 safe3 need you
DateCustomerInvoiceAmountPaidStatus
1
ok
2
$2,400 ✦ok
3
ok
4
review
5
ok
card ↔ cell are
linked & highlighted

Strengths

  • Trust-first — answers "can I trust it with my books?".
  • Old → new diffs make every change auditable.
  • "Approve all safe" gives speed without losing control.

Watch-outs

  • Heavier — more reading, less magic.
  • Can feel like work rather than time saved.
  • Less of a live "watch it run" demo moment.

D · Command + inline

minimal — summon with ⌘K, accept inline

The most software-native. The sheet is everything; the agent is summoned by a command bar (⌘K) at the top. Changes appear inline as ghost values with tiny per-cell ✓ / ✕ chips and a ghost cursor. No persistent panel — the UI gets out of the way. For power users who think in commands.

app.noctua.co/ledger
⌘K reconcile March payments against open invoices run ↵
DateCustomerInvoice #AmountPaidStatus
1
matched
2
$2,400
3
matched
4
review
5
matched
type a command,
hit enter
accept / reject
right in the cell

Strengths

  • Cleanest, most "real app" feel — data uninterrupted.
  • Per-cell accept/reject is granular and fast.
  • ⌘K reads as modern, powerful tooling.

Watch-outs

  • Discoverability — a blank command bar intimidates SMB owners.
  • Little space for the agent to explain itself.
  • Per-cell chips get tedious at high volume.

★ Recommendation

what I'd build for the hi-fi demo

For a scripted demo that has to feel real and earn trust with a non-technical small-business owner, the win is a blend: B's sheet-first stage and human cursor for the "watch it run" magic, with C's review-before-commit safety baked into the dock. A is too chatbot for an ops brand; D is too bare for the buyer.

A · Copilot split

good for: power users who want to converse

Familiar but cedes a quarter of the screen to chat and reads like a chatbot — off-brand for an operations system.

★ build this

B + C · Sheet-first, review baked in

good for: a believable, trust-building demo

Full-bleed ledger, a human cursor that works cell-by-cell, and an ink dock that holds live status and the approve/undo gate. The flagged rows surface C's review cards on click.

C · Review queue

good for: the most skeptical, compliance-minded buyer

The safest model — but heavy and light on magic. We fold its best idea (auditable diffs + approve-all-safe) into the recommended dock instead of a full rail.

D · Command + inline

good for: a future power-user mode

The cleanest, but a blank ⌘K bar intimidates the SMB owner. Keep as a secondary entry point, not the demo's spine.

The plan for the hi-fi demo

Sheet-first stage · a person-like cursor that glides row to row · cells fill with ghost values that settle once accepted · an ink status dock showing the live tally and one Approve/Undo gate · flagged rows pop a small review card so a human always has the last word. One scripted scenario plays start to finish — and a Tweak switches the agent persona and the workflow between Finance (order-to-cash), Sales (purchase-to-pay), and Operations (supplier → in-stock → scheduled → job complete).

build B's stage, give it C's conscience →
agent just wrote it needs a human filling now agent cursor