- 웹 플랫폼 개발자 Paul Kinlan은 코딩 에이전트를 위한 안전한 실행 환경으로서 브라우저의 가능성을 탐구함
- 그는 브라우저가 이미 신뢰할 수 없는 코드를 실행하기 위한 강력한 샌드박스 구조를 갖추고 있다고 지적함
- 이를 검증하기 위해 Co-do라는 데모를 제작, 브라우저 내에서 파일 접근·네트워크 통신·코드 실행을 모두 실험함
- Co-do는 File System Access API, CSP 헤더와 <iframe sandbox> , WebAssembly in Web Workers를 활용함
- 브라우저가 로컬 컨테이너 없이도 AI 에이전트 실행 환경으로 발전할 수 있음을 보여주는 사례임
브라우저를 샌드박스로 보는 관점
- Google의 Paul Kinlan은 코딩 에이전트의 실행을 위해 강력한 샌드박스 환경이 필요하다고 판단함
- 그는 브라우저가 지난 30년간 악성 코드나 신뢰할 수 없는 코드를 안전하게 실행하기 위해 발전해온 플랫폼임을 강조함
- 이러한 특성이 에이전트 실행 환경으로서 브라우저를 활용할 수 있는 근거가 됨
브라우저 기반 샌드박스의 세 가지 핵심 요소
- Kinlan은 샌드박스의 세 가지 핵심 요소로 파일 시스템 접근, 네트워크 접근 제어, 안전한 코드 실행을 제시함
-
File System Access API는 브라우저에서 로컬 파일을 다루는 기능을 제공하며, 현재는 Chrome 전용으로 알려짐
-
CSP(Content Security Policy) 헤더와 <iframe sandbox> 속성을 통해 네트워크 접근을 제어할 수 있음
-
WebAssembly와 Web Workers를 이용하면 격리된 환경에서 코드를 실행할 수 있음
Co-do 데모의 구성과 기능
- Kinlan의 아이디어를 검증하기 위해 Co-do라는 데모 애플리케이션이 제작됨
- 사용자는 폴더를 선택하고 LLM 제공자와 API 키를 설정함
- Co-do는 CSP 승인 API 호출을 통해 LLM과 상호작용하며, 파일과 대화할 수 있는 채팅 인터페이스를 제공함
- 이 구조는 Claude Cowork와 유사하지만, 대용량 로컬 컨테이너 없이 브라우저만으로 실행됨
<iframe sandbox>와 보안 기술의 한계
-
<iframe sandbox>의 문서화 부족이 주요 문제로 지적됨
- 브라우저별 구현 차이가 크며, 관련 자료가 부족함
- Kinlan은 이중 iframe(double-iframe) 기법을 통해 내부 프레임에 네트워크 규칙을 적용하는 방법을 제시함
추가 발견 및 실험
-
<input type="file" webkitdirectory> 속성이 Firefox, Safari, Chrome 모두에서 작동함이 확인됨
- 이를 통해 브라우저가 전체 디렉터리의 읽기 전용 접근을 수행할 수 있음
- 이를 시험하기 위해 webkitdirectory 데모가 제작되었으며, 향후 프로젝트에서도 활용 예정임
결론
- 브라우저는 이미 보안 격리와 코드 실행을 위한 완성도 높은 플랫폼으로 발전해 있음
- Co-do 사례는 브라우저가 AI 코딩 에이전트의 실행 환경으로 확장될 수 있음을 보여주는 실험적 증거임