Meterless
RELAY · V0.8.1 · WIN32
RELAY · THE HANDS · 03 / 05

Real desktops.
Real hands.

Relay drives actual applications with native Win32 input, tracked windows, and vision-verified steps. Every action resolves to a stable window ID, not a screen coordinate. Close an app, reopen it, move it to another monitor. The workflow still binds.

PlatformWindows 10/11
InputNative Win32
Concurrent Windows8 At A Time
RELAY MISSION_7F3 · 8 WINDOWS · PARALLEL 09:42
PROMPT Close the books for Q3, reconcile IB, update the model, draft the investor memo, notify #finance.
IB Trader
W_1
AAPL+1.2%
NVDA+3.8%
TSLA−0.4%
42 positions
positions.csv
W_2
ticker,qty,pnl
AAPL,120+240
NVDA,48+380
writing 42 rows…
Excel · Q3.xlsx
W_3
Revenue · Q3
B12$4.82M
B13+18%
recalc sheet…
Docs · Memo
W_4
Q3 Investor Update
Revenue up 18% QoQ
Cash runway: 27mo
drafting…▊
Chrome · Stripe
W_5
Payouts · Q3
Jul$412K
Aug$467K
fetching Sep…
Slack · #finance
W_6
@relay · just now
Q3 close in progress
7 of 8 artifacts ready
typing…▊
Drive · /Q3
W_7
/Finance/2026/Q3
positions.csv
model_v4.xlsx
uploading…
Outlook
W_8
To: ops@
Re: Q3 close pkg
4 attachments
⏸ halt · gate
AGENT_A
AGENT_B
EXECUTING 8 windows · 2 agents · parallel
0/8 done
SECTION · 02 / 04

Pick the windows.
Skip the blast radius.

Window control is the only desktop model that scopes risk down to the apps you point at. Click one window or three: Relay binds to those window IDs, nothing else. Compare to terminal access, where one wrong command touches the whole filesystem, the network, and every process you own.

SCOPED · WINDOW ID IB Trader · W_1
DESKTOP · 6 windows tracked
SCOPED ACTIONclick "Read positions"
read & click selected windows filesystem network sockets other processes
UNSCOPED · SHELL /usr/bin/zsh · root context
~ · agent@host
$ agent --task "close the books for Q3"
→ resolved as shell mission · full machine context
$ find ~ -name "*.csv" -delete
EXPOSED SURFACEeverything the user can touch
read & click any window filesystem · 412,089 files network · ssh keys, tokens other processes · kill / spawn
01 Pick one window or many. Each click adds another window ID to the scope. Every action resolves to a live HWND — close the app, the action invalidates.
02 No shell, no sudo. Relay never holds a terminal. The filesystem, network, and process table are out of scope by construction.
03 Vision-verified. Every click confirmed against the rendered pixels of the bound window before the next step fires.
SECTION · 03 / 04

Curate missions.
Schedule the workday.

Save the missions that matter (earnings sweep, EOD reconciliation, inbox triage), and let Relay run them on a cadence. Your desktop stops being a place you sit and starts being a place that delivers.

Mission library · 6 saved
EOD position reconcile
IB Trader → CSV → email ops. 4 steps, vision-verified.
every weekday · 16:30last run · 2h ago · ✓
Morning earnings sweep
Pull pre-market movers, summarize, post to #trading.
weekdays · 08:15last run · today · ✓
Inbox triage + draft replies
Outlook → classify, archive, draft. Halts on VIPs.
hourly · 09–18last run · 47m ago · ✓
Q3 model refresh
Excel pivot rebuild + memo generation.
mondays · 07:00last run · 3d ago · ✓
Stripe payouts → ledger
Reconcile payouts, flag deltas > $5K.
daily · 17:45last run · yesterday · ⚠ gated
Slack digest → Notion
Summarize #engineering, file under weekly notes.
fridays · 16:00paused · drafting
EOD position reconcile
windows · IB Trader · Excel · Outlook enabled
Mission · natural language
> Pull my open positions out of IB Trader, export them to CSV, then draft an EOD summary email to the ops team. Halt before sending.
Schedule
M
T
W
T
F
S
S
at 16:30 ET
next run · today, in 2h 14m
Today's runs · 4 missions queued
0911131517
08:15earnings sweep
10:00inbox · ✓
12:00inbox · ✓
14:00inbox · ✓
now15:16
Last execution · 16:30 yesterday · 4 steps · 38s wall
01
Focus IB Trader window and read positions table
11.4s
02
Export positions → positions.csv (confirm dialog)
8.2s
03
Verify CSV rows match IB position count (vision)
6.1s
04
Draft EOD summary · halt for human approval
gated