Jev Computer Use:浏览器与桌面 Agent 模式 | AutoJev

Jev Computer Use 把决策模型放入浏览器或桌面控制循环。代码观察界面、构建有限的有效动作,Jev 选择操作或目标,确定性 Executor 只执行被选中的动作。

Jev 本身不会点击按钮、移动鼠标或输入密码。观察、Grounding、执行、权限、停止条件和验证都属于自动化框架。

为什么 Jev 适合 Computer Use

许多 Computer Use 步骤本质上是选择,而不是开放式写作:

  • clickscrollwaittypedoneblocked 中选择。
  • 从可见 DOM 或无障碍元素中选择一个目标。
  • 判断某个点击是否可逆,或者是否需要确认。
  • 在界面变化后评估目标是否完成。

这些问题的候选项会动态变化,但可以在推理前枚举。Jev Choice 可以返回所有候选项的完整概率分布;Noul 可以用概率表达“目标是否完成”或“这个操作是否需要确认”。

自由文本仍然需要 Writer Model 或用户输入。混合 Agent 可以让 Jev 选择操作和目标,只在文本框确实需要新内容时调用生成式模型。

浏览器控制架构

基于 DOM Grounding 的 Jev Browser Agent 可以使用以下循环:

  1. 读取可交互元素并分配稳定 Index。
  2. 移除隐藏、禁用以及与操作不兼容的目标。
  3. 把目标、近期动作摘要和有限操作列表作为 State。
  4. 使用一个 Choice 选择操作,并行使用 Choice 选择兼容目标。
  5. 只执行与最终操作对应的目标。
  6. 观察新页面并验证进展,然后再继续。

Browser Use 的 Jev Ultrafast是这种模式的公开案例。仓库说明 Jev 在一次请求中选择操作和已编号 DOM 元素,只有 TYPE_TEXT 才使用小型文本模型。项目公布了自己的测量和 Trace;这些结果只描述该实现,在作为生产预测之前应独立复现。

桌面 Computer Use 架构

桌面自动化可以组合 OCR 与操作系统无障碍树:

  1. 捕获活动窗口并读取相关文本。
  2. 枚举无障碍 API 暴露的有标签控件。
  3. 把观察结果合并成带位置和 Role 的有限候选列表。
  4. 让 Jev 选择下一步动作和目标。
  5. 应用置信度阈值和确认策略。
  6. 通过平台 Adapter 执行,再捕获下一状态。

awlevin/typesafe-computer-use在 macOS 上演示了这种方式。它的 README 记录了 OCR、无障碍状态、确定性动作、Replay 文件和停止规则,也解释了其中的取舍:通用视觉模型隐式完成的推理,需要显式写入 State 或确定性代码。

Jev Computer Use 决策示例

json
{
  "state": {
    "goal": "打开账单页面,但不要更改订阅",
    "page": "账户设置",
    "elements": [
      { "id": 12, "role": "link", "label": "账单" },
      { "id": 18, "role": "button", "label": "取消订阅" },
      { "id": 21, "role": "button", "label": "保存更改" }
    ],
    "recent_actions": ["打开账户设置"]
  },
  "questions": {
    "operation": {
      "type": "choice",
      "instructions": "选择能够安全推进目标的下一项有限操作。",
      "criteria": {
        "click": "某个已列出的元素可以安全推进目标。",
        "wait": "界面仍在变化。",
        "done": "目标已经完成。",
        "blocked": "没有安全的已列出动作能够推进目标。"
      }
    },
    "click_target": {
      "type": "choice",
      "instructions": "如果选择点击,请选择目标。",
      "criteria": {
        "12": "账单链接",
        "18": "取消订阅按钮",
        "21": "保存更改按钮"
      }
    },
    "needs_confirmation": {
      "type": "noul",
      "instructions": "拟执行的操作是否会对账户产生重要变更?"
    }
  }
}

除非 operationclick,Executor 必须忽略 click_target。它还应该拒绝观察后已经消失的元素,并在动作超过应用确认阈值时先询问用户。

Jev Computer Use 的安全边界

  • **Ground 每个目标。**不允许模型发明观察候选列表之外的坐标、Selector 或操作。
  • **执行前重新检查。**页面可能在观察和动作之间变化;验证目标仍然存在并且 Role 符合预期。
  • **区分建议和权限。**高置信度选择不代表模型获得购买、发布、删除或更改凭证的权限。
  • **保护 Secret。**密码、Session Cookie、API Key 和隐私屏幕区域不应进入模型 State。
  • **使用确定性停止规则。**设置步骤上限、重复动作检测、Timeout,以及决策服务不可用时的 Fail-Closed 路径。
  • **保留证据。**保存脱敏后的观察、候选列表、决策和实际动作,用于 Replay 与评估。

AutoJev 能做什么

AutoJev 可以提供决策调用和防护层,但它不是 Browser Driver。应用可以通过 Jev API发送自定义操作和目标问题,在高影响动作之前使用工具调用护栏,并在浏览器报告成功后执行 Completion Review。

可以在 Jev 生态指南中发现更多社区实现,或者阅读 Jev 游戏,了解有限动作如何用于另一类外部控制循环。