AI VIDEO BRIEFING

개인용 앱 바이브 코딩이 클라우드 인프라를 깨뜨리는 이유 — 켄턴 바다의 샌드박스 실험

사용자가 자신의 AI 에이전트로 앱에 원하는 기능을 직접 붙이는 구조는 왜 어려울까. 클라우드플레어 워커스를 만든 켄턴 바다가 지목한 오늘날 클라우드 인프라의 한계와, 그가 실험 중인 샌드박스 기반 개인용 앱 플랫폼을 정리했다.

사용자가 자기 앱에 직접 기능을 붙이는 시대, 지금의 클라우드는 준비돼 있지 않다 영상 대표 이미지

핵심 메시지

  • 개인이 자기 앱을 고쳐 쓰는 방식의 AI 코드 생성은 지난 25년간 쌓아온 클라우드 구조와 맞지 않는다는 것이 발표의 핵심 주장이다.
  • 지금은 개발자 서버에서 '축복받은 단 하나의 버전'이 모든 사용자에게 제공되기 때문에, 사용자가 앱을 자기 방식대로 바꿀 여지가 구조적으로 없다.
  • 발표자가 만든 실험 플랫폼은 문서 대신 '가젯'이라 부르는 작은 앱들을 문서처럼 만들고 공유하며, 공유·접근 제어는 앱이 아니라 플랫폼이 처리한다.
  • 클라이언트는 출처가 없는 iframe 샌드박스에, 서버 코드는 외부와 통신할 수 없는 워커 샌드박스에 가둬서, 취약점이 생겨도 새어 나갈 것이 없게 만들었다.
  • 발표자는 클로드에게 슬라이드를 만들라고 하면서 '필요하면 슬라이드 앱 자체에 기능을 추가해도 좋다'고 허락했고, 실제로 없던 기능들이 그 자리에서 만들어졌다.

쉽게 이해하기

AI 엔지니어 콘퍼런스 무대에 오른 켄턴 바다는 2017년부터 클라우드플레어 워커스를 만들어 온 이 플랫폼의 리드 엔지니어다. 그는 발표 내내 하나의 주장만 반복했다. 개인화된 AI 코드 생성은 지금의 클라우드 인프라를 깨뜨린다는 것이다. 여기서 '개인화'라는 말이 모든 무게를 지고 있다고 그는 강조했다.

그가 그린 오늘날의 소프트웨어 풍경은 익숙하다. 개발자가 앱을 만들어 사용자에게 내려보내면, 일부 사용자는 자기 용도에 필요한 기능을 요청한다. 그 요청은 프로덕트 매니저를 거쳐 이슈 트래커로 들어가고 대개 다시는 보이지 않는다. 운 좋게 로드맵에 오른 기능들은 코드 곳곳에 조건문을 늘리며 코드베이스를 지저분하게 만들고, 견디다 못한 개발자는 플러그인 시스템을 갖춘 새 아키텍처로 갈아엎겠다고 선언한다. 그리고 몇 년이 지나도 새 아키텍처는 나오지 않고, 그동안 어떤 기능도 구현되지 않는다.

AI는 여기서 다른 선택지를 제시한다. 개발자는 첫 버전만 만들어 내놓고, 기능이 필요한 사용자는 자기 AI 에이전트에게 그 기능을 자기용으로 만들어 달라고 하면 된다. 각자 필요한 기능을 갖게 되고, 아무도 남의 기능 때문에 발목 잡히지 않으며, 개발자는 핵심 앱을 깨끗하게 유지할 수 있다. 문제는 이걸 떠받칠 인프라가 없다는 점이다. 모바일 플랫폼은 서명 없는 코드를 돌려주지 않고, 웹은 누구나 무엇이든 만들 수 있지만 대신 배포 구조가 발목을 잡는다. 웹 앱은 개발자 서버 위에서 단 하나의 버전으로 모두에게 제공되기 때문이다. 바이브 코딩 플랫폼들이 대부분 웹 앱을 겨냥하면서도 바로 그 낡은 구조 위에 올라타 있다는 것이 그의 지적이다.

그가 실험 중인 플랫폼은 이 전제를 뒤집는다. 사용법은 웹 배포보다 오피스 제품군에 가깝다. 구글 문서에서 문서를 여러 개 만들어 열고 편집하고 공유하듯, 여기서는 문서 대신 '가젯'이라 부르는 앱을 만든다. 각 가젯은 저마다 다른 코드를 가진 하나의 애플리케이션이다. 그는 한 번의 프롬프트로 만든 협업 화이트보드, 스페인어 메일을 걸러 주는 도구, 리뷰할 풀 리퀘스트를 정렬해 주는 도구를 예로 들었다. 잘 만들어진 가젯은 데이터를 뺀 코드만 '블루프린트'로 뽑아 공유할 수 있고, 다른 사람은 그걸로 자기 가젯을 찍어낸다.

