mcpField
B
Backdraw

Backdraw

本地服务
github.com媒体与设计13 天前更新

关于 Backdraw

Backdraw 是本地 MCP 服务和 Chrome 扩展,可在后台 Chrome 标签页中通过已登录的 ChatGPT 账户生成和编辑图像。它主要面向 Claude 用户,并将生成的图像保存在 Windows 电脑上。

主要功能

  1. 01通过 ChatGPT 生成和编辑图像
  2. 02在静音后台标签页运行任务
  3. 03将收集的网站图像用作参考
  4. 04在图库中浏览生成的图像
  5. 05在本地保存图像和任务历史

适用场景

  1. 01根据 Claude 请求生成图像
  2. 02使用参考图像编辑图像
  3. 03收集网站图像供后续生成使用

MCP 相关

Backdraw 作为 stdio MCP 服务运行,提供生成图像、查询或取消任务、获取图像以及管理项目和集合的工具。服务通过原生消息传递和命名管道与 Chrome 扩展通信。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"devtalh-backdraw": {
"command": "npx",
"args": [
"-y",
"backdraw"
]
}
}
}
启动命令npx -y backdraw

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmbackdraw2.1.3

工具

7

收录的工具列表 · 更新于 2 天前

参数类型必填说明
promptstring是完整的图像描述或编辑指令,支持任何语言。
output_dirstring否可选:将图像副本保存到的文件夹,例如当前项目的 assets 文件夹(优先使用绝对路径)。中央 images 文件夹始终会保留一份副本。
send_as_isboolean否原样发送提示词,不附加桥接程序添加的简短指令(适合回答 ChatGPT 提出的问题)。
aspect_ratiostring否可选形状,格式为 W:H,例如 1:1、3:2、2:3、4:3、3:4、16:9、9:16、4:5、5:2(Discord 横幅)或 3:1(页眉)。任意 W:H 均可,但整数需在 1:4 到 4:1 之间(不要使用 1.5:1:请用 3:2)。ChatGPT 会自行绘制 1:3 到 3:1 的比例;更宽或更高的形状会按 3:1 / 1:3 绘制后裁剪。若图像比例偏差超过 1%,则会从中心裁剪到此比例(取最接近的像素),并同时保留完整图像。
wait_secondsinteger否在此秒数内返回。默认值 45 可确保每次调用低于某些客户端的 60 秒工具时限。如果作业届时仍未完成,结果会显示 STILL RUNNING 或 QUEUED:再次使用其 job_id 调用 job_status。
auto_reattachboolean否如果 ChatGPT 回复说无法访问图像并要求上传,则自动附加聊天中最新的图像(或 reference_images),并再次询问一次。
filename_hintstring否可选的几个主题描述词(例如 'red fox mascot'),用于生成保存文件名,而不采用提示词开头部分。如果提示词以其他内容开头(例如关于参考图像的指令),请传入此参数。
include_previewboolean否附加缩小后的结果预览,供检查。
reference_filesarray否可选:从 list_collections 获取文件名,仅附加 reference_collection 中指定的图像,而非最新图像。
conversation_urlstring否可选:之前结果中的 ChatGPT 对话链接;提示词会发送到该对话,而不是新对话。适合快速跟进;如需精确编辑,优先在新聊天中使用 reference_images。
reference_imagesarray否可选的本地图片文件(png/jpg/webp/gif,最多 16 张),附加到消息中,例如要编辑的图片或角色设定表。之前调用保存的路径可直接使用。
reference_collectionstring否可选的用户 Backdraw 参考图集名称之一(参见 list_collections;采用宽松匹配)。其中的图片会在所有 reference_images 之后附加,参考图总数最多为 16 张:超过上限时使用最新图片,除非 reference_files 指定其他图片。
transparent_backgroundboolean否要求生成透明背景的 PNG(贴纸、徽标、图标、精灵图)。结果会说明保存的图片是否确实包含透明像素。

详细介绍

Backdraw

让 Claude 在后台 Chrome 标签页中,使用你自己的 ChatGPT 账户生成图片。
无需 API 密钥、无需额外费用,也无需守着等待。

npm 版本 devtalh/backdraw MCP 服务

在网页上右键点击图片,将其保存为参考图,然后 Claude Code 让 Backdraw 按照该风格生成图片;ChatGPT 在后台标签页中绘制图片,并将文件保存到电脑上

土耳其语


功能介绍

Backdraw 是一个本地 MCP 服务和 Chrome 扩展。让 Claude 使用“ChatGPT”生成图片时,Backdraw 会在你已登录的 Chrome 后台标签页中打开 ChatGPT。它会发送提示词、等待图片生成并将其保存到电脑上。Claude 会获得文件路径、预览图和聊天链接。

  • 生成新图片,或附加图片作为参考图进行编辑。
  • 指定形状(16:9、4:1 横幅等)或透明背景。
  • 在任何网站上右键点击图片,将其保存为参考图,并作为合集重复使用。
  • 在侧边栏图库中浏览你创建的所有内容。
  • 纯 Node.js,无任何 npm 依赖。所有操作都在你的电脑上运行。

