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