@operatingtag/dsh-unclesam 1.0.0 → 1.0.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.
package/README.tr.md ADDED
@@ -0,0 +1,265 @@
1
+ [English](README.md) · [Español](README.es.md) · [Français](README.fr.md) · [Deutsch](README.de.md) · [Português](README.pt.md) · [Italiano](README.it.md) · **Türkçe** · [한국어](README.ko.md) · [日本語](README.ja.md) · [简体中文](README.zh.md) · [Русский](README.ru.md) · [Polski](README.pl.md) · [हिन्दी](README.hi.md) · [Nederlands](README.nl.md) · [Українська](README.uk.md) · [Tiếng Việt](README.vi.md) · [Bahasa Indonesia](README.id.md)
2
+
3
+ # Uncle Sam
4
+
5
+ **Ücretli API yerine, hâlihazırda sahip olduğunuz web hesabıyla, kendi tarayıcınız üzerinden yanıt veren bir DeepSeek Harness sağlayıcısı.**
6
+
7
+ **☕ [Bana bir kahve ısmarla](https://revolut.me/operatingtag)** — tek bir kişi tarafından, geceleri, hiçbir finansman olmadan yazılıyor. Başka gelir modeli yok. Bir yıldız ya da işe yarar bir hata bildirimi de aynı değerde.
8
+
9
+ > **Bu ürün aktif geliştirme aşamasında. Hatalar bekleyin.**
10
+ >
11
+ > Çalışıyor, hızlı ve haftalardır her gün kullanılıyor — ama sürekli değişiyor ve tarayıcı yolu, haber vermeden
12
+ > değişen bir web sitesine bağlı. Bir şey bozulursa, bir açıklamadan çok ekran görüntüsü ve sürüm numarası işe
13
+ > yarar. Ona bağımlıysanız sürümü sabitleyin.
14
+
15
+ ```
16
+ sağlayıcı deepseek-web
17
+ modeller deepseek-chat · deepseek-chat-search · deepseek-reasoner · deepseek-reasoner-search
18
+ maliyet token başına sıfır — tarayıcınızda zaten açık olan aboneliği kullanır
19
+ durum geliştirme aşamasında — hatalar bekleyin
20
+ ölçülen ilk token ~1,9 sn · ek yük ~0,6 sn · bir tur ~2,5 sn
21
+ ```
22
+
23
+ Web yolundan gelen yanıtlar **🔴 Uncle Sam** ile imzalanır. Bu ad bir şaka, bir iddia değil: hangi yolun yanıt
24
+ verdiğini işaretler ve API yanıtlarında hiç imza yoktur. Size kimin yanıt verdiğini her zaman bilirsiniz.
25
+
26
+ ---
27
+
28
+ ## Ne kazandırır
29
+
30
+ API token başına ücret alır. Web ürünü almaz. Bu eklenti `deepseek-web`'i model sağlayıcısı olarak kaydeder ve
31
+ her çağrıyı gerçek bir tarayıcıda `chat.deepseek.com`'u sürerek yanıtlar — işi sayfa yapar, oturumu tarayıcı
32
+ tutar ve hiçbir şey ölçülmez.
33
+
34
+ | | API yolu | Web yolu |
35
+ |---|---|---|
36
+ | Maliyet | token başına, sürekli | abonelik dışında hiçbir şey |
37
+ | Hız | hızlı | tur başına ~2,5 sn, ölçüldü |
38
+ | Araç çağrısı | yerleşik ve güvenilir | taklit, çalışıyor ama daha zayıf |
39
+ | Bağımlı olduğu şey | API | haber vermeden değişen bir web sitesi |
40
+
41
+ **İki yol da kurulu kalır.** Model seçici zaten anahtardır: varsayılan olarak ucuz yolu kullanın, güvenilir araç
42
+ kullanımı gereken işlerde API'ye geçin.
43
+
44
+ ---
45
+
46
+ ## Kurulum
47
+
48
+ Uncle Sam bir **DeepSeek Harness eklentisidir**. Harness dışında hiçbir şey yapmaz, çünkü bir model sağlayıcısı,
49
+ bir ana makine rotası ve iki arayüz yuvası kaydeder.
50
+
51
+ **Gereksinimler**
52
+
53
+ | | |
54
+ |---|---|
55
+ | DeepSeek Harness | eklenti yöneticisi olan herhangi bir güncel sürüm |
56
+ | Tarayıcı | Brave önerilir; Brave yoksa Edge otomatik kullanılır |
57
+ | Node | 22 veya üstü |
58
+
59
+ **npm'den**
60
+
61
+ ```bash
62
+ pnpm add @operatingtag/dsh-unclesam
63
+ ```
64
+
65
+ **Bu depodan**
66
+
67
+ ```bash
68
+ git clone https://github.com/operatingtag/dsh-unclesam
69
+ cd dsh-unclesam
70
+ pnpm install
71
+ ```
72
+
73
+ Sonra harness'in yüklemesi için profilinize paket satırını ekleyin:
74
+
75
+ ```yaml
76
+ # cordis.patch.yml
77
+ - insert:
78
+ - id: dsh-unclesam
79
+ name: '@operatingtag/dsh-unclesam'
80
+ config:
81
+ port: 9222
82
+ defaultModel: deepseek-chat-search
83
+ autoMinimise: true
84
+ ```
85
+
86
+ **Ya da bir klasörden:** Ayarlar → Eklentiler → yerel bir yoldan kur, `package.json` içeren klasörü gösterin.
87
+
88
+ ### İlk çalıştırma
89
+
90
+ **Giriş yap / sohbeti aç** düğmesine basın. chat.deepseek.com'da giriş yapana kadar tarayıcı **görünür kalır**.
91
+ Sonrasında kendini simge durumuna indirir ve bir daha görmezsiniz. Oturum tarayıcı profilinizde yaşar, yani
92
+ **eklenti hiçbir parola saklamaz** — sızabilecek bir şey yoktur.
93
+
94
+ Ardından şunları görmelisiniz:
95
+
96
+ 1. **Ayarlar → Uncle Sam** — durum satırları ve bir giriş düğmesi olan bir sayfa.
97
+ 2. **Mesaj kutusunun altında** — `● DeepSeek Harness` veya `● Uncle Sam`, geçiş için tıklayın.
98
+ 3. **Model listesi** — API modellerinin yanında dört `(web)` modeli.
99
+
100
+ ### Kaldırma
101
+
102
+ Ayarlar → Eklentiler → Uncle Sam → Kaldır. Giriş yaptığınız tarayıcı profili dışında hiçbir şey yazılmaz.
103
+
104
+ ---
105
+
106
+ ## API / web anahtarı
107
+
108
+ **Model seçici anahtarın kendisidir.** İkinci bir denetim yok, çünkü modeli de seçen ikinci bir denetim tek bir
109
+ karar için iki doğruluk kaynağı olurdu.
110
+
111
+ | Bu modeli seçin | Yol | DeepThink | Arama |
112
+ |---|---|---|---|
113
+ | `DeepSeek Chat (web)` | tarayıcı | kapalı | kapalı |
114
+ | `DeepSeek Chat + Search (web)` | tarayıcı | kapalı | **açık** |
115
+ | `DeepSeek Reasoner (web)` | tarayıcı | **açık** | kapalı |
116
+ | `DeepSeek Reasoner + Search (web)` | tarayıcı | **açık** | **açık** |
117
+ | `(web)` olmayan her model | API | — | — |
118
+
119
+ Model adının yanında **WEB** ya da **API** rozeti görünür, böylece etkin yol bir bakışta belli olur. Ad
120
+ tanınmadığında rozet tahmin etmek yerine hiçbir şey göstermez — yanlış bir rozet hiç olmamasından kötüdür.
121
+
122
+ Seçiminiz yeniden başlatmalar arasında korunur. **DeepThink** akıl yürütme geçişidir; **Arama** canlı web'i
123
+ okumasını sağlar.
124
+
125
+ ### Arama konuşmada görünür
126
+
127
+ Bir arama modeliyle bir tur **iki blok** üretir — aradığı sorgu, bulduğu kaynaklar ve sonra bunları kullanan
128
+ yanıt:
129
+
130
+ ```
131
+ Web araması — "Bugünün bir teknoloji haberi nedir?"
132
+ Kaynaklar (4): yna.co.kr · fnnews.com · rthk.hk · sina.com.cn
133
+ Bağlantılar: https://k.sina.com.cn/article_... http://www.21jingji.com/article_...
134
+ ```
135
+
136
+ Sayfa, kendi içinde yazdığı sorguyu açığa çıkarmaz; bu yüzden alıntılanan sorgu aramayı başlatan mesajdır.
137
+ Kaynaklar ve bağlantılar yanıt yerleştikten sonra sayfadan okunur. Kaynaklar yalnızca sonda var olduğu için
138
+ **aramalı turlar akış yerine biriktirilir**; sıradan turlar hâlâ token token akar.
139
+
140
+ ---
141
+
142
+ ## Neden tarayıcı, neden onların HTTP API'si değil
143
+
144
+ Akla gelen yol — `chat.deepseek.com`'un kendi API'sini çağırmak — denendi ve bırakıldı. Site her mesajı iki
145
+ kapıdan geçiriyor:
146
+
147
+ | Kapı | Anlamı |
148
+ |---|---|
149
+ | `/api/v0/chat/create_pow_challenge` | mesaj başına bir **iş kanıtı** |
150
+ | `challenges.cloudflare.com/turnstile` | kaynakta bir bot kapısı |
151
+
152
+ Bunlardan birini yeniden yazmak kaybedilmiş bir savaştır: karartılmışlardır, değişirler ve değiştiklerinde
153
+ başarısızlık tam olarak bir ağ arızasına benzer. **Sayfa ikisini de kendi istekleri için zaten çözmüş
154
+ durumda.**
155
+
156
+ Bu yüzden bağdaştırıcı siteyle hiç HTTP konuşmaz. Sayfayı sürer, gerisini sayfa yapar. Kimlik doğrulama, iş
157
+ kanıtı ve Turnstile artık bizim sorunumuz değildir ve sitenin kendisinden bağımsız olarak bozulamazlar.
158
+
159
+ **Doğrulandı:** siteye düz bir `HEAD` `403` döndürür; tarayıcı yolu yanıt döndürür.
160
+
161
+ ---
162
+
163
+ ## Dürüstçe söylenen sınırlar
164
+
165
+ **Araç kullanımı taklitten ibarettir.** Bir web sohbetinde yapılandırılmış araç kanalı yoktur: araçlar istemde
166
+ anlatılır ve bir çağrı, yanıttan bir JSON nesnesi ayrıştırılarak geri kazanılır. Çalışıyor — doğrulandı — ama
167
+ yerleşik araç çağrısından zayıftır: talimatı yok sayan bir model düz yazıyla yanıt verir ve harness o turda hiç
168
+ araç kullanımı görmez. **Ağır ajan işleri için API yolu daha güvenilirdir.** Web yolu sohbet, uzun yanıtlar, alt
169
+ ajanlar, sıkıştırma ve modelin web modeli olması gereken her tur için en iyisidir.
170
+
171
+ **Kontrol etmediğiniz bir web sitesine bağlıdır.** Sayfa şekil değiştirince eklenti de onunla değişmek zorundadır.
172
+ Bu sayfanın başındaki geliştirme uyarısı bir formalite değil.
173
+
174
+ **DeepSeek ile bağlantılı değildir.** Onlar tarafından onaylanmamış, desteklenmemiştir ve size onların
175
+ hizmetinde hiçbir hak vermez. O hizmeti kullanımınız onların koşullarına tabidir.
176
+
177
+ ---
178
+
179
+ ## Yapılandırma
180
+
181
+ `cordis.patch.yml` şunları ayarlar:
182
+
183
+ | anahtar | varsayılan | anlamı |
184
+ |---|---|---|
185
+ | `port` | `9222` | tarayıcının hata ayıklama portu |
186
+ | `defaultModel` | `deepseek-chat-search` | çağrı model belirtmediğinde kullanılır |
187
+ | `showBrowser` | `true` | çalışırken pencerenin görünür olup olmadığı |
188
+
189
+ Tarayıcıda açık bir `chat.deepseek.com` oturumu olmalıdır. İlk çağrıda port henüz açık değilse Brave
190
+ **Default** profiliyle başlatılır. Brave hata ayıklama portu *olmadan* çalışıyorsa bağdaştırıcı bağlanamaz ve
191
+ sessizce başarısız olmak yerine bunu açıkça söyler.
192
+
193
+ ---
194
+
195
+ ## Yapı
196
+
197
+ ```
198
+ index.js bağdaştırıcı: harness StreamChunk ←→ motor
199
+ lib/engine.mjs tarayıcı + sayfa: yaz, gönder, akıt, otur
200
+ lib/cdp.mjs Chrome DevTools Protocol istemcisi, sıfır bağımlılık
201
+ lib/prompt.mjs mesajları + araçları tek mesaja düzleştirir; çağrıları yanıttan geri kazanır
202
+ lib/savings.mjs web yolunun size kazandırdığı, API fiyatıyla hesaplanmış
203
+ lib/i18n.mjs panel için 51 dil
204
+ ```
205
+
206
+ **Bağımlılık yok.** Node 24 global `WebSocket` ve `fetch` ile birlikte gelir; CDP'nin ihtiyacı olan tek şey
207
+ budur, böylece token akışı ana makine sürecini hiç terk etmez ve her delta için bir IPC sıçraması olmaz.
208
+
209
+ ---
210
+
211
+ ## Destek
212
+
213
+ Uncle Sam, token başına ödeme yapmayı bırakın diye var. Size para kazandırdıysa ve bir sonrakinin yarı yolda
214
+ belleği tükenmeyen donanımda yapılmasını isterseniz:
215
+
216
+ **[☕ revolut.me/operatingtag](https://revolut.me/operatingtag)**
217
+
218
+ Depoya bir yıldız ya da işe yarar bir hata bildirimi de aynı değerde.
219
+
220
+ ---
221
+
222
+ ## Lisans
223
+
224
+ **CC BY-NC-ND 4.0** — Creative Commons Atıf-GayrıTicari-Türetilemez 4.0 Uluslararası.
225
+ Copyright (c) 2026 Darren T. Weldon, Operating Tag adıyla yayımlandı.
226
+
227
+ **Tüm anlaşma tek satırda: kişisel olarak kurun ve kullanın, ücretsiz. Değiştirmeyin, paylaşmayın, satmayın ve
228
+ bir şirkette kullanmayın.**
229
+
230
+ Bu açık kaynak değildir ve öyleymiş gibi davranmaz.
231
+
232
+ ```
233
+ yapabilirsiniz kurup çalıştırmak · kişisel ve ticari olmayan amaçla kullanmak
234
+ anlamak için kaynağı okumak
235
+
236
+ yapamazsınız değiştirmek, uyarlamak veya türev bir eser oluşturmak
237
+ kopyalamak, dağıtmak, yayımlamak, aynalamak ya da
238
+ başkasının kullanımına sunmak
239
+ herhangi bir kod barındırma, kayıt defteri, web sitesi,
240
+ forum veya sohbete yüklemek
241
+ satmak, yeniden satmak, kiralamak ya da kendisi veya erişimi için ücret almak
242
+ başka birine verdiğiniz herhangi bir şeye dahil etmek
243
+ herhangi bir ticari amaçla veya iş faaliyeti kapsamında kullanmak
244
+ ```
245
+
246
+ **Tek iki meşru kaynak bu depo ve npm paketi
247
+ [`@operatingtag/dsh-unclesam`](https://www.npmjs.com/package/@operatingtag/dsh-unclesam)'dir.** Başka bir
248
+ yerden gelen kopya, kim vermiş olursa olsun lisanslı değildir. Bu yazılımı satışta görürseniz, satan yazarı
249
+ değildir.
250
+
251
+ **Ticari kullanım ile değiştirme ve dağıtma hakkı ayrı bir yazılı lisansla verilir.** Operating Tag'a sorun;
252
+ net bir yanıt ve net bir fiyat alırsınız.
253
+
254
+ Bağlayıcı olan [LICENSE](LICENSE) dosyasıdır ve aynı özetle sade bir İngilizceyle başlar.
255
+
256
+ ---
257
+
258
+ Uncle Sam bağımsız bir eklentidir. DeepSeek ile bağlantılı değildir, onlar tarafından onaylanmamış veya
259
+ desteklenmemiştir.
260
+
261
+ ```
262
+ @operatingtag/dsh-unclesam v1.0.1
263
+ Yazar Operating Tag
264
+ Lisans CC BY-NC-ND 4.0 — kullanması serbest, değiştirmesi, paylaşması veya satması değil
265
+ ```
package/README.uk.md ADDED
@@ -0,0 +1,265 @@
1
+ [English](README.md) · [Español](README.es.md) · [Français](README.fr.md) · [Deutsch](README.de.md) · [Português](README.pt.md) · [Italiano](README.it.md) · [Türkçe](README.tr.md) · [한국어](README.ko.md) · [日本語](README.ja.md) · [简体中文](README.zh.md) · [Русский](README.ru.md) · [Polski](README.pl.md) · [हिन्दी](README.hi.md) · [Nederlands](README.nl.md) · **Українська** · [Tiếng Việt](README.vi.md) · [Bahasa Indonesia](README.id.md)
2
+
3
+ # Uncle Sam
4
+
5
+ **Провайдер для DeepSeek Harness, який відповідає через ваш власний браузер — на тому веб-акаунті, який у вас уже є, — замість платного API.**
6
+
7
+ **☕ [Пригостіть мене кавою](https://revolut.me/operatingtag)** — пише одна людина, вночі, без фінансування. Іншої моделі доходу немає. Зірка на репозиторії або корисний звіт про помилку важать стільки ж.
8
+
9
+ > **Продукт в активній розробці. Очікуйте помилок.**
10
+ >
11
+ > Він працює, він швидкий, і ним користуються щодня вже кілька тижнів — але він постійно змінюється, а
12
+ > браузерний шлях залежить від сайту, який змінюється без попередження. Якщо щось зламалося, скріншот і номер
13
+ > версії корисніші за опис. Закріпіть версію, якщо ви від нього залежите.
14
+
15
+ ```
16
+ провайдер deepseek-web
17
+ моделі deepseek-chat · deepseek-chat-search · deepseek-reasoner · deepseek-reasoner-search
18
+ ціна нуль за токен — використовується підписка, вже відкрита у вашому браузері
19
+ стан у розробці — очікуйте помилок
20
+ виміряно перший токен ~1,9 с · накладні ~0,6 с · повний хід ~2,5 с
21
+ ```
22
+
23
+ Відповіді веб-шляху підписані **🔴 Uncle Sam**. Це ім'я — жарт, а не заява: воно позначає, який шлях
24
+ відповів, а відповіді API взагалі без підпису. Ви завжди знаєте, хто вам відповів.
25
+
26
+ ---
27
+
28
+ ## Що це заощаджує
29
+
30
+ API бере гроші за токени. Веб-продукт — ні. Плагін реєструє `deepseek-web` як провайдера моделей і відповідає на
31
+ кожен виклик, керуючи `chat.deepseek.com` у справжньому браузері: роботу виконує сторінка, сеанс тримає браузер, і
32
+ нічого не тарифікується.
33
+
34
+ | | Шлях API | Веб-шлях |
35
+ |---|---|---|
36
+ | Ціна | за токен, завжди | нічого понад підписку |
37
+ | Швидкість | швидко | ~2,5 с на хід, виміряно |
38
+ | Виклик інструментів | нативний і надійний | емуляція: працює, але слабше |
39
+ | Залежить від | API | сайту, що змінюється без попередження |
40
+
41
+ **Обидва шляхи залишаються встановленими.** Перемикач — це вибір моделі: типово дешевий шлях, а до API
42
+ звертаєтеся, коли завданню потрібні надійні інструменти.
43
+
44
+ ---
45
+
46
+ ## Встановлення
47
+
48
+ Uncle Sam — **плагін DeepSeek Harness**. Поза Harness він нічого не робить, бо реєструє провайдера моделей,
49
+ маршрут на хості та два місця в інтерфейсі.
50
+
51
+ **Вимоги**
52
+
53
+ | | |
54
+ |---|---|
55
+ | DeepSeek Harness | будь-яка свіжа збірка з менеджером плагінів |
56
+ | Браузер | рекомендовано Brave; Edge використовується автоматично, якщо Brave немає |
57
+ | Node | 22 або новіше |
58
+
59
+ **З npm**
60
+
61
+ ```bash
62
+ pnpm add @operatingtag/dsh-unclesam
63
+ ```
64
+
65
+ **З цього репозиторію**
66
+
67
+ ```bash
68
+ git clone https://github.com/operatingtag/dsh-unclesam
69
+ cd dsh-unclesam
70
+ pnpm install
71
+ ```
72
+
73
+ Далі додайте рядок пакета до свого профілю, щоб Harness його завантажив:
74
+
75
+ ```yaml
76
+ # cordis.patch.yml
77
+ - insert:
78
+ - id: dsh-unclesam
79
+ name: '@operatingtag/dsh-unclesam'
80
+ config:
81
+ port: 9222
82
+ defaultModel: deepseek-chat-search
83
+ autoMinimise: true
84
+ ```
85
+
86
+ **Або з теки:** Налаштування → Плагіни → установити з локального шляху, вказуючи теку з `package.json`.
87
+
88
+ ### Перший запуск
89
+
90
+ Натисніть **Увійти / відкрити чат**. Браузер відкриється і **залишиться видимим**, доки ви не увійдете на
91
+ chat.deepseek.com. Після цього він сам згорнеться, і ви його більше не побачите. Сеанс живе у профілі
92
+ браузера, тому **плагін не зберігає жодного пароля** — нема чому витікати.
93
+
94
+ Далі ви маєте побачити:
95
+
96
+ 1. **Налаштування → Uncle Sam** — сторінку з рядками стану й кнопкою входу.
97
+ 2. **Під полем введення** — `● DeepSeek Harness` або `● Uncle Sam`, натисніть, щоб перемкнути.
98
+ 3. **Список моделей** — чотири моделі `(web)` поруч із моделями API.
99
+
100
+ ### Видалення
101
+
102
+ Налаштування → Плагіни → Uncle Sam → Видалити. Поза профілем браузера, у якому ви увійшли, нічого не
103
+ записується.
104
+
105
+ ---
106
+
107
+ ## Перемикач API / веб
108
+
109
+ **Перемикач — це вибір моделі.** Другого елемента керування немає, бо другий елемент, який ще й вибирав би
110
+ модель, був би двома джерелами правди для одного рішення.
111
+
112
+ | Виберіть цю модель | Шлях | DeepThink | Пошук |
113
+ |---|---|---|---|
114
+ | `DeepSeek Chat (web)` | браузер | вимк | вимк |
115
+ | `DeepSeek Chat + Search (web)` | браузер | вимк | **увімк** |
116
+ | `DeepSeek Reasoner (web)` | браузер | **увімк** | вимк |
117
+ | `DeepSeek Reasoner + Search (web)` | браузер | **увімк** | **увімк** |
118
+ | будь-яка модель без `(web)` | API | — | — |
119
+
120
+ Поруч із назвою моделі з'являється значок **WEB** або **API**, щоб активний шлях було видно з одного погляду.
121
+ Якщо назву не розпізнано, значок не показує нічого замість того, щоб вгадувати — неправильний значок гірший за
122
+ відсутній.
123
+
124
+ Вибір зберігається між перезапусками. **DeepThink** — це прохід міркування; **Пошук** дозволяє читати живий веб.
125
+
126
+ ### Пошук видно в розмові
127
+
128
+ З моделлю пошуку один хід дає **два блоки** — запит, з яким він шукав, знайдені джерела, і потім відповідь, що
129
+ ними скористалася:
130
+
131
+ ```
132
+ Веб-пошук — «Який сьогодні технологічний заголовок?»
133
+ Джерела (4): yna.co.kr · fnnews.com · rthk.hk · sina.com.cn
134
+ Посилання: https://k.sina.com.cn/article_... http://www.21jingji.com/article_...
135
+ ```
136
+
137
+ Сторінка не розкриває запит, який ввела всередині, тому цитований запит — це повідомлення, що запустило пошук.
138
+ Джерела й посилання зчитуються зі сторінки, коли відповідь устоялася. Оскільки джерела існують лише в кінці,
139
+ **ходи з пошуком буферизуються, а не транслюються**; звичайні ходи й далі йдуть токен за токеном.
140
+
141
+ ---
142
+
143
+ ## Чому браузер, а не їхній HTTP API
144
+
145
+ Очевидний шлях — викликати власний API `chat.deepseek.com` — спробували й відкинули. Сайт змушує кожне
146
+ повідомлення пройти двоє воріт:
147
+
148
+ | Ворота | Що це означає |
149
+ |---|---|
150
+ | `/api/v0/chat/create_pow_challenge` | **доказ роботи** на кожне повідомлення |
151
+ | `challenges.cloudflare.com/turnstile` | захист від ботів на origin |
152
+
153
+ Повторно реалізувати будь-що з цього — заздалегідь програшна справа: воно обфусковане, воно змінюється, і коли
154
+ воно змінюється, збій виглядає точно як мережева аварія. **Сторінка вже вирішує обидва для власних запитів.**
155
+
156
+ Тож адаптер ніколи не говорить із сайтом по HTTP. Він керує сторінкою, а сторінка робить решту. Автентифікація,
157
+ доказ роботи й Turnstile перестають бути нашою проблемою і не можуть зламатися окремо від самого сайту.
158
+
159
+ **Перевірено:** простий `HEAD` до сайту повертає `403`; браузерний шлях повертає відповіді.
160
+
161
+ ---
162
+
163
+ ## Обмеження, названі чесно
164
+
165
+ **Виклик інструментів емулюється.** У веб-чаті немає структурованого каналу для інструментів: їх описують у
166
+ запиті, а виклик відновлюють, розбираючи JSON-об'єкт із відповіді. Це працює — перевірено — але слабше за
167
+ нативний виклик: модель, що проігнорувала інструкцію, відповідає текстом, і Harness у цьому ході взагалі не
168
+ бачить використання інструментів. **Для важкої агентної роботи шлях через API надійніший.** Веб-шлях найкраще
169
+ підходить для розмови, довгих відповідей, субагентів, стискання контексту й будь-якого ходу, де модель мусить
170
+ бути веб-моделлю.
171
+
172
+ **Він залежить від сайту, який ви не контролюєте.** Коли сторінка змінює форму, плагін має змінюватися разом із
173
+ нею. Це і є попередження про розробку вгорі сторінки, а не формальність.
174
+
175
+ **Він не пов'язаний із DeepSeek.** Вони його не схвалюють і не підтримують, і він не дає вам жодних прав на їхній
176
+ сервіс. Ваше використання цього сервісу регулюється їхніми умовами.
177
+
178
+ ---
179
+
180
+ ## Налаштування
181
+
182
+ `cordis.patch.yml` задає:
183
+
184
+ | ключ | типово | значення |
185
+ |---|---|---|
186
+ | `port` | `9222` | порт налагодження браузера |
187
+ | `defaultModel` | `deepseek-chat-search` | використовується, коли виклик не називає модель |
188
+ | `showBrowser` | `true` | чи видно вікно під час роботи |
189
+
190
+ У браузері має бути відкритий сеанс `chat.deepseek.com`. Перший виклик запускає Brave з профілем **Default**,
191
+ якщо порт ще не відкритий. Якщо Brave уже працює *без* порту налагодження, адаптер не може підключитися і прямо
192
+ про це повідомляє, а не падає мовчки.
193
+
194
+ ---
195
+
196
+ ## Будова
197
+
198
+ ```
199
+ index.js адаптер: StreamChunk Harness ←→ рушій
200
+ lib/engine.mjs браузер + сторінка: набрати, надіслати, транслювати, дочекатися
201
+ lib/cdp.mjs клієнт Chrome DevTools Protocol, без залежностей
202
+ lib/prompt.mjs зводить повідомлення й інструменти в одне; дістає виклики з відповіді
203
+ lib/savings.mjs скільки заощадив веб-шлях, у цінах API
204
+ lib/i18n.mjs 51 мова для панелі
205
+ ```
206
+
207
+ **Жодних залежностей.** У Node 24 є глобальні `WebSocket` і `fetch` — більше CDP нічого не потрібно, тож потік
208
+ токенів ніколи не покидає процес хоста і на кожну дельту немає переходу через IPC.
209
+
210
+ ---
211
+
212
+ ## Підтримка
213
+
214
+ Uncle Sam існує, щоб ви перестали платити за токени. Якщо він заощадив вам гроші й ви хотіли б побачити наступний
215
+ на залізі, яке не вичерпує пам'ять на півдорозі:
216
+
217
+ **[☕ revolut.me/operatingtag](https://revolut.me/operatingtag)**
218
+
219
+ Зірка на репозиторії або корисний звіт про помилку важать стільки ж.
220
+
221
+ ---
222
+
223
+ ## Ліцензія
224
+
225
+ **CC BY-NC-ND 4.0** — Creative Commons «Із зазначенням авторства — Некомерційна — Без похідних творів» 4.0
226
+ International. Copyright (c) 2026 Darren T. Weldon, опубліковано під іменем Operating Tag.
227
+
228
+ **Уся угода одним рядком: встановіть і користуйтеся особисто, безкоштовно. Не змінюйте, не передавайте, не
229
+ продавайте і не використовуйте в компанії.**
230
+
231
+ Це не відкритий код, і він не вдає, що ним є.
232
+
233
+ ```
234
+ можна встановлювати й запускати · використовувати особисто, не для комерції
235
+ читати вихідний код, щоб його зрозуміти
236
+
237
+ не можна змінювати, адаптувати або створювати похідний твір
238
+ копіювати, розповсюджувати, публікувати, дзеркалити або
239
+ робити доступним будь-кому
240
+ завантажувати на будь-який хостинг коду, реєстр, сайт, форум чи в чат
241
+ продавати, перепродавати, здавати в оренду або брати гроші за нього
242
+ чи за доступ до нього
243
+ включати в будь-що, що ви передаєте іншій особі
244
+ використовувати з комерційною метою або в межах підприємницької діяльності
245
+ ```
246
+
247
+ **Єдині два законні джерела — цей репозиторій і пакет npm
248
+ [`@operatingtag/dsh-unclesam`](https://www.npmjs.com/package/@operatingtag/dsh-unclesam).** Копія, отримана
249
+ будь-де інде, не ліцензована, хто б її не надав. Якщо ви бачите це програмне забезпечення у продажу, продає його
250
+ не автор.
251
+
252
+ **Комерційне використання, а також право змінювати й розповсюджувати, доступні за окремою письмовою ліцензією.**
253
+ Запитайте Operating Tag — отримаєте пряму відповідь і чітку ціну.
254
+
255
+ Чинним є файл [LICENSE](LICENSE), і він починається з того самого викладу простою англійською.
256
+
257
+ ---
258
+
259
+ Uncle Sam — незалежний плагін. Не пов'язаний із DeepSeek, не схвалений і не підтриманий ними.
260
+
261
+ ```
262
+ @operatingtag/dsh-unclesam v1.0.1
263
+ Автор Operating Tag
264
+ Ліцензія CC BY-NC-ND 4.0 — вільно використовувати, не змінювати, передавати чи продавати
265
+ ```