供个人使用,请使用你自己的 ChatGPT 账户,并自行承担风险。 自动化操作 ChatGPT 网页可能与 OpenAI 的条款冲突;开始之前请阅读 免责声明和负责任的使用。

为什么选择 Backdraw?

  • 使用你日常的 Chrome。 无需单独的浏览器配置文件、再次登录或自动化浏览器:Backdraw 直接在你平时使用且已登录 ChatGPT 的 Chrome 中运行。
  • 不妨碍你工作。 操作会在一个静音的后台标签页中进行,不会切换焦点,因此你可以在图片生成时继续工作。
  • 不开放端口。 各组件通过 Chrome 原生消息传递和仅限你的 Windows 用户访问的命名管道进行通信。不会开放 DevTools 端口(例如 9222),也不会运行本地 Web 服务。
  • 无需 API 密钥。 它使用你的 ChatGPT 套餐;每张图片都会计入你常规的 ChatGPT 使用限额。
  • 从网页收集参考图。 在任何网站上右键点击图片即可收集,然后按照其风格生成图片。
  • 图库:在 Chrome 侧边栏中查看你创建的所有内容。
  • 一条命令即可设置: npx backdraw@latest setup。剩下只需加载扩展。
对比

其他开源项目采用了不同的方法,其中有几个支持 Backdraw 不支持的功能(macOS 或 Linux 支持、API 模式、在服务上运行)。每一行均已根据项目的 README 和源代码于 2026-10-25 核查;? 表示我们无法确定。发现错误了吗?请提交 issue。

项目使用你日常使用的 Chrome(无需单独的配置文件或登录)后台标签页(不会抢占焦点)开放端口是否需要 API 密钥右键参考图集图库平台
Backdraw是是否(原生消息传递 + 命名管道)否是是Windows
lownamlee/gpt-image-2-mcp否(使用自己的浏览器配置文件)部分支持¹否可选(API 模式)否否?
nothariharan/image-gen否(使用自己的 Edge 配置文件)否是(CDP 9222)否否否Windows;macOS/Linux 需手动配置
goofyshwetank/mcp-chatgpt-gemini-image否(使用自己的 Chromium 配置文件)否否否否否?
Dasemu/chatgpt-imagegen-mcp否(在服务上使用自己的配置文件)部分支持²是(HTTP 8088,远程服务)否(使用自己的服务令牌)否否Linux 服务
Codex 内置的 $imagegen–(无浏览器)–否否(登录 Codex)否??
Sateezg/codex-bridge–(无浏览器,运行 Codex)–否否(登录 Codex)否否macOS、Linux

¹ 使用自己的浏览器窗口;ChatGPT 就绪后将窗口移出屏幕或最小化。 ² 在服务上的虚拟显示器(Xvfb)中运行浏览器,或以无头模式运行。

Codex 用户已经可以使用内置的图像生成功能;Backdraw 主要面向 Claude Code、Claude 桌面应用和 VS Code。

工作原理

Claude Code / Claude desktop app (MCP client)
        │  MCP over stdio
        ▼
  mcp-server.js ──── named pipe, your Windows user only ────►  host.js
                                                                 │  Chrome native messaging
                                                                 ▼
                                                     Backdraw Chrome extension
                                                                 │  background tab
                                                                 ▼
                                      chatgpt.com → your Project → new chat → image
  • mcp-server.js 负责与 Claude 通信。它会将每次工具调用转发给 host.js。
  • Chrome 连接扩展时会启动 host.js。它负责运行作业队列(一次处理一个作业)、保存图像,并将作业历史记录保存在 %USERPROFILE%\.backdraw\data 中。
  • 扩展会在你选定的 ChatGPT Project 中,于后台标签页打开 chatgpt.com。该标签页不会被激活,并且会静音;没有窗口会抢占焦点,也不会使用你的鼠标和键盘:只会在该标签页内触发合成事件。作业完成后,该标签页会关闭,除非你正在查看它。
  • 无需 API 密钥。 Backdraw 使用你已在 Chrome 中登录的 ChatGPT 会话。它绝不读取 Cookie、令牌或密码。
  • 除你发送给 ChatGPT 的内容(提示词和任何参考图像)外,任何内容都不会离开你的电脑。 Backdraw 没有服务,也不收集遥测数据。

图像会保存在图片文件夹下的 Backdraw 目录中,文件名由时间和提示词组成,例如 20261021-153012_a-cozy-reading-nook.png。

要求

