Claude Code v2.1.191의 /rewind 복원과 MCP·스트리밍 안정화

Claude Code v2.1.191의 /rewind 복원, MCP OAuth 자동 재연결, 스트리밍 CPU 37% 절감 구조와 장기 세션 운영 방법을 Codex CLI와 함께 비교한다.

2026-08-14 · 최초 발행 2026-08-02

v2.1.191이 손본 세션의 약한 고리

Anthropic이 2026년 6월 24-25일 배포한 Claude Code v2.1.191은 코딩 에이전트를 오래 실행할 때 드러나는 문제에 초점을 맞췄다. /clear 이후 사라지는 대화 문맥, OAuth 토큰 만료로 끊기는 MCP 연결, 긴 스트리밍 응답에서 치솟는 CPU 사용량이 대표적이다.

변경 사항은 대화 복원부터 인증, 네트워크 재시도, 자원 사용량까지 이어진다.

영역 변경 내용 운영 효과
대화 관리 /rewind/clear 이전 체크포인트 복원 실험적 변경을 되돌릴 안전망 확보
MCP 인증 headersHelper 401/403 자동 재연결 수동 재인증 불필요
MCP 탐색 tools/list, prompts/list 일시적 네트워크 오류 재시도 서버 재시작 빈도 감소
CPU 최적화 스트리밍 텍스트 업데이트 100ms 통합 CPU 약 37% 절감
메모리 최적화 터미널 출력 캐시로 인한 장시간 세션 메모리 증가 억제 장기 세션 안정성 향상
백그라운드 에이전트 정지(stop) 동작이 영구적으로 변경 예측 가능한 에이전트 수명주기
MCP OAuth 헤드리스 환경에서 브라우저 팝업 없이 URL 붙여넣기 방식 지원 CI/CD 환경 호환성 향상

/clear 너머로 돌아가는 /rewind

/rewind는 Claude Code의 체크포인팅 시스템을 이용해 대화와 코드 상태를 이전 시점으로 돌리는 명령이다. 파일 시스템 체크포인트 자체는 전에도 있었지만, v2.1.191부터는 /clear를 실행하기 전의 상태도 복원 대상으로 선택할 수 있다.

Claude Code는 Claude의 각 응답이 끝난 뒤 수정된 파일의 스냅샷을 자동으로 캡처한다. 저장 방식은 증분형이다. 두 턴 사이에서 바뀌지 않은 파일은 앞선 백업을 재사용하고, 모든 프롬프트 제출은 체크포인트를 만든다.

/rewind를 입력하거나 Esc를 빠르게 두 번 누르면 세션에서 전송한 프롬프트 목록이 나타난다. 여기서 파일 시스템만 되돌리고 대화 기록을 유지하는 Code only, 대화만 선택 시점 이후로 지우는 Conversation only, 코드와 대화를 함께 맞추는 Both 가운데 복원 범위를 고른다.

이전에는 /clear가 대화 문맥을 완전히 초기화하는 경계였다. 이제는 그 경계 이전의 체크포인트를 골라 다른 접근으로 작업을 다시 분기할 수 있다.

세션 시작체크포인트 1(프롬프트 A 이후)체크포인트 2(프롬프트 B 이후)/clear 실행체크포인트 3(clear 이후 프롬프트 C)/rewind 실행복원 목표 선택체크포인트 1로 복원(clear 이전 포함)체크포인트 2로 복원(clear 이전 포함)체크포인트 3으로 복원(clear 이후)코드/대화 상태 복원

복원 범위에는 한계가 있다. /rewind가 되돌리는 대상은 Claude가 수행한 파일 편집이다. 배시 명령이 바꾼 데이터베이스나 디렉토리, 외부 API의 상태는 복원되지 않는다. 세션 도중 MCP 서버가 재연결되면 리와인드 인덱스가 손상되거나 일부가 잘릴 수 있다는 알려진 버그도 GitHub Issue #58460에 등록돼 있다.

인증 만료와 일시적 장애를 견디는 MCP 연결

장시간 세션에서는 OAuth 토큰 만료와 네트워크 오류가 MCP 서버 연결을 끊는 원인이 된다. v2.1.191은 인증 헤더 갱신, 능력 탐색 재시도, 헤드리스 OAuth 흐름을 보완했다.

기존 headersHelper는 토큰의 유효 기간이 트랜스포트 수명보다 짧을 때 제대로 대응하지 못했다. 업스트림이 401을 반환해도 SDK는 headersHelper를 다시 호출하지 않고 OAuth 인증 공급자로 폴백했다.

