Skip to main content

Usage

esprit provider <command> [options]

Description

Manage authentication credentials for LLM providers. Esprit supports OAuth-based login for major providers and API key configuration for direct access.

Subcommands

login

Authenticate with an LLM provider via OAuth or API key.
esprit provider login [provider_id]
provider_id
string
Provider to authenticate with. If omitted, displays an interactive selection menu.Supported providers:
  • esprit - Esprit Subscription (Bedrock via Esprit proxy)
  • antigravity - Antigravity (Free Claude/Gemini)
  • opencode - OpenCode Zen
  • openai - OpenAI ChatGPT Plus/Pro (Codex)
  • anthropic - Anthropic Claude Pro/Max
  • github-copilot - GitHub Copilot
  • google - Google Gemini
Interactive Login Flow:
  1. Opens browser to provider authorization page
  2. User completes authentication
  3. Credentials are securely stored locally
Multi-Account Support: openai and antigravity support multiple accounts with automatic rotation.

logout

Remove authentication credentials for a provider.
esprit provider logout [provider_id]
provider_id
string
Provider to logout from. If omitted, displays an interactive selection menu.For multi-account providers, you can choose to:
  • Remove a specific account
  • Remove all accounts

status

Display authentication status for all providers.
esprit provider status
Shows:
  • Provider name
  • Authentication status (logged in / not configured)
  • Authentication type (OAuth / API key / Platform)
  • Account details (email, plan, number of accounts)
  • Token expiration warnings

api-key

Set an API key directly for a provider (alternative to OAuth).
esprit provider api-key [provider_id]
provider_id
string
Provider to configure. If omitted, displays an interactive selection menu.Note: Not available for esprit provider (uses platform credentials).
The API key is stored securely in ~/.esprit/providers.json.

Exit Codes

  • 0: Command completed successfully
  • 1: Authentication failed or invalid provider

Examples

Interactive provider selection

esprit provider login
# Displays menu:
#   [ ] 1. Esprit (Use Your Subscription)
#   [✓] 2. Antigravity (Free Claude/Gemini)
#   [ ] 3. OpenCode Zen
#   ...

Login to specific provider

esprit provider login esprit
esprit provider login openai
esprit provider login anthropic

Login with GitHub Enterprise (Copilot)

esprit provider login github-copilot
# Prompts: "Are you using GitHub Enterprise?"
# If yes, enter enterprise URL: https://github.company.com

Check authentication status

esprit provider status
Output example:
Provider Authentication Status

Provider                        Status                Type
Esprit (Use Your Subscription) ✓ Logged in (PRO)     PLATFORM
Antigravity (Free)             ✓ 2 accounts          OAUTH
OpenCode Zen                   ✓ Logged in           API
OpenAI (ChatGPT Plus/Pro)      Not configured        -
Anthropic (Claude Pro/Max)     ⚠ Token expired       OAUTH
GitHub Copilot                 Not configured        -
Google (Gemini)                Not configured        -

Logout from provider

esprit provider logout openai
Multi-account logout:
esprit provider logout antigravity
# Shows menu:
#   1. [email protected]
#   2. [email protected]
#   3. Remove all

Set API key

esprit provider api-key opencode
# Prompts: "Enter API key for OpenCode Zen: " (hidden input)

Add multiple accounts (rotation)

# Add first account
esprit provider login antigravity

# Add second account
esprit provider login antigravity
# Prompts: "Add another account?" → yes

# Status shows both accounts
esprit provider status
# Antigravity: ✓ 2 accounts

Provider Details

Esprit Subscription

Authentication: Platform OAuth
Features: Access to AWS Bedrock models via Esprit Cloud
Plans: Free, Pro, Team, Enterprise
esprit provider login esprit

Antigravity

Authentication: OAuth (multi-account)
Features: Free access to Claude and Gemini models
Rotation: Automatically rotates between accounts for rate limiting
esprit provider login antigravity

OpenCode Zen

Authentication: API key
Features: Access to OpenCode models
Public models: Some models available without authentication
esprit provider api-key opencode

OpenAI Codex

Authentication: OAuth (multi-account) or API key
Features: ChatGPT Plus/Pro models
Rotation: Supports multiple accounts
esprit provider login openai

Anthropic Claude

Authentication: OAuth or API key
Features: Claude Pro/Max models
esprit provider login anthropic

GitHub Copilot

Authentication: OAuth
Features: Copilot models
Enterprise: Supports custom GitHub Enterprise URLs
esprit provider login github-copilot

Google Gemini

Authentication: OAuth or API key
Features: Gemini models
esprit provider login google

Configuration Files

Provider credentials are stored in:
  • OAuth tokens: ~/.esprit/providers.json
  • Account pool: ~/.esprit/account_pool.json
  • Platform credentials: ~/.esprit/credentials.json (Esprit subscription)

Security

  • Credentials are stored locally on your machine
  • OAuth tokens are automatically refreshed when expired
  • API keys are stored in plaintext (secure file permissions recommended)
  • No credentials are sent to third parties except during OAuth flows
  • esprit scan - Run a penetration test (requires configured provider)

Build docs developers (and LLMs) love