# llms.txt: jak go zbudować i wdrożyć w 10 minut

**Autor:** Piotr Litwa - specjalista GTM i analityki
**Opublikowano:** 2026-07-03
**URL:** https://piotrlitwa.com/articles/pl/llms-txt-jak-zrobic.html
**Jezyk:** pl

---

`llms.txt` to zwykły plik markdown w katalogu głównym domeny, który mówi modelom AI, co zawiera Twoja strona i gdzie leży wartościowy materiał. Pomyśl o nim jak o odwróconym `robots.txt`: zamiast ograniczać crawlery, kuratoruje dla nich treść.

Możesz go napisać ręcznie w dziesięć minut. Bez pluginu, bez biblioteki, bez build stepa. Format jest celowo prosty: tytuł, krótki opis i lista linków z jednozdaniowymi podsumowaniami.

Oto część, którą większość artykułów na ten temat po cichu pomija. **Nikt nie potrafi obecnie udowodnić, że modele AI to czytają.** Specyfikacja jest propozycją, nie standardem. Żaden duży dostawca modeli nie zadeklarował publicznie, że pobiera ten plik. Kto mówi Ci, że to na pewno poprawi Twoją widoczność w ChatGPT, zgaduje. I bierze za to zgadywanie pieniądze.

Mimo to prowadzę taki plik na tej stronie i uważam, że Ty też powinieneś. Ale z konkretnego powodu, który nie ma nic wspólnego z liczeniem na przyjęcie standardu, i zaraz powiem dokładnie jakiego.

> **Najważniejsze wnioski**
> - `llms.txt` leży pod `twojadomena.pl/llms.txt` i jest zwykłym markdownem. Bez specjalnej składni, bez walidacji.
> - Kuratoruje, a nie ogranicza. Mówi "oto co jest ważne", a nie "tu nie wchodź". To czyni go przeciwieństwem `robots.txt`.
> - Żaden dostawca modeli publicznie nie potwierdził, że go czyta. Obietnice gwarantowanej widoczności w AI traktuj jak marketing.
> - Prawdziwa wartość to bliźniaki markdown: czyste wersje `.md` Twoich stron, które usuwają problem parsowania i zwracają się niezależnie od losów standardu.
> - Plik, który zabija większość wdrożeń, to nie ten pierwszy. To ten, który dwa miesiące później jest już nieaktualny.

## Co właściwie wchodzi do pliku llms.txt

Jeden H1, opcjonalny blok podsumowania i sekcje z linkami. To cała specyfikacja.

```
# Piotr Litwa

> Niezależny monitoring GTM i GA4 dla firm w Europie.
> Jeden specjalista, nie agencja.

## Artykuły

- [Ruch nieprzypisany w GA4](https://piotrlitwa.com/articles/pl/ruch-nieprzypisany-ga4.html): Sześć przyczyn ruchu nieprzypisanego w GA4 i naprawa każdej z nich. [Markdown](https://piotrlitwa.com/articles/md/pl/ruch-nieprzypisany-ga4.md)

## Usługi

- [Monitoring GTM](https://piotrlitwa.com/services.html#gtm): Cotygodniowe automatyczne kontrole tagów, triggerów i zgód. €150/miesiąc, bez umowy.
```

Trzy zasady oddzielają użyteczny plik od dekoracji.

**Pisz opisy dla maszyny, która nigdy nie zobaczy Twojej strony.** "Dowiedz się więcej o naszych usługach" jest bezwartościowe. "Cotygodniowe automatyczne kontrole GTM, €150/miesiąc, bez umowy" to fakt, który model może wprost wstawić do odpowiedzi. Fakty się cytuje. Entuzjazmu nie.

**Linkuj do wersji markdown wszędzie, gdzie je masz.** To najcenniejsza linijka w całym pliku i ta, którą ludzie pomijają. Model czytający Twój HTML musi przebić się przez nawigację, banner cookie i trzy CTA. Model czytający plik `.md` dostaje treść i nic poza nią.

