24시간을 위한 AI 코드. 미래는 여기에 있습니다(그리고 결점이 있습니다).

우리는 클로드에게 복잡한 코딩 작업을 주었고, 특별한 테스트 환경에서 하루 종일 nonstop으로 실행하도록 했습니다. 그 결과는 자율 소프트웨어 개발의 미래에 대한 놀라운 통찰력을 제공하며, 현재의 매우 현실적인 한계도 드러냅니다.

Hero image for: 24시간을 위한 AI 코드. 미래는 여기에 있습니다(그리고 결점이 있습니다).
💡

TL;DR / Key Takeaways

우리는 클로드에게 복잡한 코딩 작업을 주었고, 특별한 테스트 환경에서 하루 종일 nonstop으로 실행하도록 했습니다. 그 결과는 자율 소프트웨어 개발의 미래에 대한 놀라운 통찰력을 제공하며, 현재의 매우 현실적인 한계도 드러냅니다.

24시간 AI 도전기

콜 메딘은 AI를 코딩 자동 완성기로 취급하는 것을 멈추고 결코 잠을 자지 않는 주니어 엔지니어처럼 대하기 시작하면 어떤 일이 발생하는지 알고 싶어 했습니다. 그래서 그는 앤트로픽의 새로운 클로드 코드 “장기 실행 에이전트 하네스”를 시작하고 AI에게 24시간 동안 쉬지 않고 일하도록 강요했습니다. "완료" 버튼도 없이요. 그 결과: 원시 모델 IQ의 스트레스 테스트가 아니라, 에이전트 시스템이 실제 소프트웨어 프로젝트를 처음부터 끝까지 처리할 수 있는지를 측정하는 테스트가 이루어진 것입니다.

투두 리스트 앱이나 단일 파이썬 스크립트를 요청하는 대신, 메딘은 가혹한 목표를 설정했다: claude.ai의 기능적인 웹 클론. 이는 채팅 기록, 대화 흐름, 아티팩트, 그리고 실제 제품처럼 작동하는 반응형 UI를 의미하며, 단지 정적인 랜딩 페이지가 아니다. 성공의 기준은 작동하는 풀스택 앱으로 정의되었지, 단순한 코드 스니펫이 아니다.

메딘은 처음부터 테스트 주도 개발에 맞춰 실험을 구성했습니다. AI가 코드를 한 줄이라도 작성하기 전에, 그는 개발 서버를 실행하고 헤드리스 브라우저를 시작하여 핵심 흐름을 클릭하는 자동화된 종단 간 테스트를 정의했습니다. 에이전트의 임무: 테스트가 성공할 때까지 코드를 계속 수정하는 것입니다.

Anthropic의 오픈 소스 하네스는 Medin이 GitHub에서 가져온 것으로, 모든 것을 결합합니다. “초기화기” 에이전트는 사양, 작업 및 테스트 스위트를 배치한 다음, 전담 코딩 에이전트가 파일을 반복적으로 수정하고, 테스트를 실행하며, 실패를 검사합니다. 각 세션은 미니 스프린트처럼 작동하며, 이 하네스는 수십 개의 스프린트를 차례로 연결합니다.

거의 24시간 동안 시스템은 50개 이상의 코딩 세션을 순환하며 백엔드 API, 프론트엔드 구성요소 및 테스트 고정을 다루었습니다. 브라우저 테스트는 냉혹한 심판 역할을 했습니다: 기능이 작동하면 확인해주고, 그렇지 않으면 에이전트를 다시 편집기로 밀어냈습니다. AI가 실패한 흐름을 수정한 다음 새로운 통합 엣지 케이스에 부딪히며 진행은 간헐적으로 이루어졌습니다.

결과적으로, 전체 테스트의 절반 이상이 통과하여 인지 가능한 claude.ai 스타일의 인터페이스를 생성할 수 있었지만, 픽셀 완벽한 복제본과는 거리가 멀었습니다. 이 테스트는 “24시간의 AI”가 마법처럼 “생산 준비 완료된 SaaS”가 되지 않는다는 것을 보여주었지만, 동시에 현대의 에이전트들이 구조, 지속성 및 완성도를 위한 명확한 기준이 주어질 때 비트리비얼한 다층 소프트웨어 작업을 유지할 수 있음을 입증했습니다.

'채팅에서 코드까지'를 넘어: 에이전트 하네스

일러스트: '채팅에서 코드로'를 넘어서: 에이전트 harness
일러스트: '채팅에서 코드로'를 넘어서: 에이전트 harness

앤트로픽의 오픈 소스 에이전트 하네스는 클로드를 수다스러운 자동 완성기에서 하나의 단일 프롬프트와 코드 덩어리를 넘어, 마치 결코 퇴근하지 않는 주니어 엔지니어에 가까운 모습으로 발전시킵니다. 이 하네스는 클로드를 연결하여 누군가가 매 단계마다 살펴보지 않고도 몇 시간, 심지어 며칠 동안 실행될 수 있는 구조로 만듭니다.

