Kiro-Go — KiroアカウントをOpenAI/Anthropic互換APIに変換するGo製プロキシ
概要
Kiro-Goは、KiroアカウントをOpenAIやAnthropicが提供するAPIと互換性のあるエンドポイントに変換するプロキシ/ゲートウェイです。主な目的は、複数のKiroアカウントをプールしてAPIリクエストを分散させること、認証トークンの自動リフレッシュ、Anthropic Claudeの/v1/messagesエンドポイントをフルサポートする点にあります。Docker構成や管理用のWeb UIを備え、Goで実装されているためパフォーマンスと配備の容易さも特徴です。
リポジトリの統計情報
- スター数: 28
- フォーク数: 9
- ウォッチャー数: 28
- コミット数: 11
- ファイル数: 13
- メインの言語: Go
主な特徴
- Anthropic Claudeの/v1/messagesエンドポイントを完全サポート
- 複数Kiroアカウントのプーリングとリクエスト分散(マルチアカウント対応)
- アクセストークンの自動更新・管理
- DockerおよびWeb管理インターフェースを提供
技術的なポイント
Kiro-GoはGoで書かれた軽量なAPIゲートウェイで、Kiroのアカウント認証情報を受け取り、それらを内部で管理しつつ外部にはOpenAI/Anthropic互換のAPIとして振る舞います。コアはリクエストハンドラとアカウントプールで、各リクエストを利用可能なKiroアカウントに割り当てて分散させることで負荷分散とスロットリングの役割を果たします。トークンは定期的に自動更新され、期限切れやエラー時にはプールから外すかリフレッシュ処理を行う設計が想定されます。
Go言語の特性を活かし、goroutineとチャネルで高並列のHTTP処理を実現しつつ、mutexなどでプール状態を安全に管理します。Anthropicの/v1/messagesの互換性を保つためにリクエスト/レスポンスのマッピングやヘッダ操作を行い、クライアント側は従来のOpenAI/Anthropic APIと同じ感覚で利用できます。Docker対応によりコンテナ化が容易で、環境変数や設定ファイルでアカウント一覧・プール戦略・ログレベル・管理UIの有効化を制御できる設計です。
さらに、管理用Web UIはプール状況や各アカウントの状態(利用率、エラー、トークン有効期限など)を可視化し、運用時のデバッグや調整を容易にします。ミドルウェア層では認可、リクエストレート制御、ロギング、ヘルスチェック、メトリクス露出(Prometheus等を想定)などを組み込みやすくしている点も注目できます。MITライセンスで提供され、Go 1.21+を要件とするバッジがREADMEにあります。
プロジェクトの構成
主要なファイルとディレクトリ:
- .github: dir
- Dockerfile: file
- README.md: file
- README_CN.md: file
- auth: dir
…他 8 ファイル
まとめ
Kiroアカウントを簡単にOpenAI/Anthropic互換APIとして公開できる実用的なGo製プロキシです。
リポジトリ情報:
- 名前: Kiro-Go
- 説明: Kiro-Go — Convert Kiro accounts into OpenAI/Anthropic-compatible API endpoints with multi-account pooling, auto-refresh, and a web admin.
- スター数: 28
- 言語: Go
- URL: https://github.com/Quorinex/Kiro-Go
- オーナー: Quorinex
- アバター: https://avatars.githubusercontent.com/u/257893540?v=4
READMEの抜粋:
Kiro-Go
Convert Kiro accounts to OpenAI / Anthropic compatible API service.
Features
- 🔄 Anthropic Claude API - Full support for
/v1/messagesendpoint - 🤖 **O…