操作系统Windows 10 或 11
浏览器Google Chrome 116 或更高版本(也已为 Edge、Brave 和 Chromium 注册,但仅测试过 Chrome)
运行环境Node.js 20 或更高版本
账号可生成图像的 ChatGPT 账号,并已在 Chrome 中登录 chatgpt.com
客户端Claude Code、Claude 桌面应用、Codex、Cursor、VS Code 或 Gemini CLI(或其他可运行 stdio 服务的 MCP 客户端)

目前仅支持 Windows——代码按平台模块拆分,欢迎贡献 macOS/Linux 支持。所有特定于操作系统的内容(命名管道、原生主机注册、用户文件夹)都位于 platform/win32.js 中。

安装

快速安装

在 PowerShell 或 cmd 中运行以下命令(无需管理员权限):

npx backdraw@latest setup

它会运行 npm 上的 backdraw 软件包。

setup 会完成所有操作,除了在浏览器中点击一次:

  1. 它会将 Backdraw 复制到 %USERPROFILE%\.backdraw(npx 自己下载的副本是临时的),并设置图片文件夹 Pictures\Backdraw(参考图集会放在 Pictures\Backdraw\References 中)。 再次运行会更新 Backdraw,同时保留你的设置、任务历史记录和图集。

  2. 它会为你的 Windows 用户注册原生消息传递主机,并为找到的每个浏览器注册(Chrome、Edge、Brave、Chromium)。

  3. 它会列出找到的 MCP 客户端(Claude Code、Claude 桌面应用、Codex、Cursor、VS Code、Gemini CLI),并询问要将 Backdraw 添加到哪些客户端。它只会添加或更新 backdraw 条目,并在修改每个配置文件前创建带时间戳的 .bak 副本。 --yes 会选择找到的所有客户端;--clients=claude-code,cursor 则只选择指定的客户端。

  4. 它会打开扩展文件夹和浏览器的扩展页面,将文件夹路径复制到剪贴板,然后等待你加载扩展。这是剩下需要你完成的一步:

    1. 开启开发者模式(右上角),
    2. 点击加载已解压的扩展程序,
    3. 选择该文件夹(按 Ctrl+V 粘贴路径)。

    扩展一连接,安装程序就会打印 ✓ Ready 和一条示例提示词。

原生主机仍名为 io.github.muhammedtalha04.backdraw,沿用项目旧的 GitHub 用户名:更名会导致现有安装无法使用。

从客户端安装

你的 MCP 客户端也可以自行添加 Backdraw;此时它会使用 npx backdraw@latest mcp 启动服务。浏览器端仍需在电脑上进行一次性设置,该设置不会改动客户端:

npx backdraw@latest setup --clients=none
客户端添加 Backdraw
Claude Code/plugin install backdraw --marketplace devtalh/backdraw(Claude Code 2.1.275 或更高版本;或者先运行 /plugin marketplace add devtalh/backdraw,然后运行 /plugin install backdraw@backdraw)。/backdraw:setup 会说明浏览器设置步骤。
Cursor将 Backdraw 添加到 Cursor
VS Code在 VS Code 中安装 Backdraw
Codexcodex mcp add backdraw -- cmd /c npx -y backdraw@latest mcp
Gemini CLInpx backdraw@latest setup --clients=gemini

在 Windows 上,命令会通过 cmd /c 执行,因为客户端启动 npx 时不会使用 shell。每个客户端只使用一种安装方式:如果安装程序已将 Backdraw 添加到 Claude Code,那么插件会再启动一个提供相同工具的服务。

手动安装
  1. 获取代码。 使用 git 克隆仓库,或将其下载为 ZIP(Code → Download ZIP)并解压:

    git clone https://github.com/devtalh/backdraw.git
    cd backdraw
    
  2. 运行安装程序(无需管理员权限):

    node install.js
    

    它会执行上述第 1 和第 2 步,并将 Backdraw 添加到 Claude Code(用户范围)。对于其他客户端,请改为运行 node bin/backdraw.js setup,或参阅使用方法。

  3. 加载扩展(仅需一次):打开 chrome://extensions,开启开发者模式,点击加载已解压的扩展程序,然后选择 %USERPROFILE%\.backdraw\extension。

在弹出窗口中完成设置
  1. 打开弹出窗口。 点击工具栏中的 Backdraw 图标(从拼图菜单中将其固定)。 在所有设置完成前,弹出窗口会显示设置检查清单,并为每个步骤提供解决方法:
    1. 桥接已连接,
    2. 已登录 ChatGPT,
    3. 已选择 ChatGPT Project,
    4. 就绪:可复制到 Claude 的示例提示词。
  2. 创建并选择 ChatGPT Project。 在 ChatGPT 中为图片创建一个 Project(例如“Backdraw”),打开它,点击 Backdraw 图标,然后按 Use the “Backdraw” project。 你也可以向 Claude 提问:“在 ChatGPT 中为图片选择我的 Backdraw project。” 每个新图片对话都会在该 Project 中创建。

