Retour aux articles
11 MIN READ

Claude Code Channels : Contrôlez votre Agent IA via Telegram et Discord

By Learnia AI Research Team

Claude Code Channels : Contrôlez votre Agent IA depuis Telegram et Discord

Anthropic vient de lancer Claude Code Channels — une fonctionnalité en research preview qui permet de pousser des messages, des alertes et des webhooks directement dans votre session Claude Code en cours d'exécution depuis des plateformes externes comme Telegram et Discord.

Au lieu d'être enchaîné à votre terminal, vous pouvez désormais envoyer des messages à Claude Code depuis votre téléphone, transmettre automatiquement les échecs de CI, ou relayer des alertes de monitoring — le tout via le Model Context Protocol (MCP).


1. Que sont les Claude Code Channels ?

Un channel est un serveur MCP qui pousse des événements dans votre session Claude Code en cours d'exécution. Contrairement aux outils MCP classiques que Claude appelle activement, les channels sont réactifs : des événements externes arrivent et Claude y répond en temps réel.

Les channels peuvent être unidirectionnels (alertes et webhooks que Claude lit et sur lesquels il agit) ou bidirectionnels (ponts de chat où Claude peut répondre via la même plateforme).

Ce qui est inclus dans la Research Preview

ChannelTypeCas d'usage
TelegramBidirectionnelEnvoyez des messages à Claude Code depuis votre téléphone
DiscordBidirectionnelCollaboration d'équipe avec Claude Code
FakechatBidirectionnelUI de démo locale sur localhost
Webhook personnaliséUni ou bidirectionnelCI, monitoring, tout HTTP POST

Prérequis : Claude Code v2.1.80+, connexion claude.ai (Pro/Max/Team/Enterprise). L'authentification par clé API n'est pas supportée. Les organisations Team/Enterprise doivent avoir les channels activés par un administrateur.


2. Comment fonctionnent les Channels : Architecture

Lorsque vous démarrez Claude Code avec --channels, il lance votre plugin channel comme un sous-processus et communique avec lui via stdio. Le serveur channel fait le pont entre les plateformes externes et votre session locale.

Loading diagram…

Le point essentiel est que tout s'exécute localement. Votre plugin channel tourne sur votre machine, interroge l'API de la plateforme externe et transmet les messages à Claude via des notifications MCP. Pas d'URL à exposer, pas de serveur à déployer.


3. Démarrage rapide : Démo Fakechat

Avant de connecter Telegram ou Discord, essayez la démo intégrée fakechat. Elle lance une interface de chat sur localhost — rien à authentifier, aucun service externe nécessaire.

Prérequis

  • Claude Code installé et authentifié avec un compte claude.ai
  • Bun installé (les plugins channel sont des scripts Bun)

Configuration pas à pas

1. Installez le plugin fakechat :

# Dans une session Claude Code
/plugin install fakechat@claude-plugins-official

2. Redémarrez avec le channel activé :

claude --channels plugin:fakechat@claude-plugins-official

3. Ouvrez l'interface de chat à http://localhost:8787 et envoyez un message :

qu'est-ce qu'il y a dans mon répertoire de travail ?

Le message arrive dans votre session Claude Code enveloppé dans une balise <channel>. Claude le lit, effectue le travail et répond via l'interface de chat.


4. Configurer le Channel Telegram

C'est ici que les Channels deviennent vraiment puissants — codez de n'importe où en envoyant un message à votre bot Telegram.

Étape 1 : Créer un Bot Telegram

  1. Ouvrez BotFather dans Telegram
  2. Envoyez /newbot
  3. Donnez-lui un nom d'affichage et un nom d'utilisateur unique se terminant par bot
  4. Copiez le token que BotFather vous renvoie

Étape 2 : Installer et configurer

# Dans Claude Code
/plugin install telegram@claude-plugins-official

# Configurez avec votre token de bot
/telegram:configure <VOTRE_TOKEN_BOT>

Le token est sauvegardé dans .claude/channels/telegram/.env. Vous pouvez aussi définir la variable d'environnement TELEGRAM_BOT_TOKEN.

Étape 3 : Lancer avec les Channels

claude --channels plugin:telegram@claude-plugins-official

Étape 4 : Associer votre compte

  1. Ouvrez Telegram et envoyez n'importe quel message à votre bot
  2. Le bot répond avec un code d'association
  3. Dans Claude Code, exécutez :
/telegram:access pair <code>
  1. Verrouillez l'accès :
