The Nook App Icon
The Nook

Your Mac and Agents, under control

Agent orchestration, fan and thermal control in a beautiful native UI.

macOS 14+ · 14-day free trial · up to 3 devices

Beta pricing · 33% off

$15 $10 one-time

Why the Nook

One glance. Everything your agents are doing.

The island

Every agent, one glance

A pill tucked into your notch — a campfire for your whole fleet on the left, live data on the right. Blue running, green ready, amber needs you.

expand for the full panel ↓

Approvals

Unblock agents, anywhere

Permission prompts pin as cards above your sessions — Allow, Allow for session, or Deny. Away from the desk, answer from your iPhone or Apple Watch (beta).

the-nook · bridgeapproval

Run Edit

server/routes.ts

AllowAllow for sessionDenyDeny with reason…

Cooling

Silence it or max it

Read both fans live, then take over the curve completely. Flip to MAX before a compile, whisper-quiet when the fleet idles.

1270RPM
1219RPM
AutoMAX

Remote

Agents on other machines

Run agents on Linux boxes and SSH servers — one click installs the nook-hook, and their sessions join the same island.

api · main

User: fix the flaky test

Running pytest -x…

Claude Code · build-box
4m

trainer · fp16

User: benchmark fp16

Done · replied 1m ago

Codex · gpu-rig
12m

Your Mac

The gauges that matter

Each die's temperature beside its 60-second usage trace, tinted amber from 70° and red at 85°, so you see a compile heating up before the fans do.

CPU58°
GPU68°

Plus a mixer, capture, timers, weather, and a dozen more modules — see them all ↓

In action

Built for the way you actually run agents

The island

Your whole fleet, in one pixel strip

Every session, every agent, one square each. The pill never wraps, never grows — an arriving question flashes the fire and swaps the slot, then hands the notch back.

  • 13 agents: Claude Code, Codex, Gemini CLI, OpenCode, Pi, Muse, and more
  • Custom agents: your own coding agent can wire itself in from the published contract
  • Slot rankings — you choose which data earns the notch
  • You don't need a notch — external displays get the same island, floating top-center

Fleet running calmly

 

Approvals

Answer from the island — or your phone

A gated tool call surfaces the island: the fire turns to a question, the card pins above your sessions, and the row says what it's waiting on. Allow, Allow for session, Deny, or deny with a reason, and the run picks up where it stopped.

  • Approval cards pin above the session list; questions answer inside their row
  • Allow for session waves through the rest of that session's requests
  • Answer from iPhone or Apple Watch too, now in TestFlight beta
  • Works across every hooked agent, local or remote
the-nook · harden the bridgeapproval

Run Bash

swift test --filter Bridge

AllowAllow for sessionDenyDeny with reason…

the-nook · main

User: harden the bridge

Running swift test --filter Bridge…

Claude Code
iTerm26m

site · nook-334

User: match the mocks to the app

Reading ModuleMocks.tsx…

Codex
kitty-tmux2m

Terminals

Reply without hunting for the tab

Every session knows the terminal it runs in. Type a reply in the island and it lands in that exact pane; click Jump and the right window comes forward.

  • Replies reach agents in tmux, iTerm2, Terminal, and kitty
  • Jump focuses the exact window, even for sessions over SSH
  • Per-turn replies render as Markdown, with tables and code
the-nookmainJump ↗

Done. Want me to update the tests too?

Reply…Send
tmux · the-nook:2focused

⏺ Updated 3 files

> yes — and run them

⏺ Bash(swift test)

Remote

Any SSH box, one click away

Pick a host from your ssh config or your tailnet and click once — the nook-hook installs itself and its agents appear beside your local ones, indistinguishable.

  • One click: connect, push the hook, configure agents, check it can reach this Mac
  • Hosts mirror this Mac's installed integrations automatically
  • Remote sessions are ordinary rows; the agent chip names the machine

gpu-rig

tailnet peer

