터미널 하나가 아니라 여러 개를 전제로 만들기 시작했어

8월 13일부터 18일까지 엿새 동안 클로드 코드에 v2.1.231부터 v2.1.235까지 다섯 개 버전이 나왔어. 개별 항목은 자잘해 보이는데, 묶어 놓고 보면 방향이 하나로 모여.

지금까지 클로드 코드는 터미널 창 하나에서 사람 한 명과 대화하는 도구였어. 이번 업데이트 묶음은 그 전제를 바꿔. 여러 세션이 동시에 돌고, 서로를 알고, 사람이 자리에 없어도 계속 돌아가는 상태를 정상으로 놓기 시작했어.

배경을 좀 더 깔면 이해가 쉬워. 클로드 코드는 원래 로컬 터미널 전용이었어. 올해 들어 원격 제어가 붙으면서 데스크톱 앱과 IDE, claude.ai 웹에서 같은 세션을 이어받을 수 있게 됐고, 클라우드에서 도는 세션까지 생겼어. 그러니까 한 사람이 노트북 터미널, 회사 데스크톱, 웹 브라우저에서 각각 다른 세션을 굴리는 상황이 흔해진 거야. 이번 묶음의 수정 항목 절반 이상이 원격 제어에 몰려 있는 건 그만큼 이 구조에서 깨지는 데가 많았다는 뜻이기도 해.

가장 눈에 띄는 건 프롬프트에서 @를 쳐서 다른 세션을 부를 수 있게 된 거야. 이름을 부르면 클로드가 SendMessage로 그 세션에 직접 말을 걸어. 원격 기기에서 돌고 있는 세션도, 클라우드에서 도는 세션도 대상이 돼.

세션 간 메시징이 뭘 바꾸는지

이 기능의 뼈대는 사실 7월 말 v2.1.224에서 먼저 들어왔어. 그때 SendMessageListAgents가 붙으면서 세션들이 서로를 찾고 메시지를 보낼 수 있게 됐어. macOS와 리눅스가 대상이었고, ListAgents는 연결이 끊긴 원격 세션을 offline으로, 클라우드 세션을 cloud로 표시하기 시작했어.

이번 v2.1.232에서 붙은 건 사람이 쓰는 입구야. 프롬프트에 @를 치면 세션 목록이 뜨고, 이름을 고르면 그쪽으로 메시지가 가. 그리고 SendMessage가 살아 있는 세션 이름과 정확히 일치하면 참조 ID로 다시 확인받지 않고 바로 보내. 이름이 겹치는 문제를 막기 위해 한 기기 안의 대화형 세션은 유일한 이름을 갖도록 바뀌었어. 이미 쓰이는 이름을 쓰려고 하면 이름-단어-단어 형태의 변형이 자동으로 붙어.

받는 쪽 통제도 생겼어. /config에 "Messages from your other sessions" 항목이 추가돼서, 다른 세션에서 오는 메시지를 받을지, 보류할지, 거부할지 고를 수 있어.

실무에서 이게 왜 의미가 있냐면, 지금까지 여러 세션을 동시에 돌리는 사람들은 결과를 손으로 옮겼거든. A 창에서 나온 결론을 복사해서 B 창에 붙여 넣는 식이야. 이제 A가 B에게 직접 말을 걸 수 있어. 리포지토리 두 개를 나눠 작업할 때, 또는 한쪽에서 조사하고 다른 쪽에서 구현할 때 손이 덜 가.

동시에 새로운 위험도 생겨. 세션끼리 주고받는 메시지는 결국 프롬프트로 들어가는 텍스트야. 신뢰할 수 없는 내용을 읽은 세션이 다른 세션에 지시를 보내는 경로가 열린 셈이지. 앤트로픽이 /config에 수신 정책 항목을 같이 넣은 건 이 때문으로 보여.

사용자 입장에서 실제로 바뀌는 장면 하나를 그려 보면 이래. 조사 담당 세션이 문서를 읽고 정리한 결과를, 구현 담당 세션에 바로 넘겨. 사람은 두 세션 사이에서 복사·붙여넣기를 하는 대신 결과만 확인해. 문제는 이 구조가 잘 돌아갈 때가 아니라 잘못 돌아갈 때야. 구현 세션이 잘못된 전제를 받아 작업을 시작하면, 그게 어느 세션에서 왔는지 추적하는 일이 새로 생겨. 로그를 남기는 습관이 이전보다 중요해졌다는 뜻이야.