弹出窗口还提供语言(Auto / English / Türkçe)和主题(Auto / Light / Dark)设置。 如果遇到问题,请运行 npx backdraw@latest doctor。

使用方法

在 Claude Code 中使用

安装后启动一个新的 Claude Code 会话(MCP 服务会在会话启动时加载),然后用任意语言直接描述需求。backdraw 服务会向 Claude 提供以下工具: generate_image、job_status、cancel_job、fetch_images、list_projects、select_project 和 list_collections(参见工具参考)。

在 Claude 桌面应用(聊天)中使用

桌面应用为聊天单独保存 MCP 配置。Claude 退出时会重写该配置,因此 Backdraw 只会在 Claude 关闭时修改配置。如果设置时检测到 Claude 正在运行,请稍后添加 Backdraw:

  1. 完全退出 Claude,包括从系统托盘退出。

  2. 在 PowerShell 中运行以下命令(不要在 Claude 会话中运行):

    npx backdraw@latest setup --clients=claude-desktop
    

    (手动安装时:在 ~\.backdraw 中运行 node install.js --desktop。)修改每个配置文件前,都会先写入一份带时间戳的 .bak 备份。

  3. 重新启动 Claude。Backdraw 即可在新聊天中使用。

在其他 MCP 客户端中使用

setup 也会将 Backdraw 添加到 Codex、Cursor、VS Code 和 Gemini CLI:在提示时选择这些客户端,或运行 npx backdraw@latest setup --clients=codex,cursor,vscode,gemini。它会将 node.exe 的完整路径作为命令写入,因此即使客户端无法读取你的 PATH,也能找到它。之后重启客户端或启动新会话。

VS Code 和 Gemini CLI 允许在配置文件中添加注释。重写这类文件会删除注释,因此 setup 会保留带注释的文件并提示你;然后请手动添加条目。

Backdraw 是一个使用标准输入/输出的 MCP 服务:node %USERPROFILE%\.backdraw\mcp-server.js。要手动添加,请使用以下示例。在配置文件中,将 C:/Users/you 替换为你的主文件夹(在 cmd 中运行 echo %USERPROFILE% 可查看路径)。Windows 支持正斜杠,且 JSON 中无需转义。下方的 ~ 表示你的主文件夹。PowerShell 命令会自动填入路径。

Codex(CLI、IDE 扩展和应用共用 ~\.codex\config.toml; 文档)。在 PowerShell 中运行:

codex mcp add backdraw -- node "$env:USERPROFILE\.backdraw\mcp-server.js"

或在 config.toml 中添加:

[mcp_servers.backdraw]
command = "node"
args = ["C:/Users/you/.backdraw/mcp-server.js"]

Cursor(所有项目共用 ~\.cursor\mcp.json,也可以使用项目中的 .cursor\mcp.json; 文档)。Cursor 会自动填入 ${userHome}:

{
  "mcpServers": {
    "backdraw": {
      "type": "stdio",
      "command": "node",
      "args": ["${userHome}/.backdraw/mcp-server.js"]
    }
  }
}

VS Code(GitHub Copilot Agent 模式:每个工作区运行 MCP: Open User Configuration,或在某个工作区中创建 .vscode\mcp.json; 文档)。 这里的键为 servers,且必须包含 type:

{
  "servers": {
    "backdraw": {
      "type": "stdio",
      "command": "node",
      "args": ["C:/Users/you/.backdraw/mcp-server.js"]
    }
  }
}

Gemini CLI(~\.gemini\settings.json; 文档)。-s user 会将其添加到所有项目中(默认仅添加到当前项目)。在 PowerShell 中运行:

gemini mcp add -s user backdraw node "$env:USERPROFILE\.backdraw\mcp-server.js"

或在 settings.json 中添加:

{
  "mcpServers": {
    "backdraw": {
      "command": "node",
      "args": ["C:/Users/you/.backdraw/mcp-server.js"]
    }
  }
}

示例提示词

你说Claude 传递给 generate_image 的内容
用 ChatGPT 生成一张图片:雨窗旁温馨的阅读角,暖色的灯光。详细的 prompt
用 ChatGPT 为我的博客制作一张 16:9 横幅:“Night Shift Notes”,黄昏时分的霓虹城市。aspect_ratio: "16:9"
用 ChatGPT 制作一个开心仙人掌贴纸,背景透明。transparent_background: true
用 ChatGPT 编辑 C:\path\to\photo.png:把天空改成日落,其他一切保持不变。reference_images: ["C:\\path\\to\\photo.png"]
用我的“Cats”收藏集作为参考,用 ChatGPT 制作一张海报。reference_collection: "Cats"

