[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.hi.md) · [Nederlands](README.nl.md) · [Українська](README.uk.md) · [Tiếng Việt](README.vi.md) · [Bahasa Indonesia](README.id.md) · [ไทย](README.th.md) · [فارسی](README.fa.md) · [Ελληνικά](README.el.md) · [עברית](README.he.md) · [Čeština](README.cs.md) · [Română](README.ro.md) · [Svenska](README.sv.md) · [Dansk](README.da.md) · [Suomi](README.fi.md) · [Magyar](README.hu.md) · [العربية](README.ar.md) · [Oʻzbekcha](README.uz.md) · [Azərbaycan](README.az.md) · [Български](README.bg.md) · [Hrvatski](README.hr.md) · [Қазақша](README.kk.md) · [ქართული](README.ka.md) · [नेपाली](README.ne.md) · [සිංහල](README.si.md) · [தமிழ்](README.ta.md) · [తెలుగు](README.te.md) · [मराठी](README.mr.md) · [বাংলা](README.bn.md) · [ខ្មែរ](README.km.md) · [Lietuvių](README.lt.md) · [Bahasa Melayu](README.ms.md) · [မြန်မာ](README.my.md) · [Norsk](README.no.md) · [Slovenčina](README.sk.md) · [Slovenščina](README.sl.md) · [Српски](README.sr.md) · [Kiswahili](README.sw.md) · [Filipino](README.tl.md) · [اردو](README.ur.md)

# Uncle Sam

**Dostawca modeli dla DeepSeek Harness, który odpowiada przez Twoją własną przeglądarkę, na koncie web, które już masz — zamiast przez płatne API.**

**Wtyczka DeepSeek Harness, która steruje chat.deepseek.com w prawdziwej przeglądarce — darmowa alternatywa dla API DeepSeek. Czat, DeepThink i wyszukiwanie w sieci na własnym koncie: bez klucza API i bez płacenia za tokeny.**

