MODEL SE-1 IPAD APP · 9 LANES PORCELAIN / MINT

A pad for the Codex tasks
you're already running.

An iPad app with nine lanes — one Codex task each. Hold the bar to talk to a lane, and the reply gets read back to you.

IPADOS APP · FINDS YOUR MAC ON ITS OWN

SPEAKEASY — THE PAD UNIT 001 · PORCELAIN

NARRATION

BRIDGE
MIC
QUEUE 2
LN 1
speakeasy
codex/native-ipad-deck
Arrived on lane 1, in the Codex task that lane is bound to.
LIVE
LN 2
scout
feat/broker-retry
I could not reach the exact Codex task. Open the…
IDLE
LN 3
— unassigned
HOLD TO BIND
LN 4
dewey
docs/restructure
**Partially.** The navigation groups…
IDLE
LN 5
speakeasy
fix/cache-ttl
Waiting on your review of the eviction…
QUEUED
LN 6
— unassigned
HOLD TO BIND
LN 7
landing
landing-polish
Rebuilt the hero in flight. Ready to…
IDLE
LN 8
— unassigned
HOLD TO BIND
LN 9
— unassigned
HOLD TO BIND
HOLD TO SPEAK PARAKEET ON YOUR MAC · LANE 01
RPLYREPLAY
STOP
AUTOON
ACTV2 NEW
WHAT IT'S FOR

Every running task
gets its own key.
All nine on one screen.

ONE LANE PER TASK — NINE ON THE PAD, TWELVE ON THE MICRO DECK.

LN 1 · BOUND 04:12:07
speakeasy
~/dev/SpeakEasy · codex/native-ipad-deck · thread f89f1953
"Testing one two one two. Let's see, let's go." — arrived on lane 1, in the Codex task that lane is bound to.
LIVE · THREAD ATTACHED
WHAT A LANE HOLDS

Each key holds
whatever you put on it.

You pick what goes on each key. Today that's one exact Codex task — the key shows the project, the git branch, the last exchange, and whether that task is live, idle, or queued. Routing is by task ID, so nothing depends on which window is focused or what the most recent thread is called.

  • 01You assign it, and it stays assigned. A key keeps its task across reloads until you move it.
  • 02The task ID is the address. Each send revalidates the binding with Codex Desktop first.
  • 03It fails closed. If the binding can't be verified, the send stops — it won't pick a different task.
  • 04State is on the key. Live, idle, or queued, readable without opening anything.
A1spk-web
A2scout
A3dewey
A4landing
B1cache-fix
B2
B3
B4
C1
C2
C3
C4
D1RPLY
D2STOP
D3AUTO
D4ACTV
MICRO DECK · 4×4 KEY BANK

More than nine tasks?
Use the 4×4.

The Micro Deck is a 4×4 key bank with the same binding model: one exact task per key, same fail-closed check. The bottom row is transport, which leaves twelve lanes.

THE BIG BAR

Your Mac does
the transcribing.

Hold the bar and talk. The iPad records the audio and hands it to your Mac over the local network, where SpeakEasy's Parakeet model produces the transcript. Nothing goes to a speech server. Let go and the transcript is sent once, to the task bound to that lane.

HOLD TO SPEAK MOMENTARY · PARAKEET ON YOUR MAC · LANE 01
TRANSCRIPTION: ON YOUR MAC· ROUTING: EXACT TASK ID· DELIVERY: EXACTLY ONCE
ANATOMY

What the controls do.

1 2 3 4 5 6
BRG
MIC
QUE
LN 1
speakeasy
LIVE
LN 2
scout
IDLE
LN 3
LN 4
dewey
IDLE
LN 5
speakeasy
QUEUED
LN 6
LN 7
landing
IDLE
LN 8
LN 9
HOLD TO SPEAKLANE 01
RPLY
AUTO
ACTV
  1. 01
    Encoder

    Narration volume. Press it to pause playback; the task keeps running.

  2. 02
    Speaker grille

    Status voice for binds, confirmations, and errors. Playback goes to your speakers or headphones.

  3. 03
    Status LEDs

    Bridge, mic, and queue depth. If the bridge LED is dark, the Mac isn't connected and sends won't go through.

  4. 04
    Lane pads ×9

    One exact Codex task each, with its project, branch, last exchange, and state.

  5. 05
    Transport

    REPLAY the last answer, STOP narration, AUTO-narrate completions, ACTIVITY inbox.

  6. 06
    Hold to speak

    Momentary button, on-device Parakeet ASR. Releasing it sends the transcript once, to the bound task.

