Tâches Planifiées
Créez des tâches récurrentes ou ponctuelles avec du langage naturel ou des expressions cron. L'agent exécute le prompt de la tâche selon le planning.
Nom de l'Outil
scheduler
Actions
| Action | Paramètres Requis | Description |
|---|---|---|
create | name, schedule, prompt | Créer une nouvelle tâche planifiée |
list | — | Lister toutes les tâches avec statut et prochaine exécution |
delete | id | Supprimer une tâche par UUID |
pause | id | Mettre en pause une tâche (arrête le déclenchement) |
resume | id | Reprendre une tâche en pause (recalcule la prochaine exécution) |
Paramètres de Création
| Key | Type | Default | Description |
|---|---|---|---|
name | string | — | Libellé lisible de la tâche |
schedule | string | — | Langage naturel ou expression cron à 5 champs |
prompt | string | — | Ce que l'agent doit faire lorsque la tâche se déclenche |
oneshot | bool | false | Se déclenche une fois puis suppression automatique |
trusted | bool | false | Exécuter avec autonomie complète (pas d'approbation terminal nécessaire) |
Plannings en Langage Naturel
Le planificateur analyse les modèles courants en expressions cron :
| Entrée | Cron | Description |
|---|---|---|
hourly | 0 * * * * | Toutes les heures à :00 |
daily | 0 0 * * * | Tous les jours à minuit |
weekly | 0 0 * * 0 | Tous les dimanches à minuit |
monthly | 0 0 1 * * | Le premier du mois |
every 5m | */5 * * * * | Toutes les 5 minutes |
every 2h | 0 */2 * * * | Toutes les 2 heures |
daily at 9am | 0 9 * * * | Tous les jours à 9h00 |
daily at 14:30 | 30 14 * * * | Tous les jours à 14h30 |
weekdays at 8:30 | 30 8 * * 1-5 | Lun-Ven à 8h30 |
weekends at 10am | 0 10 * * 0,6 | Sam-Dim à 10h00 |
in 2h | (absolu calculé) | Ponctuel, se déclenche une fois dans 2 heures |
in 30m | (absolu calculé) | Ponctuel, se déclenche une fois dans 30 minutes |
Les expressions cron standard à 5 champs sont également acceptées directement (par ex., 0 9 * * 1-5).
Configuration
[scheduler]
enabled = true
tick_interval_secs = 30
[[scheduler.tasks]]
name = "Morning check-in"
schedule = "weekdays at 9am"
prompt = "Check system health and report any issues"
trusted = true
[[scheduler.tasks]]
name = "Backup reminder"
schedule = "weekly"
prompt = "Remind me to run backups"Stockage des Tâches
Les tâches sont persistées dans SQLite (table scheduled_tasks). Les tâches définies dans la configuration sont synchronisées au démarrage — les tâches supprimées sont nettoyées automatiquement. Les tâches créées via l'outil persistent indéfiniment.
Tâches Manquées
Au démarrage, le planificateur vérifie les tâches qui auraient dû se déclencher pendant que le daemon était arrêté. Les tâches manquées sont déclenchées immédiatement lors de la récupération.