如何为jev-browser-use配置Jev API密钥:TypeSafe与OpenRouter双Provider选择指南

原创2026-10-17 03:08:241,719 阅读

如何为jev-browser-use配置Jev API密钥:TypeSafe与OpenRouter双Provider选择指南

本文带你为 jev-browser-use 配置 Jev API 密钥:只需准备一个本地 dotenv 凭证文件,再在 config.json 中正确选择 TypeSafe 或 OpenRouter 两种 Provider 之一,即可跑通这个 5–10 倍提速的浏览器自动化 Skill。下文包含一键配置步骤、双 Provider 对比表和常见报错排查技巧。

jev-browser-use 项目封面:Jev 负责浏览器点击操作,Codex 负责思考与验证

📌 配置前先懂:API 密钥到底放在哪里?

jev-browser-use 的配置采用**「配置文件 + 凭证文件」分离**的设计,这是新手最容易搞混的地方:

  • 配置文件:~/.config/jev-browser-use/config.json,只包含 3 个字段——envFile、provider、model;
  • 凭证文件:一个本地 dotenv 文件(文件名任意),存放真正的 API 密钥,其路径由 envFile 指向。

⚠️ 铁律:密钥永远只放在 dotenv 文件中,绝不能写入 config.json、Skill 目录、日志或浏览器页面。loadConfig() 返回的也只有 envFile、provider、model 三项,没有 API key 属于正常现象,不要把它当成"凭证缺失"。

Codex 负责规划、输入与验证,Jev 负责点击、导航与滚动的分工示意图

Jev 通过你选定的 Provider 完成导航、点击、切换、滚动等机械操作,Codex 负责文字输入与最终验证(完整分工见 SKILL.md)。而 Provider 正是配置 Jev API 密钥的核心环节——密钥由谁签发,就决定用哪个适配器。

🚀 第一步:安装 jev-browser-use(一条命令)

配置密钥前,先确认 Skill 已安装。Codex 用户只需一条命令:

npx skills add wy-coliney/jev-browser-use -g -a codex -y

运行环境要求:Node.js 22+、已连接 Chrome(或内置浏览器)的 Codex Computer Use,以及通过 TypeSafe 或 OpenRouter 获取的 Jev 访问权限。注意:安装 Skill 本身不会安装浏览器连接,也不会替你申请密钥。

🤔 第二步:选择 Provider——TypeSafe 还是 OpenRouter?

两个平台都提供 Jev 模型,但密钥不通用,必须按签发方选择:

密钥签发方 provider 值 凭证变量名 API 端点 默认模型
TypeSafe typesafe TYPESAFE_API_KEY api.typesafe.ai jev-latest
OpenRouter openrouter OPENROUTER_API_KEY openrouter.ai(Decisions 端点) ~typesafe/jev-latest

几个选型要点:

  • 在 TypeSafe 官网申请的密钥 → 选 typesafe;在 OpenRouter 申请的密钥 → 选 openrouter,两者在 bridge.mjs 中对应两个独立适配器;
  • 把 TypeSafe 密钥填进 OPENROUTER_API_KEY 会被发往 OpenRouter,认证必然失败,Skill 也不会自动回退到另一个 Provider;
  • OpenRouter 模型值开头的 ~ 表示"自动使用最新兼容的 Jev 版本",建议保持默认;
  • OpenRouter 适配器同时接受小写的 openrouter_api_key 变量名。

官方对比细节可参考 provider-configuration.md。

⚡ 第三步:一键配置(三种方式任选)

方式一:交互式安装器(推荐新手)

克隆仓库后运行安装脚本,它会像向导一样依次询问 Provider、模型和凭证文件路径,并自动生成 config.json:

git clone https://gitcode.com/gh_mirrors/je/jev-browser-use
cd jev-browser-use
node scripts/install.mjs

交互提示依次为:Jev provider (typesafe / openrouter) → Model(可回车取默认)→ dotenv 文件绝对路径。已有配置会被完整保留,更新 Skill 也不会覆盖你的凭证。脚本逻辑见 install.mjs。

方式二:手动创建 config.json(最直接)

先把密钥写入任意 dotenv 文件,例如 ~/.credentials/jev.env:

# TypeSafe 用户
TYPESAFE_API_KEY=你的密钥

# OpenRouter 用户(二选一)
OPENROUTER_API_KEY=你的密钥

再创建 ~/.config/jev-browser-use/config.json。TypeSafe 版本:

{
  "envFile": "/Users/你的用户名/.credentials/jev.env",
  "provider": "typesafe",
  "model": "jev-latest"
}

OpenRouter 版本只需替换后两行:

{
  "envFile": "/Users/你的用户名/.credentials/jev.env",
  "provider": "openrouter",
  "model": "~typesafe/jev-latest"
}

📌 envFile 必须是绝对路径,且文件必须真实存在,否则安装器会直接报错。

方式三:让 Codex 代劳

把下面这段提示词粘贴给 Codex,它会引导完成安装与配置(全程不会要求你在聊天中粘贴密钥):

Install Jev Browser Use following this guide, then help me configure the
provider. Ask for my chosen provider and local credential file path if
needed. Never ask me to paste an API key in chat.

更多代理安装路径详见 INSTALL.md。

🐛 常见报错排查:401/403 与 ENOTFOUND

报错现象 真正原因 解决办法
HTTP 401 / 403 Provider 已连通,但认证被拒 核对 provider 与密钥签发方是否匹配,检查账户权限(不要打印密钥排查)
密钥认证始终失败 密钥放错了变量 TypeSafe 密钥只能放 TYPESAFE_API_KEY,反之亦然
DNS lookup failed (ENOTFOUND) CUA 运行时内部无法解析域名,请求根本没发出 按 SKILL.md 的"credential-free CUA transport probe"做免凭证探测;shell 里能联网不等于 CUA 内能联网
config.json 里没有 apiKey 这不是错误 密钥在 dotenv 文件中,loadConfig() 不返回密钥是设计如此

分阶段诊断的完整思路见 provider-configuration.md。

✅ 验证配置并收尾

  1. 开启新的 Codex 任务(更新或首次安装后都必须新建任务,Skill 指令才会加载);
  2. 给一个浏览器任务试跑,例如:"Use Jev Browser Use on the settings page. Open the filters, scroll through the results, and restore the original state.";
  3. 所有安装方式共享同一份 ~/.config/jev-browser-use/config.json,换项目目录也无需重配;
  4. 日后 npx skills update jev-browser-use -g 更新 Skill 时,配置与凭证文件都不会被改动。

❓ 三个高频疑问

Q1:我可以同时配两个 Provider 备用吗? 不建议。Skill 明确"不偏好任何一个 Provider,也绝不自动回退"——选错密钥只会报错,不会产生隐式降级。

Q2:更换 Provider 要重新安装吗? 不用。直接修改 config.json 中的 provider、model 并更换 envFile 指向即可,安装器更新时也会保留你的现有配置。

Q3:Claude Code 能用吗? 可以安装(npx skills add wy-coliney/jev-browser-use -g -a claude-code -y),浏览器执行能力即将到来,目前浏览器操作依赖 Codex Computer Use 运行时。

配置到这里就完成了 🎉——密钥各归其位,Provider 对号入座,剩下的点击、导航与滚动就交给 Jev,思考与验证交给 Codex。更多成本对比与使用示例可继续阅读 README.md。

登录后查看全文
jev-browser-use