backdraw 0.0.0-stage → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +635 -2
  3. package/README.tr.md +653 -0
  4. package/bin/backdraw.js +60 -0
  5. package/cli.js +105 -0
  6. package/doctor.js +174 -0
  7. package/extension/_locales/en/messages.json +3 -0
  8. package/extension/_locales/tr/messages.json +3 -0
  9. package/extension/aspect.js +25 -0
  10. package/extension/background.js +1015 -0
  11. package/extension/collection.html +45 -0
  12. package/extension/collection.js +62 -0
  13. package/extension/collections.js +409 -0
  14. package/extension/i18n.js +359 -0
  15. package/extension/icons/icon128.png +0 -0
  16. package/extension/icons/icon16.png +0 -0
  17. package/extension/icons/icon32.png +0 -0
  18. package/extension/icons/icon48.png +0 -0
  19. package/extension/icons/mascot-192.png +0 -0
  20. package/extension/icons/mascot-96.png +0 -0
  21. package/extension/inpage.js +624 -0
  22. package/extension/manifest.json +20 -0
  23. package/extension/menus.js +50 -0
  24. package/extension/popup.css +90 -0
  25. package/extension/popup.html +63 -0
  26. package/extension/popup.js +376 -0
  27. package/extension/settings.js +35 -0
  28. package/extension/setup.js +57 -0
  29. package/extension/sidepanel.css +113 -0
  30. package/extension/sidepanel.html +31 -0
  31. package/extension/sidepanel.js +433 -0
  32. package/extension/theme.css +22 -0
  33. package/host.js +664 -0
  34. package/identity.js +21 -0
  35. package/install.js +427 -0
  36. package/lib/args.js +30 -0
  37. package/lib/aspect.js +85 -0
  38. package/lib/browsers.js +74 -0
  39. package/lib/collection-store.js +288 -0
  40. package/lib/collections.js +192 -0
  41. package/lib/doctor.js +143 -0
  42. package/lib/extension-calls.js +59 -0
  43. package/lib/gallery.js +63 -0
  44. package/lib/limits.js +18 -0
  45. package/lib/mcp-clients.js +178 -0
  46. package/lib/naming.js +25 -0
  47. package/lib/png.js +24 -0
  48. package/lib/projects.js +56 -0
  49. package/lib/prompt.js +25 -0
  50. package/lib/protocol.js +50 -0
  51. package/lib/results.js +170 -0
  52. package/lib/term.js +22 -0
  53. package/lib/toml.js +248 -0
  54. package/mcp-server.js +437 -0
  55. package/package.json +52 -4
  56. package/platform/index.js +14 -0
  57. package/platform/win32.js +268 -0
  58. package/setup.js +213 -0
  59. package/shared.js +118 -0