이번 주에 실제로 들어간 것들

영역 버전 내용
세션 간 메시징 2.1.232 프롬프트 @ 멘션, 이름 중복 방지, /config 수신 정책
원격 제어 2.1.232 claude.ai 중복 대화 해소, 유휴 상태 도달 가능, 워커 재시작 시 히스토리 복원
원격 제어 2.1.232 네트워크 끊김 후 약 30분간 재연결 시도, 무단 제어 탈취 방지
원격 제어 2.1.235 claude rc에 대화형 시작과 동일한 기업 게이트웨이 확인 적용
깃랩 2.1.234 푸터·상태줄에 MR !N 배지 (초안·대기·통과 상태 표시)
깃랩 2.1.232 --worktree·claude agents에서 MR URL 지원, 토큰 계열 시크릿 마스킹
사용량 2.1.234 claude.ai 사용량 한도가 풀리면 세션 자동 재개 (끄기 가능)
보안 2.1.235 윈도우 NT 네임스페이스 경로 차단 (NTLM 자격증명 유출 경로)
보안 2.1.232 파워셸·깃배시 권한 우회 차단, 중첩 저장소 신뢰 분리

원격 제어 쪽 수정이 가장 많아. 원격 세션이 재개될 때마다 claude.ai에서 새 대화로 잡히던 문제, 유휴 상태에서 새 클라이언트가 세션을 못 찾던 문제, 세션 워커가 재시작되면 대화 기록이 날아가던 문제가 모두 잡혔어. 네트워크가 잠깐 끊겨도 약 30분간 재연결을 시도하도록 바뀐 것도 실사용에서 체감이 큰 항목이야. 이전에는 몇 번 시도하고 끊어졌거든.

보안 쪽에서는 브리지 세션 격리가 눈에 띄어. 클라우드 세션 안에서 호스팅되는 원격 제어 세션이 그 세션의 대화 기록이나 자격증명을 물려받지 않도록 분리했어. 그리고 중첩된 깃 저장소가 상위 디렉터리의 신뢰 설정을 물려받던 동작을 바꿔서, 저장소마다 별도로 신뢰를 확인받게 했어. 남의 저장소를 하위 디렉터리에 clone해 두는 흔한 패턴에서 실제로 문제가 될 수 있던 부분이야.

이 다섯 개 버전을 관통하는 주제를 한 문장으로 줄이면 이래. 기능을 새로 만드는 릴리스가 아니라, 이미 만들어 둔 원격·다중 세션 구조가 실제로 견디는지 확인하고 깨진 곳을 메우는 릴리스야. 원격 제어 항목이 여덟 개, 보안 우회 차단이 여섯 개인데 새 기능은 세션 간 @ 멘션과 깃랩 배지 정도야. 제품이 확장 단계에서 안정화 단계로 넘어가는 전형적인 신호로 읽혀.

각자가 챙기는 것

깃랩을 쓰는 팀이 챙기는 게 제일 커. 그동안 클로드 코드의 저장소 연동은 깃허브 중심이었어. 이번에 glab CLI로 인증된 깃랩 저장소에서 머지리퀘스트 배지가 푸터와 상태줄에 뜨고, --worktree 플래그와 claude agents 뷰에서 MR URL을 그대로 쓸 수 있게 됐어. 플러그인 마켓플레이스도 gitlab.com 저장소 URL을 깃허브처럼 clone해. 중첩 서브그룹 URL까지 지원해서, 그룹 구조가 깊은 기업 깃랩에서도 동작해.

시크릿 마스킹도 같이 붙었어. glrt-, gloas-, glptt-, glagent-, glimt-, glsoat-, glcbt-, glft-, glffct- 계열이 마스킹 대상이고, 실제로 라우팅 가능한 glpat-·gldt- 토큰은 전체 마스킹돼. glab CLI 설정 저장소도 gh와 같은 수준의 샌드박스·자격증명 경로 보호를 받아.

사용량 한도에 자주 걸리는 사람이 챙기는 건 시간이야. claude.ai 사용량 한도가 리셋되면 세션을 알아서 이어 가는 옵션이 생겼어. /config의 "Continue automatically at usage limit"에서 끌 수 있어. 긴 작업을 걸어 두고 자리를 비우는 패턴에서는 의미가 있고, 반대로 예산을 관리하는 입장에서는 꺼 두는 게 나을 수도 있어.