**☕ [Postaw mi kawę](https://revolut.me/operatingtag)** — pisze to jedna osoba, nocami, bez finansowania. Nie ma innego modelu przychodu. Gwiazdka albo zgłoszenie błędu są warte tyle samo.

> **Ten produkt jest w aktywnym rozwoju. Spodziewaj się błędów.**
>
> Działa, jest szybki i od tygodni używany codziennie — ale ciągle się zmienia, a ścieżka przeglądarki zależy od
> strony, która zmienia się bez ostrzeżenia. Jeśli coś się zepsuje, zrzut ekranu i numer wersji są warte więcej niż
> opis. Przypnij wersję, jeśli na nim polegasz.

```
dostawca  deepseek-web
modele    deepseek-chat · deepseek-chat-search · deepseek-reasoner · deepseek-reasoner-search
koszt     nic za token — korzysta z subskrypcji już otwartej w Twojej przeglądarce
stan      w rozwoju — spodziewaj się błędów
zmierzone pierwszy token ~1,9 s · narzut ~0,6 s · cała tura w ~2,5 s
```

Odpowiedzi ze ścieżki web są podpisane **🔴 Uncle Sam**. Ta nazwa to żart, nie twierdzenie: oznacza, która ścieżka
odpowiedziała, a odpowiedzi API nie mają żadnego podpisu. Zawsze wiesz, kto Ci odpowiedział.

---

## Co oszczędza

API liczy opłatę za token. Produkt web nie. Ta wtyczka rejestruje `deepseek-web` jako dostawcę modeli i odpowiada
na każde wywołanie, sterując `chat.deepseek.com` w prawdziwej przeglądarce — pracę wykonuje strona, sesję trzyma
przeglądarka i nic nie jest mierzone.

| | Ścieżka API | Ścieżka web |
|---|---|---|
| Koszt | za token, zawsze | nic ponad subskrypcję |
| Szybkość | szybko | ~2,5 s na turę, zmierzone |
| Wywołanie narzędzi | natywne i pewne | emulowane, działa, ale słabsze |
| Zależy od | API | strony, która zmienia się bez ostrzeżenia |

**Obie ścieżki pozostają zainstalowane.** Przełącznikiem jest wybór modelu: domyślnie tania ścieżka, a po API
sięgasz, gdy zadanie wymaga pewnych narzędzi.

---

## Instalacja

Uncle Sam to **wtyczka DeepSeek Harness**. Poza harnessem nic nie robi, bo rejestruje dostawcę modeli, trasę na
hoście i dwa miejsca w interfejsie.

**Wymagania**

| | |
|---|---|
| DeepSeek Harness | dowolna nowsza kompilacja z menedżerem wtyczek |
| Przeglądarka | zalecany Brave; Edge używany automatycznie, gdy Brave jest niedostępny |
| Node | 22 lub nowszy |

**Z npm**

```bash
pnpm add @operatingtag/dsh-unclesam
```

**Z tego repozytorium**

```bash
git clone https://github.com/operatingtag/dsh-unclesam
cd dsh-unclesam
pnpm install
```

Następnie dodaj wiersz pakietu do swojego profilu, żeby harness go załadował:

```yaml
# cordis.patch.yml
- insert:
    - id: dsh-unclesam
      name: '@operatingtag/dsh-unclesam'
      config:
        port: 9222
        defaultModel: deepseek-chat-search
        autoMinimise: true
```

**Albo z folderu:** Ustawienia → Wtyczki → zainstaluj ze ścieżki lokalnej, wskazując folder z `package.json`.

### Pierwsze uruchomienie

Kliknij **Zaloguj się / otwórz czat**. Przeglądarka otworzy się i **pozostanie widoczna**, dopóki nie zalogujesz
się na chat.deepseek.com. Potem sama się zminimalizuje i już jej nie zobaczysz. Sesja żyje w profilu
przeglądarki, więc **wtyczka nie przechowuje żadnego hasła** — nie ma czego ujawnić.

Powinieneś wtedy zobaczyć:

1. **Ustawienia → Uncle Sam** — stronę z wierszami stanu i przyciskiem logowania.
2. **Pod polem wiadomości** — `● DeepSeek Harness` albo `● Uncle Sam`, kliknij, by przełączyć.
3. **Listę modeli** — cztery modele `(web)` obok modeli API.

### Usuwanie

Ustawienia → Wtyczki → Uncle Sam → Odinstaluj. Poza profilem przeglądarki, w którym się zalogowałeś, nic nie jest
zapisywane.

---

## Przełącznik API / web

**Przełącznikiem jest wybór modelu.** Nie ma drugiego elementu sterującego, bo drugi element, który też wybierałby
model, byłyby dwoma źródłami prawdy dla jednej decyzji.

| Wybierz ten model | Ścieżka | DeepThink | Wyszukiwanie |
|---|---|---|---|
| `DeepSeek Chat (web)` | przeglądarka | wył. | wył. |
| `DeepSeek Chat + Search (web)` | przeglądarka | wył. | **wł.** |
| `DeepSeek Reasoner (web)` | przeglądarka | **wł.** | wył. |
| `DeepSeek Reasoner + Search (web)` | przeglądarka | **wł.** | **wł.** |
| dowolny model bez `(web)` | API | — | — |

Obok nazwy modelu pojawia się plakietka **WEB** lub **API**, więc aktywna ścieżka jest widoczna na pierwszy rzut
oka. Gdy nazwa nie jest rozpoznana, plakietka nie pokazuje niczego zamiast zgadywać — błędna plakietka byłaby
gorsza niż żadna.

Wybór przetrwa ponowne uruchomienie. **DeepThink** to przebieg rozumowania; **Wyszukiwanie** pozwala mu czytać
żywy internet.

### Wyszukiwanie widać w rozmowie

Z modelem wyszukiwania jedna tura daje **dwa bloki** — zapytanie, którego użył, znalezione źródła, a potem
odpowiedź, która z nich skorzystała:

```
Wyszukiwanie w sieci — „Jaki jest dzisiejszy nagłówek technologiczny?”
Źródła (4): yna.co.kr · fnnews.com · rthk.hk · sina.com.cn
Linki: https://k.sina.com.cn/article_... http://www.21jingji.com/article_...
```

Strona nie ujawnia zapytania wpisanego wewnętrznie, więc cytowane zapytanie to wiadomość, która uruchomiła
wyszukiwanie. Źródła i linki są odczytywane ze strony po ustabilizowaniu się odpowiedzi. Ponieważ źródła istnieją
dopiero na końcu, **tury z wyszukiwaniem są buforowane zamiast strumieniowane**; zwykłe tury nadal płyną token po
tokenie.

---

## Dlaczego przeglądarka, a nie ich HTTP API

Oczywista droga — wywołanie własnego API `chat.deepseek.com` — została wypróbowana i porzucona. Serwis
przepuszcza każdą wiadomość przez dwie bramy:

| Brama | Co to znaczy |
|---|---|
| `/api/v0/chat/create_pow_challenge` | **dowód pracy** na każdą wiadomość |
| `challenges.cloudflare.com/turnstile` | bariera antybotowa na originie |

Ponowne zaimplementowanie którejkolwiek to przegrana gra: są zaciemnione, zmieniają się, a gdy się zmieniają,
awaria wygląda dokładnie jak awaria sieci. **Strona już rozwiązu-je obie na potrzeby własnych żądań.**

Adapter nigdy więc nie rozmawia z serwisem po HTTP. Steruje stroną, a reszta należy do strony. Uwierzytelnianie,
dowód pracy i Turnstile przestają być naszym problemem i nie mogą zepsuć się niezależnie od samego serwisu.

**Sprawdzone:** zwykły `HEAD` do serwisu zwraca `403`; ścieżka przez przeglądarkę zwraca odpowiedzi.

---

## Ograniczenia, powiedziane uczciwie

**Wywołanie narzędzi jest emulowane.** Czat web nie ma strukturalnego kanału narzędzi: narzędzia opisuje się w
prompcie, a wywołanie odzyskuje się, parsując obiekt JSON z odpowiedzi. To działa — sprawdzone — ale jest słabsze
niż natywne wywołanie: model, który zignoruje instrukcję, odpowiada prozą, a harness nie widzi w tej turze żadnego
użycia narzędzi. **Do ciężkiej pracy agentowej ścieżka API jest pewniejsza.** Ścieżka web najlepiej nadaje się do
rozmowy, długich odpowiedzi, podagentów, kompakcji i każdej tury, w której model musi być modelem web.

**Zależy od strony, której nie kontrolujesz.** Gdy strona zmienia kształt, wtyczka musi zmienić się razem z nią.
To jest ostrzeżenie o aktywnym rozwoju na górze tej strony, nie formalność.

**Nie jest powiązana z DeepSeek.** Nie jest przez nich firmowana ani wspierana i nie daje Ci żadnych praw do ich
usługi. Twoje korzystanie z tej usługi regulują ich warunki.

---

## Konfiguracja

`cordis.patch.yml` ustawia:

| klucz | domyślnie | znaczenie |
|---|---|---|
| `port` | `9222` | port debugowania przeglądarki |
| `defaultModel` | `deepseek-chat-search` | używany, gdy wywołanie nie podaje modelu |
| `showBrowser` | `true` | czy okno jest widoczne podczas pracy |

Przeglądarka musi mieć zalogowaną sesję `chat.deepseek.com`. Pierwsze wywołanie uruchamia Brave na profilu
**Default**, jeśli port nie jest jeszcze otwarty. Jeśli Brave już działa *bez* portu debugowania, adapter nie może
się podłączyć i mówi to wprost, zamiast cicho zawieść.

---

## Budowa

```
index.js          adapter: StreamChunk harnessu  ←→  silnik
lib/engine.mjs    przeglądarka + strona: pisz, wyślij, strumieniuj, ustabilizuj
lib/cdp.mjs       klient Chrome DevTools Protocol, zero zależności
lib/prompt.mjs    spłaszcza wiadomości + narzędzia do jednej wiadomości; odzyskuje wywołania z odpowiedzi
lib/savings.mjs   ile zaoszczędziła ścieżka web, wycenione wobec API
lib/i18n.mjs      51 języków panelu
```

**Żadnych zależności.** Node 24 ma globalne `WebSocket` i `fetch`, a CDP niczego więcej nie potrzebuje — strumień
tokenów nigdy nie opuszcza procesu hosta i nie ma skoku IPC na każdą deltę.

---

## Wsparcie

Uncle Sam istnieje po to, żebyś przestał płacić za token. Jeśli oszczędził Ci pieniądze i chciałbyś zobaczyć
następny na sprzęcie, któremu nie kończy się pamięć w połowie drogi:

**[☕ revolut.me/operatingtag](https://revolut.me/operatingtag)**

Gwiazdka w repozytorium albo użyteczne zgłoszenie błędu są warte tyle samo.

---

## Licencja

**CC BY-NC-ND 4.0** — Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 4.0
Międzynarodowe. Copyright (c) 2026 Darren T. Weldon, opublikowane pod nazwą Operating Tag.

**Cała umowa w jednym zdaniu: zainstaluj i używaj osobiście, za darmo. Nie zmieniaj, nie udostępniaj, nie
sprzedawaj i nie używaj w firmie.**

To nie jest open source i nie udaje, że jest.

```
możesz       zainstalować i uruchomić · używać osobiście, niekomercyjnie
             czytać źródło, żeby je zrozumieć

nie możesz   modyfikować, adaptować ani tworzyć utworu zależnego
             kopiować, rozpowszechniać, publikować, tworzyć kopii lustrzanej
             ani udostępniać komukolwiek
             wgrywać na jakikolwiek hosting kodu, rejestr, stronę, forum lub czat
             sprzedawać, odsprzedawać, wynajmować ani pobierać opłat za niego
             lub za dostęp do niego
             włączać do czegokolwiek, co przekazujesz innej osobie
             używać w jakimkolwiek celu komercyjnym lub w ramach działalności gospodarczej
```

**Jedyne dwa legalne źródła to to repozytorium i pakiet npm
[`@operatingtag/dsh-unclesam`](https://www.npmjs.com/package/@operatingtag/dsh-unclesam).** Kopia z
jakiegokolwiek innego miejsca nie jest licencjonowana, kimkolwiek została dostarczona. Jeśli widzisz to
oprogramowanie na sprzedaż, nie sprzedaje go autor.

**Użycie komercyjne oraz prawo do modyfikowania i rozpowszechniania są dostępne na podstawie odrębnej pisemnej
licencji.** Zapytaj Operating Tag — dostaniesz jasną odpowiedź i jasną cenę.

Wiążący jest plik [LICENSE](LICENSE), a otwiera się tym samym podsumowaniem prostym angielskim.

---

Uncle Sam to niezależna wtyczka. Niepowiązana z DeepSeek, nie firmowana ani nie wspierana przez nich.

```
@operatingtag/dsh-unclesam   v1.3.5
Autor      Operating Tag
Licencja   CC BY-NC-ND 4.0 — wolno używać, nie wolno zmieniać, udostępniać ani sprzedawać
```
