Analyse complete de l'architecture du systeme Claude
Comprendre en profondeur le positionnement, l'intention de conception et les synergies des composants MCP, Skills, Subagents, Hooks et Plugins dans le systeme Claude
Introduction
En septembre 2025, Anthropic a realise une levee de fonds de 13 milliards de dollars avec une valorisation de 183 milliards de dollars, devenant ainsi la quatrieme plus grande entreprise privee au monde. Son produit phare, Claude Code, a attire 115 000 developpeurs actifs depuis son lancement en fevrier, traitant 195 millions de lignes de code par semaine, avec une croissance des utilisateurs de 300 %.
Plus fascinant encore, Dario Amodei, PDG d'Anthropic, a revele : 90 % du code de Claude Code est ecrit par lui-meme.
Comment est-ce possible ?
Comment un assistant de programmation IA peut-il « s'ecrire lui-meme » ? Qu'est-ce qui rend son architecture si unique pour lui permettre d'assister — voire de remplacer — aussi efficacement les developpeurs humains ?
The key design principle behind Claude Code is that Claude needs the same tools that programmers use every day. By giving Claude access to the user's computer (via the terminal), it had what it needed to write code like programmers do.
La reponse se trouve dans l'architecture modulaire de Claude : MCP fournit les outils, Skills enseigne comment les utiliser, Subagents execute les tâches en parallele, et Hooks assure un controle deterministe — ces composants collaborent pour donner a Claude la capacite de « travailler comme un programmeur ».
Cet article vous offre une vue d'ensemble de cette architecture — le positionnement de chaque composant, leurs synergies, et des exemples de configuration pour demarrer rapidement. Les articles suivants approfondiront les details de chaque composant.
Vue d'ensemble de l'architecture
Le systeme Claude utilise une architecture modulaire ou les composants sont classes par fonction et fonctionnent comme des collaborateurs complementaires plutôt que des dependances hierarchiques :

