Przemysław Zalewski

Buduję agentów AI od 2024

Programista AI, który wdraża agentów na produkcję i tam ich utrzymuje

Dla firm, które potrzebują funkcji AI albo agenta na produkcji: tool calling, serwery MCP, ewaluacje, obrona przed prompt injection i twardy sufit kosztów. Zapytaj mojego agenta niżej, czy pasuję do Twojego stacku, a potem umów rozmowę.

Chcesz najpierw liczbę? Zobacz godziny, cenę i termin →

Rozmowy w tym tygodniu · start pracy 3 listopada 2026 · Wrocław, zdalnie

Przemysław Zalewski
~2/3zmergowanych PR w 2026 zbudowanych z agentami AI, prawie wszystkie przez mój review albo merge
260+moich zmergowanych PR w 2026 i 300+ review cudzych PR
10 000+programów partnerskich w katalogu, ~97% znalezionych automatycznie
~3×więcej kontrybucji na GitHubie w 2026 niż w 2025, 8500+ do października, z agentami pod wymuszonymi regułami

Brzmi znajomo?

Problemy z agentami AI, które rozwiązuję w 2026

Czy prompt injection może wyciągnąć dane przez naszego agenta AI?

Tak. 18 sierpnia 2026 NVD opublikowało CVE‑2026‑75130: zatrute instrukcje podawane przez serwer MCP Context7 mogły sprawić, że podłączony agent kodujący AI wysyłał napastnikowi dane logowania z plików środowiskowych przy zwykłym zapytaniu o dokumentację. VulnCheck ocenił lukę na 9,0 w skali CVSS.

Każdy mail, dokument i stronę traktuję jako niezaufane wejście: oddzielone od poleceń i czytane przez wąskie narzędzia, które nie mają szerszego dostępu niż osoba, w której imieniu działają. Tak to zbudowałem jako główny inżynier Patriot Mail, klienta poczty z AI, w którym każdą wiadomość pisze ktoś obcy. W maju 2026 zaatakowałem asystenta AI w produkcie wzorcami prompt injection, w nowej sesji wyciągnąłem jego kontekst i ustaliłem zasadę, że prompt systemowy traktujemy jak publiczny, więc nie trafia do niego nic tajnego.

Nasz model Claude jest wycofywany. Czy funkcja dalej zadziała?

30 listopada 2026 Anthropic wyłącza Claude Sonnet 4.5 i jako następcę wskazuje Claude Sonnet 5.5, a zapytania do wycofanego modelu kończą się błędem (wycofywane modele). Obiecane uprzedzenie to co najmniej 60 dni.

Przed terminem puszczam Wasze prawdziwe przypadki na następcę i oceniam oba modele zestawem testów i LLM‑as‑judge, więc decyzję o zmianie podejmujecie na liczbach, a nie na wyczucie. W sierpniu 2026 zbudowałem Korpo Tłumacza tak, by działał na kilku modelach, w tym lokalnym, więc wymiana wycofanego albo droższego modelu to zmiana ustawienia, a nie przepisywanie kodu.

Masz to u siebie? Umów bezpłatne 30 minut →

Agent AI działa na demo, a na produkcji się sypie

W badaniu VB Intelligence z 8 października 2026 aż 61% badanych z firm, które testują AI przed wdrożeniem, widziało w ciągu ostatnich 12 miesięcy agenta AI albo funkcję z LLM, która przeszła wewnętrzne testy, a potem zawiodła klientów.

Zanim funkcja wyjdzie, jej jakość ma wynik liczbowy na Waszych prawdziwych przypadkach, liczony od nowa przy każdej zmianie promptu albo modelu. Na takiej pętli platforma treści z agentami, którą budowaliśmy we dwóch, opublikowała tysiące artykułów. We wrześniu 2026 asystent AI w aplikacji rozmawiał, ale nie wykonywał akcji; w jeden dzień znalazłem trzy osobne usterki w kodzie dwóch zespołów, naprawiłem naszą część, a drugiemu zespołowi dałem dokładną listę zmian.

Jak nie dostać gigantycznego rachunku za API od funkcji z AI?

W raporcie Harness o kosztach AI (29 lipca 2026, 700 liderów i inżynierów) 72% miało w ostatnim roku nieoczekiwany skok kosztów AI, a tylko 20% umiało w ciągu kilku godzin ustalić, czemu rachunek się podwoił.

