cloudflare/computer
Give your agent a computer 👾
해결하는 문제
Cloudflare Computer는 다양한 실행 환경의 작업 디렉터리로 사용할 수 있는 지속 가능한 가상 파일 시스템을 제공합니다. Durable Objects를 통해 SQLite 데이터베이스에 저장된 일관된 상태를 유지하면서, 격리된 사전(컨테이너 또는 워커)에서 코드나 쉘 명령어를 실행할 수 있습니다.
작동 방식
시스템은 SQLite에 파일 시스템의 권위 있는 상태를 보유하는 Durable Object를 사용합니다. 이 상태는 다음 세 가지 플러그인 가능한 실행 백엔드 중 하나로 투영됩니다:
- 컨테이너: Linux 사전 환경 컨테이너 내에서 실제 FUSE 마운트로 상태를 투영하여 실제 바이너리와 네트워크 접근을 가능하게 합니다.
- Isolate shell: Dynamic Worker 내에서
just-bash를 통해 bash 쉘을 실행합니다. - Isolate JavaScript: Dynamic Worker 내에서 ECMAScript 모듈을 실행하고 가상 파일 시스템에 접근할 수 있습니다.
실행은 단일 엔트리 포인트(workspace.runtime.exec)를 통해 처리되며, 선택된 백엔드에 따라 쉘 명령어 또는 JavaScript 모듈을 실행할지 결정합니다.
대상 사용자
지속적인 작업 공간, 임의의 코드/명령어 실행, 격리된 실행 환경이 필요한 에이전트, 프로토타입, 실험적 도구를 개발하는 개발자에게 적합합니다.
주요 특징
- 플러그인 가능한 런타임: 완전한 Linux 컨테이너와 가벼운 워커 이소레이트 간 전환 가능.
- SQLite 기반 상태: Durable Objects를 사용하여 권위적이고 지속 가능한 파일 시스템 상태를 유지.
- FUSE 통합: 컨테이너 백엔드는 RPC를 통해 상태를 동기화하는 데몬(
computerd)을 사용합니다. - 에이전트 준비: 워크스페이스를 작업 디렉터리로 사용하는 MCP(Model Context Protocol) 및 채팅 에이전트 예제 포함.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트