docsConfiguration Commands

Configuration Commands

ocmonitor config Command Reference

The configuration command helps you manage and view your OpenCode Monitor settings.

Viewing Configuration

Show All Configuration

# Display complete configuration
ocmonitor config show

Text Output Example:

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃                                     Configuration                                                   ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

Paths:
   Messages Directory: ~/.local/share/opencode/storage/message
   Export Directory: ./exports

UI Settings:
   Table Style: rich
   Progress Bars: enabled
   Colors: enabled
   Live Refresh: 5 seconds

Export Settings:
   Default Format: csv
   Include Metadata: enabled
   Include Raw Data: disabled

Models:
   Configuration File: models.json
   Supported Models: 6

Analytics:
   Default Timeframe: daily
   Recent Sessions Limit: 50

Show Specific Configuration Sections

# Show only paths configuration
ocmonitor config show --section paths
 
# Show UI settings
ocmonitor config show --section ui
 
# Show model configuration
ocmonitor config show --section models

Validating Configuration

Check Configuration Validity

# Validate configuration files
ocmonitor config validate

Text Output Example:

Configuration validation successful

Validation Results:
   config.toml: Valid TOML format
   models.json: Valid JSON format
   Paths: All directories accessible
   Models: 6 models configured correctly
   Quotas: Quota limits properly formatted

Configuration Details:
   Config File: /path/to/config.toml
   Models File: /path/to/models.json
   Messages Directory: ~/.local/share/opencode/storage/message (exists)
   Export Directory: ./exports (will be created)

Diagnose Configuration Issues

# Comprehensive configuration diagnosis
ocmonitor config diagnose

Text Output Example:

Configuration Diagnosis

Configuration Files:
   config.toml found and valid
   models.json found and valid

Path Issues:
   Messages directory not found: ~/.local/share/opencode/storage/message
   Suggestion: Check if OpenCode is installed and has been run

Model Configuration:
   6 models configured
   All required fields present
   Valid pricing data

Recommendations:
   1. Verify OpenCode installation
   2. Run OpenCode at least once to create message directory
   3. Consider setting custom messages_dir if using different location

Updating Configuration

Set Configuration Values

# Set messages directory
ocmonitor config set paths.messages_dir "/custom/path/to/messages"
 
# Set default export format
ocmonitor config set export.default_format "json"
 
# Enable/disable UI features
ocmonitor config set ui.colors true
ocmonitor config set ui.progress_bars false
 
# Set live refresh interval
ocmonitor config set ui.live_refresh_interval 10

Reset Configuration

# Reset to default configuration
ocmonitor config reset
 
# Reset specific section
ocmonitor config reset --section ui
 
# Backup current config before reset
ocmonitor config reset --backup

Configuration File Locations

Find Configuration Files

# Show configuration file paths
ocmonitor config paths

Example Output:

Configuration File Locations:

Primary Configuration:
   File: ~/.config/ocmonitor/config.toml
   Status: Found (recommended location)

Project Configuration:
   File: ./config.toml
   Status: Not found (optional)

Models Configuration:
   File: ./models.json
   Status: Found

Environment Overrides:
   OCMONITOR_MESSAGES_DIR: not set
   OCMONITOR_EXPORT_DIR: not set

Environment Variable Override

You can override any configuration setting using environment variables:

# Override messages directory
export OCMONITOR_MESSAGES_DIR="/custom/path"
 
# Override export format
export OCMONITOR_EXPORT_FORMAT="json"
 
# Override UI settings
export OCMONITOR_UI_COLORS="false"
export OCMONITOR_UI_TABLE_STYLE="simple"
 
# Use the overrides
ocmonitor config show