Claude Opus 5로 수천 개 AI 에이전트를 자동 조율하는 방법. 동적 워크플로우, 프롬프트 엔지니어링, 실험적 접근법 공개.
Claude로 AI 에이전트 구축하는 법: 보리스 체르니의 실전 가이드
핵심 요약
- Opus 5의 획기적 성능: Arc AGI 3에서 30% 달성, 프롬프트 주입 방어 완전 강화
- 제품 오버행(Product Overhang): 모델이 할 수 있는 것과 제품이 허용하는 것 사이의 격차를 활용
- 동적 워크플로우: 수천 개의 에이전트를 효율적으로 병렬 실행하는 새로운 패러다임
- 실험적 접근법: 자세한 지시보다 고수준 목표 설정 후 모델에 자율성 부여
- 자동화된 코드 유지보수: Claude가 매일 루틴을 실행하며 자체 코드베이스 관리
Opus 5: 새로운 기준의 AI 모델
Anthropic이 방금 출시한 Opus 5 는 이전 세대와 비교해 놀라운 도약을 이루었습니다. 특히 Arc AGI 3에서 30%를 달성 하며, 이는 이전 모델의 한 자릿수 초반~십대 초반에서 대폭 상승한 수치입니다.
Opus 5의 가장 획기적인 특징은 지속적 장시간 실행(extended-duration execution) 능력입니다. 자동 모드와 결합하면 며칠, 몇 주, 몇 달 동안 중단 없이 작업을 수행할 수 있습니다. 스캐폴딩이나 특별한 프롬프트 없이도 모델이 자체적으로 작업을 계속 진행합니다.
프롬프트 주입 방어의 혁신
또 다른 핵심 발전은 프롬프트 주입(prompt injection) 완전 방어 입니다. 과거에는 인터넷에서 "모든 것을 삭제하라"는 악의적 지시를 읽으면 모델이 이를 따랐습니다. Opus 5는 다릅니다.
이 성과의 뒤에는:
- 3년간의 정렬(alignment) 연구
- 기계적 해석 가능성(mechanistic interpretability) 기반 분류기
- Chris Ola의 신경 활성 분석: 프롬프트 주입 시 불이 켜지는 뉴런을 실시간으로 감지
세 겹의 방어 계층으로 인해 프롬프트 주입을 시연하기가 불가능해졌습니다.
제품 오버행: 숨겨진 기회의 발견
"제품 오버행(product overhang)" 은 모델이 실제로 할 수 있는 것과 제품 설계가 허용하는 것 사이의 격차를 의미합니다.
Claude Code의 역사적 예시
1년 반~2년 전, Sonnet 3.5가 최고의 코딩 모델이던 시절 Claude Code를 개발했을 때:
- 당시 기존 코딩 제품은 자동 완성이나 코드 읽기만 제공했습니다
- 전체 파일이나 함수 작성은 불가능하다는 것이 업계의 통념이었습니다
- Claude Code의 해결책: 모든 스캐폴딩을 제거하고 최소한의 하네스만 제공
이 "잠재력 해방(unhobbling)" 접근법이 제품 오버행을 해결했습니다.
현재의 거대한 미개척 기회
오늘날 현대 모델들은 훨씬 더 큰 제품 오버행을 가지고 있습니다. 많은 스타트업이 아직 포착하지 못한 상업적 기회들이 존재합니다.
핵심 발견: Opus 5에 OpenCV 접근 권한을 부여했을 때, 명시적 훈련 없이도 인물·동물·풍경을 효과적으로 그릴 수 있었습니다. 이는 "요청 격차(solicitation gap)" — 올바른 방식으로 요청하면 모델이 수행할 수 있지만, 우연한 실험으로만 발견되는 능력 — 을 보여줍니다.
새로운 모델로 시스템 프롬프트 재구축하기
새 모델이 출시될 때마다 Claude Code 팀은 모든 코드와 프롬프트의 상당 부분을 삭제 하고 처음부터 시작합니다.
3단계 접근법
1단계: 삭제
- 시스템 프롬프트를 완전히 제거합니다
2단계: 실행 및 관찰
- 모델을 실제로 사용하며 실패 지점을 파악합니다
- 지시사항을 미리 추측하지 않습니다
3단계: 선택적 재도입
- 모델이 반복적으로 같은 문제에 직면할 때만 지침을 다시 추가합니다
- 너무 일찍 도입하지 않는 것이 중요합니다
모델 기반 구축의 고유한 특성
모델 기반 엔지니어링은 전통적 시스템 엔지니어링과 근본적으로 다릅니다:
- 전통적 방식: 사전에 세밀한 설계, 광범위한 단위 테스트, 재설계는 수개월~수년 소요
- 모델 기반: 각 세대마다 미묘하게 다른 "개성"을 가진 살아있는 유기체처럼 작동
이는 매우 경험적이고 과학적인 과정 — 실험, 관찰, 반복 — 이 필수적임을 의미합니다.
모델을 효과적으로 활용하는 프롬프트 엔지니어링
보리스는 "프롬프트 엔지니어"라는 직함이 트렌드로 왔다가 사라질 것이라고 강조합니다. 현재의 기술은 단순 프롬프트 엔지니어링이 아닙니다.
일반적인 실수: 과도한 구체성
많은 엔지니어, 특히 경험 많은 개발자들이 범하는 오류:
- 모든 단계를 상세히 설명하는 지나친 구체성
- 모델이 정확히 당신이 한 방식대로 작업하도록 강제
역효과: 현대 모델의 경우 이러한 과도한 지침은 성능을 해칩니다.
올바른 접근: 자율성 부여
고수준 작업 설명 → 가이드라인 정의 → 종료 기준 설정 → "모델이 스스로 작업하게 두기"
모델은 종종 당신의 기대를 초과합니다. 예를 들어:
- 전체 코드베이스를 한 언어에서 다른 언어로 재작성
- 매우 복잡한 데이터 분석
- 수십 개의 풀 리퀘스트가 필요한 복잡한 기능 구축
실전 사례: Bun의 100,000줄 코드베이스 재작성
Bun 팀은 Zig에서 Rust로 전체 코드베이스(100,000줄 이상)를 재작성해야 했습니다. 메모리 관리 문제로 인한 누수가 있었고, 이를 해결할 필요가 있었습니다.
프롬프트
보리스의 팀은 Claude에게 간단한 지시를 제공했습니다:
"Electron 앱을 Swift로 다시 작성해 줘. Mac 가상 머신에서 Electron 앱을 실행하고 스크린샷을 찍은 다음, 픽셀 단위로 확인해 줘. Swift 버전과 비교해 줘. 완료될 때까지 멈추지 마."
결과
- 기간: 2주 이상 계속 실행
- 효과성: 모델이 자체 검증을 수행하며 진행
- 프로덕션 단계: 현재 프로덕션에서 실행 중
핵심: 프롬프트 자체는 믿을 수 없을 정도로 간단했습니다. 누구나 만들 수 있는 수준입니다.
동적 워크플로우: 수천 개 에이전트의 조율
동적 워크플로우는 Claude Code의 비교적 새로운 기능으로, 여러 에이전트를 효율적으로 조율 합니다.
작동 방식
- 첫 번째 단계: 여러 에이전트가 병렬로 작업 실행
- 검증 단계: 다른 에이전트 세트가 결과를 검증/요약
- 반복: 필요시 여러 에이전트로 다시 분산
기술 구현
- Bun 런타임 샌드박스 사용
- 가상 머신 내에서 에이전트 시작
- 토큰을 효율적으로 사용하며 복잡한 작업 수행
함수형 프로그래밍 원리
보리스의 배경이 함수형 프로그래밍이므로, 에이전트 조율은 수학적 대수학 원리로 설계되었습니다:
- 순차 실행(Sequential execution)
- 병렬 실행(Parallel execution)
- 에이전트 간 효율적인 토큰 사용
새로운 테스트-타임 컴퓨트 패러다임
이는 새로운 형태의 테스트-타임 컴퓨트 입니다. 역사적으로 AI의 지능은 모델 크기, 훈련 데이터, 훈련 플롭(flops)의 함수였습니다. 최근에는 테스트-타임 컴퓨트(생성되는 토큰의 양)도 추가되었습니다. 동적 워크플로우는 이를 조율하는 새로운 방법이며, 어려운 작업에 사용하는 테스트-타임 컴퓨트 양을 대폭 증가시킬 수 있습니다.
자동화된 코드 유지보수: 루프와 루틴
동적 워크플로우 외에도, 루프(loops) 와 루틴(routines) 으로 반복적인 유지보수 작업을 자동화합니다.
루프 vs 루틴
- 루프: 로컬에서 실행되는 크론 작업
- 루틴: 클라우드에서 실행 (노트북을 닫아도 계속 실행)
Claude가 수행하는 일상 자동화 작업
Anthropic에서 실행 중인 루틴들 (CLI, iOS, Android, 데스크톱 앱):
- 죽은 코드 정리: 정적/동적 분석으로 미사용 코드 찾아 매일 삭제
- 실험 배포: 100% 배포된 실험을 코드베이스에서 제거 후 출시
- 테스트 작성: 커버리지가 부족한 영역에 테스트 자동 추가
- 쓸모없는 테스트 삭제: 과거 모델에 불필요한 테스트 제거
- 추상화 경찰: 코드베이스의 중복된 추상화 찾아 통합
규모와 효과
- 일일 실행: 20~30개 루틴
- 에이전트 수: 하루에 수백~수천 개
- 대체 인력: 수십~수백 명의 엔지니어가 하던 업무
이로 인해 엔지니어들은 새 제품 출시, 사용자 소통, 흥미로운 작업에 집중할 수 있습니다.
뛰어난 개발자와 일반 개발자의 차이
여전히 어려운 작업들
모든 코딩이 해결된 것은 아닙니다. Claude가 여전히 어려움을 겪는 영역:
- 깊은 시스템 코드베이스
- 분산 시스템
- 미세한 UI 검증 (픽셀 단위 정확도)
Opus 5는 시각·컴퓨터 사용 능력에서 큰 도약을 이루었지만, 여전히 완벽하지 않습니다.
차별화되는 사고방식: 경험적 접근
최고의 Claude 사용자들이 공통으로 가지는 특징:
- 과거 가정 버리기: 이전 모델에서 배운 모든 것 잊기
- 이론적 지식 초월: 컴퓨터 과학 이론보다 실험 우선
- 개방적 실험: 이전에 효과 없던 아이디어도 재시도
- 유연성: 새로운 상황에 빠르게 적응
이러한 유연성과 실험적 개방성 이 현재 가장 성공적인 기술입니다.
학생과 초보자를 위한 조언
보리스는 자신의 프로그래밍 학습 경험을 공유했습니다:
- 중학교: TI-83 계산기로 BASIC 코딩 시작 (수학 시험 점수를 올리기 위해!)
- 심화: 미적분 문제를 해결하기 위해 어셈블리어 학습
핵심 원칙: 실용성
개념적 학습도 중요하지만, 실제 적용 방법을 이해해야 합니다.
추천 학습 경로:
- 자신이 만들고 싶은 것부터 시작
- 스타트업 및 제품 구축
- 데이터 과학, 사용자 소통 방법 학습
- 비즈니스 통찰력 개발
이 모든 것이 컴퓨터 과학과 결합될 때 엄청난 가치를 발휘합니다.
결론
Claude Opus 5는 AI 에이전트 구축의 새로운 시대를 열었습니다. 제품 오버행을 인식하고, 과도한 구체성을 피하며, 모델에 자율성을 부여하는 경험적 접근법 이 핵심입니다.
동적 워크플로우와 자동화된 루틴을 통해 수천 개의 에이전트를 조율하는 것이 가능해졌습니다. 가장 중요한 것은 이전의 가정을 버리고, 실험하며, 관찰한 결과에 따라 반복하는 유연한 사고방식 입니다.
당신의 "숨겨진 기회"를 찾고, 모델의 진정한 잠재력을 끌어내세요.
Original source: Boris Cherny: Building Claude Code
powered by osmu.app