mcpField
A
anti-sleep

anti-sleep

github.com/davidondrej生産性4.2k224 回インストール今日更新
リポジトリ

anti-sleep について

anti-sleepは、付属のランチャーとmacOS標準ツールで、時間指定のスリープ抑止を管理するスキルです。1回限りのLaunchAgentセッションを確認、開始、検証、停止する手順を案内します。

主な機能

  1. 01時間指定のスリープ抑止セッション
  2. 02ディスプレイとアイドルスリープのフラグ設定
  3. 03状態確認・開始・検証・停止コマンド
  4. 04PID指定のセッション対応
  5. 05LaunchAgentの追跡と代替手段の案内

活用シーン

  1. 01時間の決まったタスク中にMacを起動状態に保つ
  2. 02画面の減光を許可しつつシステムのアイドルスリープを防止
  3. 03作業中にディスプレイを点灯状態に維持
  4. 04スリープ抑止セッションの稼働確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/davidondrej/skills --skill anti-sleep

インストール後、Claude Code で/anti-sleepを入力して読み込まれたか確認します。

同梱ファイルagents/openai.yamlscripts/anti-sleep.sh

詳細

アンチスリープ(macOS の caffeinate)

このスキルディレクトリに含まれるランチャーを使用してください。macOS 標準搭載のツールのみを使って、1 回限りのユーザー LaunchAgent を作成します。

必須のワークフロー

caffeinate を、生の &、nohup、disown、または launchctl submit を使って起動してはいけません。一時的な実行シェルは子孫プロセスを終了させることがあり、launchctl submit は時間制限付きのジョブを再起動することがあります。

SKILL.md を基準に scripts/anti-sleep.sh の場所を解決してください。ユーザーの現在のディレクトリを前提にしてはいけません。次を実行します。

  1. 現在の状態を確認します。
scripts/anti-sleep.sh status
  1. status がアクティブなセッションを報告し、ユーザーが新しい時間を指定している場合は、古いセッションを自動的に停止します。確認を求めてはいけません。
scripts/anti-sleep.sh stop
  1. 指定された時間で新しいタイマーを開始します。
scripts/anti-sleep.sh start 10800    # 3 hours

特定のプロセスに対しては、start-pid を使用してください。別のセッションがアクティブな場合は、同じ自動置換ルールを適用します。

scripts/anti-sleep.sh start-pid <PID>
  1. 開始コマンドの戻り後、別のツール/シェル呼び出しで確認します。
scripts/anti-sleep.sh verify

確認結果が STATUS=running かつ ASSERTIONS=active の場合にのみ、成功を報告してください。PID、フラグ、実際の有効期限を伝えてください。確認に失敗した場合は stop を実行し、Mac が保護されていると主張してはいけません。

アサーションフラグ

デフォルトは -d -i です。ディスプレイを点灯したままにし、システムのアイドルスリープを防止します。必要に応じて、時間または PID の後に明示的なフラグを渡してください。

フラグ効果
-iシステムのアイドルスリープを防止します。ディスプレイは暗くなる場合があります
-dディスプレイのスリープを防止します
-d -i -sAC 電源接続時にシステムのスリープも防止します

いずれのフラグも、蓋を閉じたときのスリープは防止しません。蓋を閉じた状態でもエージェントの実行を継続する必要がある場合は、ノートパソコンを閉じた状態で Claude Code の実行を継続するを参照してください。

例:

scripts/anti-sleep.sh start 10800 -i

状態の確認と停止

scripts/anti-sleep.sh status
scripts/anti-sleep.sh stop

このランチャーは、正確な LaunchAgent ラベル、PID、開始時刻、有効期限を ~/Library/Caches に記録します。広範囲に一致する pkill は使用しません。

フォールバック

launchctl bootstrap が失敗した場合は、表示された状態で維持されるターミナルまたは cmux ペインを使用してください。cmux を操作する前に、cmux スキルを読んでください。維持される表示環境がない場合は、信頼できないバックグラウンドジョブを開始せず、ユーザーにその旨を伝えてください。

caffeinate ではキーボードのバックライトを点灯したままにできません。この設定は手動で行います。システム設定 → キーボード → 「操作がないときにキーボードのバックライトをオフにする」→ しない。

コメント