Lesson 09 · 11 dk okuma

Scheduled tasks — /loop, /schedule ve routines

Tekrarlayan işleri bir cron'a bağla. Local /loop, remote /schedule, ve self-paced döngüler.

Öğreneceklerin

  • /loop ile lokal tekrarlayan işleri kur
  • /schedule ile remote routine'leri yönet
  • Dynamic mode (interval'siz) ile model'in kendi kendine tetiklenmesi

Bazı işler bir kerelik değil — “her 15 dakikada PR’ları kontrol et”, “her gün 09:00’da deploy raporu üret”, “build bitince haber ver”. Üç katman:

  1. /loop — local Claude Code’un kendi kendini tetiklemesi
  2. /schedule — remote agent (cron tabanlı)
  3. Routines — dış sistemden tetiklenen tekrarlayan akışlar

/loop — local recurrent

/loop 5m /babysit-prs
/loop 30m "kontrolleri çalıştır"

İnterval-tabanlı: belirtilen sürede bir prompt yeniden tetiklenir. Mevcut session’da çalışır.

İnterval’siz dynamic mode:

/loop /research-task

Süre belirtmeyince model ScheduleWakeup ile kendi kendine uyanma zamanını seçer. Cache window’u (5 dk) içinde kalmaya çalışır.

Tipik kullanım:

  • Build/deploy progress polling (60-270s aralığı, cache sıcak)
  • Idle wake-up (1200-1800s, idle tick için)

/schedule — remote routines

/schedule cloud’da çalışan, cron-trigger’lı agent’lar yaratır:

/schedule create "her gün 09:00 PR özeti" "/babysit-prs daily"
/schedule list
/schedule run <id>          # bir kerelik manuel
/schedule delete <id>

Local Claude Code kapalı olsa bile çalışır. Headless şekilde Anthropic backend’inde execute olur.

Routines tipik kullanım:

  • Daily standup raporu
  • Saatlik status check
  • “Pazartesi sabah trending repo’ları taramaya başla”

Bir kerelik scheduled run

/schedule once "yarın 15:00" "/check deploy"

Cron sözdizimi yerine doğal dilde tarih çözümler. Tek seferlik run istediğin zaman daha pratik.

Karar matrisi

DurumYöntem
5 dk’da bir build kontrolü/loop 5m
Build bitene kadar self-paced/loop dynamic mode
Sabah 9 daily summary/schedule cron
Yarın 15:00 hatırlatma/schedule once
Webhook gelince trigger/schedule + RemoteTrigger
Interactive yanıt gerek/loop (local context’te)

Cache disiplini

/loop interval’i seçerken Anthropic prompt cache’in 5 dakikalık TTL’si önemli:

  • <5 dk (60-270s): cache sıcak, hızlı + ucuz
  • 5 dk - 1 saat: cache miss bedeli vardır; sık istemiyorsan kabul edilebilir
  • 300s’den kaçın — worst case (cache miss + sık tetik)
  • Idle tick için 20-30 dk default makul

Proje örneği — bu repo

claudenews’te .github/workflows/sync-and-deploy.yml cron + push tabanlı çalışıyor. Aynı mantığı routine’le yapsak:

/schedule create "günlük upstream sync" "node scripts/sync.ts && pnpm build"

GitHub Actions’tan farkı: routine Claude’a “akıl yürütme + sentez” katmanı ekler — sadece komut çalıştırmaz, sonucu yorumlar/sentezler.

ScheduleWakeup — programatik

/loop dynamic mode altta ScheduleWakeup tool’unu kullanır:

ScheduleWakeup({
  delaySeconds: 270,
  prompt: "<<autonomous-loop-dynamic>>",
  reason: "build status check"
})

Custom skill’lerde de çağrılabilir.

Sıradaki

Cross-model workflow — Claude ve Codex’i karşılıklı kullanmak.