TarifsDocumentation
Commencer
Automatisations

Du travail qui démarre sans que personne ne le demande.

Un déclencheur démarre une session sans présence humaine. Une planification cron la lance à l’heure prévue ; un webhook signé la lance lors d’un événement. Dans les deux cas, l’agent obtient son propre ordinateur cloud, sa propre branche et la même validation au retour.

Démarrer une sessionLire la documentation
maintenant
daily-digest
invoice-sweep
oncall-handoff
prochaine exécution
invoice-sweepEurope/Berlin

Le 1er du mois à 06:30

0 30 6 1 * *

X-Kortix-Signature: sha256=<hmac>
Deux types

Deux types. Il n’y en a pas de troisième.

Un déclencheur est une horloge ou une signature. Tout le reste — l’agent sous lequel il s’exécute, son contenu et la session dans laquelle il arrive — relève de la même configuration dans les deux cas.

cron

Il se déclenche à l’heure prévue

Une expression cron à 6 champs — seconde, minute, heure, jour, mois, jour de la semaine — dans n’importe quel fuseau IANA. Ou un horodatage run_at unique, pour un événement ponctuel qui reste ensuite silencieux.

webhook

Il se déclenche lors d’un événement

Un service externe envoie une requête POST à l’URL du déclencheur. Kortix vérifie la signature, transforme la charge utile en prompt et démarre la session. Une charge utile qui échoue à votre filtre est acceptée puis ignorée.

  • Les deux types indiquent l’agent sous lequel ils s’exécutent et héritent de son accès refusé par défaut.
  • Les deux contiennent un modèle de prompt qui devient le premier message de la session.
  • Les deux sont des entrées de kortix.yaml : ils possèdent donc tous deux un historique et un auteur.
L’interface cron

Une planification lisible en une seule colonne.

Chaque déclencheur d’un projet tient sur une ligne : son nom, son heure de déclenchement, son fuseau horaire, l’agent utilisé et la session concernée. Rien n’est masqué dans un état interne auquel il faudrait accéder par un clic.

TriggerCronTimezoneAgentSession
daily-digest0 0 9 * * 1-5Jours ouvrés à 09:00America/Los_Angeleskortixfresh
invoice-sweep0 30 6 1 * *Le 1er du mois à 06:30Europe/Berlinfinanceréutiliser
oncall-handoff0 0 17 * * 5Les vendredis à 17:00UTCsupportfresh
roadmap-review0 0 8 * * 1Les lundis à 08:00America/New_Yorkplannerépinglé
Les fuseaux horaires sont réels
Un déclencheur enregistre un nom de fuseau horaire IANA, et non un décalage, avec UTC par défaut. Définissez America/Los_Angeles : l’heure reste à 09:00 locale lors du passage à l’heure d’été. Une abréviation comme PST est rejetée plutôt que devinée.
Vous n’avez pas besoin d’écrire du cron
L’écran Schedules est un sélecteur : toutes les quelques minutes, les jours ouvrés, chaque mois ou une seule fois au moment de votre choix. Le cron brut est la solution de secours, pas un prérequis.
Un seul interrupteur met tout en pause
Une pause au niveau du projet arrête tous les déclencheurs d’un coup, en plus du propre indicateur d’activation de chacun. Utilisez-la lorsque le même dépôt s’exécute sur deux plans de contrôle, afin que rien ne soit déclenché deux fois.
Une rafale est mise en file, pas abandonnée
Par défaut, un projet exécute simultanément 3 sessions déclenchées en cours de provisionnement. Un déclenchement au-delà de cette limite est mis en file et s’exécute lorsqu’un emplacement se libère, plutôt que d’échouer.
Déclaré dans le dépôt

Une automatisation est un fichier, pas un réglage de tableau de bord.

Les déclencheurs résident dans kortix.yaml, à côté de vos agents et de vos images sandbox. Chacun indique son agent, sa planification ou son secret, ainsi que le modèle de prompt qui devient le premier message de la session.

kortix.yaml
# fires on the clocktriggers:  - slug: daily-digest    type: cron    agent: kortix    cron: "0 0 9 * * 1-5"    timezone: America/Los_Angeles    session_mode: fresh    prompt: |      Summarize yesterday’s commits.      Open a change request against main. # fires on an event  - slug: new-lead    type: webhook    agent: sales    secret_env: WEBHOOK_SECRET    prompt: >-      A new lead arrived: {{ body.name }}      ({{ body.email }}). Add it to the CRM.
déclencheurs kortix
# add it, ship it, and the schedule is live$ kortix triggers add daily-digest --type cron \    --cron "0 0 9 * * 1-5" \    --timezone America/Los_Angeles \    --prompt "Summarize yesterday. Open a CR."$ kortix ship→ kortix.yaml pushed. daily-digest is scheduled. # see every trigger and when it last fired$ kortix triggers ls # do not wait for 09:00 to find out$ kortix triggers fire daily-digest→ session started

Le prompt est un modèle

Un prompt évalue {{ token.dotted.path }} par rapport à la charge utile qui l’a déclenché. Un webhook fournit {{ body.* }} et les en-têtes de la requête ; un déclenchement cron fournit {{ cron.schedule }}, {{ cron.timezone }} et {{ cron.scheduled_for }}. Une valeur absente produit du vide — aucune erreur ni accolade résiduelle dans le message lu par votre agent.