ONE TURN, END TO END

The signal path.

Dictation and narration both attach to the same Codex task, so there's no second conversation to merge back in later.

HOLDLANE 01 · MOMENTARY
TRANSCRIBEPARAKEET · ON YOUR MAC
ROUTEEXACT TASK ID
CODEX REPLIESTHREAD f89f1953
NARRATENATIVE PLAYER · 1.25×
SAME CONVERSATION

Your dictation and Codex's reply stay in the same task. SpeakEasy handles voice and playback; it doesn't run a conversation of its own.

ROUTED BY TASK ID

Sends are addressed by exact task ID, not by title, recency, folder, or window focus. If the binding can't be verified, the send stops.

DURABLE QUEUE

The queue is on disk, so it survives a relaunch. What you said arrives once, in order, even if the iPad slept in between.

PLAYBACK

Answers come back
as audio you can scrub.

Scrub the reply, change the speed, replay the last exchange with RPLY, or turn on AUTO to have completions narrated as tasks finish. The full text is still in Codex; this is for when you'd rather listen than read.

SCRUB · 0.5–2× SPEED · VOLUME ON THE ENCODER · DURABLE QUEUE

LANE 01 · spk-web · THREAD f89f1953
0:18 / 1:42CODEX REPLIED
RPLY 1.25× 0.5× READ TRANSCRIPT
FIVE FINISHES

Five themes,
same layout.

Tap one to repaint this page. It's the same CSS token set the deck itself uses.

PAPERWARM CREAM
FLIGHTCOOL STEEL
OBSIDIANTRUE BLACK
EMBERWARM DARK
PORCELAINSHOWN

WHAT YOU NEED

THE PAD is an iPadOS app, and it does not work alone. It needs SpeakEasy and Codex Desktop running on an Apple silicon Mac. That Mac holds the Parakeet model, the narration voices, and the bridge the nine lanes bind to.

There is no pairing step — no QR code, no URL to type, no pin. Put both on the same Wi-Fi and the Mac shows up.

INTEGRATION BOUNDARY — THE CODEX BRIDGE USES PRIVATE, VERSION-CHECKED CODEX DESKTOP IPC AND FAILS CLOSED ON INCOMPATIBILITY. IT IS NOT PRESENTED AS A SUPPORTED PUBLIC CODEX API. SPEECH IS TRANSCRIBED BY THE PAIRED MAC; NO ARACH SPEECH SERVER SITS IN THE PATH.

GET THE PAD

One step, for now.

The Mac half works today. The iPad half is going to TestFlight first — once both are on, they find each other with nothing to pair.

STEP 01 · ON YOUR MAC

Ask your agent to set it up.

You already have Codex open. Give it this and it installs the SpeakEasy skill, starts the runtime the Pad talks to, and tells you what needs your approval.

PASTE INTO CODEX

Set up SpeakEasy on this Mac so I can talk to my Codex tasks from an iPad. Read https://speakeasy.arach.dev/agent.md and follow Path 2, then start the Deck and leave it running. Tell me what you installed and which permissions I still need to approve myself.

Rather do it by hand? bunx @arach/speakeasy plugin codex, then speakeasy deck.

MACOS 14+ APPLE SILICON · CODEX DESKTOP

STEP 02 · ON YOUR IPAD

Not out yet.

The Pad goes to TestFlight before the App Store. Say you want it and I'll send an invite when the build is up — that is the only thing this does with your address. Once it's installed there's nothing to pair: same Wi-Fi, and the nine lanes fill in.

IPADOS 17+ · IPAD AND IPHONE · HOW WE HANDLE YOUR EMAIL