Claude Code 2.1.291 업데이트: 권한 프롬프트와 세션 손실 버그가 중요한 이유
요약: Anthropic의 Claude Code changelog에는 2.1.291에서 두 가지 회귀 버그가 고쳐졌다고 적혀 있다. 하나는 cloud session에서 permission prompt 답변이 누락될 수 있는 문제, 다른 하나는 종료 시 마지막 세션 메시지가 사라질 수 있는 문제다. 겉보기에는 작은 패치지만, AI 코딩 에이전트를 팀 워크플로우에 넣은 조직에는 꽤 중요한 신호다. 에이전트 생산성보다 먼저 봐야 할 것은 권한 승인 기록과 세션 복구 안정성이다.
이번 업데이트의 핵심
Claude Code 2.1.291의 변경 사항은 짧다. 2.1.290에서 cloud session이 permission prompt에 대한 답변을 누락할 수 있던 회귀를 수정했고, 2.1.288에서 종료 시 마지막 메시지가 유실될 수 있던 회귀를 수정했다.
바로 직전 2.1.290은 훨씬 큰 릴리스였다. plugin hook에 serverToolUses, agentId, ceiling 같은 정보가 추가됐고, Claude apps gateway의 sign-in approval page에 Deny 버튼이 들어갔으며, claude attach와 claude logs가 세션 이름 일부로 동작하도록 개선됐다. Managed Agents 온보딩 명령도 추가됐다.
따라서 2.1.291은 기능 추가 릴리스라기보다 안정화 릴리스에 가깝다. 하지만 AI 코딩 도구에서 안정화 릴리스는 “버그 수정” 이상의 의미가 있다. 권한 승인과 세션 기록은 나중에 문제가 터졌을 때 원인을 복구하는 근거이기 때문이다.
권한 프롬프트 누락이 위험한 이유
AI 코딩 에이전트는 파일 읽기, 파일 수정, 명령 실행, 외부 도구 호출을 반복한다. 이때 permission prompt는 단순한 UX 요소가 아니다. 조직 입장에서는 “누가 어떤 작업을 승인했는가”를 남기는 통제 지점이다.
만약 cloud session에서 승인 답변이 누락된다면 세 가지 문제가 생길 수 있다.
첫째, 에이전트가 사용자는 승인했다고 생각하지만 실제 실행 흐름은 멈출 수 있다. 이 경우 작업은 중간 상태로 남고, 개발자는 원인을 찾느라 시간을 잃는다.
둘째, 반대로 승인 기록이 불완전하면 감사 추적이 약해진다. 민감한 저장소에서 명령 실행이나 파일 접근이 있었다면, 나중에 승인 여부를 확인할 수 있어야 한다.
셋째, 자동화 파이프라인이 불안정해진다. CI 보조, 코드리뷰 보조, 장기 실행 리팩터링처럼 긴 세션에서는 한 번의 승인 누락이 전체 작업 실패로 이어진다.
이 문제는 “프롬프트 하나가 씹혔다”가 아니라, 에이전트 운영에서 가장 중요한 통제점이 흔들릴 수 있다는 뜻이다.
세션 메시지 유실이 더 치명적인 상황
마지막 세션 메시지가 종료 시 사라지는 문제도 가볍게 보면 안 된다. AI 코딩 도구의 세션은 단순 채팅 로그가 아니라 작업 메모리다. 어떤 파일을 봤는지, 어떤 가정을 했는지, 어떤 테스트가 실패했는지, 다음에 무엇을 해야 하는지가 대화 안에 남는다.
세션 마지막 메시지가 유실되면 특히 다음 상황에서 손실이 크다.
- 장기 리팩터링 중 마지막 요약이 사라진 경우
- 에러 원인 분석 직후 종료했는데 재현 단계가 사라진 경우
- subagent나 teammate가 넘긴 결과가 마지막 메시지에 있었던 경우
- 배포 전 체크리스트가 세션 끝에 정리됐던 경우
- 사용자가 승인 또는 거부한 근거가 마지막에 남아 있던 경우
개발자는 코드만 보고도 많은 것을 복구할 수 있지만, 왜 그렇게 바꿨는지는 로그가 없으면 복구하기 어렵다. AI 에이전트는 사람이 작업한 것보다 중간 판단이 더 불투명하기 때문에 세션 로그의 가치가 더 크다.
2.1.290에서 같이 볼 만한 변화
이번 패치와 연결해 보면 2.1.290의 변경 중 몇 가지가 눈에 띈다.
plugin hook에 agentId가 추가된 것은 main session과 subagent의 permission check를 구분하기 위한 변화다. 팀 단위로 에이전트를 쓰는 조직에서는 “본체가 한 일”과 “서브에이전트가 한 일”을 나눠 봐야 한다.
serverToolUses는 API가 서버 측에서 실행한 도구 호출의 id, name, input, start, end를 노출한다. 이 정보는 도구 호출 추적과 비용 분석, 장애 재현에 유용하다.
ceiling은 조직이 요구하는 승인 수준을 읽을 수 있게 해준다. 단순히 허용/거부가 아니라, 어떤 수준의 승인이 필요한지 명명할 수 있다는 뜻이다.
claude attach와 claude logs가 세션 이름 일부로 동작하는 것도 운영 측면에서는 중요하다. 세션 ID를 매번 찾지 않아도 작업 로그에 접근할 수 있으면, 장기 작업의 복구 시간이 줄어든다.
팀에서 바로 점검할 항목
Claude Code를 개인 도구로 쓰는 단계라면 업데이트 후 체감 차이가 크지 않을 수 있다. 하지만 팀의 개발 워크플로우에 붙였다면 다음 항목을 확인해야 한다.
먼저 버전 고정 전략이 필요하다. AI 코딩 도구는 빠르게 업데이트되지만, 매번 최신 버전으로 자동 이동하면 회귀 버그가 작업 흐름에 바로 들어올 수 있다. 최소한 팀 공용 runner, cloud session, 로컬 개발 환경의 버전을 기록해야 한다.
다음으로 승인 로그를 별도 저장해야 한다. 툴 자체 로그만 믿지 말고, 중요한 작업에서는 승인 대상 명령, 파일 경로, 승인자, 시간, 세션 ID를 외부 로그에도 남기는 편이 안전하다.
또한 장기 세션 종료 전에는 요약을 파일로 남기는 습관이 필요하다. 마지막 메시지 유실 문제가 고쳐졌더라도, 운영 원칙은 “중요한 상태는 대화 밖에도 저장한다”가 맞다.
마지막으로 cloud session과 local session을 같은 신뢰도로 보지 말아야 한다. 네트워크, 인증, gateway, 원격 컨테이너가 끼어드는 순간 실패 지점이 늘어난다. 중요한 수정은 로컬 재현 또는 CI 검증과 연결해야 한다.
실행 체크리스트
- Claude Code 버전을 팀 문서나 CI 로그에 남긴다.
- cloud session에서 권한 프롬프트가 정상 반영되는지 작은 명령으로 테스트한다.
- 장기 작업 종료 전 마지막 상태를 파일 또는 이슈 댓글로 저장한다.
- 승인 대상 명령과 파일 경로를 세션 로그 밖에도 남긴다.
- subagent가 있는 워크플로우에서는 agentId 기준으로 작업 주체를 구분한다.
- 업데이트 직후에는 대형 리팩터링보다 작은 저장소에서 먼저 검증한다.
- “AI가 했다”가 아니라 “어떤 세션이, 어떤 승인 아래, 어떤 도구로 했다”까지 추적한다.
Claude Code 2.1.291은 화려한 기능 발표가 아니다. 하지만 실무 개발팀에는 이런 패치가 더 중요할 때가 많다. AI 코딩 에이전트가 코드 작성 속도를 올릴수록, 권한과 기록의 안정성은 선택 기능이 아니라 기본 인프라가 된다.