구조에서 눈여겨볼 대목은 공유 모델이 앱이 아니라 플랫폼에 구현돼 있다는 점이다. 슬라이드 덱 하나에 가젯 하나가 대응하고, 덱이 여러 개 필요하면 가젯을 여러 개 만든다. 공유와 접근 제어를 플랫폼이 맡기 때문에 앱 코드가 그걸 잘못 구현할 여지 자체가 없다. 보안 모델도 같은 발상이다. 화면은 아무 곳과도 통신할 수 없고 쿠키에도 접근할 수 없는 iframe 샌드박스에서 돌아가며, 부모 프레임으로 메시지를 보내는 통로 하나만 열려 있다. 그 통로는 서버 쪽 코드로 연결되고, 서버 코드 역시 바깥세상과 말을 섞지 못하는 샌드박스 안에 있다. 그래서 이 코드에 XSS 같은 취약점이 있어도 실질적으로 문제가 되지 않는다는 것이 그의 설명이다.

주요 인사이트

  • 발표에서 가장 설득력 있는 장면은 기술 설명이 아니라 슬라이드였다. 발표자는 클로드에게 구글 문서를 주며 슬라이드를 만들라고 하면서, 필요하면 슬라이드 앱 자체에 기능을 추가해도 좋다고 허락했다. 클로드는 앱 코드를 읽고 취소선과 가운데 정렬을 새로 넣었고, 임의의 도형을 그릴 수 없다는 걸 알자 원시 SVG를 붙여 넣는 입력란을 만들어 스스로 SVG를 생성했다. 사람에게는 별로 쓸모없는 기능이지만 AI에게는 정확히 필요한 기능이었다.
  • 보안 논의의 방향이 바뀐다는 점이 중요하다. 흔한 접근은 생성된 코드가 안전한지 검사하는 쪽이지만, 이 구조는 코드가 안전한지 묻지 않고 코드가 무엇을 할 수 있는지를 원천 차단한다. 바깥과 통신할 수 없고 접근할 자격증명도 없다면, 취약점이 있어도 유출될 것이 없다.
  • 가젯 하나에 문서 하나를 대응시키는 설계는 얼핏 번거로워 보이지만, 공유 단위와 앱 단위를 일치시켜 플랫폼이 권한을 안전하게 대신 처리할 수 있게 만드는 장치다. 앱이 스스로 접근 제어를 구현하지 않으면 접근 제어 버그도 생기지 않는다.
  • 발표자는 이 모든 것이 노트북에서 로컬로 돌고 있다고 밝혔다. 데모 중 인터넷이 끊겼는데도 대부분이 정상 동작한 이유이며, 오픈소스 런타임을 직접 호스팅해 집 안 자동화에 쓰겠다는 계획도 여기서 나온다.
  • 발표 말미에는 솔직한 사과가 붙었다. 원래는 발표가 끝나자마자 코드를 공개할 계획이었지만, 사내에서 프로젝트가 진지해지면서 공개를 몇 주 미루게 됐다는 것이다. 발표 시점 기준으로 이 플랫폼은 아직 만져 볼 수 없는 상태였다.

자주 묻는 질문

'가젯'은 기존 웹 앱 배포와 무엇이 다른가요?

기존 웹 앱은 개발자 서버에 올라간 하나의 버전이 모든 사용자에게 제공되지만, 가젯은 오피스 문서처럼 사용자마다 인스턴스를 따로 만들어 각자 코드가 달라질 수 있습니다. 공유와 접근 제어는 앱이 아니라 플랫폼이 처리합니다.

AI가 만든 코드에 보안 취약점이 있으면 어떻게 되나요?

발표자는 화면 쪽 코드를 외부와 통신할 수 없고 쿠키에도 접근할 수 없는 iframe 샌드박스에, 서버 쪽 코드도 바깥과 통신하지 못하는 샌드박스에 가뒀다고 설명합니다. 둘은 서로에게만 말을 걸 수 있어서 취약점이 있어도 밖으로 새어 나갈 것이 없다는 것입니다.

이 플랫폼을 지금 써 볼 수 있나요?

발표 시점에는 불가능했습니다. 발표자는 원래 발표 직후 코드를 공개할 계획이었지만 사내에서 프로젝트가 더 진지해지면서 공개를 몇 주 미루게 됐다고 밝혔습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식