Dodaję limity per IP i globalne oraz sufit kosztów pilnowany przez samą aplikację w Durable Object. Tak działają cztery moje projekty poboczne na tej domenie, więc skok ruchu albo nadużycie ma znany maksymalny koszt. Gdy pipeline treści AI przepalał pieniądze na przebiegach padających na ostatnim kroku, wprowadziłem limit na godzinę, więc nieudany przebieg kosztuje teraz kilka dolarów.

Masz jeden z tych problemów? Umów bezpłatne 30 minut →

Dlaczego ja

Mierzone, nigdy na czuja

Zanim funkcja wyjdzie, jej jakość jest liczbą na dashboardzie, wyliczoną na przypadkach testowych przez LLM‑as‑judge. Gdy wychodzi nowy model, te same testy decydują, czy na niego przejść.

Sufit kosztów, bez niespodzianek

Każde wywołanie modelu przechodzi przez limity per IP i globalne oraz sufit kosztów, którego pilnuje sama aplikacja. Agent niżej działa pod takimi samymi limitami, więc nagły ruch albo nadużycie ma z góry znany koszt.

Cudzy tekst nigdy nie wydaje poleceń

Klient poczty, w którym każda wiadomość to niezaufane wejście, nauczył mnie owijać tekst użytkownika, trzymać wąskie narzędzia i nie dawać agentowi więcej, niż widziałby człowiek.

MCP, którego ludzie naprawdę używają

Serwer MCP doprowadziłem do pierwszych zewnętrznych użytkowników. Agent nie dostaje szerszego dostępu niż człowiek, a PostHog pokazuje, którzy klienci go używają.

Pokaz na żywo

Zapytaj mojego agenta o mnie

Ten czat działa na Workers AI z trzema narzędziami: check_availability, match_stack i list_case_studies. Każde wywołanie narzędzia pojawia się w śladzie, zanim odpowiedź zacznie spływać.

Ładuję pokaz…

Masz ogłoszenie? Wklej je do czatu i zapytaj, czego mi brakuje.

Dowody

Praca, którą mogę pokazać

Problem, co zrobiłem, efekt. Nazwy klientów tylko tam, gdzie wolno mi ich użyć.

Agent AI jako członek zespołu, pod wymuszonymi regułami

Problem
Agenci kodujący piszą kod szybciej, niż zespół zdąży go przejrzeć. Czteroosobowy zespół chciał tempa bez bagna na mainie.
Co zrobiłem
Napisałem zestaw reguł wspólny dla Claude Code i Codexa: mechaniczne kontrole zamiast spisanych zasad, bramki lint i testów dla bezpieczeństwa, powierzchni API i CSP, agenci na mainie z hookami, każdy PR przejrzany przez człowieka, treści z AI jawnie oznaczone.
Efekt
W 2026 około dwóch trzecich zmergowanych PR w dwóch produktach powstało z agentami, a prawie wszystkie przeszły przez mój review albo merge. Zmergowałem 260+ własnych PR i zrobiłem review 300+ cudzych. Mój własny wynik w tych dwóch produktach urósł z poniżej 1000 commitów w 2025 do 7500+ do października 2026.

~2/3 PR z agentami 300+ review 7500+ commitów w 2026

Platformy treści AI: R&D i platforma agentowa, jakość mierzona, nie zakładana

Problem
Potrzebne były tysiące artykułów, z wbudowanym oznaczeniem AI i bez publikowania slopu.
Co zrobiłem
Pod koniec 2024 zbudowałem sterownik agentów: wymuszone warunki stopu, limity wywołań narzędzi, równoległość, łańcuchy delegacji. Jakość dawały best‑of‑n, LLM‑as‑judge, punktacja względem fixture’ów i kontrola plagiatu, z wieloma modelami ocenianymi przez kolejne wydania.
Efekt
Tysiące artykułów przeszło przez platformę. Treści wdrażane automatycznie na 300+ wygenerowanych stron, operacje hurtowe oparte na gicie i monitoring reputacji. Od listopada 2023 do maja 2025 pracowały nad tym dwie osoby. Wymyślone nazwiska autorów zniknęły ze wszystkich 300+ stron w tydzień, a zmierzony weekend na produkcji dał około 94% udanych przebiegów po mniej więcej dolarze za artykuł.

