try / .env.example
proti0070's picture
Upload folder using huggingface_hub
d75ac2b verified
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
# HuggingClaw โ€” Environment Configuration
# Deploy OpenClaw on HuggingFace Spaces
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
#
# Usage:
# Local Docker โ†’ cp .env.example .env โ†’ fill in values โ†’ docker run --env-file .env
# HF Spaces โ†’ Set each variable as a "Repository Secret" in Space Settings
#
# Legend:
# [REQUIRED] Must be set, or data persistence will not work
# [RECOMMENDED] Strongly recommended for production use
# [OPTIONAL] Fine-tune behavior; safe to leave empty
#
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
# โ”€โ”€โ”€ SECURITY โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# Password for the Control UI dashboard.
# Visitors can see the UI, but only users with this password can connect
# and control the OpenClaw instance (manage agents, plugins, settings).
#
# [RECOMMENDED] Default: huggingclaw
#
OPENCLAW_PASSWORD=huggingclaw
# โ”€โ”€โ”€ DATA PERSISTENCE โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# HuggingClaw auto-syncs the ~/.openclaw directory to a private HF Dataset
# repo, so your conversations, settings, and credentials survive restarts.
# Without these two variables, all data is lost when the Space restarts.
#
# HuggingFace Access Token with WRITE permission.
# Create one at: https://huggingface.co/settings/tokens
# Scopes needed: read + write access to your repos.
#
# [REQUIRED]
#
HF_TOKEN=hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Target Dataset repository for data backup.
# Format: your-username/repo-name
# Example: your-name/YourSpace-data
#
# Manual mode (default): create the repo yourself, then set this variable.
# Auto mode (AUTO_CREATE_DATASET=true): if not set, HuggingClaw derives
# it from your HF_TOKEN username โ†’ "your-username/HuggingClaw-data".
#
# [REQUIRED in manual mode, OPTIONAL in auto mode]
#
OPENCLAW_DATASET_REPO=your-username/HuggingClaw-data
# Whether to auto-create the Dataset repo if it doesn't exist.
# When true: HuggingClaw creates a PRIVATE dataset repo on first startup.
# If OPENCLAW_DATASET_REPO is not set, the repo name is auto-derived
# from your HF_TOKEN username (e.g. "your-username/HuggingClaw-data").
# When false (default): you must create the repo manually on HuggingFace
# and set OPENCLAW_DATASET_REPO yourself.
#
# [OPTIONAL] Default: false
#
# AUTO_CREATE_DATASET=false
# How often (in seconds) to back up data to the Dataset repo.
# Lower values = safer but more API calls to HuggingFace.
#
# [OPTIONAL] Default: 60
#
# SYNC_INTERVAL=60
# โ”€โ”€โ”€ LLM / OPENAI-COMPATIBLE API โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# OpenClaw supports any OpenAI-compatible API. Set the API key for the
# provider(s) you use. See OpenClaw docs: https://openclawdoc.com/docs/reference/environment-variables
#
# OpenAI (or any OpenAI-compatible endpoint)
# Use OPENAI_API_KEY alone for api.openai.com, or set OPENAI_BASE_URL for
# compatible endpoints (e.g. OpenRouter, local LLM servers, Azure OpenAI).
#
# [RECOMMENDED] At least one of the following for AI conversations
#
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Optional: base URL for OpenAI-compatible API (default: https://api.openai.com/v1)
# Examples: https://openrouter.ai/api/v1, http://localhost:11434/v1 (Ollama), etc.
#
# OPENAI_BASE_URL=https://api.openai.com/v1
# OpenRouter โ€” one key, 200+ models, free tier: https://openrouter.ai/keys
#
OPENROUTER_API_KEY=sk-or-v1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Other providers (OpenClaw reads these from the environment)
#
# ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# GOOGLE_API_KEY=AIza...
# MISTRAL_API_KEY=mis-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# COHERE_API_KEY=co-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Default model for new conversations (must exist in your configured provider).
#
# [OPTIONAL] Examples: openai/gpt-5-nano, openrouter/deepseek/deepseek-chat:free
#
# OPENCLAW_DEFAULT_MODEL=openai/gpt-5-nano
# โ”€โ”€โ”€ LOCAL MODEL INFERENCE (Ollama) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# Run small models (โ‰ค1B) locally on CPU - perfect for HF Spaces free tier!
# Models are stored in ~/.ollama and persisted via HF Dataset sync.
# For NeuralNexusLab/HacKing 0.6B or other lightweight models.
#
# Enable local model inference
# [OPTIONAL] Default: false
#
# LOCAL_MODEL_ENABLED=true
# Model to pull from Ollama library or HuggingFace
# Format: model_name (e.g., neuralnexuslab/hacking, llama3.1:8b, qwen2.5:7b)
# For HF models: use hf.co/username/modelname format
# [OPTIONAL] Example: neuralnexuslab/hacking
#
# LOCAL_MODEL_NAME=neuralnexuslab/hacking
# Ollama API base URL (internal container network)
# [OPTIONAL] Default: http://localhost:11434/v1
#
# LOCAL_MODEL_BASE_URL=http://localhost:11434/v1
# Model ID as it appears in OpenClaw (matches Ollama model name)
# [OPTIONAL] Default: neuralnexuslab/hacking
#
# LOCAL_MODEL_ID=neuralnexuslab/hacking
# Display name in Control UI model selector
# [OPTIONAL] Default: NeuralNexus HacKing 0.6B
#
# LOCAL_MODEL_NAME_DISPLAY=NeuralNexus HacKing 0.6B
# Ollama server settings
# [OPTIONAL] Default: 2 (good for 0.6B models on CPU)
#
# OLLAMA_NUM_PARALLEL=2
# Keep model loaded in memory (-1 = forever, 5m = 5 minutes)
# [OPTIONAL] Default: -1 (always loaded)
#
# OLLAMA_KEEP_ALIVE=-1
# Ollama models directory (persisted across restarts)
# [OPTIONAL] Default: ~/.ollama/models
#
# OLLAMA_MODELS=/home/node/.ollama/models
# โ”€โ”€โ”€ PERFORMANCE โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# Node.js heap memory limit in MB.
# HF free tier provides 16 GB RAM. Default 512 MB is enough for most cases.
# Increase if you run complex agent workflows or handle large conversations.
#
# [OPTIONAL] Default: 512
#
# NODE_MEMORY_LIMIT=512
# โ”€โ”€โ”€ LOCALE โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# Timezone for log timestamps and scheduled tasks.
#
# [OPTIONAL] Default: UTC
#
# TZ=Asia/Shanghai
# โ”€โ”€โ”€ OPENCLAW (from official docs) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
#
# Optional overrides. See https://openclawdoc.com/docs/reference/environment-variables
#
# OPENCLAW_HOME=~/.openclaw
# OPENCLAW_STATE_DIR=~/.openclaw
# OPENCLAW_CONFIG_PATH=~/.openclaw/openclaw.json
# OPENCLAW_LOG_LEVEL=info
# OPENCLAW_API_PORT=8080
# OPENCLAW_WS_PORT=8081
# OPENCLAW_HOST=0.0.0.0
# OLLAMA_HOST=http://localhost:11434
# OPENCLAW_HTTP_PROXY=
# OPENCLAW_HTTPS_PROXY=
# OPENCLAW_NO_PROXY=
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
# OpenClaw ๅฎ˜ๆ–น็Žฏๅขƒๅ˜้‡
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
#
# HuggingClaw ๅฏๅŠจ OpenClaw ๆ—ถ้€ไผ ๆ•ดไธช็Žฏๅขƒ๏ผˆenv=os.environ.copy()๏ผ‰๏ผŒ
# ๅ› ๆญค OpenClaw ๅฎ˜ๆ–นๆ–‡ๆกฃไธญๅˆ—ๅ‡บ็š„ **ๆ‰€ๆœ‰** ็Žฏๅขƒๅ˜้‡ๅœจ HF Spaces / Docker ไธญ
# ่ฎพ็ฝฎๅŽๅ‡ๅฏ็›ดๆŽฅ็”Ÿๆ•ˆใ€‚
# ๅฎ˜ๆ–นๅฎŒๆ•ดๅˆ—่กจ่ง๏ผšhttps://openclawdoc.com/docs/reference/environment-variables
#
# ๅธธ่ง็ฑปๅˆซ๏ผˆไป…ๅˆ—ไธพ้ƒจๅˆ†๏ผ‰๏ผš
# API Keys: OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_API_KEY, MISTRAL_API_KEY,
# COHERE_API_KEY, OPENROUTER_API_KEY
# Server: OPENCLAW_API_PORT, OPENCLAW_WS_PORT, OPENCLAW_METRICS_PORT,
# OPENCLAW_HOST, OPENCLAW_TLS_*
# App: OPENCLAW_CONFIG, OPENCLAW_DATA_DIR, OPENCLAW_LOG_LEVEL,
# OPENCLAW_LOG_FORMAT, OPENCLAW_LOG_FILE, OPENCLAW_ENV
# Memory: OPENCLAW_MEMORY_BACKEND, OPENCLAW_REDIS_URL, OPENCLAW_SQLITE_PATH
# Network: OPENCLAW_HTTP_PROXY, OPENCLAW_HTTPS_PROXY, OPENCLAW_NO_PROXY,
# OPENCLAW_OUTBOUND_MODE
# Secrets: OPENCLAW_SECRETS_BACKEND, OPENCLAW_SECRETS_KEY, VAULT_ADDR, VAULT_TOKEN
# Ollama: OLLAMA_HOST, OLLAMA_NUM_PARALLEL, OLLAMA_KEEP_ALIVE
# Browser: OPENCLAW_BROWSER_EXECUTABLE, OPENCLAW_BROWSER_HEADLESS
#
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
#
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
# HuggingClaw ๆ–ฐๅขžๅ˜้‡ไธ€่งˆ๏ผˆไป…ๆœฌไป“ๅบ“่„šๆœฌไฝฟ็”จ๏ผ‰
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
#
# โ”€โ”€โ”€ ๅฎ‰ๅ…จ / ๆŽงๅˆถๅฐ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# OPENCLAW_PASSWORD [ๆŽจ่] ๆŽงๅˆถๅฐๅฏ†็ ๏ผŒๆœช่ฎพๅˆ™้ป˜่ฎค huggingclaw
#
# โ”€โ”€โ”€ ๆŒไน…ๅŒ– (HuggingFace Dataset) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# HF_TOKEN [ๅฟ…ๅกซ] HF ่ฎฟ้—ฎไปค็‰Œ๏ผŒ้œ€ๅ…ทๅค‡ๅ†™ๅ…ฅๆƒ้™
# OPENCLAW_DATASET_REPO [ๅฟ…ๅกซ] ๅค‡ไปฝ็”จ Dataset ไป“ๅบ“๏ผŒๅฆ‚ your-name/HuggingClaw-data
# AUTO_CREATE_DATASET [ๅฏ้€‰] ๆ˜ฏๅฆ่‡ชๅŠจๅˆ›ๅปบไป“ๅบ“๏ผŒ้ป˜่ฎค false๏ผˆๅฎ‰ๅ…จ่€ƒ่™‘๏ผ‰
# SYNC_INTERVAL [ๅฏ้€‰] ๅค‡ไปฝ้—ด้š”๏ผˆ็ง’๏ผ‰๏ผŒ้ป˜่ฎค 60
# HF_HUB_DOWNLOAD_TIMEOUT [ๅฏ้€‰] ไธ‹่ฝฝ่ถ…ๆ—ถ๏ผˆ็ง’๏ผ‰๏ผŒ้ป˜่ฎค 300
# HF_HUB_UPLOAD_TIMEOUT [ๅฏ้€‰] ไธŠไผ ่ถ…ๆ—ถ๏ผˆ็ง’๏ผ‰๏ผŒ้ป˜่ฎค 600
#
# โ”€โ”€โ”€ LLM / ๅฏน่ฏ API๏ผˆ่‡ณๅฐ‘้…็ฝฎๅ…ถไธ€ไปฅๅฏ็”จ AI ๅฏน่ฏ๏ผ‰โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# OPENAI_API_KEY [ๆŽจ่] OpenAI ๆˆ–ๅ…ผๅฎน็ซฏ็‚น API Key
# OPENAI_BASE_URL [ๅฏ้€‰] ๅ…ผๅฎน API ๅŸบๅœฐๅ€๏ผŒ้ป˜่ฎค https://api.openai.com/v1
# OPENROUTER_API_KEY [ๅฏ้€‰] OpenRouter๏ผŒ200+ ๆจกๅž‹ใ€ๅ…่ดน้ขๅบฆ
# ANTHROPIC_API_KEY [ๅฏ้€‰] Anthropic Claude
# GOOGLE_API_KEY [ๅฏ้€‰] Google / Gemini
# MISTRAL_API_KEY [ๅฏ้€‰] Mistral
# COHERE_API_KEY [ๅฏ้€‰] Cohere
# OPENCLAW_DEFAULT_MODEL [ๅฏ้€‰] ้ป˜่ฎคๆจกๅž‹ ID
#
# โ”€โ”€โ”€ ๆถˆๆฏๆธ ้“ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# Telegramใ€WhatsApp ็ญ‰ๆถˆๆฏๆธ ้“ๅ‡ๅฏๅœจ Control UI ไธญ้…็ฝฎ๏ผŒๆ— ้œ€็Žฏๅขƒๅ˜้‡ใ€‚
#
# โ”€โ”€โ”€ HuggingFace Spaces ่ฟ่กŒๆ—ถ๏ผˆHF ่‡ชๅŠจๆณจๅ…ฅ๏ผŒไธ€่ˆฌๆ— ้œ€ๆ‰‹ๅŠจ่ฎพ๏ผ‰โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# SPACE_HOST ๅฝ“ๅ‰ Space ๅŸŸๅ๏ผŒๅฆ‚ xxx.hf.space
# SPACE_ID ไป“ๅบ“ ID๏ผŒๅฆ‚ username/HuggingClaw
#
# โ”€โ”€โ”€ ๆ€ง่ƒฝไธŽ่ฟ่กŒ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# NODE_MEMORY_LIMIT [ๅฏ้€‰] Node ๅ †ๅ†…ๅญ˜ไธŠ้™(MB)๏ผŒ้ป˜่ฎค 512
# TZ [ๅฏ้€‰] ๆ—ถๅŒบ๏ผŒๅฆ‚ Asia/Shanghai
#
# โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•