Not set upSet up

 

trainer · fp16

User: benchmark fp16

Running python bench.py…

Codex · gpu-rig
iTerm2now

The campfire

A hearth that tells the truth

Stop-motion pixel art, four frames a step. It dances when tokens stream, putters blue when an agent asks, and goes to dead embers the moment something breaks.

  • Idle, running, ready, question, and error — at a glance
  • Hand-drawn 14×14 sprites, no tweening
  • Six chiptunes you can assign to any agent event

fleet running

pending question

ready to review

all quiet

something failed

Cooling

Fans that answer to you, not the scheduler

Live RPM for every fan, and the curve is yours. Apple's stock curve waits until you're already cooking — swap to Aggressive and it climbs earlier and harder, or slam MAX before the compile.

  • Stock, Aggressive, and MAX — swap curves in one click
  • MAX and COOL sessions surface right in the pill
  • CPU/GPU die temps tier-color before things get loud
  • All local: your hardware data never leaves the device
Fan 1
1270RPM
Fan 2
1219RPM
Autocurve in control

Power

Wall power, on your terms

Live watts from the adapter to the battery to the chassis — and a charge ceiling you set yourself. On recent macOS The Nook drives the system's own limiter; below that it enforces the limit itself. One slider, 50–100%, any version.

  • One slider, 50–100%, on any macOS version
  • Hooks the system limiter where it exists, enforces elsewhere
  • Top-up mode charges past, then re-arms on unplug
  • Thermal protection pauses charging when the pack runs hot
  • Energy flow figure: adapter → battery → system, live watts
BatteryLimit 80%
62%38 W · 57 min to full

Top-up mode

charge past the limit while plugged in

on the way to the ceiling

Sound

Every app gets its own fader

A real volume mixer: set each app's level, mute the noisy one, and send any app to its own output — music to headphones while the meeting stays on the speakers.

  • Per-app volume, mute, and output routing
  • Master output, system sounds, and microphone pickers in one panel
  • Catches players that aren't apps, like command-line podcast tools
Volume mixerout · Speakers
♫
MusicSpeakers
♪
◎
BrowserSpeakers
♪
●
MeetingDisplay
♪
>_
podcast-cliSpeakers
♪

every app on its own fader

Capture

Screenshots and recordings from the notch

Drag out an area, pick a screen, or choose one app. While a recording runs, Wings unfold beside the island: pause and stop on the right, system audio and microphone on the left.

  • Area, screen, or single-app capture
  • Screenshots save to your screenshot folder and copy to the clipboard
  • System audio and microphone tracks for recordings
  • The Nook's own windows never show up in a capture

Screenshot

AreaScreenApp

Record

AreaScreenApp
System audioMicrophone

Your day

Meetings come to the notch

Today sits in a dial — days behind, days ahead, dots where things happen. The slot counts your next call down, and when it gets close the island opens the day on its own.

  • Next meeting counts down right in the slot
  • Near a call, the island opens the day itself
  • Meeting links get an Open button in the row
  • Real calendars and reminders — no sync service
14m
Calendar+
S11
M12
T13
W14
T15
F16
S17
S18
M19

09:30–09:45

Standup

Daily

Open

15:30–16:00

Design review

4th floor

Camera

A lens that stays asleep

A live camera preview in the island for the seconds before a call. It never wakes on its own: permission-gated, inert until you click Start, and dead the moment you leave the panel.

  • Nothing watches until Start camera gets a click
  • Live only while the panel sits open
  • A device picker for every connected camera
  • Opt-in module — in no default panel
CameraFaceTime HD Camera ▾
Start camera

inert — the lens stays dark until you click

Floating actions

Your buttons, orbiting the island

Pin up to seven one-tap actions around the expanded island. They ride its expansion in and out, so the things you reach for most are always one click away.

  • Run an Apple Shortcut, open an app or URL, or run a shell command
  • Toggle Low Power Mode, top-up, or overheat protection
  • Set the charge limit, cycle audio outputs, or start a timer
  • Cycle the approval mode without opening Settings
 

