mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-22 16:40:25 +00:00
169 lines
5.8 KiB
Plaintext
169 lines
5.8 KiB
Plaintext
# 🚀 Claude Relay Service Configuration
|
||
|
||
# 🌐 服务器配置
|
||
PORT=3000
|
||
HOST=0.0.0.0
|
||
NODE_ENV=production
|
||
|
||
# 🔐 安全配置
|
||
JWT_SECRET=your-jwt-secret-here
|
||
ADMIN_SESSION_TIMEOUT=86400000
|
||
API_KEY_PREFIX=cr_
|
||
ENCRYPTION_KEY=your-encryption-key-here
|
||
|
||
# 👤 管理员凭据(可选,不设置则自动生成)
|
||
# ADMIN_USERNAME=cr_admin_custom
|
||
# ADMIN_PASSWORD=your-secure-password
|
||
|
||
# 📊 Redis 配置
|
||
REDIS_HOST=localhost
|
||
REDIS_PORT=6379
|
||
REDIS_PASSWORD=
|
||
REDIS_DB=0
|
||
REDIS_ENABLE_TLS=
|
||
|
||
# 🔗 会话管理配置
|
||
# 粘性会话TTL配置(小时),默认1小时
|
||
STICKY_SESSION_TTL_HOURS=1
|
||
# 续期阈值(分钟),默认0分钟(不续期)
|
||
STICKY_SESSION_RENEWAL_THRESHOLD_MINUTES=15
|
||
|
||
# 🎯 Claude API 配置
|
||
CLAUDE_API_URL=https://api.anthropic.com/v1/messages
|
||
CLAUDE_API_VERSION=2023-06-01
|
||
CLAUDE_BETA_HEADER=claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,fine-grained-tool-streaming-2025-05-14
|
||
|
||
# 🤖 Gemini OAuth / Antigravity 配置(可选)
|
||
# 不配置时使用内置默认值;如需自定义或避免在代码中出现 client secret,可在此覆盖
|
||
# GEMINI_OAUTH_CLIENT_ID=
|
||
# GEMINI_OAUTH_CLIENT_SECRET=
|
||
# Gemini CLI OAuth redirect_uri(可选,默认 https://codeassist.google.com/authcode)
|
||
# GEMINI_OAUTH_REDIRECT_URI=
|
||
# ANTIGRAVITY_OAUTH_CLIENT_ID=
|
||
# ANTIGRAVITY_OAUTH_CLIENT_SECRET=
|
||
# Antigravity OAuth redirect_uri(可选,默认 http://localhost:45462;用于避免 redirect_uri_mismatch)
|
||
# ANTIGRAVITY_OAUTH_REDIRECT_URI=http://localhost:45462
|
||
# Antigravity 上游地址(可选,默认 sandbox)
|
||
# ANTIGRAVITY_API_URL=https://daily-cloudcode-pa.sandbox.googleapis.com
|
||
# Antigravity User-Agent(可选)
|
||
# ANTIGRAVITY_USER_AGENT=antigravity/1.11.3 windows/amd64
|
||
|
||
# Claude Code(Anthropic Messages API)路由分流(无需额外环境变量):
|
||
# - /api -> Claude 账号池(默认)
|
||
# - /antigravity/api -> Antigravity OAuth
|
||
# - /gemini-cli/api -> Gemini CLI OAuth
|
||
|
||
# (可选)Claude Code 调试 Dump:会在项目根目录写入 jsonl 文件,便于排查 tools/schema/回包问题
|
||
# - anthropic-requests-dump.jsonl
|
||
# - anthropic-responses-dump.jsonl
|
||
# - anthropic-tools-dump.jsonl
|
||
# ANTHROPIC_DEBUG_REQUEST_DUMP=true
|
||
# ANTHROPIC_DEBUG_REQUEST_DUMP_MAX_BYTES=2097152
|
||
# ANTHROPIC_DEBUG_RESPONSE_DUMP=true
|
||
# ANTHROPIC_DEBUG_RESPONSE_DUMP_MAX_BYTES=2097152
|
||
# ANTHROPIC_DEBUG_TOOLS_DUMP=true
|
||
#
|
||
# (可选)Antigravity 上游请求 Dump:会在项目根目录写入 jsonl 文件,便于核对最终发往上游的 payload(含 tools/schema 清洗后的结果)
|
||
# - antigravity-upstream-requests-dump.jsonl
|
||
# ANTIGRAVITY_DEBUG_UPSTREAM_REQUEST_DUMP=true
|
||
# ANTIGRAVITY_DEBUG_UPSTREAM_REQUEST_DUMP_MAX_BYTES=2097152
|
||
|
||
# 🚫 529错误处理配置
|
||
# 启用529错误处理,0表示禁用,>0表示过载状态持续时间(分钟)
|
||
CLAUDE_OVERLOAD_HANDLING_MINUTES=0
|
||
|
||
# 400错误处理:0表示禁用,>0表示临时禁用时间(分钟)
|
||
# 只有匹配特定错误模式的 400 才会触发临时禁用
|
||
# - organization has been disabled
|
||
# - account has been disabled
|
||
# - account is disabled
|
||
# - no account supporting
|
||
# - account not found
|
||
# - invalid account
|
||
# - Too many active sessions
|
||
CLAUDE_CONSOLE_BLOCKED_HANDLING_MINUTES=10
|
||
|
||
# 🌐 代理配置
|
||
DEFAULT_PROXY_TIMEOUT=600000
|
||
MAX_PROXY_RETRIES=3
|
||
# IP协议族配置:true=IPv4, false=IPv6, 默认IPv4(兼容性更好)
|
||
PROXY_USE_IPV4=true
|
||
# 代理连接池 / Keep-Alive 配置(默认关闭,如需启用请取消注释)
|
||
# PROXY_KEEP_ALIVE=true
|
||
# PROXY_MAX_SOCKETS=50
|
||
# PROXY_MAX_FREE_SOCKETS=10
|
||
|
||
# ⏱️ 请求超时配置
|
||
REQUEST_TIMEOUT=600000 # 请求超时设置(毫秒),默认10分钟
|
||
|
||
# 🔧 请求体大小配置
|
||
REQUEST_MAX_SIZE_MB=60
|
||
|
||
# 📈 使用限制
|
||
DEFAULT_TOKEN_LIMIT=1000000
|
||
|
||
# 📝 日志配置
|
||
LOG_LEVEL=info
|
||
LOG_MAX_SIZE=10m
|
||
LOG_MAX_FILES=5
|
||
|
||
# 🔧 系统配置
|
||
CLEANUP_INTERVAL=3600000
|
||
TOKEN_USAGE_RETENTION=2592000000
|
||
HEALTH_CHECK_INTERVAL=60000
|
||
TIMEZONE_OFFSET=8 # UTC偏移小时数,默认+8(中国时区)
|
||
METRICS_WINDOW=5 # 实时指标统计窗口(分钟),可选1-60,默认5分钟
|
||
# 启动时清理残留的并发排队计数器(默认true,多实例部署时建议设为false)
|
||
CLEAR_CONCURRENCY_QUEUES_ON_STARTUP=true
|
||
|
||
# 🎨 Web 界面配置
|
||
WEB_TITLE=Claude Relay Service
|
||
WEB_DESCRIPTION=Multi-account Claude API relay service with beautiful management interface
|
||
WEB_LOGO_URL=/assets/logo.png
|
||
|
||
# 🛠️ 开发配置
|
||
DEBUG=false
|
||
DEBUG_HTTP_TRAFFIC=false # 启用HTTP请求/响应调试日志(仅开发环境)
|
||
ENABLE_CORS=true
|
||
TRUST_PROXY=true
|
||
|
||
# 🔒 客户端限制(可选)
|
||
# ALLOW_CUSTOM_CLIENTS=false
|
||
|
||
# 🔐 LDAP 认证配置
|
||
LDAP_ENABLED=false
|
||
LDAP_URL=ldaps://ldap-1.test1.bj.yxops.net:636
|
||
LDAP_BIND_DN=cn=admin,dc=example,dc=com
|
||
LDAP_BIND_PASSWORD=admin_password
|
||
LDAP_SEARCH_BASE=dc=example,dc=com
|
||
LDAP_SEARCH_FILTER=(uid={{username}})
|
||
LDAP_SEARCH_ATTRIBUTES=dn,uid,cn,mail,givenName,sn
|
||
LDAP_TIMEOUT=5000
|
||
LDAP_CONNECT_TIMEOUT=10000
|
||
|
||
# 🔒 LDAP TLS/SSL 配置 (用于 ldaps:// URL)
|
||
# 是否忽略证书验证错误 (设置为false可忽略自签名证书错误)
|
||
LDAP_TLS_REJECT_UNAUTHORIZED=true
|
||
# CA 证书文件路径 (可选,用于自定义CA证书)
|
||
# LDAP_TLS_CA_FILE=/path/to/ca-cert.pem
|
||
# 客户端证书文件路径 (可选,用于双向认证)
|
||
# LDAP_TLS_CERT_FILE=/path/to/client-cert.pem
|
||
# 客户端私钥文件路径 (可选,用于双向认证)
|
||
# LDAP_TLS_KEY_FILE=/path/to/client-key.pem
|
||
# 服务器名称 (可选,用于 SNI)
|
||
# LDAP_TLS_SERVERNAME=ldap.example.com
|
||
|
||
# 🗺️ LDAP 用户属性映射
|
||
LDAP_USER_ATTR_USERNAME=uid
|
||
LDAP_USER_ATTR_DISPLAY_NAME=cn
|
||
LDAP_USER_ATTR_EMAIL=mail
|
||
LDAP_USER_ATTR_FIRST_NAME=givenName
|
||
LDAP_USER_ATTR_LAST_NAME=sn
|
||
|
||
# 👥 用户管理配置
|
||
USER_MANAGEMENT_ENABLED=false
|
||
DEFAULT_USER_ROLE=user
|
||
USER_SESSION_TIMEOUT=86400000
|
||
MAX_API_KEYS_PER_USER=1
|
||
ALLOW_USER_DELETE_API_KEYS=false
|