caigee-cmd/cli2api
Self-hosted OpenAI-compatible API for Qoder CLI login,workbuddy, with SQLite multi-account routing
CLI2API – 나만의 로그인 세션을 로컬 OpenAI 호환 API로 변환
이것이 무엇인가 – CLI2API는 OpenAI 호환 API의 chat-completion, response, Anthropic 스타일 엔드포인트를 로컬에서 노출할 수 있는 자체 호스팅 게이트웨이입니다. Qoder, WorkBuddy, Trae, 그리고 (실험적으로) Devin 및 Command Code와 같은 서비스에 대해 이미 보유한 인증을 사용하여 OpenAI 스타일 요청을 해당 백엔드로 라우팅합니다.
왜 중요한가 – 많은 개발자가 이러한 중국 시장 AI 플랫폼에 개인 계정을 보유하고 있지만 기존 도구(예: VS Code 확장, LangChain, CLI 클라이언트)에 연결할 수 있는 표준 OpenAI 호환 엔드포인트가 부족합니다. CLI2API는 자격 증명을 공개 인터넷에 노출하지 않고 이 격차를 해소합니다.
핵심 기능
- OpenAI 호환 엔드포인트 –
chat/completions,responses, Anthropicmessages, 모델 목록, 스트리밍 응답, 함수 도구 호출을 지원합니다. - 다중 계정 스케줄링 – 자동 계정 선택, 세션 고정, 동시성 제한, 쿨다운, 장애 조치.
- 웹 콘솔 – 계정, 모델, 클라이언트 API 키, 프록시 설정 관리, 사용량 할당량 및 요청 로그 확인.
- Docker 우선 배포 – 영구 계정 데이터, 제자리 업그레이드/롤백을 위한 선택적 호스트 측 업데이터.
- 공급자 어댑터 –
- Qoder(국제 및 국내 에디션 모두) – 계정당 격리된 Node 프로세스로 실행.
- WorkBuddy, Trae, Devin, Command Code – 게이트웨이 프로세스 내에서 Go 어댑터로 실행.
빠른 시작 (Linux/macOS/Windows + Docker)
# 저장소 클론 및 진입
git clone https://github.com/caigee-cmd/cli2api.git
cd cli2api
# 스택 시작 (Linux/macOS) – Windows에서는 scripts\start.ps1 사용
./scripts/start.sh
- 첫 번째 로그 줄에 출력된 관리자 키를 기록합니다.
- 브라우저에서
http://127.0.0.1:3010을 열고 관리자 키로 로그인한 다음 계정 아래에 공급자 계정을 추가합니다. - API 키 아래에서 클라이언트 API 키를 만들고 액세스에서 원하는 모델을 선택한 후 연결을 테스트합니다.
- 모든 OpenAI 호환 클라이언트를 다음으로 지정합니다:
- 기본 URL:
http://127.0.0.1:3010/v1 - API 키: 방금 만든 클라이언트 키
- 모델 ID는 액세스 페이지 또는
/v1/models를 통해 확인할 수 있습니다.
- 기본 URL:
전체 배포 지침, 환경 변수 및 고급 옵션은 deploy/README.md에 있습니다.
작동 방식
- Go 게이트웨이가 모든 HTTP 요청을 수신하고 인증을 수행하며 호출을 기록하고 사용할 업스트림 계정을 결정합니다.
- Qoder의 경우 각 계정은 전용 HOME 디렉토리로 자체 Node 프로세스에서 실행되어 격리를 보장합니다.
- 다른 공급자의 경우 게이트웨이는 Go로 작성된 어댑터를 직접 호출하여 요청당 전체 CLI를 생성하는 오버헤드를 피합니다.
- 아키텍처 다이어그램(README 참조)은 흐름을 보여줍니다: 클라이언트 → Go 게이트웨이 → 계정별 런타임 → 업스트림 AI 서비스.
CLI2API를 사용해야 하는 경우
- Qoder, WorkBuddy, Trae 등에 개인 계정이 있고 OpenAI API만 이해하는 도구를 사용하려는 경우.
- 자격 증명을 인터넷에 노출하지 않는 로컬 엔드포인트(예: 개발, 오프라인 테스트 또는 개인 정보 보호)가 필요한 경우.
- 사용량을 모니터링하고 키를 교체하며 여러 공급자 계정 간에 전환할 수 있는 단일 웹 UI를 원하는 경우.
제한 사항 및 주의 사항
- 공개 서비스가 아님 – 귀하의 업스트림 계정을 사용하여 요청을 전달만 하며 추가 할당량을 제공하지 않습니다.
- 호환성 계층은 상태 비저장입니다. 서버 측에 대화 기록을 저장하지 않으며 일반 OpenAI 함수 호출 형식 외의 공급자별 도구를 지원하지 않습니다.
- 이미지 생성은 업스트림 모델에 따라 다릅니다. WorkBuddy와 Trae는 현재 이미지를 지원하지 않습니다.
- 공급자 간 모델 전환은 시스템 전환, 계정 권한 및 지역 제한의 영향을 받습니다.
- 프로젝트는 Qoder/WorkBuddy/Trae 및 실험적인 Devin/Command Code 통합에 대한 실제 계정의 완전한 검증을 아직 기다리고 있습니다.
- 기본적으로 API는
127.0.0.1:3010에서만 수신합니다. 공개적으로 노출하려면 추가 네트워크 강화가 필요합니다.
보안 참고 사항
- 관리자 키를 비밀로 유지하세요 – 계정 및 시스템 설정을 수정할 수 있습니다.
- 클라이언트 키는 일반 API 토큰처럼 취급해야 하며
/v1/*엔드포인트에만 액세스 권한을 부여합니다. - 요청 로그는 기본적으로 프롬프트 및 응답 본문을 생략하지만 필요한 경우 활성화할 수 있습니다.
- 취약점 보고는
SECURITY.md의 지침을 따르세요.
커뮤니티 및 기여
- 중국어 토론은 LINUX DO 포럼(README에 링크)에서 이루어집니다.
- 이슈 및 기능 요청은 GitHub Issues를 통해 처리됩니다.
- 기여는 표준 fork-branch-PR 워크플로를 따릅니다. 자세한 내용은
CONTRIBUTING.md를 참조하세요.
라이선스
MIT – 소프트웨어를 사용, 수정 및 배포할 수 있지만 자체 계정을 사용할 때 업스트림 AI 플랫폼의 약관을 준수해야 합니다.
요약 – CLI2API는 Docker 기반 스택과 웹 콘솔을 통해 관리되는 Qoder/WorkBuddy/Trae(및 실험적인 Devin/Command Code) 계정을 위한 로컬 호스팅 OpenAI 호환 API 프론트엔드를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트