プログラミング
Show HN: Adrafinil – エージェントが作業中のみMacを蓋を閉じたままスリープさせない
Show HN: Adrafinil – keep a lid-closed Mac awake only while agents work (github.com)
要約
AIエージェントの作業中にMacBookの蓋を閉じるとスリープしてしまう問題に対し、Adrafinilはpmset disablesleep 1を使って蓋を閉じたままでもスリープを防ぎます。他のアプリと異なり、エージェントがアクティブな時だけ動作し、作業が完了すると自動的にスリープを許可します。このアプリはオープンソース(MITライセンス)で、セキュリティも考慮されています。
全文翻訳
1ヶ月前、エンジニアたちがAIエージェントの作業中にMacBookの蓋を半分開けたままカフェや公園を歩き回っているという投稿やツイートが相次ぎました。蓋を完全に閉じるとスリープ状態になり、エージェントが停止してしまうためです。tmuxやAmphetamineを使えという皮肉なコメントもあった一方で、「必要なのは時々だけで、Amphetamineを無効にするのを忘れてカバンの中でラップトップのバッテリーが切れているのを見つける方が最悪だ」と選択を擁護する声もありました。
これはこの問題に対する解決策です。caffeinateとは異なり、pmset disablesleep 1を使用することで、外部電源やディスプレイがなくても、蓋を閉じたままでもMacBookがスリープするのを防ぎます。他のスリープ防止アプリとは異なり、Adrafinilはエージェントが積極的に何かをしている時だけアクティブになります。Claude Code、Codexなどのエージェントにインストールされるフックを通じてエージェントのアクティビティを検出します。動作していることを確認するために、アプリはメニューバーにアクティブステータスを表示し、蓋を閉じるとチャイムを鳴らします。
エージェントの作業が完了すると、Adrafinilはそれを検出し、pmset disablesleepを0に戻してラップトップをスリープさせます。また、過熱の場合にもスリープさせます。手動で切り替えたい場合は、オプションのMCPをインストールし、特定の間MacBookをスリープさせないようにエージェントに指示することもできます。
このアプリには4つのバイナリがあり、そのうちの1つはsetSleepBlockedという単一の呼び出しを公開するルートヘルパーです。すべてのロジックとポリシーは非特権部分にあります。これらはすべて公証されており、アプリは完全にオープンソース(MIT)です。