要编辑图片,Backdraw 需要它是电脑上的文件:将完整路径提供给 Claude(输入或粘贴),这样 Claude 就能将其传入 reference_images。之前调用保存的文件可以直接使用。附上图片后开启新聊天,是最可靠的编辑方式。

你也可以询问 “ChatGPT 图片任务的状态如何?” 或 “取消它。”

参考收藏集

从网上收集图片,然后将它们用作参考。

  1. 在任意网页上的图片上右键点击 → 添加到 Backdraw → 选择一个收藏集,或选择 新建收藏集…(会弹出一个小窗口,要求输入名称)。
  2. 页面上会显示简短提示以确认操作,例如“已添加到 Cats · 5 张图片”。在 Chrome 不允许扩展显示提示的页面上,工具栏图标会闪烁 ✓(出错时显示红色 !)。
  3. 按名称让 Claude 使用该收藏集。

每个收藏集都是一个文件夹 Pictures\Backdraw\References\<collection>\,其中包含图片(由 Backdraw 命名为:001_<name>.png、…)、记录每张图片来源页面和日期的 collection.json,以及 thumbs\ 文件夹。同一张图片添加到一个收藏集两次时只会保留一份。PNG、JPEG、WebP 和 GIF 会保留原格式;Chrome 能显示的其他格式(例如 AVIF、BMP 或 SVG)会保存为 PNG。手动删除图片文件后,该图片会从收藏集中移除。

弹出窗口中的 收藏集 部分会列出你的收藏集。打开一个收藏集即可查看缩略图、删除 图片,或重命名、删除收藏集。

限制
每条消息的参考图片数16(reference_images 和收藏集图片合计;测试中 ChatGPT 接受 16 张)
单张参考图片20 MB
单条消息的所有参考图片80 MB
单张收藏集图片25 MB(超过 20 MB 的图片仍会保留在收藏集中;请求会将其排除并说明原因;在 reference_files 中指定该图片会导致请求失败并显示提示)

请求会使用该收藏集中符合剩余可用名额的最新图片。若要使用指定图片,请给出其名称:Claude 会将它们的文件名(来自 list_collections)传入 reference_files。

尺寸和透明度

aspect_ratio

使用整数表示的 W:H,范围为 1:4 到 4:1:1:1、3:2、2:3、4:5、16:9、9:16、 5:2(Discord 横幅)、3:1、4:1,……1920:1080 会被简化为 16:9;请写 3:2,不要写 1.5:1。 部分名称也可使用:square、landscape(3:2)、portrait(2:3)、wide(16:9)、tall(9:16)、 discord-banner(5:2)。

  • 1:3 到 3:1: ChatGPT 会自行绘制,尺寸约为 1.57 百万像素,并符合指定形状。2026 年 10 月观察到的尺寸: 1254×1254(1:1)、1536×1024(3:2)、1672×941(16:9)、1983×793(5:2)。
  • 最高为 4:1 / 1:4: ChatGPT 会按 3:1(或 1:3)生成图片,并被告知要将主体、面部和文字保留在裁剪后仍会保留的带状区域内;随后 Backdraw 会从中心裁剪。
  • 如果图片与指定比例相差超过 1%,则会从中心裁剪。裁剪后的图片是主文件(<name>.png),ChatGPT 的原图会保留在其旁边,文件名为 <name>_full.<ext>。output_dir 中只会复制主文件。
  • 如果 ChatGPT 生成了其他形状,导致裁剪范围超出预期,结果会提醒你检查主体或文字是否被裁掉。
transparent_background

transparent_background: true 会要求 ChatGPT 生成一张带 Alpha 通道且仅显示主体的 PNG 图片。ChatGPT 不一定总能做到,因此 Backdraw 会检查保存的图片:读取 PNG 标头(Alpha 通道或 tRNS 块),并测量透明像素所占比例。结果要么是

Transparent background: yes — PNG with an alpha channel, 61% of the pixels are transparent.

要么以 ⚠ TRANSPARENT BACKGROUND MISSING 开头(没有 Alpha 通道,或透明像素占比不超过 2%)。之后,请在新的聊天中重试一次,或使用其他工具移除背景。透明图片的预览会显示在棋盘格背景上。

画廊侧边栏

点击弹出窗口中的 打开画廊,即可在当前页面旁打开 Backdraw 的侧边栏。也可以右键点击 Backdraw 工具栏图标 → 打开 Backdraw 画廊。

  • **顶部:**正在进行的任务(步骤、任务 ID 和已用时间;悬停可查看 ChatGPT 的消息)、“空闲”或未连接提示。
  • **画廊:**生成的图片,按时间从新到旧排列,每次显示 12 张(加载更多)。每张图片都显示缩略图、日期、提示词(悬停可查看其前 300 个字符)、尺寸,以及(如有要求)纵横比。
  • 每张图片:打开聊天、在文件夹中显示(在资源管理器中选中该文件)、复制路径和添加到集合(现有集合或新建集合…)。

