본문으로 건너뛰기
피드

Claude Code 서브에이전트가 멀쩡한 코드 수정을 거부하는 회귀 버그

ai-ml 약 7분
vote
0
댓글
북마크

Claude Code v2.1.111에서 Read와 Grep 결과마다 주입되는 악성코드 경고 문구 때문에, 서브에이전트가 정상 오픈소스 코드 수정까지 거부한다는 이슈가 올라왔다. 작성자는 Opus 4.7 서브에이전트 5개 중 3개가 같은 문구를 근거로 작업을 멈췄고, 병렬 코딩 워크플로에는 치명적인 수준이라고 주장한다.

  • 1

    Claude Code v2.1.111에서 파일 읽기 결과마다 악성코드 관련 system reminder가 주입된다

  • 2

    문구 중 '코드를 개선하거나 보강하는 것을 거부해야 한다'는 문장이 조건 없이 읽혀 서브에이전트 거부를 유발한다

  • 3

    작성자 사례에선 Opus 4.7 서브에이전트 5개 중 3개가 정상 Rust 프로젝트 수정을 거부했다

  • 4

    반복 주입으로 50-100회 파일 읽기 기준 2만-4만 토큰이 낭비될 수 있다는 지적도 있다

  • Claude Code의 악성코드 경고 문구가 다시 문제로 올라옴

    • 예전 이슈는 v2.1.92에서 고쳐졌다고 닫혔는데, 작성자는 v2.1.111에서도 같은 동작이 재현된다고 함
    • ReadGrep의 content 모드 결과마다 <system-reminder>가 계속 주입됨
    • 이 문구가 서브에이전트에게는 정상 코드 수정도 거부해야 한다는 지시처럼 읽힌다는 게 핵심임
  • 작성자는 이 문구가 사용자 설정이나 훅이 아니라 Claude CLI 바이너리 자체에 들어 있다고 확인함

    • ~/.claude/settings.json은 11줄짜리이고 hook 설정도 없었다고 함
    • 바이너리 grep으로 2.1.111 CLI 안에 해당 문자열이 박혀 있음을 확인했다고 주장함
  • 실제 재현 사례는 꽤 빡셈. 정상 오픈소스 Rust 리버스 프록시 프로젝트에서 터졌다고 함

    • 작성자는 자신이 소유한 합법적인 OSS 프로젝트라고 설명함
    • 난독화, C2, 자격증명 탈취 같은 악성코드 특징이 없는 평범한 서버 코드였다고 함
    • 그런데 한 PR에서 Opus 4.7 서브에이전트 5개를 병렬로 돌렸고, 그중 3개가 작업을 거부함

⚠️주의

> 작성자 관찰 기준 서브에이전트 거부율이 약 40-60%였다. 병렬 코딩 에이전트를 실제 리팩터링에 쓰는 팀이면 이 정도는 그냥 불편함이 아니라 워크플로 붕괴에 가까움.

  • 거부한 서브에이전트들의 논리는 거의 같았음

    • 파일을 읽을 때마다 시스템 reminder가 들어왔고, 그 안에 “코드를 개선하거나 보강하는 것을 거부해야 한다”는 문장이 있었다는 것
    • 사용자 프롬프트가 “이건 악성코드가 아니니 계속해라”라고 해도, harness 수준 시스템 지시가 더 우선이라고 판단함
    • 한 서브에이전트는 구현 대신 잘 정리된 계획만 남기고 코드 변경은 하지 않았다고 함
  • 문제는 경고의 존재 자체보다 문장 구조임

    • 앞 문장은 “악성코드 분석은 제공할 수 있고 해야 한다”는 식으로 악성코드 맥락이 분명함
    • 그런데 뒤 문장 “코드를 개선하거나 보강하는 것은 반드시 거부해야 한다”는 조건이 문장 안에 붙어 있지 않음
    • 신중한 에이전트는 이걸 독립된 무조건 지시로 읽고, 시스템 안전 지시가 최우선이라는 규칙에 따라 거부한다는 설명임
  • 메인 스레드는 대체로 이 문구를 “악성코드일 때만”으로 관대하게 읽고 넘어감

    • 하지만 서브에이전트는 컨텍스트가 더 적고 안전 해석이 더 빡빡해서 문자 그대로 읽는 경향이 있다고 함
    • 작성자는 서브에이전트에게 준 작업 프롬프트가 메인 스레드에서 수행하던 작업과 거의 같았다고 밝힘
    • 즉 사용자 요청의 차이가 아니라, 서브에이전트 실행 환경과 문구 해석 차이가 문제라는 주장임
  • 제안된 수정안은 세 가지임

    • 경고를 아예 제거하기. 실제 악성코드 개선 요청은 모델의 기존 거부 행동으로도 처리 가능하다는 논리임
    • 조건을 문장 앞에 명확히 박기. 예를 들어 “방금 읽은 파일이 악성코드라고 판단되면, 그 악성코드를 개선하거나 보강하지 말라”처럼 쓰자는 것
    • 매 파일마다 넣지 말고 대화에서 첫 파일을 읽을 때만 넣기. 악성코드 분석은 보통 특정 파일 몇 개에 집중되니 80번씩 반복할 필요가 없다는 주장임
  • 토큰 비용도 작지 않음

    • 파일 읽기마다 약 400토큰짜리 reminder가 붙는다고 함
    • 세션에서 50-100개 파일을 읽으면 2만-4만 토큰이 경고 문구로만 소모될 수 있음
    • 관련 이슈들에선 1만 회 이상 삽입, 컨텍스트 15% 이상 소비 같은 사례도 언급됐다고 함
  • 이게 특히 아픈 지점은 Claude Code가 병렬 에이전트를 차별점으로 밀고 있다는 점임

    • 병렬 에이전트는 독립 리팩터링, 파일별 수정, 테스트 보강 같은 작업에서 진짜 가치가 나옴
    • 그런데 서브에이전트가 파일을 읽자마자 안전 문구를 문자 그대로 해석해 멈추면, 병렬화 이점이 사라짐
    • 작성자는 v2.1.92에서 고쳤다는 이전 수정이 유지되지 않고 있다고 보고, 세션 transcript도 공유할 수 있다고 덧붙임