기업 관리자가 챙기는 건 통제 지점이야. claude rc가 대화형 시작과 같은 기업 게이트웨이 확인을 거치도록 바뀌었어. 원격 제어라는 우회 경로로 게이트웨이를 건너뛰던 구멍이 막힌 거야. 권한 대화상자도 손봤어. 표시되는 문구와 "다시 묻지 않기" 옵션이 실제 허용 범위와 항상 일치하도록 바뀌었고, 내용을 전부 보여줄 수 없는 경우에는 "다시 묻지 않기"를 아예 제공하지 않아.

윈도우 사용자가 챙기는 건 자격증명이야. 윈도우 NT 네임스페이스(\??\) 경로가 UNC 경로 검증을 우회할 수 있었고, 이건 NTLM 자격증명 유출로 이어질 수 있는 경로였어. 이제 원격 파일 읽기, 세션 복원, CLAUDE.md 인클루드, 워크플로 스크립트, 파일 업로드에서 모두 거부돼.

권한 대화상자 수정 중에는 눈에 잘 안 띄지만 중요한 게 하나 더 있어. 권한 프롬프트의 코멘트 입력칸에서 Shift+Tab을 누르면 입력칸을 닫는 대신 편집을 승인하고 세션 전체 권한까지 부여해 버리던 버그야. 손가락이 미끄러진 한 번의 키 입력이 그 세션 내내 유효한 허용으로 굳어졌던 셈이지. 권한 UI에서 이런 종류의 오조작은 기능 하나가 빠진 것보다 위험해.

또 하나, 채팅 채널로 중계되는 권한 미리보기에서 양방향 텍스트 제어문자, 제로폭 문자, 유사 따옴표를 무력화하도록 바뀌었어. 실행될 명령과 화면에 보이는 문자열이 달라 보이게 만드는 고전적인 속임수를 막는 조치야.

플러그인·마켓플레이스 생태계가 챙기는 건 배포 경로야. 그동안 클로드 코드 플러그인은 사실상 깃허브에 올려야 배포가 됐어. 이제 gitlab.com 저장소 URL이 깃허브와 같은 방식으로 clone되니까, 사내 깃랩만 쓰는 조직도 자체 마켓플레이스를 꾸릴 수 있어. 외부 인터넷에 코드를 올릴 수 없는 조직에서는 이게 도입 여부를 가르는 조건이었어.

비슷한 방향으로 간 도구들

깃허브 코파일럿 워크스페이스가 먼저 이 길을 갔어. 로컬 에디터 안의 자동완성에서 시작해, 이슈를 받아 브랜치를 만들고 PR을 여는 자율 실행 쪽으로 확장했지. 다만 실행 환경을 깃허브 클라우드에 묶어 두는 설계였고, 그래서 로컬 개발 환경과의 간극이 계속 문제였어. 클로드 코드는 반대로 로컬을 기준점으로 두고 원격을 붙이는 방향이라 이 간극이 덜해.

커서의 백그라운드 에이전트는 또 다른 접근이야. 여러 작업을 병렬로 돌리는 데 초점을 맞췄고, 각 에이전트가 격리된 환경에서 작업한 뒤 결과를 합치는 구조야. 병렬성은 확보했는데 에이전트 간 소통은 사람을 거쳐야 했어. 클로드 코드의 세션 간 메시징은 그 사이를 직접 연결하려는 시도로 볼 수 있어.

**데빈(코그니션)**은 처음부터 자율 실행을 내세웠어. 사람이 작업을 던지고 결과를 받는 모델이야. 여기서 나온 교훈은 자율성이 높을수록 검증 비용이 커진다는 거였어. 결과물을 사람이 다시 읽어야 하는 시간이 절약된 시간을 잡아먹는 경우가 많았지. 클로드 코드가 자율 실행과 대화형을 계속 함께 두는 이유이기도 해.

과거 CI/CD 도입기를 떠올려도 비슷한 구조야. 빌드를 자동으로 돌리는 건 쉬웠는데, 여러 잡이 서로 의존하기 시작하면서 오케스트레이션이 진짜 문제가 됐어. 세션 간 메시징도 같은 곡선을 탈 가능성이 높아. 두 세션이 대화하는 건 편한데, 다섯 개가 서로 부르기 시작하면 누가 뭘 왜 했는지 추적하는 게 새 과제가 돼.

경쟁 구도가 어떻게 움직이나

