블로그로 돌아가기Agentic Coding
Claude Code 2.1.0 대규모 업데이트 - Skill Hot-Reload부터 Vim 모션 강화까지
21.74분
Claude CodeRelease NotesAnthropicAI CodingDeveloper ToolsAgentic AI
Claude Code 2.1.0이 Skill Hot-Reload, Forked Sub-Agent Context, 향상된 Vim 모션, 통합 백그라운딩 등 30개 이상의 신기능과 50개 이상의 버그 수정을 포함하여 출시되었다.

Anthropic이 2026년 1월 7일 Claude Code 2.1.0을 공식 출시했다. 이번 업데이트는 30
개 이상의 신기능과 50개 이상의 버그 수정을 포함하는 대규모 릴리스다. Skill 개발
워크플로우 개선, 에이전트 오케스트레이션 강화, Vim 사용자 경험 향상 등 개발자 생
산성을 크게 높이는 핵심 기능들이 다수 추가되었다.
핵심 신기능
1. Skill Hot-Reload
~/.claude/skills 또는 .claude/skills에서 생성하거나 수정한 Skill이 세션 재시
작 없이 즉시 반영된다. Skill 개발 워크플로우가 크게 단순화되었다.사용 방법:
~/.claude/skills/my-skill/디렉토리 생성SKILL.md파일 작성 및 저장- Claude Code에서 즉시 사용 가능 (재시작 불필요)
- 수정 시에도 실시간 반영
제한사항:
- YAML frontmatter 오류가 있으면 Skill 로딩 실패
- 파일명은 정확히
SKILL.md(대소문자 구분) - 첫 줄에
---시작 필수 (빈 줄 없이)
2. Forked Sub-Agent Context
Skill frontmatter에서
context: fork와 agent 필드를 통해 분리된 서브에이전트
컨텍스트에서 실행이 가능하다. 복잡한 에이전트 오케스트레이션 시나리오를 지원한다
.Frontmatter 예시:
YAML
---name: code-analysisdescription: Analyze code quality in isolated contextcontext: forkagent: Explore---
지원 에이전트 타입:
Explore: 코드베이스 탐색 및 분석Plan: 계획 수립 및 아키텍처 설계general-purpose: 범용 작업 (기본값)- 커스텀:
.claude/agents/에 정의된 에이전트
사용 사례:
- 복잡한 멀티 스텝 작업을 메인 대화에 섞이지 않게 실행
- 전문화된 분석을 별도 컨텍스트에서 수행
- 서브에이전트별 독립적인 대화 히스토리 유지
3. Language Configuration
settings.json에 language 설정이 추가되어 Claude의 응답 언어를 구성할 수 있다
.설정 예시:
JSON
{"language": "Korean"}
CJK 언어 지원 개선:
- Option+Arrow 단어 탐색이 CJK 텍스트를 전체 시퀀스가 아닌 단어 경계로 처리
- CJK 문자가 포함된 멀티라인 프롬프트의 여분의 빈 줄 제거
- IME (Input Method Editor) 지원 개선: 커서 위치에 정확한 조합 창 표시
- 단어 삭제(opt+delete) 및 단어 탐색이 키릴 문자, 그리스어, 아랍어, 히브리어, 태 국어, 중국어 등 비라틴 텍스트에서 정상 작동
4. 향상된 Vim Motions
Vim 사용자를 위한 대폭 개선이 이루어졌다. 새로운 모션, 연산자, 텍스트 객체가 추
가되어 생산성이 크게 향상된다.
새로운 모션 및 연산자:
| 키 | 기능 | 설명 |
|---|---|---|
; | f/t 반복 | 다음 일치 문자로 이동 |
, | f/t 역방향 반복 | 이전 일치 문자로 이동 |
yy / Y | 줄 복사 | 현재 줄 또는 줄 끝까지 복사 |
p | 붙여넣기 | 커서 뒤에 붙여넣기 |
P | 앞에 붙여넣기 | 커서 앞에 붙여넣기 |
>> | 들여쓰기 | 현재 줄 들여쓰기 |
<< | 내어쓰기 | 현재 줄 내어쓰기 |
J | 줄 결합 | 여러 줄을 하나로 합침 |
텍스트 객체:
| 객체 | 설명 |
|---|---|
iw / aw | inner word / a word |
iW / aW | inner WORD / a WORD |
i" / a" | inner double quotes / around quotes |
i' / a' | inner single quotes / around quotes |
i( / a( | inner parentheses / around parens |
i[ / a[ | inner square brackets / around brackets |
i{ / a{ | inner curly braces / around braces |
Vim 모드 활성화:
/vim 명령어 또는 /config를 통한 영구 설정5. 통합 백그라운딩
Ctrl+B를 누르면 실행 중인 모든 포그라운드 작업(Bash 명령어와 에이전트 모두)을
동시에 백그라운드로 전환한다.작동 방식:
- Claude Code에 백그라운드 실행 요청 또는
Ctrl+B키 입력 - 백그라운드 작업은 고유 ID를 가진 별도 셸에서 실행
- 출력 모니터링, 상태 확인, 종료 가능
- Tmux 사용자는
Ctrl+B를 두 번 눌러야 함 (tmux prefix 키 때문)
사용 사례:
- 서버, 빌드, 기타 프로세스를 모니터링하면서 지속적인 개발
- 장시간 실행되는 테스트를 백그라운드로 보내고 다른 기능 작업
- 에이전트를 백그라운드에서 실행하고 다른 작업 수행
2.1.0 개선사항:
- 백그라운드 작업 완료 시 깔끔한 완료 메시지 표시 (noisy 출력 제거)
- 대량 출력 생성 시 30K 문자로 자동 truncate하여 API 컨텍스트 오버플로우 방지
6. MCP list_changed 알림
MCP (Model Context Protocol) 서버가
list_changed 알림을 통해 재연결 없이 도구,
프롬프트, 리소스를 동적으로 업데이트할 수 있다.지원 알림 타입:
notifications/tools/list_changed: 도구 목록 변경 알림notifications/prompts/list_changed: 프롬프트 목록 변경 알림notifications/resources/list_changed: 리소스 목록 변경 알림
작동 방식:
- MCP 서버가 도구 변경 알림을 보냄
- Claude Code가 자동으로 해당 서버로부터 도구 목록 새로고침
/mcp메뉴에 변경사항 즉시 반영
이전 버전 문제점:
- 알림을 보내도 Claude Code가 응답하지 않음
- 동적 프롬프트 업데이트가 UI에 나타나지 않아 재시작 필요
- 커스텀 MCP 명령어가
.claude/commands/에 추가되어도 나타나지 않음
MCP 서버 개발자에게 매우 유용한 개선사항이다.
7. /plan 명령 단축키
프롬프트에서
/plan을 입력하면 plan 모드로 직접 진입한다. 기존의 복잡한 진입 과
정이 단순화되었다. 또한 plan 모드 진입 시 권한 프롬프트가 제거되어 더 빠르게 사
용할 수 있다.8. 슬래시 명령 개선
입력 시작뿐 아니라 어디서나
/를 입력하면 자동완성이 활성화된다. --tools 플래
그로 대화형 모드에서 Claude가 사용할 수 있는 도구를 제한할 수 있다.도구 제한 예시:
Bash
claude --tools Read,Grep,Bash
9. Hook 기능 대폭 강화
Hook 시스템이 대폭 강화되어 더 많은 사용 사례를 지원한다. 에이전트, Skill, 슬래
시 명령어에서 Hook을 정의할 수 있다.
10가지 Hook 이벤트:
| Hook | 설명 |
|---|---|
PreToolUse | 도구 호출 전 실행 (차단 가능) |
PermissionRequest | 권한 대화 표시 시 실행 (허용/거부 가능) |
PostToolUse | 도구 호출 완료 후 실행 |
UserPromptSubmit | 사용자 프롬프트 제출 시 (Claude 처리 전) |
Notification | Claude Code가 알림 전송 시 |
Stop | Claude Code가 응답 완료 시 |
SubagentStop | 서브에이전트 작업 완료 시 |
PreCompact | Claude Code가 컴팩트 작업 실행 전 |
SessionStart | 새 세션 시작 또는 기존 세션 재개 시 |
SessionEnd | Claude Code 세션 종료 시 |
새로운 기능:
once: true설정으로 세션당 한 번만 실행되는 Hook 지정- frontmatter의
allowed-tools필드에서 YAML 스타일 목록 지원 - 플러그인에서 prompt와 agent hook 타입 지원 (기존에는 command hook만 지원)
- 에이전트 frontmatter에서 PreToolUse, PostToolUse, Stop Hook 지원
- Skill 및 슬래시 명령어 frontmatter에서 Hook 지원
Hook 정의 예시:
YAML
---name: secure-operationshooks:PreToolUse:- matcher: "Bash"hooks:- type: commandcommand: "./scripts/security-check.sh"---
once: true 사용 예시:
YAML
hooks:- type: commandcommand: "echo 'Session initialized'"once: true
사용 사례:
- 알림: Claude Code가 입력 대기 시 커스텀 알림
- 자동 포맷팅: 파일 편집 후 prettier, gofmt 등 실행
- 로깅: 규정 준수/디버깅을 위한 실행 명령어 추적
- 피드백: 코드 규칙에 대한 자동 피드백 제공
- 커스텀 권한: 프로덕션 파일 또는 민감한 디렉토리 수정 차단
⚠️ 보안 경고:
Hook은 현재 환경의 자격 증명으로 에이전트 루프 중 자동 실행된다. 악의적인 Hook
코드는 데이터를 유출할 수 있으므로, Hook을 등록하기 전에 항상 구현을 검토해야 한
다.
10. 에이전트 제어
settings.json의 권한 설정이나
--disallowedTools CLI 플래그에서
Task(AgentName) 구문으로 특정 에이전트를 비활성화할 수 있다.설정 예시:
JSON
{"permissions": {"deny": ["Task(Plan)", "Task(Explore)"]}}
11. Bash 와일드카드 패턴
Bash 도구 권한에서 와일드카드 패턴 매칭이 지원된다.
* 기호를 임의의 위치에 사
용할 수 있다.패턴 예시:
Plain Text
Bash(npm *) # npm으로 시작하는 모든 명령어Bash(* install) # install로 끝나는 모든 명령어Bash(git * main) # git과 main 사이에 임의 명령어
:* 구문:
Bash(npm:*)는 npm의 모든 하위 명령어를 허용한다: npm install, npm run dev,
npm clean 등.설정 예시:
JSON
{"permissions": {"allow": ["Bash(npm:*)","Bash(git status)","Bash(git diff)","Bash(git add *)","Bash(git commit *)"],"ask": ["Bash(npm install *)"]}}
권한 우선순위:
Deny규칙: 도구 사용 완전 차단Ask규칙: Allow 규칙보다 우선Allow규칙: 자동 허용
모범 사례:
- 제한적으로 시작하여 필요에 따라 권한 확대
- 프로젝트별 도구는
.claude/settings.local.json에 설정 - 공통 도구(npm, git, python 등)는
~/.claude/settings.json에 설정
12. 원격 세션 지원
claude.ai 구독자를 위해
/teleport와 /remote-env 슬래시 명령이 추가되었다. 원
격 세션을 재개하고 구성할 수 있다./teleport 명령어:
- 브라우저 버전과 CLI 도구 간 seamless 이동
- 채팅 기록 및 컨텍스트가 함께 복사됨
- CLI에서
--teleport <session-id>플래그 사용 가능
워크플로우 예시:
- 웹에서 작업 시작
- 작업을 백그라운드로 전환
- CLI에서 세션 텔레포트하여 계속 작업
/remote-env 명령어:
- 원격 세션 환경 구성
- 리포지토리의
.claude/settings.json에서 Hook 구성 가능 - 기본적으로 모든 Hook은 로컬 및 원격 환경에서 실행
- 특정 환경에서만 실행하려면
CLAUDE_CODE_REMOTE환경 변수 확인
네트워크 액세스:
- 원격 환경은 보안을 위해 HTTP/HTTPS 네트워크 프록시 뒤에서 실행
- 기본적으로 네트워크 액세스는 허용 목록 도메인으로 제한
현재 제한사항:
- 세션 텔레포트는 현재 한 방향만 가능: Claude Code on the web → 로컬 CLI
- 로컬 세션을 원격 머신(예: AWS 인스턴스)으로 계속할 방법 없음
터미널 개선사항
Shift+Enter 지원
iTerm2, WezTerm, Ghostty, Kitty에서 터미널 설정 수정 없이 Shift+Enter가 바로 동
작한다.
키보드 수정
- Alt+B와 Alt+F(단어 이동)가 iTerm2, Ghostty, Kitty, WezTerm에서 정상 작동
- Ghostty, iTerm2, Kitty, WezTerm에서 종료 시 터미널 키보드 모드가 올바르게 리셋
- CJK 문자(한국어, 일본어, 중국어)를 포함하는 멀티라인 프롬프트에서 불필요한 빈 줄 제거
이미지 붙여넣기
iTerm2에서 Cmd+V로 이미지를 붙여넣을 수 있다(Ctrl+V로 매핑). macOS TIFF 형식 스
크린샷 붙여넣기 안정성이 향상되었다.
보안 수정
민감한 데이터(OAuth 토큰, API 키, 비밀번호)가 디버그 로그에 노출될 수 있던 보안
이슈가 수정되었다. 모든 사용자는 가능한 빨리 업데이트하는 것이 강력히 권장된다
.
성능 개선
시작 성능
다수의 시작 성능 최적화가 적용되었다. 초기 로딩 시간이 단축되었다.
터미널 렌더링
네이티브 인스톨러나 Bun 사용 시 터미널 렌더링 성능이 개선되었다. 이모지, ANSI 코
드, 유니코드 문자 처리가 더욱 빨라졌다.
Jupyter 노트북
셀이 많은 Jupyter 노트북을 읽을 때 성능이 향상되었다.
안정성 개선
- 파이프 입력(
cat refactor.md | claude) 안정성 향상 - AskQuestion 도구 안정성 개선
- 컴팩션 안정성 개선
- sed in-place 편집 명령이 diff 미리보기와 함께 파일 편집으로 렌더링
- 응답이 출력 토큰 한도로 잘릴 때 자동으로 계속 (오류 메시지 대신)
- 권한 거부 후에도 서브에이전트(Task 도구)가 계속 작동하여 대체 접근 방식 시도가 능
주요 버그 수정
세션 관리
-c또는--resume으로 세션 재개 시 파일과 Skill이 올바르게 발견됨- 위쪽 화살표나 Ctrl+R 검색으로 기록에서 프롬프트 재생 시 붙여넣은 콘텐츠 손실수 정
- OAuth 토큰 갱신이 서버 보고와 로컬 만료 확인 불일치 시에도 트리거
- 세션 지속성 경합 조건 및 409 충돌 수정
파일 작업
- Write 도구가 하드코딩된 0o600 권한 대신 시스템 umask를 준수
- FIFO 파일 읽기 시 심볼릭 링크 해석을 건너뛰어 행 방지
명령 실행
$()명령 치환이 파싱 오류 없이 실행- 백슬래시 연속이 포함된 멀티라인 bash 명령이 올바르게 처리
- 글로벌 옵션 뒤의 하위 명령이 올바르게 식별(
git -C /path log등)
이미지 처리
- 대용량 붙여넣기 이미지가 "Image was too large" 오류 없이 처리
AWS/클라우드
- AWS Bedrock 서브에이전트가 EU/APAC 교차 리전 추론 모델 구성을 상속하여 403 오 류 해결
- 백그라운드 태스크의 대용량 출력이 30K자로 잘리고 파일 경로 참조 제공
기타
- 이름에 점이 있는 리포지토리에서 백그라운드 작업이 'git repository not found' 오류로 실패하던 문제 수정
- WSL 환경에서 Chrome의 Claude Code 지원
- 플러그인의
allowed-toolsfrontmatter에서${CLAUDE_PLUGIN_ROOT}치환 수정
SDK 및 확장 변경
SDK
- 최소 zod 피어 의존성이
^4.0.0으로 변경 (⚠️ 주요 변경사항)
VSCode 확장
- 컨텍스트 메뉴에 현재 선택된 모델명 표시
- 자동 수락 권한 버튼에 설명 라벨 추가(예: "Yes, allow npm for this project")
- 마크다운 콘텐츠에서 단락 구분이 올바르게 렌더링
- 확장에서 스크롤 시 부모 iframe도 스크롤되는 문제 수정
Windows
- 부적절한 렌더링 문제 수정
- 실행 파일 생성 실패 시 네이티브 인스톨러가 조용히 실패하는 문제 수정
UI/UX 개선
- Skill 실행 시 진행 상황 표시(도구 사용이 발생할 때마다 표시)
/skills/디렉토리의 Skill이 슬래시 명령 메뉴에 기본으로 표시 (user-invocable: false로 제외 가능)- Skill 제안이 최근 및 자주 사용하는 Skill을 우선 표시
- 첫 응답 토큰 대기 시 스피너 피드백 개선
- 스피너의 토큰 카운트에 백그라운드 에이전트 토큰 포함
- 권한 프롬프트 UX 개선(Tab 힌트가 푸터로 이동, 깔끔한 Yes/No 라벨)
- plan 모드 진입 시 권한 프롬프트 제거
- "Interrupted" 메시지 색상이 덜 위협적으로 변경
- Skills가 컨텍스트 시각화에서 별도 카테고리로 표시
새로운 환경 변수 및 설정
| 설정 | 설명 |
|---|---|
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS | 기본 파일 읽기 토큰 제한 재정의 |
CLAUDE_CODE_SHELL | 자동 셸 감지 재정의 |
language | 응답 언어 구성 |
respectGitignore | 파일 선택기용 프로젝트별 gitignore 제어 |
fileSuggestion | 커스텀 @ 파일 검색 명령어 |
IS_DEMO | 스트리밍/녹화용 UI에서 이메일 및 조직 숨김 |
주요 변경사항 및 제거
- 최소 zod peer dependency를
^4.0.0으로 변경 (SDK) - 계획 모드 진입 시 권한 프롬프트 제거
- 빠른 메모리 입력을 위한
#단축키 제거 (대신/edit CLAUDE.md사용)
영향 및 예상 효과
이번 업데이트는 Claude Code 사용자에게 다음과 같은 영향을 미친다.
개발 생산성 향상
Skill Hot-Reload와 향상된 Vim 모션으로 개발 워크플로우가 크게 개선된다. 특히
Skill을 자주 수정하는 사용자와 Vim 사용자에게 유용하다.
에이전트 오케스트레이션 강화
Forked Sub-Agent Context와 에이전트 제어 기능으로 복잡한 자동화 시나리오 구현이
가능해졌다. MCP list_changed 알림은 MCP 서버 개발자에게 필수적인 개선사항이다.
Hook 시스템 성숙
10가지 Hook 이벤트와 다양한 새 기능으로 Hook 시스템이 더욱 강력해졌다. 자동화,
로깅, 보안 강화 등 다양한 사용 사례를 지원한다.
터미널 경험 개선
주요 터미널에서 키보드 동작이 개선되었다. 특히 한국어, 일본어, 중국어 사용자에게
멀티라인 프롬프트 문제 해결과 IME 지원 개선이 반갑다.
보안 강화
민감 데이터 노출 문제 수정으로 보안이 강화되었다. 모든 사용자는 가능한 빨리 업데
이트하는 것이 권장된다.
업데이트 방법
Claude Code 2.1.0으로 업데이트하려면 다음 명령을 실행한다.
Bash
claude update# 또는 설치 스크립트 재실행curl -fsSL https://claude.ai/install.sh | sh