MCP 헤더 헬퍼와 원격 제어 안정성 개선
MCP `headersHelper` 동작 범위가 조정되고, 원격 제어와 셸·시작 관련 안정성이 전반적으로 개선됐다.
교안에 영향
기존 문서의 Ctrl+W 동작 안내, `claude plugin install/update` 확인 절차, `claude mcp list`/`get`의 표시 방식 안내는 맞지 않게 됩니다.
요약
- `keybindingFlavor` 설정이 추가되어 `readline`으로 바꾸면 프롬프트에서 Ctrl+W 동작이 Bash 방식으로 바뀝니다. - 플러그인 마켓플레이스의 `headersHelper` 실행 방식과 `claude plugin install/update` 확인 절차가 바뀌었습니다. - `claude self-hosted-runner`에 종료 지연과 프록시 인증 관련 옵션이 추가되고, 장시간 세션·원격 제어·크로스 세션 메시징의 여러 오류가 수정됐습니다. - 시작 속도, Bash 권한 검사, `claude mcp list`/`get` 표시, `/model`·`/effort` 경고, 화면 표시·버퍼링 관련 문제가 개선됐습니다. - `Ctrl+L`·`Cmd+K` 동작, MCP 신뢰 요구 조건, `headersHelper`의 환경 변수 상속 범위가 변경됐습니다.
바뀐 것
새 기능
- `keybindingFlavor` 설정이 추가되어 `readline`으로 설정하면 프롬프트에서 Ctrl+W가 이전 공백까지 삭제합니다.
- `claude self-hosted-runner --defer-shutdown-max-min <minutes>`가 추가되어, SIGTERM 이후 첨부된 세션을 계속 서비스하다가 지정 시간 뒤에 종료합니다.
- `claude self-hosted-runner --proxy-authorization-command`와 `--proxy-authorization-file`이 추가되어 매 연결마다 새 `Proxy-Authorization` 헤더가 필요한 egress proxy를 지원합니다.
개선
- 플러그인 마켓플레이스의 URL 마켓플레이스나 카탈로그 항목에서 `headersHelper`가 카탈로그와 동일 출처 아카이브 가져오기를 위한 HTTP 헤더 생성 명령을 실행합니다.
- 카탈로그 항목의 `headersHelper`는 플러그인 설치 또는 업데이트 시에만 실행되며, `claude plugin install/update`는 명령 표시 뒤 `[y/N]` 확인을 요구하고 `-y`를 지원합니다.
수정
- 장시간 대화에서 하위 에이전트 도구 결과가 최근 표시 범위를 벗어나면 해제되어 메모리 사용량이 무한히 늘어나는 문제를 고쳤습니다.
- custom, project, plugin 출력 스타일이 세션 중 기본 음성으로 되돌아가던 문제를 고쳤습니다.
- `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=true`일 때 사용 한도에 가까워도 프롬프트 제안이 계속 켜지지 않던 문제를 고쳤습니다.
- worktree-isolation Bash 거부 메시지가 리다이렉트가 없는데도 제거하라고 안내하던 문제를 고쳤습니다.
- self-hosted runner가 느리거나 유실된 한 번의 폴링 요청 뒤 서버에서 제거되어 정상 세션이 다른 runner로 넘어가던 문제를 고쳤습니다.
- MCP elicitation 대화상자가 4,096자를 넘는 URL에서 비어 보이고, 프로젝트 경로가 터미널 폭에 맞지 않을 때 권한 프롬프트의 "don't ask again" 옵션이 사라지던 문제를 고쳤습니다.
- Bash 명령이 종료되거나 시간 초과되거나 중단될 때 `/tmp/claude-*-cwd` 파일이 남던 문제를 고쳤습니다.
- 느린 SSH/mosh 링크처럼 키 입력이 큰 덩어리로 들어올 때 Backspace를 Ctrl+H로 보내는 터미널에서 Backspace를 길게 눌러도 무시되던 문제를 고쳤습니다.
- 권한 프롬프트 diff에서 와이드 다중 코드포인트 문자나 탭이 포함된 줄이 잘려 보이던 문제를 고쳤습니다.
- Ctrl+Z로 일시 중지한 세션을 종료할 때 터미널이 bracketed-paste 모드에 남고 커서가 숨겨지던 문제를 고쳤습니다.
- stdio MCP 서버가 `initialize`보다 먼저 `server/discover` 요청을 받아 매 세션 열기마다 백엔드를 시작하던 문제를 고쳤습니다.
- proxy의 연결 거부가 일반 네트워크 오류로만 보이던 문제를 고쳐 proxy 이름이 드러나게 했습니다.
- 프롬프트 캐시가 이미 만료됐는데도 `/model`과 `/effort` 캐시 누락 경고가 뜨던 문제를 고쳤습니다.
- Remote Control tasks 패널의 per-task Stop이 CLI-hosted 세션에서 동작하지 않던 문제를 고쳤습니다.
- 유효하지 않은 role이 없는 사용자 메시지를 전달받을 때 원격 세션이 종료되던 문제를 고쳤습니다.
- `claude remote-control`로 시작한 Remote Control 세션이 실행 셸의 세션 범위 환경 변수를 물려받던 문제를 고쳤습니다.
- 프로세스가 충돌한 Remote Control 세션이 재시작 전까지 다시 사용할 수 없던 문제를 고쳐, 다음 메시지 시 재사용할 수 있게 했습니다.
- 웹이나 Desktop에서 Claude가 턴 중일 때 보낸 Remote Control 메시지가 턴 종료 뒤 대화 기록에서 사라지던 문제를 고쳤습니다.
- 휴대폰이나 웹에서 고른 Remote Control 모델이 터미널에 표시된 모델을 갱신하지 않던 문제를 고쳤습니다.
- 짧은 네트워크 이상으로 로그인 갱신이 지연될 때 Remote Control이 "login expired"로 끊기던 문제를 고쳤으며, 이제 재시도해 연결을 유지합니다.