Files
ARC/ressources/Projet.md
Chevallier a7d8914e25 first push
2026-06-12 18:16:58 +02:00

3.9 KiB
Raw Blame History

Étape 0 : Préparation de l'environnement du projet

Tâches :

  • Créer backend minimal
  • Créer modèle de données simple
  • langGraph

Étape 1 : Analyse du Besoin & Qualification (Agent PM / Business Analyst)

  • L'utilisateur entre une demande en langage naturel.
  • Agent 1 (PM) analyse la demande. Si des informations manquent pour coder, il pose des questions clarificatrices à l'utilisateur jusqu'à obtenir un cahier des charges complet.
  • Vérification BDD : Avant de coder, le système cherche dans une base de données vectorielle si un projet similaire existe déjà.
    • Si oui : On propose le lien à l'utilisateur. Si l'utilisateur valide, le workflow s'arrête ici.
    • Si non (ou si l'utilisateur rejette l'existant) : On passe à l'étape 2.

Outils :

  • LangGraph -> LangGraph est adapté aux workflows multiagents avec états, transitions conditionnelles, persistance et humanintheloop
  • Python -> backend, les agents, les appels LLM, les tests, les embeddings et les intégrations + compatible avec autres tools
  • Pydantic AI / Pydantic -> forcer lAgent PM à produire un cahier des charges structuré
  • Chainlit -> adapté aux interfaces conversationnelles BDD :
  • Qdrant -> adapté à la recherche sémantique + stocker les embeddings de projets/scripts
  • Snowflake Arctic Embed 2.0 -> modèle dembedding
  • Redis (optionnel) -> cache de recherche ;sessions utilisateur ;état temporaire ;verrouillage dun workflow ;file dattente simple

Tâches :

  • Interface Chainlit
  • Créer le prompt Agent PM
  • Créer le schéma Pydantic du cahier des charges
  • Gérer les questions clarificatrices
  • Valider le cahier des charges
  • Recherche dexistant (Qdrant/Snowflake Arctic Embed 2.0/Redis)

Étape 2 : Génération de Code (Agent Développeur)

  • Agent 2 (Dev) reçoit le cahier des charges validé et génère l'arborescence et le code source du projet.

Outils :

  • LangGraph -> LangGraph est adapté aux workflows multiagents avec états, transitions conditionnelles, persistance et humanintheloop
  • Mistral ou Gemma (modèle trop généraliste/léger->tache simple) -> DeepSeek Coder/Qwen2.5
  • vLLM -> meilleur choix quOllama pour une plateforme plus industrialisée. Llama.cpp modèles quantifiés sur CPU ou machines modestes + moins adapté à une plateforme multiutilisateur
  • Pydantic

Tâches :

  • Créer le prompt Agent Dev
  • Partie dev

Étape 3 : Tests et Assurance Qualité (Agent QA / Testeur)

  • Agent 3 (QA) récupère le code de l'Agent 2. Il doit exécuter le code (via une sandbox sécurisée) ou générer/exécuter des tests unitaires pour vérifier la qualité, la sécurité et le fonctionnement.
  • Boucle de correction automatique (Loop 1) : Si les tests échouent, l'Agent 3 renvoie les erreurs à l'Agent 2 avec les logs. L'Agent 2 corrige et renvoie à l'Agent 3. Cette boucle tourne au maximum X fois jusqu'à ce que le code soit "vert".

Outils :

  • Docker
  • Ruff -> qualité de code
  • Bandit -> sécurité
  • Semgrep (optionnel) -> règles de sécurité et qualité plus larges Boucle correction :
  • LangGraph
  • Pydantic

Tâches :

  • QA et sandbox
  • Intégration Ruff/Bandit/Semgrep
  • Boucle automatique Dev-QA

Étape 4 : Livraison & Feedback Utilisateur (Boucle Humaine)

  • Une fois le code validé par l'Agent 3, il est présenté à l'utilisateur.
  • L'utilisateur teste et valide.
    • Si Validé : Le projet est sauvegardé dans la base de données (pour la recherche de l'Étape 1) et livré (ex: zip ou dépôt GitHub).
    • Si Refusé : L'utilisateur indique ce qui ne va pas. Tout le contexte (code actuel + retours) est renvoyé à l'Étape 1 pour réanalyse, et le cycle recommence.

Outils :

  • Chainlit
  • Git (optionnel)

Tâches :

  • Interface Chainlit
  • Livraison

Étape finale :

Tâches :

  • Tests fonctionnels de bout en bout
  • Sécurité minimale
  • Documentation finale
  • Présentation