From 266a315fa47e3bf7ab1a2463b978d084abed4894 Mon Sep 17 00:00:00 2001 From: guzus Date: Wed, 11 Dec 2024 01:31:04 +0900 Subject: [PATCH] refactor: keep order of env vars to minimize confusion --- .env.example | 211 ++++++++++++++++++++------------------------------- 1 file changed, 82 insertions(+), 129 deletions(-) diff --git a/.env.example b/.env.example index 5d0a516568..3792f31e75 100644 --- a/.env.example +++ b/.env.example @@ -1,31 +1,30 @@ -# ----------------------------------- # Discord Configuration -# ----------------------------------- DISCORD_APPLICATION_ID= DISCORD_API_TOKEN= # Bot token DISCORD_VOICE_CHANNEL_ID= # The ID of the voice channel the bot should join (optional) -# ----------------------------------- # AI Model API Keys -# ----------------------------------- OPENAI_API_KEY= # OpenAI API key, starting with sk- + # Eternal AI's Decentralized Inference API ETERNALAI_URL= ETERNALAI_MODEL= # Default: "neuralmagic/Meta-Llama-3.1-405B-Instruct-quantized.w4a16" ETERNALAI_API_KEY= + GROK_API_KEY= # GROK API Key GROQ_API_KEY= # Starts with gsk_ OPENROUTER_API_KEY= GOOGLE_GENERATIVE_AI_API_KEY= # Gemini API key + ALI_BAILIAN_API_KEY= # Ali Bailian API Key VOLENGINE_API_KEY= # VolEngine API Key -HYPERBOLIC_API_KEY= # Hyperbolic API Key +HYPERBOLIC_API_KEY= # Hyperbolic API Key -# ----------------------------------- # Speech Synthesis -# ----------------------------------- -ELEVENLABS_XI_API_KEY= # API key from ElevenLabs +ELEVENLABS_XI_API_KEY= # API key from elevenlabs + +# ElevenLabs Settings ELEVENLABS_MODEL_ID=eleven_multilingual_v2 ELEVENLABS_VOICE_ID=21m00Tcm4TlvDq8ikWAM ELEVENLABS_VOICE_STABILITY=0.5 @@ -35,230 +34,184 @@ ELEVENLABS_VOICE_USE_SPEAKER_BOOST=false ELEVENLABS_OPTIMIZE_STREAMING_LATENCY=4 ELEVENLABS_OUTPUT_FORMAT=pcm_16000 -# ----------------------------------- # Twitter/X Configuration -# ----------------------------------- TWITTER_DRY_RUN=false -TWITTER_USERNAME= -TWITTER_PASSWORD= -TWITTER_EMAIL= +TWITTER_USERNAME= # Account username +TWITTER_PASSWORD= # Account password +TWITTER_EMAIL= # Account email TWITTER_2FA_SECRET= -TWITTER_COOKIES= -TWITTER_POLL_INTERVAL=120 # How often (in seconds) the bot checks for interactions +TWITTER_COOKIES= # Account cookies +TWITTER_POLL_INTERVAL=120 # How often (in seconds) the bot should check for interactions X_SERVER_URL= XAI_API_KEY= XAI_MODEL= -# ----------------------------------- # Post Interval Settings (in minutes) -# ----------------------------------- -POST_INTERVAL_MIN=90 # Default: 90 -POST_INTERVAL_MAX=180 # Default: 180 +POST_INTERVAL_MIN= # Default: 90 +POST_INTERVAL_MAX= # Default: 180 POST_IMMEDIATELY= -# ----------------------------------- # Feature Flags -# ----------------------------------- IMAGE_GEN= # Set to TRUE to enable image generation USE_OPENAI_EMBEDDING= # Set to TRUE for OpenAI/1536, leave blank for local USE_OLLAMA_EMBEDDING= # Set to TRUE for OLLAMA/1024, leave blank for local -# ----------------------------------- # OpenRouter Models -# ----------------------------------- OPENROUTER_MODEL= # Default: uses hermes 70b/405b SMALL_OPENROUTER_MODEL= MEDIUM_OPENROUTER_MODEL= LARGE_OPENROUTER_MODEL= -# ----------------------------------- # REDPILL Configuration # https://docs.red-pill.ai/get-started/supported-models -# ----------------------------------- REDPILL_API_KEY= # REDPILL API Key REDPILL_MODEL= -SMALL_REDPILL_MODEL=gpt-4o-mini -MEDIUM_REDPILL_MODEL=gpt-4o -LARGE_REDPILL_MODEL=gpt-4o +SMALL_REDPILL_MODEL= # Default: gpt-4o-mini +MEDIUM_REDPILL_MODEL= # Default: gpt-4o +LARGE_REDPILL_MODEL= # Default: gpt-4o -# ----------------------------------- # Ollama Configuration -# ----------------------------------- OLLAMA_SERVER_URL= # Default: localhost:11434 OLLAMA_MODEL= -OLLAMA_EMBEDDING_MODEL=mxbai-embed-large -SMALL_OLLAMA_MODEL=llama3.2 -MEDIUM_OLLAMA_MODEL=hermes3 -LARGE_OLLAMA_MODEL=hermes3:70b +OLLAMA_EMBEDDING_MODEL= # Default: mxbai-embed-large +SMALL_OLLAMA_MODEL= # Default: llama3.2 +MEDIUM_OLLAMA_MODEL= # Default: hermes3 +LARGE_OLLAMA_MODEL= # Default: hermes3:70b -# ----------------------------------- # Google Configuration -# ----------------------------------- GOOGLE_MODEL= SMALL_GOOGLE_MODEL= # Default: gemini-1.5-flash-latest MEDIUM_GOOGLE_MODEL= # Default: gemini-1.5-flash-latest LARGE_GOOGLE_MODEL= # Default: gemini-1.5-pro-latest EMBEDDING_GOOGLE_MODEL= # Default: text-embedding-004 -# ----------------------------------- # Groq Configuration -# ----------------------------------- SMALL_GROQ_MODEL= # Default: llama-3.1-8b-instant MEDIUM_GROQ_MODEL= # Default: llama-3.3-70b-versatile LARGE_GROQ_MODEL= # Default: llama-3.2-90b-vision-preview EMBEDDING_GROQ_MODEL= # Default: llama-3.1-8b-instant -# ----------------------------------- # LlamaLocal Configuration -# ----------------------------------- LLAMALOCAL_PATH= # Default: "" which is the current directory in plugin-node/dist/ which gets destroyed and recreated on every build -# ----------------------------------- -# Additional API Keys -# ----------------------------------- +# API Keys ANTHROPIC_API_KEY= # For Claude HEURIST_API_KEY= # Get from https://heurist.ai/dev-access -# ----------------------------------- # Heurist Models -# ----------------------------------- SMALL_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct MEDIUM_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct LARGE_HEURIST_MODEL= # Default: meta-llama/llama-3.1-405b-instruct HEURIST_IMAGE_MODEL= # Default: PepeXL -# ----------------------------------- # Gaianet Configuration -# ----------------------------------- GAIANET_MODEL= GAIANET_SERVER_URL= SMALL_GAIANET_MODEL= # Default: llama3b SMALL_GAIANET_SERVER_URL= # Default: https://llama3b.gaia.domains/v1 - MEDIUM_GAIANET_MODEL= # Default: llama MEDIUM_GAIANET_SERVER_URL= # Default: https://llama8b.gaia.domains/v1 - LARGE_GAIANET_MODEL= # Default: qwen72b LARGE_GAIANET_SERVER_URL= # Default: https://qwen72b.gaia.domains/v1 GAIANET_EMBEDDING_MODEL= USE_GAIANET_EMBEDDING= # Set to TRUE for GAIANET/768, leave blank for local -# ----------------------------------- -# Blockchain Configurations -# ----------------------------------- - -## EVM +# EVM EVM_PRIVATE_KEY= EVM_PROVIDER_URL= -## Solana +# Solana SOLANA_PRIVATE_KEY= SOLANA_PUBLIC_KEY= + +# Fallback Wallet Configuration (deprecated) +WALLET_PRIVATE_KEY= +WALLET_PUBLIC_KEY= + +BIRDEYE_API_KEY= + +# Solana Configuration SOL_ADDRESS=So11111111111111111111111111111111111111112 SLIPPAGE=1 BASE_MINT=So11111111111111111111111111111111111111112 RPC_URL=https://api.mainnet-beta.solana.com HELIUS_API_KEY= -## Fallback Wallet (Deprecated) -WALLET_PRIVATE_KEY= -WALLET_PUBLIC_KEY= +# Telegram Configuration +TELEGRAM_BOT_TOKEN= + +# Together Configuration +TOGETHER_API_KEY= -## Starknet +# Server Configuration +SERVER_PORT=3000 + +# Starknet Configuration STARKNET_ADDRESS= STARKNET_PRIVATE_KEY= STARKNET_RPC_URL= -## Coinbase -COINBASE_COMMERCE_KEY= # from coinbase developer portal -COINBASE_API_KEY= # from coinbase developer portal -COINBASE_PRIVATE_KEY= # from coinbase developer portal -# if not configured it will be generated and written to runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_ID and runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_HEX_SEED -COINBASE_GENERATED_WALLET_ID= # not your address but the wallet id from generating a wallet through the plugin -COINBASE_GENERATED_WALLET_HEX_SEED= # not your address but the wallet hex seed from generating a wallet through the plugin and calling export -# for webhook plugin the uri you want to send the webhook to for dummy ones use https://webhook.site -COINBASE_NOTIFICATION_URI= - -## Conflux +# Intiface Configuration +INTIFACE_WEBSOCKET_URL=ws://localhost:12345 + +# Farcaster Neynar Configuration +FARCASTER_FID= # The FID associated with the account your are sending casts from +FARCASTER_NEYNAR_API_KEY= # Neynar API key: https://neynar.com/ +FARCASTER_NEYNAR_SIGNER_UUID= # Signer for the account you are sending casts from. Create a signer here: https://dev.neynar.com/app +FARCASTER_DRY_RUN=false # Set to true if you want to run the bot without actually publishing casts +FARCASTER_POLL_INTERVAL=120 # How often (in seconds) the bot should check for farcaster interactions (replies and mentions) + +# Coinbase +COINBASE_COMMERCE_KEY= # From Coinbase developer portal +COINBASE_API_KEY= # From Coinbase developer portal +COINBASE_PRIVATE_KEY= # From Coinbase developer portal +COINBASE_GENERATED_WALLET_ID= # Not your address but the wallet ID from generating a wallet through the plugin +COINBASE_GENERATED_WALLET_HEX_SEED= # Not your address but the wallet hex seed from generating a wallet through the plugin and calling export +COINBASE_NOTIFICATION_URI= # For webhook plugin; use https://webhook.site for dummy ones + +# Conflux Configuration CONFLUX_CORE_PRIVATE_KEY= CONFLUX_CORE_SPACE_RPC_URL= CONFLUX_ESPACE_PRIVATE_KEY= CONFLUX_ESPACE_RPC_URL= CONFLUX_MEME_CONTRACT_ADDRESS= -## ZeroG +# ZeroG ZEROG_INDEXER_RPC= ZEROG_EVM_RPC= ZEROG_PRIVATE_KEY= ZEROG_FLOW_ADDRESS= -## Flow -FLOW_ADDRESS= -FLOW_PRIVATE_KEY= # SHA3-256 + P256 ECDSA -FLOW_NETWORK=mainnet # Default: mainnet -FLOW_ENDPOINT_URL=https://mainnet.onflow.org - -## ICP -INTERNET_COMPUTER_PRIVATE_KEY= -INTERNET_COMPUTER_ADDRESS= - -## Aptos -APTOS_PRIVATE_KEY= -APTOS_NETWORK=mainnet # Must be mainnet or testnet +# TEE Configuration +DSTACK_SIMULATOR_ENDPOINT= +WALLET_SECRET_SALT= # ONLY define if you want to use TEE Plugin, otherwise it will throw errors -# ----------------------------------- -# Messaging Platforms -# ----------------------------------- +# Galadriel Configuration +GALADRIEL_API_KEY=gal-* # Get from https://dashboard.galadriel.com/ -## Telegram -TELEGRAM_BOT_TOKEN= +# fal.ai Configuration +FAL_API_KEY= +FAL_AI_LORA_PATH= -## WhatsApp Cloud API +# WhatsApp Cloud API Configuration WHATSAPP_ACCESS_TOKEN= # Permanent access token from Facebook Developer Console WHATSAPP_PHONE_NUMBER_ID= # Phone number ID from WhatsApp Business API WHATSAPP_BUSINESS_ACCOUNT_ID= # Business Account ID from Facebook Business Manager WHATSAPP_WEBHOOK_VERIFY_TOKEN= # Custom string for webhook verification -WHATSAPP_API_VERSION=v17.0 # Default: v17.0 +WHATSAPP_API_VERSION=v17.0 # WhatsApp API version (default: v17.0) -# ----------------------------------- -# Together Configuration -# ----------------------------------- -TOGETHER_API_KEY= - -# ----------------------------------- -# Server Configuration -# ----------------------------------- -SERVER_PORT=3000 - -# ----------------------------------- -# Intiface Configuration -# ----------------------------------- -INTIFACE_WEBSOCKET_URL=ws://localhost:12345 - -# ----------------------------------- -# Farcaster Neynar Configuration -# ----------------------------------- -FARCASTER_FID= # The FID associated with the account sending casts -FARCASTER_NEYNAR_API_KEY= # Neynar API key: https://neynar.com/ -FARCASTER_NEYNAR_SIGNER_UUID= # Signer UUID for the account sending casts -FARCASTER_DRY_RUN=false # Set to true if you want to run the bot without actually publishing casts -FARCASTER_POLL_INTERVAL=120 # How often (in seconds) the bot should check for farcaster interactions (replies and mentions) - -# ----------------------------------- -# Galadriel Configuration -# ----------------------------------- -GALADRIEL_API_KEY=gal-* # Get from https://dashboard.galadriel.com/ +# Flow Blockchain Configuration +FLOW_ADDRESS= +FLOW_PRIVATE_KEY= # Private key for SHA3-256 + P256 ECDSA +FLOW_NETWORK= # Default: mainnet +FLOW_ENDPOINT_URL= # Default: https://mainnet.onflow.org -# ----------------------------------- -# fal.ai Configuration -# ----------------------------------- -FAL_API_KEY= -FAL_AI_LORA_PATH= +# ICP +INTERNET_COMPUTER_PRIVATE_KEY= +INTERNET_COMPUTER_ADDRESS= -# ----------------------------------- -# TEE Configuration -# ----------------------------------- -DSTACK_SIMULATOR_ENDPOINT= -WALLET_SECRET_SALT= # ONLY define if using TEE Plugin +# Aptos +APTOS_PRIVATE_KEY= # Aptos private key +APTOS_NETWORK= # Must be one of mainnet, testnet \ No newline at end of file