에이전트가 만든 앱, 실서비스 환경에 안전하게 배포하는 방법
mikehasa/golive-skill
GitHubGoLive는 AI 에이전트가 개발한 애플리케이션을 실제 서비스 환경에 배포하는 과정을 자동화하는 오픈소스 스킬입니다. 호스팅, DB, 인증, 결제 등 필요한 외부 서비스를 사용자의 계정으로 연결하고 배포합니다.
- 배포 전 모든 변경 사항을 상세 계획(Plan)으로 제시하고 사용자 승인을 받으며, 쓰기 작업에 대한 강력한 통제 장치를 마련했습니다. 또한, 생성된 자원을 추적하여 안전하게 제거하는 기능도 제공합니다.
- AI 에이전트가 코드를 작성하는 단계를 넘어, 실제 상용 서비스로 완성시키는 과정의 난관을 해결해 줍니다. 개발자가 직접 관리해야 했던 복잡한 인프라 연결 및 배포 과정을 간소화할 수 있습니다.
- 모든 쓰기 작업은 사용자의 명시적 승인이 필수이며, 롤백이나 삭제는 자동화되지 않고 제한적입니다. 에이전트의 가이드는 '최선 노력'으로, 최종 검증과 관리는 개발자가 직접 수행해야 합니다.
GoLive는 가 개발한 애플리케이션을 실제 서비스 환경에 배포할 수 있도록 돕는 스킬입니다. 이 도구는 호스팅, 데이터베이스, 인증, 결제 등 앱 운영에 필요한 외부 서비스를 사용자의 계정으로 연결하고 배포하는 역할을 합니다. 작동 과정은 앱이 필요로 하는 것을 감지하여 정확한 변경 계획을 세우고, 사용자 승인을 거쳐 자신의 로그인 정보를 이용해 실제로 적용하며 그 결과를 검증합니다.
현재 알파 버전(0.1.0-alpha.3)에서는 Vercel, Netlify와 같은 호스팅 환경, Supabase나 Neon과 같은 데이터베이스, 커스텀 도메인 DNS, Stripe 테스트 결제 모드 등 6가지 배포 여정을 지원합니다. 다른 프로바이더를 사용할 경우에도 해당 서비스의 공식 CLI나 를 통해 가이드 흐름을 제공하며, 변경 사항과 예상 비용을 사용자에게 보여주어 개발자가 최종적으로 검토할 수 있도록 합니다.
배포 과정에서 안전성을 확보하기 위해 모든 쓰기 작업은 사용자의 명시적 승인이 필수입니다. `apply` 명령어는 계획(plan) 없이는 실행되지 않으며, 실패 시에는 중단되고 다음 단계부터 재개됩니다. 롤백 기능은 자동화되지 않고 제한적으로만 가능하며, `golive teardown` 기능을 통해 도구가 생성했다고 증명할 수 있는 리소스만 제거하여 안전한 환경 이전을 보장합니다.
용어 풀이
- AI 에이전트
- 목표를 받으면 스스로 계획을 세우고 도구를 써서 여러 단계의 작업을 해내는 AI.
- 오픈소스
- 소스 코드를 공개해 누구나 보고 고치고 다시 배포할 수 있게 한 소프트웨어.
- API
- 프로그램끼리 기능을 주고받는 약속된 창구. AI 모델은 보통 API로 불러 써요.