/telegram:access policy allowlist

Désormais, seul votre compte Telegram peut envoyer des messages à Claude. Tous les autres sont silencieusement ignorés.


5. Configurer le Channel Discord

La configuration de Discord suit le même schéma que Telegram.

Étape 1 : Créer un Bot Discord

  1. Allez sur le Portail Développeur Discord
  2. Créez une nouvelle application
  3. Allez dans BotAdd Bot
  4. Copiez le token du bot
  5. Activez Message Content Intent sous Privileged Intents
  6. Invitez le bot sur votre serveur avec les permissions appropriées

Étape 2 : Installer, configurer et lancer

# Dans Claude Code
/plugin install discord@claude-plugins-official

# Configurez avec votre token de bot
/discord:configure <VOTRE_TOKEN_BOT>

# Lancez avec le channel
claude --channels plugin:discord@claude-plugins-official

Étape 3 : Association

Envoyez un DM à votre bot sur Discord, obtenez le code d'association, puis :

/discord:access pair <code>
/discord:access policy allowlist

Plusieurs channels : Vous pouvez passer plusieurs plugins à --channels, séparés par des espaces :

claude --channels plugin:telegram@claude-plugins-official plugin:discord@claude-plugins-official

6. Construire un Channel Webhook personnalisé

La vraie puissance des Channels est que tout système capable d'envoyer un HTTP POST peut pousser des événements vers Claude. Voici comment construire un récepteur de webhook en un seul fichier.

Channel unidirectionnel minimal

Créez un fichier webhook.ts :

#!/usr/bin/env bun
import { Server } from '@modelcontextprotocol/sdk/server/index.js'
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'

const mcp = new Server(
  { name: 'webhook', version: '0.0.1' },
  {
    capabilities: { experimental: { 'claude/channel': {} } },
    instructions: 'Les événements du webhook arrivent comme <channel source="webhook">. Lis-les et agis en conséquence.',
  },
)

await mcp.connect(new StdioServerTransport())

Bun.serve({
  port: 8788,
  hostname: '127.0.0.1',
  async fetch(req) {
    const body = await req.text()
    await mcp.notification({
      method: 'notifications/claude/channel',
      params: {
        content: body,
        meta: { path: new URL(req.url).pathname, method: req.method },
      },
    })
    return new Response('ok')
  },
})

Enregistrement dans .mcp.json

{
  "mcpServers": {
    "webhook": { "command": "bun", "args": ["./webhook.ts"] }
  }
}

Tester

# Démarrez Claude Code (les channels personnalisés nécessitent le flag dev pendant la preview)
claude --dangerously-load-development-channels server:webhook

# Dans un autre terminal, simulez un échec CI
curl -X POST localhost:8788 -d "build failed on main: https://ci.example.com/run/1234"

Le payload arrive dans le contexte de Claude sous forme de :

<channel source="webhook" path="/" method="POST">
  build failed on main: https://ci.example.com/run/1234
</channel>

Claude le voit et commence à investiguer — lecture de fichiers, exécution de commandes, selon ce que l'alerte nécessite.


7. Cas d'usage concrets

Alertes de pipeline CI/CD

Poussez les échecs de build directement vers Claude pour une investigation automatique :

# Dans votre pipeline CI (GitHub Actions, GitLab CI, etc.)
curl -X POST localhost:8788 \
  -d "Build #${BUILD_NUMBER} échoué : ${BUILD_URL}"

Claude reçoit l'alerte et peut immédiatement commencer à débuguer — lecture des logs, vérification des commits récents, et suggestion de correctifs.

Monitoring et alertes

Transmettez les alertes de production pour que Claude puisse les analyser pendant votre absence :

# Depuis votre système de monitoring
curl -X POST localhost:8788 \
  -H "Content-Type: text/plain" \
  -d "ALERTE : Utilisation mémoire > 90% sur prod-server-3. Tendance 5 min : 85%, 87%, 89%, 91%, 92%"

Collaboration d'équipe via Discord

Configurez un canal Discord dédié où les membres de l'équipe peuvent assigner des tâches à Claude :

  • "Claude, review la PR #1234 et vérifie les problèmes de sécurité"
  • "Lance la suite de tests et reporte les échecs"
  • "Qu'est-ce qui a changé dans le module d'authentification depuis le dernier déploiement ?"

Workflow de développement mobile

