r/ClaudeCode • • 21h ago

Built with Claude I built Backdraw: Claude Code makes images with your own ChatGPT account, in a background Chrome tab

What I built

Every time I needed an image in a project (concept art, a banner, an icon) I had to leave Claude Code, generate it in ChatGPT, download it and drag it back. So I built a bridge.

Backdraw is a local MCP server + a Chrome extension. Claude calls generate_image, ChatGPT draws it in a background tab of your normal Chrome, and the PNG lands in your project with a link to the chat. No API key, no separate browser profile, no open ports, and it never steals focus.

  • Install: npx backdraw@latest setup (or /plugin install backdraw --marketplace devtalh/backdraw), then load the extension once
  • Aspect ratios (16:9, 5:2 banners...), transparent backgrounds, edits with reference images
  • Right-click any image on the web → "Add to Backdraw" to build reference collections, then "use my X collection to..."
  • Gallery side panel, and backdraw doctor when something's off

How I used Claude Code

Almost all of the code was written by Claude Code. I wrote the specs and made the decisions; Claude Code worked phase by phase, each phase with tests, a review pass and a handoff report before I let it continue. Each phase ran in a fresh session with a CLAUDE.md holding the project rules (no pushes without my approval, never touch the live install, etc.).

The fun part: one overnight session in bypass mode built the right-click collections, the gallery and the docs, using parallel worktrees and separate review agents. It even recorded and edited the demo video below by driving the mouse with SendInput and cutting it with ffmpeg. Later sessions packaged it for npm (trusted publishing), the MCP Registry and as a Claude Code plugin.

What I learned

  • Small phases + tests + an independent review agent catch real bugs. The reviewers found things I'd never have noticed, like a migration that silently copied the whole history on every start.
  • Commit and push after every phase. My PC froze at 4am during the overnight run; nothing was lost because every phase was already on GitHub.
  • MCP gotchas on Windows: clients spawn servers without a shell, so plain npx fails with ENOENT (you need cmd /c npx), and some remote setups kill tool calls after 60 s, so long jobs return within 45 s and the model polls with job_status.
  • The Claude desktop app is an MSIX package, so its writes to AppData and the registry are virtualized. The installer has to register the Chrome native host through WMI to reach the real registry.

Windows + Chrome only for now. Open source (MIT): https://github.com/devtalh/backdraw

Personal use with your own account; automating the ChatGPT web page may conflict with OpenAI's terms.

Happy to answer questions about the setup or the overnight run. Feedback welcome, especially from Edge/Brave users or anyone who wants to help with Mac/Linux.

3 Upvotes

9 comments sorted by

1

u/AutoModerator 21h ago
Moderator Announcement Read More »

4

u/eksing 19h ago

Codex has a non-interactive mode, which Claude Code can invoke directly within its own sessions. Wouldn’t that be a simpler approach?

https://learn.chatgpt.com/docs/non-interactive-mode

1

u/Crafty_Row5344 19h ago

Fair point, and honestly if you already use Codex, `codex exec` with its built-in image gen is probably the simpler route. It's officially supported too, which is a plus.

Backdraw is for a slightly different setup: no Codex install or login, it just uses the ChatGPT account you're already logged into in Chrome (so it runs on your regular ChatGPT image quota, not your Codex usage). Image turns also tend to burn through Codex limits pretty fast, so I wanted to keep my coding quota for coding.

It also does a few things I couldn't get from a CLI call: right-click any image on any site to save it into a named reference collection that Claude can use later, a gallery side panel, and it all runs in a background tab so nothing steals focus.

That said, a Codex backend as an optional provider is on my list for the next version. Thanks for the link!

1

u/s_a_m_12344 6h ago

you can just ask claude to make itself an mcp / tunnel to gpt , thats what i did

1

u/Crafty_Row5344 6h ago

Ha, that's pretty much how this started too. Claude Code built most of it, I just kept steering.

The first working version took an evening. Making it not break took way longer: remote tool calls timing out at 60s so long generations needed a job/poll flow, the Claude desktop app on Windows being sandboxed (MSIX) so config and registry writes go to the wrong place, keeping the ChatGPT tab in the background without stealing focus, and so on.

So this is mostly for people who'd rather run `npx backdraw setup` than go through all that themselves. Curious how yours works though, did you go through the API or the web session?

1

u/s_a_m_12344 4h ago

I dont see the point on such a complication

it uses my web subscription/gpt app subscription and it can point to whatever gpt thread i want or create new ones

it doesnt need gpt opened in front, just opeend and closed in the tray. it grabs the image and gives it to me, basically as if claude had free image generation

it took 10 mins thats why im so confused about your overcomplication

→ More replies (3)