오픈AI 코덱스는 8월 중순에 속도와 메모리를 손보는 대규모 개편을 했어. 방향은 비슷해. 사람이 붙어 있지 않아도 오래 도는 작업을 잘 처리하는 쪽이야. 두 도구가 같은 문제를 다른 순서로 풀고 있는 셈인데, 코덱스는 실행 환경 통제를, 클로드 코드는 세션 오케스트레이션을 먼저 잡았어.

구글은 안티그래비티와 제미나이 CLI로 이 시장에 들어와 있어. 제미나이 3.7 플래시 같은 저가 모델을 얹으면 대량 반복 작업에서 원가 우위를 만들 수 있어. 다만 세션 관리나 원격 제어 같은 운영 계층은 아직 얇아.

깃랩·아틀라시안 같은 플랫폼 사업자들은 자기 제품 안에 AI를 넣는 방향이야. 클로드 코드가 깃랩 지원을 강화한 건 이 경쟁에서 중립 도구 자리를 확보하려는 움직임으로 읽혀. 플랫폼에 종속되지 않는 클라이언트로 남겠다는 거지.

커서와 윈드서프 같은 에디터 계열은 UI 경험에서 앞서 있어. 터미널 기반 도구는 여전히 진입 장벽이 높아. 다만 원격 제어와 세션 간 메시징처럼 여러 기기·여러 작업을 다루는 영역에서는 터미널 쪽이 구조적으로 유리해.

그래서 뭐가 달라지는데

여러 세션을 동시에 돌리는 사람이라면 @ 멘션부터 써 봐. 세션 이름을 의미 있게 지어 두면 훨씬 편해. 다만 수신 정책을 /config에서 한 번 확인해 두는 게 좋아. 자동 수락으로 두면 다른 세션에서 온 지시가 그대로 프롬프트에 들어와.

깃랩을 쓰는 팀이라면 glab CLI 인증부터 해 두면 배지와 MR 연동이 바로 붙어. 그동안 깃허브 팀만 누리던 워크플로가 이번에 대체로 맞춰졌어.

기업 보안 담당자라면 두 가지를 확인해. 원격 제어가 기업 게이트웨이 정책을 우회하지 않는지, 그리고 클라이언트 버전이 2.1.235 이상인지. 윈도우 자격증명 유출 경로는 그 이전 버전에 남아 있어.

윈도우에서 쓰는 사람이라면 업데이트를 미루지 마. 파워셸 기본 파라미터 조작과 깃배시 심볼릭 링크를 통한 권한 우회 두 건이 이번 묶음에서 함께 잡혔어.

긴 작업을 걸어 두는 사람이라면 사용량 자동 재개 옵션을 어떻게 둘지 정해. 켜 두면 편하지만, 예상보다 많은 토큰을 쓰게 될 수도 있어.

개인 개발자라면 당장 챙길 건 버전 업데이트 하나야. 다만 세션 이름 규칙이 바뀌어서, 여러 창을 띄워 두는 습관이 있다면 이름이 자동으로 변형된 걸 보게 될 거야. 이름을 명시적으로 지어 두면 @ 멘션이 훨씬 쓸 만해져.

🥄 남은 궁금증 세 가지

— 세션 간 메시징이 위험하지 않아? 위험 요소가 있는 건 맞아. 다른 세션에서 온 메시지도 결국 프롬프트로 들어가니까, 신뢰할 수 없는 내용을 읽은 세션이 지시를 전달하는 경로가 생겨. 그래서 /config에 수락·보류·거부를 고르는 항목이 함께 들어간 거야. 기본값을 확인해 두는 게 좋아.

— 깃랩 지원이 이제 깃허브 수준이야? 머지리퀘스트 배지, worktree 연동, 플러그인 마켓플레이스, 토큰 마스킹까지 주요 항목은 맞춰졌어. 다만 깃허브 쪽에 먼저 들어간 기능이 여전히 더 많아서 완전한 동등이라고 하기엔 일러.

— 자동 재개를 켜면 요금이 얼마나 더 나와? 그건 작업에 따라 달라서 단정할 수 없어. 확실한 건 한도에 걸려 멈춰 있던 세션이 리셋 시점에 다시 돌기 시작한다는 것뿐이야. 예산을 엄격히 관리한다면 꺼 두고, 대신 한도 알림을 보는 쪽이 안전해.

참고 자료

수치는 발표 시점 기준이라 바뀔 수 있어.