画廊会列出任务历史记录中的图片,历史记录最多保留最近 100 个任务。缩略图来自预览文件,预览文件保留 7 天;较早的图片会显示占位符。图片文件本身会一直保留在你的图片文件夹中。

工具参考

工具参数(默认值)功能
generate_imageprompt(必填)、aspect_ratio、transparent_background(false)、reference_images、reference_collection、reference_files、conversation_url、auto_reattach(false)、send_as_is(false)、output_dir、wait_seconds(45)、include_preview(true)在你的 Project 中开始新的聊天(或继续 conversation_url),并生成或编辑图像。
job_statusjob_id、wait_seconds(45)、include_preview(true)等待任务并报告状态。不提供 job_id 时:报告桥接状态(Chrome 是否已连接、所选 Project、图像文件夹、队列、最近的任务)。
cancel_jobjob_id(必填)取消排队中或正在运行的任务。如果 ChatGPT 已在生成图像,则在后台标签页中点击“停止”。
fetch_imagesconversation_url(必填)、aspect_ratio、output_dir、wait_seconds(45)、include_preview(true)下载现有聊天中最新回复的图像,不发送任何内容。
list_projects–列出你的 ChatGPT Projects,并显示当前所选项。
select_projectname 或 url选择并记住用于新图像聊天的 Project(名称采用模糊匹配)。
list_collections–列出你的参考图集合及图像数量、文件夹和文件(最新的在前)。
  • reference_images:本地 png / jpg / webp / gif 文件,最多 16 个;集合中的图像会填入剩余位置。
  • reference_files:list_collections 返回的文件名,仅附加 reference_collection 中指定的图像。
  • conversation_url:https://chatgpt.com/ 聊天链接。适合快速跟进;若要精确编辑,使用包含 reference_images 的新聊天效果更好。
  • auto_reattach:如果 ChatGPT 表示看不到图像并要求重新发送,则自动附加图像并再询问一次。
  • send_as_is:逐字发送提示词,不附加 Backdraw 添加的简短指令(例如,回答 ChatGPT 提出的问题)。
  • output_dir:也将结果复制到此文件夹;图像文件夹始终会保留一份副本。
  • wait_seconds:0 到 900。

结果可能显示:

结果含义
SUCCESS已保存的文件路径、聊天链接和预览。编辑会额外添加一行 编辑检查。
STILL RUNNING / QUEUED尚未完成;Claude 会继续使用任务 ID 调用 job_status。
NEEDS USER ACTIONChatGPT 显示登录或人工验证页面(请参阅故障排除)。
NEEDS REFERENCE IMAGEChatGPT 无法访问要编辑的图像。结果会列出该聊天中已保存的图像。
CHATGPT REPLIED WITHOUT AN IMAGEChatGPT 以文本作答(提问、拒绝或提示限制);结果中会包含最多 3,000 个字符的回复。
FAILED / CANCELLED显示失败原因,以及聊天链接(如果有)。

快速返回

生成通常需要 1-3 分钟,但 generate_image、fetch_images 和 job_status 默认会在 45 秒内返回(wait_seconds)。如果图像尚未准备好,结果会显示 STILL RUNNING 或 QUEUED(并附上队列位置)以及任务 ID;Claude 会再次调用 job_status(job_id, wait_seconds=45),直到任务完成。

通过云端连接到你的 PC 的客户端通常会在 60 秒后放弃工具调用;45 秒的默认值可确保这些调用不超过该限制。客户端询问进度时,Backdraw 会在等待期间发送进度通知。在客户端取消工具调用只会停止等待;任务会继续运行,直到 cancel_job 将其停止。

CLI

要进行设置和故障排除,请在 Backdraw 文件夹(%USERPROFILE%\.backdraw 或你安装时使用的文件夹)中运行以下命令。在任意位置运行 npx backdraw <command>,也可执行相同的命令,例如 npx backdraw status。npm run status 等同于 node cli.js status。backdraw mcp 会通过 stdio 运行 MCP 服务;MCP 客户端会启动该服务。

node cli.js status                          Bridge status (Chrome connected, selected project, queue)
node cli.js projects                        List ChatGPT projects
node cli.js select <name | link>            Select the project where images are generated
node cli.js generate "<prompt>" [--ref IMAGE]... [--url CHAT_LINK] [--aspect W:H] [--transparent]
                     [--reattach] [--out FOLDER] [--raw] [--wait 300] [--collection NAME [--file FILE]...]
                                            Generate an image (--ref: a reference or the image to edit, up to 16)
node cli.js collect <chat link> [--aspect W:H] [--out FOLDER]
                                            Download the latest images of an existing chat (sends nothing)