바뀐 구현에서는 도구 호출이 401 또는 403을 반환하면 headersHelper를 자동으로 다시 실행하고 MCP 서버에 재연결한다. HTTP 트랜스포트 기반 서버에서 단기 토큰을 사용하는 환경도 수동 개입 없이 연결을 이어갈 수 있다.

능력 탐색 단계도 복원력을 얻었다. tools/list, prompts/list, resources/list 요청이 일시적 네트워크 오류로 실패하면 짧은 백오프 후 재시도한다. MCP 서버 재시작이나 불안정한 네트워크 때문에 초기 연결에 실패한 경우를 자동으로 복구하기 위한 처리다.

OAuth 탐색과 토큰 요청은 일시적 네트워크 오류가 발생하면 1회 재시도한다. 브라우저를 열 수 없는 CI/CD 환경에서는 팝업 대신 URL을 붙여넣는 프롬프트로 인증할 수 있다. 플러그인은 마켓플레이스 이름 변경 맵을 따라 자동으로 이름을 바꾼다.

이 변화는 8시간 이상 이어지는 코딩 세션에서 특히 의미가 크다. 인증 만료로 MCP 연결이 끊겨 현재 작업 흐름 전체가 중단되는 상황을 줄일 수 있기 때문이다.

스트리밍 렌더링을 100ms 단위로 묶은 이유

v2.1.191은 스트리밍 응답 중 CPU 사용량을 약 37% 줄였다. 병목은 모델의 토큰 생성보다 터미널 UI 갱신 방식에 있었다.

기존 구현은 새 텍스트 토큰을 받을 때마다 화면을 즉시 렌더링했다. LLM이 초당 수십~수백 개의 토큰을 생성하면 UI 렌더링도 초당 수백 번 발생한다. 각 렌더링에 CPU 인터럽트와 컨텍스트 스위치가 뒤따르면서 UI 처리 비용이 전체 CPU 사용량의 상당 부분을 차지했다.

개선된 방식은 100ms 동안 들어온 토큰을 버퍼에 모아 한 번에 렌더링한다. 인간이 100ms 이하의 텍스트 갱신 빈도 차이를 알아차리기 어렵다는 지각 심리학적 사실을 활용한 최적화다.

NoYesLLM 토큰 스트림토큰 수신 버퍼100ms 경과?버퍼에 토큰 추가버퍼 토큰 배치 처리터미널 UI 단일 렌더링버퍼 초기화기존 방식(토큰마다 즉시 렌더링)초당 수백 렌더링CPU 과부하 방식(100ms 통합)초당 최대 10회 렌더링CPU 37% 절감

100ms는 UI 반응성을 10fps 이상으로 유지하면서 렌더링 빈도를 줄이는 균형점이다. 효과는 수백~수천 줄의 코드를 생성하거나 아키텍처 설계와 상세 분석처럼 긴 응답을 출력할 때 두드러진다. 배터리 구동 노트북에서는 CPU 절감이 배터리 수명과 연결되고, 열 제한 환경에서는 발열을 낮춘다. Claude Code를 8시간 이상 사용하는 사용자라면 팬 소음 감소와 배터리 지속 시간 증가로 변화를 체감할 수 있다.

긴 세션에서 쌓이는 메모리 부하 줄이기

긴 세션의 문제는 CPU만이 아니다. 배시 명령 결과와 빌드 로그 같은 터미널 출력이 캐시에 누적되면 메모리 사용량도 계속 증가한다. v2.1.191은 출력 캐시의 성장을 억제해 8시간 이상 실행되는 세션에서도 메모리 사용량이 예측 가능한 범위를 유지하도록 개선했다.

지연 도구 탐색(Deferred Tool Search)은 등록된 MCP 서버의 도구 정의를 세션 시작 시 모두 읽지 않는다. 실제로 도구가 필요해진 시점에 온디맨드로 로드하므로, 여러 MCP 서버를 등록한 환경에서 컨텍스트 윈도우의 초기 부하를 줄인다.

언어 문법 파일도 같은 방향으로 바뀌었다. 시작할 때 전부 적재하지 않고 해당 언어의 파일을 처음 처리할 때 로드한다. 250,000개 파일 규모의 저장소를 시작하는 경우 약 80MB의 메모리를 절약한다.

되돌릴 수 있는 실험과 되돌릴 수 없는 작업

리팩토링이나 대규모 수정을 시도하기 전에는 Esc+Esc로 체크포인트 목록과 현재 위치를 확인할 수 있다. Claude Code는 응답이 끝날 때마다 체크포인트를 만들고, 결과가 만족스럽지 않으면 /rewind에서 원하는 시점을 골라 Both로 코드와 대화를 함께 복원한다. /clear로 새 방향을 탐색한 뒤에도 이전 체크포인트로 돌아가 다른 접근을 시도할 수 있다.

