manytokens — 複数OpenAIアカウント認証とトークン管理CLI

Tool

概要

manytokensは、複数のOpenAIアカウントをOAuth(PKCE)で認証し、取得したアクセストークン/リフレッシュトークンをOpenClawエージェントが利用するauth-profiles.jsonに書き込むためのRust製CLIツールです。実行時にPKCEチャレンジを生成してブラウザでOpenAIの認可URLを開き、ユーザーが返送されたコールバックURL(または生の認可コード)を貼り付けるとトークンを交換。JWTを解析してメールやアカウントIDを抽出し、プロファイルエントリとして保存します。シンプルな使い勝手で複数アカウント管理を容易にします。

GitHub

リポジトリの統計情報

  • スター数: 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ツールです。

リポジトリ情報:

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

  1. Generates a PKCE challenge and opens an OpenAI OAuth authorization URL in your browser.
  2. You paste back the callback URL (or raw authorization code).
  3. 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…