**Kuratoruj, nie wysypuj.** `llms.txt` z listą wszystkich 400 podstron to sitemap z dodatkowymi krokami. Chodzi o to, żeby powiedzieć, które dwadzieścia stron naprawdę reprezentuje to, co wiesz.

## Budowa llms.txt: wersja dziesięciominutowa

**1. Zdecyduj, co tam wchodzi.** Twoje najlepsze dwadzieścia do pięćdziesięciu stron. Te, które wysłałbyś komuś, kto zapytał "czym się właściwie zajmujesz i co o tym wiesz?"

**2. Napisz jedną rzeczową linijkę na stronę.** Liczby, ceny, wersje, nazwy produktów. Nie zajawki.

**3. Wygeneruj bliźniaki markdown.** Dla każdej wymienionej strony opublikuj wersję `.md` z tą samą treścią i nagłówkami, bez elementów serwisu. Jeśli masz pięćdziesiąt stron, to jest ta część, która zajmuje realny czas. I to ona wykonuje właściwą pracę.

**4. Zapisz plik jako `/llms.txt`** w katalogu głównym domeny, serwowany jako czysty tekst. Otwórz `twojadomena.pl/llms.txt` w przeglądarce i sprawdź, czy dostajesz surowy tekst, a nie 404 albo ostylowaną stronę.

**5. Rozwiąż problem synchronizacji.** Nieaktualny `llms.txt` jest gorszy niż jego brak, bo z pełnym przekonaniem opisuje strony, które się zmieniły albo zniknęły. Jeśli generowanie go nie jest częścią Twojego procesu publikacji, w ciągu kwartału będzie błędny.

Krok 5 to miejsce, w którym umiera większość wdrożeń. Plik powstaje w trakcie jednego entuzjastycznego popołudnia i nikt go już nigdy nie dotyka.

## Rzecz, która naprawdę ma znaczenie: bliźniaki markdown

Jeśli masz wziąć z tego artykułu jedną rzecz, weź tę.

Dla każdej ważnej strony opublikuj czystą wersję markdown pod przewidywalnym adresem i podlinkuj ją z sekcji head w HTML:

```html
<link rel="alternate" type="text/markdown" href="../md/pl/ruch-nieprzypisany-ga4.md">
```

Ta strona robi to pod `/articles/md/pl/<slug>.md` dla każdego artykułu, w obu językach.

Dlaczego to bije sam plik indeksowy: model, który trafi na Twój markdown, dostaje Twój wywód, Twoje tabele i nagłówki, z zerowym ryzykiem błędu parsowania. Żadnej nawigacji do pominięcia. Żadnego bannera zgód do przeskoczenia. Żadnej treści renderowanej JavaScriptem, której w ogóle nie zobaczy.

I tu jest różnica, która waży najwięcej. W odróżnieniu od `llms.txt`, to ma wartość **niezależnie od tego, czy jakakolwiek specyfikacja AI zostanie kiedyś przyjęta**, bo bliźniak markdown to po prostu czystsza reprezentacja Twojej treści, która przy okazji jest trywialnie czytelna maszynowo. Nie obstawiasz standardu. Usuwasz przeszkodę, która istnieje już dziś.

## Czy to w ogóle działa?

Powiem wprost, bo marketing wokół tego tematu wprost nie mówi.

**Co jest prawdą**: format jest publiczny, kilkaset stron go wdrożyło, a koszt wdrożenia jest bliski zeru.

**Co nie jest potwierdzone**: że OpenAI, Anthropic, Google albo Perplexity czytają `llms.txt`, odpowiadając na pytania. Żaden z nich publicznie się do tego nie zobowiązał. Niezależne analizy pokazują, że zdecydowana większość opublikowanych plików `llms.txt` nigdy nie została pobrana przez żaden crawler AI.