핵심적으로 이 하네스는 루프를 강제합니다: 계획 → 코드 → 테스트 → 개선. 클로드는 변경 사항을 제안하고, 파일을 수정하며, 자동화된 테스트나 개발 서버를 실행하고, 결과를 검토한 후 다음에 무엇을 할지 결정합니다. 이 사이클은 수십 번 반복되며, 코울 메딘이 클로드에게 24시간 동안 claude.ai 복제를 추적해 달라고 요청할 때 바로 그 점을 의지합니다.

단일 촬영 프롬프트는 정적인 맥락의 스냅샷을 기반으로 한 일회성 답변을 제공합니다. 장기 실행 상태 유지 세션은 프로젝트 이력을 지속적으로 축적합니다: 실패한 테스트, 이전 차이, 아키텍처 결정, 심지어 TODO 주석까지. 50회 이상의 코딩 세션을 통해 에이전트는 이전 선택을 리팩토링하고, 회귀 문제를 풀어내며, 단일 응답 창에서는 불가능한 다단계 전략을 추구할 수 있습니다.

Anthropic의 디자인은 이를 각각의 역할로 나누고 있습니다. 초기화 에이전트가 먼저 실행되어 레포, 스펙, 그리고 미리 정의된 테스트를 읽고, 이후 전체적인 계획을 초안합니다: 기술 스택, 디렉토리 레이아웃, 마일스톤, 그리고 "완료"를 정의하는 테스트를 포함합니다. 이 에이전트는 시스템이 심각한 코드를 작성하기 전에 객관적인 점수판을 갖출 수 있도록 테스트 스위트를 생성하거나 개선할 수도 있습니다.

초기화 프로그램이 무대를 설정하면, 전담 코딩 에이전트가 작업을 수행합니다. 이 에이전트는 구체적인 작업을 반복합니다: React 구성 요소 생성, API 라우트 연결, 데이터베이스 스키마 조정 또는 특정 실패한 Playwright 테스트 수정. 각 반복은 변경 사항을 만들고 검증하기 위해 하네스에서 제공하는 도구—파일 편집 명령, 테스트 실행기, 헤드리스 브라우저 확인—를 사용합니다.

하네스는 상태를 디스크에 저장하고 이를 프롬프트로 다시 연결하기 때문에 클로드는 어제의 마이그레이션이나 자꾸 실패하는 그 불안정한 UI 테스트에 대해 추론할 수 있습니다. 메딘의 24시간 실행 결과가 이를 보여줍니다: 하네스는 단순히 코드를 생성하는 것이 아니라 계획과 현실 사이의 지속적인 협상을 조율하며, 이는 멋진 데모가 아닌 통과된 테스트로 측정됩니다.

당신의 테스트가 진정한 유도입니다.

귀하의 프롬프트가 아닌 귀하의 테스트가 이 24시간 스턴트를 이끌었습니다. 콜 메딘은 테스트 주도 개발(TDD)을 핸들처럼 취급했습니다: 코드에서 "완료"의 의미를 정의한 다음, 클로드 코드가 현실이 사양과 일치할 때까지 작업하도록 했습니다. 감정, "잘 보인다"는 말 없이, 단지 빨간색 또는 초록색만 있었습니다.

에이전트가 UI의 한 줄도 작성하기 전에, 콜은 클로드.ai의 핵심 흐름을 포착하는 전체 테스트 스위트를 구축했습니다. 이 하니스는 대화 생성, 메시지 이력 및 아티팩트를 모호한 목표가 아닌 명확한 요구 사항으로 알고 있었습니다. 성공은 해당 테스트가 통과되거나 에이전트가 계속 작동하는 것을 의미했습니다.

그 테스트 스위트는 인간과 에이전트 간의 계약처럼 작용했습니다. 모든 구성 요소를 세세하게 관리하는 대신, 콜은 단지 이렇게 말했습니다: 여기 행동들이 있고, 여기 주장들이 있으니 이들을 충족하세요. 에이전트의 자율성은 그 계약 안에서 온전히 존재하며, 이를 실행하는 하네스가 반복적으로 이를 강제했습니다.

진전은 거의 즉시 주관적이지 않게 되었다. 각 코딩 세션이 끝난 후, 하니스는 테스트를 실행하고 간단한 점수를 생성했다: X의 Y가 통과, 그리고 실패에 대한 스택 트레이스. 대략 50회 이상의 세션을 24시간 동안 진행하면서, 그 숫자는 제로에서 "절반 조금 넘는" 테스트가 통과하는 수준으로 올라갔다.

