Overture

officiel

Approbation visuelle de plan pour agents de codage IA. Visualisez le plan de votre agent sous forme de graphique interactif, attachez du contexte, choisissez des approches, puis approuvez avant que du code ne soit écrit.

Documentation

Overture

Voyez le plan avant le code. Approuvez-le. Puis regardez-le s’exécuter.

npm version CI status npm downloads Discussions MIT License

ProblèmeSolutionInstallationFonctionnalitésMarketplaceConfigurationDiscussions


https://github.com/user-attachments/assets/eeb9c4cb-c80d-42da-bf63-c0c4ecb1e5d6


🔥 Le Problème

Aujourd’hui, tous les agents de codage IA — Cursor, Claude Code, Cline, Copilot — fonctionnent de la même manière :

Ce qui se passe actuellement

  1. Vous tapez une invite
  2. L’agent commence immédiatement à écrire du code
  3. Vous n’avez aucune visibilité sur ce qu’il fait
  4. Vous réalisez qu’il a mal compris votre demande
  5. Des centaines de lignes de code doivent être jetées
  6. Vous avez gaspillé des jetons, du temps et de la patience

Les plans textuels n’aident pas

Certains agents affichent des plans sous forme de texte dans le chat. Mais le texte ne montre pas :

  • Les dépendances — quelles tâches dépendent de quoi ?
  • Les points de branchement — quelles approches alternatives existent ?
  • Les exigences de contexte — quels fichiers, API ou secrets sont nécessaires ?
  • La complexité — quelles étapes sont risquées ?
  • La progression — ce qui est fait, ce qui vient ensuite ?

The Problem


✨ La Solution

Overture intercepte la phase de planification de votre agent IA et la restitue sous forme d’un organigramme visuel interactif — avant qu’aucun code ne soit écrit.

Overture Solution

L’agent n’écrit pas une seule ligne de code tant que vous n’approuvez pas le plan.



Plans Visuels
Organigramme interactif avec navigation par panoramique, zoom et clic

Joindre un Contexte
Fichiers, clés API, instructions par étape

Choisir des Approches
Comparer les avantages/inconvénients de différents chemins

Exécution en Temps Réel
Regardez les nœuds s’illuminer avec la progression

Marketplace MCP
Parcourez et attachez des outils par nœud

🚀 Installation

Overture est un serveur MCP qui fonctionne avec tout agent de codage IA compatible MCP. Une seule commande pour l’installer.

Claude Code

claude mcp add overture-mcp -- npx overture-mcp

Cursor

Ajoutez à ~/.cursor/mcp.json :

{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}
Plus d’Agents (Cline, Copilot, Sixth AI)

Cline (Extension VS Code)

Ouvrez les paramètres VS Code → recherchez "Cline MCP" → ajoutez :

{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}

GitHub Copilot

Créez .vscode/mcp.json à la racine de votre projet :

{
  "servers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}

Remarque : GitHub Copilot MCP nécessite VS Code 1.99+ et utilise servers au lieu de mcpServers.

Sixth AI (Extension VS Code)

Ajoutez à votre fichier de paramètres Sixth AI MCP :

PlateformeChemin
macOS~/Library/Application Support/Code/User/globalStorage/sixth.sixth-ai/settings/sixth-mcp-settings.json
Windows%APPDATA%\Code\User\globalStorage\sixth.sixth-ai\settings\sixth-mcp-settings.json
Linux~/.config/Code/User/globalStorage/sixth.sixth-ai/settings/sixth-mcp-settings.json
{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "disabled": false
    }
  }
}

Installation Globale (Optionnelle)

npm install -g overture-mcp

Vérifiez que ça fonctionne

Donnez n’importe quelle tâche à votre agent. Overture s’ouvre automatiquement sur http://localhost:3031 avec votre plan prêt à être approuvé.


🎯 Comment ça marche

How Overture Works

Le Flux :

ÉtapeCe qui se passe
1. InviteVous donnez une tâche à votre agent : "Construire une API REST avec authentification"
2. PlanL’agent génère un plan détaillé avec des étapes, des branches et des exigences
3. VisualiserOverture restitue le plan sous forme de graphe interactif
4. EnrichirVous cliquez sur les nœuds, joignez des fichiers, sélectionnez des branches, remplissez les clés API
5. ApprouverVous cliquez sur "Approuver & Exécuter" (ou appuyez sur Entrée)
6. ExécuterRegardez en temps réel les nœuds pulser, se terminer ou échouer
7. ContrôlerPause (Barre d’espace), reprendre, ré-exécuter des nœuds ou modifier le plan en cours de vol

🛠 Fonctionnalités

Canevas de Plan Interactif

Interactive Canvas