Więc po co go prowadzić?

Bo ten plik jest produktem ubocznym robienia czegoś jednoznacznie użytecznego: utrzymywania czystych, kanonicznych, czytelnych maszynowo wersji własnych treści, z uczciwymi opisami, zsynchronizowanych z tym, co faktycznie publikujesz. Jeśli standard zostanie przyjęty, jesteś gotowy. Jeśli nigdy nie zostanie, wciąż masz bliźniaki markdown, które każdy crawler i model przeczyta bez walki.

To rozsądny zakład o tanią opcję. "To sprawi, że ChatGPT będzie Cię cytować" nie jest rozsądnym twierdzeniem i powinieneś dyskontować każdego, kto je wygłasza, łącznie z tymi, którzy sprzedają Ci na to narzędzie.

## Jak sprawdzić, czy cokolwiek naprawdę go pobiera

Nie musisz wierzyć ani mojemu sceptycyzmowi, ani czyjemuś entuzjazmowi. Rozstrzygną to Twoje logi serwera.

Crawlery AI same się przedstawiają. Przeszukaj logi dostępu po ścieżce i po user agencie:

```
grep "llms.txt" access.log
```

Agenci, których warto szukać:

| User agent | Kto to | Co robi |
|---|---|---|
| `GPTBot` | OpenAI | Crawluje pod trening |
| `OAI-SearchBot` | OpenAI | Crawluje pod wyniki wyszukiwania ChatGPT |
| `ChatGPT-User` | OpenAI | Pobiera stronę na żywo, gdy użytkownik o nią pyta |
| `ClaudeBot` | Anthropic | Crawluje pod trening |
| `Claude-User` | Anthropic | Pobranie na żywo w trakcie rozmowy |
| `PerplexityBot` | Perplexity | Crawluje do swojego indeksu |
| `Google-Extended` | Google | Kontroluje wykorzystanie do treningu Gemini |

Prawdopodobnie znajdziesz dwie rzeczy.

**Twój `llms.txt` ma bardzo mało trafień, o ile w ogóle jakieś ma.** To uczciwy obraz sytuacji na dziś i dokładnie dlatego nie budowałbym na tym strategii.

**Twoje pojedyncze strony mają ich sporo.** `GPTBot`, `ClaudeBot` i `PerplexityBot` niemal na pewno crawlują już Twoją treść, właśnie teraz, nie prosząc o pozwolenie przez żaden plik indeksowy. Znalazły Cię przez linki i sitemapę, tak jak każdy crawler od zawsze.

To drugie odkrycie jest tym, z którym można coś zrobić. **Modele już czytają Twoją stronę. Pytanie nie brzmi, jak je zaprosić. Pytanie brzmi, czy to, co znajdą, jest czytelne.** Strona zakopana pod ścianą zgód, renderowana JavaScriptem, owinięta w nawigację, jest dla nich trudna w użyciu. Bliźniak markdown nie jest.

To przeramowanie jest całym sensem tego artykułu i dlatego sam plik jest mniejszą połową roboty.

## WordPress, Webflow i strony statyczne

**Strony statyczne**: banalne. Napisz plik, wrzuć do katalogu głównego, wdróż. Ta strona generuje go jako część procesu publikacji i właśnie dlatego nigdy się nie dezaktualizuje.

**WordPress**: nie potrzebujesz pluginu. Wystarczy cokolwiek, co serwuje plik w katalogu głównym, łącznie ze zwykłym wgraniem go przez FTP. Plugin przydaje się, gdy chcesz automatycznej generacji z listy wpisów, ale uwaga: automaty zwykle wysypują wszystkie wpisy, co niweczy cały sens kuratorowania.

**Webflow, Shopify i platformy hostowane**: sprawdź, czy platforma pozwala serwować dowolne pliki z katalogu głównego. Kilka nie pozwala. Jeśli Twoja nie pozwala, odpuść plik indeksowy i włóż wysiłek w bliźniaki markdown, które i tak znaczą więcej.

