Close the lid. Let the agent finish.

Need to leave your desk? Start a SleepWalk session, close the lid, and take your Mac with you. It stays awake until the work is done—or one of your limits is reached.

Download for Mac 7-day free trial
Purchase $9 $12 Use code LAUNCH at checkout.
SleepWalk now

Always within reach.

A lightweight macOS menu bar app. Start or stop a session in one click.

Set limits before you walk away

Pick the timer, battery floor, and temperature limit before the session starts.

Time limit

Stop after a set time.

Battery floor

Stop before charge drops too low.

Temperature watch

Stop if the Mac gets too hot.

Works with every agent

SleepWalk is agent agnostic: it keeps macOS awake, regardless of what is running.

An autonomous agentic skill

Optionally, install the --- name: sleepwalk description: Use SleepWalk when the user says "do not sleep", asks to keep this Mac awake for a long-running task, invokes $sleepwalk, or asks to wrap a command. --- # SleepWalk SleepWalk is a local macOS app for bounded keep-awake sessions. It does not inspect prompts, code, logs, windows, or network traffic. Use it only for an explicit keep-awake request or a genuinely long-running command. ## Workflow 1. Check availability: ```bash sleepwalkctl status ``` If unavailable, ask the user to open SleepWalk or install the CLI from Settings. 2. Start a lease for the requested long task: ```bash sleepwalkctl start --source codex --agent-session-id "<stable-id>" --label "<short label>" ``` Reuse the same ID. Add duration, battery, or thermal flags only when the user requests them. Thermal stops are `warm`, `hot`, or `critical`. 3. Always release that lease when the task completes or genuinely stops: ```bash sleepwalkctl stop --source codex --agent-session-id "<stable-id>" --reason "<brief reason>" ``` This releases only this agent lease and never kills user processes. For one long non-interactive command: ```bash sleepwalkctl run -- <command> ``` Do not start SleepWalk for ordinary short commands. Never disable its safeguards. and sleepwalkctl manages bounded keep-awake sessions for SleepWalk. Usage: sleepwalkctl status sleepwalkctl active sleepwalkctl start [options] sleepwalkctl stop [options] sleepwalkctl run [options] -- command [args...] Commands: status Show the app, session, battery, and thermal state. active Print whether a session is active. start Start a bounded keep-awake session. stop Stop the current session. run Keep awake while a command runs. Start and run options: -d, --duration <time> Stop after a duration such as 30m or 1h. -b, --battery-floor <pct> Stop below a battery percentage. -l, --label <text> Name the session. --thermal-stop <level> Stop at warm, hot, or critical. Stop option: --reason <text> Explain why the session stopped. Agent options: --source <name> Identify the calling agent. --agent-session-id <id> Manage only that agent's lease. General option: -h, --help Show this help. Examples: sleepwalkctl start --duration 30m --battery-floor 20 --thermal-stop hot sleepwalkctl run -- npm test sleepwalkctl stop --reason "tests passed" in one click. Tell your agent “do not sleep” or mention $sleepwalk. It handles the session, then lets your Mac sleep when the work is done.

What do you want to do?

Type a request and send it to see the SleepWalk handoff.

Frequently Asked Questions

Who is SleepWalk for?

SleepWalk is for anyone who needs a Mac to keep working with the lid closed: coding agents, builds, tests, downloads, renders, backups, and other long-running tasks. Each session stays bounded by the limits you choose.

Can I close my MacBook lid while work is running?

Yes. Start a SleepWalk session before closing the lid. Your task can continue until it finishes or a time, battery, or temperature limit stops the session.

Can I put my MacBook in a backpack while it is running?

If the task needs internet access, connect your Mac to a phone hotspot before putting it away. A backpack reduces airflow and can trap heat, so avoid heavy workloads in a tightly packed bag. Enable a temperature limit so SleepWalk stops when macOS reports the selected thermal state. This guardrail is a fallback, not a substitute for ventilation.

How is SleepWalk different from Caffeine, Amphetamine, caffeinate, or pmset?

They solve related keep-awake problems. Caffeine is designed for ordinary idle sleep, not closed-lid work. Amphetamine, caffeinate, and pmset are powerful general tools, but require more setup. SleepWalk puts closed-lid sessions and built-in time, battery, and temperature limits in one focused menu bar flow.

Can an agent start and stop SleepWalk itself?

Yes. Install the optional skill and CLI, then tell your agent “do not sleep” or mention $sleepwalk. The agent starts a bounded session and releases it when the task ends.

Which agents does SleepWalk support?

Any coding agent that can follow a Markdown skill and run local commands. SleepWalk manages macOS itself, so the menu bar app also works without an agent.

Does SleepWalk watch my editor, prompts, or terminal output?

No. SleepWalk does not inspect prompts, code, windows, logs, or network traffic. It only reads local power, battery, thermal, and running-app metadata needed to manage the session.

How does SleepWalk watch my MacBook temperature? Is it reliable?

SleepWalk uses the macOS system thermal state instead of estimating temperature from one sensor. Choose Warm, Hot, or Critical, and SleepWalk stops when macOS reports the selected state. It is a useful safety guardrail, not a hardware guarantee.

What happens when a limit is reached?

SleepWalk ends the keep-awake session, reopens selected apps if configured, and lets macOS sleep normally. It does not terminate your work.

How much does SleepWalk cost?

SleepWalk is a one-time purchase. Click Purchase for the current price, free trial, and any active offer.