使用WebAI2API 支持clawCode尝试
clawCode 很强大 但是api 大部分需要付费,尝试使用web AI2API 但是存在一些问题 思考回复 过程中 命令交互存在问题
deepseek 不太行
配置如下
# 日志等级: debug | info | warn | error
logLevel: info
server:
# 监听端口
port: 3000
# 鉴权 API Token 至少为 10 个字符 (可使用 npm run genkey 生成)
# 该配置会对 API 接口和 WebUI 生效
auth: sk-lm-Ip4qYzgZ
# 流式请求心跳设置 (自动对 stream: true 的请求发送心跳防止超时)
keepalive:
# 心跳模式
# "comment": (推荐) 发送 :keepalive 注释,不污染数据
# "content": (备用) 发送空 delta,仅当客户端必须收到 JSON 包才重置超时时使用
mode: "comment"
# 图片生成结果返回 Markdown 格式
imageMarkdown: false
backend:
# ========================================
# Pool 配置
# ========================================
pool:
# 全局调度策略:
# - least_busy (推荐): 优先分配给当前任务最少的 Worker
# - round_robin: 轮询分配 (A -> B -> C -> A)
# - random: 随机分配
# 任务分发时,会把所有 Instance 下的所有 Worker 扁平化看待
strategy: least_busy
# ========================================
# 故障转移配置
# ========================================
# 当适配器返回网络错误时,自动尝试其他支持相同模型的 Worker
failover:
enabled: true # 启用故障转移
maxRetries: 2 # 最多重试次数 (0=无限制)
imgDlRetry: false # 图片下载器重试,为图片生成结果单独提供重试机会
imgDlRetryMaxRetries: 2 # 图片下载器重试次数
# ========================================
# 生成等待时间
# ========================================
# 程序等待生成结果返回的最大超时时间,单位毫秒
waitTimeout: 12000000
# ========================================
# 浏览器实例列表
# ========================================
# 每个 Instance 代表一个独立的浏览器进程 (Context + UserData + Proxy)
# 登录模式:
# npm start -- -login 启动第一个 Worker 进行登录
# npm start -- -login=workerName 启动指定名称的 Worker 进行登录
# 注意: Worker 名称在全局必须唯一
# ========================================
instances:
# ------------------------------------------------
# [实例 1] 默认浏览器实例
# ------------------------------------------------
- name: "browser_default" # 实例 ID (用于日志显示和Cookie获取)
# userDataMark 不设置时,数据存放在 data/camoufoxUserData
# 同一实例下的所有 Worker 共享浏览器数据和登录状态
# 使用 Google OAuth 等统一登录时,只需登录一次即可用于所有 Worker
# 该浏览器实例具备的能力 (适配器列表)
# 相当于在这个浏览器里打开了不同的标签页
workers:
- name: "default" # 唯一标识 (用于登录模式和日志显示)
# 适配器类型列表:
# lmarena (LMArena 图片生成)
# lmarena_text (LMArena 文本生成)
# gemini_biz (Gemini Business 图片、视频生成)
# gemini_biz_text (Gemini Business 文本生成)
# gemini (Google Gemini 图片、视频生成)
# gemini_text (Google Gemini 文本生成)
# zai_is (zAI 图片生成)
# zai_is_text (zAI 文本生成)
# nanobananafree_ai (NanoBananaFree 图片生成)
# zenmux_ai_text (ZenMux 文本生成)
# chatgpt (ChatGPT 图片生成)
# chatgpt_text (ChatGPT 文本生成)
# sora (Sora 视频生成)
# deepseek_text (DeepSeek 文本生成)
# doubao (豆包 图片生成)
# doubao_text (豆包 文本生成)
# test (浏览器检测,仅供调试使用)
type: lmarena # 适配器类型
- name: deepseek
type: deepseek_text
- name: chatgpt_text
type: chatgpt_text
- name: chatgpt_img
type: chatgpt
# ------------------------------------------------
# 以下为多实例配置示例 (默认注释)
# ------------------------------------------------
# [实例 2] 独立数据目录 + 专属代理
# - name: "browser_us_01"
# userDataMark: "us_01" # 数据目录: data/camoufoxUserData_us_01
#
# # 实例级代理 (该实例下所有 Worker 共享此代理)
# proxy:
# enable: true
# type: socks5
# host: 192.168.1.10
# port: 1080
# user: myuser # 可选认证
# passwd: mypassword
#
# workers:
# - name: "us_lmarena"
# type: lmarena
#
# - name: "us_zai"
# type: zai_is
#
# # 聚合类型 Worker (单标签多后端)
# - name: "us_merged"
# type: merge
# mergeTypes: [gemini_biz, nanobananafree_ai]
# mergeMonitor: gemini_biz # 空闲时挂机监控的后端 (可选,留空则不启用)
# [实例 3] 强制直连 (不使用代理)
# - name: "browser_direct"
# userDataMark: "direct"
# proxy:
# enable: false # 即使有全局代理也不使用
#
# workers:
# - name: "direct_gemini"
# type: gemini_biz
# ========================================
# 适配器专属配置 (按需填写)
# ========================================
adapter:
# Gemini Business 设置
gemini_biz:
# 入口URL
# 示例: "https://business.gemini.google/home/cid/8888a888-b6e0-88be-86e1-888cf3ee8cf4"
entryUrl: ""
# Lmarena 配置
lmarena:
# 开启后直接返回图片 URL (但其他不支持该选项的适配器仍然会返回 Base64)
returnUrl: false
# 该适配器的模型黑白名单 (每个适配器都可以使用该功能,配置上级为适配器ID,推荐使用 WebUI 修改)
# modelFilter:
# mode: whitelist # 白名单whitelist 黑名单blacklist
# list: # 仅启用和仅禁用的模型列表
# - gemini-3-pro-image-preview
# - gemini-3-pro-image-preview-2k
# - gemini-2.5-flash-image-preview
queue:
# 队列缓冲区大小(非流式请求的额外排队数)
# 实际队列上限 = Workers数量 + queueBuffer
# 设为 0 则不限制非流式请求数量
queueBuffer: 2
# 图片数量上限
# 网页最多支持10个附件,如果设置大于10则直接丢弃超出10的图片
imageLimit: 5
browser:
# 浏览器可执行文件路径 (留空则使用默认的)
# 非必要不建议修改,否则你要处理很多额外依赖
# Windows系统示例 "C:\\camoufox\\camoufox.exe"
# Linux系统示例 "/opt/camoufox/camoufox"
path: ""
# 是否启用无头模式
headless: false
# 拟人鼠标轨迹模式
# - false: 禁用拟人轨迹,使用 Playwright 原生点击(性能最好,但会被自动化检测)
# - true: 使用项目优化的 ghost-cursor(更拟人化,如不会点击正中心,但性能稍差)
# - "camou": 使用 Camoufox 内置轨迹(性能与拟人化的平衡)
humanizeCursor: true
# 站点隔离 (fission.autostart)
# 开启保持 Firefox 默认开启状态
# 关闭此项可显著降低内存占用,防止低配服务器崩溃
# ⚠️ 风险提示: 正常 Firefox 用户默认开启 Fission,虽然关闭它不会泄露常规指纹,
# 但极高阶的反爬系统可能会通过检测“单进程模型”或“跨进程通信延迟”来识别自动化特征!
fission: true
# 浏览器额外启动参数(Camoufox/Firefox 参数)
args:
- "--lang=zh-CN"
- "--accept-lang=zh-CN,zh;q=0.9,en;q=0.8"
# CSS 性能优化注入
# 通过禁用网页特效在无显卡环境下降低 CPU 压力
cssInject:
# 禁用网页动画
# 作用:移除 transition 和 animation
# 收益:显著降低 CPU 持续占用
# 风险:低。几乎不影响浏览器指纹,但可能导致部分网页布局异常
animation: false
# 禁用滤镜和阴影
# 作用:移除 blur(模糊)、box-shadow(阴影) 等复杂渲染
# 收益:在无显卡环境下,能避免 CPU 占用 100% 导致卡顿
# 风险:中。界面会变得难看,少数反爬可能会检测样式计算结果
filter: false
# 降低字体渲染质量
# 作用:关闭字体抗锯齿,强制使用极速渲染模式
# 收益:微量减少 CPU 绘图压力
# ⚠️ 风险:高。会导致文字边缘有锯齿,且可能导致字体指纹与标准浏览器不符(易被高级反爬识别)
font: false
# [全局代理] 如果 Instance 没有独立配置代理,将使用此配置
proxy:
# 是否启用代理
enable: false
# 代理类型: http 或 socks5
type: http
# 代理主机
host: 127.0.0.1
# 代理端口
port: 7890
# 代理认证 (可选)
# user: username
# passwd: password
安装了clawCode 两个技能
`https://github.com/forrestchang/andrej-karpathy-skills/blob/main/README.zh.md
https://github.com/tanweai/pua
cat > ~/.config/claw/settings.json << 'EOF'
{
"permissionMode": "workspace-write",
"aliases": {
"deepseek": "openai/deepseek",
"deepseek-thinking": "openai/deepseek-thinking",
"chatgpt": "openai/gpt-instant",
"chatgpt-thinking": "openai/gpt-thinking",
"chatgpt-pro": "openai/gpt-pro"
}
}
EOF`
使用WebAI2API 支持clawCode尝试
clawCode 很强大 但是api 大部分需要付费,尝试使用web AI2API 但是存在一些问题 思考回复 过程中 命令交互存在问题
deepseek 不太行
配置如下
安装了clawCode 两个技能
`https://github.com/forrestchang/andrej-karpathy-skills/blob/main/README.zh.md
https://github.com/tanweai/pua
cat > ~/.config/claw/settings.json << 'EOF'
{
"permissionMode": "workspace-write",
"aliases": {
"deepseek": "openai/deepseek",
"deepseek-thinking": "openai/deepseek-thinking",
"chatgpt": "openai/gpt-instant",
"chatgpt-thinking": "openai/gpt-thinking",
"chatgpt-pro": "openai/gpt-pro"
}
}
EOF`