## Najczęstsze pytania

**Czym jest llms.txt?**
To zwykły plik markdown w katalogu głównym domeny, który mówi modelom AI, co zawiera Twoja strona, i linkuje do stron, które mają znaczenie, najlepiej z dołączonymi wersjami markdown. Kuratoruje, a nie ogranicza, co czyni go przeciwieństwem `robots.txt`.

**Czy modele AI naprawdę czytają llms.txt?**
Żaden dostawca tego publicznie nie potwierdził, a niezależne analizy sugerują, że większość opublikowanych plików nigdy nie zostaje pobrana. Traktuj to jak tani zakład, a nie gwarantowany kanał widoczności, i bądź sceptyczny wobec każdego, kto sprzedaje Ci to jako to drugie.

**Czy potrzebuję pluginu albo generatora?**
Nie. To zwykły markdown i napiszesz go ręcznie w dziesięć minut. Narzędzie zarabia na siebie przy problemie synchronizacji, a nie pisania: trudne jest utrzymanie pliku w zgodzie z tym, co publikujesz.

**Czym różni się llms.txt od robots.txt?**
`robots.txt` ogranicza crawlery. `llms.txt` kuratoruje treść dla modeli. Jeden mówi, gdzie nie wolno wchodzić, drugi gdzie leży dobry materiał. Służą przeciwnym celom i możesz mieć oba.

**Czy llms.txt to po prostu sitemap?**
Nie. Sitemap wymienia wszystkie adresy dla kompletności. `llms.txt` powinien wymieniać tylko najlepsze strony, z opisami, dla zrozumienia. Plik z wszystkim to sitemap w markdownie i nic nie wnosi.

**Skąd mam wiedzieć, czy crawlery AI w ogóle odwiedzają moją stronę?**
Przeszukaj logi dostępu serwera po `GPTBot`, `ClaudeBot`, `PerplexityBot`, `OAI-SearchBot` i `Claude-User`. Większość stron odkrywa, że ci agenci już regularnie crawlują ich treść, nigdy nie pytając o `llms.txt`.

## Co dalej

Napisz ten plik najpierw ręcznie. Zajmie dziesięć minut i nauczy Cię o Twojej stronie więcej, niż zrobiłby to jakikolwiek generator.

Potem zrób rzecz, która naprawdę waży: opublikuj bliźniaki markdown swoich ważnych stron i podlinkuj je z HTML. Ta praca zwraca się niezależnie od tego, czy specyfikacja kiedykolwiek stanie się standardem, bo sprawia, że Twoje treści są czytelne dla maszyn bez walki, już dziś.

Potem rozwiąż problem synchronizacji, bo to on zabija te pliki. Jeśli generowanie `llms.txt` nie jest częścią tego, jak publikujesz, zanim ktokolwiek zajrzy, będzie już opisywał strony, których nie ma.

Jeśli wolisz mieć to zaudytowane i generowane automatycznie, razem z bliźniakami markdown i porównaniem pokrycia względem sitemapy, po to zbudowałem [AI Visibility](https://aiv.piotrlitwa.com/?lang=pl). Darmowy plan obejmuje jedną stronę i 200 adresów, bez karty. A jeśli chcesz, żeby człowiek zobaczył, co modele AI faktycznie widzą na Twojej stronie, to jest [rozmowa zakresowa](https://piotrlitwa.com/services.html#custom).

---

**Źródła**
- [Propozycja llms.txt](https://llmstxt.org/) (Jeremy Howard)
- [Dokumentacja crawlerów Google](https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers) (Google)
- [Robots Exclusion Protocol](https://www.rfc-editor.org/rfc/rfc9309.html) (IETF RFC 9309)

---

*Tekst: [Piotr Litwa](https://piotrlitwa.com/about.html), niezalezny specjalista GTM i analityki.*
