7.2 KiB
title: AutoKitteh created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, development, automation, workflows, serverless, durable, integration, python] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Development, https://github.com/autokitteh/autokitteh]
💻 AutoKitteh
La plateforme d'automatisation durable (durable workflows) : créez des workflows long-running, tolérants aux pannes, et connectez 50+ services SaaS — l'alternative sérieuse à Zapier, n8n et Temporal pour les automatisations fiables.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | autokitteh.com |
| GitHub | autokitteh/autokitteh |
| License | Apache-2.0 |
| Langage | Go (serveur) + Python (workflows) |
| Étoiles GitHub | 1,1k ⭐ |
| Dernière MAJ | 2026-06-07 |
| Catégorie | cat-development, Automation / Durable Workflows |
📝 Description
AutoKitteh est une plateforme d'automatisation "durable" open source, créée par la société israélienne AutoKitteh Ltd. Le concept central : des workflows qui survivent aux crashes, redémarrages, et peuvent s'exécuter pendant des jours, semaines, voire mois — sans perdre l'état d'avancement. C'est l'équivalent open source de Temporal (moteur de workflows durables), avec une couche d'intégration SaaS comparable à Zapier ou n8n.
⚠️ Pour les nouveaux venus, distinguer d'app-n8n : n8n est un constructeur visuel de workflows (node-based, drag & drop), simple à prendre en main, idéal pour des automatisations courtes. AutoKitteh mise sur la durabilité et la programmabilité : on écrit les workflows en Python (ou en YAML DSL), et chaque étape est persistée. Si le serveur crash au milieu d'un workflow de 30 jours, il reprend exactement où il s'est arrêté, sans état perdu.
Intégrations natives : Slack, GitHub, GitLab, Jira, Notion, Google Workspace, Salesforce, HubSpot, Zendesk, AWS, GCP, HTTP/JSON, SSH, SMTP, IMAP, et 30+ autres. Chaque intégration supporte les triggers (webhook, polling, schedule) et les actions.
Public cible : équipes DevOps, plateforme, DevTools, SRE qui construisent des automatisations fiables : provisioning, incident response, ETL long-running, intégrations B2B, etc.
Fonctionnalités principales
- ✅ Workflows durables : state persistant, reprise après crash, time-to-live long
- ✅ Langage Python : logique custom dans les steps (pas de DSL propriétaire)
- ✅ 50+ intégrations natives : SaaS, cloud, protocols
- ✅ Triggers multiples : webhook, polling, schedule (cron), event
- ✅ Scheduling : cron-style ou event-driven
- ✅ Versioning des workflows : Git, code review, rollback
- ✅ Observabilité : logs structurés, traces, timeline d'exécution
- ✅ API REST : déclenchement, status, cancel
- ✅ Self-hosted : pas de dépendance externe, données 100% chez vous
- ✅ Mutual TLS : connexions sortantes chiffrées
- ✅ Retry policies : backoff exponentiel, max attempts
- ✅ Webhooks entrants : AutoKitteh expose des endpoints pour être appelé
🚀 Installation
Via Docker (recommandé)
# docker-compose.yml
version: '3.8'
services:
autokitteh:
image: autokitteh/autokitteh:latest
container_name: autokitteh
restart: unless-stopped
ports:
- "9980:9980" # Web UI
- "9990:9990" # API
environment:
AK_DB_URL: "postgresql://ak:password@db:5432/autokitteh"
AK_AUTH_SECRET: "changez-moi-en-production-50-chars-random"
AK_PUBLIC_URL: "https://autokitteh.example.com"
volumes:
- ak_data:/data
depends_on:
- db
labels:
- "traefik.enable=true"
- "traefik.http.routers.ak.rule=Host(`autokitteh.example.com`)"
- "traefik.http.routers.ak.entrypoints=websecure"
- "traefik.http.routers.ak.tls.certresolver=letsencrypt"
db:
image: postgres:16-alpine
container_name: ak-db
restart: unless-stopped
environment:
POSTGRES_USER: ak
POSTGRES_PASSWORD: changez-moi
POSTGRES_DB: autokitteh
volumes:
- ak_db:/var/lib/postgresql/data
volumes:
ak_data:
ak_db:
Installation manuelle
git clone https://github.com/autokitteh/autokitteh.git
cd autokitteh
docker compose -f docker/docker-compose.yaml up -d
⚙️ Configuration
- Créer un compte admin : première connexion sur
https://autokitteh.example.com - Nouveau projet : pointer vers un repo Git contenant un fichier
autokitteh.yaml - Définir un workflow : YAML DSL + steps Python
- Configurer les connexions : Settings > Connections > ajouter OAuth/API key par service
- Triggers : webhook entrant, cron, ou event
- Variables d'env : secrets par projet, jamais commit
- Surveillance : dashboard > Workflows > run history, logs, traces
Exemple de workflow (Python)
from autokitteh.slack import slack_client
def on_new_github_issue(event):
# événement GitHub → notification Slack avec contexte
issue = event.data.issue
slack_client.chat_postMessage(
channel="#dev-alerts",
text=f"🐛 Nouveau ticket : {issue.title}\n{issue.html_url}"
)
return {"status": "notified"}
🔗 Alternatives
- Temporal — Moteur de workflows durables bas niveau, plus complexe, SDK Go/JS/Python
- n8n — Constructeur visuel de workflows, plus simple, moins durable
- Zapier — SaaS leader, propriétaire, cher, pas durable
- Make (Integromat) — Concurrent Zapier, propriétaire
- Apache Airflow — Orchestration de pipelines data, orienté batch
- Prefect — Workflows Python durables, plus orienté data engineering
- Activepieces — Open source Zapier-like, plus accessible
🔒 Sécurité
- 🔐 AK_AUTH_SECRET robuste :
openssl rand -hex 64 - 🛡️ HTTPS obligatoire via app-traefik : AutoKitteh déclenche des actions sensibles (écriture en BDD, envoi de mails, création de tickets)
- 🔒 Secrets par projet : utiliser les variables d'environnement, jamais en clair dans le code
- 🛡️ Connexions OAuth : scopes minimaux, rotation régulière des tokens
- 🛡️ Webhooks entrants : valider la signature, secret partagé
- 🛡️ Audit log : conserver l'historique des exécutions (qui, quand, quoi)
- 🛡️ Sandboxing Python : AutoKitteh exécute du code user-controlled → vérifier l'isolation
📚 Ressources
🔗 Pages Liées
- cat-development — Catégorie Development
- app-n8n — Constructeur visuel de workflows (plus simple, moins durable)
- app-temporal — Moteur de workflows durables (bas niveau)
- app-traefik — Reverse proxy HTTPS
- securisation-home-lab — Bonnes pratiques
- recettes-docker-compose — Templates Docker