Overture
officielApprobation 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
Voyez le plan avant le code. Approuvez-le. Puis regardez-le s’exécuter.
Problème • Solution • Installation • Fonctionnalités • Marketplace • Configuration • Discussions
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
|
Les plans textuels n’aident pasCertains agents affichent des plans sous forme de texte dans le chat. Mais le texte ne montre pas :
|
✨ 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.
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
serversau lieu demcpServers.
Sixth AI (Extension VS Code)
Ajoutez à votre fichier de paramètres Sixth AI MCP :
| Plateforme | Chemin |
|---|---|
| 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
Le Flux :
| Étape | Ce qui se passe |
|---|---|
| 1. Invite | Vous donnez une tâche à votre agent : "Construire une API REST avec authentification" |
| 2. Plan | L’agent génère un plan détaillé avec des étapes, des branches et des exigences |
| 3. Visualiser | Overture restitue le plan sous forme de graphe interactif |
| 4. Enrichir | Vous cliquez sur les nœuds, joignez des fichiers, sélectionnez des branches, remplissez les clés API |
| 5. Approuver | Vous cliquez sur "Approuver & Exécuter" (ou appuyez sur Entrée) |
| 6. Exécuter | Regardez en temps réel les nœuds pulser, se terminer ou échouer |
| 7. Contrôler | Pause (Barre d’espace), reprendre, ré-exécuter des nœuds ou modifier le plan en cours de vol |
🛠 Fonctionnalités
Canevas de Plan Interactif
| Fonctionnalité | Description |
|---|---|
| Canevas React Flow | Panoramique, zoom, glisser complets avec des animations fluides |
| Analyseur de Flux | Les nœuds du plan apparaissent en temps réel au fur et à mesure que l’agent les génère |
| Disposition Automatique Dagre | Positionnement automatique intelligent des nœuds |
| Statut Visuel | En attente (gris) → Actif (jaune pulsé) → Terminé (vert) / Échoué (rouge) |
| Indicateur de Prochain Nœud | Une 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 Lueur | Des lueurs d’ombre mettent en évidence les nœuds actifs et à venir |
| Arêtes Insérables | Survolez les arêtes pour insérer de nouveaux nœuds en cours de plan |
Panneau de Détails du Nœud
Cliquez sur n’importe quel nœud pour révéler tous ses détails :
| Information | Ce que vous voyez |
|---|---|
| Titre & Description | Contexte complet de ce que fait cette étape |
| Niveau de Complexité | Faible / Moyen / Élevé avec indicateur visuel |
| Résultat Attendu | Ce que l’étape devrait produire |
| Risques & Cas Limites | Problèmes potentiels à surveiller |
| Avantages & Inconvénients | Pour les options de branche, comparez les compromis |
Champs Dynamiques (Entrées Utilisateur)
Les nœuds peuvent demander votre saisie avant l’exécution :
| Type de Champ | Cas d’Usage |
|---|---|
| Chaîne | Noms de projet, URLs, valeurs personnalisées |
| Nombre | Numéros de port, limites, compteurs |
| Booléen | Boutons Oui/Non pour les options |
| Sélection | Liste déroulante avec des choix prédéfinis |
| Secret | Clés API, jetons (saisie masquée) |
| Fichier | Chemins 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
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
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
Lorsque l’agent propose plusieurs approches :
| Fonctionnalité | Description |
|---|---|
| Détection Automatique | Branches détectées à partir de la structure du graphe (pas de balisage spécial) |
| Points de Branchement | Les nœuds avec plusieurs arêtes sortantes deviennent des points de décision |
| Fenêtre de Sélection | Comparaison côte à côte avec avantages/inconvénients |
| Comparaison de Complexité | Voyez le niveau de difficulté pour chaque option |
| Indicateur Visuel | Branche sélectionnée mise en évidence sur le canevas |
| Ignorer les Non Sélectionnées | Seul le chemin choisi s’exécute |
Liste de Vérification des Exigences
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
| Contrôle | Comment |
|---|---|
| Approuver | Cliquez sur le bouton ou appuyez sur Enter |
| Pause | Appuyez sur Spacebar en cours d’exécution |
| Reprendre | Appuyez à nouveau sur Spacebar |
| Ré-exécuter le Nœud | Cliquez sur le nœud échoué → "Ré-exécuter" |
| Ré-exécuter à Partir d’Ici | Ré-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
Après l’exécution de chaque nœud, voyez une sortie structurée riche :
| Catégorie | Ce qu’elle montre |
|---|---|
| Aperçu | Résumé de ce qui a été accompli |
| Fichiers Modifiés | Chemins, lignes ajoutées/supprimées, diffs |
| Fichiers Créés | Nouveaux fichiers avec le nombre de lignes |
| Fichiers Supprimés | Fichiers retirés |
| Paquets Installés | Paquets npm avec versions |
| Configuration des Serveurs MCP | Statut d’installation (installé/configuré/échoué) |
| Recherches Web | Requêtes effectuées, résultats utilisés |
| Appels d’Outils | Quels outils ont été utilisés et à quelle fréquence |
| URLs d’Aperçu | Liens vers les sites déployés ou les aperçus |
| Notes | Infos, avertissements, erreurs |
Chaque catégorie est extensible — explorez sans surcharge visuelle.
Fenêtre de Sortie
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
Parcourez et attachez des serveurs MCP directement depuis l’interface utilisateur d’Overture.
| Fonctionnalité | Description |
|---|---|
| Marketplace Intégrée | Recherchez et découvrez des serveurs MCP |
| Détails du Serveur | Descriptions, auteurs, liens GitHub, étoiles |
| Navigation par Catégorie | Filtrez par cas d’usage |
| Attachement par Nœud | Attachez des outils spécifiques à des étapes spécifiques |
| Instructions de Configuration | Voyez comment configurer chaque serveur |
| Serveurs Recommandés | Liste 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 Onglets | Basculez instantanément entre les projets |
| Enregistrement Automatique | Les projets s’enregistrent au premier contact de l’agent |
| État Isolé | Chaque projet a des plans, nœuds, configurations séparés |
| Badges Non Lus | Sachez quand d’autres projets ont des mises à jour |
| Contexte du Projet | Voyez 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 automatique | Plans sauvegardés toutes les 3 secondes |
| Stockage local | Stocké dans ~/.overture/history.json |
| Navigateur d'historique | Panneau coulissant avec tous les plans passés |
| Icônes de statut | Terminé, échoué, en cours d'exécution, en pause |
| Barres de progression | Pourcentage visuel d'achèvement |
| Reprise en un clic | Charger et continuer n'importe quel plan passé |
| Contexte complet | Toutes 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ération | Description |
|---|---|
| Insérer des nœuds | Ajouter de nouvelles étapes en cours d'exécution |
| Supprimer des nœuds | Supprimer des étapes (les arêtes se reconnectent automatiquement) |
| Remplacer le contenu | Mettre à jour le titre/la description du nœud sur place |
| Opérations par lot | Plusieurs 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 :
| Outil | Objectif |
|---|---|
submit_plan | Soumettre le plan complet en XML |
get_approval | Attendre l'approbation de l'utilisateur (bloque jusqu'à approbation) |
update_node_status | Mettre à jour le statut du nœud + la sortie pendant l'exécution |
plan_completed | Marquer le plan comme terminé avec succès |
plan_failed | Marquer le plan comme échoué avec un message d'erreur |
check_rerun | Vérifier si l'utilisateur a demandé une ré-exécution du nœud |
check_pause | Vérifier si l'utilisateur a mis l'exécution en pause |
get_resume_info | Obtenir le contexte complet pour reprendre un plan en pause |
request_plan_update | Demander des modifications incrémentielles du plan |
create_new_plan | Signaler la création d'un nouveau plan |
get_usage_instructions | Obtenir des instructions spécifiques à l'agent |
🔄 Communication WebSocket en temps réel
19 types de messages serveur vers client :
connected • plan_started • node_added • edge_added • plan_ready • plan_approved • node_status_updated • plan_completed • plan_failed • plan_paused • plan_resumed • nodes_inserted • node_removed • project_registered • projects_list • history_entries • plan_loaded • resume_plan_info • plan_updated
16 types de messages client vers serveur :
approve_plan • cancel_plan • rerun_request • pause_execution • resume_execution • insert_nodes • remove_node • register_project • subscribe_project • unsubscribe_project • get_history • load_plan • get_resume_info • save_plan • request_plan_update • create_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
| Variable | Valeur par défaut | Description |
|---|---|---|
OVERTURE_HTTP_PORT | 3031 | Port pour l'interface utilisateur web |
OVERTURE_WS_PORT | 3030 | Port pour WebSocket |
OVERTURE_AUTO_OPEN | true | Ouvrir 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
| Touche | Action |
|---|---|
Enter | Approuver le plan (quand prêt) |
Space | Mettre en pause / Reprendre l'exécution |
Escape | Désélectionner le nœud actuel / Fermer la modale |
🤝 Agents pris en charge
| Agent | Statut | Notes |
|---|---|---|
| Claude Code | ✅ Complet | Support MCP natif |
| Cursor | ✅ Complet | Via la configuration mcp.json |
| Cline | ✅ Complet | Via les paramètres VS Code |
| GitHub Copilot | ✅ Complet | VS Code 1.99+ requis |
| Sixth AI | ✅ Complet | Intégré, zéro configuration |
Chaque agent a des invites personnalisées pour une génération de plan optimale.
💪 Pourquoi Overture ?
Pour les utilisateurs
|
Pour le codage IA
|
🧑💻 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
| Couche | Technologies |
|---|---|
| Serveur MCP | Node.js, TypeScript, Express, WebSocket (ws), SAX XML Parser |
| UI | React 18, React Flow, Zustand, Framer Motion, Tailwind CSS, Vite |
| Disposition | Dagre (positionnement automatique du graphe) |
🤝 Contribution
Overture est open source et nous accueillons les contributions !
- 🐛 Signaler des bugs sur GitHub Issues
- 💡 Suggérer des fonctionnalités sur GitHub Discussions
- 📖 Améliorer la documentation — les PRs sont les bienvenues
- 🔧 Contribuer au code — voir CONTRIBUTING.md
Toutes les contributions sont appréciées, aussi petites soient-elles.
📄 Licence
Licence MIT - voir LICENSE pour plus de détails.
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.