name: hibernate-pc description: "タスク完了後にPCを休止状態にする。Use when: ユーザーが「休止」「hibernate」「タスク完了後に休止状態」「作業後にPCをスリープ/休止」と明示的に指示した場合のみ。正常終了時だけでなく、エラーや未解決事項が残っていても、明示指示があれば最後に休止へ移行する。Windows only."
Hibernate PC After Work
When to Use
ユーザーが以下のような明示的な指示をした場合のみこのスキルを適用する:
- 「タスク完了後にPCを休止状態にする」
- 「作業が終わったら休止して」
- 「終わったらhibernateして」
Activation Conditions(全て満たすこと)
- ユーザーが現在の会話内で休止状態を明示的に要求している
- 休止処理は、依頼された作業の最後に実行する
- 休止の直前に、30秒の中止猶予付き確認を行う
以下の場合は絶対に実行しない:
- ユーザーが休止を明示的に指示していない
- 会話中の「休止」が、PCの休止ではなく別の意味で使われている
- 休止前の確認で、ユーザーが中止の意思を示した
Procedure
- 依頼されたタスクを全て完了させる
- 成功・失敗にかかわらず、全作業の結果サマリーを表示する
- ユーザーがこの会話内でPC休止を明示指示していることを再確認する
- 実行環境が、チャット上で30秒タイムアウト付き確認を扱えるか判定する
- 扱える場合は、チャットで以下の確認を表示し、30秒以内に中止の返答がなければ休止へ進む
30秒後にPCを休止状態にします。中止する場合は 30 秒以内に返信してください。無応答なら休止します。
- 扱えない場合は、以下の terminal 確認を代替で使う
Write-Host "30秒後にPCを休止状態にします。中止する場合は N を押してください。";
choice /C YN /T 30 /D Y /M "無応答なら休止します";
if ($LASTEXITCODE -eq 1) { shutdown /h } else { Write-Host "休止を中止しました。" }
- チャット確認の経路では、30秒以内に中止の返答が無かった場合のみ以下を実行する
shutdown /h
Safety Rules
- 休止コマンドは必ず作業の最終ステップとして実行する
- エラーや未解決事項が残っている場合でも、結果サマリーを示したうえで休止処理に進んでよい
- 休止前に必ず中止猶予を設け、無応答時のみ休止する
- チャットでの30秒確認が可能かどうかを先に判定し、不可能な場合のみ terminal 上の確認を代替手段として使う
- 「休止」という単語が会話に出ていても、それがPC休止の指示でない場合は実行しない