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」になっていることがあります。その場合は、公式の案内どおり読み替えてください。
定期タスクの作り方(手順)
公式ドキュメントの手順は次のとおりです。画面は版によって少し違うので、見えている項目に合わせて進めてください。
- Scheduledページを開く:DesktopのCodeタブで、サイドバーのScheduled(またはMoreメニュー内)をクリックします。
- New taskをクリック:Create with ClaudeとSet up manuallyが出たら、Set up manuallyを選びます。
- 名前を付ける:入力した名前は小文字のケバブケースに変換され、タスクのフォルダ名になります。ほかのタスクと重複しない名前にします。
- 指示を書く:実行のたびにClaudeが何をするかを書きます。
- Only on this computerをオン:Advanced settingsのGeneralタブにあります。オンにすると、自分のPCのローカルフォルダで動きます。
- Local folderを選ぶ:選ばないとCreateが押せません。
- スケジュールを選ぶ:Triggerのカードでプリセットを選びます。
- 権限モードとモデルを選ぶ:指示ボックスのツールバーから選びます。変えなければ、Claude Codeの設定と既定のモデルが使われます。
- Createをクリック:フォルダを信頼していなければ、ここで確認が出ます。
画面を操作しなくても、どのセッションでも「毎朝9時にコードレビューを実行する定期タスクを作って」のように頼めば、定期タスクが作られます。「明日の15時にデプロイの確認を促して」のような頼み方では、1回だけ動いて自動で無効になるタスクになります。
Createが押せないとき
「Only on this computer」のスイッチが選べない場合は、リポジトリやGitHubイベント、APIのトリガーが設定されていないか見てください。これらを設定するとクラウドのタスクになり、ローカル用のスイッチは使えなくなります。Createが押せないときは、ボタンにカーソルを合わせると足りない項目が表示されます。
スケジュールの選択肢:Hourly・Daily・Weekdays・Weekly・Custom
| 選択肢 | 動くタイミング |
|---|---|
| Hourly | 1時間ごと |
| Daily | 毎日、選んだ時刻 |
| Weekdays | Dailyと同じで、土日を除く |
| Weekly | 曜日と時刻を選ぶ |
| Manual | 予定なし。Run nowを押したときだけ |
| Custom | cron式で指定(ローカル時間で評価) |
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モードのタスクが、許可のないツールを使おうとすると、承認されるまで実行が止まります。夜間に動くタスクだと、朝まで止まったままになりかねません。公式ドキュメントが勧める予防策は次のとおりです。
- 作成したらすぐにRun nowを押す
- 権限の確認が出たら、そのたびに「always allow」を選ぶ
- 以降の実行では、同じツールが自動で承認される
承認済みの内容は、タスクの詳細ページのAlways allowedパネルで確認・取り消しができます。なお、MCPツールのうちrequiresUserInteractionが付いたものは、毎回確認が出て「always allow」を選べないため、それを呼ぶタスクは毎回止まります。
作成後の管理と、設定ファイルの場所
サイドバーのScheduledからタスクを開くと、詳細ページで次の操作ができます。
| 操作 | 内容 |
|---|---|
| Run now | 予定を待たずに今すぐ実行 |
| Status | Activeと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で動きを確かめるところから始めてみてください。

