manytokens — 複数OpenAIアカウント認証とトークン管理CLI
概要
manytokensは、複数のOpenAIアカウントをOAuth(PKCE)で認証し、取得したアクセストークン/リフレッシュトークンをOpenClawエージェントが利用するauth-profiles.jsonに書き込むためのRust製CLIツールです。実行時にPKCEチャレンジを生成してブラウザでOpenAIの認可URLを開き、ユーザーが返送されたコールバックURL(または生の認可コード)を貼り付けるとトークンを交換。JWTを解析してメールやアカウントIDを抽出し、プロファイルエントリとして保存します。シンプルな使い勝手で複数アカウント管理を容易にします。
リポジトリの統計情報
- スター数: 2
- フォーク数: 0
- ウォッチャー数: 2
- コミット数: 5
- ファイル数: 4
- メインの言語: Rust
主な特徴
- PKCEを用いた安全なOAuth認証フローを自動化
- ブラウザ起動→コピー&ペーストで完了する簡易なCLI操作
- JWTの解析でメール・アカウントIDを抽出しプロファイル化
- auth-profiles.jsonへ複数アカウントのトークンを保存
技術的なポイント
manytokensはRustで実装された軽量CLIで、セキュリティと信頼性を重視しています。PKCE(code_challenge / code_verifier)を生成することで、公開クライアント環境での認可コードインターセプト攻撃を軽減し、ブラウザ経由の認可を安全に行います。ユーザー体験は極めて簡潔で、ツールは認可URLを自動で開き、ユーザーは返されたコールバックURLまたは認可コードを貼り付けるだけです。貼り付けられた値からツールはアクセストークンとリフレッシュトークンを交換し、得られたIDトークン(JWT)をデコードしてメールアドレスとアカウントIDを抽出します。最終的にauth-profiles.json形式でプロファイルを出力するため、OpenClawなどトークン管理を前提とするエージェントと直接連携できます。Rustを採用しているためバイナリ配布が容易で、依存関係の管理や並列処理、型安全性により実装の堅牢性が期待できます。注意点としてはローカルにトークン(特にリフレッシュトークン)を平文で保存するため、ファイルのアクセス権管理や暗号化、トークンのローテーション/失効管理を運用側で考慮する必要があります。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- Cargo.toml: file
- README.md: file
- src: dir
まとめ
シンプルで実用的な、OpenAI複数アカウント認証を支援するRust製CLIツールです。
リポジトリ情報:
- 名前: manytokens
- 説明: 説明なし
- スター数: 2
- 言語: Rust
- URL: https://github.com/thepagent/manytokens
- オーナー: thepagent
- アバター: https://avatars.githubusercontent.com/u/262003297?v=4
READMEの抜粋:
manytokens
A CLI tool to authenticate multiple OpenAI accounts via OAuth (PKCE flow) and store the resulting tokens into an auth-profiles.json file used by OpenClaw agents.
What it does
- Generates a PKCE challenge and opens an OpenAI OAuth authorization URL in your browser.
- You paste back the callback URL (or raw authorization code).
- It exchanges the code for access/refresh tokens, extracts your email and account ID from the JWT, and writes a profile entry to `auth-profiles.jso…