테스트는 내비게이션과 안전 장치 역할을 했다. 리팩토링이 이전 흐름을 깨뜨렸을 때, 빨간 테스트는 에이전트를 되돌려 보냈고, 새로운 코드와 예전의 약속을 조화롭게 만들도록 강요했다. 이 피드백 루프는 인간의 코드 리뷰를 더 차갑고 신뢰할 수 있는 것으로 대체했다: 자동화된 검사.

콜은 실제 사용자를 헤드리스 브라우저에서 시뮬레이션하는 엔드 투 엔드 테스트에 크게 의존했다. Playwright나 Puppeteer와 같은 도구를 사용하여 테스트 환경은 다음과 같은 작업을 수행했다: - 개발 서버 시작 - 헤드리스 크롬 인스턴스 열기 - 로그인, 새로운 채팅 및 아티팩트 생성 클릭 - DOM 콘텐츠, 네트워크 호출 및 지속 상태에 대한 어세르트 수행

그 브라우저 테스트는 추상적인 요구사항을 구체적인 단계로 바꾸었습니다: “이 버튼을 클릭하세요,” “이 프롬프트를 입력하세요,” “이 응답 형식을 기대하세요.” 실패했을 때, 에이전트는 정확한 선택자, 오류 메시지, 예상 값과 실제 값을 확인한 후, 코드를 수정하고 테스트를 다시 실행했습니다.

결국, 통과된 테스트는 부분적이지만 실제로 존재하는 claude.ai 클론을 설명했습니다. 실패한 테스트는 손쉽게 표현된 실망이 아니라 누락되거나 고장난 행동을 정확히 매핑했습니다.

첫 몇 시간: 진전의 분주함

모멘텀은 거의 즉시 발생합니다. Claude Code는 Anthropic의 오랜 에이전트 하네스에 연결되어 새로운 프로젝트를 시작하고, 의존성을 설치하며, 사람이 아키텍처를 스케치하는 것보다 빠르게 전체 스택 앱을 구성합니다. 첫 번째 시간 안에, React 프론트 엔드, 기본 백엔드 API, 그리고 로컬 개발 서버에서 엔드 투 엔드 테스트를 실행하는 데 필요한 배선을 생성합니다.

UI 작업은 빠르고 자신감 있게 진행됩니다. 에이전트는 claude.ai 스타일의 레이아웃을 재구성합니다: 대화를 위한 사이드바, 주 채팅 창, 코드 블록과 포맷된 텍스트를 표시할 수 있는 아티팩트 패널이 포함됩니다. 메시지 버블, 입력 영역 및 대화 목록에 대한 컴포넌트를 초안 작성한 후, 자리 표시자 데이터에 연결하여 실제 로직이 적용되기 전에도 인터페이스가 생동감 있게 느껴집니다.

콜 메디는 TDD 검사를 미리 수행하여 진행 상황에 점수가 매겨집니다. 초기 테스트는 기본적인 사항을 다루며: 앱이 충돌 없이 부팅되고, 채팅 화면이 렌더링되며, 메시지가 순서대로 표시되고, 기본 라우팅이 작동합니다. 클로드는 이를 마치 신입 엔지니어가 새로운 프로젝트 스프린트에서 진행하듯 빠르게 처리하며, 종종 실패한 테스트를 한 번의 반복으로 수정합니다.

저수준 배관 작업이 진행됩니다. 에이전트는 대화 생성, 메시지 게시 및 기록 가져오기를 위한 API 경로를 설정한 후, 이를 호출하도록 프론트 엔드를 업데이트합니다. TypeScript 타입, 간단한 오류 처리 및 환경 설정이 사용자 요청 없이 나타나며, 이는 테스트를 지속적으로 재실행하고 스택 트레이스를 표출하는 하니스의 부작용입니다.

이 “낙엽을 쉽게 따는” 순간 동안, 시스템은 마치 마법처럼 보입니다. 커밋이 쌓이는 모습을 지켜봅니다: 새로운 컴포넌트, CSS 수정, 유틸리티 함수, 테스트 파일. 각 녹색 테스트는 다음 수준의 야망—다중 메시지 흐름, 로딩 상태, 기본 아티팩트 렌더링—을 열어주며, 그 사이에 인간이 키보드를 터치하지 않습니다.

몇 시간 동안, 병목 현상은 지능이 아니라 I/O입니다. 에이전트는 아이디어를 기다리는 것보다 `npm install`, 브라우저 테스트, 개발 서버 재시작을 더 많이 기다리며, 작업이 정말로 어려워지기 전에 테스트 스위트의 쉬운 30-40%를 빠르게 처리합니다.

정체기에 접어들다: AI가 막히는 지점

일러스트: 정체기: AI가 갇히는 곳
일러스트: 정체기: AI가 갇히는 곳