Webhooks

Signé, sinon il ne se déclenche pas.

Chaque déclencheur webhook indique un secret de projet qui le signe. Un déclencheur sans secret est rejeté lors de la validation : il n’existe aucun webhook non authentifié que vous pourriez oublier de sécuriser plus tard.

POST /v1/webhooks/projects/{projectId}/{slug}

X-Kortix-Signature: sha256=<hmac>

HMAC-SHA256 calculé sur le corps brut de la requête et comparé en temps constant. L’en-tête X-Hub-Signature-256 compatible avec GitHub fonctionne également : un webhook de dépôt ne nécessite donc aucun adaptateur.

202
Signature valide. La session a été lancée, mise en file d’attente derrière la limite de concurrence ou dédupliquée avec une livraison déjà vue par Kortix.
200
Valide, mais ignoré volontairement — le projet est en pause ou la charge utile ne correspondait pas au filtre du déclencheur.
401
Signature et token tous deux absents ou incorrects. Rien ne s’exécute.
404
Aucun déclencheur de ce type, ou il est désactivé, ou ce n’est pas un déclencheur webhook.
409
Le secret nommé par secret_env n’a aucune valeur définie. L’exécution échoue explicitement plutôt que de se lancer sans protection.

Un filtre est un chemin pointé comparé à la même charge utile que celle visible par le prompt. Il sert à interrompre les boucles : une source qui signale les deux côtés d’une conversation lancerait sinon l’agent sur sa propre réponse.

Stratégie de session

Détermine la session dans laquelle un déclenchement s’exécute.

Par défaut, chaque déclenchement repart de zéro. Quand le travail se poursuit dans un fil existant plutôt que dans une nouvelle tâche, un déclencheur peut relancer une session qu’il possède déjà. Kortix essaie les modes dans l’ordre et passe au suivant en cas d’échec, afin qu’un déclenchement ne disparaisse jamais simplement.

  1. 01

    épinglé

    Relancer une session précise, désignée par son id. Si cette session a disparu ou a échoué, passer au mode suivant.

  2. 02

    par clé

    Générer une clé à partir de la charge utile, puis relancer la session saine la plus récente portant exactement cette clé. Un client, un fil. Le système ne bascule jamais vers la session d’une autre clé.

  3. 03

    réutiliser

    Relancer la session saine la plus récente créée par ce déclencheur. Un déclencheur épinglé revient ici avant d’aller plus loin.

  4. 04

    fresh

    Créer une nouvelle branche et démarrer un nouvel ordinateur cloud. C’est le comportement par défaut et le dernier recours pour tous les autres modes.

Une session déclenchée est visible par tout le projet, et non uniquement par la personne qui a configuré le déclencheur. Elle s’arrête après 5 minutes d’inactivité : une automatisation lancée à 3 h du matin ne facturera donc pas une machine jusqu’au matin.

Pendant la nuit

Elle se déclenche à 3 h du matin. Une personne décide toujours.

Une automatisation n’obtient aucun privilège qu’une personne n’aurait pas. Même isolation, même portée limitée, même unique voie de retour vers main.

Elle s’exécute comme un agent
Un déclencheur désigne un agent et hérite exactement de ses autorisations — connecteurs, secrets et compétences listés pour son bloc dans kortix.yaml, et rien d’autre. Un agent sans autorisation n’a aucun accès.
Elle possède son propre ordinateur
Chaque nouveau déclenchement démarre sa propre machine isolée sur sa propre branche, comme une session lancée manuellement. Rien de ce qu’il installe ou endommage ne touche une autre session.
Rien ne se fusionne tout seul
Le travail n’atteint main que par une demande de modification examinée et approuvée par une personne. Vous lisez le diff autour d’un café. La machine n’a jamais le dernier mot.
L’automatisation elle-même a un historique
Un déclencheur est un bloc YAML dans le dépôt. Qui a ajouté la tâche de 3 h, quand et ce qu’on lui a demandé sont consignés — comme toute autre modification.

Faites fonctionner toute votre entreprise depuis un dépôt qui vous appartient.

Commencez par une tâche et développez à partir de là.

Commencer

Produit

  • Ordinateur de l’agent
  • L’entreprise sous forme de code
  • Connecteurs
  • Automatisations
  • Canaux
  • Agents et compétences
  • Sécurité
  • Auto-hébergé
  • Enterprise
  • Tarifs
  • Télécharger

Solutions

  • Ventes
  • Marketing
  • Ingénierie
  • Produit
  • Finance
  • Personnes
  • IT
  • Data Science

Développeurs

  • Documentation
  • AI Operating System
  • CLI
  • SDK
  • Démarrage rapide
  • Pour les développeurs
  • Marketplace
  • GitHub

Entreprise

  • À propos
  • Carrières
  • Blog
  • Journal des modifications
  • Cas d’usage
  • Marque

Connecter

  • X
  • LinkedIn
  • Discord
  • Statut
  • Assistance
  • Conditions
  • Confidentialité
©2026 Kortix