Aller au contenu principal
Architecture du systeme Claude

Analyse complete de l'architecture du systeme Claude

Assisté par IA

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 :

Architecture modulaire de Claude
Vue d'ensemble de l'architecture modulaire du systeme Claude

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 externesMCPDonner a Claude des « mains et des pieds » pour acceder aux bases de donnees, API et systemes de fichiers
Enseigner a Claude des workflows specifiquesSkillsPermettre a Claude de « savoir » comment travailler dans un domaine particulier
Traiter des tâches complexes en paralleleSubagentsDecomposer les grandes tâches en sous-tâches, avec plusieurs Agents travaillant simultanement
Declencher rapidement des operations repetitivesCommandsLancement en un clic des workflows courants, sans repeter les instructions
S'assurer que certaines operations s'executent toujoursHooksQuelle 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 → Repeter

The 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 :

CategorieOutilsDescription
LectureRead, Glob, GrepLecture de fichiers, correspondance de motifs, recherche de contenu
OperationWrite, Edit, BashEcriture de fichiers, edition, execution de commandes
ReseauWebSearch, WebFetchRecherche 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 :

CategorieExemple de contenu
Stack techniqueNext.js 14 + TypeScript, Tailwind CSS
Commandes de buildnpm run dev, npm run build, npm run test
Normes de codeConventions de nommage, configuration des outils de lint
Structure du projetDescription 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           # Documentation

Exemple 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 local

Ressources associees

RessourceDescription
claude-plugins-officialDepot officiel des plugins Anthropic
wshobson/agents24.3k etoiles, collection de modeles d'Agent de haute qualite
Claude Plugin HubMarketplace communautaire pour decouvrir des plugins
awesome-claude-code19.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 :

ModuleRole fonctionnelMode d'activation
MCPConnexion aux donnees et services externes (WHAT)Disponible apres configuration
SkillsConnaissance procedurale — enseigner a Claude comment faire (HOW)Correspondance automatique
SubagentsContexte independant, delegation de tâches en paralleleInvocation explicite
CommandsWorkflows repetitifs/cmd manuel
HooksControle deterministe, pilote par evenementsDeclenchement 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 :

CaracteristiqueDescription
Standard ouvertPublie en novembre 2024, donne a la Fondation Linux en decembre 2025
Adoption industrielleAdopte par OpenAI, Microsoft, Google, AWS et d'autres
Echelle de l'ecosystemePlus 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.

CaracteristiqueDescription
Mode de declenchementSaisir manuellement /command-name
Emplacement.claude/commands/
UtiliteWorkflows 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 tests

Ensuite, 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.

CategorieEvenementMoment de declenchement
OutilPreToolUseAvant l'execution de l'outil
PostToolUseApres l'execution reussie de l'outil
PostToolUseFailureApres l'echec de l'execution de l'outil
PermissionRequestLors d'une demande de permission
SessionSessionStartAu demarrage d'une session
SessionEndA la fin d'une session
StopLorsque Claude termine une reponse
SubagentSubagentStartAu demarrage d'un subagent
SubagentStopA l'arret d'un subagent
AutreUserPromptSubmitApres la soumission d'un prompt par l'utilisateur
NotificationEvenements de notification
PreCompactAvant 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 20

Fonctionnement : 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 sortie

Caracteristiques principales

CaracteristiqueDescription
Isolation du contexteChaque Subagent dispose d'un contexte independant, evitant la contamination
Specialisation des tâchesDes prompts systeme personnalises definissent des roles dedies
Controle des permissions d'outilsLes Subagents peuvent etre limites a des outils specifiques
Execution parallelePlusieurs 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 securite

Skills — 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

AvantageDescription
Efficacite en tokensLes metadonnees ne prennent que 30-50 tokens ; des dizaines de Skills peuvent etre actives simultanement
Activation automatiqueCorrespondance automatique basee sur le contexte de la tâche, sans declenchement manuel
ComposablePlusieurs Skills collaborent automatiquement
PortableExperience 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

RessourceDescription
Building Effective AgentsArticle fondamental sur l'architecture des Agents
Building agents with the Claude Agent SDKPratiques d'ingenierie de l'Agent SDK
Equipping Agents with Agent SkillsPhilosophie de conception des Skills
Introducing the Model Context ProtocolAnnonce de lancement de MCP

Documentation officielle

RessourceDescription
Skills explainedComparaison des Skills avec d'autres composants
Using CLAUDE.md FilesGuide d'utilisation de CLAUDE.md
Claude Code SubagentsDocumentation officielle des Subagents
Claude Code HooksDocumentation officielle des Hooks
MCP DocumentationDocumentation officielle de MCP
MCP SpecificationSpecification du protocole MCP

Analyses approfondies

RessourceDescription
Understanding Claude Code's Full StackInclut des diagrammes d'architecture
Claude Agent Skills: Deep DiveAnalyse approfondie du fonctionnement interne des Skills
How Claude Code is builtLes coulisses de la construction de Claude Code
Claude Skills vs. MCPComparaison technique entre Skills et MCP

Lectures complementaires

Si vous souhaitez approfondir les concepts et pratiques des Skills, consultez :

Commentaires

Table des matières