Files
2026-06-09 18:40:21 +02:00

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

  1. Créer un compte admin : première connexion sur https://autokitteh.example.com
  2. Nouveau projet : pointer vers un repo Git contenant un fichier autokitteh.yaml
  3. Définir un workflow : YAML DSL + steps Python
  4. Configurer les connexions : Settings > Connections > ajouter OAuth/API key par service
  5. Triggers : webhook entrant, cron, ou event
  6. Variables d'env : secrets par projet, jamais commit
  7. 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