Spécifier le contexte
Le contexte fait la différence
La qualité des réponses de grok-code-fast-1 dépend directement de la qualité du contexte que vous lui fournissez. Un prompt vague donne une réponse générique. Un prompt avec le bon contexte donne une réponse applicable immédiatement à votre code.
Le problème des prompts sans contexte
Prenons un exemple concret. Vous demandez :
“Améliore la gestion d’erreurs”
Le modèle ne sait pas :
- Dans quel fichier travailler
- Quel type d’erreurs vous gérez
- Quels sont vos codes d’erreur existants
- Quelle est la structure de votre projet
- Quelles dépendances vous utilisez
Il va produire une réponse générique avec des try/catch standard, qui ne correspondra probablement pas à votre architecture.
Comment bien spécifier le contexte
Mentionner les fichiers concernés
Les éditeurs comme Cline et Cursor permettent de référencer des fichiers avec @. Utilisez cette fonctionnalité systématiquement :
“Mes codes d’erreur sont définis dans @errors.ts, utilise-les comme référence pour ajouter une gestion d’erreurs appropriée dans @sql.ts où je fais des requêtes”
Le modèle voit maintenant les fichiers concrets, comprend vos conventions, et produit du code cohérent avec votre codebase.
Décrire la structure du projet
Quand vous travaillez sur un nouveau projet ou une partie du code que le modèle ne connaît pas encore, décrivez brièvement la structure :
“Le projet utilise Express avec TypeScript. Les routes sont dans src/routes/, les services dans src/services/, et les types dans src/types/. Je travaille sur le service d’authentification.”
Préciser les dépendances
Si votre code utilise des bibliothèques spécifiques, mentionnez-les :
“J’utilise Zod pour la validation, Drizzle pour l’ORM, et Pino pour le logging. Ajoute de la validation sur le schéma d’entrée de @api/users.ts”
Exclure le non-pertinent
Aussi important que d’inclure le bon contexte : exclure ce qui n’est pas pertinent. Si vous référencez 15 fichiers pour une modification simple, le modèle risque de se perdre. Concentrez-vous sur les fichiers directement impliqués.
Exemples avant/après
Génération de tests
Sans contexte : “Écris des tests pour ma fonction de validation”
Avec contexte : “Écris des tests Vitest pour la fonction validateUser dans @src/validators/user.ts. Les fixtures de test sont dans @tests/fixtures/users.json. Utilise le même pattern que @tests/validators/product.test.ts”
Refactoring
Sans contexte : “Refactorise ce code pour qu’il soit plus propre”
Avec contexte : “Extrais la logique de retry dans @src/api/client.ts (lignes 45-78) dans un helper réutilisable dans @src/utils/retry.ts. Les autres clients API dans @src/api/ devront pouvoir l’utiliser aussi”
Points clés à retenir
- Toujours référencer les fichiers concernés avec
@ - Décrire la structure du projet quand c’est nécessaire
- Mentionner les dépendances et conventions utilisées
- Exclure les informations non pertinentes pour éviter le bruit
- Plus le contexte est précis, plus la réponse est applicable directement