suno init-configCreates ~/.suno-cli/config.yaml with default settings.
- Default:
~/.suno-cli/config.yaml - Custom:
suno --config /path/to/config.yaml <command>
# AI Model (V5, V4_5PLUS, V4_5ALL, V4_5, V4)
default_model: V4_5ALL
# Vocal gender (male, female)
default_gender: male
# Default output directory
default_output_dir: ~/Music/suno-generated
# ID3 Tags
default_artist: Suno AI
default_album: My Album # Optional
# API Settings
api_key: ${SUNO_API_KEY} # Use env var
callback_url: https://example.com/callback # Optional
# Polling
poll_interval: 10 # Seconds between status checks
max_wait: 600 # Maximum wait time in secondsConfig files support variable substitution:
api_key: ${SUNO_API_KEY}
default_output_dir: ${HOME}/Music/sunoSettings are applied in this order (highest first):
-
Command-line arguments
suno generate --prompt lyrics.txt --model V5 --output ./custom
-
Config file
default_model: V4_5ALL default_output_dir: ~/Music
-
Environment variables
export SUNO_API_KEY=abc123
suno init-config
# Edit ~/.suno-cli/config.yamlapi_key: ${SUNO_API_KEY} # Reference env var
# or
api_key: your-actual-key # Direct (less secure)export SUNO_API_KEY=your-key-here
# Persist in shell profile
echo 'export SUNO_API_KEY=your-key-here' >> ~/.zshrc
source ~/.zshrcsuno generate --prompt lyrics.txt --api-key your-key-here ...api_key: ${SUNO_API_KEY}
default_output_dir: ~/Music/sunodefault_model: V4_5ALL
default_gender: male
default_output_dir: ~/Music/albums
default_artist: My Band
default_album: Greatest Hits
api_key: ${SUNO_API_KEY}
poll_interval: 10
max_wait: 600default_model: V5
default_output_dir: ~/Music/experiments
api_key: ${SUNO_API_KEY}
poll_interval: 5
max_wait: 300- Visit sunoapi.org
- Sign up and get your API key
- Add to config or environment variable