Aller au contenu

ADR 0002 — Prompts Copilot plutôt que serveur MCP

Contexte

Le kit doit fournir des assistants spécialisés — un pour cadrer un Business Epic, un pour découper une Feature, un pour écrire un Récit INVEST. Deux mécanismes de livraison s'offrent :

  1. Prompts markdown : des fichiers .github/prompts/*.prompt.md lus directement par GitHub Copilot Chat et invocables avec #nom.
  2. Serveurs MCP (Model Context Protocol) : des serveurs binaires qui exposent des outils et du contexte enrichi.

Les serveurs MCP sont la voie « moderne » annoncée par Anthropic et adoptée progressivement. Les prompts markdown sont la voie éprouvée et minimaliste.

Options envisagées

  1. MCP full — un serveur par skill, ou un serveur central gérant les 16 skills.
  2. MCP hybride — certains skills en MCP (ceux qui ont besoin de filesystem), le reste en prompts.
  3. Prompts only — tous les skills en fichiers markdown.

Décision

Retenu : prompts only pour V1.

Les 16 skills sont 16 fichiers .github/prompts/*.prompt.md avec un frontmatter YAML (mode, description, tools) et le corps du prompt en markdown. Invocation : #nom-du-skill dans Copilot Chat.

Conséquences

Positives :

  • Lisibilité : un dev lit le prompt, comprend ce que fait le skill, propose une modification. Pas de boîte noire.
  • Versionabilité : les prompts sont des fichiers texte diff-friendly. Une PR de modification de skill est reviewable comme du code.
  • Zéro runtime : pas de serveur à démarrer, pas de port à réserver, pas de credentials à gérer.
  • Indépendance d'outil : un prompt Copilot peut aussi être collé dans Claude Code, ChatGPT, ou un nouveau client demain.

Négatives :

  • Les prompts ne peuvent pas exécuter d'outils côté serveur. Toute action concrète (lire un fichier, appeler une API) dépend des outils Copilot Chat disponibles (readFiles, editFiles, codebase).
  • Pas de contexte enrichi dynamique : un MCP peut précharger des données selon le contexte projet ; un prompt charge tout à la demande.

Neutres :

  • Si un besoin apparaît qui exige MCP (ex: intégration avec une base métier interne), il pourra cohabiter avec les prompts — l'ADR ne ferme pas la porte, elle choisit le défaut.

Références