Envoyez des messages à Claude depuis votre téléphone via Telegram pendant vos déplacements :

  • "Crée une nouvelle branche pour la page de préférences utilisateur"
  • "Quels tests échouent actuellement ?"
  • "Commite et push les changements actuels avec un message descriptif"

8. Contrôles Enterprise

Pour les plans Team et Enterprise, les administrateurs contrôlent la disponibilité des channels via le paramètre channelsEnabled dans les managed settings. Une fois activé, chaque utilisateur opte individuellement par session avec --channels.

Être dans .mcp.json ne suffit pas pour pousser des messages — un serveur doit également être nommé dans --channels.


9. Channels vs OpenClaw : La concurrence

Claude Code Channels arrive comme concurrent direct d'OpenClaw (anciennement Clawd), le projet open-source populaire qui permet de contrôler Claude Code depuis des plateformes de messagerie. Différences clés :

Claude Code ChannelsOpenClaw
SourceFonctionnalité officielle AnthropicProjet open-source communautaire
PlateformesTelegram, Discord (research preview)Telegram, Discord, Slack, plus
IntégrationIntégré dans Claude Code via --channelsWrapper externe autour de Claude Code
SécuritéListe d'autorisation avec flux d'associationMaintenu par la communauté
Channels customTout serveur MCPArchitecture de plugins
StatutResearch preview (peut évoluer)Prêt pour la production

10. Limitations et perspectives

Comme il s'agit d'une research preview, gardez ces limitations à l'esprit :

  • La session doit être en cours : Les événements n'arrivent que lorsque Claude Code est actif. Pour une configuration permanente, utilisez un terminal persistant (tmux, screen) ou un processus en arrière-plan
  • Liste d'autorisation uniquement : Pendant la preview, --channels n'accepte que les plugins de la liste maintenue par Anthropic. Les channels personnalisés nécessitent --dangerously-load-development-channels
  • Authentification : Nécessite une connexion claude.ai. L'auth par clé API ou Console n'est pas supportée
  • Demandes de permission : Si Claude rencontre une demande de permission pendant votre absence, la session se met en pause jusqu'à votre approbation locale
  • La syntaxe peut évoluer : Le flag --channels et le contrat du protocole peuvent évoluer en fonction des retours

Articles connexes

GO DEEPER — FREE GUIDE

Module 0 — Prompting Fundamentals

Build your first effective prompts from scratch with hands-on exercises.

Newsletter

Weekly AI Insights

Tools, techniques & news — curated for AI practitioners. Free, no spam.

Free, no spam. Unsubscribe anytime.

FAQ

Que sont les Claude Code Channels ?+

Claude Code Channels est une fonctionnalité en research preview (v2.1.80+) qui permet aux serveurs MCP de pousser des messages, alertes et webhooks dans votre session Claude Code en cours d'exécution. Elle supporte actuellement Telegram, Discord et des channels webhook personnalisés.

Comment configurer Claude Code Channels avec Telegram ?+

Créez un bot via BotFather, installez le plugin Telegram avec '/plugin install telegram@claude-plugins-official', configurez votre token avec '/telegram:configure <token>', puis redémarrez Claude Code avec '--channels plugin:telegram@claude-plugins-official'.

Claude Code Channels est-il gratuit ?+

Les Channels nécessitent une connexion claude.ai (Pro, Max, Team ou Enterprise). L'authentification par clé API ou Console n'est pas supportée. Les organisations Team et Enterprise doivent avoir les channels activés par un administrateur.

Puis-je créer mon propre Channel Claude Code personnalisé ?+

Oui. Un channel est n'importe quel serveur MCP qui déclare la capability 'claude/channel'. Vous pouvez créer des channels unidirectionnels pour les webhooks/alertes ou bidirectionnels avec des outils de réponse. Utilisez '--dangerously-load-development-channels' pour tester les channels personnalisés pendant la research preview.

Quelle est la différence entre Claude Code Channels et Remote Control ?+

Remote Control connecte votre session terminal à claude.ai pour un accès navigateur ou mobile. Les Channels transmettent des événements externes (messages chat, alertes CI, webhooks) vers votre session via des serveurs MCP, permettant à Claude de réagir à ce qui se passe en dehors du terminal.

Les Claude Code Channels fonctionnent-ils en arrière-plan ?+

Les événements n'arrivent que lorsque la session est ouverte. Pour une configuration permanente, exécutez Claude Code dans un processus en arrière-plan ou un terminal persistant (par exemple, tmux ou screen).