FonctionnalitéDescription
Canevas React FlowPanoramique, zoom, glisser complets avec des animations fluides
Analyseur de FluxLes nœuds du plan apparaissent en temps réel au fur et à mesure que l’agent les génère
Disposition Automatique DagrePositionnement automatique intelligent des nœuds
Statut VisuelEn attente (gris) → Actif (jaune pulsé) → Terminé (vert) / Échoué (rouge)
Indicateur de Prochain NœudUne impulsion bleue montre quel nœud s’exécute ensuite
Badges de ComplexitéFaible (vert), Moyen (jaune), Élevé (rouge) en un coup d’œil
Effets de LueurDes lueurs d’ombre mettent en évidence les nœuds actifs et à venir
Arêtes InsérablesSurvolez les arêtes pour insérer de nouveaux nœuds en cours de plan

Panneau de Détails du Nœud

Node Details Panel

Cliquez sur n’importe quel nœud pour révéler tous ses détails :

InformationCe que vous voyez
Titre & DescriptionContexte complet de ce que fait cette étape
Niveau de ComplexitéFaible / Moyen / Élevé avec indicateur visuel
Résultat AttenduCe que l’étape devrait produire
Risques & Cas LimitesProblèmes potentiels à surveiller
Avantages & InconvénientsPour les options de branche, comparez les compromis

Champs Dynamiques (Entrées Utilisateur)

Dynamic Fields

Les nœuds peuvent demander votre saisie avant l’exécution :

Type de ChampCas d’Usage
ChaîneNoms de projet, URLs, valeurs personnalisées
NombreNuméros de port, limites, compteurs
BooléenBoutons Oui/Non pour les options
SélectionListe déroulante avec des choix prédéfinis
SecretClés API, jetons (saisie masquée)
FichierChemins de fichiers pour joindre le contexte

Chaque champ inclut :

  • Indicateur requis/optionnel
  • Valeurs par défaut
  • Texte d’aide et descriptions
  • Instructions de configuration ("Comment obtenir une clé API")

Pièces Jointes

File Attachments

Joignez des fichiers de contexte à des nœuds spécifiques :

  • Détection automatique du type — Image, code, document ou autre
  • Icônes visuelles par type de fichier
  • Descriptions — ajoutez des notes sur l’importance de ce fichier
  • Supprimer — retirez les pièces jointes indésirables

Méta-Instructions

Meta Instructions

Ajoutez des instructions LLM personnalisées à n’importe quel nœud :

"Portez une attention particulière à la gestion des erreurs ici" "Utilisez le modèle d’authentification existant de src/auth.ts" "Assurez-vous d’ajouter des tests pour les cas limites"

Les instructions sont envoyées à l’agent juste avant l’exécution de ce nœud.


Détection et Sélection de Branche

Branch Selection

Lorsque l’agent propose plusieurs approches :

FonctionnalitéDescription
Détection AutomatiqueBranches détectées à partir de la structure du graphe (pas de balisage spécial)
Points de BranchementLes nœuds avec plusieurs arêtes sortantes deviennent des points de décision
Fenêtre de SélectionComparaison côte à côte avec avantages/inconvénients
Comparaison de ComplexitéVoyez le niveau de difficulté pour chaque option
Indicateur VisuelBranche sélectionnée mise en évidence sur le canevas
Ignorer les Non SélectionnéesSeul le chemin choisi s’exécute

Liste de Vérification des Exigences

Requirements Checklist

Avant de pouvoir approuver, Overture montre ce qui est nécessaire :

  • Champs obligatoires vides — comptés par nœud
  • Sélections de branche — quelles décisions sont en attente
  • Indicateur de progression — suivi visuel de l’achèvement
  • Éléments extensibles — cliquez pour voir les détails
  • Code couleur — Vert (fait) / Orange (en attente)

Le bouton Approuver reste désactivé jusqu’à ce que toutes les exigences soient remplies.


Contrôles d’Exécution

Execution Controls

ContrôleComment
ApprouverCliquez sur le bouton ou appuyez sur Enter
PauseAppuyez sur Spacebar en cours d’exécution
ReprendreAppuyez à nouveau sur Spacebar
Ré-exécuter le NœudCliquez sur le nœud échoué → "Ré-exécuter"
Ré-exécuter à Partir d’IciRé-exécutez depuis n’importe quel nœud jusqu’à la fin

Le bouton d’approbation est intelligent :

  • 🟢 "Approuver & Exécuter" — plan prêt, exigences remplies
  • 🟠 "Compléter les Exigences" — conditions non remplies
  • 🔵 "Exécution..." — en cours avec indicateur de progression
  • 🟢 "Terminé" — tout est fait
  • 🔴 "Échoué" — une erreur s’est produite

Sortie Structurée

Structured Output

Après l’exécution de chaque nœud, voyez une sortie structurée riche :

