@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.id.md ADDED
@@ -0,0 +1,264 @@
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) · [Українська](README.uk.md) · [Tiếng Việt](README.vi.md) · **Bahasa Indonesia**
2
+
3
+ # Uncle Sam
4
+
5
+ **Sebuah penyedia untuk DeepSeek Harness yang menjawab lewat browser Anda sendiri, di akun web yang sudah Anda punya, bukan lewat API berbayar.**
6
+
7
+ **☕ [Traktir saya kopi](https://revolut.me/operatingtag)** — ditulis oleh satu orang, di malam hari, tanpa pendanaan. Tidak ada model pendapatan lain. Satu bintang atau laporan bug yang berguna sama nilainya.
8
+
9
+ > **Produk ini sedang dikembangkan secara aktif. Harapkan bug.**
10
+ >
11
+ > Ia bekerja, cepat, dan sudah dipakai setiap hari selama berminggu-minggu — tetapi terus berubah, dan jalur
12
+ > browser bergantung pada sebuah situs yang berubah tanpa pemberitahuan. Kalau ada yang rusak, tangkapan layar dan
13
+ > nomor versi lebih berguna daripada deskripsi. Pin versinya kalau Anda bergantung padanya.
14
+
15
+ ```
16
+ penyedia deepseek-web
17
+ model deepseek-chat · deepseek-chat-search · deepseek-reasoner · deepseek-reasoner-search
18
+ biaya nol per token — memakai langganan yang sudah terbuka di browser Anda
19
+ status dalam pengembangan — harapkan bug
20
+ terukur token pertama ~1,9 dtk · tambahan ~0,6 dtk · satu giliran ~2,5 dtk
21
+ ```
22
+
23
+ Jawaban dari jalur web ditandatangani **🔴 Uncle Sam**. Nama itu adalah lelucon, bukan klaim: ia menandai jalur
24
+ mana yang menjawab, sedangkan jawaban API tidak bertanda tangan sama sekali. Anda selalu tahu siapa yang menjawab.
25
+
26
+ ---
27
+
28
+ ## Apa yang dihemat
29
+
30
+ API menagih per token. Produk web tidak. Plugin ini mendaftarkan `deepseek-web` sebagai penyedia model dan menjawab
31
+ setiap panggilan dengan mengendalikan `chat.deepseek.com` di browser sungguhan — halaman yang bekerja, browser
32
+ yang menyimpan sesi, dan tidak ada yang diukur.
33
+
34
+ | | Jalur API | Jalur web |
35
+ |---|---|---|
36
+ | Biaya | per token, selamanya | tidak ada selain langganan |
37
+ | Kecepatan | cepat | ~2,5 dtk per giliran, terukur |
38
+ | Panggilan alat | asli dan andal | ditiru, berjalan tetapi lebih lemah |
39
+ | Bergantung pada | API | situs yang berubah tanpa pemberitahuan |
40
+
41
+ **Kedua jalur tetap terpasang.** Pemilih model adalah sakelarnya: pakai jalur murah sebagai bawaan, dan beralih ke
42
+ API saat tugas membutuhkan alat yang andal.
43
+
44
+ ---
45
+
46
+ ## Memasang
47
+
48
+ Uncle Sam adalah **plugin DeepSeek Harness**. Di luar harness ia tidak melakukan apa pun, karena ia mendaftarkan
49
+ penyedia model, satu rute host, dan dua tempat antarmuka.
50
+
51
+ **Persyaratan**
52
+
53
+ | | |
54
+ |---|---|
55
+ | DeepSeek Harness | versi terbaru mana pun dengan pengelola plugin |
56
+ | Browser | Brave disarankan; Edge dipakai otomatis jika Brave tidak ada |
57
+ | Node | 22 atau lebih baru |
58
+
59
+ **Dari npm**
60
+
61
+ ```bash
62
+ pnpm add @operatingtag/dsh-unclesam
63
+ ```
64
+
65
+ **Dari repositori ini**
66
+
67
+ ```bash
68
+ git clone https://github.com/operatingtag/dsh-unclesam
69
+ cd dsh-unclesam
70
+ pnpm install
71
+ ```
72
+
73
+ Lalu tambahkan baris paket ke profil Anda agar harness memuatnya:
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
+ **Atau dari folder:** Pengaturan → Plugin → pasang dari jalur lokal, menunjuk folder yang berisi `package.json`.
87
+
88
+ ### Menjalankan pertama kali
89
+
90
+ Klik **Masuk / buka obrolan**. Browser terbuka dan **tetap terlihat** sampai Anda masuk di chat.deepseek.com.
91
+ Setelah itu ia mengecil sendiri dan Anda tidak akan melihatnya lagi. Sesi hidup di profil browser Anda, jadi
92
+ **plugin tidak menyimpan kata sandi apa pun** — tidak ada yang bisa bocor.
93
+
94
+ Anda seharusnya melihat:
95
+
96
+ 1. **Pengaturan → Uncle Sam** — halaman dengan baris status dan tombol masuk.
97
+ 2. **Di bawah kotak pesan** — `● DeepSeek Harness` atau `● Uncle Sam`, klik untuk beralih.
98
+ 3. **Daftar model** — empat model `(web)` di samping model API.
99
+
100
+ ### Menghapus
101
+
102
+ Pengaturan → Plugin → Uncle Sam → Copot pemasangan. Tidak ada yang ditulis di luar profil browser tempat Anda
103
+ masuk.
104
+
105
+ ---
106
+
107
+ ## Sakelar API / web
108
+
109
+ **Pemilih model adalah sakelarnya.** Tidak ada kontrol kedua, karena kontrol kedua yang juga memilih model berarti
110
+ dua sumber kebenaran untuk satu keputusan.
111
+
112
+ | Pilih model ini | Jalur | DeepThink | Pencarian |
113
+ |---|---|---|---|
114
+ | `DeepSeek Chat (web)` | browser | mati | mati |
115
+ | `DeepSeek Chat + Search (web)` | browser | mati | **hidup** |
116
+ | `DeepSeek Reasoner (web)` | browser | **hidup** | mati |
117
+ | `DeepSeek Reasoner + Search (web)` | browser | **hidup** | **hidup** |
118
+ | model tanpa `(web)` | API | — | — |
119
+
120
+ Lencana **WEB** atau **API** muncul di samping nama model supaya jalur aktif terlihat sekilas. Bila nama tidak
121
+ dikenali, lencana tidak menampilkan apa pun alih-alih menebak — lencana yang salah lebih buruk daripada tidak ada.
122
+
123
+ Pilihan Anda bertahan setelah mulai ulang. **DeepThink** adalah lintasan penalaran; **Pencarian** membiarkannya
124
+ membaca web langsung.
125
+
126
+ ### Pencarian terlihat di percakapan
127
+
128
+ Dengan model pencarian, satu giliran menghasilkan **dua blok** — kueri yang dipakainya, sumber yang ditemukan, lalu
129
+ jawaban yang memakainya:
130
+
131
+ ```
132
+ Pencarian web — "Apa satu judul berita teknologi hari ini?"
133
+ Sumber (4): yna.co.kr · fnnews.com · rthk.hk · sina.com.cn
134
+ Tautan: https://k.sina.com.cn/article_... http://www.21jingji.com/article_...
135
+ ```
136
+
137
+ Halaman tidak membuka kueri yang diketiknya secara internal, jadi kueri yang dikutip adalah pesan yang memicu
138
+ pencarian. Sumber dan tautan dibaca dari halaman setelah jawaban tenang. Karena sumber hanya ada di akhir,
139
+ **giliran berpencarian dikumpulkan alih-alih dialirkan**; giliran biasa tetap mengalir token demi token.
140
+
141
+ ---
142
+
143
+ ## Mengapa browser, bukan HTTP API mereka
144
+
145
+ Jalur yang jelas — memanggil API `chat.deepseek.com` sendiri — sudah dicoba dan ditinggalkan. Situs memaksa setiap
146
+ pesan melewati dua gerbang:
147
+
148
+ | Gerbang | Artinya |
149
+ |---|---|
150
+ | `/api/v0/chat/create_pow_challenge` | **bukti kerja** per pesan |
151
+ | `challenges.cloudflare.com/turnstile` | gerbang bot di origin |
152
+
153
+ Membangun ulang salah satunya adalah pertandingan yang pasti kalah: keduanya dikaburkan, keduanya berubah, dan saat
154
+ berubah kegagalannya tampak persis seperti gangguan jaringan. **Halaman sudah menyelesaikan keduanya untuk
155
+ permintaannya sendiri.**
156
+
157
+ Jadi adaptor tidak pernah berbicara HTTP dengan situs. Ia mengendalikan halaman, dan halaman melakukan sisanya.
158
+ Autentikasi, bukti kerja, dan Turnstile berhenti menjadi masalah kita dan tidak bisa rusak terpisah dari situsnya.
159
+
160
+ **Terverifikasi:** sebuah `HEAD` biasa ke situs mengembalikan `403`; jalur browser mengembalikan jawaban.
161
+
162
+ ---
163
+
164
+ ## Batasan, dinyatakan jujur
165
+
166
+ **Pemakaian alat ditiru.** Obrolan web tidak punya kanal alat terstruktur: alat dijelaskan di prompt, dan panggilan
167
+ dipulihkan dengan mengurai objek JSON dari jawaban. Ini bekerja — terverifikasi — tetapi lebih lemah daripada
168
+ panggilan alat asli: model yang mengabaikan instruksi menjawab dengan prosa, dan harness tidak melihat pemakaian
169
+ alat pada giliran itu. **Untuk kerja agen yang berat, jalur API lebih andal.** Jalur web paling cocok untuk obrolan,
170
+ jawaban panjang, subagen, pemadatan, dan giliran mana pun di mana model harus menjadi model web.
171
+
172
+ **Ini bergantung pada situs yang tidak Anda kendalikan.** Saat halaman berubah bentuk, plugin harus berubah
173
+ bersamanya. Itulah peringatan pengembangan di bagian atas halaman ini, bukan formalitas.
174
+
175
+ **Ini tidak berafiliasi dengan DeepSeek.** Tidak didukung maupun disponsori oleh mereka, dan tidak memberi Anda
176
+ hak apa pun atas layanan mereka. Pemakaian Anda atas layanan itu diatur oleh ketentuan mereka.
177
+
178
+ ---
179
+
180
+ ## Konfigurasi
181
+
182
+ `cordis.patch.yml` mengatur:
183
+
184
+ | kunci | bawaan | arti |
185
+ |---|---|---|
186
+ | `port` | `9222` | port debug browser |
187
+ | `defaultModel` | `deepseek-chat-search` | dipakai saat panggilan tidak menyebut model |
188
+ | `showBrowser` | `true` | apakah jendela terlihat selama bekerja |
189
+
190
+ Browser harus memiliki sesi `chat.deepseek.com` yang sudah masuk. Panggilan pertama meluncurkan Brave pada profil
191
+ **Default** jika port belum terbuka. Jika Brave sudah berjalan *tanpa* port debug, adaptor tidak bisa menempel dan
192
+ mengatakannya dengan jelas alih-alih gagal diam-diam.
193
+
194
+ ---
195
+
196
+ ## Struktur
197
+
198
+ ```
199
+ index.js adaptor: StreamChunk harness ←→ mesin
200
+ lib/engine.mjs browser + halaman: ketik, kirim, alirkan, tenangkan
201
+ lib/cdp.mjs klien Chrome DevTools Protocol, tanpa dependensi
202
+ lib/prompt.mjs meratakan pesan + alat menjadi satu pesan; memulihkan panggilan dari jawaban
203
+ lib/savings.mjs berapa yang dihemat jalur web, dihargai terhadap API
204
+ lib/i18n.mjs 51 bahasa untuk panel
205
+ ```
206
+
207
+ **Tanpa dependensi.** Node 24 menyertakan `WebSocket` dan `fetch` global, itu saja yang dibutuhkan CDP, jadi arus
208
+ token tidak pernah meninggalkan proses host dan tidak ada lompatan IPC per delta.
209
+
210
+ ---
211
+
212
+ ## Dukungan
213
+
214
+ Uncle Sam ada supaya Anda berhenti membayar per token. Jika ia menghemat uang Anda dan Anda ingin melihat yang
215
+ berikutnya dibangun di perangkat keras yang tidak kehabisan memori di tengah jalan:
216
+
217
+ **[☕ revolut.me/operatingtag](https://revolut.me/operatingtag)**
218
+
219
+ Satu bintang di repositori atau laporan bug yang berguna sama nilainya.
220
+
221
+ ---
222
+
223
+ ## Lisensi
224
+
225
+ **CC BY-NC-ND 4.0** — Creative Commons Atribusi-NonKomersial-TanpaTurunan 4.0 Internasional.
226
+ Copyright (c) 2026 Darren T. Weldon, diterbitkan dengan nama Operating Tag.
227
+
228
+ **Seluruh kesepakatan dalam satu baris: pasang dan pakai secara pribadi, gratis. Jangan ubah, jangan bagikan,
229
+ jangan jual, dan jangan pakai di perusahaan.**
230
+
231
+ Ini bukan sumber terbuka, dan tidak berpura-pura demikian.
232
+
233
+ ```
234
+ Anda boleh memasang dan menjalankannya · memakainya secara pribadi, non-komersial
235
+ membaca kode sumber untuk memahaminya
236
+
237
+ Anda tidak mengubahnya, mengadaptasinya, atau membuat karya turunan
238
+ boleh menyalin, mendistribusikan, menerbitkan, mencerminkan, atau
239
+ menyediakannya bagi siapa pun
240
+ mengunggahnya ke hosting kode, registri, situs, forum, atau obrolan mana pun
241
+ menjual, menjual ulang, menyewakan, atau memungut bayaran untuknya atau untuk aksesnya
242
+ memasukkannya ke dalam apa pun yang Anda serahkan kepada orang lain
243
+ memakainya untuk tujuan komersial apa pun atau dalam kegiatan usaha
244
+ ```
245
+
246
+ **Hanya ada dua sumber sah: repositori ini dan paket npm
247
+ [`@operatingtag/dsh-unclesam`](https://www.npmjs.com/package/@operatingtag/dsh-unclesam).** Salinan dari tempat
248
+ lain tidak berlisensi, siapa pun yang memberikannya. Jika Anda melihat perangkat lunak ini dijual, bukan penulisnya
249
+ yang menjual.
250
+
251
+ **Pemakaian komersial, serta hak mengubah dan mendistribusikan, tersedia melalui lisensi tertulis terpisah.** Tanya
252
+ Operating Tag — Anda akan mendapat jawaban jelas dan harga jelas.
253
+
254
+ Berkas [LICENSE](LICENSE) yang mengikat, dan ia dibuka dengan ringkasan yang sama dalam bahasa Inggris sederhana.
255
+
256
+ ---
257
+
258
+ Uncle Sam adalah plugin independen. Tidak berafiliasi dengan DeepSeek, tidak didukung maupun disponsori oleh mereka.
259
+
260
+ ```
261
+ @operatingtag/dsh-unclesam v1.0.1
262
+ Penulis Operating Tag
263
+ Lisensi CC BY-NC-ND 4.0 — bebas dipakai, tidak untuk diubah, dibagikan, atau dijual
264
+ ```
package/README.it.md ADDED
@@ -0,0 +1,268 @@
1
+ [English](README.md) · [Español](README.es.md) · [Français](README.fr.md) · [Deutsch](README.de.md) · [Português](README.pt.md) · **Italiano** · [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) · [Українська](README.uk.md) · [Tiếng Việt](README.vi.md) · [Bahasa Indonesia](README.id.md)
2
+
3
+ # Uncle Sam
4
+
5
+ **Un provider per DeepSeek Harness che risponde attraverso il tuo browser, sull'account web che hai già, invece dell'API a pagamento.**
6
+
7
+ **☕ [Offrimi un caffè](https://revolut.me/operatingtag)** — scritto da una persona, di notte, senza finanziamenti. Non c'è nessun altro modello di ricavo. Una stella o una segnalazione di bug valgono lo stesso.
8
+
9
+ > **Questo prodotto è in sviluppo attivo. Aspettati dei bug.**
10
+ >
11
+ > Funziona, è veloce ed è usato ogni giorno da settimane — ma cambia di continuo, e la strada del browser dipende
12
+ > da un sito che cambia senza avvisare. Se qualcosa si rompe, uno screenshot e il numero di versione valgono più
13
+ > di una descrizione. Fissa una versione se ci fai affidamento.
14
+
15
+ ```
16
+ provider deepseek-web
17
+ modelli deepseek-chat · deepseek-chat-search · deepseek-reasoner · deepseek-reasoner-search
18
+ costo niente per token — usa l'abbonamento già aperto nel tuo browser
19
+ stato in sviluppo — aspettati dei bug
20
+ misurato primo token ~1,9 s · sovraccarico ~0,6 s · un turno completo in ~2,5 s
21
+ ```
22
+
23
+ Le risposte della strada web sono firmate **🔴 Uncle Sam**. Il nome è uno scherzo, non una dichiarazione: indica
24
+ quale strada ha risposto, e le risposte dell'API non portano alcuna firma. Sai sempre chi ti ha risposto.
25
+
26
+ ---
27
+
28
+ ## Quanto ti fa risparmiare
29
+
30
+ L'API fattura per token. Il prodotto web no. Questo plugin registra `deepseek-web` come provider di modelli e
31
+ risponde a ogni chiamata guidando `chat.deepseek.com` in un browser vero — il lavoro lo fa la pagina, la sessione
32
+ la tiene il browser, e niente viene misurato.
33
+
34
+ | | Strada API | Strada web |
35
+ |---|---|---|
36
+ | Costo | per token, per sempre | niente oltre l'abbonamento |
37
+ | Velocità | veloce | ~2,5 s per turno, misurato |
38
+ | Chiamata strumenti | nativa e affidabile | emulata, funziona ma è più debole |
39
+ | Dipende da | l'API | un sito che cambia senza avvisare |
40
+
41
+ **Restano installate entrambe le strade.** Il selettore di modello è l'interruttore: usa quella economica come
42
+ predefinita e passa all'API quando un compito richiede strumenti affidabili.
43
+
44
+ ---
45
+
46
+ ## Installazione
47
+
48
+ Uncle Sam è un **plugin di DeepSeek Harness**. Fuori dall'harness non fa nulla, perché registra un provider di
49
+ modelli, una rotta sull'host e due spazi dell'interfaccia.
50
+
51
+ **Requisiti**
52
+
53
+ | | |
54
+ |---|---|
55
+ | DeepSeek Harness | qualsiasi versione recente con il gestore di plugin |
56
+ | Browser | Brave consigliato, Edge usato automaticamente se manca Brave |
57
+ | Node | 22 o superiore |
58
+
59
+ **Da npm**
60
+
61
+ ```bash
62
+ pnpm add @operatingtag/dsh-unclesam
63
+ ```
64
+
65
+ **Da questo repository**
66
+
67
+ ```bash
68
+ git clone https://github.com/operatingtag/dsh-unclesam
69
+ cd dsh-unclesam
70
+ pnpm install
71
+ ```
72
+
73
+ Poi aggiungi la riga del pacchetto al tuo profilo perché l'harness lo carichi:
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
+ **Oppure da una cartella:** Impostazioni → Plugin → installa da un percorso locale, indicando la cartella con il
87
+ `package.json`.
88
+
89
+ ### Primo avvio
90
+
91
+ Premi **Accedi / apri la chat**. Il browser si apre e **resta visibile** finché non hai fatto l'accesso su
92
+ chat.deepseek.com. Dopo si riduce da solo e non lo vedrai più. La sessione vive nel profilo del browser, quindi
93
+ **il plugin non memorizza nessuna password** — non c'è niente da far trapelare.
94
+
95
+ Dovresti poi vedere:
96
+
97
+ 1. **Impostazioni → Uncle Sam** — una pagina con righe di stato e un pulsante di accesso.
98
+ 2. **Sotto la casella di testo** — `● DeepSeek Harness` o `● Uncle Sam`, clicca per cambiare.
99
+ 3. **L'elenco dei modelli** — quattro modelli `(web)` accanto a quelli dell'API.
100
+
101
+ ### Rimuoverlo
102
+
103
+ Impostazioni → Plugin → Uncle Sam → Disinstalla. Non viene scritto nulla fuori dal profilo del browser con cui
104
+ hai fatto l'accesso.
105
+
106
+ ---
107
+
108
+ ## L'interruttore API / web
109
+
110
+ **Il selettore di modello è l'interruttore.** Non c'è un secondo comando, perché un secondo comando che scegliesse
111
+ anche il modello sarebbe due fonti di verità per una sola decisione.
112
+
113
+ | Scegli questo modello | Strada | DeepThink | Ricerca |
114
+ |---|---|---|---|
115
+ | `DeepSeek Chat (web)` | browser | off | off |
116
+ | `DeepSeek Chat + Search (web)` | browser | off | **on** |
117
+ | `DeepSeek Reasoner (web)` | browser | **on** | off |
118
+ | `DeepSeek Reasoner + Search (web)` | browser | **on** | **on** |
119
+ | qualsiasi modello senza `(web)` | l'API | — | — |
120
+
121
+ Accanto al nome del modello compare un badge **WEB** o **API**, così la strada attiva si vede a colpo d'occhio.
122
+ Quando il nome non viene riconosciuto il badge non mostra nulla invece di indovinare — un badge sbagliato sarebbe
123
+ peggio di nessun badge.
124
+
125
+ La scelta resta anche dopo il riavvio. **DeepThink** è la passata di ragionamento; **Ricerca** gli permette di
126
+ leggere il web dal vivo.
127
+
128
+ ### La ricerca si vede nella conversazione
129
+
130
+ Con un modello di ricerca un turno produce **due blocchi** — la query usata, le fonti trovate e poi la risposta
131
+ che se n'è servita:
132
+
133
+ ```
134
+ Ricerca web — «Qual è una notizia tecnologica di oggi?»
135
+ Fonti (4): yna.co.kr · fnnews.com · rthk.hk · sina.com.cn
136
+ Link: https://k.sina.com.cn/article_... http://www.21jingji.com/article_...
137
+ ```
138
+
139
+ La pagina non espone la query digitata internamente, quindi la query citata è il messaggio che ha fatto partire la
140
+ ricerca. Fonti e link vengono letti dalla pagina quando la risposta si è assestata. Poiché le fonti esistono solo
141
+ alla fine, **i turni con ricerca si accumulano invece di andare in streaming**; i turni normali continuano a
142
+ streaming token per token.
143
+
144
+ ---
145
+
146
+ ## Perché un browser e non la loro API HTTP
147
+
148
+ La strada ovvia — chiamare l'API di `chat.deepseek.com` — è stata tentata e abbandonata. Il sito fa passare ogni
149
+ messaggio attraverso due cancelli:
150
+
151
+ | Cancello | Cosa significa |
152
+ |---|---|
153
+ | `/api/v0/chat/create_pow_challenge` | una **prova di lavoro** per messaggio |
154
+ | `challenges.cloudflare.com/turnstile` | una barriera anti-bot sull'origine |
155
+
156
+ Reimplementare l'uno o l'altro è una partita persa: sono offuscati, cambiano, e quando cambiano il guasto sembra
157
+ esattamente un guasto di rete. **La pagina risolve già entrambi per le proprie richieste.**
158
+
159
+ Quindi l'adattatore non parla mai HTTP con il sito. Guida la pagina, e la pagina fa il resto. Autenticazione,
160
+ prova di lavoro e Turnstile smettono di essere un nostro problema e non possono rompersi indipendentemente dal
161
+ sito stesso.
162
+
163
+ **Verificato:** un semplice `HEAD` al sito restituisce `403`; la strada del browser restituisce risposte.
164
+
165
+ ---
166
+
167
+ ## Limiti, detti con onestà
168
+
169
+ **La chiamata di strumenti è emulata.** Una chat web non ha un canale strutturato per gli strumenti: vengono
170
+ descritti nel prompt e una chiamata viene recuperata estraendo un oggetto JSON dalla risposta. Funziona —
171
+ verificato — ma è più debole della chiamata nativa: un modello che ignora l'istruzione risponde in prosa e
172
+ l'harness non vede alcuno strumento in quel turno. **Per lavoro agentico pesante la strada API è più affidabile.**
173
+ La strada web è migliore per conversazione, risposte lunghe, subagenti, compattazione e ogni turno in cui il
174
+ modello deve essere quello web.
175
+
176
+ **Dipende da un sito che non controlli.** Quando la pagina cambia forma, il plugin deve cambiare con lei. È
177
+ l'avviso di sviluppo attivo in cima a questa pagina, non una formalità.
178
+
179
+ **Non è affiliato a DeepSeek.** Non è approvato né supportato da loro, e non ti dà alcun diritto sul loro
180
+ servizio. Il tuo uso di quel servizio è regolato dai loro termini.
181
+
182
+ ---
183
+
184
+ ## Configurazione
185
+
186
+ `cordis.patch.yml` imposta:
187
+
188
+ | chiave | predefinito | significato |
189
+ |---|---|---|
190
+ | `port` | `9222` | la porta di debug del browser |
191
+ | `defaultModel` | `deepseek-chat-search` | usato quando una chiamata non indica un modello |
192
+ | `showBrowser` | `true` | se la finestra è visibile mentre lavora |
193
+
194
+ Il browser deve avere una sessione aperta su `chat.deepseek.com`. La prima chiamata avvia Brave con il profilo
195
+ **Default** se la porta non è già aperta. Se Brave è già in esecuzione *senza* porta di debug, l'adattatore non
196
+ riesce a collegarsi e lo dice chiaramente invece di fallire in silenzio.
197
+
198
+ ---
199
+
200
+ ## Struttura
201
+
202
+ ```
203
+ index.js l'adattatore: StreamChunk dell'harness ←→ motore
204
+ lib/engine.mjs browser + pagina: scrivere, inviare, trasmettere, assestare
205
+ lib/cdp.mjs client Chrome DevTools Protocol, zero dipendenze
206
+ lib/prompt.mjs appiattisce messaggi + strumenti in un messaggio; recupera le chiamate dalla risposta
207
+ lib/savings.mjs quanto ti ha fatto risparmiare la strada web, prezzato contro l'API
208
+ lib/i18n.mjs 51 lingue per il pannello
209
+ ```
210
+
211
+ **Nessuna dipendenza.** Node 24 include `WebSocket` e `fetch` globali, che è tutto ciò di cui il CDP ha bisogno:
212
+ il flusso dei token non lascia mai il processo host e non c'è un salto IPC per ogni delta.
213
+
214
+ ---
215
+
216
+ ## Sostegno
217
+
218
+ Uncle Sam esiste perché tu smetta di pagare per token. Se ti ha fatto risparmiare e vorresti vedere il prossimo
219
+ costruito su hardware che non finisce la memoria a metà strada:
220
+
221
+ **[☕ revolut.me/operatingtag](https://revolut.me/operatingtag)**
222
+
223
+ Una stella sul repository o una segnalazione di bug utile valgono lo stesso.
224
+
225
+ ---
226
+
227
+ ## Licenza
228
+
229
+ **CC BY-NC-ND 4.0** — Creative Commons Attribuzione-NonCommerciale-NonOpereDerivate 4.0 Internazionale.
230
+ Copyright (c) 2026 Darren T. Weldon, pubblicato con il nome Operating Tag.
231
+
232
+ **Tutto l'accordo in una riga: installalo e usalo, personalmente, gratis. Non modificarlo, non condividerlo, non
233
+ venderlo e non usarlo in un'azienda.**
234
+
235
+ Questo non è open source, e non finge di esserlo.
236
+
237
+ ```
238
+ puoi installarlo ed eseguirlo · usarlo personalmente, senza fini commerciali
239
+ leggere il codice per capirlo
240
+
241
+ non puoi modificarlo, adattarlo o crearne un'opera derivata
242
+ copiarlo, distribuirlo, pubblicarlo, rispecchiarlo o renderlo
243
+ disponibile a chiunque altro
244
+ caricarlo su qualsiasi hosting di codice, registro, sito, forum o chat
245
+ venderlo, rivenderlo, affittarlo o farsi pagare per esso o per accedervi
246
+ includerlo in qualsiasi cosa consegni a un'altra persona
247
+ usarlo per qualsiasi fine commerciale o nell'esercizio di un'attività d'impresa
248
+ ```
249
+
250
+ **Le uniche due fonti legittime sono questo repository e il pacchetto npm
251
+ [`@operatingtag/dsh-unclesam`](https://www.npmjs.com/package/@operatingtag/dsh-unclesam).** Una copia arrivata
252
+ da qualunque altro posto non è sotto licenza, chiunque te l'abbia fornita. Se vedi questo software in vendita, non
253
+ lo sta vendendo l'autore.
254
+
255
+ **L'uso commerciale, e il diritto di modificare e distribuire, sono disponibili con una licenza scritta
256
+ separata.** Chiedi a Operating Tag e avrai una risposta chiara e un prezzo chiaro.
257
+
258
+ Il file [LICENSE](LICENSE) è quello che fa fede, e si apre con lo stesso riassunto in inglese semplice.
259
+
260
+ ---
261
+
262
+ Uncle Sam è un plugin indipendente. Non affiliato a DeepSeek, né approvato né supportato da loro.
263
+
264
+ ```
265
+ @operatingtag/dsh-unclesam v1.0.1
266
+ Autore Operating Tag
267
+ Licenza CC BY-NC-ND 4.0 — libero da usare, non da modificare, condividere o vendere
268
+ ```