에이전트 개발 수명주기가 Cloudflare에 도래했습니다 (새 탭에서 열림)
AI는 소프트웨어 구현을 가장 빠르고 저렴한 단계로 만들었지만, 그 결과 테스트·배포·운영·유지보수 단계가 감당하기 어려운 속도로 몰려들고 있다. 글은 인간 중심의 SDLC만으로는 에이전트가 생산하는 코드와 변경량을 처리할 수 없다고 주장하며, 전체 개발 과정을 에이전트 중심의 ADLC(Agent Development Lifecycle)로 재설계해야 한다고 제안한다. 이를 위해서는 에이전트가 코드 작성뿐 아니라 검증, 배포, 관측, 장애 대응, 개선까지 수행할 수 있는 소프트웨어 팩토리와 전용 플랫폼이 필요하다.
AI가 바꾼 소프트웨어 개발 생태계
- 전통적인 SDLC는 다음 단계로 구성된다.
- 계획(Plan)
- 설계(Design)
- 구현(Implement)
- 테스트(Test)
- 배포(Deploy)
- 유지보수(Maintain)
- 폐기(Retire)
- AI는 기존에 가장 느리고 비용이 많이 들던 구현 단계를 급격히 빠르고 저렴하게 만들었다.
- 그러나 구현 이후의 단계는 같은 속도로 자동화되지 않아 다음과 같은 병목이 발생한다.
- 오픈소스 프로젝트에 쏟아지는 풀 리퀘스트와 이슈
- 급증한 배포량을 처리해야 하는 운영 엔지니어
- 검토·병합·배포·장애 대응을 담당하는 사람들의 과부하
- 현재 많은 조직은 에이전트에게 코드 작성만 맡기고, 검증과 운영은 사람이 담당하는 불균형한 구조를 사용하고 있다.
SDLC에서 ADLC로의 전환
- 글은 인간 중심의 SDLC를 에이전트 중심의 ADLC로 대체해야 한다고 주장한다.
- ADLC의 목표는 에이전트가 단일 작업이 아니라 다음 전체 흐름을 자율적으로 처리하는 것이다.
- 버그 리포트나 고객 요청 수집
- 문제 재현과 원인 분석
- 코드 수정
- 테스트와 검증
- 리뷰 및 병합
- 배포와 모니터링
- 운영 중 발생한 문제의 자동 triage와 수정
- 현재는 사람이 각 SDLC 단계에서 에이전트를 지시하고 결과를 확인하는 방식이 대부분이다.
- 소프트웨어 팩토리는 이러한 사람의 개입을 줄이고, 인간이 창의성·판단·고객 이해가 필요한 업무에 집중하도록 만드는 시스템이다.
소프트웨어 팩토리에 필요한 플랫폼 특성
에이전트가 전체 개발 프로세스를 운전하려면 기존의 인간용 개발 환경을 그대로 사용할 수 없으며, 각 작업이 다음 특성을 가져야 한다.
- 프로그램화 가능성
- ClickOps처럼 사람이 화면을 클릭해야 하는 작업은 에이전트에 적합하지 않다.
- 모든 작업이 호출·디버깅·자동화 가능한 API를 제공해야 한다.
- 수평 확장성
- 여러 에이전트가 동시에 작업할 수 있어야 한다.
- 각 에이전트가 운영 환경과 일치하는 독립적인 프리뷰 환경을 가져야 한다.
- 재현 가능성
- 특정 기기, 네트워크 상태, 국가별 IP 등 복잡한 조건에서 발생하는 버그도 재현할 수 있어야 한다.
- 단순한 단위 테스트와 통합 테스트만으로는 부족하다.
- 실시간·푸시 기반 동작
- 사람이 대시보드를 확인하기를 기다리는 방식은 에이전트에 맞지 않는다.
- 장애나 상태 변화가 발생하면 이벤트가 에이전트를 자동으로 호출해야 한다.
- 원자성
- 각각의 변경은 독립적으로 테스트·배포·관측·롤백 가능해야 한다.
- 한 변경이 관련 없는 동작에 영향을 주지 않아야 한다.
- 권한 관리
- 에이전트에 운영 환경의 무제한 권한을 제공할 수는 없다.
- 작업에 필요한 권한을 명확히 제한하면서도, 안전한 절차를 통해 추가 권한을 요청하거나 상승시킬 수 있어야 한다.
- 자기 개선
- 에이전트도 과거 작업과 운영 경험으로부터 학습해야 한다.
- 반복되는 작업에서 점점 더 빠르고 정확하게 동작할 수 있는 피드백 체계가 필요하다.
Cloudflare가 제시한 구현 사례
Cloudflare는 에이전트를 단순한 코드 생성기가 아니라 API를 통해 전체 시스템을 조작하는 고객으로 취급한다. 이를 바탕으로 다음과 같은 도구와 사례를 소개한다.
@cloudflare/ci- 수백만 개 저장소에서 CI/CD를 실행하기 위한 시스템
- Cloudflare Workflows를 기반으로 동작
- 실패를 스스로 복구하고, 복잡한 작업을 수행할 에이전트를 생성할 수 있음
- 로컬 개발 환경의 OpenTelemetry 트레이스
- 운영 환경에서 사용하는 수준의 관측성을 로컬 개발에도 제공
- Wrangler와 Cloudflare Vite 플러그인에 통합
- Cloudflare Agents와 Agent Traces
- 에이전트의 실행을 관찰하고 유지보수하며 개선하기 위한 공간
- 에이전트 활동을 OpenTelemetry 트레이스로 추적
- AI 기반 엔지니어링 표준 적용
- 여러 제품과 시스템 저장소에 공통 개발 원칙과 표준을 자동으로 적용
- Astro 소프트웨어 팩토리
- GitHub 이슈를 자동으로 분류하고, 재현하고, 검증하고, 수정
- 규모가 커지는 오픈소스 프로젝트의 이슈 수를 0에 가깝게 줄이는 것을 목표로 함
자율 시스템에 필요한 신뢰성
- 소프트웨어 팩토리는 자율주행차와 비슷한 문제를 가진다.
- 단순히 80% 정도 성공하는 수준은 충분하지 않다.
- 실제 운영 소프트웨어를 맡기려면 99%를 넘어 여러 개의 9가 붙는 수준의 안정성과 안전성이 필요하다.
- 자율주행차가 카메라, 라이다, 고성능 연산 장치, 원격 제어 체계를 갖추는 것처럼, 자율적으로 개발하는 에이전트에도 인간 개발자를 위해 설계된 기존 도구 이상의 장치가 필요하다.
- 에이전트가 PR을 자동 승인하고 운영 서비스에 병합하지 못하는 이유는 테스트 실패뿐 아니라 다음과 같은 복합적인 위험 때문이다.
- 고객 요구를 잘못 해석할 가능성
- 여러 팀과 전문 영역에 걸친 변경
- 주관적인 품질 판단
- 대시보드나 사용자 경험처럼 자동 테스트가 어려운 변화
- 운영 중 발생할 수 있는 예측하기 어려운 부작용
실용적인 결론
에이전트 도입의 핵심은 코드 생성량을 늘리는 데 있지 않고, 생성된 변경을 안전하게 검증하고 배포하고 운영하는 전체 체계를 함께 자동화하는 데 있다. 따라서 조직은 에이전트에 단순한 코딩 권한만 주기보다, 재현 가능한 환경·세밀한 권한·실시간 관측·원자적 배포·자동 롤백과 같은 ADLC 기반 인프라부터 구축해야 한다.