Claude Code Desktopで定期タスクを設定する方法|毎日自動で動かす手順と、動かないときの確認点

時計と、予定が並んだ3つのカードを描いたイラスト
設定ガイド

Claude Code Desktopで定期タスクを設定する方法|毎日自動で動かす手順と、動かないときの確認点

Claude Code Desktopの定期タスク(Scheduled tasks)を使うと、決めた時間にClaudeが新しいセッションを自動で始めてくれます。毎朝のコードレビューや依存関係の確認などを任せられます。この記事では、作り方、スケジュールの種類、PCがスリープしたときの挙動、止まったときの確認点を、公式ドキュメントに沿って整理します。

定期タスクとは:ローカルとクラウドの違い

公式ドキュメントでは、DesktopアプリのScheduled tasksページに、ローカルのタスクとクラウドのタスク(以前の名前はRoutines)が並んで表示されると説明されています。

クラウドDesktop(ローカル)/loop
動く場所クラウド自分のPC自分のPC
PCの電源が必要不要必要必要
セッションを開いておく必要不要不要必要
手元のファイルを使う使えない(新しくクローン)使える使える
最短の間隔1時間フォームでは1時間、Claudeに頼むと1分1分

手元のファイルやツールを使いたいならDesktop、PCを切っていても動かしたいならクラウドが向いています。この記事はDesktop(ローカル)のタスクを扱います。クラウドの詳しい設定は公式のScheduled tasksのページを見てください。

必要な環境

ローカルの定期タスクには、Claude Desktop 1.1.5368以降が必要です。アプリのバージョンによって、画面の名前が「Scheduled」ではなく「Routines」になっていることがあります。その場合は、公式の案内どおり読み替えてください。

定期タスクの作り方(手順)

公式ドキュメントの手順は次のとおりです。画面は版によって少し違うので、見えている項目に合わせて進めてください。

  1. Scheduledページを開く:DesktopのCodeタブで、サイドバーのScheduled(またはMoreメニュー内)をクリックします。
  2. New taskをクリック:Create with ClaudeとSet up manuallyが出たら、Set up manuallyを選びます。
  3. 名前を付ける:入力した名前は小文字のケバブケースに変換され、タスクのフォルダ名になります。ほかのタスクと重複しない名前にします。
  4. 指示を書く:実行のたびにClaudeが何をするかを書きます。
  5. Only on this computerをオン:Advanced settingsのGeneralタブにあります。オンにすると、自分のPCのローカルフォルダで動きます。
  6. Local folderを選ぶ:選ばないとCreateが押せません。
  7. スケジュールを選ぶ:Triggerのカードでプリセットを選びます。
  8. 権限モードとモデルを選ぶ:指示ボックスのツールバーから選びます。変えなければ、Claude Codeの設定と既定のモデルが使われます。
  9. Createをクリック:フォルダを信頼していなければ、ここで確認が出ます。

画面を操作しなくても、どのセッションでも「毎朝9時にコードレビューを実行する定期タスクを作って」のように頼めば、定期タスクが作られます。「明日の15時にデプロイの確認を促して」のような頼み方では、1回だけ動いて自動で無効になるタスクになります。

Createが押せないとき

「Only on this computer」のスイッチが選べない場合は、リポジトリやGitHubイベント、APIのトリガーが設定されていないか見てください。これらを設定するとクラウドのタスクになり、ローカル用のスイッチは使えなくなります。Createが押せないときは、ボタンにカーソルを合わせると足りない項目が表示されます。

スケジュールの選択肢:Hourly・Daily・Weekdays・Weekly・Custom

選択肢動くタイミング
Hourly1時間ごと
Daily毎日、選んだ時刻
WeekdaysDailyと同じで、土日を除く
Weekly曜日と時刻を選ぶ
Manual予定なし。Run nowを押したときだけ
Customcron式で指定(ローカル時間で評価)

Custom(cron式)の書き方には注意点があります。公式ドキュメントによると、曜日や月は名前ではなく数字で書き、日曜は7ではなく0です。たとえば毎朝9時なら次のとおりです。

0 9 * * *

1時間より短い間隔の式は、フォームでは受け付けられません。また、「ManualとCustom」は、タスクを作った後のEditフォームから選べます。

1時間より短い間隔にしたいときは、Claudeに「テストを30分ごとに実行して」と頼む方法があります。公式ドキュメントでは、Claudeに頼む場合は1時間の制限を受けないと説明されています。

PCがスリープしたらどうなるか:実行のずれと取りこぼし

