mirror of
https://github.com/7836246/cursor2api.git
synced 2026-05-08 06:38:20 +08:00
🏗️ 常量集中管理 - 新增 constants.ts,提取 REFUSAL_PATTERNS、IDENTITY_PROBE_PATTERNS、 TOOL_CAPABILITY_PATTERNS、CLAUDE_IDENTITY_RESPONSE、CLAUDE_TOOLS_RESPONSE - isRefusal() 统一导出,内置 + 自定义规则合并检测 🔧 自定义拒绝检测规则 (config.yaml: refusal_patterns) - 用户可添加自定义正则匹配规则,追加到内置列表 - 无效正则自动退化为字面量匹配 - 缓存编译 + 热重载支持 🔀 响应内容清洗开关 (config.yaml: sanitize_response) - 控制 sanitizeResponse() 是否替换 Cursor 身份引用为 Claude - 默认关闭,关闭时零开销 - 支持环境变量 SANITIZE_RESPONSE 覆盖
60 lines
2.4 KiB
YAML
60 lines
2.4 KiB
YAML
services:
|
||
cursor2api:
|
||
build:
|
||
context: .
|
||
dockerfile: Dockerfile
|
||
image: cursor2api:latest
|
||
container_name: cursor2api
|
||
restart: unless-stopped
|
||
ports:
|
||
- "3010:3010"
|
||
volumes:
|
||
# 挂载配置文件(可选)——先从 config.yaml.example 复制一份: cp config.yaml.example config.yaml
|
||
# 修改后只需 docker compose restart 即可生效;不挂载则使用内置默认值 + 环境变量
|
||
- ./config.yaml:/app/config.yaml:ro
|
||
# 日志持久化目录(需要在 config.yaml 或环境变量中开启 logging.file_enabled)
|
||
- ./logs:/app/logs
|
||
environment:
|
||
- NODE_ENV=production
|
||
- PORT=3010
|
||
- TIMEOUT=120
|
||
# ⚠️ 部署到海外机器无需代理,如果在国内云,取消注释并填入你的本机 http/socks 代理
|
||
# - PROXY=http://host.docker.internal:7890
|
||
|
||
# [可选环境变量] 以下变量如果声明,将会覆盖 config.yaml 中对应的配置:
|
||
# - CURSOR_MODEL=anthropic/claude-sonnet-4.6
|
||
|
||
# ── API 鉴权 ──
|
||
# 公网部署时强烈建议开启,多个 token 用逗号分隔
|
||
# - AUTH_TOKEN=sk-your-secret-token-1,sk-your-secret-token-2
|
||
|
||
# ── Thinking 开关(最高优先级,覆盖 config.yaml) ──
|
||
# true=始终启用思考链, false=强制关闭
|
||
# - THINKING_ENABLED=true
|
||
|
||
# ── 历史消息压缩 ──
|
||
# - COMPRESSION_ENABLED=false
|
||
# - COMPRESSION_LEVEL=1
|
||
|
||
# ── 自动续写 & 历史消息限制 ──
|
||
# - MAX_AUTO_CONTINUE=0 # 截断后自动续写次数,0=禁用(默认)
|
||
# - MAX_HISTORY_MESSAGES=-1 # 历史消息条数上限,-1=不限制
|
||
|
||
# ── 日志持久化 ──
|
||
# - LOG_FILE_ENABLED=true
|
||
# - LOG_DIR=./logs
|
||
|
||
# ── 浏览器指纹(base64 JSON) ──
|
||
# - FP=eyJ1c2VyQWdlbnQiOiIuLi4ifQ==
|
||
|
||
# ── Vision 图片处理 ──
|
||
# 默认使用本地 OCR(零配置),如需外部 Vision API 请在 config.yaml 中修改 vision.mode 为 'api'
|
||
# 并配置 vision.base_url / vision.api_key / vision.model
|
||
|
||
# ── 响应内容清洗 ──
|
||
# 开启后会将响应中 Cursor 身份引用替换为 Claude(默认关闭)
|
||
# - SANITIZE_RESPONSE=true
|
||
|
||
# ── 自定义拒绝检测规则 ──
|
||
# 仅支持 config.yaml 配置(无环境变量覆盖),详见 config.yaml.example 中的 refusal_patterns 节
|