Recently I bought a usb-c empty external monitor card to prevent mac from going to sleep. There are many of these external monitor simulators on Amazon.
I still see the laptop go to sleep many times with the external monitor simulator.
The dummy display enables “clamshell mode,” which lets your MacBook stay awake even with the lid closed, provided that it’s also on AC power. If the MacBook is not connected to power, the clamshell mode isn’t activated and it will sleep normally.
Adrafinil simply disables the global sleep without spoofing hardware, and re-enables it once the agent is done working, the temperature is too high, or the battery is low.
The app is built for 26+, as I never tested it on earlier versions. It won’t solve your specific case, though, as it only prevents sleep. It won’t wake it once it’s already sleeping.
Caffeinate is burned into my muscle memory at this point. I attribute that to the realization that you could repeat opt flags. There's something catchy about
Thank goodness. I can’t leave my laptop for a second unattended because my cat loves nothing more than to dance on the keyboard. I’ve need something like this.
This is exactly what the app does, except it ties it to agent activity and re-enables sleep once the turn ends, the laptop is close to overheating, the battery is low, or on a timer.
This works great. Only downside is display doesn't turn off when you close the lid. Made a little status bar utility to wrap the disablesleep command and address that downside:
Interesting. Kind of similar in purpose, but I created a simple app to schedule and type the "continue" word in my terminal after X time has passed, since I have to wait for my usage to be restored. =)
I think the same...It happend to me that I just ask Claude to build whatever I need for my personal very specific use case without looking what else it's outhere
Everyone dreams about making the next cool AI tool and doesn't bother checking if someone has already made the same thing years ago without the word "AI" in the description
In order to get the same behavior with Amphetamine you’ll need to:
1. Install it from the AppStore (no brew, no GitHub)
2. Not forget to enable lock on lid close
3. If you ever connect/disconnect power while the lid is closed without the optional “Power Protect” system, the MacBook will sleep. The system is a script and a configuration file making sudo pmset -a disablesleep passwordless.
4. Add hooks to Claude Code configuration that will use Apple Script to start and stop Amphetamine sessions. For Codex you’ll have to make a script that will watch process activity to know when a turn ends.
It’s not like Amphetamine can’t do the same, it’s that this app is made specifically for AI agents and nothing else.
I’ve often wondered about the thermal performance or running a MacBook with the lid closed. One argument is that the reduced surface area from a closed lid increases temperature. Others argue that not running & rendering the display (and thus GPU) generates less heat. I’m not sure who to believe.
I used to do this 15 years ago to keep listening to music from my laptop (one of the white chiclet ones) in my backpack, can't remember the name of the app I used then.
One caveat, your laptop cannot cool inside a backpack, it will overheat and shut down anyway. This happened to me several times.
It has a setting for thermal cutoff that you can set to something like 60º C. Sleeping will stop heavy work (like a build) before it leads to overheating.
In that case from what I understand, Adrafinil has a much lower abuse potential than amphetamines, in particular because it doesn't give you a rush. If we're going to name mac apps after pharmaceuticals then this feels a little bit classier. No rush, just steady wakefulness.
At some point, if you closed the lid and didn't have an external monitor plugged in, macos would put the GPU in power save mode, which would tank local llm performance. Is that not the case any more? There were even small singles you could get which would trick the ps into thinking an external monitor was plugged in
Amphetamine is what I use. It has a robust set of triggers, like if you ip address changes to a certain subnet (like private IPs on a work network)
https://apps.apple.com/us/app/amphetamine/id937984704?mt=12
Came to say this. I've used it for years. Simple and works great!
This is great. Will check it.
Recently I bought a usb-c empty external monitor card to prevent mac from going to sleep. There are many of these external monitor simulators on Amazon.
I still see the laptop go to sleep many times with the external monitor simulator.
This is the one I bought.
4K 60Hz USB-C Type-C Virtual Display Adapter DDC EDID Dummy Plug Headless Ghost Display Emulator 2K 60hz1080P@120Hz
The dummy display enables “clamshell mode,” which lets your MacBook stay awake even with the lid closed, provided that it’s also on AC power. If the MacBook is not connected to power, the clamshell mode isn’t activated and it will sleep normally.
Adrafinil simply disables the global sleep without spoofing hardware, and re-enables it once the agent is done working, the temperature is too high, or the battery is low.
My requirement was to keep the laptop on with the lid closed. Sleep normally when idle but wake up when a nomachine request comes in.
I will see how this app fits into my specific need.
I have to check this on Mac Sequoia 15.7
The app is built for 26+, as I never tested it on earlier versions. It won’t solve your specific case, though, as it only prevents sleep. It won’t wake it once it’s already sleeping.
Can't you just use a hot corner configured as "prevent sleep"?
How does it sleep when the agent is done working with the hot corner?
Have the agent write an app that moves the cursor our of the hot corner and trigger it when done.
I have been using the builtin macOS `caffeinate` command for this.
For example:
caffeinate -dimsu
That keeps the Mac awake so I can use Claude remotely from phone.
You can also wrap your command as well, but I rarely use it.
caffeinate -dimsu your-agent-command
Caffeinate is burned into my muscle memory at this point. I attribute that to the realization that you could repeat opt flags. There's something catchy about
caffeinate -dimsum
Claude Code actually uses caffeinate -i -t 300 during Claude’s turn, restarted automatically until the turn finishes.
The new wave apps named after speed / modifinil must be hard core?
Does it also make my Mac irritable?
I guess we are getting the entire modafinil, R-modafinil extended universe.
Probably less irritable than amphetamine~
Thank goodness. I can’t leave my laptop for a second unattended because my cat loves nothing more than to dance on the keyboard. I’ve need something like this.
Does closing the M-series laptop lid no longer throttle the CPU like it did on the Intel ones?
For MacOS, keep awake with:
sudo pmset -a disablesleep 1
Reset back:
sudo pmset -a disablesleep 0
This is exactly what the app does, except it ties it to agent activity and re-enables sleep once the turn ends, the laptop is close to overheating, the battery is low, or on a timer.
Nice. I needed this yesterday, and will need it again today.
This works great. Only downside is display doesn't turn off when you close the lid. Made a little status bar utility to wrap the disablesleep command and address that downside:
https://github.com/narcotic-sh/modafinil
(yes, I know, another *afinil named Mac sleep prevention app? but hey, I was first :P)
Just tried. Bare minimal and does exactly what's needed and nothing else. Love it. Thanks..
np cheers mate
Afinils are cool, and your app is cool too~
Indeed.
Thanks!
Interesting. Kind of similar in purpose, but I created a simple app to schedule and type the "continue" word in my terminal after X time has passed, since I have to wait for my usage to be restored. =)
I am always baffled how many people does not know about Amphetamine.
But Amphetamine has an option to end when an app closes. I’m just so confused why everyone using ai is reinventing solutions that already exist.
Claude Code or Codex (normally) don’t close the terminal window after a turn ends, they wait for the user’s reply.
I think the same...It happend to me that I just ask Claude to build whatever I need for my personal very specific use case without looking what else it's outhere
Easier to ask Claude than ask google I guess.
Everyone dreams about making the next cool AI tool and doesn't bother checking if someone has already made the same thing years ago without the word "AI" in the description
In order to get the same behavior with Amphetamine you’ll need to: 1. Install it from the AppStore (no brew, no GitHub) 2. Not forget to enable lock on lid close 3. If you ever connect/disconnect power while the lid is closed without the optional “Power Protect” system, the MacBook will sleep. The system is a script and a configuration file making sudo pmset -a disablesleep passwordless. 4. Add hooks to Claude Code configuration that will use Apple Script to start and stop Amphetamine sessions. For Codex you’ll have to make a script that will watch process activity to know when a turn ends.
It’s not like Amphetamine can’t do the same, it’s that this app is made specifically for AI agents and nothing else.
Adrafinil never seemed to work for me. I tried it a few times when I worked an overnight shift.
I’ve often wondered about the thermal performance or running a MacBook with the lid closed. One argument is that the reduced surface area from a closed lid increases temperature. Others argue that not running & rendering the display (and thus GPU) generates less heat. I’m not sure who to believe.
Running lid closed with external display has been officially supported since forever so I wouldn't worry about it too much.
It would be great if adrafinil can also track the battery and token usage while agents are working
How does this differ from https://github.com/samber/cc-caffeine?
It’s an Electron app that uses powerSaveBlocker to prevent display sleep. It won’t prevent macOS system sleep on lid close with no power.
Thanks. This one looks much better!
Codex recently built this in - "Prevent sleep while running" toggle
What's old is new again, but I welcome this.
I used to do this 15 years ago to keep listening to music from my laptop (one of the white chiclet ones) in my backpack, can't remember the name of the app I used then.
One caveat, your laptop cannot cool inside a backpack, it will overheat and shut down anyway. This happened to me several times.
It has a setting for thermal cutoff that you can set to something like 60º C. Sleeping will stop heavy work (like a build) before it leads to overheating.
that was true of intel but definitely not of arm macbooks.
Then why do they have fans?
Many ARM Macbooks do not have fans?
Fans !== heat
My comment is only in response to https://news.ycombinator.com/item?id=48701824 , which is contending that ARM Macbooks have fans.
had a coworkers whose laptop keys melted into mush
Um so it is
and ?(personally I have Ruby scripts that check activity on "tmux capture-output" for that)
https://news.ycombinator.com/item?id=9224
Yeah, I'll stick with the oneliner.
https://ghloc.vercel.app/kageroumado/adrafinil?branch=main
15k loc for this? holy cow
So now we're naming apps after obscure Modafinil derivatives?
I'll take credit for starting this trend :P
https://github.com/narcotic-sh/modafinil
There were mac apps called caffeine and amphetamine years ago.
In that case from what I understand, Adrafinil has a much lower abuse potential than amphetamines, in particular because it doesn't give you a rush. If we're going to name mac apps after pharmaceuticals then this feels a little bit classier. No rush, just steady wakefulness.
Was referring to the *afinil specifically
Alright, well I guess I thought were were talking about naming apps after stimulant drugs lol.
https://kagerou.glass/#dispensary-shelf
He's a connoisseur.
Adrafinil's discovery and use predates Modafinil, I believe.
I admire your pharma knowledge.
`sudo pmset -a sleep 0`
We need people to rediscover remote development desperately, lol.
At some point, if you closed the lid and didn't have an external monitor plugged in, macos would put the GPU in power save mode, which would tank local llm performance. Is that not the case any more? There were even small singles you could get which would trick the ps into thinking an external monitor was plugged in
I don't think this is for running local llms.
reminds me of ye old caffeinate
Caffeinate doesn’t prevent sleep with the lid closed.
you can run opencode inside a docker container and expose it's webui.
Ridiculous bloat.