ローカルのタスクは、Desktopアプリが起動していて、PCが起きている間だけ動きます。ここを知らないと「朝になっても動いていない」ことになります。

  • Desktopは、アプリが開いている間、1分ごとに予定を確認する
  • 予定の時刻から数分の遅れが入る(同じタスクでは毎回同じ長さ)
  • PCがスリープしていた時刻の実行はスキップされる
  • アイドル時のスリープを防ぐには、Settings > Desktop appまたはSettings > This computer > SystemのKeep computer awakeをオンにする
  • ノートPCのフタを閉じると、この設定でもスリープする

取りこぼした分は1回だけ実行される

アプリの起動時やPCの復帰時に、Desktopは過去7日間の取りこぼしを調べます。あれば、最も新しい取りこぼしについて1回だけ追いかけて実行し、それより古い分は捨てます。6日間スリープしていた毎日のタスクも、復帰時に1回だけ動きます。

そのため、9時のタスクが夜の23時に動くことがあります。時刻が大事なら、指示の中に条件を入れておきます。公式ドキュメントは次のような例を挙げています。

今日のコミットだけをレビューする。17時を過ぎていたらレビューはせず、取りこぼした内容の要約だけを出す。

スリープ対策を詳しく知りたい場合は、MacBookを閉じたまま動かし続ける設定ガイドも参考になります。

権限で止まらないようにする

タスクごとに権限モードを持ちます。~/.claude/settings.jsonの許可ルールも、定期タスクのセッションに適用されます。

Manualモードのタスクが、許可のないツールを使おうとすると、承認されるまで実行が止まります。夜間に動くタスクだと、朝まで止まったままになりかねません。公式ドキュメントが勧める予防策は次のとおりです。

  1. 作成したらすぐにRun nowを押す
  2. 権限の確認が出たら、そのたびに「always allow」を選ぶ
  3. 以降の実行では、同じツールが自動で承認される

承認済みの内容は、タスクの詳細ページのAlways allowedパネルで確認・取り消しができます。なお、MCPツールのうちrequiresUserInteractionが付いたものは、毎回確認が出て「always allow」を選べないため、それを呼ぶタスクは毎回止まります。

作成後の管理と、設定ファイルの場所

サイドバーのScheduledからタスクを開くと、詳細ページで次の操作ができます。

操作内容
Run now予定を待たずに今すぐ実行
StatusActiveとPausedの切り替え(削除せず一時停止)
Edit指示・スケジュール・フォルダなどの変更
History過去の実行(スキップも含む)。スキップの項目にカーソルを合わせると理由が出る
Deleteタスクの削除(実行したセッションはアーカイブされる)

スキップの理由には、PCがスリープしていた、前回の実行がまだ終わっていなかった、ほかのタスクが実行中だった、などがあります。動かなかった日は、まずHistoryを見てください。

指示の中身は、~/.claude/scheduled-tasks/<タスク名>/SKILL.mdに保存されます。frontmatterにnameとdescription、本文が指示です。編集すると次の実行から反映されます。ただし、スケジュール・フォルダ・モデル・有効かどうかは、このファイルではなくEditフォームか、Claudeへの依頼で変えます。削除してもこのフォルダは残るので、消したいときは自分で削除します。

ファイルを同じ状態から動かしたくない場合は、EditフォームでWorktreeを選ぶと、実行ごとに独立したGitワークツリーで動きます(フォルダがGitリポジトリのときだけ選べます)。何も選ばないと、コミットしていない変更も含めた、そのときの作業フォルダの状態で動きます。

よくある質問(FAQ)

Q. PCの電源を切っていても動かせますか?

ローカルのタスクは動きません。PCが起きていてDesktopアプリが開いている必要があります。電源を切っていても動かしたいなら、クラウドのタスクを使います。

Q. 動いた結果はどこで見られますか?

タスクの詳細ページのHistoryで、見たい実行の行をクリックすると、その実行のセッションが開きます。Claudeが何をしたか、変更の内容、権限の確認への応答ができます。

Q. 1回だけ実行するタスクは作れますか?

作れます。セッションで日時を指定して頼むと、1回実行して自動で無効になるタスクになります。

Q. 実行が遅れるのはなぜですか?

APIの混雑を避けるため、予定の時刻から数分の遅れが入ります。PCがスリープしていた場合は、復帰後に取りこぼし分が1回実行されます。

まとめ

  • Desktopの定期タスクは、CodeタブのScheduledから作る。手元のファイルを使いたいときはローカル、PCを切って動かしたいときはクラウド
  • ローカルのタスクは、アプリが開いていてPCが起きている間だけ動く。スリープ中の実行はスキップされ、復帰時に最新の1回だけ追いかける
  • 権限で止まらないよう、作成後にRun nowで試して「always allow」を選んでおく
  • 動かなかった日は、詳細ページのHistoryでスキップの理由を見る

まずは「毎朝の確認」のような軽い作業を1つ作り、Run nowで動きを確かめるところから始めてみてください。

タイトルとURLをコピーしました