package/README.tr.md ADDED
@@ -0,0 +1,653 @@
1
+ <p align="center">
2
+ <img src="branding/banner/backdraw-banner.png" alt="Backdraw" width="100%">
3
+ </p>
4
+
5
+ <p align="center">
6
+ <b>Claude, kendi ChatGPT hesabınla, Chrome'da arka plandaki bir sekmede görsel üretsin.<br>API anahtarı yok, ek ücret yok, başında beklemene gerek yok.</b>
7
+ </p>
8
+
9
+ <p align="center">
10
+ <a href="https://www.npmjs.com/package/backdraw"><img src="https://img.shields.io/npm/v/backdraw" alt="npm sürümü"></a>
11
+ </p>
12
+
13
+ <p align="center">
14
+ <img src="branding/demo/backdraw-demo.gif" alt="Web'deki görseller sağ tıkla referans olarak kaydediliyor, sonra Claude Code Backdraw'dan o tarzda bir görsel istiyor; ChatGPT görseli arka plan sekmesinde çiziyor ve dosya bilgisayara kaydediliyor" width="100%">
15
+ </p>
16
+
17
+ <p align="center"><a href="README.md">English</a></p>
18
+
19
+ ---
20
+
21
+ ## Ne yapar?
22
+
23
+ Backdraw, bilgisayarında çalışan bir MCP sunucusu ve bir Chrome eklentisinden oluşur. Claude'dan
24
+ "ChatGPT ile" bir görsel istediğinde Backdraw, zaten giriş yapmış olduğun Chrome'da ChatGPT'yi arka
25
+ plandaki bir sekmede açar. İstemi gönderir, görseli bekler ve bilgisayarına kaydeder. Claude'a dosya
26
+ yolu, bir önizleme ve sohbetin bağlantısı döner.
27
+
28
+ - Yeni görseller üret ya da bir görseli referans olarak ekleyip düzenlet.
29
+ - Bir en-boy oranı (`16:9`, banner için `4:1`, …) ya da şeffaf arka plan iste.
30
+ - Herhangi bir sitedeki görselleri sağ tıklayarak kaydet, koleksiyon olarak tekrar tekrar kullan.
31
+ - Ürettiğin her şeye galeri yan panelinden göz at.
32
+ - Saf Node.js, sıfır npm bağımlılığı. Her şey senin bilgisayarında çalışır.
33
+
34
+ > **Kişisel kullanım içindir: kendi ChatGPT hesabınla ve riski sana ait olarak.** ChatGPT web
35
+ > sayfasını otomatikleştirmek OpenAI'ın koşullarıyla çelişebilir; başlamadan önce
36
+ > [Sorumluluk reddi ve sorumlu kullanım](#sorumluluk-reddi-ve-sorumlu-kullanım) bölümünü oku.
37
+
38
+ ## Neden Backdraw?
39
+
40
+ - **Her gün kullandığın Chrome.** Ayrı bir tarayıcı profili, ikinci bir giriş ya da otomasyon
41
+ tarayıcısı yok: Backdraw, ChatGPT'ye zaten giriş yapmış olduğun Chrome'da çalışır.
42
+ - **Seni rahatsız etmez.** İş, sessize alınmış ve hiç odak almayan bir arka plan sekmesinde yapılır;
43
+ görsel hazırlanırken sen çalışmaya devam edersin.
44
+ - **Açık port yok.** Parçalar Chrome native messaging ve yalnızca senin Windows kullanıcının
45
+ açabildiği bir named pipe üzerinden konuşur. DevTools portu (9222 gibi) ya da yerel bir web
46
+ sunucusu yoktur.
47
+ - **API anahtarı yok.** ChatGPT planını kullanır; her görsel normal ChatGPT limitlerinden düşer.
48
+ - **Web'den referanslar.** Herhangi bir sitedeki görselleri sağ tıklayarak topla, sonra onların
49
+ tarzında üret.
50
+ - Ürettiğin her şey için Chrome'un yan panelinde bir **galeri**.
51
+ - **Tek komutla kurulum:** `npx backdraw@latest setup`. Sana kalan tek adım eklentiyi yüklemek.
52
+
53
+ ### Benzer projelerle karşılaştırma
54
+
55
+ Diğer açık kaynak projeler farklı yollar izliyor ve birçoğu Backdraw'ın yapmadığı şeyleri yapıyor
56
+ (macOS ya da Linux desteği, API modu, bir sunucuda çalışma). Her satır 25 Ekim 2026'da projenin
57
+ README'si ve kaynak koduyla kontrol edildi; **?** emin olamadığımız yerler. Bir hata mı gördün?
58
+ Lütfen bir [issue aç](../../issues).
59
+
60
+ | Proje | Her gün kullandığın Chrome (ayrı profil ya da giriş yok) | Arka plan sekmesi (odak çalmaz) | Açık port | API anahtarı gerekir mi | Sağ tıkla referans koleksiyonu | Galeri | Platformlar |
61
+ |---|---|---|---|---|---|---|---|
62
+ | **Backdraw** | Evet | Evet | Yok (native messaging + named pipe) | Hayır | Evet | Evet | Windows |
63
+ | [lownamlee/gpt-image-2-mcp](https://github.com/lownamlee/gpt-image-2-mcp) | Hayır (kendi tarayıcı profili) | Kısmen¹ | Yok | İsteğe bağlı (API modu) | Hayır | Hayır | ? |
64
+ | [nothariharan/image-gen](https://github.com/nothariharan/image-gen) | Hayır (kendi Edge profili) | Hayır | Var (CDP 9222) | Hayır | Hayır | Hayır | Windows; macOS/Linux elle |
65
+ | [goofyshwetank/mcp-chatgpt-gemini-image](https://github.com/goofyshwetank/mcp-chatgpt-gemini-image) | Hayır (kendi Chromium profili) | Hayır | Yok | Hayır | Hayır | Hayır | ? |
66
+ | [Dasemu/chatgpt-imagegen-mcp](https://github.com/Dasemu/chatgpt-imagegen-mcp) | Hayır (kendi profili, bir sunucuda) | Kısmen² | Var (HTTP 8088, uzak sunucu) | Hayır (kendi sunucu token'ı) | Hayır | Hayır | Linux sunucu |
67
+ | [Codex'in yerleşik `$imagegen`'i](https://learn.chatgpt.com/codex/image-generation) | – (tarayıcı yok) | – | Yok | Hayır (Codex girişi) | Hayır | ? | ? |
68
+ | [Sateezg/codex-bridge](https://github.com/Sateezg/codex-bridge) | – (tarayıcı yok, Codex'i çalıştırır) | – | Yok | Hayır (Codex girişi) | Hayır | Hayır | macOS, Linux |
69
+
70
+ ¹ Kendi tarayıcı penceresi; ChatGPT hazır olunca ekran dışına taşınır ya da simge durumuna küçültülür.
71
+ ² Sunucuda sanal bir ekranda (Xvfb) ya da başsız (headless) çalışan bir tarayıcı.
72
+
73
+ Codex kullanıcılarının zaten yerleşik bir görsel üretimi var; Backdraw esas olarak Claude Code,
74
+ Claude masaüstü uygulaması ve VS Code içindir.
75
+
76
+ ## Nasıl çalışır?
77
+
78
+ ```
79
+ Claude Code / Claude masaüstü uygulaması (MCP istemcisi)
80
+ │ stdio üzerinden MCP
81
+ ▼
82
+ mcp-server.js ──── named pipe, yalnızca senin Windows kullanıcın ────► host.js
83
+ │ Chrome native messaging
84
+ ▼
85
+ Backdraw Chrome eklentisi
86
+ │ arka plan sekmesi
87
+ ▼
88
+ chatgpt.com → Projen → yeni sohbet → görsel
89
+ ```
90
+
91
+ - `mcp-server.js`, Claude'un konuştuğu parçadır. Her araç çağrısını `host.js`'e iletir.
92
+ - `host.js`'i, eklenti bağlandığında Chrome başlatır. İş kuyruğunu yürütür (aynı anda tek iş),
93
+ görselleri kaydeder ve iş geçmişini `%USERPROFILE%\.backdraw\data` içinde tutar.
94
+ - Eklenti chatgpt.com'u, seçtiğin ChatGPT Projesi içinde bir **arka plan sekmesinde** açar. Sekme
95
+ hiçbir zaman öne gelmez ve sessize alınır, hiçbir pencere odak almaz, fare ve klavyen kullanılmaz:
96
+ yalnızca o sekmenin içinde sentetik olaylar kullanılır. İş bitince sekme kapanır; o an o sekmeye
97
+ bakıyorsan açık bırakılır.
98
+ - **API anahtarı gerekmez.** Backdraw, Chrome'da zaten açık olan ChatGPT oturumunu kullanır. Cookie,
99
+ token ya da şifre asla okunmaz.
100
+ - **ChatGPT'ye gönderdiklerin (istem ve varsa referans görseller) dışında hiçbir şey bilgisayarından
101
+ çıkmaz.** Backdraw'ın bir sunucusu yok, telemetri de yok.
102
+
103
+ Görseller Resimler klasöründe `Backdraw` altına, saat ve istemden oluşan bir adla kaydedilir, örneğin
104
+ `20261021-153012_a-cozy-reading-nook.png`.
105
+
106
+ ## Gereksinimler
107
+
108
+ | | |
109
+ |---|---|
110
+ | İşletim sistemi | Windows 10 ya da 11 |
111
+ | Tarayıcı | Google Chrome 116 ya da daha yeni (Edge, Brave ve Chromium için de kayıt yapılır ama yalnızca Chrome'da denendi) |
112
+ | Çalışma ortamı | Node.js 20 ya da daha yeni |
113
+ | Hesap | Görsel üretebilen, Chrome'da giriş yapılmış bir ChatGPT hesabı |
114
+ | İstemci | Claude Code, Claude masaüstü uygulaması, Codex, Cursor, VS Code ya da Gemini CLI (veya stdio sunucusu çalıştırabilen başka bir MCP istemcisi) |
115
+
116
+ Şimdilik yalnızca Windows. Kod bir platform modülüne ayrılmış durumda; macOS/Linux katkılarına
117
+ açığız. İşletim sistemine özgü her şey (named pipe, native host kaydı, kullanıcı klasörleri)
118
+ `platform/win32.js` içinde.
119
+
120
+ ## Kurulum
121
+
122
+ ### Hızlı kurulum
123
+
124
+ Bunu PowerShell'de ya da cmd'de çalıştır (yönetici izni gerekmez):
125
+
126
+ ```
127
+ npx backdraw@latest setup
128
+ ```
129
+
130
+ Bu komut [npm'deki `backdraw` paketini](https://www.npmjs.com/package/backdraw) çalıştırır.
131
+
132
+ `setup`, tarayıcıdaki tek bir tıklama dışında her şeyi yapar:
133
+
134
+ 1. Backdraw'ı `%USERPROFILE%\.backdraw` klasörüne kopyalar (npx'in kendi kopyası geçicidir) ve görsel
135
+ klasörünü `Pictures\Backdraw` olarak ayarlar (referans koleksiyonları `Pictures\Backdraw\References`
136
+ altına gider). Yeniden çalıştırınca Backdraw'ı günceller; ayarların, iş geçmişin ve
137
+ koleksiyonların korunur.
138
+ 2. Native messaging host'u senin Windows kullanıcın için, bulduğu her tarayıcıya (Chrome, Edge,
139
+ Brave, Chromium) kaydeder.
140
+ 3. Bulduğu MCP istemcilerini (Claude Code, Claude masaüstü uygulaması, Codex, Cursor, VS Code,
141
+ Gemini CLI) listeler ve Backdraw'ın hangilerine ekleneceğini sorar. Yalnızca `backdraw` girdisi
142
+ eklenir ya da güncellenir; her ayar dosyasının değişmeden önce zaman damgalı bir `.bak` yedeği
143
+ alınır. `--yes` bulduğu tüm istemcileri, `--clients=claude-code,cursor` tam olarak bunları seçer.
144
+ 4. Eklenti klasörünü ve tarayıcının eklentiler sayfasını açar, klasör yolunu panoya kopyalar ve
145
+ sana kalan tek adımı, **eklentiyi yüklemeni** bekler:
146
+ 1. **Geliştirici modu**nu aç (sağ üstte),
147
+ 2. **Paketlenmemiş öğe yükle**ye tıkla,
148
+ 3. klasörü seç (yolu Ctrl+V ile yapıştırabilirsin).
149
+
150
+ Eklenti bağlandığı anda setup **✓ Ready** ve örnek bir istem yazar.
151
+
152
+ Native host'un adı, projenin eski GitHub kullanıcı adından gelen
153
+ `io.github.muhammedtalha04.backdraw` olarak kalıyor: adı değiştirmek mevcut kurulumları bozardı.
154
+
155
+ ### İstemcinden kur
156
+
157
+ MCP istemcin Backdraw'ı kendisi de ekleyebilir; o zaman sunucuyu `npx backdraw@latest mcp` ile
158
+ başlatır. Tarayıcı tarafı yine de bilgisayarda bir kerelik bir kurulum ister; bu kurulum istemcilere
159
+ dokunmaz:
160
+
161
+ ```
162
+ npx backdraw@latest setup --clients=none
163
+ ```
164
+
165
+ | İstemci | Backdraw'ı ekle |
166
+ |---|---|
167
+ | Claude Code | `/plugin install backdraw --marketplace devtalh/backdraw` (Claude Code 2.1.275 ya da daha yeni; ya da önce `/plugin marketplace add devtalh/backdraw`, sonra `/plugin install backdraw@backdraw`). `/backdraw:setup` tarayıcı adımını anlatır. |
168
+ | Cursor | [![Backdraw'ı Cursor'a ekle](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/install-mcp?name=backdraw&config=eyJjb21tYW5kIjoiY21kIiwiYXJncyI6WyIvYyIsIm5weCIsIi15IiwiYmFja2RyYXdAbGF0ZXN0IiwibWNwIl19) |
169
+ | VS Code | [![Backdraw'ı VS Code'a kur](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=backdraw&config=%7B%22type%22%3A%22stdio%22%2C%22command%22%3A%22cmd%22%2C%22args%22%3A%5B%22%2Fc%22%2C%22npx%22%2C%22-y%22%2C%22backdraw%40latest%22%2C%22mcp%22%5D%7D) |
170
+ | Codex | `codex mcp add backdraw -- cmd /c npx -y backdraw@latest mcp` |
171
+ | Gemini CLI | `npx backdraw@latest setup --clients=gemini` |
172
+
173
+ Windows'ta komut `cmd /c` üzerinden çalışır, çünkü istemciler `npx`'i kabuk olmadan başlatır. Her
174
+ istemci için tek yol kullan: setup Backdraw'ı Claude Code'a zaten eklediyse, plugin aynı araçlarla
175
+ ikinci bir sunucu başlatır.
176
+
177
+ ### Elle kurulum
178
+
179
+ 1. **Kodu indir.** Depoyu git ile klonla ya da ZIP olarak indir (**Code** → **Download ZIP**) ve
180
+ aç:
181
+
182
+ ```
183
+ git clone https://github.com/devtalh/backdraw.git
184
+ cd backdraw
185
+ ```
186
+ 2. **Kurulumu çalıştır.** O klasörde (yönetici izni gerekmez):
187
+
188
+ ```
189
+ node install.js
190
+ ```
191
+
192
+ Yukarıdaki 1. ve 2. adımları yapar ve Backdraw'ı Claude Code'a ekler (kullanıcı düzeyinde).
193
+ Diğer istemciler için bunun yerine `node bin/backdraw.js setup` çalıştır ya da
194
+ [Kullanım](#kullanım) bölümüne bak.
195
+ 3. **Eklentiyi bir kez yükle.** `chrome://extensions` sayfasını aç, **Geliştirici modu**nu aç,
196
+ **Paketlenmemiş öğe yükle**ye tıkla ve `%USERPROFILE%\.backdraw\extension` klasörünü seç.
197
+
198
+ ### Açılır pencerede bitir
199
+
200
+ 1. **Açılır pencereyi aç.** Araç çubuğundaki Backdraw simgesine tıkla (yapboz menüsünden
201
+ sabitleyebilirsin). Her şey hazır olana kadar pencerede, her adımın çözümüyle birlikte bir kurulum
202
+ listesi görünür:
203
+ 1. köprü bağlı,
204
+ 2. ChatGPT'de giriş yapılmış,
205
+ 3. bir ChatGPT Projesi seçili,
206
+ 4. hazır: Claude'a yapıştırabileceğin örnek bir istem.
207
+ 2. **Bir ChatGPT Projesi oluştur ve seç.** ChatGPT'de görsellerin için bir Proje oluştur (örneğin
208
+ "Backdraw"), onu aç, Backdraw simgesine tıkla ve **“Backdraw” projesini kullan** düğmesine bas.
209
+ Claude'a da söyleyebilirsin: *"ChatGPT'deki Backdraw projemi görseller için seç."* Her yeni
210
+ görsel sohbeti o Projenin içinde açılır.
211
+
212
+ Açılır pencerede dil (Otomatik / English / Türkçe) ve tema (Otomatik / Açık / Koyu) ayarları da var.
213
+ Bir şey çalışmazsa [`npx backdraw@latest doctor`](#doktor) çalıştır.
214
+
215
+ ## Kullanım
216
+
217
+ ### Claude Code'dan
218
+
219
+ Kurulumdan sonra **yeni** bir Claude Code oturumu başlat (MCP sunucuları oturum açılırken yüklenir)
220
+ ve isteğini doğal dille, istediğin dilde yaz. `backdraw` sunucusu Claude'a şu araçları verir:
221
+ `generate_image`, `job_status`, `cancel_job`, `fetch_images`, `list_projects`, `select_project` ve
222
+ `list_collections` (bkz. [Araç başvurusu](#araç-başvurusu)).
223
+
224
+ ### Claude masaüstü uygulamasından (sohbet)
225
+
226
+ Masaüstü uygulaması sohbetler için kendi MCP ayarlarını tutar. Claude bu dosyayı kapanırken yeniden
227
+ yazar; bu yüzden Backdraw onu yalnızca Claude kapalıyken değiştirir. Setup Claude'u açık bulduysa
228
+ Backdraw'ı sonra ekle:
229
+
230
+ 1. Claude'u **tamamen** kapat, sistem tepsisinden de.
231
+ 2. Şunu **PowerShell**'den çalıştır (bir Claude oturumundan değil):
232
+
233
+ ```powershell
234
+ npx backdraw@latest setup --clients=claude-desktop
235
+ ```
236
+
237
+ (Elle kurulumda: `~\.backdraw` içinde `node install.js --desktop`.) Her ayar dosyası
238
+ değiştirilmeden önce zaman damgalı bir `.bak` yedeği alınır.
239
+ 3. Claude'u yeniden başlat. Backdraw yeni sohbetlerde kullanılabilir.
240
+
241
+ ### Başka MCP istemcilerinden
242
+
243
+ `setup`, Backdraw'ı Codex, Cursor, VS Code ve Gemini CLI'ye de ekler: sorduğunda onları seç ya da
244
+ `npx backdraw@latest setup --clients=codex,cursor,vscode,gemini` çalıştır. Komut olarak
245
+ `node.exe`'nin tam yolunu yazar; böylece `PATH`'ini görmeyen bir istemci de onu bulur. Sonra
246
+ istemciyi yeniden başlat ya da yeni bir oturum aç.
247
+
248
+ VS Code ve Gemini CLI, ayar dosyalarında yoruma izin verir. Böyle bir dosyayı yeniden yazmak
249
+ yorumları silerdi; bu yüzden setup yorum içeren bir dosyaya dokunmaz ve bunu söyler. O durumda
250
+ girdiyi elle ekle.
251
+
252
+ Backdraw sıradan bir stdio MCP sunucusudur: `node %USERPROFILE%\.backdraw\mcp-server.js`. Elle
253
+ eklemek için aşağıdaki örnekleri kullan. Ayar dosyalarında `C:/Users/you` yerine kendi kullanıcı
254
+ klasörünü yaz (cmd'de `echo %USERPROFILE%` gösterir). Eğik çizgi (`/`) Windows'ta çalışır ve JSON'da
255
+ kaçış gerektirmez. Aşağıdaki `~` senin kullanıcı klasörün. PowerShell komutları yolu kendileri
256
+ doldurur.
257
+
258
+ **Codex** (CLI, IDE eklentisi ve uygulama aynı `~\.codex\config.toml` dosyasını kullanır;
259
+ [belgeler](https://learn.chatgpt.com/docs/extend/mcp)). PowerShell'den:
260
+
261
+ ```powershell
262
+ codex mcp add backdraw -- node "$env:USERPROFILE\.backdraw\mcp-server.js"
263
+ ```
264
+
265
+ ya da `config.toml` içinde:
266
+
267
+ ```toml
268
+ [mcp_servers.backdraw]
269
+ command = "node"
270
+ args = ["C:/Users/you/.backdraw/mcp-server.js"]
271
+ ```
272
+
273
+ **Cursor** (tüm projeler için `~\.cursor\mcp.json`, tek proje için o projede `.cursor\mcp.json`;
274
+ [belgeler](https://cursor.com/docs/context/mcp)). Cursor `${userHome}` değişkenini kendisi doldurur:
275
+
276
+ ```json
277
+ {
278
+ "mcpServers": {
279
+ "backdraw": {
280
+ "type": "stdio",
281
+ "command": "node",
282
+ "args": ["${userHome}/.backdraw/mcp-server.js"]
283
+ }
284
+ }
285
+ }
286
+ ```
287
+
288
+ **VS Code** (GitHub Copilot ajan modu: tüm çalışma alanları için **MCP: Open User Configuration**
289
+ komutunu çalıştır ya da bir çalışma alanında `.vscode\mcp.json` oluştur;
290
+ [belgeler](https://code.visualstudio.com/docs/copilot/customization/mcp-servers)). Burada anahtar
291
+ `servers`'tır ve `type` zorunludur:
292
+
293
+ ```json
294
+ {
295
+ "servers": {
296
+ "backdraw": {
297
+ "type": "stdio",
298
+ "command": "node",
299
+ "args": ["C:/Users/you/.backdraw/mcp-server.js"]
300
+ }
301
+ }
302
+ }
303
+ ```
304
+
305
+ **Gemini CLI** (`~\.gemini\settings.json`;
306
+ [belgeler](https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/mcp-server.md)).
307
+ `-s user` onu tüm projeler için ekler (varsayılan yalnızca o anki projedir). PowerShell'den:
308
+
309
+ ```powershell
310
+ gemini mcp add -s user backdraw node "$env:USERPROFILE\.backdraw\mcp-server.js"
311
+ ```
312
+
313
+ ya da `settings.json` içinde:
314
+
315
+ ```json
316
+ {
317
+ "mcpServers": {
318
+ "backdraw": {
319
+ "command": "node",
320
+ "args": ["C:/Users/you/.backdraw/mcp-server.js"]
321
+ }
322
+ }
323
+ }
324
+ ```
325
+
326
+ ## Örnek istemler
327
+
328
+ | Sen şöyle yazarsın | Claude `generate_image`'a şunu geçer |
329
+ |---|---|
330
+ | *ChatGPT ile bir görsel üret: yağmurlu bir pencerenin önünde sıcak lamba ışıklı, rahat bir okuma köşesi.* | ayrıntılı bir `prompt` |
331
+ | *ChatGPT ile blogum için 16:9 bir banner yap: "Gece Vardiyası Notları", alacakaranlıkta neon bir şehir.* | `aspect_ratio: "16:9"` |
332
+ | *ChatGPT ile şeffaf arka planlı, mutlu bir kaktüs çıkartması yap.* | `transparent_background: true` |
333
+ | *`C:\yol\foto.png` dosyasını ChatGPT ile düzenle: gökyüzünü gün batımına çevir, gerisi aynı kalsın.* | `reference_images: ["C:\\yol\\foto.png"]` |
334
+ | *"Kediler" koleksiyonumu referans alarak ChatGPT ile bir afiş yap.* | `reference_collection: "Kediler"` |
335
+
336
+ Bir görseli düzenletmek için Backdraw'ın onu bilgisayarındaki bir dosya olarak alması gerekir:
337
+ Claude'a dosyanın tam yolunu ver (yaz ya da yapıştır), Claude da onu `reference_images` ile
338
+ geçsin. Önceki çağrıların kaydettiği dosyalar doğrudan kullanılabilir. Düzenleme için en güvenilir
339
+ yol, görselin eklendiği yeni bir sohbettir.
340
+
341
+ *"ChatGPT görsel işinin durumu ne?"* ya da *"O işi iptal et."* diye de sorabilirsin.
342
+
343
+ ## Referans koleksiyonları
344
+
345
+ Web'den görseller topla, sonra onları referans olarak kullan.
346
+
347
+ 1. Herhangi bir web sayfasında bir görsele sağ tıkla → **Backdraw'a ekle** → bir koleksiyon seç ya
348
+ da **Yeni koleksiyon…** (küçük bir pencere ad sorar).
349
+ 2. Sayfada kısa bir not bunu onaylar, örneğin "Kediler koleksiyonuna eklendi · 5 görsel". Chrome'un
350
+ eklentilerin bir şey göstermesine izin vermediği sayfalarda bunun yerine araç çubuğu simgesinde
351
+ kısa bir ✓ (hata olursa kırmızı !) yanıp söner.
352
+ 3. Claude'dan koleksiyonu adıyla kullanmasını iste.
353
+
354
+ Her koleksiyon bir klasördür: `Pictures\Backdraw\References\<koleksiyon>\`. İçinde görseller
355
+ (adlarını Backdraw verir: `001_<ad>.png`, …), her görselin kaynak sayfasını ve tarihini tutan bir
356
+ `collection.json` ve bir `thumbs\` klasörü bulunur. Aynı görseli bir koleksiyona iki kez eklersen tek
357
+ kopya tutulur. PNG, JPEG, WebP ve GIF olduğu gibi saklanır; Chrome'un gösterebildiği diğer biçimler
358
+ (AVIF, BMP ya da SVG gibi) PNG olarak kaydedilir. Bir görsel dosyasını elle silersen koleksiyondan da
359
+ düşer.
360
+
361
+ Açılır penceredeki **Koleksiyonlar** bölümü koleksiyonlarını listeler. Birini açınca küçük
362
+ resimlerini görebilir, görsel silebilir, koleksiyonu yeniden adlandırabilir ya da silebilirsin.
363
+
364
+ | Sınır | |
365
+ |---|---|
366
+ | Mesaj başına referans | 16 (`reference_images` ve koleksiyon görselleri birlikte; ChatGPT denemede 16'sını da kabul etti) |
367
+ | Tek referans | 20 MB |
368
+ | Bir mesajın tüm referansları | 80 MB |
369
+ | Tek koleksiyon görseli | 25 MB (20 MB'tan büyük bir görsel koleksiyonda kalır; isteklerde dışarıda bırakılır ve bu sonuçta yazılır, `reference_files` ile adı verilirse istek bir hata mesajıyla reddedilir) |
370
+
371
+ Bir istek, koleksiyonun boş yerlere sığan **en yeni** görsellerini kullanır. Belirli görselleri
372
+ istiyorsan adlarını söyle: Claude onların dosya adlarını (`list_collections`'tan) `reference_files`
373
+ ile geçer.
374
+
375
+ ## Boyutlar ve şeffaflık
376
+
377
+ ### `aspect_ratio`
378
+
379
+ Tam sayılarla `G:Y` (genişlik:yükseklik), `1:4` ile `4:1` arasında herhangi bir oran: `1:1`, `3:2`,
380
+ `2:3`, `4:5`, `16:9`, `9:16`, `5:2` (Discord banner), `3:1`, `4:1`, … `1920:1080` otomatik olarak
381
+ `16:9`'a sadeleşir; `1.5:1` değil `3:2` yaz. Birkaç ad da çalışır: `square`, `landscape` (3:2),
382
+ `portrait` (2:3), `wide` (16:9), `tall` (9:16), `discord-banner` (5:2).
383
+
384
+ - **1:3 ile 3:1 arası:** Bunları ChatGPT kendisi, istenen biçimde yaklaşık 1,57 megapiksel olarak
385
+ çizer. Ekim 2026'da görülenler: 1254×1254 (1:1), 1536×1024 (3:2), 1672×941 (16:9), 1983×793 (5:2).
386
+ - **4:1 / 1:4'e kadar:** ChatGPT'den 3:1 (ya da 1:3) istenir ve konuyu, yüzleri ve yazıları kırpmadan
387
+ sonra kalacak bantta tutması söylenir; ardından Backdraw görseli ortadan kırpar.
388
+ - İstenen orandan %1'den fazla sapan bir görsel ortadan kırpılır. Kırpılmış hali ana dosyadır
389
+ (`<ad>.png`), ChatGPT'nin orijinali de yanında `<ad>_full.<uzantı>` olarak kalır. `output_dir`
390
+ kopyalarına yalnızca ana dosya gider.
391
+ - ChatGPT başka bir biçimde çizdiyse ve kırpma planlanandan fazlasını kesmek zorunda kaldıysa, sonuç
392
+ kesilmiş bir konu ya da yazı olup olmadığına bakmanı söyler.
393
+
394
+ ### `transparent_background`
395
+
396
+ `transparent_background: true`, ChatGPT'den yalnızca konuyu gösteren, alfa kanallı bir PNG ister.
397
+ ChatGPT bunu her zaman yapmaz; bu yüzden Backdraw kaydedilen görseli kontrol eder: PNG başlığını
398
+ okur (alfa kanalı ya da `tRNS` bölümü) ve saydam piksellerin oranını ölçer. Sonuçta ya şu yazar:
399
+
400
+ ```
401
+ Transparent background: yes — PNG with an alpha channel, 61% of the pixels are transparent.
402
+ ```
403
+
404
+ ya da satır `⚠ TRANSPARENT BACKGROUND MISSING` ile başlar (alfa kanalı yok ya da piksellerin en fazla %2'si saydam).
405
+ Bu durumda yeni bir sohbette bir kez daha dene ya da arka planı başka bir araçla kaldır. Şeffaf
406
+ görsellerin önizlemeleri dama tahtası deseni üzerinde çizilir.
407
+
408
+ ## Galeri yan paneli
409
+
410
+ Açılır pencerede **Galeriyi aç**'a tıkla; Backdraw'ın yan paneli bulunduğun sayfanın yanında açılır.
411
+ Araç çubuğundaki Backdraw simgesine sağ tıklayıp **Backdraw galerisini aç**'ı da seçebilirsin.
412
+
413
+ - **Üstte:** sürmekte olan iş (adım, iş numarası ve geçen süre; ChatGPT'nin mesajı için üzerine gel),
414
+ "Boşta" ya da bağlı değil uyarısı.
415
+ - **Galeri:** ürettiğin görseller, en yenisi önce, 12'şer 12'şer (**Daha fazla yükle**). Her birinde
416
+ küçük resim, tarih, istem (üzerine gelince ilk 300 karakteri görünür), boyut ve istendiyse en-boy
417
+ oranı.
418
+ - **Her görsel için:** **Sohbeti aç**, **Klasörde göster** (Gezgin dosya seçili olarak açılır),
419
+ **Yolu kopyala** ve **Koleksiyona ekle** (var olan bir koleksiyon ya da **Yeni koleksiyon…**).
420
+
421
+ Galeri, iş geçmişindeki görselleri listeler; geçmiş son 100 işi tutar. Küçük resimler 7 gün saklanan
422
+ önizlemelerden gelir; daha eski görsellerde yer tutucu görünür. Görsel dosyalarının kendisi görsel
423
+ klasöründe kalır.
424
+
425
+ ## Araç başvurusu
426
+
427
+ | Araç | Parametreler (varsayılan) | Ne yapar |
428
+ |---|---|---|
429
+ | `generate_image` | `prompt` (zorunlu), `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) | Projende yeni bir sohbet başlatır (ya da `conversation_url`'deki sohbete devam eder) ve görsel üretir veya düzenler. |
430
+ | `job_status` | `job_id`, `wait_seconds` (45), `include_preview` (true) | Bir işi bekler ve durumunu bildirir. `job_id` olmadan köprünün durumunu verir (Chrome bağlı mı, seçili Proje, görsel klasörü, kuyruk, son işler). |
431
+ | `cancel_job` | `job_id` (zorunlu) | Kuyruktaki ya da çalışan bir işi iptal eder. ChatGPT üretmeye başladıysa arka plan sekmesinde Durdur'a basar. |
432
+ | `fetch_images` | `conversation_url` (zorunlu), `aspect_ratio`, `output_dir`, `wait_seconds` (45), `include_preview` (true) | Var olan bir sohbetin son cevabındaki görselleri, hiçbir şey göndermeden indirir. |
433
+ | `list_projects` | – | ChatGPT Projelerini listeler ve seçili olanı gösterir. |
434
+ | `select_project` | `name` ya da `url` | Yeni görsel sohbetlerinin açılacağı Projeyi seçer ve hatırlar (ad esnek eşleştirilir). |
435
+ | `list_collections` | – | Referans koleksiyonlarını görsel sayıları, klasörleri ve dosyalarıyla (en yenisi önce) listeler. |
436
+
437
+ - `reference_images`: yerel png / jpg / webp / gif dosyaları, en fazla 16; koleksiyon görselleri
438
+ kalan yerleri doldurur.
439
+ - `reference_files`: `list_collections`'taki dosya adları; `reference_collection`'dan yalnızca bu
440
+ görselleri ekler.
441
+ - `conversation_url`: bir `https://chatgpt.com/` sohbet bağlantısı. Kısa ek istekler için uygundur;
442
+ birebir düzenlemelerde `reference_images` ile yeni bir sohbet daha iyi sonuç verir.
443
+ - `auto_reattach`: ChatGPT görseli göremediğini söyleyip tekrar isterse görseli kendisi ekler ve bir
444
+ kez daha sorar.
445
+ - `send_as_is`: istemi, Backdraw'ın eklediği kısa talimat olmadan, olduğu gibi gönderir (örneğin
446
+ ChatGPT'nin sorduğu bir soruyu yanıtlamak için).
447
+ - `output_dir`: sonucu bu klasöre de kopyalar; görsel klasöründe her zaman bir kopya kalır.
448
+ - `wait_seconds`: 0 ile 900 arası.
449
+
450
+ Bir sonuç şunları söyleyebilir:
451
+
452
+ | Sonuç | Anlamı |
453
+ |---|---|
454
+ | `SUCCESS` | Kaydedilen dosya yol(lar)ı, sohbet bağlantısı ve bir önizleme. Düzenlemelerde bir **düzenleme kontrolü** (edit check) satırı da gelir. |
455
+ | `STILL RUNNING` / `QUEUED` | Henüz bitmedi; Claude iş numarasıyla `job_status`'u çağırmaya devam eder. |
456
+ | `NEEDS USER ACTION` | ChatGPT bir giriş ya da insan doğrulaması sayfası gösteriyor (bkz. [Sorun giderme](#sorun-giderme)). |
457
+ | `NEEDS REFERENCE IMAGE` | ChatGPT düzenlemesi gereken görsele erişemedi. Sonuç, o sohbetten daha önce kaydedilmiş görselleri listeler. |
458
+ | `CHATGPT REPLIED WITHOUT AN IMAGE` | ChatGPT metinle cevap verdi (bir soru, bir ret, bir limit); metnin ilk 3.000 karakteri sonuçtadır. |
459
+ | `FAILED` / `CANCELLED` | Nedeniyle ve varsa sohbet bağlantısıyla birlikte. |
460
+
461
+ ## Hızlı dönüş
462
+
463
+ Görsel üretmek genellikle 1-3 dakika sürer, ama `generate_image`, `fetch_images` ve `job_status`
464
+ varsayılan olarak **45 saniye** içinde döner (`wait_seconds`). Görsel henüz hazır değilse sonuç
465
+ `STILL RUNNING` ya da `QUEUED` olur (kuyruk sırasıyla birlikte) ve bir iş numarası içerir; Claude iş
466
+ bitene kadar `job_status(job_id, wait_seconds=45)` çağırmaya devam eder.
467
+
468
+ Bilgisayarına buluttan bağlanan istemciler çoğu zaman bir araç çağrısından 60 saniye sonra vazgeçer;
469
+ 45 saniyelik varsayılan bu çağrıları o sınırın altında tutar. İstemci ilerleme bilgisi isterse
470
+ Backdraw beklerken ilerleme bildirimleri gönderir. İstemcide bir araç çağrısını iptal etmek yalnızca
471
+ beklemeyi durdurur; iş, `cancel_job` onu durdurana kadar sürer.
472
+
473
+ ## Komut satırı (CLI)
474
+
475
+ Kurulum ve sorun giderme için bunları Backdraw klasöründe çalıştır (`%USERPROFILE%\.backdraw` ya da
476
+ kurulumu yaptığın klasör). Her yerden `npx backdraw <komut>` aynı komutları çalıştırır, örneğin
477
+ `npx backdraw status`. `npm run status`, `node cli.js status` ile aynıdır. `backdraw mcp`, MCP
478
+ sunucusunun kendisini stdio üzerinde çalıştırır; MCP istemcilerinin başlattığı budur.
479
+
480
+ ```
481
+ node cli.js status Köprünün durumu (Chrome bağlı mı, seçili proje, kuyruk)
482
+ node cli.js projects ChatGPT projelerini listeler
483
+ node cli.js select <ad | bağlantı> Görsellerin üretileceği projeyi seçer
484
+ node cli.js generate "<istem>" [--ref GÖRSEL]... [--url SOHBET_LİNKİ] [--aspect G:Y] [--transparent]
485
+ [--reattach] [--out KLASÖR] [--raw] [--wait 300] [--collection AD [--file DOSYA]...]
486
+ Görsel üretir (--ref: referans ya da düzenlenecek görsel, en fazla 16)
487
+ node cli.js collect <sohbet linki> [--aspect G:Y] [--out KLASÖR]
488
+ Var olan bir sohbetin son görsellerini indirir (bir şey göndermez)
489
+ node cli.js job <id> [--wait 60] Bir işin durumunu gösterir
490
+ node cli.js cancel <id> Bir işi iptal eder
491
+ node cli.js collections Referans koleksiyonlarını listeler
492
+ node cli.js collection <ad> Bir koleksiyonu ve görsellerini gösterir
493
+ node cli.js outdir <klasör> Merkezi görsel klasörünü değiştirir
494
+ node cli.js debug on|off Ayrıntılı kayıt (logs\host.log)
495
+ node cli.js diagnose [link] [--selector CSS] [--max N] [--worker]
496
+ Sayfa tanılama
497
+ node cli.js reload Chrome eklentisini yeniden yükler
498
+ ```
499
+
500
+ Örnekler:
501
+
502
+ ```
503
+ node cli.js generate "şafakta bir deniz feneri, suluboya" --aspect 16:9
504
+ node cli.js generate "sadece gözleri kapat" --ref C:\yol\portre.png
505
+ node cli.js collect https://chatgpt.com/c/<sohbet id> --aspect 16:9
506
+ ```
507
+
508
+ ## Doktor
509
+
510
+ ```
511
+ npx backdraw@latest doctor her şeyi kontrol eder, hiçbir şeyi değiştirmez
512
+ npx backdraw@latest doctor --fix onarılması güvenli olanları onarır, sonra yeniden kontrol eder
513
+ ```
514
+
515
+ `doctor` her kontrol için bir satır yazar: ✓ (sorun yok), ⚠ (bakmaya değer) ya da ✗ (bozuk); her
516
+ birinin yanında tek satırlık bir çözüm:
517
+
518
+ - Node.js sürümü, kurulum klasörü ve dosyalarının, eklentinin ve bu sürümün birbirini tutması.
519
+ - Host manifesti ve kurulu her tarayıcı için gerçekten okuduğu registry kaydı (Claude masaüstü
520
+ uygulamasının MSIX korumalı alanının içinden de).
521
+ - Kullanıcı düzeyindeki native host'ları kapatan (`NativeMessagingUserLevelHosts`) ya da engelleyen
522
+ (`NativeMessagingBlocklist`) tarayıcı politikaları. Bunları yalnızca bir yönetici değiştirebilir.
523
+ - Köprü (named pipe), eklenti ve sürümü, eklentinin en son gördüğü ChatGPT oturumu ve bir Proje
524
+ seçili olup olmadığı.
525
+ - Her MCP istemcisinin Backdraw girdisi: var mı, bu kuruluma mı bakıyor. Claude masaüstü
526
+ uygulamasının açık olup olmadığını da söyler.
527
+
528
+ `--fix` host manifestini ve registry kayıtlarını yeniden yazar, istemci girdilerini yeniden bu
529
+ kuruluma yönlendirir (yedek alarak; Claude masaüstü uygulamasınınkini yalnızca o kapalıyken).
530
+ Onaramadıklarını da söyler. Çıktı bir issue'ya yapıştırılabilir: kullanıcı klasörün `~` olarak
531
+ görünür; proje adları, istemler ve sohbet bağlantıları hiç yazılmaz.
532
+
533
+ ## Sorun giderme
534
+
535
+ | Sorun | Ne yapmalı |
536
+ |---|---|
537
+ | Herhangi bir sorun | Önce `npx backdraw@latest doctor` çalıştır. |
538
+ | `BRIDGE NOT RUNNING` | Chrome kapalı ya da eklenti yüklü değil veya kapalı. Chrome'u aç (eklenti kendiliğinden bağlanır) ya da Backdraw'ı `chrome://extensions` sayfasından aç. `node cli.js status` ile kontrol et. |
539
+ | Backdraw simgesinde kırmızı **!** | Eklenti yerel host'a ulaşamıyor. Açılır pencere hatayı ve çözümünü gösterir. `npx backdraw@latest doctor --fix` (ya da yeniden `node install.js`) çalıştır, ardından Backdraw'ı `chrome://extensions` sayfasından yeniden yükle. |
540
+ | `NEEDS USER ACTION` | ChatGPT bir giriş ekranı ya da insan doğrulaması (CAPTCHA) gösteriyor. Chrome'da ChatGPT sekmesini açıp işlemi kendin tamamla; Backdraw bunu asla atlatmaya çalışmaz. İş seni 10 dakikaya kadar bekler; işlemi bitirdiğin anda kendiliğinden devam eder. 10 dakika dolarsa iş başarısız olur ve ChatGPT sekmesi açık kalır. |
541
+ | `⚠ EDIT CHECK (edited: false)` | ChatGPT düzenlemek yerine yeni bir resim çizdi (gerçek bir düzenleme görselin ~%95-100'ünü korur). Orijinali `reference_images` ile ve `conversation_url` olmadan, yani yeni bir sohbette tekrar iste. |
542
+ | `NEEDS REFERENCE IMAGE` | ChatGPT uzun bir sohbette görseli gözden kaçırdı. Görseli `reference_images` ile ekle (tercihen yeni bir sohbette) ya da `auto_reattach` kullan. |
543
+ | `FAILED — ChatGPT did not finish in time` | Bir iş yaklaşık 10 dakika sonra vazgeçer. Sonuçta bir sohbet bağlantısı varsa, ChatGPT işini bitirdiğinde `fetch_images` (ya da `node cli.js collect <link>`) görseli indirir; aynı şekilde kırpılması için aynı `aspect_ratio`'yu yeniden ver. |
544
+ | `No ChatGPT project is selected yet` | Açılır pencereden bir proje seç ya da Claude'dan Projelerini listeleyip seçmesini iste. |
545
+ | `ChatGPT did not open the project` | Proje silinmiş ya da yeniden adlandırılmış; yeniden seç. |
546
+ | İki Chrome profili | Yerel köprü her Windows kullanıcısı için tektir; Backdraw'ı yalnızca bir Chrome profilinde yükle. |
547
+
548
+ Ayrıntılı kayıt için `node cli.js debug on` çalıştır ve `%USERPROFILE%\.backdraw\logs\host.log`
549
+ dosyasına bak (sonra `node cli.js debug off` ile kapat).
550
+
551
+ ### ChatGPT web arayüzü değişirse
552
+
553
+ Backdraw chatgpt.com web sayfasını yönetir; bu yüzden bir tasarım değişikliği onu bozabilir (örneğin
554
+ mesaj kutusunu artık bulamaz).
555
+
556
+ 1. `node cli.js diagnose` (ya da `node cli.js diagnose <sohbet linki>`) çalıştır. Backdraw'ın
557
+ gördüğü sayfa yapısının bir özetini yazar; `--selector CSS` ve `--max N` çıktıyı daraltır,
558
+ `--worker` çalışan işin sekmesine bakar.
559
+ 2. Seçiciler `extension/inpage.js` dosyasında.
560
+ 3. Düzelttikten sonra `node install.js` komutunu yeniden çalıştır: dosyaları kopyalar ve çalışan
561
+ eklentiyi yeniden yükler.
562
+ 4. Neyin değiştiğini anlatan bir [issue aç](../../issues). Önce diagnose çıktısından kişisel
563
+ bilgileri (sohbet başlıkları, proje adları, istemler) çıkar.
564
+
565
+ ## Güncelleme
566
+
567
+ ```
568
+ npx backdraw@latest setup
569
+ ```
570
+
571
+ Elle kurulumda: `git pull` (ya da ZIP'i yeniden indirip aç), ardından `node install.js`.
572
+
573
+ İkisi de yeni dosyaları eskilerinin üzerine kopyalar, ayarlarını, iş geçmişini ve koleksiyonlarını
574
+ korur, her şeyi yeniden kaydeder ve çalışan eklentiyi yeniden yükler. Chrome kapalıysa yeni sürüm
575
+ Chrome açılınca yüklenir.
576
+
577
+ **"ChatGPT görsel köprüsü"nden (1.x) mi geliyorsun?** Setup (ya da `node install.js`) onu taşır: ayarları ve iş
578
+ geçmişini `%USERPROFILE%\.claude\chatgpt-image-bridge` klasöründen kopyalar (hiçbir şeyin üzerine
579
+ yazmadan), eski native host'u ve eski `chatgpt-images` MCP kaydını kaldırır. Ardından
580
+ `chrome://extensions` sayfasında eski "Claude ChatGPT Görsel Köprüsü" eklentisini kaldır ve yerine
581
+ `%USERPROFILE%\.backdraw\extension` klasörünü yükle; eklenti kimliği aynı kalır. Backdraw çalışınca
582
+ eski klasörü elle sil.
583
+
584
+ ## Kaldırma
585
+
586
+ ```
587
+ npx backdraw@latest uninstall --dry-run neyin kaldırılacağını gösterir, hiçbir şeyi değiştirmez
588
+ npx backdraw@latest uninstall
589
+ ```
590
+
591
+ (Elle kurulumda: `node install.js --uninstall [--dry-run]`.) Bu komut her tarayıcının native host
592
+ kaydını ve `backdraw` MCP kaydını Claude Code, Codex, Cursor, VS Code ve Gemini CLI'den, Claude
593
+ kapalıysa masaüstü uygulamasının ayarlarından da (her birinin yedeğini alarak) kaldırır; 1.x'in
594
+ kullandığı adları da temizler. Ardından eklentiyi `chrome://extensions` sayfasından kaldır.
595
+
596
+ Dosyaların korunur; iki yerde dururlar:
597
+
598
+ - `%USERPROFILE%\.backdraw`: programın kendisi, ayarların, iş geçmişi (istemlerle birlikte),
599
+ önizlemeler ve kayıt dosyaları.
600
+ - Görsel klasörü, varsayılan olarak `Pictures\Backdraw`: ürettiğin görseller ve `References`
601
+ altında referans koleksiyonların. Gerçekte kullanılan klasörleri deneme çalıştırması (dry run)
602
+ listeler; kaldırmadan önce `node cli.js status` da gösterir.
603
+
604
+ Bunların da gitmesini istiyorsan bu klasörleri elle sil. 1.x'ten geldiysen
605
+ `%USERPROFILE%\.claude\chatgpt-image-bridge` klasörünü de sil.
606
+
607
+ ## Gizlilik ve güvenlik
608
+
609
+ - Her şey senin bilgisayarında çalışır: Backdraw sunucusu yok, telemetri yok, API anahtarı yok.
610
+ - Backdraw cookie, token ya da şifre okumaz; giriş ekranlarını ve CAPTCHA'ları asla atlatmaz.
611
+ - Yerel köprü bir ağ portu değil, bir named pipe'tır; native host yalnızca Backdraw eklentisini
612
+ kabul eder.
613
+ - İstemler, iş geçmişi, önizlemeler ve kayıt dosyaları `%USERPROFILE%\.backdraw` içinde kalır
614
+ (`data\` ve `logs\`).
615
+ - `reference_images`, adı `.png`, `.jpg`, `.jpeg`, `.webp` ya da `.gif` ile biten herhangi bir yerel
616
+ dosyayı bir ChatGPT mesajına ekleyebilir. Claude güvenmediğin içerikle çalışırken Backdraw'ın araç
617
+ çağrılarını gözden geçir.
618
+
619
+ Ayrıntılar, tehdit modeli ve bir güvenlik açığını nasıl bildireceğin: [SECURITY.md](SECURITY.md).
620
+
621
+ ## MCP protokol desteği
622
+
623
+ - **2026-07-28** (durumsuz): el sıkışma yok; her istek kendi sürümünü `_meta` içinde belirtir;
624
+ `server/discover` desteklenir.
625
+ - **Eski `initialize` el sıkışması:** 2025-11-25, 2025-06-18, 2025-03-26 ve 2024-11-05.
626
+ - Araç başlıkları ve ipuçları (annotations), ilerleme bildirimleri, `notifications/cancelled` ve
627
+ JSON-RPC toplu istekleri. Desteklenmeyen bir sürüm, desteklenenlerin listesiyle birlikte `-32022`
628
+ hatası alır.
629
+
630
+ ## Sorumluluk reddi ve sorumlu kullanım
631
+
632
+ - **Kişisel kullanım, kendi hesabın.** Backdraw, kendi Chrome'unda kendi ChatGPT hesabıyla görsel
633
+ üreten tek bir kişi için yapıldı. Bir hesabı paylaşmak, başkalarına hizmet olarak görsel üretmek
634
+ ya da bir ürünün arka ucu olarak kullanmak için kullanma.
635
+ - **OpenAI'ın koşulları.** OpenAI'ın [Kullanım Koşulları](https://openai.com/policies/row-terms-of-use/),
636
+ verinin ya da çıktının otomatik veya programlı olarak çıkarılmasını ("automatically or
637
+ programmatically extract data or Output") ve hız sınırlarının ya da koruma önlemlerinin
638
+ aşılmasını yasaklar. Backdraw ChatGPT web sayfasını senin yerine kullandığı için bu koşullarla
639
+ çelişebilir. Koşulları oku ve kararını kendin ver.
640
+ - **Hesabınla ilgili risk sana aittir.** OpenAI, koşullarını ihlal ettiğini düşündüğü bir hesabı
641
+ sınırlayabilir, askıya alabilir ya da kapatabilir. Backdraw hiçbir garanti olmadan sunulur
642
+ ([MIT lisansı](LICENSE)); geliştiricileri hesabına olacaklardan sorumlu değildir.
643
+ - **Aynı anda tek iş, insan temposunda.** Tek bir kuyruk var: bir arka plan sekmesinde bir istem;
644
+ sıradaki iş ancak görsel kaydedildikten sonra başlar. Backdraw paralel sohbet açmaz, istemleri
645
+ kendiliğinden yeniden göndermez (`auto_reattach`'in tek seferlik yeniden sorması dışında) ve her
646
+ giriş ya da insan doğrulaması sayfasında, sen bitirene kadar bekler.
647
+ - **Normal limitlerin geçerli.** Her görsel, kendi ChatGPT kullanım limitlerinden düşer.
648
+ - OpenAI ya da Anthropic ile bir bağlantısı yoktur; onlar tarafından onaylanmamış ya da
649
+ desteklenmemiştir.
650
+
651
+ ## Lisans
652
+
653
+ [MIT](LICENSE)