AI 에이전트에게 복잡한 웹 앱을 만들어달라고 요청하면 어떻게 될까요? 처음엔 열심히 코드를 짜다가, 컨텍스트 윈도우가 가득 차면 작업을 멈춥니다. 새로운 세션이 시작되면 이전에 무슨 일이 있었는지 전혀 모른 채 다시 시작하죠. 마치 교대 근무 개발팀이 인수인계 없이 일하는 것과 같습니다.
Anthropic이 이 문제를 해결하는 새로운 방법을 공개했습니다. Claude Agent SDK를 개선해 여러 컨텍스트 윈도우에 걸쳐 일관되게 작업할 수 있도록 만든 것인데, 핵심은 실제 소프트웨어 엔지니어들이 쓰는 방법—Git, 체크리스트, 진행 상황 로그—을 에이전트에게 그대로 적용했다는 점입니다.

Anthropic은 Claude Agent SDK가 긴 작업을 수행할 때 겪는 문제를 분석하고, Initializer Agent와 Coding Agent라는 2단계 구조로 해결책을 제시했습니다. 실제로 claude.ai 클론 앱을 만드는 실험에서 이 방식이 어떻게 작동하는지 보여줍니다.
출처: Effective harnesses for long-running agents – Anthropic
에이전트가 실패하는 두 가지 패턴
Anthropic 연구팀은 Claude Opus 4.5 같은 최신 모델도 “claude.ai 클론을 만들어줘” 같은 고수준 명령만 받으면 제대로 된 웹 앱을 완성하지 못한다는 걸 발견했습니다.
첫 번째 실패 패턴은 ‘한 방에 다 하려는’ 경향입니다. 에이전트가 너무 많은 기능을 동시에 구현하려다 컨텍스트 윈도우가 바닥나고, 기능이 절반만 완성된 상태로 세션이 끝나버립니다. 다음 세션의 에이전트는 무슨 일이 있었는지 추측해야 하고, 앱을 다시 작동시키는 데 시간을 낭비하죠.
두 번째는 조기 완료 선언입니다. 몇 가지 기능이 만들어진 걸 보고는 “이제 다 됐네!”라고 판단해버리는 겁니다. 실제로는 해야 할 일이 훨씬 더 많이 남았는데 말이죠.
Git과 체크리스트로 해결하다
Anthropic의 해법은 놀랍도록 실용적입니다. 복잡한 메모리 시스템을 만드는 대신, 실제 개발자들이 쓰는 도구를 그대로 활용했습니다.
Initializer Agent는 맨 처음 세션에서 환경을 세팅합니다. 가장 중요한 건 기능 체크리스트를 만드는 일입니다. claude.ai 클론의 경우 “새 채팅 버튼을 누르면 새 대화가 시작된다” 같은 기능 200개 이상을 JSON 파일로 정리했습니다. 각 기능은 처음엔 모두 “실패” 상태로 표시되어, 나중 에이전트들이 무엇을 완성해야 하는지 명확히 알 수 있습니다.
Coding Agent는 그 다음부터 매 세션마다 작동합니다. 체크리스트를 읽고, 아직 안 된 기능 중 하나만 골라서 작업합니다. 여기서 핵심은 “한 번에 하나씩”이라는 원칙입니다. 기능을 완성하면 Git에 커밋하고, claude-progress.txt 파일에 무슨 일을 했는지 기록합니다. 다음 세션의 에이전트는 이 Git 로그와 진행 상황 파일을 읽으면서 “지금까지 무슨 일이 있었는지” 빠르게 파악할 수 있습니다.
매 세션은 정해진 순서로 시작합니다. 현재 디렉토리 확인 → Git 로그 읽기 → 진행 상황 파일 읽기 → 기능 리스트에서 다음 작업 선택 → 개발 서버 실행해서 앱이 제대로 작동하는지 테스트. 만약 이전 세션이 버그를 남겼다면, 새 기능을 추가하기 전에 먼저 고칩니다.
테스팅으로 완성도 높이기
에이전트가 저지르는 또 다른 실수는 제대로 테스트하지 않고 기능을 완료했다고 표시하는 것입니다. 코드는 짰고 간단한 테스트도 했지만, 실제 사용자 관점에서 종단 간(end-to-end) 테스트는 안 하는 거죠.
Anthropic은 이 문제를 Puppeteer 같은 브라우저 자동화 도구로 해결했습니다. Claude에게 “실제 사람처럼 브라우저에서 테스트하라”고 명시적으로 지시하자 성능이 크게 개선됐습니다. 에이전트가 직접 웹페이지를 열고, 버튼을 클릭하고, 결과를 확인하면서 코드만 봐서는 몰랐던 버그를 찾아낼 수 있었죠.
물론 한계도 있습니다. Claude의 비전 능력이 완벽하지 않고, Puppeteer가 브라우저 기본 알림창을 캡처하지 못하는 등의 제약으로 일부 버그는 여전히 놓치곤 합니다.
실용적 접근의 가치
이 연구가 흥미로운 건 최첨단 메모리 아키텍처를 만드는 대신, 이미 검증된 소프트웨어 개발 관행을 AI에 적용했다는 점입니다. Git 커밋, 기능 명세서, 진행 상황 문서—이 모든 게 원래 사람 개발자들이 협업하고 일관성을 유지하기 위해 만든 도구들입니다.
Anthropic은 이 방식이 “하나의 가능한 해법”이며 아직 답해야 할 질문들이 많다고 인정합니다. 범용 에이전트 하나가 모든 일을 하는 게 나을까요, 아니면 테스팅 전담, 코드 정리 전담처럼 역할을 나눈 멀티 에이전트 구조가 더 효과적일까요? 웹 앱 개발에 최적화된 이 방식이 과학 연구나 금융 모델링 같은 다른 분야에도 통할까요?
확실한 건, AI 에이전트가 실제 업무에 투입되려면 단순히 똑똑한 모델을 넘어 효과적인 ‘작업 방식’이 필요하다는 사실입니다. 그리고 그 방식은 이미 우리 곁에 있었습니다.
참고자료: Anthropic says it solved the long-running AI agent problem with a new multi-session Claude SDK – VentureBeat

답글 남기기