node cli.js job <id> [--wait 60]            Show a job's status
node cli.js cancel <id>                     Cancel a job
node cli.js collections                     List the reference collections
node cli.js collection <name>               Show one collection and its images
node cli.js outdir <folder>                 Change the central images folder
node cli.js debug on|off                    Verbose logging (logs\host.log)
node cli.js diagnose [link] [--selector CSS] [--max N] [--worker]
                                            Page diagnostics
node cli.js reload                          Reload the Chrome extension

示例:

node cli.js generate "a lighthouse at dawn, watercolor" --aspect 16:9
node cli.js generate "close only the eyes" --ref C:\path\to\portrait.png
node cli.js collect https://chatgpt.com/c/<chat id> --aspect 16:9

Doctor

npx backdraw@latest doctor          checks everything, changes nothing
npx backdraw@latest doctor --fix    repairs what is safe to repair, then checks again

doctor 会为每项检查打印一行结果:✓(正常)、⚠(值得检查)或 ✗(故障),并附上一行修复建议:

  • Node.js 版本、安装目录,以及文件、扩展和版本是否匹配。
  • 主机清单,以及每个已安装浏览器实际读取的注册表项(也包括在 Claude 桌面应用的 MSIX 沙盒内)。
  • 会关闭按用户配置的本机主机(NativeMessagingUserLevelHosts)或阻止它们(NativeMessagingBlocklist)的浏览器策略。只有管理员可以更改这些策略。
  • 桥接(命名管道)、扩展及其版本、扩展上次检测到的 ChatGPT 登录状态,以及是否已选择 Project。
  • 每个 MCP 客户端的 Backdraw 配置项:是否存在,以及是否指向此安装。还会说明 Claude 桌面应用是否正在运行。

--fix 会重写主机清单和注册表项,并将客户端配置项指回此安装(会创建备份;仅在 Claude 桌面应用关闭时操作)。它会说明无法修复的内容。输出可安全地粘贴到 issue 中:你的主文件夹会显示为 ~,且不会打印项目名称、提示词或聊天链接。

故障排除

问题处理方法
任何问题先运行 npx backdraw@latest doctor。
BRIDGE NOT RUNNINGChrome 已关闭,或扩展尚未加载或已关闭。打开 Chrome(扩展会自动连接),或在 chrome://extensions 中启用 Backdraw。运行 node cli.js status 检查。
Backdraw 图标上有红色 !扩展无法连接本地主机。弹出窗口会显示错误和修复方法。运行 npx backdraw@latest doctor --fix(或再次运行 node install.js),然后在 chrome://extensions 中重新加载 Backdraw。
NEEDS USER ACTIONChatGPT 显示了登录或人工验证(CAPTCHA)页面。在 Chrome 中打开 ChatGPT 标签页并自行完成验证;Backdraw 不会尝试绕过它。任务最多等待你 10 分钟;你完成后,任务会自动继续。10 分钟后任务会失败,并保持 ChatGPT 标签页打开。
⚠ EDIT CHECK (edited: false)ChatGPT 生成了新图片,而不是编辑原图(真正的编辑会保留约 95–100% 的图像)。请在 reference_images 中提供原图并再次请求,且不要使用 conversation_url,也就是在新聊天中操作。
NEEDS REFERENCE IMAGE聊天过长,ChatGPT 忘记了图片。请通过 reference_images 附上图片(最好在新聊天中),或使用 auto_reattach。
FAILED — ChatGPT did not finish in time任务约 10 分钟后会放弃。如果结果中有聊天链接,ChatGPT 完成后,fetch_images(或 node cli.js collect <link>)会下载图片;再次传入相同的 aspect_ratio,即可按相同方式裁剪。
No ChatGPT project is selected yet在弹出窗口中选择一个 Project,或让 Claude 列出并选择你的 Projects。
ChatGPT did not open the projectProject 已被删除或重命名;请重新选择。
两个 Chrome 配置文件每个 Windows 用户只有一个本地桥接,因此只在一个 Chrome 配置文件中加载 Backdraw。

如需详细日志,请运行 node cli.js debug on 并查看 %USERPROFILE%\.backdraw\logs\host.log(运行 node cli.js debug off 可再次关闭)。

如果 ChatGPT 网页界面发生变化

Backdraw 会操作 chatgpt.com 网页,因此重新设计可能会导致它无法正常工作(例如,无法再找到消息框)。

  1. 运行 node cli.js diagnose(或 node cli.js diagnose <chat link>)。它会打印 Backdraw 所看到的页面结构摘要;--selector CSS 和 --max N 可缩小范围,--worker 会检查正在运行的任务所用的标签页。
  2. 选择器位于 extension/inpage.js 中。
  3. 修复后,再次运行 node install.js:它会复制文件并重新加载正在运行的扩展。
  4. 请提交 issue,说明发生了哪些变化。请先从诊断输出中移除个人信息(聊天标题、项目名称、提示词)。

