Keepresso
Keepresso
Keepressoの使い方

長いビルドやコンパイル中もMacをスリープさせない

György
監修
György
更新 Jul 23, 2026 1 min

長いXcodeのアーカイブ、cargo build --release、Gradleやnpmのインストール、ローカルのCI実行は、macOSが「このマシンは暇だ」と判断しやすい典型的な場面です。画面が暗くなり、システムがスリープし、ビルドが止まったり失敗したりします。Keepressoは作業のあいだMacを起こしておき、終われば休ませます。

仕事に合うやり方を選ぶ

1. タイマーセッション(いちばん簡単)

ビルドがだいたいどのくらいで終わるか分かる場合:

  1. メニューバーのKeepressoのカップをクリックします。
  2. 長さを選びます(1時間、4時間、カスタム、またはUntil a Time)。
  3. スリープ防止を開始し、ビルドを開始します。

タイマーが終わると、Keepressoはシステムを起こし続けるのをやめます。詳細はタイマーセッションです。

2. プロセストリガー(手が離れても安心)

ビルドツールが実際に動いているあいだだけ起こしておきます。

  1. 環境設定 → Triggersを開きます。
  2. トリガーによる制御をオンにします。
  3. Process running条件を追加し、たとえばxcodebuildswiftcargorustcgradlejavanodenpmpnpmmakeninjacmakeといったコマンドに合わせます。
  4. ツールが複数ならいずれかで組み合わせます。

プロセスが終了すると(設定した猶予のあと)Keepressoはセッションを終え、Macは再びスリープできます。スマートトリガーを参照してください。

3. CPU負荷トリガー(ツール名に依存しない)

ツール名は変わるが、マシンが明らかに働いている場合:

  1. CPU above a threshold条件を追加します(50%または75%が良い出発点です)。
  2. 平滑化はそのままに: 一瞬のスパイクではセッションは始まらず、持続した負荷なら始まります。

混在するツールチェーンや、名前の違う子プロセスを生むIDEビルドに向いています。

4. Media Render / AI Agentプリセット

よくある長い仕事向けの組み込みプリセットがあります。

  • Media Renderffmpegの実行中に保持します。
  • AI Agentはコーディングエージェント(claudecodexgeminiなど)が単に開いているだけでなく実際に作業している間保持するので、ノートPCでの夜通しのエージェント作業が完了し、作業が終わればMacはきちんとスリープします。

条件メニューからプリセットを適用すると、現在のルールセットが置き換わり、トリガーがオンになります。

ジョブが終わった瞬間に知りたいですか?環境設定、Automationイベントフックなら、セッション終了やエージェントのアイドル時にShortcutの実行、webhookへのPOST、シェルコマンドの実行ができ、スマホへのプッシュも含まれます。起きる前にジョブが始まるなら、同じタブのスケジュール起床がMacを間に合うよう起こします。

任意: 画面オフ、ふた閉じ

ビルドに点灯したパネルは要りません。

  • システムが起きていればよいならprevent display sleepをオフにします。ガイド: Macをスリープさせない方法
  • MacBookではクローズドディスプレイモードを有効にし、カバンや棚の上でもコンパイルを続けつつ、ふたを閉じたら内蔵パネルをスリープさせます。ガイド: ふたを閉じたまま

バッテリーの安全

ノートPCでは、忘れたセッションがバッテリーを使い切らないよう、スリープ防止にバッテリー自動一時停止を組み合わせてください。環境設定で下限(例: 20%)を設定すると、充電がその下に落ちたときにKeepressoが一時停止します。詳細: スマートトリガー

スクリプトとCIマシン

ヘッドレスのビルドマシンやスクリプト化されたパイプライン向け:

# ビルドが実行されている間だけMacを起こしておく(アプリ不要)
your-build-command & keepresso -w $!

# または起動中のアプリを操作
keepresso start --for 120
keepresso stop

無人のパイプラインでは、自動化リースはstartとstopのペアよりも安全です。スクリプトが更新し続ける期限付きの許可なので、クラッシュしたジョブがMacを起こしたまま固定することはできず、リースは単に失効します。

ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool ci --task "release build" --ttl 600
# ... ビルドの実行中にループでハートビートを送る ...
keepresso lease release --id "$ID"

ジョブがAIエージェントによって動かされている場合は、これを自分で書く必要すらありません。付属のスキルとMCPサーバーが、エージェントにプロトコル全体を教えます。AIエージェントにMacを起こし続けさせるを参照してください。

インストールとPATHの注意: keepresso CLI。ビルド専用のMac miniでは、Headless Setupのチェックリストも実行し、ログインとスリープ方針を常時稼働マシンに合わせてください。

関連

Keepressoを入手

無料でオープンソース、macOS 14以降に対応。インストールして、自分のルールでMacをスリープさせないようにしましょう。

Keepressoの使い方の他の記事

Macを決めた時間だけ起こしておく
タイマー付きのスリープ防止セッションを開始すれば、ダウンロードやレンダリングの間だけMacを起こしておき、その後は自動でスリープさせられます。
MacBookをふたを閉じたまま起こしておく
無料でオープンソースのアプリで、バッテリー駆動で、外部ディスプレイも電源ケーブルもなしに、ふたを閉じたときにMacBookがスリープしないようにしましょう。
スマートトリガーで、必要なときだけ起こしておく
アプリの実行中、通話中、電源接続中など、条件を設定してKeepressoがMacを起こしておくようにしましょう。不要なときはオンになりません。
自動化リースでAIエージェントにMacを起こし続けさせる
AIエージェントやスクリプトに、安全にMacを起こしておく手段を与えましょう。自動化リースは期限付きで自動的に失効し、MCPサーバーと付属のエージェントスキルがエージェントにプロトコル全体を教えます。

人間が主導・確認 · AI支援コンテンツ · AIツールは下書き、編集、保守、文法や分かりやすさの改善に使うことがあります。自動公開は行わず、すべての変更を人間のメンテナーが確認します。