Claude Code — Maîtriser l'IA en CLI

10h (5 sessions de 2h)

Retour à la formation

01

MCP & Hooks

Connecter et automatiser Claude Code

MCP — Model Context Protocol

Claude Code peut communiquer avec des outils externes via MCP. Connectez vos services pour lire des données, exécuter des actions, et automatiser des workflows.

Exemples de MCP servers

Gestion projet

  • Trello — lire les cartes et listes
  • Jira — accès aux issues et sprints
  • Linear — sync des tickets
  • YouTrack — gestion des tâches

Base de données

  • Prisma — ORM et migrations
  • Supabase — PostgreSQL cloud
  • PostgreSQL — requêtes directes
  • MongoDB — collections et données

Documentation

  • Notion — pages et databases
  • Confluence — wikis et documents
  • GitHub — issues, PRs, repos

Design & Infra

  • Figma — specs et assets
  • AWS — ressources cloud
  • Stripe — facturation et paiements

Configuration MCP

Dans ~/.claude/settings.json ou .claude/settings.json (repo)

{
  "mcpServers": {
    "trello": {
      "command": "npx",
      "args": ["mcp-server-trello"],
      "env": {
        "TRELLO_API_KEY": "votre_clé",
        "TRELLO_TOKEN": "votre_token"
      }
    }
  }
}

Workflow avec MCP

  1. 1Claude lit le ticket depuis votre outil (Trello, Jira, Linear...)
  2. 2Analyse le contexte et les specs du projet
  3. 3Implémente le code selon vos conventions
  4. 4Crée la branche, commit et ouvre une PR
  5. 5Vous n'avez qu'à reviewer et merge

02

Hooks

Automatiser les actions post-édition

C'est quoi ?

Les hooks sont des commandes shell exécutées automatiquement APRÈS certaines actions de Claude Code. Formatage, linting, tests : tout s'exécute sans intervention manuelle.

Configuration des hooks

Dans ~/.claude/settings.json ou .claude/settings.json (repo)

{
  "hooks": {
    "postToolUse": [
      {
        "name": "prettier",
        "command": "npx prettier --write ."
      },
      {
        "name": "eslint",
        "command": "npx eslint --fix ."
      }
    ]
  }
}

Exemples de hooks

Formatage auto

  • Prettier (JS/TS/CSS)
  • Black (Python)
  • Gofmt (Go)
  • RustFmt (Rust)

Linting

  • ESLint (JS/TS)
  • Ruff (Python)
  • Golangci-lint (Go)
  • Clippy (Rust)

Tests

  • Jest (JavaScript)
  • Pytest (Python)
  • Go test (Go)
  • Cargo test (Rust)

Validation

  • TypeScript (tsc)
  • Type checking (pyright)
  • Build scripts
  • Secrets scan

Où mettre les hooks

Global (tous les projets)

~/.claude/settings.json

  • Hooks cross-stack (prettier, eslint)
  • Vérifications communes
  • Secrets scan universel

Par projet

.claude/settings.json

  • Hooks spécifiques au stack
  • Tests du projet
  • Commands de build perso

Règle importante

Les hooks s'exécutent dans le répertoire du projet. Mettez les hooks spécifiques au stack dans le settings.json du repo, pas dans le global.