CatégorieCe qu’elle montre
AperçuRésumé de ce qui a été accompli
Fichiers ModifiésChemins, lignes ajoutées/supprimées, diffs
Fichiers CréésNouveaux fichiers avec le nombre de lignes
Fichiers SupprimésFichiers retirés
Paquets InstallésPaquets npm avec versions
Configuration des Serveurs MCPStatut d’installation (installé/configuré/échoué)
Recherches WebRequêtes effectuées, résultats utilisés
Appels d’OutilsQuels outils ont été utilisés et à quelle fréquence
URLs d’AperçuLiens vers les sites déployés ou les aperçus
NotesInfos, avertissements, erreurs

Chaque catégorie est extensible — explorez sans surcharge visuelle.


Fenêtre de Sortie

Output Modal

Cliquez sur n’importe quel nœud terminé pour voir la sortie complète :

  • Défilable pour les longues sorties
  • Coloration syntaxique des extraits de code
  • Fermer avec Échap ou cliquez à l’extérieur

🏪 Marketplace MCP

MCP Marketplace

Parcourez et attachez des serveurs MCP directement depuis l’interface utilisateur d’Overture.

FonctionnalitéDescription
Marketplace IntégréeRecherchez et découvrez des serveurs MCP
Détails du ServeurDescriptions, auteurs, liens GitHub, étoiles
Navigation par CatégorieFiltrez par cas d’usage
Attachement par NœudAttachez des outils spécifiques à des étapes spécifiques
Instructions de ConfigurationVoyez comment configurer chaque serveur
Serveurs RecommandésListe organisée pour les tâches courantes

Lorsque vous attachez un serveur MCP à un nœud, l’agent accède à ces outils uniquement pour cette étape.


📂 Support Multi-Projets

Travaillez sur plusieurs projets simultanément :

FonctionnalitéDescription
Navigation par OngletsBasculez instantanément entre les projets
Enregistrement AutomatiqueLes projets s’enregistrent au premier contact de l’agent
État IsoléChaque projet a des plans, nœuds, configurations séparés
Badges Non LusSachez quand d’autres projets ont des mises à jour
Contexte du ProjetVoyez le nom du projet, le chemin et le type d’agent

Un seul projet ? La barre d’onglets se masque automatiquement pour une interface plus propre.


📜 Historique des Plans & Persistance

Ne perdez jamais votre travail :

FonctionnalitéDescription
Sauvegarde automatiquePlans sauvegardés toutes les 3 secondes
Stockage localStocké dans ~/.overture/history.json
Navigateur d'historiquePanneau coulissant avec tous les plans passés
Icônes de statutTerminé, échoué, en cours d'exécution, en pause
Barres de progressionPourcentage visuel d'achèvement
Reprise en un clicCharger et continuer n'importe quel plan passé
Contexte completToutes les valeurs de champ, sélections de branche, pièces jointes préservées

Informations de reprise

Lors de la reprise, vous obtenez un contexte complet :

  • Nœud actuel — où l'exécution s'est arrêtée
  • Nœuds terminés — avec leurs sorties
  • Nœuds en attente — ce qu'il reste à faire
  • Nœuds échoués — avec les messages d'erreur
  • Toutes les configurations — valeurs de champ, branches, pièces jointes
  • Horodatages — quand créé, quand mis en pause

✏️ Modification dynamique du plan

Modifiez les plans même pendant l'exécution :

OpérationDescription
Insérer des nœudsAjouter de nouvelles étapes en cours d'exécution
Supprimer des nœudsSupprimer des étapes (les arêtes se reconnectent automatiquement)
Remplacer le contenuMettre à jour le titre/la description du nœud sur place
Opérations par lotPlusieurs modifications en une seule requête

Vue des différences du plan

Lorsqu'un plan change, voyez exactement ce qui est différent :

  • Nœuds ajoutés — surlignés en vert
  • Nœuds supprimés — surlignés en rouge
  • Nœuds modifiés — en jaune avec comparaison avant/après
  • Changements d'arêtes — connexions ajoutées/supprimées