모멘텀은 충돌로 실패하지 않는다; 그것은 반복으로 희석된다. 대략 12시간과 수십 차례의 에이전트 세션이 지난 후, 콜 메딘의 claude.ai 클론은 더 이상 앞으로 나아가지 않고 원을 그리며 돌아다닌다. 새로운 커밋은 계속 들어오지만, 기존의 논리를 재조합하거나, 선택기를 조정하거나, 구성 요소의 이름을 바꾸는 데 그치고 새로운 통과 테스트를 열어주는 데는 실패하고 있다.

복잡성은 더 이상 지역적이지 않고 시스템적이 됩니다. 에이전트는 이제 인증 상태에 따라 달라지는 브라우저 흐름, 새로고침 후에도 지속되어야 하는 대화 스레드, 백엔드 API, 프론트엔드 라우팅 및 UI 상태에 영향을 미치는 아티팩트 렌더링과 같은 다중 홉 문제에 씨름하고 있습니다. 각 변화는 하나의 엣지 케이스를 해결하지만 조용히 두 개의 다른 엣지 케이스를 깨뜨립니다.

불안정한 테스트가 주요 적으로 떠오릅니다. 헤드리스 브라우저 검사에서는 경합 조건, 타이밍 문제, 또는 미세한 DOM 차이로 인해 가끔 실패가 발생합니다. 테스트 프레임워크는 모든 실패한 테스트를 진짜 버그로 간주하므로, 에이전트는 인간이 빠르게 '테스트가 잘못됨, 앱은 문제 없음'이라고 표시할 비결정적인 실패를 쫓아 매번 실행을 반복합니다.

숫자에서 정체된 모습을 확인할 수 있습니다. 24시간 후, 하네스는 전체 테스트의 절반 이상이 통과했다고 보고합니다. 자동화된 시스템으로서는 인상적이지만, 부드러운 곡선보다는 단단한 한계입니다. 초기 시간대에서는 명백한 승리를 거두고; 이후 시간대에서는 구문 정확성뿐만 아니라 제품의 미세한 차이를 담고 있는 통합 테스트에 맞서 고군분투합니다.

작업이 모호해질수록 건축적 직관이 중요해지지만, 에이전트는 이를 가지고 있지 않습니다. 에이전트는 React 컴포넌트를 리팩토링하고, API 핸들러를 재배치하며, TypeScript 타입을 조정할 수 있지만, 전체 claude.ai 스타일 앱에 대한 강력한 정신 모델이 부족합니다. 브라우저 흐름이 백엔드 가정과 일치하지 않을 때, 에이전트는 흐름을 재설계하기보다는 지역적으로 반응합니다.

선임 엔지니어들은 이 단계에서 한 발 물러서 시스템의 형태를 변경합니다. 그들은: - 누수 추상화를 축소합니다. - UI, 상태 및 API 간의 명확한 경계를 설정합니다. - 잘못된 계약을 명시하는 불안정한 테스트를 다시 작성합니다.

그 에이전트는 스스로 그런 행동을 하지 않습니다. 모든 실패를 수정 가능한 결함으로 간주하며, 아키텍처나 테스트 스위트를 재고할 필요가 있다는 신호로 받아들이지 않습니다. 그러다 보니 강력한 실행자가 되긴 하지만, 결코 여러분의 앱이 실제로 어떻게 작동해야 하는지를 결정하는 사람은 아닙니다.

이 고원은 화려한 첫 시간 데모보다도 최첨단 자율 코딩이 실제로 어디에 위치하는지를 보여줍니다: 실행에서는 뛰어나지만, 디자인에서는 여전히 순진합니다.

최종 점수표: 성공인가 실패인가?

24시간이 지난 후, Cole Medin의 실험은 매우 실리콘밸리답지 않은 지표로 끝났다: 자동화된 테스트 중 "조금 넘는 절반"만이 통과했다. 승리를 자축하는 시간도 없고, 세련된 claude.ai 클론도 없으며, 그저 자신의 규격의 약 50-60%가 충족되었다고 조용히 보고하는 장비뿐이었다.

다른 식으로 표현하자면, 대부분 비감독 상태의 AI 코드 에이전트가 하루 종일 실제 풀스택 애플리케이션을 개발하며 실제로 실행되고, 라우팅되며, 렌더링되는 것을 배포했습니다. 손을 대지 않는 시스템으로서, 이는 "단일 프롬프트에서의 장난감 CRUD 앱" 시대에 비해 놀라운 발전입니다. 그러나 여전히 생산 수준의 소프트웨어에는 한참 미치지 못합니다.

통과된 테스트는 현재 모델들이 뛰어난 영역인 구조, 기본 양식 및 예측 가능한 흐름 주위에 집중되어 있습니다. UI 렌더링 검사, 구성 요소 레이아웃, 기본 탐색 및 간단한 API 엔드포인트는 대형 언어 모델이 이미 알고 있는 패턴과 깔끔하게 일치하기 때문에 대부분 통과했습니다.

