• 简体中文
  • 使用 ChatGPT 订阅

    你可以通过 Sign in with ChatGPT(简称 SIWC) 授权 Midscene,使用 ChatGPT 订阅额度调用 GPT 模型。本文介绍从登录授权到验证连接的完整步骤。

    使用 ChatGPT 订阅和使用模型 API Key是两种接入方式,根据你使用的模型付费方案任选一种即可。

    登录授权

    命令行授权是一种通用方式,在终端运行:

    pnpm dlx @midscene/cli model siwc login

    按照终端提示,在浏览器中登录 ChatGPT 并授权使用订阅额度。授权时可以自行设置 Agent 名称;完成后,可在 ChatGPT 的使用情况页面查看已授权的 Agent。

    命令会将凭据保存到 ~/.midscene/siwc.json,并打印 access token(访问令牌)和过期时间。首次使用前需要手动完成登录。

    如果你使用浏览器插件,可以直接在插件的模型配置界面中点击 Use your ChatGPT plan,按照页面提示完成授权,无需运行命令。这时凭据会保存在你的浏览器插件本地存储中。

    配置模型

    使用 SIWC 授权模式时,可以使用下面的配置,以 gpt-6-sol 为例:

    MIDSCENE_MODEL_AUTH_MODE="siwc"
    MIDSCENE_MODEL_NAME="gpt-6-sol"
    MIDSCENE_MODEL_FAMILY="gpt-6"

    Midscene 会读取已保存凭据中的 access token,作为调用 OpenAI 官方模型的 API Key,并按照 OpenAI 的要求自动使用 Responses API 和流式请求。

    将上述配置填入浏览器插件的模型配置界面,或按照模型配置文档加载到你的运行环境中。

    可用模型以你的 ChatGPT 账号为准。GPT 模型对应的 Family 和使用注意事项,与使用模型 API Key 时相同。

    手动配置 access token

    如果你希望自行管理 token,仍可使用下面的方式。注意,此时不要设置 MIDSCENE_MODEL_AUTH_MODE="siwc"。

    以下以 gpt-6-sol 为例,将 <your-access-token> 替换为刚刚获取的 token:

    🤖 用作默认模型
    🎯 用作定位模型
    🧠 用作 Planning 模型
    🔎 用作 Insight 模型
    MIDSCENE_MODEL_BASE_URL="https://api.openai.com/v1"
    MIDSCENE_MODEL_API_KEY="<your-access-token>"
    MIDSCENE_MODEL_NAME="gpt-6-sol"
    MIDSCENE_MODEL_FAMILY="gpt-6"
    MIDSCENE_MODEL_PROTOCOL="openai-responses" # SIWC 要求使用 Responses API
    MIDSCENE_MODEL_STREAM_MODE="stream" # SIWC 要求开启流式返回

    SIWC 要求使用 Responses API 并开启流式返回,请保留示例中的 openai-responses 和 stream 配置。

    验证连接

    如果你使用浏览器插件,在模型配置界面中点击 Verify 即可验证连接。

    如果你使用命令行,在保存 .env 的目录中运行:

    pnpm dlx @midscene/cli model verify

    该命令会使用 .env 中的值覆盖当前 Shell 中的同名变量。

    验证通过后,就可以继续快速体验 GUI Agent中的任务。如果验证失败,请参考模型高级配置与调试。

    刷新 access token

    根据 OpenAI 的说明,access token 会在 1 小时后过期,需要使用 refresh token 获取新的 access token,详见 OpenAI token 说明。

    使用 MIDSCENE_MODEL_AUTH_MODE="siwc" 时,Midscene 会在运行时负责维护 token 的刷新,Node.js 和浏览器插件均支持这一流程。如果刷新失败,需要重新进行手动登录授权。

    如果你自行管理 token,可以运行以下命令手动刷新:

    pnpm dlx @midscene/cli model siwc refresh

    命令会更新本地凭据,并打印新的 access token。将 MIDSCENE_MODEL_API_KEY 替换为新的 token 后,重新加载配置即可。

    浏览器插件中的凭据独立保存,命令行刷新不会更新插件中的凭据。

    额度与凭据

    • 使用 SIWC 会消耗你的订阅额度。token 消耗与订阅额度的换算以 ChatGPT 官方为准;你可以在 Midscene 报告中查看每步任务的 token 消耗。
    • 命令行授权的凭据保存在 ~/.midscene/siwc.json,插件授权的凭据保存在插件本地存储中。Midscene 不会收集你的凭据。
    • 请遵守 OpenAI 的地区限制和使用条款,参见 Sign in with ChatGPT Terms。

    复用 Codex Cli(不推荐)

    如果你已经通过 Codex Cli 登录(codex login),并希望 Midscene 直接复用该 OAuth 会话,可设置:

    export MIDSCENE_MODEL_BASE_URL="codex://app-server"
    export MIDSCENE_MODEL_NAME="gpt-6-sol" # 或者使用 Codex model/list 可见的其他模型
    export MIDSCENE_MODEL_FAMILY="gpt-6"

    说明:

    • 该模式下不需要 MIDSCENE_MODEL_API_KEY。
    • Midscene 会通过 stdio 调用 codex app-server。
    • 请确保 codex 在 PATH 中可用,并通过 codex login status 确认登录状态。

    这种方案的不足在于:相比于直接调用 OpenAI 兼容 API,我们观察到它可能耗时更长、token 消耗更多,因此不推荐使用。