🔌 Outils MCP (Pour les développeurs d'agents)

Overture expose 11 outils MCP avec lesquels les agents peuvent interagir :

OutilObjectif
submit_planSoumettre le plan complet en XML
get_approvalAttendre l'approbation de l'utilisateur (bloque jusqu'à approbation)
update_node_statusMettre à jour le statut du nœud + la sortie pendant l'exécution
plan_completedMarquer le plan comme terminé avec succès
plan_failedMarquer le plan comme échoué avec un message d'erreur
check_rerunVérifier si l'utilisateur a demandé une ré-exécution du nœud
check_pauseVérifier si l'utilisateur a mis l'exécution en pause
get_resume_infoObtenir le contexte complet pour reprendre un plan en pause
request_plan_updateDemander des modifications incrémentielles du plan
create_new_planSignaler la création d'un nouveau plan
get_usage_instructionsObtenir des instructions spécifiques à l'agent

🔄 Communication WebSocket en temps réel

19 types de messages serveur vers client :

connectedplan_startednode_addededge_addedplan_readyplan_approvednode_status_updatedplan_completedplan_failedplan_pausedplan_resumednodes_insertednode_removedproject_registeredprojects_listhistory_entriesplan_loadedresume_plan_infoplan_updated

16 types de messages client vers serveur :

approve_plancancel_planrerun_requestpause_executionresume_executioninsert_nodesremove_noderegister_projectsubscribe_projectunsubscribe_projectget_historyload_planget_resume_infosave_planrequest_plan_updatecreate_new_plan

Mode relais

Lorsque le port WebSocket est déjà utilisé, Overture fonctionne automatiquement comme un client relais, transmettant les messages via le serveur existant. Plusieurs instances d'agent peuvent partager une seule interface utilisateur.


⚙️ Configuration

VariableValeur par défautDescription
OVERTURE_HTTP_PORT3031Port pour l'interface utilisateur web
OVERTURE_WS_PORT3030Port pour WebSocket
OVERTURE_AUTO_OPENtrueOuvrir automatiquement le navigateur au démarrage

Définition des variables d'environnement

Claude Code
claude mcp add overture-mcp -e OVERTURE_HTTP_PORT=4000 -e OVERTURE_AUTO_OPEN=false -- npx overture-mcp
Cursor / Cline / Sixth AI
{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "env": {
        "OVERTURE_HTTP_PORT": "4000",
        "OVERTURE_WS_PORT": "4001",
        "OVERTURE_AUTO_OPEN": "false"
      }
    }
  }
}
GitHub Copilot
{
  "servers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "env": {
        "OVERTURE_HTTP_PORT": "4000",
        "OVERTURE_WS_PORT": "4001",
        "OVERTURE_AUTO_OPEN": "false"
      }
    }
  }
}

⌨️ Raccourcis clavier

ToucheAction
EnterApprouver le plan (quand prêt)
SpaceMettre en pause / Reprendre l'exécution
EscapeDésélectionner le nœud actuel / Fermer la modale

🤝 Agents pris en charge

AgentStatutNotes
Claude Code✅ CompletSupport MCP natif
Cursor✅ CompletVia la configuration mcp.json
Cline✅ CompletVia les paramètres VS Code
GitHub Copilot✅ CompletVS Code 1.99+ requis
Sixth AI✅ CompletIntégré, zéro configuration

Chaque agent a des invites personnalisées pour une génération de plan optimale.


💪 Pourquoi Overture ?

Pour les utilisateurs

  • Transparence — Voyez exactement ce qui se passe avant que le code ne soit écrit
  • Contrôle — Approuvez, rejetez ou modifiez n'importe quel plan
  • Contexte — Attachez des fichiers et des instructions aux bonnes étapes
  • Choix — Comparez les approches et choisissez votre chemin
  • Visibilité — Progression en temps réel avec une sortie riche
  • Sécurité — Mettez en pause, reprenez ou ré-exécutez à tout moment
  • Historique — Reprenez instantanément n'importe quel plan passé
  • Efficacité — Pas de jetons gaspillés sur des approches rejetées

Pour le codage IA

  • Confiance — Rend les agents prévisibles et contrôlables
  • Interprétabilité — Voyez le raisonnement de l'IA avant l'exécution
  • Universel — Fonctionne avec n'importe quel agent compatible MCP
  • Extensible — Marketplace MCP pour la découverte d'outils
  • Open Source — Sous licence MIT, piloté par la communauté
  • Autonome — Aucune dépendance cloud
  • Fonctionne hors ligne — Exécution entièrement locale
  • Multi-projet — Gérez plusieurs espaces de travail

🧑‍💻 Développement

# Clone the repo
git clone https://github.com/SixHq/Overture.git
cd Overture

# Install dependencies
npm install

# Build all packages
npm run build

# Start MCP server (in one terminal)
cd packages/mcp-server && npm start

# Start UI dev server (in another terminal)
cd packages/ui && npm run dev

Stack technique

CoucheTechnologies
Serveur MCPNode.js, TypeScript, Express, WebSocket (ws), SAX XML Parser
UIReact 18, React Flow, Zustand, Framer Motion, Tailwind CSS, Vite
DispositionDagre (positionnement automatique du graphe)

🤝 Contribution

Overture est open source et nous accueillons les contributions !

Toutes les contributions sont appréciées, aussi petites soient-elles.


📄 Licence

Licence MIT - voir LICENSE pour plus de détails.



Sixth

Construit par Sixth

Pour la meilleure expérience, essayez Sixth pour VS Code
Overture est intégré sans aucune configuration requise.

Arrêtez de voler à l'aveugle. Voyez le plan. Approuvez-le. Exécutez en toute confiance.

Historique des étoiles

Star History Chart