qaml-ai/camelAI
camelAI — an AI coding assistant platform built on Cloudflare Workers and Durable Objects
camelAI – Cloudflare 기반의 영구적인 AI 코딩 워크스페이스
개요 – camelAI는 팀이 AI 코딩 어시스턴트와 대화할 수 있는 풀스택 웹 플랫폼입니다. 각 채팅 스레드는 Cloudflare Durable Object 내에서 자체 "코딩 에이전트"를 실행하여 세션을 초월해 지속되는 영구 워크스페이스(파일, 기록, 비밀)를 어시스턴트에 제공합니다.
주요 기능
- 영구 채팅 및 프로젝트 파일 – 대화와 소스 파일은 Durable Object 기반 SQLite 데이터베이스(작은 파일)와 Cloudflare R2(큰 파일)에 저장됩니다.
- 워크스페이스 인식 코딩 에이전트 – 에이전트는 프로젝트 파일을 읽고 쓸 수 있고, JavaScript 도구를 실행하며, 단기 V8 격리 환경 또는 샌드박스 컨테이너에서 코드를 실행할 수 있습니다.
- 통합 – API, 데이터베이스, 이메일, Slack, Discord 등에 대한 내장 커넥터를 통해 에이전트가 채팅에서 호출할 수 있습니다.
- 빌드 및 배포 – 프로젝트는 Docker 기반 샌드박스에서 빌드되어 Cloudflare Workers for Platforms로 게시될 수 있으며, 디스패처 워커가 실시간 트래픽을 라우팅합니다.
- 관리자 기능 – 조직 수준 인증, 청구, 사용량 할당량, 앱 비용 제어 정책.
작동 방식
- 프론트엔드 – SSR로 렌더링되는 React-Router SPA로, Cloudflare Worker가 제공합니다.
- 메인 워커 –
ChatThreadDODurable Object를 호스팅하여 에이전트 루프(pi에이전트 프레임워크 기반)를 실행합니다. - 워크스페이스 DO – 프로젝트의 파일 시스템(SQLite + R2)을 저장합니다.
- 샌드박스 워커 – "코드 모드"용 V8 격리 환경과 빌드, 노트북 분석, SQL 쿼리용 별도의 Cloudflare 샌드박스 컨테이너.
- 디스패처 – 사용자가 게시한 앱에 요청을 라우팅합니다.
시작하기
- Node 22+, Bun, Cloudflare 계정, Docker(샌드박스 기능용)가 필요합니다.
- 클론하고,
bun install로 설치하고, 예제 시크릿 파일을 복사한 다음, Cloudflare AI Gateway 토큰을 추가하거나(또는 나중에 Anthropic/OpenAI 등을 구성)bun run dev:local-auth로 빠른 로컬 개발 사용자를 실행하거나bun run dev로 전체 OAuth 흐름을 실행합니다.
자체 호스팅
- 단일 머신 Docker-Compose 설정으로 전체 스택(웹 UI, 인증, 모델 제공자, Durable Objects, 빌드, 노트북, SQL 등)을 프라이빗하게 실행할 수 있습니다.
- 이메일 검증은 의도적으로 생략되었습니다. 대상은 내부 또는 평가용 사용입니다.
대상 사용자
- 영구 상태를 갖춘 AI 지원 코딩 환경과 플랫폼을 떠나지 않고 생성된 코드를 서버리스 앱으로 배포할 수 있는 기능을 원하는 개발 팀.
라이선스 – MIT.
모든 세부 사항은 저장소의 README에서 직접 가져왔습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch