
터미널 앞에 앉아 있어야만 Claude Code를 쓸 수 있었습니다. 세션을 열고, 명령을 입력하고, 결과를 기다리는 구조였으니까요.
그런데 Anthropic이 이 전제를 바꾸는 기능을 내놨습니다. 이제 Claude Code는 당신이 자리를 비운 사이에도 텔레그램 메시지를 받고 답장을 보낼 수 있습니다.
Channels란 무엇인가?
Anthropic이 Claude Code에 Channels 기능을 추가했습니다. 텔레그램·디스코드 같은 외부 플랫폼을 통해 실행 중인 Claude Code 세션에 메시지를 보내고 응답을 받을 수 있는 양방향 통신 기능입니다.
현재 리서치 프리뷰로 배포 중이며, Claude Code v2.1.80 이상에서 사용할 수 있습니다.
터미널 밖에서 세션 안으로
Channels의 핵심은 **‘이벤트를 이미 열려 있는 세션으로 밀어 넣는다’**는 개념입니다.
┌─────────────┐ MCP Server ┌─────────────────┐
│ Telegram │ ───────────────> │ Claude Code │
│ (폰) │ <─────────────── │ (로컬 세션) │
└─────────────┘ 응답 전송 └─────────────────┘
MCP 서버가 중간 다리 역할을 하면서, 외부에서 들어온 메시지를 실행 중인 Claude Code 세션에 전달합니다. Claude는 그 메시지를 읽고 같은 채널로 답장을 보냅니다.
기존 연동 방식과의 차이점
| 방식 | 특징 | 컨텍스트 |
|---|---|---|
| 웹 세션 | 매번 새 클라우드 샌드박스 | 새로 시작 |
| Slack 연동 | 멘션마다 새 세션 | 새로 시작 |
| Channels | 로컬 실행 중인 세션에 직접 접근 | 그대로 유지 |
폰으로 텔레그램에 메시지를 보내면, Claude가 로컬 환경에서 실제 파일을 다루며 작업하고 결과를 텔레그램으로 돌려줍니다.
단순한 알림이 아닌 양방향 통신
Channels는 단순한 알림 기능이 아닙니다.
실제 동작 방식
- 텔레그램에서 메시지 전송
- Claude Code 터미널에 툴 호출 내역과 “sent” 확인 메시지 표시
- 실제 답변은 텔레그램 채팅에 도착
디스코드에서 가능한 것들
- 채널 히스토리 가져오기
- 첨부 파일 다운로드
- 메시지 전송
채팅 메시지만이 아닙니다
외부 이벤트도 동일한 방식으로 세션에 전달할 수 있습니다:
| 이벤트 타입 | 예시 |
|---|---|
| CI 결과 | 빌드 실패 알림 |
| 에러 트래커 | Sentry, Bugsnag 알림 |
| 배포 파이프라인 | GitHub Actions 웹훅 |
| 모니터링 | 서버 다운 알림 |
시나리오: 새벽에 CI가 실패하면 Claude가 이미 열어둔 세션에서 해당 코드베이스 컨텍스트 그대로 문제를 분석하기 시작합니다.
보안: 허용 목록 방식
보안 측면에서는 발신자 허용 목록(allowlist) 방식을 사용합니다:
- 처음 봇에 메시지를 보내면 페어링 코드 발급
- 세션에서 이를 승인
- 해당 사용자 ID만 메시지를 보낼 수 있음
- 허용되지 않은 발신자의 메시지는 조용히 무시
”항상 켜진” 에이전트로 가는 방향
Channels가 흥미로운 이유는 기능 자체보다 그 방향성에 있습니다.
기존 AI 코딩 도구
사람이 앞에 앉아서 쓰는 도구
→ 세션 시작 → 작업 → 세션 종료
Channels 이후
백그라운드에서 돌아가다가 필요할 때 인간이 끼어드는 모델
→ 세션 유지 → 이벤트 수신 → 작업 → 대기
공식 문서는 지속적으로 세션을 유지하는 설정을 명시적으로 언급하고 있습니다. 최근 추가된 클라우드 스케줄 작업 기능과 묶으면, 사람 없이도 돌아가는 에이전트 루프를 구성할 수 있습니다.
현재 지원 현황
| 항목 | 상태 |
|---|---|
| 텔레그램 | ✅ 공식 지원 |
| 디스코드 | ✅ 공식 지원 |
| 커스텀 채널 | ✅ 오픈 프로토콜 공개 |
| 요구 버전 | Claude Code v2.1.80+ |
| 플랜 | Team·Enterprise는 관리자 활성화 필요 |
실제 사용 예시
점심시간에 긴급 버그 리포트
[텔레그램]
나: "방금 프로덕션에서 500 에러 났어. 로그 분석해줘"
Claude: "분석 중입니다... [3분 후] user-service의 DB 커넥션 풀이 고갈된 것으로 보입니다. 최근 변경사항을 확인했습니다..."
출퇴근길 코드 리뷰
[텔레그램]
나: "PR #123 리뷰해줘"
Claude: "PR #123을 분석했습니다. 주요 이슈: 1) N+1 쿼리 발생..."
마치며: 에이전트와의 새로운 관계
Channels는 Claude Code를 **“필요할 때마다 터미널로 돌아가는 도구”**에서 **“항상 거기 있는 동료”**로 바꿉니다.
이것은 단순한 편의 기능이 아닙니다. AI 에이전트와 인간의 협업 방식이 동기식에서 비동기식으로, 단발성에서 지속적으로 변화하고 있다는 신호입니다.
터미널 앞을 떠나도, 당신의 에이전트는 여전히 거기 있습니다.
🔗 관련 정보
- 공식 문서: Push events into a running session with channels
- The Decoder 기사: Anthropic turns Claude Code into an always-on AI agent
- Unwind AI 튜토리얼: Control Claude Code from your Phone using Telegram