tysiące artykułów 300+ stron LLM‑as‑judge

Zobacz też: AI w Twojej firmie

Serwer MCP od pierwszego merge’a do pierwszych zewnętrznych użytkowników

Problem
Użytkownicy Sandtime.io, trackera czasu, który zbudowałem w Sanddev i z którego korzysta 4000+ freelancerów i zespołów, chcieli logować czas z asystentów AI. API istniało, powierzchnia dla agentów nie.
Co zrobiłem
Ustawiłem powierzchnię narzędzi, usunąłem narzędzia destrukcyjne, przepuściłem każdą operację przez istniejące kontrolery REST, żeby agent nie miał szerszego dostępu niż człowiek, i od pierwszego dnia mierzyłem adopcję per klient w PostHogu.
Efekt
Pierwsi zewnętrzni użytkownicy. Regułę ochrony przed botami, która odrzucała klientów MCP po user agencie, znalazłem i usunąłem tego samego dnia, bo pokazał to dashboard.

MCP OAuth dashboard adopcji

Masz podobny problem? Umów bezpłatną rozmowę →

Jedna noga w drzwiach

Nie czas na projekt? Zacznij od tygodnia albo jednego PR‑a.

Dwa sposoby, żeby zobaczyć, jak pracuję, zanim zamówisz sprint. Stały zakres, widełki ceny poniżej, ostateczna kwota na piśmie w ciągu 24 godzin od rozmowy.

Tygodniowy audyt kodu AI i agentów

Ręcznie czytam repo, CI, testy, wdrożenia i miejsca, których zespół unika. Dostajesz pisemny raport: ryzyka uszeregowane po koszcie, co naprawić najpierw, plan z kamieniami milowymi i decyzję go/no‑go, którą da się obronić. Raport zostaje u Ciebie bez względu na to, czy pracujemy dalej.

4 500⁠–⁠8 800 zł netto · 30⁠–⁠40 h · Zobacz cenę i termin →

Code review jednego pull requesta albo modułu

Przyślij diff, który Cię martwi. W kilka dni dostajesz komentarze do linii, trzy rzeczy, które zmieniłbym najpierw, i werdykt: zmergowałbym czy nie. W jednym produkcie przejrzałem od 2018 roku ponad 800 pull requestów.

300⁠–⁠880 zł netto · 2⁠–⁠4 h · Zobacz cenę i termin →

Umów rozmowę i wybierz Najpierw bezpłatna rozmowa 30 min. Jeśli żadne nie pasuje, powiem to na rozmowie.

Jak to działa

Trzy kroki od tej strony do działającego projektu.

  1. 1

    Rozmowa 30 minut

    Opisujesz produkt i problem. Ja zadaję pytania, które zadałbym pierwszego dnia.

  2. 2

    Zakres na piśmie

    W ciągu 24 godzin po rozmowie dostajesz krótki plan na piśmie: co budujemy najpierw, co mierzymy, jak pracujemy i ile to kosztuje. Bez prezentacji.

  3. 3

    Działający kawałek w pierwszym tygodniu

    Wdrożony, zmierzony i gotowy do przejrzenia. Dalej tempo wyznaczają liczby.

Dopasowanie

Czy to pasuje?

Dobre dopasowanie, gdy

  • Potrzebujesz seniora, który bierze odpowiedzialność za dowiezienie, nie pary rąk
  • Produkt ma wyjść i być mierzony, z product managerem albo bez
  • Współpraca solo albo jeden zespół do czterech osób, który prowadzę bezpośrednio
  • TypeScript, React, Node.js, Cloudflare, Postgres, PostHog, a Python, gdy praca tego wymaga

Raczej nie, gdy

  • Projekt na dziesięcioosobowy zespół dostawcy
  • Stack zbudowany wokół Javy albo chmury, w której nie pracuję
  • Body leasing na godziny bez wpływu na sposób pracy

Styl pracy

Jak pracuję

Agenci pod regułami

Claude Code i Codex pracują na mainie z hookami, bramkami lint i testów. Model podpowiada, kryteria decydują. Każdy PR ma ludzki review, a treści z AI są oznaczone.

Mierzone, nie zakładane

PostHog w każdym projekcie od pierwszego dnia. Plan zdarzeń dla każdej funkcji i dashboardy, z których zarząd bierze liczby, zamiast o nie pytać.