어수선하고 상호 연결된 상태에서 실패가 쌓였습니다. 복잡한 대화 스레딩, 아티팩트 생애 주기 규칙, 다단계 흐름 및 엣지 케이스 오류 처리는 붉은 테스트의 묘지를 만들어냈으며, 모든 변경이 세 개의 다른 서브시스템을 망가뜨릴 수 있을 때 자율적인 리팩토링이 얼마나 불안정해지는지를 드러냈습니다. 에이전트는 failing 테스트를 하나 수정하고 나면 이전의 테스트가 다시 나타나는 경우가 많았습니다.

콜의 하네스는 브라우저 기반의 엔드 투 엔드 테스트에 크게 의존하여 헤드리스 환경을 설정하고 가짜 claude.ai 인터페이스를 통해 클릭했습니다. 이러한 테스트는 단순한 기능 시그니처가 아닌 실제 동작—버튼, 모달, 네트워크 호출—을 검증했기 때문에 모든 성공적인 테스트는 더욱 의미가 있었고, 모든 실패한 테스트는 무작정 해결하기가 더 어려워졌습니다.

비용 측면에서 이 시스템은 무한한 토큰 파이프처럼 행동하기보다는 CPU에 의존하는 CI 서버와 더 비슷했다. 실제 테스트 실행이 프롬프트 길이가 아닌 벽시계 시간에 영향을 미쳤기 때문에 어이없는 수백만 토큰당 시간대에 진입하지 않고도 수십 차례의 전체 반복을 수행할 수 있었다.

그 트레이드오프는 오랜 시간 동안 실행되는 에이전트에 대한 중요한 제약을 드러냅니다: 실제 대기 시간은 토큰 소모에 자연적인 제어 장치를 만들지만, 시스템이 탐색하고 실패하며 회복할 수 있는 횟수도 제한합니다. 단순히 "더 많은 토큰으로 확장"하고 남은 40% 이상의 테스트—종종 가장 복잡한 통합 사례들이—연속적으로 해결될 것이라고 기대할 수는 없습니다.

AI 코더에게 TDD가 필수인 이유

코드 에이전트에게는 기분이 아닌 테스트가 필요하다. 콜 메딘의 24시간 클로드 코드 마라톤은 클로드.ai 클론의 모든 중요한 행동이 먼저 자동화된 체크로 존재했기 때문에 정신적으로 유지될 수 있었다. 에이전트의 임무는 “앱을 만드는 것”이 아니라 “이 테스트를 통과시키는 것”이었고, 이는 모호한 프롬프트를 구체적인 계약으로 변화시켰다.

그 테스트 하네스는 변동성이 큰 시스템에 레일처럼 작용했습니다. 각 코딩 루프는 동일하게 보였습니다: 수정사항 제안, 테스트 스위트 실행, 실패 조사, 반복. 50회 이상의 세션을 거치면서 그 리듬은 AI 코딩 실험에서 드문 것을 만들어냈습니다: 반복 가능한 진전이었고, 무관한 코드 덤프의 더미가 아니었습니다.

TDD는 또한 에이전트에 회귀 방어력을 부여했습니다. 클로드가 React 프론트 엔드를 리팩터링하거나 API 핸들러를 재구성할 때, 하네스는 즉시 대화, 아티팩트 및 사이드바 흐름을 클릭하는 종단 간 브라우저 테스트를 다시 실행했습니다. 만약 “수정”이 메시지 기록이나 아티팩트 렌더링을 깨뜨린다면, 빨간 테스트가 버그가 확산되기 전에 에이전트를 되돌렸습니다.

그 안전망은 순수한 "프롬프트 및 배송" 워크플로우에서는 결코 신뢰할 수 없는 공격적인 위험 변화를 장려했습니다. 에이전트는 전체 구성 요소를 제거하거나 경로를 재구성하거나 데이터 구조의 이름을 변경할 수 있었습니다. 왜냐하면 테스트가 동작을 보존했기 때문입니다. 의도는 단언문 안에 있었고, 구현은 모델이 계속해서 재배치할 수 있는 교환 가능한 세부사항이 되었습니다.

TDD는 의도구현을 깔끔하게 분리하여 LLM이 작동하는 방식과 거의 완벽하게 일치합니다. 인간 엔지니어들은 제품 기대치를 Jest와 Playwright 테스트로 인코딩했습니다: “내가 메시지를 보내면 스레드에 나타난다”, “아티팩트가 메타데이터와 함께 패널에 열린다.” Claude는 단지 이러한 진술을 만족시키는 방법을 코드베이스에서 검색하기만 하면 되었습니다.

