Skip to main content

    CLI Configuration

    Set api_url, timeout, format and debug per profile, override them with IVYBLOOM_* environment variables or flags, and register a BYOK provider key.

    configurationsettingsprofilesthemes

    This page shows how to customize the ivybloom CLI's behavior, output formats, profiles, themes, and default settings. Reach for it when you want per-environment profiles, machine-readable output for scripting, or your own AI keys via BYOK. Your configuration can sync with your platform profile, so the same settings follow you between the CLI and the web app. For the broader command set, see the CLI overview.

    Difficulty

    beginner

    Configuration

    Customize CLI behavior, output formats, and default settings.


    Configuration Commands

    View Current Settings

    ivybloom config show

    List All Options

    ivybloom config list

    Get a Specific Setting

    ivybloom config get api_url
    ivybloom config get timeout

    Set a Value

    ivybloom config set format json
    ivybloom config set timeout 60
    ivybloom config set debug true

    Reset to Defaults

    ivybloom config reset

    View JSON Schema

    ivybloom config schema

    Shows the JSON schema of all available configuration keys, types, and defaults.

    Validate Configuration

    ivybloom config validate
    ivybloom config validate --check-auth  # Verify credentials
    ivybloom config validate --check-api   # Test API connectivity
    ivybloom config validate --all         # Run all checks

    Configuration Options

    Core Settings

    KeyDefaultDescription
    api_urlProduction URLAPI endpoint URL
    timeout30Request timeout in seconds
    formattableDefault output format (table, json, csv, yaml)
    debugfalseEnable debug mode
    ivybloom config set format json
    ivybloom config set timeout 60

    Profile Display

    KeyDefaultDescription
    profile_display.show_org_nametrueShow organization name
    profile_display.show_tier_badgetrueShow tier badge

    Tier Settings

    KeyDefaultDescription
    tier_settings.show_tier_warningstrueShow tier-related warnings

    Session Preferences

    KeyDefaultDescription
    session_preferences.session_timeout_minutes60Session timeout

    Sync with Backend

    Synchronize your local CLI configuration with your profile settings:

    # Sync from backend (pulls remote settings)
    ivybloom config sync
    
    # Force overwrite local with remote
    ivybloom config sync --force
    
    # Push local settings to backend
    ivybloom config sync --push

    Export and Import

    Export Configuration

    ivybloom config export config-backup.json

    Import Configuration

    ivybloom config import config-backup.json

    Example exported file:

    {
      "api_url": "https://www.ivybiosciences.com/api/cli",
      "timeout": 30,
      "format": "table",
      "debug": false,
      "profile_display": {
        "show_org_name": true,
        "show_tier_badge": true
      }
    }

    Use export/import to share configuration across machines or back up before making changes.


    Configuration File Locations

    PathPurpose
    ~/.config/ivybloom/default.jsonConfig for the default profile; each profile is <profile>.json
    ~/.config/ivybloom/cli_history.jsonCommand history
    ~/.config/ivybloom/diagnostics.jsonLast diagnostics report
    ~/.config/ivybloom/ui_settings.jsonTUI settings
    ~/.config/ivybloom/error.logError log
    .ivybloom/project.jsonProject-local settings (in a linked project's root)

    Set IVYBLOOM_CONFIG_DIR to use a different directory.

    View file location:

    ivybloom config path

    Example config file:

    {
      "api_url": "https://www.ivybiosciences.com/api/cli",
      "timeout": 30,
      "format": "table",
      "debug": false,
      "profile_display": {
        "show_org_name": true,
        "show_tier_badge": true
      },
      "tier_settings": {
        "show_tier_warnings": true
      },
      "session_preferences": {
        "session_timeout_minutes": 60
      }
    }

    Environment Variables

    Override configuration with environment variables:

    VariableConfig KeyDescription
    IVYBLOOM_API_KEY-API key for authentication
    IVYBLOOM_API_URLapi_urlAPI endpoint URL
    IVYBLOOM_TOKEN-Access token for authentication
    IVYBLOOM_DEBUGdebugEnable debug mode (1 or true)
    IVYBLOOM_CONFIG_DIR-Config directory (default ~/.config/ivybloom)
    IVYBLOOM_SCRIPT_MODE-Non-interactive output, no spinners (set to 1)
    NO_COLOR-Disable colors (set to 1)

    Example:

    # Use API key from environment
    export IVYBLOOM_API_KEY="ivy_yourKeyId_yourSecret"
    ivybloom jobs list
    
    # One-time override
    IVYBLOOM_DEBUG=true ivybloom jobs list

    CI/CD Best Practice

    Use environment variables for API keys in CI/CD pipelines rather than committing them to config files.


    Precedence Order

    Configuration values are resolved in this order (highest to lowest):

    1. Command-line flags (--format json)
    2. Environment variables (IVYBLOOM_API_URL)
    3. Project settings (.ivybloom/project.json in a linked project)
    4. Profile config (~/.config/ivybloom/<profile>.json)
    5. Default values

    Profiles

    Use different profiles for different environments:

    # Use a profile
    ivybloom jobs list --profile staging

    The profile comes from the --profile flag only; there is no profile environment variable.


    AI Models

    List Available Models

    ivybloom config models list
    ivybloom config models list --available

    Model Pricing

    Model pricing is documented once, in plans and tiers.

    Refresh Model List

    ivybloom config models refresh

    Clear Model Cache

    ivybloom config models clear-cache

    BYOK (Bring Your Own Key)

    Register a provider key of your own. Model calls that run on it skip the platform markup; they are still metered in research credits, at the provider's cost.

    Check BYOK Status

    ivybloom config byok status

    Add Your API Key

    ivybloom config byok add openrouter sk-or-your-key
    ivybloom config byok add openai sk-your-key
    ivybloom config byok add anthropic sk-ant-your-key

    Remove BYOK Session

    ivybloom config byok remove

    Themes

    List Available Themes

    ivybloom config theme list

    Set Theme

    ivybloom config theme set dark
    ivybloom config theme set light

    config theme set currently saves the theme name into the format key, which changes your default output format. Until that is fixed, set the TUI theme with /appearance, and restore the output format with ivybloom config set format table.

    Preview Theme

    ivybloom config theme preview dark

    Onboarding

    Check Onboarding Status

    ivybloom config onboarding status

    Mark Onboarding Complete

    ivybloom config onboarding complete

    Reset Onboarding

    ivybloom config onboarding reset

    Was this page helpful?

    Loading...