Skip to main content

Providers CLI Commands

The praisonai-ts CLI provides comprehensive commands for managing 60+ LLM providers.

Command Overview

CommandDescription
providers listList all 60+ available providers
providers doctorCheck environment variables for all providers
providers doctor <name>Check specific provider setup
providers test <name>Test provider with real API call
providers info <name>Show provider details

List Providers

# List all available providers
praisonai-ts providers list

# List with verbose output (shows models)
praisonai-ts providers list --verbose

# Get JSON output for CI/CD
praisonai-ts providers list --json
Example Output:
Registered LLM Providers

  Built-in:
    ✅ openai 🔑
    ✅ anthropic 🔑
    ✅ google 🔑
    ❌ azure ⚠️ No API key
    ❌ groq ⚠️ No API key
JSON Output:
{
  "success": true,
  "data": {
    "providers": [
      { "name": "openai", "registered": true, "available": true, "has_api_key": true },
      { "name": "anthropic", "registered": true, "available": true, "has_api_key": true },
      { "name": "google", "registered": true, "available": true, "has_api_key": true }
    ],
    "total": 60,
    "builtin_count": 6,
    "custom_count": 0
  }
}

Provider Doctor

Check environment setup for providers:
# Check all providers
praisonai-ts providers doctor

# Check specific provider
praisonai-ts providers doctor openai
praisonai-ts providers doctor anthropic
praisonai-ts providers doctor groq

# JSON output
praisonai-ts providers doctor openai --json
Example Output (specific provider):
Provider Doctor: openai
  Package: @ai-sdk/openai
  Description: OpenAI GPT models
  Environment Variable: OPENAI_API_KEY
  Status: ✅ Ready
  Key Preview: sk-p...W4A

  Modalities:
    Text/Chat: ✅  Embeddings: ✅  Image: ✅
    Audio: ✅  Speech: ✅  Tools: ✅
Example Output (all providers):
Provider Environment Check

  Total Providers: 60
  Ready: 3 ✅
  Missing Keys: 57 ⚠️

  Ready Providers:
    ✅ openai
    ✅ anthropic
    ✅ google

Provider Test

Test a provider with a real API call:
# Test with default model
praisonai-ts providers test openai
praisonai-ts providers test anthropic
praisonai-ts providers test google

# Test with specific model
praisonai-ts providers test openai gpt-4o-mini
praisonai-ts providers test anthropic claude-3-5-sonnet

# JSON output
praisonai-ts providers test openai --json
Example Output:
Testing openai/gpt-4o-mini...

  ✅ Test Passed
  Provider: openai
  Model: gpt-4o-mini
  Latency: 1234ms
  Response: "test ok"
  Tokens: 15
JSON Output:
{
  "success": true,
  "data": {
    "provider": "openai",
    "model": "gpt-4o-mini",
    "status": "success",
    "latency_ms": 1234,
    "response_preview": "test ok",
    "usage": { "totalTokens": 15 }
  }
}

Provider Info

Get detailed information about a provider:
praisonai-ts providers info openai
praisonai-ts providers info anthropic --json

Use Specific Provider

# Chat with OpenAI (default)
praisonai-ts chat "Hello"

# Chat with specific model
praisonai-ts chat "Hello" --model openai/gpt-4o
praisonai-ts chat "Hello" --model anthropic/claude-3-5-sonnet
praisonai-ts chat "Hello" --model google/gemini-2.0-flash
praisonai-ts chat "Hello" --model xai/grok-3
praisonai-ts chat "Hello" --model groq/llama-3.3-70b-versatile
praisonai-ts chat "Hello" --model mistral/mistral-large-latest

# Use provider aliases
praisonai-ts chat "Hello" --model claude/claude-3-5-sonnet
praisonai-ts chat "Hello" --model gemini/gemini-2.0-flash
praisonai-ts chat "Hello" --model grok/grok-3

Options Matrix

OptionDescriptionDefault
--jsonOutput in JSON formatfalse
--verboseShow detailed outputfalse
--output <format>Output format (json/text/pretty)pretty
--provider <name>Specify provider-
--model <name>Specify model-

Environment Variables

# Core providers
export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=sk-ant-...
export GOOGLE_API_KEY=AIza...

# Inference providers
export XAI_API_KEY=xai-...
export GROQ_API_KEY=gsk_...
export TOGETHER_API_KEY=...
export FIREWORKS_API_KEY=...
export DEEPSEEK_API_KEY=...
export MISTRAL_API_KEY=...
export COHERE_API_KEY=...
export PERPLEXITY_API_KEY=...
export CEREBRAS_API_KEY=...

# Cloud providers
export AZURE_API_KEY=...
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...

# Local providers
export OLLAMA_BASE_URL=http://localhost:11434
export LM_STUDIO_BASE_URL=http://localhost:1234/v1
export NVIDIA_API_KEY=...

# Gateway providers
export OPENROUTER_API_KEY=...
export PORTKEY_API_KEY=...
export HELICONE_API_KEY=...

# Set default model
export PRAISONAI_MODEL=openai/gpt-4o-mini

Troubleshooting

Missing API Key

# Check which keys are missing
praisonai-ts providers doctor

# Check specific provider
praisonai-ts providers doctor groq
# Output: ❌ Missing API Key
# Set it with: export GROQ_API_KEY=your-api-key

Provider Not Available

# Check if provider package is installed
praisonai-ts providers doctor deepseek
# If package missing, install with:
# npm install @ai-sdk/deepseek

Test Failures

# Run test with verbose output
praisonai-ts providers test openai --verbose

# Check JSON error details
praisonai-ts providers test openai --json

SDK Usage

For programmatic provider usage:
import { 
  createProvider, 
  getAvailableProviders,
  AISDK_PROVIDERS,
  PROVIDER_ALIASES 
} from 'praisonai';

// List all providers
console.log(Object.keys(AISDK_PROVIDERS)); // 60+ providers

// Check aliases
console.log(PROVIDER_ALIASES['claude']); // 'anthropic'

// Create specific provider
const openai = createProvider('openai/gpt-4o-mini');
const anthropic = createProvider('anthropic/claude-3-5-sonnet');
const google = createProvider('google/gemini-2.0-flash');