그 외부화는 중요합니다. 왜냐하면 모델이 높은 수준의 프롬프트에 대해서 요구 사항을 환상적으로 만들어내기 때문입니다. 여기서 의도는 모델의 컨텍스트 창 밖에 존재하며, 코드로서 디스크에 고정되어 있습니다. 수천 개의 토큰과 수십 건의 도구 호출 이후에도 "완료"에 대한 실제 진리는 변하지 않았습니다: 프로맙터를 기쁘게 하는 것이 아니라 테스트를 통과하는 것입니다.

보통 사람들가 채팅 UI에서 시도하는 프롬프트 및 기도 코딩과 비교해보세요. 모호한 사양을 붙여넣고, TypeScript 덩어리를 얻은 다음, 대충 살펴보다가 세 번의 프롬프트 후에 “작은 수정”이 인증이나 상태 관리에 문제를 일으켰다는 것을 발견하게 됩니다. 자동화된 회귀 검사도 없고, 안정적인 목표도 없으며, 그저 느낌과 수동 클릭만 있을 뿐입니다.

메딘의 실험은 거래를 명확하게 보여줍니다. 구조화된 TDD와 하네스는 24시간 후에 절반 이상의 테스트가 통과하는 claude.ai 스타일의 앱을 만들어냈습니다. 프롬프트 기반의 작업 흐름은 24분을 넘기기 어렵고, 일관성이 없거나 재현할 수 없는 코드로 무너지는 경우가 많습니다.

인간의 새로운 역할: AI 아키텍트

일러스트: 인간의 새로운 역할: AI 설계자
일러스트: 인간의 새로운 역할: AI 설계자

콜 메딘의 24시간 실험에서 인간의 노력은 리액트 컴포넌트를 작성하거나 Tailwind 클래스를 조정하는 데 사용되지 않았습니다. 그 노력은 AI가 존재할 시스템을 정의하는 데 집중되었습니다: 리포지토리 구조, claude.ai 스타일의 기능 세트, 그리고 에이전트가 따라야 할 규칙들. 그 기반이 마련되자, 클로드 코드는 동료라기보다는 매우 빠르고 매우 문자 그대로 해석하는 계약자와 유사해졌습니다.

메딘의 가장 큰 레버리지 이동은 AI가 작성한 코드의 첫 줄 이전에 발생했다. 그는 기술 스택을 선택하고, 앤트로픽의 깃허브 레포지토리에서 오랜 시간 실행되는 하네스를 연결했으며, "완료"는 일련의 자동화된 테스트를 통과하는 것을 의미한다고 결정했다. 그 기초는 24시간 동안 에이전트가 할 수 있는 것과 할 수 없는 것을 모두 좌우했다.

하네스 자체는 인간을 위한 새로운 직무 기술서를 효과적으로 암호화했습니다. “초기화자” 에이전트는 사양, 작업 및 테스트를 설정했고, “코딩 에이전트”는 코드베이스를 반복하고, 테스트 스위트를 실행하며, 초록 체크 마크를 추적했습니다. 메딘의 역할은 그 루프를 설계하는 것이었지 각 기능이나 CSS 규칙을 세부적으로 관리하는 것이 아니었습니다.

이 세상에서 성공하는 미래의 개발자들은 구문에 집중하기보다는 문제를 정의하는 데 몰두할 것입니다. 그들은 정의할 것입니다:

  • 1문제 공간: 앱이 해야 하는 일, 중요한 흐름, 고려해야 할 엣지 케이스
  • 2제약 조건: 스택 선택, 성능 예산, 보안 규칙, 통합 지점
  • 3성공 기준: 엔드 투 엔드 테스트, 수용 기준, 그리고 협상할 수 없는 행동

그 결정들은 클로드가 테스트의 "조금 넘는 절반"을 통과할 수 있었던 이유이자 그 지점에서 멈춘 이유를 형성했습니다. 누락되거나 모호한 테스트는 에이전트가 특정 통합 버그를 수정할 유인이 없음을 의미했습니다. 지나치게 넓은 목표는 핵심 기능을 우선시하는 대신 복잡한 UI 흐름에서 허우적대게 만들었습니다.

가치는 자체 하네스를 설계하는 방향으로 이동합니다: 에이전트가 올바른 목표를 향해 나아갈 수 있도록 하는 프롬프트, 도구 및 피드백 신호들입니다. 여기에는 무자비한 테스트 수트 작성, 에이전트 실행에 대한 관찰 가능성 설계, 컨텍스트를 재설정하거나 명세를 리팩토링할 시점을 결정하는 것이 포함됩니다. 인간은 AI 아키텍트가 되어 청사진과 줄자를 책임지며, 모델은 석고판과 배선을 처리합니다.

AI 코딩 폭발에서 이 위치는 어디인가요?

