Keepresso
Keepresso
Keepressoの使い方

keepresso CLIで、コマンドラインからMacをスリープさせない

更新 Jul 6, 2026 1 min

Keepressoには小さなコマンドラインツールが付属しており、メニューバーに手を伸ばさなくても、ターミナル、シェルスクリプト、Makefile、CIジョブから操作できます。コマンドはkeepressoで、2通りの使い方があります。メニューバーアプリに指示を送る方法と、標準のcaffeinateのようにそれ自体でMacを起こしておく方法です。

コマンドをインストールする

Homebrewでkeepressoをインストールした場合、keepressoコマンドはすでにPATHに入っているので、何もする必要はありません。

brew install --cask gyorgysh/keepresso/keepresso

DMGからアプリをインストールした場合は、このツールはアプリバンドルの中にあり、PATHはまだそれを認識していません。一度だけリンクしてください。

sudo ln -s /Applications/Keepresso.app/Contents/Helpers/keepresso /usr/local/bin/keepresso

正しく設定されているか確認します。

keepresso version

アプリを操作する

これらのコマンドはKeepressoアプリに送られ、まだ起動していなければ起動します。メニューのスクリプト版だと考えてください。

keepresso start                 # start an open-ended session
keepresso start --for 90        # start a 90 minute session
keepresso start --until 18:00   # run until a wall-clock time
keepresso stop                  # end the current session
keepresso toggle                # flip it on or off

これにより、長時間のジョブは開始時にMacを起こし、終了時にスリープさせることができます。

keepresso start
make release
keepresso stop

ステータスを確認する

keepresso statusは、セッションが実行中かどうかを教えてくれます。その終了コードはスクリプト内で分岐させるのに便利です。

  • 0 Macは起こされている
  • 1 起こされていない
  • 2 アプリが実行されていない
keepresso status && echo "awake" || echo "asleep"

機械可読な結果が欲しい場合は--jsonを付けてください。

keepresso status --json

同じセッション状態はファイルにもミラーリングされているので、メニューバーツールやステータスライン、ウィジェットが何も起動せずに読み取ることができます。

~/Library/Application Support/Keepresso/status.json

現在の状態とISO 8601形式のタイムスタンプが記録されています。

アプリなしのスタンドアロン保持

アプリをまったく関与させたくないこともあります。ただこのシェル一つがMacを起こしておいてくれればよく、caffeinateとまったく同じです。このモードではkeepressoプロセス自体がPower Assertionを保持し、終了した瞬間にMacは再びスリープできるようになります。

keepresso -i            # hold until you press Ctrl-C
keepresso -t 3600       # hold for a number of seconds
keepresso -w 5123       # hold until process 5123 exits
keepresso -d            # also keep the display awake (combine with the above)
keepresso -u            # declare user activity: wake the display now

最も便利なパターンは、コマンドやシェルの寿命に起きている状態を結びつけることです。

keepresso -w $$ &       # stay awake as long as this shell lives
ffmpeg -i in.mov out.mp4 && keepresso stop

これらの保持は本物のmacOS Power Assertionなので、pmset -g assertionsにも、Keepresso自身のアクティビティペインにも、Macを起こしている他のすべてのアプリと並んで表示されます。

関連記事

Keepressoを入手

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

Keepressoの使い方の他の記事

Macを決めた時間だけ起こしておく
タイマー付きのスリープ防止セッションを開始すれば、ダウンロードやレンダリングの間だけMacを起こしておき、その後は自動でスリープさせられます。
MacBookをふたを閉じたまま起こしておく
バッテリー駆動で、外部ディスプレイも電源ケーブルもなしに、ふたを閉じたときにMacBookがスリープしないようにしましょう。無料でオープンソースです。
スマートトリガーで、必要なときだけ起こしておく
アプリの実行中、通話中、電源接続中など、条件を設定してKeepressoがMacを起こしておくようにしましょう。不要なときはオンになりません。
Macを起こしたまま、画面はオフにする
ダウンロードやビルドの間Macを動かし続けながら、ディスプレイはスリープさせて電力を節約し、画面を保護しましょう。