기술 맥락

  • 이 이슈의 핵심은 안전 정책 자체보다 시스템 메시지의 스코프 설계예요. “악성코드라면 거부해라”와 “코드 개선을 거부해라”는 모델 입장에선 완전히 다른 지시인데, 조건절이 분리되면 보수적인 에이전트는 뒤 문장을 독립 명령으로 읽을 수 있거든요.

  • 서브에이전트에서 더 잘 터지는 이유도 꽤 현실적이에요. 메인 스레드는 앞뒤 대화와 사용자의 의도를 더 많이 갖고 있지만, 서브에이전트는 특정 파일과 작업 지시만 보고 판단하는 경우가 많아서 시스템 문구의 표면 문법에 더 끌려가요.

  • 매 Read 결과에 같은 reminder를 넣는 선택은 안전 신호를 강하게 주려는 설계로 볼 수 있어요. 하지만 파일을 수십 개 읽는 코딩 에이전트에선 이 방식이 토큰 비용과 컨텍스트 오염을 동시에 만들고, 결과적으로 정상 작업 성공률까지 떨어뜨릴 수 있어요.

  • 더 나은 구현은 조건을 문장 첫머리에 두고, 판단 대상도 “방금 읽은 파일이 악성코드일 때”로 좁히는 쪽이에요. 이렇게 해야 모델이 안전 지시를 유지하면서도 정상 OSS 코드 수정까지 막는 과잉 거부를 줄일 수 있어요.

이 이슈는 단순 UX 불평이 아니라, 에이전트 제품에서 시스템 메시지의 문법 하나가 실제 작업 성공률과 토큰 비용을 얼마나 크게 흔드는지 보여주는 사례다. 특히 병렬 서브에이전트는 컨텍스트가 얇아서 애매한 안전 문구를 더 보수적으로 해석하기 쉽다.

댓글

댓글

댓글을 불러오는 중...

ai-ml

건설업계도 피지컬 AI 실험 중, 관건은 로봇보다 현장 데이터다

국내 건설사들이 인공지능(AI)과 로보틱스를 건설 현장에 적용하려는 실험을 늘리고 있다. GS건설은 로봇을 활용한 자재 운반·반복 작업 자동화를 검토하고, 현대건설은 AI 카메라 기반 안전 기술을 도입하려는 중이다. 다만 실제 안착까지는 사람과 AI의 협업 방식, 현장 작업자의 데이터 활용 체계 같은 숙제가 남아 있다.

ai-ml

AI 모델 접속도 수출통제 대상이 되면 벌어지는 일

앤트로픽이 미국 정부 수출통제 지침에 따라 최신 AI 모델 접근을 출시 사흘 만에 차단했다는 사례를 통해, 클라우드 AI 모델 접근권이 국가 안보와 산업정책에 종속될 수 있다는 문제가 드러났다. 데이터 주권만으로는 부족하고, 모델 능력과 연산 접근권까지 포함한 소버린 AI 전략이 필요하다는 논점이다.

ai-ml

건설 현장에 AI 로봇이 들어오려면 아직 데이터와 협업 방식이 숙제

GS건설, 현대건설, 삼성물산 등 국내 건설사가 AI와 로봇 기술을 현장 자동화와 안전관리, 단지 서비스에 적용하려는 움직임을 보이고 있다. 다만 사람과 로봇이 함께 일하는 방식, 실증 사례 축적, 현장 작업자의 데이터 활용 체계가 갖춰져야 실제 확산이 가능하다는 지적이 나온다.

ai-ml

라벨링 1천 장을 100장으로 줄인다는 슈퍼브에이아이의 비전 AI 플랫폼

슈퍼브에이아이가 2026 스마트테크 코리아에서 데이터 구축부터 모델 개발, 운영까지 묶은 슈퍼브 플랫폼을 공개했다. 비전 파운데이션 모델로 라벨링 부담을 줄이고, 대규모 언어 모델과 비디오 언어 모델을 결합해 텍스트 명령만으로 CCTV 속 위험 상황을 찾는 기능까지 제시했다.

ai-ml

프롬프트만으로 게임 만드는 시대, 진짜 어디까지 왔나

AI가 이미지·영상·코드 생성을 넘어, 탐험 가능한 3D 세계와 게임 프로토타입까지 만들기 시작했다. 구글 딥마인드의 프로젝트 지니부터 오버데어, 버스에잇, 바르코까지 사례는 늘고 있지만, 물리 오류·레이턴시·최적화·조작감 같은 완성도 문제는 아직 사람 몫으로 남아 있다.