更新

npx backdraw@latest setup

如果是手动安装:运行 git pull(或重新下载 ZIP),然后运行 node install.js。

这两种方式都会将新文件覆盖旧文件,保留你的设置、任务历史记录和集合,重新注册所有内容,并重新加载正在运行的扩展。如果 Chrome 已关闭,它会在启动时加载新版本。

从「ChatGPT image bridge」(1.x)迁移? 设置过程(或 node install.js)会进行迁移:从 %USERPROFILE%\.claude\chatgpt-image-bridge 复制设置和任务历史记录(不会覆盖现有内容),并移除旧的原生主机和旧的 chatgpt-images MCP 条目。接着,在 chrome://extensions 中移除旧的「Claude ChatGPT Görsel Köprüsü」扩展,并改为加载 %USERPROFILE%\.backdraw\extension;扩展 ID 保持不变。确认 Backdraw 正常工作后,手动删除旧文件夹。

卸载

npx backdraw@latest uninstall --dry-run     shows what would be removed, changes nothing
npx backdraw@latest uninstall

(如果是手动安装:运行 node install.js --uninstall [--dry-run]。)此操作会移除所有浏览器的原生主机注册,以及 Claude Code、Codex、Cursor、VS Code 和 Gemini CLI 中的 backdraw MCP 条目;还会在桌面应用关闭时,从其配置中移除对应条目(每个配置都会先备份),并移除 1.x 使用的名称。然后在 chrome://extensions 中移除扩展。

你的文件会保留在以下两个位置:

  • %USERPROFILE%\.backdraw:程序、你的设置、任务历史记录(含提示词)、预览和日志。
  • 图片文件夹,默认为 Pictures\Backdraw:生成的图片,以及 References 下的参考集合。试运行会列出实际使用的文件夹,卸载前运行 node cli.js status 也会列出这些文件夹。

如需彻底删除,请手动删除这些文件夹。从 1.x 迁移而来?还要删除 %USERPROFILE%\.claude\chatgpt-image-bridge。

隐私与安全

  • 所有操作都在你的 PC 上运行:没有 Backdraw 服务、遥测数据或 API 密钥。
  • Backdraw 不会读取 Cookie、令牌或密码,也不会自动执行登录或 CAPTCHA:这些操作由你自行完成。
  • 本地桥接使用命名管道,而非网络端口;原生主机只接受 Backdraw 扩展的连接。
  • 提示词、任务历史记录、预览和日志保存在 %USERPROFILE%\.backdraw(data\ 和 logs\)中。
  • reference_images 可以将名称以 .png、.jpg、.jpeg、.webp 或 .gif 结尾的任意本地文件附加到 ChatGPT 消息中。当 Claude 处理你不信任的内容时,请检查 Backdraw 的工具调用。

详情、威胁模型以及漏洞报告方式: SECURITY.md。

MCP 协议支持

  • 2026-07-28(无状态):无需握手;每个请求都在 _meta 中指定版本; 支持 server/discover。
  • 旧版 initialize 握手: 2025-11-25、2025-06-18、2025-03-26 和 2024-11-05。
  • 工具标题和注释、进度通知、notifications/cancelled 以及 JSON-RPC 批处理。对于不受支持的版本,会返回错误 -32022 和受支持版本列表。

免责声明与负责任使用

  • 个人使用自己的账户。 Backdraw 旨在供个人在自己的 Chrome 浏览器中使用自己的 ChatGPT 账户生成图像。请勿用它共享账户、作为服务为他人生成图像,或将其用作产品的后端。
  • OpenAI 的条款。 OpenAI 的使用条款规定,用户不得“自动或通过程序提取数据或输出内容”,也不得绕过速率限制或保护措施。Backdraw 会替你操作 ChatGPT 网页,因此使用它可能与这些条款冲突。请阅读条款并自行决定。
  • 账户风险由你承担。 OpenAI 可能会限制、暂停或关闭其认定违反条款的账户。Backdraw 不提供任何保证(MIT 许可证),其作者不对你的账户所发生的情况负责。
  • 一次处理一个任务,保持人工操作的节奏。 任务使用单一队列:在一个后台标签页中处理一个提示词,只有保存图像后才会开始下一个任务。Backdraw 不会并行打开多个对话,也不会自行重新发送提示词(auto_reattach 的单次重新询问除外),并会在每个登录页面或人工验证页面暂停,直到你自行完成操作。
  • 你仍受常规限制约束。 每张图像都会计入你自己的 ChatGPT 使用限额。
  • 与 OpenAI 或 Anthropic 没有关联,也未获得其认可或赞助。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。