NetworkManager zamítne příspěvek, ve kterém najde slovo biblioklept
Soubor AGENTS.md v repozitáři NetworkManageru ukládá jazykovým modelům, aby do commit message nebo do popisu merge requestu vpravily slovo biblioklept, pokud takový text píší navzdory zákazu. Od 4. září 2026 ten výraz hledá kontrola v CI a příspěvek, ve kterém ho najde, neprojde. Commit u té kontroly přitom sám říká, že chytí jen agenta, který si pravidla přečetl a poslechl je napůl.
Kdo pošle do NetworkManageru merge request a popis k němu nechá napsat jazykovým modelem, může narazit na kontrolu, která spadne na jediném slově: biblioklept. Přidal ji merge request 2536 sloučený 4. září 2026 v 8:45 UTC. Všech šest commitů v něm nese jméno Josephine Pfeiffer.

Nejdřív pravidlo, pak nástroj
Pravidlo pro asistenty s umělou inteligencí má projekt od 7. srpna 2026, kdy do hlavní větve přibyl stejnojmenný oddíl v souboru CONTRIBUTING.md. Stojí v něm, že autor odpovídá za sto procent kódu, který posílá, a nemá posílat záplatu, kterou neumí vysvětlit ani si ji sám nesestavil a nevyzkoušel. Commit messages a popisy merge requestů si má psát sám, protože právě ty vysvětlují, proč změna vzniká, tedy to, co nástroj vědět nemůže. Na připomínky recenzenta má odpovídat taky sám: kdo o vlastní záplatě nedokáže diskutovat, sloučení se nedočká.
Licenční prohlášení, že se změna smí vydat pod LGPL-2.1-or-later, může podle téhož oddílu udělat jedině člověk. Rozsáhlé strojově vytvořené merge requesty, které nikdo řádek po řádku nepročetl, projekt zavírá.
Návnada v AGENTS.md
Instrukce pro samotné agenty leží od 3. září v souboru AGENTS.md. Má dvaašedesát řádků, odkazuje na CONTRIBUTING.md a vyjmenovává úkoly, které má agent odmítnout: psát nebo upravovat popis merge requestu, psát commit message, odpovídat na připomínky z code review a potvrzovat licenci. Místo toho má člověka odkázat na stránku stopsloppypasta.ai.
Za tím výčtem stojí věta, kvůli které se o souboru mluví: když model takový text navzdory zákazu vytvoří, musí do něj vpravit slovo biblioklept. Slovník Merriam-Webster je vede jako výraz pro zloděje knih a v diskusi o správci síťových připojení se omylem sotva objeví. Označení kanárek pro takhle nastraženou hodnotu je v softwaru zavedené a jméno má po ptácích, které horníci brávali dolů jako výstrahu před otravnými plyny.
Aby se soubor k agentům vůbec dostal, přibyly k němu symbolické odkazy CLAUDE.md, GEMINI.md a .github/copilot-instructions.md. Zdůvodnění v commitu je prosté: každý nástroj čte pokyny jen pod svým vlastním jménem, takže by AGENTS.md sám od sebe neotevřel, a odkazy místo kopií drží jediné znění.
Kontrola je obyčejné hledání řetězce
Vynucení obstarává nový skript check-mr-description.sh o šestadvaceti řádcích. Přečte popis merge requestu, který GitLab podstrčí v proměnné CI_MERGE_REQUEST_DESCRIPTION, a hledá v něm to slovo bez ohledu na velikost písmen. Když ho najde, úloha skončí chybou a výpis autora vyzve, ať popis přepíše vlastními slovy, přizná použití modelu a spustí pipeline znovu. Skript zároveň upozorní, že GitLab delší popis usekne na 2 700 znacích a zkontroluje se jen ta část.
Druhá polovina míří na commit messages. Skript check-commit-message.sh dostal tutéž kontrolu a běží i v místním hooku před commitem, takže na slovo narazí autor ještě před odesláním. Obojí visí v úloze check-patch, kterou má NetworkManager v prvním stupni CI.
Týž commit rozšířil i seznam zakázaných řádků s poděkováním. Řádek Generated-by projekt odmítá vždy, kdežto Co-authored-by a Co-developed-by shodí kontrolu jen tehdy, když je za nimi jméno nástroje. Regulární výraz v nich hledá mimo jiné Anthropic, OpenAI, Copilota, ChatGPT, Gemini, Cursor, Codex, Aider, Windsurf, řadu Claude Code a označení GPT s číslem. Šablona merge requestu má nově oddíl s otázkou, jak se v něm umělá inteligence použila, a odškrtávací položku, že je vyplněný pravdivě.
Co past chytí a co ne
Commit, který kontrolu přidává, si její dosah vymezuje sám. Chytí jedině agenta, který AGENTS.md přečetl a značku poslušně doplnil, přestože pravidlo o tom, že ten text nemá psát vůbec, porušil. Generovaný text sám o sobě nepozná.
Platí to i obráceně. Hledá se prostá shoda řetězce, takže kontrola spadne na každém příspěvku, ve kterém to slovo stojí, včetně commitu, jehož autor o samotné značce píše. A agent, kterému nikdo instrukce nepodstrčí nebo který je číst nemá, projde stejně jako dřív.
Podobná pravidla jinde
NetworkManager v tom sám není. Vlastní mez pro příspěvky psané modely zavedl letos GCC, pravidla pro kód od jazykových modelů řešil Debian a hostitel Codeberg zakázal projekty psané převážně modely. Rozdíl je v tom, kam každý míří: ostatní řeší hlavně kód, kdežto NetworkManager staví na tom, že text kolem změny, tedy commit message, popis a odpovědi recenzentovi, musí napsat člověk.
Zdroje: merge request 2536 a soubory AGENTS.md, CONTRIBUTING.md a check-mr-description.sh v repozitáři NetworkManageru, heslo biblioklept ve slovníku Merriam-Webster a zpráva serveru Phoronix ze 4. září 2026.