Point essentiel : ces composants sont des extensions complementaires de meme niveau, et non des dependances hierarchiques — vous pouvez les combiner librement selon vos besoins :
| Vous souhaitez... | Utiliser... | Description en une phrase |
|---|---|---|
| Connecter des sources de donnees et services externes | MCP | Donner a Claude des « mains et des pieds » pour acceder aux bases de donnees, API et systemes de fichiers |
| Enseigner a Claude des workflows specifiques | Skills | Permettre a Claude de « savoir » comment travailler dans un domaine particulier |
| Traiter des tâches complexes en parallele | Subagents | Decomposer les grandes tâches en sous-tâches, avec plusieurs Agents travaillant simultanement |
| Declencher rapidement des operations repetitives | Commands | Lancement en un clic des workflows courants, sans repeter les instructions |
| S'assurer que certaines operations s'executent toujours | Hooks | Quelle que soit la decision de Claude, cette etape doit s'executer |
Environnement d'execution principal
Agent SDK — Le moteur d'execution
Agent SDK est le moteur d'execution central de l'ensemble du systeme Claude Agent, fournissant :
- Boucle principale (Main Loop) : le cycle de travail central de l'Agent
- Gestion du contexte : budgets de tokens, compression automatique (declenchee a 92 % d'utilisation)
- Repartition des outils : decision de l'outil a utiliser et comment l'executer
- Systeme de permissions : controle des droits d'acces aux outils
Le mode de fonctionnement principal de l'Agent est une simple boucle de retroaction :
Collecter le contexte → Executer les actions → Verifier le travail → RepeterThe agent harness that powers Claude Code (the Claude Code SDK) can power many other types of agents too. To reflect this broader vision, we renamed the Claude Code SDK to the Claude Agent SDK.
Built-in Tools — Outils natifs
Claude Agent integre plus de 20 outils natifs, repartis en trois categories :
| Categorie | Outils | Description |
|---|---|---|
| Lecture | Read, Glob, Grep | Lecture de fichiers, correspondance de motifs, recherche de contenu |
| Operation | Write, Edit, Bash | Ecriture de fichiers, edition, execution de commandes |
| Reseau | WebSearch, WebFetch | Recherche web, recuperation de pages web |
Ces outils sont disponibles par defaut, sans configuration supplementaire. Claude interagit avec l'ordinateur a travers ces outils, exactement comme un programmeur utilise un IDE.
Configuration et contexte
CLAUDE.md — Contexte persistant
A chaque nouvelle conversation, vous deviez repeter le contexte du projet, les normes de codage, les conventions d'architecture... CLAUDE.md permet de configurer une seule fois et charger automatiquement.
CLAUDE.md est comme un README pour l'IA — il informe Claude du contexte du projet, des methodes de travail et des conventions.
Hierarchie de priorite
Claude charge les fichiers CLAUDE.md dans l'ordre suivant, les fichiers les plus specifiques ayant la priorite la plus elevee :
Enterprise (plus basse)
↓
User (~/.claude/CLAUDE.md)
↓
Project (./CLAUDE.md)
↓
Module (./src/module/CLAUDE.md) (plus haute)Contenu recommande
CLAUDE.md devrait inclure les informations essentielles suivantes :
| Categorie | Exemple de contenu |
|---|---|
| Stack technique | Next.js 14 + TypeScript, Tailwind CSS |
| Commandes de build | npm run dev, npm run build, npm run test |
| Normes de code | Conventions de nommage, configuration des outils de lint |
| Structure du projet | Description de l'utilite des repertoires cles |
Principe cle : restez concis. CLAUDE.md est charge a chaque conversation — un fichier trop long gaspille de precieux tokens.
Packaging et distribution
Plugins — Unites installables
Les configurations d'equipe sont dispersees, difficiles a partager et a standardiser. Chacun a son propre ensemble de Skills, Commands, Hooks... Comment unifier la gestion ?
Les Plugins regroupent Skills + Commands + Subagents + Hooks + MCP en unites installables, permettant une distribution en un clic et la standardisation au sein de l'equipe.
Structure de repertoire
my-plugin/
├── .claude-plugin/
│ └── plugin.json # Manifeste du plugin (requis)
├── commands/ # Slash Commands
├── agents/ # Subagents
├── skills/ # Skills
├── hooks/ # Configuration des Hooks
├── .mcp.json # Configuration du serveur MCP
└── README.md # DocumentationExemple de configuration
// plugin.json
{
"name": "frontend-toolkit",
"version": "1.0.0",
"description": "Boite a outils de developpement frontend",
"author": "Your Team"
}# Methodes d'installation
claude plugin install github:your-org/your-plugin # Depuis GitHub
claude plugin install /path/to/plugin # Depuis un chemin localRessources associees
| Ressource | Description |
|---|---|
| claude-plugins-official | Depot officiel des plugins Anthropic |
| wshobson/agents | 24.3k etoiles, collection de modeles d'Agent de haute qualite |
| Claude Plugin Hub | Marketplace communautaire pour decouvrir des plugins |
| awesome-claude-code | 19.3k etoiles, liste organisee de ressources Claude Code |
Capacites d'extension (modules complementaires)
Les capacites d'extension du systeme Claude sont composees de plusieurs modules complementaires, chacun avec un role distinct, fonctionnant en synergie :
| Module | Role fonctionnel | Mode d'activation |
|---|---|---|
| MCP | Connexion aux donnees et services externes (WHAT) | Disponible apres configuration |
| Skills | Connaissance procedurale — enseigner a Claude comment faire (HOW) | Correspondance automatique |
| Subagents | Contexte independant, delegation de tâches en parallele | Invocation explicite |
| Commands | Workflows repetitifs | /cmd manuel |
| Hooks | Controle deterministe, pilote par evenements | Declenchement automatique |
MCP — Connectivite externe
Philosophie de conception
Even the most sophisticated models are constrained by their isolation from data—trapped behind information silos and legacy systems.
Dans l'approche traditionnelle, chaque source de donnees externe necessite une integration sur mesure, conduisant a un cauchemar d'integration N-fois-M. MCP fournit un protocole standardise pour integrer une fois, utiliser partout.
MCP (Model Context Protocol) est concu comme le port USB-C des applications IA :
| Caracteristique | Description |
|---|---|
| Standard ouvert | Publie en novembre 2024, donne a la Fondation Linux en decembre 2025 |
| Adoption industrielle | Adopte par OpenAI, Microsoft, Google, AWS et d'autres |
| Echelle de l'ecosysteme | Plus de 97 millions de telechargements mensuels du SDK, des milliers de serveurs communautaires |
Modele d'architecture
┌─────────────────┐
│ MCP Host │ (Claude Desktop, IDE, outils IA)
│ (Main Agent) │
└────────┬────────┘
│ 1:N
┌────┴────┬────────┬────────┐
│ Client │ Client │ Client │ (clients de protocole)
└────┬────┴────┬───┴────┬───┘
│ │ │
┌────┴────┐ ┌──┴───┐ ┌─┴────┐
│ Server │ │Server│ │Server│ (expose des capacites specifiques)
│ GitHub │ │ DB │ │ Slack│
└─────────┘ └──────┘ └──────┘Cas d'utilisation : connexion a des bases de donnees, integration de services tiers (GitHub, Slack, Notion), acces a des API privees, traitement de flux de donnees en temps reel.
Exemple de configuration
Creez .mcp.json a la racine du projet :
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
}
}
}Commands — Workflows manuels
Les Slash Commands fournissent des workflows repetitifs a declenchement manuel.
| Caracteristique | Description |
|---|---|
| Mode de declenchement | Saisir manuellement /command-name |
| Emplacement | .claude/commands/ |
| Utilite | Workflows repetitifs, operations standardisees |
Exemple : creez .claude/commands/review.md
Veuillez effectuer une revue de code sur les modifications en cours, en vous concentrant sur :
1. Le style et la coherence du code
2. Les problemes de performance potentiels
3. Les vulnerabilites de securite
4. La couverture des testsEnsuite, saisissez /review pour le declencher.
Hooks — Controle deterministe
Les Hooks sont au coeur du controle deterministe — certaines operations doivent s'executer et ne peuvent pas dependre du jugement du LLM.
| Categorie | Evenement | Moment de declenchement |
|---|---|---|
| Outil | PreToolUse | Avant l'execution de l'outil |
PostToolUse | Apres l'execution reussie de l'outil | |
PostToolUseFailure | Apres l'echec de l'execution de l'outil | |
PermissionRequest | Lors d'une demande de permission | |
| Session | SessionStart | Au demarrage d'une session |
SessionEnd | A la fin d'une session | |
Stop | Lorsque Claude termine une reponse | |
| Subagent | SubagentStart | Au demarrage d'un subagent |
SubagentStop | A l'arret d'un subagent | |
| Autre | UserPromptSubmit | Apres la soumission d'un prompt par l'utilisateur |
Notification | Evenements de notification | |
PreCompact | Avant la compression du contexte |
Exemple de configuration
Formatage automatique des fichiers TypeScript :
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "jq -r '.tool_input.file_path' | { read f; [[ $f == *.ts ]] && npx prettier --write \"$f\"; }"
}
]
}
]
}
}En pratique : boucle autonome
Ralph Wiggum est un plugin officiel d'Anthropic qui utilise le hook Stop pour implementer une boucle d'iteration autonome :
/ralph-loop "Implementer une API TODO avec CRUD et tests" --max-iterations 20Fonctionnement : le hook Stop intercepte la sortie de Claude, reinjecte le prompt original et continue l'iteration jusqu'a ce que la tâche soit terminee ou que le nombre maximum d'iterations soit atteint.
Cas d'utilisation ideaux : tâches necessitant plusieurs iterations (passage de tests, refactoring de code) et tâches disposant de moyens de verification automatique.
Subagents — Delegation de tâches et execution parallele
Philosophie de conception
Un Agent unique fait face a des defis : fenetre de contexte limitee, impossibilite de paralleliser, responsabilites floues. Les Subagents adoptent le modele d'architecture Orchestrator-Worker pour resoudre ces problemes :
Main Agent (Orchestrateur)
├── Analyser la demande utilisateur
├── Formuler un plan
├── Decomposer les tâches
└── Generer des subagents specialises
↓
┌────────┬────────┬────────┐
│ Sub 1 │ Sub 2 │ Sub 3 │ (Workers - execution parallele)
│ Code │ Tests │ Docs │
└────────┴────────┴────────┘
↓
Agreger les resultats → L'agent principal synthetise la sortieCaracteristiques principales
| Caracteristique | Description |
|---|---|
| Isolation du contexte | Chaque Subagent dispose d'un contexte independant, evitant la contamination |
| Specialisation des tâches | Des prompts systeme personnalises definissent des roles dedies |
| Controle des permissions d'outils | Les Subagents peuvent etre limites a des outils specifiques |
| Execution parallele | Plusieurs Subagents travaillent simultanement |
Donnees de performance : les systemes multi-agents surpassent les agents uniques de 90,2 %, et la parallelisation peut reduire le temps de recherche de 90 % (la consommation de tokens est d'environ 15x, mais cela en vaut la peine pour les tâches complexes).
Exemple de configuration
Creez un fichier Markdown dans .claude/agents/ :
---
name: Code Reviewer
description: Un subagent specialise dans la revue de code
tools:
- Read
- Grep
- Glob
---
Vous etes un expert senior en revue de code. Concentrez-vous sur :
1. La qualite du code et sa maintenabilite
2. Les bugs potentiels et les cas limites
3. Les opportunites d'optimisation de performance
4. Les vulnerabilites de securiteSkills — Connaissances procedurales
Philosophie de conception
Claude is powerful, but real work requires procedural knowledge and organizational context.
Les Skills sont des manuels de travail reutilisables pour l'IA — des packages de connaissances modulaires que Claude peut charger dynamiquement a la demande. Le principe de conception central est la divulgation progressive (Progressive Disclosure) :
📚 Manuel de Skills
│
├─ 📋 Table des matieres ──── [Couche de metadonnees] Prechargee au demarrage (~30-50 tokens)
│ name: "weekly-report"
│ description: "Generer des rapports hebdomadaires standardises"
│
├─ 📖 Contenu principal ────── [Couche de documentation centrale] Chargee quand pertinent (~centaines a milliers de tokens)
│ # Weekly Report Generator
│ ## Instructions
│ Generer des rapports hebdomadaires selon cette structure...
│
└─ 📎 Annexe ────────────── [Couche de ressources de reference] Chargee a la demande
references/
├── template.xlsx
└── examples/MCP vs Skills : MCP donne a Claude la capacite d'acceder aux outils (WHAT), tandis que Skills enseigne a Claude comment utiliser efficacement ces outils (HOW).
Avantages principaux
| Avantage | Description |
|---|---|
| Efficacite en tokens | Les metadonnees ne prennent que 30-50 tokens ; des dizaines de Skills peuvent etre actives simultanement |
| Activation automatique | Correspondance automatique basee sur le contexte de la tâche, sans declenchement manuel |
| Composable | Plusieurs Skills collaborent automatiquement |
| Portable | Experience coherente a travers Claude.ai, Claude Code et l'API |
Exemple de configuration
Creez un repertoire dans .claude/skills/ :
my-skill/
├── SKILL.md # Instructions principales (requis)
├── scripts/ # Scripts executables (optionnel)
└── references/ # Materiaux de reference (optionnel)Structure principale de SKILL.md :
---
name: code-review # Nom du Skill
description: Revue de code pour la qualite et la securite # Description concise (utilisee pour la correspondance automatique)
---
# Code Review Skill
## Instructions
[Instructions detaillees etape par etape...]
## Output Format
[Exigences de format de sortie...]Point cle : la description dans le frontmatter est utilisee pour la correspondance automatique — restez concis et precis.
References officielles
Philosophie de conception
| Ressource | Description |
|---|---|
| Building Effective Agents | Article fondamental sur l'architecture des Agents |
| Building agents with the Claude Agent SDK | Pratiques d'ingenierie de l'Agent SDK |
| Equipping Agents with Agent Skills | Philosophie de conception des Skills |
| Introducing the Model Context Protocol | Annonce de lancement de MCP |
Documentation officielle
| Ressource | Description |
|---|---|
| Skills explained | Comparaison des Skills avec d'autres composants |
| Using CLAUDE.md Files | Guide d'utilisation de CLAUDE.md |
| Claude Code Subagents | Documentation officielle des Subagents |
| Claude Code Hooks | Documentation officielle des Hooks |
| MCP Documentation | Documentation officielle de MCP |
| MCP Specification | Specification du protocole MCP |
Analyses approfondies
| Ressource | Description |
|---|---|
| Understanding Claude Code's Full Stack | Inclut des diagrammes d'architecture |
| Claude Agent Skills: Deep Dive | Analyse approfondie du fonctionnement interne des Skills |
| How Claude Code is built | Les coulisses de la construction de Claude Code |
| Claude Skills vs. MCP | Comparaison technique entre Skills et MCP |
Lectures complementaires
Si vous souhaitez approfondir les concepts et pratiques des Skills, consultez :
- Qu'est-ce que Claude Skills — Explication detaillee des principes fondamentaux des Skills
- Guide pratique de Claude Skills — Creez votre premier Skill pas a pas
- Guide complet de Claude Subagent — Utilisation et personnalisation des subagents
- Analyse approfondie de GSD — Un systeme de programmation IA base sur l'ingenierie de contexte
- Mes bonnes pratiques Claude Code — Conseils pour l'utilisation quotidienne de Claude Code
Commentaires
Documentation
Documentation complète sur Claude Skills et le développement piloté par les spécifications — maîtrisez les derniers paradigmes de l'assistant IA et de la programmation
Qu'est-ce que Claude Skills
Plongée approfondie dans les principes fondamentaux de Claude Skills : comment les manuels d'IA réutilisables atteignent l'efficacité en tokens et la composabilité grâce à la divulgation progressive