Claude Code 세션끼리 대화하게 만드는 플러그인 개발
built a plugin so my parallel Claude Code sessions can message each other instead of me alt-tabbing
핵심 요약
여러 Claude Code 세션 간의 소통을 자동화하여 창 전환 없이 협업하게 해주는 Relay 플러그인 개발.
- Relay 플러그인 — 여러 Claude Code 세션이 서로 메시지를 주고받아 창 전환 없이 작업 가능함
- MCP 활용 — Claude Code의 채널 기능을 이용해 세션 간 통신을 구현함
- 기존 도구 비교 — 오케스트레이션 프레임워크와 달리 단순 세션 간 메시징에 집중함
- 향후 개선점 — 다중 세션 워크플로우에서 발생하는 불편함을 해결하는 데 집중할 예정임
저는 보통 두 개 이상의 Claude Code 세션을 동시에 열어둡니다. 하나는 백엔드 저장소, 하나는 프론트엔드 저장소에 띄워두죠. 절반 정도는 프론트엔드 세션에서 "잠깐, user 객체 모양이 어떻게 됐더라?"라고 묻다가, 알트탭을 눌러 백엔드 세션에 묻고, 답변을 복사해서, 다시 알트탭으로 돌아와 붙여넣는 식입니다.
다른 Claude는 바로 옆에 있었습니다. 이미 알고 있었죠. 제가 병목 현상이었던 겁니다.
그래서 Relay라는 플러그인을 만들었습니다. 프론트엔드 창에서 그냥 이렇게 말하면 됩니다:
ask the backend session what the user object looks like
백엔드 세션은 턴 사이에 질문을 확인하고 답변하며, 그 답은 제 프론트엔드 세션에 알림으로 뜹니다. 창 전환도, 복사-붙여넣기도 필요 없습니다. "다들 무슨 작업 중인지 물어봐" 같은 브로드캐스트도 작동하며, 답변이 하나씩 들어옵니다.
작동 원리는 생각보다 간단합니다. Claude Code는 얼마 전 세션 턴 사이에 MCP 서버가 메시지를 푸시할 수 있게 해주는 채널 기능을 출시했습니다. Relay는 그걸 활용합니다. 각 세션은 작은 MCP 서버를 실행하고, 제 컴퓨터의 단일 허브 데몬이 유닉스 소켓을 통해 세션 간 라우팅을 수행합니다. 들어오는 질문은 채널 알림으로 전달되어 Claude가 다음 턴에 자연스럽게 반응하게 됩니다. 첫 번째 세션을 시작하면 허브가 생성됩니다. 마지막 세션이 연결 해제된 후 약 5분 뒤에 스스로 종료됩니다. 같은 머신에서만 작동하며, 인증도 없고, 외부로 나가는 데이터도 없습니다.
다른 'Claude 간 협업' 프로젝트들이 있다는 건 압니다. 대부분은 보스 Claude가 워커 Claude들에게 지시를 내리는 오케스트레이션 프레임워크죠. 이건 그런 게 아닙니다. 그냥 이미 열어둔 세션들끼리 메시지를 주고받으며 각자 하던 일을 계속하게 하는 겁니다. 스웜 러너보다는 'Claude를 위한 슬랙'에 더 가깝습니다.
설치 방법이 포함된 저장소: https://github.com/innestic/claude-relay (MIT)
이제 막 오픈 소스로 공개한 거라 거친 부분이 많습니다. 이미 다중 세션 워크플로우를 사용 중이라면, 계속 겪고 있는 사소한 불편함은 무엇인가요? 다음엔 그걸 고쳐보고 싶습니다.

