# Implémentation des tâches planifiées

![Last Updated](https://img.shields.io/badge/Last_Updated-Mar_10%2C_2026-white?style=flat&labelColor=555)

<table width="100%">
<tr>
<td><a href="../">← Retour à Claude Code Best Practice</a></td>
<td align="right"><img src="../../!/claude-jumping.svg" alt="Claude" width="60" /></td>
</tr>
</table>

---

<a href="#démo-loop"><img src="../../!/tags/implemented-hd.svg" alt="Implemented"></a>

Le skill `/loop` sert à planifier des tâches récurrentes sur un intervalle cron. Ci-dessous une démo de `/loop 1m "tell current time"` — une simple tâche récurrente qui se déclenche chaque minute.

---

## Démo Loop

### 1. Planifier la tâche

<p align="center">
  <img src="../../implementation/assets/impl-loop-1.png" alt="/loop 1m tell current time — planification et configuration cron" width="100%">
</p>

`/loop 1m "tell current time"` parse l'intervalle (`1m` → toutes les 1 minute), crée un job cron et confirme la planification. Notes clés :

- La granularité minimale de cron est **1 minute** — `1m` correspond à `*/1 * * * *`
- Les tâches récurrentes **expirent automatiquement après 3 jours**
- Les jobs ont une **portée de session** — ils vivent uniquement en mémoire et s'arrêtent quand Claude quitte
- Annule à tout moment avec `cron cancel <job-id>`

---

### 2. Loop en action

<p align="center">
  <img src="../../implementation/assets/impl-loop-2.png" alt="Tâche récurrente se déclenchant chaque minute" width="100%">
</p>

La tâche se déclenche chaque minute, exécute `date` et rapporte l'heure actuelle. Chaque itération déclenche les hooks asynchrones **UserPromptSubmit** et **Stop** — le même système de hooks utilisé tout au long de ce repo pour les notifications sonores.

---

## ![How to Use](../../!/tags/how-to-use.svg)

```bash
$ claude
> /loop 1m "tell current time"
> /loop 5m /simplify
> /loop 10m "check deploy status"
```

---

## ![How to Implement](../../!/tags/how-to-implement.svg)

`/loop` est un skill intégré de Claude Code — aucune configuration requise. Il utilise les outils cron (`CronCreate`, `CronList`, `CronDelete`) sous le capot pour gérer les planifications récurrentes.
