GitHub Actions show on the Mac. Open Pipelines to connect a read-only token and pick repositories. A render AwakeFlow starts uses at most 90% of the CPU by default. AwakeFlow Pro is $4.99 a year, with a 7-day free trial. This guide still covers Quiet Mode, schedules, and render progress from 1.4.2. Update to the current release if a step does not match what you see.
From a render command to a finished night
This is the path most people want: you already have the command. You want the Mac to stay with it, stay reasonably quiet, and sleep when the last frame is in.
Use a Render step, not Run Command. A Render step can count frames, estimate remaining time, pause and resume, and honor Quiet Mode. Run Command will execute a shell line, but it will not show render progress or pause fans for you.
You have a Blender command. You want to leave.
You would normally paste this into Terminal and babysit it:
blender -b ~/Films/hero.blend -o /Volumes/Renders/hero/frame_#### -F PNG -a
Instead, with AwakeFlow connected, paste this into Cursor, Claude Code or Codex:
Turn this into an AwakeFlow. Watch the Blender render until it finishes, keep the fans from getting too loud, then put the Mac to sleep. I will pick the .blend file and the output folder in AwakeFlow. Extra flags: -F PNG
The agent should save a Blender Render flow, optionally start it, and tell you to attach the project in the app. That last part matters: AwakeFlow still needs the .blend and the folder where frames land.
Finish the flow in AwakeFlow
- Open the new flow.
- Choose Blender as the render app.
- App Store: the first time, open Settings → Rendering and choose Set Up Render Start. If the starter is from another version, choose Update Render Starter. Then choose Start a render and pick
hero.blend, or leave it on watch-only and start Blender yourself. Without that starter, AwakeFlow can only watch a render you start. Point Render folder at where frames are written. - Direct: choose Start a render, pick
hero.blend, set the render folder to/Volumes/Renders/hero, and paste leftover flags such as-F PNGinto Arguments. - Under When finished, turn on Sleep Mac, Notify me, or both. With both off, the Mac goes back to its usual sleep settings. Lock and Shut Down are Direct.
- Open the Silent mode tab and turn on Pause if fans get too loud.
- Start the flow. Close the lid if you want. Walk away.
When the last frame is written, the flow ends and AwakeFlow requests sleep. If Quiet Mode paused the job because the fans got loud, it resumes when they settle. The night takes longer. The room stays quieter.
create_flow, in one step
You never have to write this yourself. It is what Cursor or Claude sends after you describe the night:
{
"prompt": "Watch my Blender render until it finishes, then sleep.",
"start": false
}
Use "start": true only after the project file and output folder are already set. Otherwise save first, attach the files, then ask the agent to start the flow by name.
The render is already going in Blender’s UI
You hit Render in Blender, After Effects or Cinema 4D, then remember you wanted to leave.
Watch the Blender render in ~/Films/output until the frames stop, then notify me and sleep.
Choose Watch a render, or point the render folder at where frames are written. AwakeFlow counts new frames and finishes when the sequence is done, or when no new frame appears for your stall time. Quiet Mode will not pause a render the other app launched itself. For a quiet overnight job, let AwakeFlow start the render.
After Effects, Maya, Houdini, Cinema 4D, Compressor
Same idea. Name the app so AwakeFlow picks the right Render step:
Start my Cinema 4D render, wait until it finishes, then sleep.
Watch After Effects until the export is done, then notify me.
Keep the Mac awake for a Houdini render, then lock when the frames are in.
Direct can launch every supported app from a project file. The App Store edition starts Blender, Cinema 4D and Compressor, and watches the rest. Compressor also needs an export preset. Extra CLI flags belong in Arguments. Lock and Shut Down are Direct.
A prompt that starts with “run” becomes Run Command in Direct. That executes the line, then finishes. You lose the frame counter, pause, resume, and Quiet Mode. Prefer “watch my Blender render” or “start my Blender render.”
Silent rendering
Quiet Mode does not slow the fans down. It pauses a render AwakeFlow started when the fans reach your threshold, then resumes when they drop. You set the level in Settings → Rendering, or on the flow’s Silent mode tab. Since version 1.4.2 this is in the App Store edition.
- It uses a fan reading when macOS allows one. Otherwise it estimates the level from the chip temperature. If neither is available, Quiet Mode cannot act.
- It only pauses renders AwakeFlow launched. A render you started in the DCC stays at that app’s mercy.
- Pausing makes the job take longer. That is the trade.
- It does not override macOS thermal policy. For critical deadlines, leave the lid open.
Pair it with closed-lid keep-awake when you want the machine in a bag or on a shelf. Closed-lid is still a request to macOS, not a guarantee.
Schedules
Choose Schedule on the Home toolbar, pick a saved flow and a time, then choose Once, Daily, Weekdays or specific days. Since version 1.4.2 you can turn on Start now and keep the Mac awake until then. The Mac stays awake from that moment until the flow starts. On Home, Turn off the display until it starts leaves the screen dark while you wait. The disk stays on, and Home counts down to the start.
Closing the window is fine. Quitting AwakeFlow cancels upcoming runs until you open it again. On Macs where macOS allows it, Wake Mac to run is under Advanced options. A shut-down Mac cannot start a schedule. If the Mac was asleep at the scheduled time and wake was not available, the run is skipped, or starts after the next wake if you allowed a grace period.
How this fits together
AwakeFlow is not a chat app. Your agent does the work. AwakeFlow stays with the Mac until that work is finished, then handles what happens next.
There are two doors into the same flow system:
- In AwakeFlow. Build the flow by hand, or use Describe a flow… from the home menu on Macs where Apple Intelligence is available. Type a sentence. Review the draft. Start it.
- From your agent, over MCP. After you Connect Cursor, Claude Code or Codex, the agent can create, start and stop flows on this Mac. You stay in the editor you already use. Paste a render command, say what should happen when it finishes, and let the agent call AwakeFlow.
MCP is the local connection. You do not need the letters MCP in everyday use. Once Connect is done, you talk to Cursor or Claude in plain language.
There is no hosted MCP server at awakeflow.app. Your client connects to AwakeFlow on the same Mac.
More real nights
Claude Code working while you sleep
Keep the Mac awake while Claude Code works. When it finishes or needs me, notify me, then sleep.
Connect Claude Code so AwakeFlow hears both MCP control and activity hooks. Agent completion is one step. You can still add a render or a timer after it. Stay-awake-for-agents can hold the Mac even when no flow is running; a flow is what decides the finish action.
Cursor overnight, then a render
Wait until Cursor finishes. Then watch my Blender render. Then sleep.
Flows are sequential. The render step does not start until the agent step completes. Build that chain in the editor with Add next step if the first draft is only one condition.
Export, settle, then sleep
Wait until the export file appears in ~/Movies/Out, wait until the CPU is quiet, then sleep.
Idle CPU is a useful signal, not proof the export succeeded. Prefer an output-file or render condition when you can.
A huge download, then lock
Watch ~/Downloads until it goes quiet, then lock the Mac.
Lock is Direct. On the App Store edition, use Notify or Sleep instead.
What to turn on
- Open AwakeFlow → Settings → Agents.
- Turn on Let agents control AwakeFlow.
- Select Connect beside Claude Code, Cursor or Codex, and complete any folder-access prompt.
- If you want the Mac to stay awake whenever an agent is working, even without a flow, turn on Stay awake while an agent is working.
- For overnight renders with the lid shut, leave Stay awake with the lid closed on. Closed-lid behavior still depends on macOS, hardware, power and thermals.
- In Settings → Rendering, turn on Pause if fans get too loud and set the level you can live with. The first time you want AwakeFlow to start a render, choose Set Up Render Start on that same card.
Reload Cursor if needed. For Codex, start a new session so it picks up the connection. Always copy the live address from Settings → Agents → Advanced if you configure a client by hand. The default is http://127.0.0.1:8787/mcp.
Connect from AwakeFlow
- Open AwakeFlow and go to Settings → Agents.
- Turn on Let agents control AwakeFlow.
- Select Connect beside Claude Code, Cursor, or Codex and complete any folder-access prompt.
- Reload Cursor if needed. For Codex, start a new session so it picks up the connection.
Run the agent once after Connect. Its status changes to Connected when AwakeFlow hears from it. AwakeFlow runs its MCP server on your Mac. The default address is http://127.0.0.1:8787/mcp. If that port is busy, the app chooses another. Always copy the actual address from Settings → Agents → Advanced.
Control and activity are different
MCP control lets an agent inspect status, create and run flows, pause a Direct render, and use the tools below. Activity hooks report when an agent is working, finished, or waiting for your attention.
The Connect button can install activity hooks for Claude Code and Cursor. Codex supports the MCP connection; its activity notifications need separate setup and do not provide the same full lifecycle. Use the activity instructions shown in AwakeFlow for your client.
Connecting MCP is not the same as hearing the agent. If a wait step says the client is connected, that means control is configured. Hooks are how AwakeFlow knows the agent is actually working.
Manual setup
The connection buttons are the easiest starting point. If you prefer to configure a client yourself, use the examples below, replacing the port with the one AwakeFlow shows. Keep your existing configuration entries.
Cursor
Add this to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json in a repo. Then enable the server in Cursor Settings → MCP.
{
"mcpServers": {
"awakeflow": {
"url": "http://127.0.0.1:8787/mcp"
}
}
}
The Connect button in Settings can configure Cursor for you, including lifecycle hooks so a wait step can hear Cursor working. Use the address shown in Settings if your port differs.
Claude Code
User scope so it is available in every project:
claude mcp add --scope user --transport http awakeflow http://127.0.0.1:8787/mcp
Claude Code needs "type": "http" if you edit JSON by hand:
{
"mcpServers": {
"awakeflow": {
"type": "http",
"url": "http://127.0.0.1:8787/mcp"
}
}
}
Codex
Choose Connect beside Codex in AwakeFlow Settings, then start a new Codex session. For manual setup, add the following to ~/.codex/config.toml:
[mcp_servers.awakeflow] url = "http://127.0.0.1:8787/mcp"
VS Code
User MCP config, or .vscode/mcp.json in a workspace. The top-level key is servers, not mcpServers.
{
"servers": {
"awakeflow": {
"type": "http",
"url": "http://127.0.0.1:8787/mcp"
}
}
}
Other agents
Any client that speaks MCP over HTTP can POST JSON-RPC to the local URL from Settings, usually http://127.0.0.1:8787/mcp. There is no OAuth and no API key. If the client requires Streamable HTTP SSE on GET, it may not connect yet. JSON POST works today.
GitHub Actions on this Mac
Pipelines is a read-only view of GitHub Actions. It is not a wait step and it does not start a flow. Open Pipelines on the Home toolbar. Connecting happens in that window, not in Settings.
AwakeFlow only reads. The token stays in this Mac’s Keychain. Every request goes to api.github.com. AwakeFlow’s servers never see it.
- Open Pipelines.
- Choose Create token on GitHub. The link fills in the name and the one permission AwakeFlow needs, Actions: read. On GitHub, pick which repositories it can see, then generate the token.
- Paste the token into AwakeFlow and choose Connect.
- Choose Repositories… if you want to follow a smaller set than the token can see.
A fine-grained token covers one owner. If your repositories sit in several organizations, use Several organizations? and make a classic token with the repo scope instead. AwakeFlow still only reads.
Once connected, Pipelines lists the latest run for each workflow. A click opens the run on GitHub, where the logs already are. While something is running, Home shows a small line under the toolbar. The same list can appear on a linked iPhone.
Choose Disconnect GitHub in the account menu to drop the token from this Mac.
Tools in version 1.3
| Tool | What it does |
|---|---|
get_status | Current flow, render progress, agent activity, and manual-step state. |
list_flows | Saved flows on this Mac. |
list_capabilities | Wait conditions, finish actions, and render apps in this edition. |
create_flow | Turn a sentence into a saved flow. Optional start. |
start_flow | Start by id, name, or the selected flow. |
stop | Cancel the running flow without its finish action. Agent activity can independently keep your Mac awake. |
finish_step | Complete the current manual step, which may advance the flow. |
list_history | Read recent local runs and completion reasons, without command output. |
pause_render / resume_render | Pause or resume a render launched by the Direct edition. |
delete_flow | Delete a saved flow by id. |
Ask the agent for a status check while a render runs. get_status includes frame progress when a Render step is active. On Direct, you can also say “pause the render” or “resume it.”
Port fallback
Preferred port is 8787. If it is busy, AwakeFlow tries the next 32 ports and keeps the first that binds. Settings shows the local address. That is the only URL to put in a client.
Privacy
The listener is 127.0.0.1 only. Other machines cannot reach it, and this website never proxies it. Tools run on this Mac, with the same edition limits as the app. The Mac App Store build cannot run shell commands, launch After Effects, Maya or Houdini renders, pause a render from an agent, lock, or shut down. Quiet Mode in that build is the in-app pause, not the pause_render tool.