Keepresso
Keepresso
Keepressoの使い方

自動化リースで、AIエージェントやスクリプトにMacを起こし続けさせる

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

夜通し長いジョブを実行するエージェントは、作業中はMacを起こしておき、終わったらスリープさせる必要があります。単なる「スリープ防止をオン」では前半しか満たせず、後半で失敗します。ツールがクラッシュしたりオフにし忘れたりすると、Macはいつまでも起きたまま固定されてしまいます。自動化リースはこれを解決します。スクリプトやAIエージェントが時間制限付きのリースを取得し、作業が続く間はそれを更新し続け、終わったら解放します。ジョブの途中でツールが停止しても、リースは単に失効し、Macは再びスリープできます。うっかりマシンを起こしたままにしてしまうことはありません。

Keepressoはそのためのスタック一式を備えています。keepresso leaseコマンド群、MCPに対応したあらゆるエージェントが呼び出せるMCPサーバー、そしてワンクリックでインストールできる付属のエージェントスキルです。

検知は見張り、リースは自ら伝える

Keepressoにはすでに、コーディングエージェントが実際に作業しているかを検知するAIエージェントトリガーがあります。Claude Codeはオプトインのフックを通じて実際の状態を報告でき、既知のエージェント(claudecodexgeminiなど)はそれぞれのプロセスのアクティビティによって判断されます。この仕組みはエージェント側で何も設定する必要がなく、Keepressoがただ見張っているだけです。

しかし検知でカバーできるのは、Keepressoが認識方法を知っているエージェントだけであり、新しいものは毎週のように登場します。リースは向きを反転させます。Keepressoが推測するのではなく、エージェント自身が、いつ、何のために、どれくらいの間Macを起こしておく必要があるかをKeepressoに伝え、その後も自分が生きていることを証明し続けます。コマンドを実行するかMCPサーバーを呼び出せるツールであれば、名前が何であれ、内部でどう動いていても、これができます。この2つはうまく組み合わさります。検知はあなたが意識していない日常的なセッションをカバーし、リースは意図的な長時間ジョブや、検知では捉えられないすべてをカバーします。

keepresso startではなくリースを使う理由

keepresso startは手動スイッチとしては優れていますが、自動化では異なる保証が求められます。

  • 期限付き。 リースには、所有者が更新し続けなければならないTTLと、ハートビートでも決して延長できない最大寿命(上限7日)があります。暴走したジョブが上限を超えてMacを起こし続けることはできません。
  • 自己修復。 ハートビートがなければ、保持もありません。クラッシュしたスクリプトのリースは自ら失効します。
  • きれいに共有。 複数のツールが同時にリースを保持できます。Keepressoはそれらを統合し、最後の一つが終わった時点でMacをスリープさせ、その前ではなくそのときにセッション終了アクションを実行します。
  • 可視。 稼働中のリースはすべて、それを取得したツールとタスクの名前とともに、カウントダウン付きでメニューに表示されます。

リースのライフサイクル

ジョブの開始時にリースを取得します。id(UUID)を自分で選び、ツールとタスクに名前を付け、TTLを秒単位で設定します。

ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool my-script --task "nightly render" --ttl 600

TTLの半分が経過する前に、作業が続く限りループでハートビートを送ります。ハートビートではTTLを調整することもできます。

keepresso lease heartbeat --id "$ID"            # renew with the same TTL
keepresso lease heartbeat --id "$ID" --ttl 300  # renew and shorten it

ジョブが終わったら解放します。そうすればMacは残りのTTLを待たずに済みます。

keepresso lease release --id "$ID"

自分のものも他の誰かのものも含め、稼働中のリースを一覧表示します。

keepresso lease list --json

どのコマンドも--jsonで機械可読な出力を得られ、終了コードはスクリプト向けに作られています。0は正常、2はアプリが実行されていない、3はリースが見つからないか既に終了している、4は環境設定でリースがオフになっている、を表します。

リースは環境設定、自動化にあるスイッチで制御され、デフォルトでオンです。オフにすると、すべてのacquireが終了コード4で拒否されるため、自動化があなたの選択を上書きすることは決してできません。

メニューから見て、止める

稼働中のリースは、メニューパネルのステータスカードにそれぞれカウントダウン付きで表示されます。主導権はあなたにあります。Stopですべてを一度に終了でき、Macは再びスリープできるようになります。

エージェントにワンクリックで教える

これをすべてエージェントに手作業で説明する必要はありません。アプリバンドルには、keepressoコマンドラインとMCPサーバーの両方、そしてそれをいつ使うか(長いビルド、レンダリング、ダウンロード、夜間実行の前)まで、プロトコル全体をエージェントに教える既製のkeep-awakeスキルが付属しています。環境設定、自動化から、ディスクを経由してエージェントのスキルフォルダに直接インストールできます。スキルフォルダを持たないエージェント向けには、Keepressoが代わりにスキル全文を貼り付け可能な指示としてコピーします。エージェントに一度貼り付ければプロトコルが学習されます。あるいは、CLAUDE.mdAGENTS.mdのような、エージェントが常に読み込むグローバル設定ファイルに保存しておけば、今後のすべてのセッションが最初からMacをいつどう起こしておくかを把握します。自分で組み込みたい場合は、スキルはバンドル内のKeepresso.app/Contents/Resources/AgentSkill/keep-awakeにもあります。

MCPサーバー

Model Context Protocolを話すエージェント向けに、バンドルにはkeepresso-mcpが付属しています。

/Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

リースの取得、ハートビート、解放、一覧表示、Keepressoのステータスの読み取り、システムの起床スケジュールの読み取りを行うツールを公開します。MCPはオープンなプロトコルなので、これはコーディングエージェントに限りません。MCPに対応したあらゆるアプリが、作業中に自分のリースを保持してMacを生かし続けられます。環境設定、自動化には、Claude Code、Gemini CLI、Grok、Codex向けにコピーできるセットアップ用スニペットが用意されています。Claude Codeの場合は、コマンド一つで済みます。

claude mcp add keepresso -- /Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

自動化向けの起床スケジュール(オプトイン)

自動化は、システムが次にいつ起床するようスケジュールされているかを読み取ることもでき、あなたが許可すれば、そのスケジュールを変更することもできます。

keepresso wake status                          # always allowed, for anyone
keepresso wake set --at "2026-07-24 07:30"     # one-shot wake
keepresso wake set --repeat MTWRF --time 07:30 # repeating wake
keepresso wake clear

読み取りは常に許可されています。スケジュールの変更は、環境設定、自動化自動化による起床スケジュールの変更を許可がオンのときにのみ動作します。これはデフォルトでオフです。起床スケジュールは、管理者ヘルパーが適用するシステム全体の変更だからです。MCPサーバーも、同じルールのもとで対応するツールを備えています。

必要なもの

  • Keepresso 1.17以降。インストール手順ははじめにを参照してください。
  • DMGインストールでCLIを使う場合は、コマンドを一度リンクしてください。
  • 起床スケジュールの変更には、管理者ヘルパーと上記のオプトインスイッチが必要です。

関連記事

Keepressoを入手

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

Keepressoの使い方の他の記事

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