에이전틱 코딩은 더 이상 연구 논문이나 데모 개요에만 존재하지 않습니다. 콜 메딘의 24시간 장비는 앤트로픽의 오랜 에이전트 하네스를 깃허브 코파일럿, 코드이움, 레플릿 고스트라이터와 같은 대화에 정통하게 끌어올립니다. 하지만 이 시스템은 단순히 함수를 자동 완성하는 것이 아니라 스스로 전체 소프트웨어 스프린트를 진행합니다. 이 시스템은 클로드.ai 클론을 구축하고, UI 흐름을 연결하며, 하루 종일 종단 간 테스트를 수행합니다.

“스마트 자동 완성”에서 “지속적인 작업자”로의 도약이 진정한 이야기입니다. GitHub Copilot와 같은 도구는 키 입력 수준에서 작동합니다: 다음 줄, 어쩌면 다음 블록을 예측합니다. 메딘의 설정은 작업 수준에서 작동합니다: “산출물을 구현하고, 대화를 연결하며, 이 40개 이상의 테스트를 충족시키라”는 식입니다, 그런 다음 현실이 사양과 일치할 때까지 수십 건의 에이전트 세션을 소화합니다—적어도 절반 정도는.

에이전트 프레임워크는 예전에는 DeepMind 전용 장난감처럼 느껴졌고, 내부 오케스트레이션 스택 뒤에 숨겨져 있었습니다. Anthropic의 오픈 소스 claude-code-harness는 이러한 동력을 뒤바꿉니다. 이제 단독 개발자는 다음을 생성할 수 있습니다: - 사양과 테스트를 정의하는 초기화 에이전트 - 코드를 편집하고 브라우저를 실행하는 코딩 에이전트 - 50회 이상의 세션이 지속되는 피드백 루프

이 접근성은 누가 자율 에이전트를 실험할 수 있는지를 변화시킵니다. CLI를 호출하고, 헤드리스 브라우저를 실행하며, 프로젝트 상태를 관리하기 위해 더 이상 맞춤형 인프라 팀이 필요하지 않습니다. GitHub 레포지토리, 테스트 스위트, 그리고 신용카드만 있으면 됩니다.

산업 측면에서, 이는 새로운 계층인 "AI 빌드 파이프라인"이 CI/CD 옆에 위치할 것임을 시사합니다. IDE 코파일럿은 인간이 더 빠르게 타이핑할 수 있도록 도와주며, 활용된 에이전트는 로드맵을 실행하고, 코드베이스를 밤새 리팩토링하며, 불안정한 통합 테스트를 해결합니다. Medin의 24시간 실행은 지저분하고 불완전해 보이지만, 이는 모든 진지한 엔지니어링 조직이 최소한 하나의 리포가 있으며, 그 주요 기여자가 봇인 가까운 미래를 미리 보여줍니다.

에이전트 주도 개발을 향한 첫걸음

대부분의 개발자는 tmux 창에서 24시간 AI 마라톤을 실행할 필요가 없습니다. 진정한 업그레이드는 Cole Medin의 묘기 뒤에 있는 주도적인 습관을 채택하는 것에서 비롯됩니다: 목표를 테스트로 인코딩하고, 모델에 도구를 제공하며, 시스템 차원에서 감독하는 동안 모델이 피드백 루프를 통해 작업하도록 하세요.

하나의 기능부터 시작하세요. 전체 claude.ai 복제본이 아니라 "OAuth 로그인 추가", "CSV 가져오기 구현" 또는 "설정 페이지 구축"과 같은 것을 선택하고 "완료"를 더 정확하게 설명하는 3~10개의 자동화 테스트를 정의하세요.

그 기능을 밀착된 테스트 및 개선 루프에 넣으세요. 선택한 AI에게 구현을 작성하게 하고, 테스트를 실행한 후 실패하는 부분을 수정하도록 요청하세요. 즉각적으로 수동으로 수정하고 싶어지는 유혹을 참으세요; 대신 자신을 설계자로 간주하며 사양을 조정하고, 엣지 케이스를 명확히 하며, 가끔 어려운 함수를 다시 작성하는 과정을 경험하세요.

Anthropic의 자체 리포는 구체적인 출발점을 제공합니다. Cole이 사용한 장기 실행 에이전트는 github.com/anthropics/claude-agentic-coding에서 찾을 수 있으며, 더 넓은 Claude Code 예제는 파일 편집, 테스트 실행기 및 브라우저 자동화를 하나의 루프에 연결하는 방법을 보여줍니다.

첫날부터 Cole의 50개 이상의 코딩 세션을 복사하거나 헤드리스 브라우저 농장을 운영할 필요는 없습니다. 에이전트가 `pytest`, `npm test` 또는 Playwright 스크립트를 반복적으로 호출하도록 하고, 명백히 성과가 정체되거나 문제가 발생할 때만 개입함으로써 80%의 이점을 얻을 수 있습니다.

