L’échec le plus fréquent lorsqu’on « fait un jeu avec l’IA » en 2026 n’est pas de choisir un modèle faible : c’est d’ouvrir des fils de comparaison Unity, Godot et Unreal dès le premier jour alors qu’aucune fenêtre ne bouge encore lorsque vous appuyez sur Espace. Claude Code est un agent de codage en terminal : il modifie des fichiers, exécute des commandes et lit les traces d’erreur. L’utiliser pour le développement de jeux ne consiste pas à demander un titre AAA en une seule fois ; il s’agit de verrouiller une stack qui tourne sur votre machine, puis de compléter la boucle de jeu, les entrées et les collisions par petites étapes vérifiables. Ce guide va de l’installation de Node et Claude Code jusqu’à deux parcours sans prérequis : pygame et Canvas HTML5. Le critère d’acceptation est simple : une autre personne peut lancer le jeu à partir de votre README et jouer la boucle centrale pendant au moins une minute, sans votre aide dans le chat.
Pourquoi parler de la stack avant l’IA
L’ancienne approche consistait à décrire « un jeu comme X » à un chatbot, puis à coller un mur de code qui ne s’exécute jamais. La meilleure approche traite le dépôt comme un vrai projet d’ingénierie : un main.py ou un index.html, une boucle à fréquence d’images fixe et un historique git. Claude Code ne peut répéter « modifier un fichier → lancer → lire la traceback → modifier à nouveau » que dans ce type de projet. La friction vient rarement du quotient intellectuel du modèle ; elle vient des frontières d’exécution : quel checkout l’agent modifie, où les commandes s’exécutent réellement et si vous pouvez revenir en arrière lorsqu’une réécriture échoue.
Les jeux ajoutent du bruit : graphismes, audio, physique et données de niveau sont plus désordonnés qu’un CRUD typique. Si vous partez de zéro, réduisez la portée à un rectangle, un vecteur vitesse, un score. Un platformer 2D ou un clone de casse-briques suffit pour apprendre le rythme de collaboration ; la 3D, le multijoueur et une sortie Steam viendront plus tard. Lorsque vous aurez besoin d’export iOS ou mobile Unity, la chaîne d’outils exige macOS : prévoyez une location de Mac à distance plutôt que de chercher Xcode sur Linux, où il n’existe pas.
Classer d’abord les « petites stacks jeu » en trois catégories
Classez par runtime, rendu et distribution, pas par classements de popularité. La première catégorie est script plus fenêtre bureau (Python pygame, Love2D). La deuxième est Canvas navigateur ou WebGL (Canvas simple, Phaser, Pixi). La troisième regroupe les éditeurs moteur (Godot, Unity, Unreal). Claude Code convient le mieux aux catégories une et deux, car le projet est surtout composé de fichiers texte aux diffs clairs. La catégorie trois impose d’apprendre les boutons de l’éditeur ; les agents se heurtent souvent aux dossiers .import et aux arbres Library volumineux.
| Stack | Entrée | Exécution | Contexte | Idéal pour |
|---|---|---|---|---|
| pygame | Terminal + fenêtre locale | python main.py pour retour immédiat | Petit dépôt de fichiers .py | Débutants qui veulent une fenêtre aujourd’hui |
| HTML5 Canvas | Navigateur + serveur statique | Actualiser pour prévisualiser ; liens faciles à partager | index.html + game.js | Confort front-end ou tests par lien |
| Godot 4 | Éditeur + GDScript | Arbre de scène et import d’assets | .tscn + scripts | Apprenants qui acceptent les nœuds |
| Unity | Éditeur + C# | Composants, Asset Store | Gros dossier Library | Profil C#, objectifs 3D ou multi-plateforme |
| Claude Code CLI | Racine du projet en terminal | Modifier fichiers ; lancer tests et builds | L’espace de travail git ouvert | Couche de collaboration sur toute stack |
Cet article suppose Windows, macOS ou Linux sur votre machine de développement. pygame nécessite Python 3.10 ou plus récent. La voie HTML5 utilise Node uniquement pour servir des fichiers statiques en local, pas pour compiler le jeu en serveur Node. Après chaque étape importante, vérifiez brièvement la fluidité et les touches ; les écarts sont plus faciles à corriger tant que le dépôt reste petit et l’historique lisible.
Le point d’entrée de collaboration compte plus que le nom du modèle
Les benchmarks de modèles ne tranchent pas. Ce qui compte, c’est qui détient un checkout exécutable. Cursor édite dans un IDE ; Claude Code exécute des commandes dans le terminal avec votre accord. Les deux peuvent écrire une boucle, mais si les commandes de lancement ne sont que décrites dans le chat, vous resterez bloqué sur ImportError. Documentez dans GAME.md et le README quelles commandes l’agent peut relancer à chaque session.
| Outil | Entrée | Exécution | Contexte | Idéal pour |
|---|---|---|---|---|
| Claude Code | CLI / terminal | Modifier le dépôt ; lancer python / npm | Arbre de travail git | Débutants pas à pas avec historique de commandes |
| Cursor Agent | IDE | Modifier fichiers ; terminal intégré | Projet ouvert | Développeurs qui utilisent des points d’arrêt visuels |
| Chat seul | Interface web | Ne lance généralement pas votre projet | Conversation uniquement | Questions de concept, pas livraison |
| Mac distant + CLI | SSH | Xcode / simulateur iOS | Projets chaîne Apple | Export mobile natif |
Pour approfondir les compromis CLI, voir Pi, Claude Code et Codex comparés. Pour éviter de réexpliquer les conventions pygame à chaque session, installez une Agent Skill ; consultez le guide Agent Skills.
Choisir stack et flux selon le scénario
| Si vous | Choisissez | Évitez |
|---|---|---|
| Débutant total ; mouvement aujourd’hui | pygame + cette checklist en sept étapes | Modèle Unity 3D |
| À l’aise HTML/CSS ; partager un lien | Canvas + npx serve | Shaders WebGL dès le premier jour |
| Déjà sur Godot | Godot + Claude Code sur les .gd seulement | Demander à l’IA de reconstruire des .tscn entiers |
| Cible App Store iOS | Mac distant + export iOS natif ou Unity | « Simuler » la signature sur Windows seul |
| Longues sessions ; capot fermé souvent | VPS + tmux pour Claude Code | Tuer les processus locaux à la fermeture |
Si vous hésitez entre pygame et HTML5, choisissez selon le retour le plus rapide chez vous : terminal plus fenêtre, ou navigateur plus localhost. Les deux voies sont équivalentes dans ce guide ; l’essentiel est de tenir un choix jusqu’à une première boucle jouable, sans changer de technologie au milieu.
Combinaison recommandée sans prérequis (voie pygame)
Système d’exploitation : au choix. Python 3.11+ et pip install pygame. Installez Node 22 LTS uniquement pour configurer la CLI Claude Code (suivez la doc Anthropic : npm install -g @anthropic-ai/claude-code ou l’installateur officiel). Stockez les clés API dans ~/.config/game-dev/anthropic.env, répertoire en mode 700 et fichier en mode 600 ; ajoutez ce chemin à .gitignore.
À la racine du dépôt, ajoutez GAME.md : cinq phrases sur les contrôles, l’état d’échec, le score, la fréquence d’images cible et ce qu’une capture d’acceptation doit montrer. Demandez à Claude Code de le relire avant chaque changement pour éviter l’élargissement de scope. Commande fixe pygame : python main.py. Pour HTML5 : npx --yes serve . et ouvrez l’URL localhost affichée. Gardez une structure de fichiers plate jusqu’à ce que la boucle centrale tienne ; les modules supplémentaires peuvent attendre que mouvement et collisions soient stables.
main.py ; conserver 60 FPS ; ajouter un rectangle joueur et déplacement gauche/droite ; ne pas ajouter de dépendances ; après modification lancer python main.py et corriger les tracebacks jusqu’à ouverture de la fenêtre.
Cinq erreurs qui tuent le projet
- Unity 3D dès le premier jour. Import, éclairage et préréglages physiques absorbent une semaine ; les diffs en une fois atterrissent rarement proprement.
- Ne jamais laisser l’agent exécuter de commandes. Lire le code généré sans l’exécuter empile les ImportError jusqu’à ne plus savoir quel fichier casse.
- Un seul prompt pour un « jeu complet ». Découper : fenêtre → entrées → collisions → score → audio.
- Sauter les commits git. Quand l’agent réécrit des fichiers entiers, vous ne pouvez pas revenir en arrière et la confiance s’effondre.
- Chercher Xcode sur le mauvais OS. Les builds iOS commencent sur macOS ; voir tarifs Mac mini et le centre d’aide.
Sept étapes de l’installation au mini-jeu exécutable
- Installer Node 22 LTS et git. Exécuter
node -vetgit --version; des numéros visibles signifient que c’est bon. - Installer la CLI Claude Code. Terminer connexion ou configuration API selon la doc officielle ; garder les secrets hors de l’historique shell.
- Créer un dossier projet et
git init. Ajouter.gitignore(env,__pycache__),README.mdvide etGAME.md. - Choisir pygame ou HTML5. pygame : environnement virtuel et
pip install pygame. HTML5 : créerindex.html+game.js. - Demander à Claude Code un squelette minimal. Exiger une sortie exécutable, un ou deux fichiers, pas de TODO placeholder ; lancer le jeu en session jusqu’à disparition des erreurs. Refuser de nouveaux fichiers tant que
main.pyougame.jsseul ne tourne pas. - Itérer le gameplay. Ajouter une mécanique par étape (collision ou score), commit à chaque fois ; ajuster les constantes avant de réécrire l’architecture. Notez dans
GAME.mdla prochaine mécanique pour que l’agent n’anticipe pas. - Finaliser le README. Lister dépendances, commandes de lancement, bugs connus ; un ami doit pouvoir suivre le README seul. S’il échoue, corrigez la doc ou le code, puis recommitez : ce n’est pas une « erreur utilisateur ».
python3 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate pip install --upgrade pip pygame python -c "import pygame; print(pygame.ver)"
cd my-first-game git add GAME.md README.md .gitignore git commit -m "chore: bootstrap game spec" claude # after login, ask for main.py and run python main.py in session
npx --yes serve . # open the http://localhost URL shown (port may differ)
FAQ
Puis-je le faire sans aucune expérience de code ?
Oui, si vous réduisez la portée à un schéma de contrôle, un état d’échec et un score. Exécutez d’abord les commandes d’installation et de lancement officielles avant de demander des fonctionnalités. Lisez les tracebacks comme une checklist, pas comme un échec personnel.
Claude Code ou Cursor pour les jeux ?
Cursor convient à l’édition visuelle dans un IDE ; Claude Code convient au travail terminal pas à pas et aux tests. Pour la première version exécutable, Claude Code clarifie souvent plus vite fichiers et commandes, car tout apparaît explicitement dans l’historique.
Ai-je besoin d’Unity ?
Pas pour le premier projet. Unity convient à la 3D et aux pipelines d’assets lourds. pygame ou Canvas HTML5 donne en général un résultat visible le jour même sur votre machine.
Le code IA ne démarre pas : que faire ?
Collez la traceback complète et limitez les changements aux fichiers concernés. Corrigez une erreur, commitez, puis continuez.
Quand le mini-jeu est-il « terminé » ?
Quelqu’un d’autre peut le lancer via le README ; la boucle centrale reste amusante au moins 60 secondes ; les problèmes connus sont listés dans le dépôt. Optionnel : une courte capture d’écran ou vidéo dans le README pour montrer le comportement normal avant les rapports de bug.
Conclusion
Développer un jeu avec Claude Code, c’est une stack exécutable, de petits commits et laisser l’agent lancer des commandes, pas une génération « AAA complète » en un coup. Suivez d’abord la voie pygame ou HTML5 en sept étapes, puis envisagez Godot, Unity ou iOS. Lorsque la chaîne exige Xcode, passez sur un nœud macOS ; l’entraînement 2D quotidien peut rester sur le portable que vous possédez déjà. Mesurez les progrès par des builds qui tournent, pas par la longueur des réponses du chat. Une fois README et GAME.md solides, la même discipline scale vers des projets plus grands : la stack change, le rythme de petites étapes exécutables reste. C’est l’objectif pédagogique de ce tutoriel.
Pour aller plus loin
Unity iOS ou Xcode : passez au Mac distant
pygame et HTML5 marchent sur Windows, macOS et Linux. L’export iOS exige macOS. Louez un Mac distant plutôt que de déboguer sur le mauvais OS.