AI가 읽은 자료로 새 앱을 만들었다면, 그 앱은 누가 볼 수 있을까요?
사내 AI에 GitHub 저장소나 고객 데이터를 연결할 때는 처음 권한만 좁히면 충분해 보입니다. 그런데 에이전트가 그 자료를 읽어 대시보드를 만들고, 동료에게 공유하거나 외부 서비스로 전송하면 문제가 달라져요. 원본을 볼 수 없는 사람도 가공된 결과에서는 내용을 볼 수 있기 때문입니다.
Cloudflare OS가 흥미로운 지점은 에이전트에게 API 키를 숨기는 데서 끝나지 않는다는 데 있습니다. 에이전트가 실제로 관찰한 자원을 기록하고, 그 기록을 이후에 만들어진 워크스페이스·앱·출력의 열람과 전송 정책에도 사용합니다. 권한을 최초 호출이 아니라 데이터의 이동 경로에 붙이는 설계예요.
Sandstorm은 ‘사용자가 코딩을 못해서’ 실패한 게 아니었습니다
Cloudflare OS의 계보는 Kenton Varda가 만들었던 Sandstorm으로 이어집니다. Sandstorm은 문서나 앱을 작은 독립 인스턴스로 실행하고, 인스턴스마다 접근권을 나누는 셀프호스팅 플랫폼이었어요.
다만 2017년 사업 중단 당시 공식 회고가 밝힌 직접적인 실패 원인은 아이디어의 시대착오가 아니었습니다. 제품이 여전히 알파 수준으로 거칠었고, 기업 영업은 예상보다 어려웠으며, 제품과 영업을 안정시킬 자금과 시간이 부족했습니다. 수백 건의 기업 체험과 관심이 실제 구매로 거의 이어지지 않았다는 설명도 남겼어요.
Varda는 2026년 공개 글에서 Cloudflare OS를 Workers와 AI를 이용한 Sandstorm의 리메이크라고 표현했습니다. Sandstorm의 ‘Grain’처럼 앱 인스턴스를 잘게 격리하되, 이번에는 사용자가 에이전트에게 요청해 필요한 앱을 직접 수정할 수 있다는 해석입니다.
Cloudflare는 2026년 5월 첫 버전을 전 직원에게 제공했고, 회사 설명에 따르면 여러 직무의 수천 명이 문서와 슬라이드를 만들거나 반복 업무를 자동화하고 작은 앱을 제작하는 데 사용했습니다. 다만 정확한 활성 사용자 산정법이나 도입 전후 생산성 변화는 공개하지 않았습니다.
Gatekeeper는 접근·관찰·후속 이동을 연결합니다
공개된 Cloudflare OS v2는 회사 맥락을 다루는 에이전트 워크스페이스, 보안·거버넌스 계층, 개인화 앱 플랫폼으로 구성됩니다. 그중 사내 도입을 검토하는 팀이 먼저 볼 부분은 보안 계층의 Gatekeeper예요.
| 시점 | Gatekeeper가 통제하는 것 | 확인할 질문 |
|---|---|---|
| 접근 전 | 자격증명을 에이전트와 생성 코드에서 격리하고, 특정 저장소·이슈·동작처럼 좁은 capability를 제공 | 에이전트가 토큰 원문을 보거나 범위 밖 자원을 호출할 수 있는가? |
| 데이터 사용 중 | 에이전트가 실제로 관찰한 자원을 기록 | 도구 호출 기록이 아니라 읽은 원본 자원까지 추적되는가? |
| 결과 사용 후 | 관찰 기록을 결과 열람, 협업자 초대, 외부 요청, 다른 에이전트 전달 정책에 반영 | 원본 권한이 없는 사용자가 파생 결과를 열거나 내보낼 수 있는가? |
예를 들어 민감한 테이블을 읽어 대시보드를 만들었다면, 다른 사용자가 그 대시보드를 열 때 원본 자원에 대한 접근권을 다시 확인할 수 있습니다. 에이전트가 이미 읽었다는 이유로 파생 결과가 자동으로 공개되지 않게 만드는 방식이죠.
이 차이를 “MCP는 위험하고 Gatekeeper는 안전하다”로 줄이면 곤란합니다. MCP 서버도 자격증명을 보관할 수 있어요. Cloudflare OS가 더 밀어붙인 부분은 도구 호출 허용을 넘어, 관찰한 자원과 그 데이터가 이후 어디로 이동하는지까지 정책에 연결한 것입니다.
도입 검토 때 물어볼 세 가지
- 에이전트와 생성 코드가 OAuth 토큰을 직접 읽을 수 있는가?
- 어떤 도구를 호출했는지가 아니라 어떤 행·파일·저장소를 관찰했는지 남는가?
- 원본에서 파생된 앱과 출력에도 같은 공유·외부 전송 제한이 이어지는가?
Gadget은 앱 코드와 사용자 데이터를 따로 다룹니다
Cloudflare OS에서 에이전트가 만든 개인화 앱은 Gadget이라고 부릅니다. 각 Gadget은 별도의 Dynamic Worker 런타임과 SQLite 상태를 가지며, 앱마다 실행 환경과 상태를 나누는 구조입니다.
동료에게 같은 앱을 만들어주고 싶다면 Blueprint를 공유할 수 있습니다. 이때 복사되는 것은 코드이며 원본 사용자의 데이터, 대화 기록, 자격증명, 연결된 자원은 포함되지 않습니다. 완성된 앱을 그대로 공동 사용하게 하는 것과, 빈 복사본을 전달하는 것을 구분한 셈이에요.
외부 부작용이 있는 동작도 Gatekeeper가 중재할 수 있습니다. 승인 대기 중에는 결과를 시뮬레이션해 에이전트가 다음 작업을 이어가고, 사용자가 나중에 개별 또는 일괄 승인하는 흐름을 지원합니다. 다만 모든 쓰기 작업이 항상 사람 승인을 거치는 것은 아닙니다. 어느 동작에 승인을 요구할지는 연결된 Gatekeeper와 조직 정책에 달려 있습니다.
외부 데이터 없이 첫 Gadget부터 만들어보세요
구조를 확인하는 첫 실습에서는 GitHub나 Google OAuth부터 연결하지 않는 편이 간단합니다. 준비물은 Cloudflare 계정, 관리자 이메일 주소, workers.dev 주소에 사용할 인스턴스 이름입니다. 첫 화이트보드를 만드는 순간 모델 추론이 실행된다는 점도 먼저 알아두세요.
실행 전에 결제·사용 한도를 확인하세요. 공식 배포 화면의 기본 모델은 별도 API 키 없이 AI Gateway를 통해 사용할 수 있지만, 사용량은 배포자의 Cloudflare 계정에 청구될 수 있습니다. Anthropic이나 OpenAI API 키 입력은 선택 사항이며 나중에 추가할 수 있습니다.
- 공식 배포 페이지에서 Cloudflare로 로그인합니다. Cloudflare OS 배포 페이지를 열고 Cloudflare 계정으로 로그인한 뒤, 자신의 계정에 배포할 수 있도록 요청되는 대시보드 접근 권한을 승인하세요.
- 인스턴스 이름과 관리자 이메일을 입력해 배포합니다. 인스턴스 이름은 배포될
workers.dev주소에 사용됩니다. 관리자로 쓸 이메일 주소를 함께 입력하고 배포를 시작하세요. 이 호스팅 경로는 로컬 빌드 없이 자신의 Cloudflare 계정에 배포합니다. - 관리자 이메일로 로그인합니다. 배포된
workers.dev주소를 열고 관리자 이메일을 입력한 다음, Cloudflare Access가 보낸 일회용 PIN으로 로그인하세요. 접속 후/admin에서 같은 이메일이 관리자로 인식되는지도 확인합니다. - 기본 워크스페이스에 첫 요청을 입력합니다. 외부 서비스를 연결하지 않은 상태에서 Make a collaborative whiteboard app.이라고 요청하세요. 저장소가 안내하는 예시 프롬프트이며, 이 요청부터 모델 사용량이 발생할 수 있습니다.
- 성공 기준은 생성보다 실행입니다. 만들어진 화이트보드 Gadget이 열리고 직접 요소를 추가하거나 움직일 수 있는지 확인하세요. 내부 자료가 꼭 필요한 다음 단계에서만 해당 Gatekeeper와 OAuth 자격증명을 설정합니다.
프로덕션 전면 도입은 아직 이릅니다. 2026년 8월 공개판은 얼리 액세스이며, 자체 서버에서 workerd로 운영하는 프로덕션 배포 문서와 도구도 완성되지 않았습니다. Apache-2.0 오픈소스라는 사실이 운영비 무료를 뜻하지도 않아요. 실제 Workers·스토리지·AI 사용량과 고정 버전, 신뢰 경계를 파일럿 단계에서 함께 검토해야 합니다.
가져갈 것은 ‘AI 운영체제’라는 이름보다 권한의 수명입니다
Cloudflare OS는 전통적인 컴퓨터 운영체제라기보다 에이전트 작업공간과 앱 격리 계층을 OS에 비유한 제품입니다. 따라서 이름이나 사내 사용 규모보다 먼저 확인할 것은 권한이 얼마나 오래, 어디까지 유지되는지예요.
현재 공개 자료만으로 Gatekeeper의 보안성을 독립적으로 입증할 수는 없습니다. 외부 보안 감사 결과, 조직 규모별 운영비, 공개 v2의 실제 활성 사용자와 생산성 변화도 확인되지 않았어요. 그래도 사내 AI 플랫폼을 설계하는 팀에는 분명한 질문을 남깁니다. “누가 이 도구를 호출할 수 있는가?”에서 멈추지 말고, “그 도구가 읽은 데이터로 만든 결과를 누가 보고 어디로 보낼 수 있는가?”까지 권한 모델에 포함했는가라는 질문입니다.