실용적인 시작 레시피는 다음과 같습니다: - 하나의 기능에 대한 간단한 사양 및 테스트 작성 - AI에게 레포지토리, 사양, 테스트 명령 제공 - 테스트가 통과하거나 진행이 멈출 때까지 반복 - 테스트, 아키텍처 또는 프롬프트를 다듬고 다시 반복

이런 방식으로 에이전트 주도 개발을 사용하면 여러분을 대체하는 것이 아니라, 여러분의 역량을 확장시킵니다. “이번 스프린트에는 너무 큰” 기능들을 시도할 수 있고, 더 야심찬 리팩토링을 탐색하며, 테스트가 품질을 보장하므로 여러분의 인내가 아니라 더 높은 품질 기준을 유지할 수 있습니다.

자주 묻는 질문

AI 에이전트 하네스란 무엇인가요?

AI 에이전트 하니스는 AI 모델에 도구, 메모리 및 구조화된 루프(계획, 코드, 테스트, 개선)를 제공하여 전체 애플리케이션을 코딩하는 것과 같은 복잡하고 장기적인 작업을 자율적으로 수행할 수 있도록 하는 프레임워크입니다.

AI가 24시간 안에 앱을 성공적으로 구축했나요?

AI는 claude.ai 클론을 위한 필수 테스트의 절반 이상을 완료하며 상당한 발전을 이루었습니다. 그러나 프로젝트를 완전히 마무리하지 못했으며, 이는 복잡한 통합 작업에서 AI 에이전트의 현재 한계를 강조합니다.

오늘날 소프트웨어를 구축하는 실용적인 방법인가요?

아직 실험적인 단계이지만, 보여준 테스트 주도 접근 방식은 매우 실용적입니다. 자동화된 테스트로 성공을 정의하는 것이 AI가 더 신뢰성 있게 작동하고 단순한 대화 유도보다 더 나은 결과를 만들어낼 수 있음을 증명합니다.

실험에서 사용된 AI 모델은 무엇인가요?

이번 실험은 소프트웨어 개발 작업에 특별히 최적화된 앤스로픽의 클로드 코드 모델을 그들의 개방형 장기 에이전트 하니스를 통해 사용했습니다.

Frequently Asked Questions

최종 점수표: 성공인가 실패인가?
24시간이 지난 후, Cole Medin의 실험은 매우 실리콘밸리답지 않은 지표로 끝났다: 자동화된 테스트 중 "조금 넘는 절반"만이 통과했다. 승리를 자축하는 시간도 없고, 세련된 claude.ai 클론도 없으며, 그저 자신의 규격의 약 50-60%가 충족되었다고 조용히 보고하는 장비뿐이었다.
AI 코딩 폭발에서 이 위치는 어디인가요?
에이전틱 코딩은 더 이상 연구 논문이나 데모 개요에만 존재하지 않습니다. 콜 메딘의 24시간 장비는 앤트로픽의 오랜 에이전트 하네스를 깃허브 코파일럿, 코드이움, 레플릿 고스트라이터와 같은 대화에 정통하게 끌어올립니다. 하지만 이 시스템은 단순히 함수를 자동 완성하는 것이 아니라 스스로 전체 소프트웨어 스프린트를 진행합니다. 이 시스템은 클로드.ai 클론을 구축하고, UI 흐름을 연결하며, 하루 종일 종단 간 테스트를 수행합니다.
AI 에이전트 하네스란 무엇인가요?
AI 에이전트 하니스는 AI 모델에 도구, 메모리 및 구조화된 루프를 제공하여 전체 애플리케이션을 코딩하는 것과 같은 복잡하고 장기적인 작업을 자율적으로 수행할 수 있도록 하는 프레임워크입니다.
AI가 24시간 안에 앱을 성공적으로 구축했나요?
AI는 claude.ai 클론을 위한 필수 테스트의 절반 이상을 완료하며 상당한 발전을 이루었습니다. 그러나 프로젝트를 완전히 마무리하지 못했으며, 이는 복잡한 통합 작업에서 AI 에이전트의 현재 한계를 강조합니다.
오늘날 소프트웨어를 구축하는 실용적인 방법인가요?
아직 실험적인 단계이지만, 보여준 테스트 주도 접근 방식은 매우 실용적입니다. 자동화된 테스트로 성공을 정의하는 것이 AI가 더 신뢰성 있게 작동하고 단순한 대화 유도보다 더 나은 결과를 만들어낼 수 있음을 증명합니다.
실험에서 사용된 AI 모델은 무엇인가요?
이번 실험은 소프트웨어 개발 작업에 특별히 최적화된 앤스로픽의 클로드 코드 모델을 그들의 개방형 장기 에이전트 하니스를 통해 사용했습니다.
🚀Discover More

Stay Ahead of the AI Curve

Discover the best AI tools, agents, and MCP servers curated by Stork.AI. Find the right solutions to supercharge your workflow.

Back to all posts