THE WALKTHROUGH · SIMULATED SURFACES · DEMO FIGURES

Use it before you trust it.

Eight surfaces, recreated. Install, boundaries, pause, the brief, and the event record mirror the shipped code; reply-1 approval, the dry run, and the hire card are the designed next phase. The figures are illustrative. Click everything.

interactive · zero external requests · works with the cable cut

fig. 00 — the whole loop, illustrated · it watches, finds the repeats, and asks

01 · INSTALL

The install checks itself.

The install verifies three content-privacy flags in the binary before configuring capture. Pull one and run it — the failure mode is “Workley doesn’t install,” never “Workley installs and records keystrokes.”

the binary's flags — pull one:

~/workley · scripts/install.sh
$ ./install.sh== workley phase 0 install ==venv OK: Python 3.12screenpipe OK: 0.4.25 (pinned) privacy gate OK: all mandated flags presentloaded com.ethanstrauss.workley.screenpipeloaded com.ethanstrauss.workley.collector$ 

02 · BOUNDARIES

Name what it never sees.

macOS asks once for screen recording. Then you draw the lines: banking, health, anything you name is dropped at ingestion, and one command pushes the block into capture itself.

fig. 01 — boundaries, illustrated · named things dissolve before disk

~/.workley/blocklist.toml — one entry per line, blocked means dropped before disk

  • bankingdropped before disk

03 · THE QUIET WEEK

Then, a quiet week.

No pitches while it learns. Walk the days. If a week turns up nothing, it tells you that instead of inventing work.

WORKFLOW CARDS

collecting — day 1 of 7

no cards yet. the nightly detect run writes them once the observer has a week of data.

04 · PAUSE

Pause means gone.

Not a flag, not a mute. The capture process is unloaded and its port closes. Verify it yourself while it’s paused.

verify it — any terminal
$ launchctl list | grep workley.screenpipe4123	0	com.ethanstrauss.workley.screenpipe$ 

05 · THE MONDAY BRIEF

Monday, 07:00.

The brief lists what it found and the hours each loop costs you. One approval is the whole interface — in the product, a card’s approve button; here, type 1.

~/.workley
FROM     workley (local)TO       youDATE     mon 2026-07-13 · 07:00SUBJECT  weekly brief — 3 loops found · 5h 40m 01  gmail → sheets, lead copying              3h 10m /wk    seen 14 times across 21 days. same 6    fields every time.    i can take this over. reply 1 and i'll    build it, then dry-run it on last    tuesday's 12 emails before it goes live. 02  invoice pdf → rename + filing             1h 20m /wk03  monday status doc assembly                1h 10m /wk ────────────────────────────────────────────nothing in this brief left your machine.

illustrative figures — your brief computes from your own runs.

06 · DRY RUN

It replays last week before it’s hired.

Approving a loop executes nothing. Workley builds the automation, then runs it against last week’s captured work — and the diff waits for your review before anything goes live.

fig. 02 — dry run · loop 01 · tue 2026-07-07
$ workley dryrun loop-01 --against 2026-07-07replaying 12 captured emails ............ 12 rows appended · 6 fields each · 0 errors · 4m 02s  your time, same task, same day:        38m 15snothing executed. nothing sent. review the diff:$ workley diff loop-01 

illustrative figures — your brief computes from your own runs.

07 · THE HIRE

The hire reports to you.

Once it’s live, it reports the hours it returned each week, and tells you when the inputs change instead of failing quietly. The kill switch is yours.

RUNNING · LAST RUN 6:04 AM 3h 10m /wk

loop 01 — gmail → sheets, lead copying

this week 3h 10m returned · lifetime 12h 40m · 4 weeks live

kill switch

flip it — the automation stops. hours already saved stay counted.

illustrative figures — your brief computes from your own runs.

08 · WHAT IT KEEPS

One event, the whole row.

When, which app, which site, which window, how much typing — plus the new screen-text lines, kept on-device for matching, strippable by blocklist, pruned at 30 days. No audio, no clipboard, no keystroke content — the install refuses.

Show one captured event
ts
2026-07-07 09:14:02
app
Google Chrome
url_domain
mail.google.com — domain only, the full url is discarded
window_title
re: new lead — kitchen remodel quote
input_density
0.41
ocr_delta
new screen-text lines — blocklist-strippable, pruned at 30 days
ocr_hash
a fingerprint of the screen text — change detection, content not recoverable
frame_id
points at the frame it came from — stored on-device, pruned with retention
text_source
accessibility or ocr — which reader produced the text
keystrokes
a count, never content --disable-keyboard-capture
audio
none --disable-audio
clipboard
none --disable-clipboard-capture

changed screen text stays on-device and is quoted in your receipts. nothing leaves the machine.

DOWNLOAD · MACOS 14+ · APPLE SILICON

Get Workley.

No public build yet. A tool holding screen-recording access doesn't ship without a signed, notarized build and a hardened updater, and both are still being built. This page gets a real download the day they land.

Get notified when the build is signed

signed build coming — get notified.

pre-release · no build is linked yet · the watcher is $0

install · pre-release
# the install, once the build is signed:$ curl -fsSL [signed-build-url]/install.sh | sh# not live yet — RELEASE_URL is null in this page's source.$