And everything else

One island instead of a menu bar full of utilities

Every module below lives in the same notch, arranged however you like, under the same one-time license.

13 agentsCustom agentsSix chiptunesFocus-aware slotsPer-app output routingLow Power Mode toggleRemindersBattery healthEnergy flow in wattsThermal charge protectionTop-up chargingMemory by process
Jump to the terminaltmux · iTerm2 · kittyMarkdown repliesTailscale hostsOne-click SSH setupiPhone widgetsWatch-face widgetsScreenshots to clipboardSystem audio + micHourly forecastExternal display brightnessLid-closed keep-awake

Now Playing

Music in the notch

Track, source, and transport controls in a module. Sources without artwork, like some browsers, get a live waveform in the slot instead.

Night Drive

Synthwave Radio · Browser

⏮⏸⏭
waveform slot

Timers

Timers that stack

A readout over a tick tape that drains with a soft crest. Run several at once; finished timers ring and hold the island open until you dismiss them.

3:00

Remaining of 3:00

PauseCancel
16:00
1m5m10m25m

Weather

The sky, in the slot

Saved places with hourly and daily forecasts. The compact slot stacks the sky over the temperature.

13°
Portland1 of 2
Now13°
1413°
1514°
1615°
1716°
1815°

Interceptions

Volume and brightness, under the notch

An optional takeover of the system HUD: levels peek out below the island. Extra brightness spends an XDR panel's HDR headroom past the usual maximum, and external displays get real brightness control.

Speakers

35%

Approval modes

One stance for every agent

Auto follows each agent's own settings, Yolo waves gated tools through, and Verify holds every one until you decide.

AutoYoloVerify
Bashrm -rf build/asks

follows each agent's own settings

Network

Know your connection

Public IP, ISP, gateway, and DNS one click from your clipboard. VPN routes get flagged, and a speed test is always a click away.

DOWN

0Mbps

UP

0Mbps

Run
Public IP203.0.113.42⧉
ISPExample Fiber · AS64500⧉
DNS1.1.1.1⧉
VPN · default route

Disks

Storage, measured

Live read and write throughput, capacity that matches Finder, and SMART health for your drives.

R 760 MB/sW 109 MB/s
Macintosh HD612 GB free of 1 TB
SMART · Verified

Keep Awake

Sleep when you say

Stay awake for a set time, while plugged in, with the lid closed, or only while your agents are working.

1 hourOn powerLid closedAgents

awake for 59:12 more

Lock Screen

Visible while locked

The island stays on your Lock Screen, so you can see how many agents are working or waiting without unlocking.

30

9:41

Layout

Panels you shape

Drag and resize modules in the mosaic editor, pick a density, and let slot rankings switch with your Focus mode.

TestFlight beta

Your fleet, in your pocket

The iPhone and Apple Watch companion is in beta. Approvals, questions, and replies reach you away from the desk, and your answer goes straight back to the agent.

  • Allow, deny, answer, and reply from iPhone or Apple Watch
  • Connects over an end-to-end encrypted relay, your tailnet, or your LAN
  • Home Screen, Lock Screen, and watch-face widgets for fleet status
  • Mute notifications for a while, or while you're active at the Mac

Request beta access

Leave your email to get a TestFlight invite. We only receive your email address.

9:41

2 working0 waiting
The Nook · now

Claude Code · the-nook

Run Bash: swift test

AllowDeny
2agents working

Try it free for 14 days

Orchestrate your coding agents, take control of your fans and battery, give every app its own volume, capture your screen, and keep your day in the notch. When the trial ends, unlock everything with a single one-time payment — no subscription, ever.

Beta pricing — full price will be $15. One license covers up to 3 of your own Macs.

Lost your license?

Enter the email you purchased with and we'll resend your key.