실험 전: 현재 상태 확인
→ Esc+Esc로 체크포인트 목록 확인 및 현재 위치 파악

실험 실행: 위험한 리팩토링이나 대규모 변경 시도
→ Claude Code가 자동으로 각 응답 후 체크포인트 생성

결과 불만족: /rewind 실행
→ 원하는 체크포인트 선택 → "Both" 선택으로 코드+대화 동시 복원

/clear 후 새 방향 탐색:
→ /rewind로 /clear 이전으로 돌아가 다른 접근법 시도 가능

여기서 파일 편집과 외부 상태 변경을 구분해야 한다. 데이터베이스 마이그레이션, git reset, 파일 삭제처럼 배시 명령으로 수행한 파괴적 작업은 /rewind로 되돌릴 수 없다. 이런 명령을 실행하기 전에는 수동으로 git commit을 남겨야 한다.

MCP 서버도 클라이언트의 복구 동작에 맞춰야 한다. 토큰이 만료되면 401을 일관되게 반환해야 자동 재연결이 작동한다. HTTP 트랜스포트를 쓴다면 headersHelper로 동적 토큰을 주입하고, 일시적 오류인 5xx와 인증 오류인 401/403을 구분해야 한다.

CPU 최적화 적용 여부는 macOS의 Activity Monitor에서 claude 프로세스를 확인할 수 있다. Linux에서는 top -p $(pgrep claude) 또는 htop을 사용한다. 스트리밍 중 CPU 스파이크가 이전보다 낮아졌다면 최적화가 적용된 상태다.

Claude Code와 Codex CLI의 선택 기준

2026년 중반을 기준으로 Claude Code, Codex CLI, Antigravity CLI의 MCP 안정성과 운영 기능은 다음처럼 비교된다.

항목 Claude Code v2.1.191 Codex CLI Antigravity CLI
MCP 트랜스포트 HTTP, stdio HTTP HTTP
OAuth 자동 재연결 401/403 감지 후 자동 미지원(수동) 제한적 지원
능력 탐색 재시도 backoff 재시도 미지원 미지원
헤드리스 OAuth URL 붙여넣기 지원 미지원 미지원
훅(Hook) 세분화 PreToolUse, PostToolUse, PostToolUseFailure, PreCompact 제한적 없음
MCP 플러그인 수 점진적 증가 90+ 원클릭 설치 해당 없음
릴리스 빈도 하루 여러 번 주 단위 월 단위
GitHub Stars 132,000+ 91,000+ 초기 단계

Codex CLI는 2026년 4월 진행한 대규모 업데이트에서 90개 이상의 MCP 플러그인을 원클릭 설치 방식으로 제공했다. 사전 패키지화된 서버를 사용하고 JSON 설정이 필요 없다는 점에서는 초기 구성이 편하다. Claude Code는 훅 시스템, CLAUDE.md 프로젝트 지침, 서브에이전트처럼 작업 수명주기를 세밀하게 제어하는 기능에 강점이 있다.

MCP 연결만 놓고 보면 v2.1.191의 자동 재연결은 Claude Code가 앞서는 부분이다. 수명이 짧은 토큰을 쓰는 엔터프라이즈 OAuth 환경에서 Codex CLI는 수동 재인증을 요구하지만, Claude Code는 이를 자동으로 처리한다.

Terminal-Bench 2.0에서는 GPT-5.5 기반 Codex가 82.7%, Claude가 69.4%를 기록했다. DevOps, 스크립팅, CLI 도구 중심 작업에서는 Codex가 측정 가능한 성능 우위를 보인다. 복잡한 코드베이스 이해와 아키텍처 설계, 여러 파일에 걸친 리팩토링에서는 Claude Code가 더 뛰어난 평가를 받는다.

기능 경쟁에서 운영 신뢰성 경쟁으로

/rewind/clear 이전 상태까지 복원하면서 개발자는 코드와 대화의 분기를 더 안전하게 시험할 수 있게 됐다. MCP headersHelper의 401/403 자동 재연결은 장시간 세션에서 인증 만료가 작업 중단으로 이어지는 문제를 줄인다. 여기에 100ms 텍스트 통합으로 얻은 CPU 약 37% 절감과 메모리 최적화가 더해졌다.

Claude Code v2.1.191의 변화는 기능 수를 늘리는 업데이트라기보다 코딩 에이전트를 더 오래, 안정적으로 실행하기 위한 기반 정비에 가깝다. AI 코딩 도구의 경쟁 기준도 기능 목록에서 복원 가능성, 연결 안정성, 자원 효율로 이동하고 있다.

Sources

Claude CodeMCPOAuth코딩 에이전트성능 최적화