jasonxu114514/opencode2api
OpenCode 통합 API 게이트웨이 '오픈코드2API' 공개
원제 jasonxu114514/opencode2api
스타 1,040당일 +104Go
Key Point
OpenCode 신규 API가 기존 OpenAI/Anthropic 클라이언트와 호환되는 게이트웨이로 공개되어, 여러 추론 모델을 단일 인터페이스에서 통합할 수 있게 됐다.
핵심 요약
- Go로 만든 OpenCode Zen/Go API 프록시로, OpenAI와 Anthropic API 호환성을 제공하며 웹UI를 포함한 실행 가능한 바이너리 형태다.
- 세 가지 추론 프로토콜(Chat, Responses, Anthropic Messages)을 지원하고 프로토콜 간 자동 변환, 키/프록시 풀링, 자동 라우팅, 동적 모델 발견을 제공한다.
- 별도의 Zen/Go 키 풀과 계층별 선호도 설정, 재시도 정책, 세션 친화성을 제공하며 OpenCode의 공개 계정으로 무료 모델 익명 접근이 가능하다.
- Direct, HTTP/HTTPS, SOCKS5 프록시를 지원하고 관리 포트에서 설정 편집, 플레이그라운드, 진단, 토큰 통계, 실시간 로그 조회 기능이 제공된다.
- 설정 핫 리로드를 지원하며 유효성 검사 후 신규 요청을 새 게이트웨이로 전환하고, 모델 간 추론 난이도를 강제하거나 모델별로 다르게 설정할 수 있다.
- 기본 채팅 완성, 응답, Anthropic 메시지 엔드포인트 외에 System One 구조화된 의사결정 엔드포인트를 제공한다.
- 무료 모델은 자동으로 1시간마다 프로브되고, 사용 불가능 모델은 24시간마다 재확인되며 수동 제어로 자동 프로브를 비활성화할 수 있다.
- 키는 초기에 프록시에 분산되고 실제 트래픽으로 프록시 상태 확인, 키 재바인딩, 쿨다운이 트리거되며 불건강한 프록시는 15분마다 재확인된다.
- 세션 해시로 선호 키나 익명 프록시를 선택하고 x-session-id 헤더로 명시적 세션을 지정할 수 있으며 쿨다운은 지수적으로 증가한다.
- Docker 이미지(`ghcr.io/jasonxu114514/opencode2api`)를 제공하고 초기 실행 시에만 호스트 설정을 가져오며 이후 변경은 웹UI를 통해 수행한다.
- API 요청 본문은 32MB로 제한되고, 메타데이터 요청은 30초 타임아웃을 사용하며 새로고침 실패 시 기존 데이터를 유지한다.
- 모델 발견에서 비용(입출력, 캐시 읽기/쓰기), 사용 중단 여부, 추론 난이도 수준을 제공하고 컨텍스트/입출력 토큰 제한을 노출한다.
- 요청 결과, 시도 기록, 토큰 통계, 최신 플레이그라운드 결과는 메모리에 저장되고 요청 세부사항은 최근 1시간 최대 10,000개 요청 범위에서 유지된다.
저장소 보기 ↗github.com