Révélation de l'Assemblage et de la Structure du Prompt Système de Claude Code

Flux d'Assemblage du Prompt Système
Le prompt système est assemblé dans un ordre fixe dans src/constants/prompts.ts via getSystemPrompt(). La structure suit : contenu statique d'abord, puis un marqueur de limite dynamique, puis un suffixe spécifique à la session/utilisateur.
return [ // Contenu statique (mise en cache possible) getSimpleIntroSection(), getSimpleSystemSection(), getSimpleDoingTasksSection(), getActionsSection(), getUsingYourToolsSection(), getSimpleToneAndStyleSection(), getOutputEfficiencySection(), // Limite de cache SYSTEM_PROMPT_DYNAMIC_BOUNDARY, // Contenu dynamique/spécifique à la session getSessionSpecificGuidanceSection(), loadMemoryPrompt(), getAntModelOverrideSection(), computeSimpleEnvInfo(), getLanguageSection(), getOutputStyleSection(), getMcpInstructionsSection(), getScratchpadInstructions(), getFunctionResultClearingSection(), SUMMARIZE_TOOL_RESULTS_SECTION, ]
Variantes de Préfixe d'Identité
Trois variantes d'identité sont définies dans src/constants/system.ts :
- Mode interactif par défaut : "Vous êtes Claude Code, l'interface en ligne de commande officielle d'Anthropic pour Claude."
- Préréglage SDK Agent (non interactif + ajout du prompt système) : "Vous êtes Claude Code, l'interface en ligne de commande officielle d'Anthropic pour Claude, fonctionnant au sein du SDK Agent Claude."
- SDK Agent sans ajout (non interactif) : "Vous êtes un agent Claude, construit sur le SDK Agent Claude d'Anthropic."
Le chemin de sélection est simplifié comme suit : API Vertex → par défaut | non interactif + ajout → préréglage SDK | non interactif → SDK | sinon → par défaut.
En-tête d'Attribution/Facturation
Format observé : x-anthropic-billing-header: cc_version={version}.{fingerprint}; cc_entrypoint={entrypoint}; [cch=00000;] [cc_workload={type};]
Notes : cch=00000 semble être un espace réservé d'authentification client réécrit ultérieurement par la pile HTTP. cc_workload={type} semble servir d'indice de routage/planification (par exemple, charges de travail de type cron).
Détails des Sections de Prompt
La section d'introduction de getSimpleIntroSection() indique : "Vous êtes un agent interactif qui aide les utilisateurs avec des tâches de génie logiciel. Utilisez les instructions ci-dessous et les outils à votre disposition pour assister l'utilisateur."
La section des règles système (getSimpleSystemSection()) inclut un accent de haut niveau sur : n'assister qu'avec des contextes de sécurité autorisés/défensifs ; refuser les modèles d'utilisation destructeurs/malicieux ; ne pas halluciner d'URL (sauf si clairement sûres/liées à la programmation) ; traiter les rappels système et les retours de hook comme des signaux de contrôle structurés ; surveiller l'injection de prompt dans les sorties d'outils ; et la compression automatique du contexte à mesure que l'historique s'allonge.
Les directives d'exécution des tâches (getSimpleDoingTasksSection()) contiennent des instructions fondamentales : effectuer un véritable travail d'ingénierie dans les fichiers, pas seulement donner des réponses abstraites ; lire le code avant de le modifier ; éviter les nouveaux fichiers inutiles ; éviter les refactorisations spéculatives ou le sur-ingénierie ; prioriser le code sécurisé ; diagnostiquer les échecs avant de changer d'approche ; et vérifier les résultats honnêtement (ne pas prétendre que les vérifications ont réussi quand ce n'est pas le cas). Il y a aussi un ensemble d'instructions supplémentaires pour les utilisateurs internes renforçant : l'état d'esprit collaboratif, les commentaires minimaux, et le rapport de vérification véridique.
Les directives d'exécution sûre (getActionsSection()) encadrent les actions par réversibilité + rayon d'impact. Modèle de conseil : actions locales/réversibles : généralement procéder ; actions destructrices, d'état partagé, ou difficiles à inverser : confirmer d'abord ; une approbation ponctuelle antérieure n'implique pas une approbation générale future ; enquêter sur un état inattendu avant de supprimer/écraser ; ne pas contourner les protections (par exemple, éviter les raccourcis comme --no-verify). Les exemples nécessitant une confirmation incluent les force-push.
📖 Lire la source complète : r/ClaudeAI
👀 See Also

EFF : L'administration Trump a riposté contre Anthropic pour avoir refusé de travailler sur des armes autonomes
Le Pentagone a puni Anthropic pour avoir refusé l'utilisation de ses modèles pour des armes autonomes ou la surveillance de masse, selon l'EFF, cela constitue des représailles inconstitutionnelles.

Neuf schémas d'échec courants des agents de codage IA et validation pré-exécution
Un post Reddit identifie neuf schémas d'échec spécifiques qui font souvent échouer les agents d'IA de codage, notamment la gestion incomplète des énumérations, les chemins nuls silencieux et les importations hallucinées. L'auteur rapporte que la mise en œuvre d'une passe de validation avant l'exécution permet de détecter environ 70 % de ces échecs.

Richard Dawkins conclut que l'IA est consciente — les experts contestent
Le biologiste évolutionniste Richard Dawkins, après de longues discussions avec Claude d'Anthropic et ChatGPT d'OpenAI, a conclu que les IA sont conscientes. La plupart des scientifiques cognitivistes sont en profond désaccord, parlant d'anthropomorphisme.

Les 4 000 suppressions d'emplois de Block soulèvent des inquiétudes concernant le blanchiment d'IA
Block a annoncé 4 000 suppressions d'emplois qui ont suscité des soupçons de blanchiment d'IA, l'article ayant généré 10 points et 3 commentaires sur Hacker News.