## 변경 사항 - 스크린 리더 모드 추가: 스크린 리더 사용자를 위한 선택적 평문 (plain-text) 렌더링 기능
요약
Claude Code의 접근성 향상 및 안정성 개선을 위한 업데이트 내역입니다. 스크린 리더 모드 추가, Vim 모드 매핑 설정, 에이전트 프로세스 래퍼 도입 등 다양한 기능 개선과 버그 수정이 포함되었습니다.
핵심 포인트
- 스크린 리더 사용자를 위한 선택적 평문 렌더링 모드 추가
- Vim 모드에서 jj 입력을 Escape로 매핑하는 설정 지원
- 기업용 런처 준수를 위한 CLAUDE_CODE_PROCESS_WRAPPER 도입
- 백그라운드 에이전트 응답 유실 및 세션 연결 오류 등 주요 버그 수정
- 대규모 마크다운 테이블 렌더링 및 환경 변수 처리 오류 해결
변경 사항
-
스크린 리더 모드 추가: 스크린 리더 사용자를 위한 선택적 평문 (plain-text) 렌더링 기능.
claude --ax-screen-reader를 실행하거나,CLAUDE_AX_SCREEN_READER=1을 설정하거나, 설정에 "axScreenReader": true를 추가하세요. -
vimInsertModeRemaps설정 추가: vim 모드에서jj와 같은 두 키 입력 삽입 모드 시퀀스를 Escape 키로 매핑할 수 있습니다. -
CLAUDE_CODE_PROCESS_WRAPPER추가: 에이전트 뷰와 백그라운드 서비스가 이제 모든 Claude Code 자체 생성 프로세스를 필수 래퍼 (wrapper) 실행 파일을 통해 실행함으로써 기업용 런처 (corporate launcher)를 준수합니다. -
전체 화면 모드에서 다중 선택 메뉴 및 "기타 (Other)" 입력 행에 대한 마우스 클릭 지원을 추가했습니다.
-
해당 모델을 지원하는 모델로 전환한 후에도 패스트 모드 (fast mode)가 꺼져 있던 문제를 수정했습니다. 이제 설정에서 활성화하면 자동으로 복구됩니다.
-
백그라운드 에이전트에게 입력한 답장이 전달에 실패했을 때 유실되던 문제를 수정했습니다. 이제 텍스트가 저장되며 세션이 재시작될 때 전달됩니다.
-
실행 중인
claude agents프로세스로부터 실행된 바이너리가 업데이트된 후, 백그라운드 세션 연결 (background-session attach)이 영구적으로 실패하던 문제 ("Couldn't start the background daemon")를 수정했습니다. -
CLI 자동 업데이트 후 컨텍스트 윈도우 (context window) 및 자동 압축 표시기 (auto-compact indicator)가 잠시 200k로 초기화되어, 긴 컨텍스트 세션을 재개할 때 잘못된 "100% 컨텍스트 사용됨" 메시지가 표시되던 문제를 수정했습니다.
-
요청이 진행 중인 상태에서 서버가 GOAWAY와 함께 HTTP/2 연결을 종료할 때, 감독 (supervised) 및 백그라운드 세션이 충돌하던 문제를 수정했습니다.
-
claude -p로부터 대규모 응답을 파이핑 (piping)할 때, 잘린 stream-json/JSON 출력 및 결과 메시지 누락 문제를 수정했습니다. -
CLAUDE_CODE_MAX_OUTPUT_TOKENS및 유사한 환경 변수들이 과학적 표기법 (scientific-notation) 값의 가수 (mantissa)를 조용히 사용하던 문제 (1e6이1이 됨)를 수정했습니다. -
매우 큰 마크다운 (markdown) 테이블이 렌더링을 지연시키거나 과도한 메모리를 사용하는 문제를 수정했습니다. 200행이 넘는 테이블은
-
Read가 빈 파일을 "offset보다 짧음 (shorter than offset)"으로 보고하는 문제, Grep이 잘못된 정규 표현식 (regex) 패턴에 대해 조용히 "파일을 찾을 수 없음 (No files found)"을 반환하는 문제, Grep의 카운트 모드 (count mode)가 페이지가 나뉘었을 때 총합을 적게 보고하는 문제, 그리고 패턴, 경로 또는 작업 디렉토리에 널 바이트 (null byte)가 포함되었을 때 Glob이 불분명한 오류와 함께 충돌하는 문제를 수정했습니다.
-
apiKeyHelper스크립트가 약 10회의 무음 재시도 후 일반적인 401 오류 뒤로 실패 원인이 숨겨지던 문제를 수정했습니다. 이제 스크립트 자체의 오류가 3회 시도 내에 표시됩니다. -
게이트웨이가 응답을 변환할 때 Bedrock 스트리밍 요청이 오해의 소지가 있는 "잘린 이벤트 메시지 수신됨 (Truncated event message received)" 오류와 함께 실패하던 문제를 수정했습니다. 이제 오류 메시지에 콘텐츠 타입 (content-type)이 명시되고 프록시 (proxy)를 지목합니다.
-
브라우저를 여는 데 실패했을 때
/upgrade가 업그레이드 URL 대신 로그인 흐름을 보여주던 문제를 수정했습니다. -
Windows 스타일 SDK 호스트로부터 전달된 빈 CRLF 또는 공백만 있는 라인으로 인해 stream-json 입력이 세션을 종료시키던 문제를 수정했습니다.
-
control_request가 문자열이 아닌set_model페이로드를 전달할 때 헤드리스 (headless) stream-json 세션이 영구적으로 중단되던 문제를 수정했습니다. 이제 CLI가 오류 응답으로 답변합니다. -
세션 재개 시
Claude Desktop) 백그라운드 작업이 실행 중인 유휴 (idle) 세션에서 "A turn is in progress" 오류가 발생하던 문제를 수정했습니다.
-
사용자 범위 (user-scope) 저장 시 워크플로우 저장 대화 상자가
CLAUDE_CONFIG_DIR위치 대신~/.claude/workflows/를 표시하던 문제를 수정했습니다. -
/release-notes사용 시 조회한 노트를 모델의 컨텍스트 (context)에 추가하던 문제를 수정했습니다 — 이전에는 "Show all"을 누르면 전체 변경 로그 (changelog)가 이후의 모든 요청에 주입되었습니다. -
에이전트 (agent) 뷰에서 훑어보기 (peek) 응답을 보낸 후 붙여넣은 이미지가 화면이 유지되는 동안 계속 남아 있어 메모리 누수 (memory leak)가 발생하던 문제를 수정했습니다.
-
클라이언트가 연결되기 전에 플러그인 새로고침 (plugin refresh)이 실행될 경우, SDK 세션에서
initialize요청을 통해 정의된 에이전트들을 잃어버리던 문제를 수정했습니다. -
장기 세션에서의 여러 메모리 누수 (memory leak) 문제를 수정했습니다: MCP stdio 서버의 stderr가 서버당 최대 64MB까지 누적되는 문제, LSP 문서가 무기한 열려 있는 문제 (이제 50개 문서 제한의 LRU 방식으로 변경), 백그라운드로 전환된 후에도 async hook 출력이 유지되는 문제, 그리고 대규모 도구 결과 (tool-result) 페이로드로 인해 headless/SDK 세션에서 메모리가 무제한으로 증가하는 문제를 수정했습니다.
-
offset/limit을 사용하여 매우 긴 단일 행이 포함된 파일을 읽을 때 메모리가 폭증하던 문제를 수정했습니다 — 이제 읽기 작업 시 전체 행을 로드하는 대신 깔끔한 오류를 반환합니다.
-
권한 거부/요청 (permission deny/ask) 규칙이 많은 세션에서 턴 (turn)당 수 초의 지연이 발생하던 문제를 수정했습니다 — 규칙 매처 (rule matcher)를 한 번만 컴파일하고 캐싱하도록 변경했습니다.
-
에이전트 작업 목록이 업데이트되는 동안 입력 반응성을 개선했습니다 — 작업 업데이트 시 더 이상 전체 UI를 다시 렌더링하지 않습니다.
-
많은 MCP 도구를 사용하는 print/SDK 세션에서 도구 풀 (tool-pool) 조립을 캐싱하여 도구 호출 (tool-call)당 CPU 오버헤드를 줄였습니다 (도구 수가 많을 때 도구 라운드 속도가 최대 7배 빨라짐).
-
파일 편집 읽기 캐시를 최대 1,000개의 전체 파일로 고정하는 대신 16MB로 제한하여 메모리 사용량을 줄였습니다.
-
대체된 파일 히스토리 백업을 정리하여 세션 트랜스크립트 (transcript) 크기를 줄이고 (편집이 많은 세션에서 최대 79배 감소), 체크포인트 디스크 사용량을 제한했습니다.
-
백그라운드 에이전트 또는 대규모 대화에서 생성된 포크 (fork)와 함께 세션을 재개할 때의 메모리 사용량을 줄였습니다.
-
완료된 백그라운드 에이전트 (background agents)가 종료되는 즉시 사라지는 대신, 정리 (cleanup)될 때까지
/tasks목록에 계속 유지됩니다. -
중단된 백그라운드 에이전트에 연결할 때, 세션이 준비되는 동안 빈 "세션이 시작되는 중입니다 (Session is starting)" 화면 대신 대화 기록 (transcript)이 즉시 표시됩니다.
-
백그라운드 세션: 이전 버전의 데몬 (daemon)이 최신 버전에서 생성된 워커 (workers)를 이전 바이너리 (binary)로 조용히 재시작하던 문제를 해결했습니다.
-
에이전트 뷰 (Agent view): Ctrl+X를 누르면 이름이 변경된 브랜치 (branch)의 워크트리 (worktrees)를 삭제하지만, 푸시되지 않은 커밋 (unpushed commits)은 절대 파괴하지 않습니다. 또한 워크트리가 유지될 경우 세션 행 (session row)을 유지하며, 재사용된 워크트리 이름은 현재 베이스 (base)로 초기화됩니다.
-
$(…)/백틱 (backticks)/<(…)를 포함하는 명령에서 치명적인 삭제 (예:rm -rf ~)를 수행할 때, 일반적인 형태와 마찬가지로--dangerously-skip-permissions및 자동 모드에서 확인 프롬프트가 표시됩니다. -
/install-github-app및/mcp설정 메뉴가 더 이상 백그라운드 세션에서 열리지 않습니다. -
빈 URL로 구성된 MCP 서버는 설정 오류 대신
/mcp에서 "설정되지 않음 (not configured)"으로 표시됩니다. -
/usage명령에서 사용량 엔드포인트 (usage endpoint)에 속도 제한 (rate-limited)이 걸릴 경우, 에러 화면 대신 "기준 시점 (as of)" 메모와 함께 마지막으로 확인된 사용량 막대 그래프를 표시합니다. -
AWS SSO 프로필의
sso_region이 Bedrock 지역과 다를 때 Bedrock 인증이 "세션 토큰을 찾을 수 없거나 유효하지 않음 (Session token not found or invalid)" 오류로 실패하던 문제를 수정했습니다 (2.1.207 버전의 회귀 오류).
AI 자동 생성 콘텐츠
본 콘텐츠는 RSS: GitHub anthropics/claude-code releases의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기