본문으로 건너뛰기

Channels — 메신저 연동

터미널 앞에 없어도 Telegram, Discord, iMessage에서 Claude Code에 작업을 지시하고, 결과를 같은 채팅으로 받을 수 있습니다.

[텔레그램 앱] ──DM──► [텔레그램 봇] ──MCP──► [Claude Code 세션] ──► [파일/터미널 작업]
◄────────────────────────────── [결과 응답]
Research Preview

Channels는 v2.1.80부터 사용 가능한 research preview 기능입니다. --channels 플래그 문법과 프로토콜은 변경될 수 있습니다.

Remote Control과의 차이

기능Remote ControlChannels
방향기존 세션을 모바일에서 이어서 조작외부 메시지를 세션에 push
인터페이스claude.ai/code 또는 모바일 앱Telegram, Discord, iMessage
용도진행 중인 작업 모니터링/지시채팅에서 작업 요청, 웹훅 수신

사전 준비

준비물설명
Claude Code v2.1.80+claude --version으로 확인
claude.ai 로그인API 키/Console 인증 미지원
Bun 런타임플러그인 서버 실행에 필요
메신저 앱Telegram, Discord, 또는 iMessage
# Bun 설치 (macOS/Linux)
curl -fsSL https://bun.sh/install | bash

# Windows (PowerShell 관리자 권한)
powershell -c "irm bun.sh/install.ps1 | iex"

# 확인
bun --version

지원 채널

Telegram

  1. 봇 생성: 텔레그램에서 @BotFather → /newbot → 이름/사용자명(bot으로 끝나야 함) → API 토큰 복사

  2. 플러그인 설치:

/plugin install telegram@claude-plugins-official
플러그인이 안 보이면

/plugin marketplace update claude-plugins-official 실행 후 다시 시도하세요.

  1. 토큰 등록:
/telegram:configure <발급받은_토큰>
  1. Channels 모드로 재시작:
claude --channels plugin:telegram@claude-plugins-official
  1. 기기 페어링: 봇에게 DM → 6자리 코드 수신 → 터미널에서 승인:
/telegram:access pair <코드>
/telegram:access policy allowlist

Discord

  1. 봇 생성: Discord Developer Portal → New Application → Bot → Reset Token
  2. Message Content Intent 활성화: Bot settings → Privileged Gateway Intents
  3. 서버 초대: OAuth2 → URL Generator → bot 스코프 + 권한 (View Channels, Send Messages, Read Message History, Attach Files, Add Reactions)
  4. 플러그인 설치 및 설정:
/plugin install discord@claude-plugins-official
/discord:configure <토큰>
claude --channels plugin:discord@claude-plugins-official

iMessage (macOS 전용)

별도 봇 토큰 없이 Messages 데이터베이스를 직접 읽고, AppleScript로 답장합니다.

/plugin install imessage@claude-plugins-official
claude --channels plugin:imessage@claude-plugins-official

macOS 설정에서 전체 디스크 접근 권한을 터미널에 부여해야 합니다.

보안 설정

접근 제어

모든 채널은 sender allowlist로 보호됩니다. 허용된 ID만 메시지를 보낼 수 있고, 나머지는 무시됩니다.

# 현재 상태 확인
/telegram:access

# 정책 변경
/telegram:access policy allowlist # 허용 목록만 (기본 권장)
/telegram:access policy pairing # 새 사용자 추가 시 임시
/telegram:access policy disabled # 봇 비활성화

# 사용자 직접 추가/제거
/telegram:access allow <사용자ID>
/telegram:access remove <사용자ID>
allowlist 권한 = 세션 권한

allowlist에 있는 사용자는 채널을 통해 권한 프롬프트에 승인/거부할 수도 있습니다. 신뢰할 수 있는 사용자만 추가하세요.

그룹 채팅

DM과 그룹은 독립적으로 관리됩니다:

# 그룹 등록 (멘션 시에만 반응)
/telegram:access group add <그룹ID>

# 모든 메시지에 반응
/telegram:access group add <그룹ID> --no-mention

# 특정 멤버만 허용
/telegram:access group add <그룹ID> --allow 111111,222222

Enterprise 환경

Team/Enterprise 플랜에서는 Channels가 기본 비활성화입니다.

  • 관리자가 claude.ai Admin Settings에서 channelsEnabled: true 설정 필요
  • allowedChannelPlugins로 허용 플러그인 목록 제한 가능
  • Pro/Max 사용자는 조직 없이 바로 사용 가능

핵심 동작 원리

세션 = 봇의 생명줄

세션 열림   → 봇 연결됨   → 메시지 처리 가능
세션 닫힘 → 봇 응답 없음
새 세션 → 봇이 새 세션으로 이동 (이전 세션 끊김)
  • --channels 플래그로 실행한 세션을 항상 열어 두어야 합니다
  • 상시 운영하려면 백그라운드 프로세스나 persistent 터미널 사용
  • 권한 프롬프트가 뜨면 세션이 일시 정지됩니다

여러 채널 동시 사용

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

공백으로 구분하여 여러 플러그인을 전달할 수 있습니다.

제한사항

제한설명
세션 필수세션이 꺼지면 메시지 수신 불가
인증claude.ai 로그인 필수 (API 키 미지원)
PreviewAnthropic 허용 목록의 플러그인만 사용 가능
유휴 끊김장시간 메시지가 없으면 응답이 불안정해질 수 있음 (세션 재시작으로 해결)
📬 매주 Claude Code 실전 팁을 이메일로

Channels 설정부터 자동화까지 — 실제 사용 경험을 정리해서 보내드립니다. 무료 구독 →