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로 게시될 수 있으며, 디스패처 워커가 실시간 트래픽을 라우팅합니다.
  • 관리자 기능 – 조직 수준 인증, 청구, 사용량 할당량, 앱 비용 제어 정책.

작동 방식

  1. 프론트엔드 – SSR로 렌더링되는 React-Router SPA로, Cloudflare Worker가 제공합니다.
  2. 메인 워커 – ChatThreadDO Durable Object를 호스팅하여 에이전트 루프(pi 에이전트 프레임워크 기반)를 실행합니다.
  3. 워크스페이스 DO – 프로젝트의 파일 시스템(SQLite + R2)을 저장합니다.
  4. 샌드박스 워커 – "코드 모드"용 V8 격리 환경과 빌드, 노트북 분석, SQL 쿼리용 별도의 Cloudflare 샌드박스 컨테이너.
  5. 디스패처 – 사용자가 게시한 앱에 요청을 라우팅합니다.

시작하기

  • 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