Zero zaległych bugów

Błąd jest naprawiony albo świadomie zamknięty, nigdy odłożony. Alerty i śledzenie błędów w każdym projekcie, więc o problemach dowiaduję się przed klientem.

Warto wiedzieć

Szczegóły API modeli, które decydują o koszcie i niezawodności

Krótkie prompty po cichu nie trafiają do cache

Każdy model Claude ma minimalną długość cache’owanego fragmentu, od 512 do 4096 tokenów. Poniżej zapytanie idzie bez cache i nie zwraca błędu (prompt caching).

Zegar cache rusza z zapytaniem

5 minut życia cache liczy się od początku zapytania, nie od końca odpowiedzi, więc długa odpowiedź strumieniowa zjada to okno (prompt caching).

Odczyt z cache omija limit wejścia

W większości modeli Claude do limitu tokenów wejściowych na minutę liczą się tylko tokeny spoza cache, więc wysoki odsetek trafień mnoży przepustowość (limity).

max_tokens działa odwrotnie w OpenAI

Anthropic nie liczy max_tokens do limitu wyjścia. OpenAI liczy do limitu tokenów na minutę większą z wartości: max_tokens albo szacunek wejścia (Anthropic, OpenAI).

Narzędzia dokładają ukryty prompt systemowy

Każde zapytanie do Claude z narzędziami niesie dodatkowy prompt systemowy do ich obsługi, płatny jak tokeny wejściowe (cennik).

Structured outputs odrzucają limity liczbowe

Structured outputs w Claude zwracają 400 dla minimum, maximum, minLength i maxLength. Odmowa albo ucięcie przez max_tokens nadal mogą złamać schemat (structured outputs).

FAQ

Pytania, które padają przed umówieniem rozmowy

Skąd mam wiedzieć, że zmiana promptu nie zepsuła asystenta?
Uruchom te same przypadki testowe przed zmianą i po niej, każdy kilka razy; przypadek, który wcześniej przechodził, a teraz nie przechodzi, to regresja promptu. Eval Desk robi to za darmo na modelach Claude: pokazuje, co się zepsuło, co naprawiło, które przypadki są niestabilne, i różnice w prompcie.
Jak bronisz się przed prompt injection?
Tekst użytkownika wchodzi do promptu jako dane, owinięty i z escape, ze stałą instrukcją, że nigdy nie jest poleceniem. Narzędzia są wąskie i tylko do odczytu, chyba że produkt wymaga więcej. Odpowiedzi są filtrowane, zanim trafią na ekran. Agent na tej stronie tak działa.
Jakie modele i dostawcy?
Claude, OpenAI i modele otwarte na Workers AI, dobierane do zadania i wymieniane, gdy nowe wydanie zmienia obraz. Trzymam ewaluacje, więc zmiana modelu to zmierzona decyzja.
Ile będą nas kosztować wywołania modeli?
Tyle, ile ustalimy przed startem: limity per IP i globalne oraz sufit kosztów, którego pilnuje sama aplikacja, jak w agencie na tej stronie. Rachunek obniżają cache promptów i model dobrany do zadania, a ewaluacje pokazują, czy tańszy model wystarczy.
Co obejmuje tygodniowy audyt kodu pod agentów i MCP?
To ten sam tygodniowy audyt kodu co na każdej stronie, skupiony na agentach: ręcznie czytam kod, API, autoryzację, powierzchnię narzędzi, dane do ewaluacji i analitykę, a potem oddaję raport: co agent mógłby bezpiecznie robić dziś, co wymaga pracy i plan. To najtańszy sposób, żeby sprawdzić, czy w ogóle budować. Audyt to pierwszy szczebel drabinki ofert.
Używasz agentów kodujących u klientów?
Tak, pod wymuszonymi regułami i z oznaczeniem, jak w case study wyżej. Ty dostajesz wynik, odpowiedzialność zostaje przy mnie. Jeśli zabronisz narzędzi AI, piszę ręcznie. Te same reguły obowiązują, gdy prowadzę projekt jako fractional tech lead.
Zrobisz nasz produkt dostępnym dla cudzych agentów?
Od tego jest serwer MCP. Wydałem taki zewnętrznym użytkownikom, usunąłem z niego narzędzia destrukcyjne i mierzyłem adopcję per klient. To samo podejście dla Twojego produktu.
Od kiedy możesz zacząć?
Od 3 listopada 2026. Umów rozmowę, a zaczniemy od tygodniowego audytu kodu. Jeśli skończy się decyzją „nie idziemy”, tracisz tydzień, nie kwartał, a raport zostaje u Ciebie.
Czemu mój prompt w Claude nie trafia do cache?
Zwykle cache’owany fragment jest krótszy niż minimum modelu, a API pomija cache bez błędu. Pamiętaj też, że 5 minut liczy się od początku zapytania (prompt caching).
Czy structured outputs mogą zwrócić niepoprawny JSON?
Tak, przy odmowie albo ucięciu przez max_tokens. Zakresy liczb nie są wymuszane schematem, więc sprawdzaj je w kodzie (structured outputs).
Co się dzieje, gdy API Claude dojdzie do miesięcznego limitu wydatków?
Zwraca 429 bez nagłówka retry-after, a automatyczne ponowienia padają, dopóki dostęp nie wróci (limity). Alerty i ścieżka zapasowa należą do projektu.
Czy prompt injection może wyciągnąć dane przez naszego agenta AI?
Tak. 18 sierpnia 2026 NVD opublikowało CVE‑2026‑75130: zatrute instrukcje podawane przez serwer MCP Context7 mogły sprawić, że podłączony agent kodujący AI wysyłał napastnikowi dane logowania z plików środowiskowych przy zwykłym zapytaniu o dokumentację. VulnCheck ocenił lukę na 9,0 w skali CVSS. Każdy mail, dokument i stronę traktuję jako niezaufane wejście: oddzielone od poleceń i czytane przez wąskie narzędzia, które nie mają szerszego dostępu niż osoba, w której imieniu działają. Tak to zbudowałem jako główny inżynier Patriot Mail, klienta poczty z AI, w którym każdą wiadomość pisze ktoś obcy. W maju 2026 zaatakowałem asystenta AI w produkcie wzorcami prompt injection, w nowej sesji wyciągnąłem jego kontekst i ustaliłem zasadę, że prompt systemowy traktujemy jak publiczny, więc nie trafia do niego nic tajnego.

Bonus · #suchar

Suchar na deser

Gratis, jak pierwsza rozmowa. To samo poczucie humoru dostajesz w pakiecie z projektem.

Wiecie, jaki jest najdroższy obraz?Puenta

Claude Monet. Płatny za token. Ba‑dum‑tss.

Dlaczego agent AI zapomniał o spotkaniu?Puenta

Skończyło mu się okno kontekstowe. Ba‑dum‑tss.

Jaki taniec lubią inżynierowie AI?Puenta

Algo‑rytm. Ba‑dum‑tss.

W 30 minut sprawdzisz, czy do siebie pasujemy

Ty przynosisz problem, ja pytania. Chcesz najpierw liczbę? Konfigurator pokaże godziny, widełki ceny i termin startu.

albo napisz na ciunkos@gmail.com

Po umówieniu dostajesz zaproszenie do kalendarza. Nic więcej do wypełniania.

Moja obietnica

  • Odpowiedź w 24 godziny. Odpowiadam w ciągu 24 godzin w dni robocze. Osobiście, nie bot. Wiadomości z weekendu: do poniedziałku, do 12:00.
  • Spóźnienie znaczy gratis. Jeśli się spóźnię, pierwsza godzina pracy jest za darmo. Nie musisz o to prosić.
  • Zakres na piśmie w 24 godziny. Bezpłatna rozmowa 30 minut bez prezentacji firmy, potem zakres i cena na piśmie w ciągu 24 godzin. Ty decydujesz.
  • Osoba, która wykona pracę. Rozmawiasz z osobą, która wykona pracę. Bez warstwy sprzedaży, bez przekazywania dalej.
  • Odzywam się tylko z czymś nowym. Odzywam się tylko wtedy, gdy mam dla Ciebie coś nowego. Nigdy „czy jest już decyzja?”.
  • Uczciwe „to nie dla mnie”. Jeśli nie jestem właściwą osobą, mówię to na rozmowie i wskazuję kogoś, kto jest.

Rozmowy w tym tygodniu · start pracy 3 listopada 2026 · Kontrakt B2B · Wrocław, zdalnie

Kod, domena i konta są Twoje od pierwszego dnia. Nic nie trzymam jako zakładnika.