Většina vývojářů používá AI jako glorifikovaný autocomplete. Tady jsou techniky, které z něj udělají skutečného pair-programming partnera. S konkrétními prompty, které fungují — a porovnáním nástrojů, které je nejlépe využijí.
Rozdíl mezi nepoužitelným a produkčním výstupem z AI je téměř vždy v množství kontextu. Když AI nemá dostatek informací, hádá. A hádání znamená halucinace, nesprávné API, špatné typy a kód, který sice vypadá rozumně, ale neprojde ani prvním code review.
Podívejme se na konkrétní příklad — validace e-mailu:
Slabý prompt
Napiš funkci pro validaci e-mailu.
Silný prompt
Napiš TypeScript funkci validateEmail(input: string): boolean. Použij regex dle RFC 5322. Pure function, žádné side effects. JSDoc s příkladem. Pokryj edge cases: prázdný string, bez @, unicode domain.
Druhý prompt specifikuje: jazyk, název, vstup/výstup, standard, omezení, dokumentaci, edge cases. AI nemá co hádat. Výstup je o řád lepší — a často použitelný přímo bez úprav.
Pravidlo palce: pokud váš prompt nezodpovídá alespoň 3 z 5 otázek (What, Where, Why, Which, With), bude výstup generický. Konkrétnost je nejsilnější páka na kvalitu.
Pravidlo pěti W funguje jako mentální checklist před odesláním promptu:
V praxi to znamená, že prompt pro produkční kód je typicky 5–15 řádků. Ne proto, že byste chtěli být upovídaní, ale protože kvalitní specifikace vyžaduje prostor. Stejně jako dobrý ticket v Jira.
Když potřebujete specifický formát výstupu nebo dodržení konvence, dejte AI 1–3 příklady. Extrémně užitečné pro transformace, generování testů a migraci kódu. Few-shot je nejspolehlivější technika, protože AI nemusí interpretovat abstraktní pravidla — vidí konkrétní vzor a replikuje ho.
Prompt ke zkopírování
AI pochopí vzor a aplikuje ho konzistentně — včetně edge cases. Funguje skvěle i pro refaktoring: ukažte jak jste přepsali jednu komponentu ze starého patternu na nový a AI přepíše zbytek. To ušetří hodiny při migraci codebasu.
Few-shot je obzvlášť cenný při práci s interními konvencemi, které AI nezná z trénovacích dat. Pokud máte vlastní naming convention, error handling pattern nebo specifickou strukturu modulů, dva příklady řeknou víc než odstavec popisu.
Praktická ukázka — převod React class components na hooks. Dáte AI jeden příklad transformace a řeknete „aplikuj na dalších 12 komponent". Bez few-shot by AI použil svůj vlastní styl. S few-shot dodržuje přesně vaši konvenci — pojmenování stavových proměnných, pořadí hooků, formát cleanup funkcí.
10×
rychlejší generování testů s AI oproti ručnímu psaní
Chain-of-thought (CoT) přiměje AI přemýšlet krok po kroku. Zásadní pro debugování, optimalizaci a architektonická rozhodnutí. Nestačí říct „oprav tento bug" — chcete, aby AI problém analyzoval, protože pouze analýzou najde skutečný root cause, ne jen symptom.
Slabý prompt
Tato funkce nefunguje, oprav ji.
Silný prompt
Tato funkce vrací duplikáty. Projdi kód řádek po řádku, identifikuj root cause, navrhni minimální opravu a test, který by bug zachytil.
Prompt ke zkopírování
CoT dává výrazně lepší výsledky než „oprav to", protože AI si vynucuje systematický postup. Bonus: naučíte se z analýzy — vidíte, jak AI o problému přemýšlí, a často to odkryje aspekty, které jste přehlédli.
Kde CoT exceluje nejvíc:
Tip pro pokročilé: kombinujte CoT s konkrétním výstupním formátem. Například: „Analyzuj krok po kroku, pak shrň do tabulky: Problém | Severity | Řádek | Fix". Strukturovaný výstup je snáze zpracovatelný při code review.
Pokud používáte API (OpenAI, Anthropic) nebo nástroj s custom instrukcemi, system prompt je nejsilnější nástroj pro konzistenci. Je to ekvivalent .editorconfig nebo .eslintrc — definuje pravidla, která AI dodržuje v každé odpovědi. Tady je šablona, kterou doporučuji uložit do repozitáře:
System prompt šablona
Sdílejte tento prompt v týmu — každý pak dostává konzistentní výstupy. Aktualizujte ho jak se mění stack a konvence. Funguje to jako onboarding pro AI „kolegu".
V praxi system prompt funguje nejlépe, když kombinuje tři úrovně instrukcí:
Nástroje jako Cursor (v souboru .cursorrules), Claude Code (CLAUDE.md) nebo GitHub Copilot (.github/copilot-instructions.md) umožňují uložit system prompt přímo do repozitáře. To je ideální workflow — pravidla jsou verzovaná, sdílená a aktualizovaná spolu s kódem.
Uložte system prompt do repozitáře jako .cursorrules nebo CLAUDE.md. Celý tým pak dostává konzistentní výstupy a pravidla se verzují spolu s kódem.
Moderní modely mají kontext 100k–200k tokenů (Claude až 1M). Využijte to. Víc kontextu = méně halucinací. Před dotazem vložte:
73 %
snížení halucinací při poskytnutí dostatečného kontextu (dle interních testů s GPT-4 a Claude)
Nástroje jako Cursor, Copilot Workspace nebo Claude Code to dělají automaticky — indexují codebase a vkládají relevantní soubory. Při práci ve webovém rozhraní vkládejte ručně. Čím víc kontextu, tím méně halucinací.
Každý nástroj řeší kontext jinak. Tady je srovnání tří hlavních přístupů:
@file a @codebase tagů pro manuální kontrolu.#file tagy pro explicitní reference. Od verze s agent mode umí sám hledat v souborech.Praktický tip
Vytvořte v repozitáři soubor AI_CONTEXT.md s přehledem architektury, konvencí, klíčových rozhodnutí a anti-patterns. Když pracujete s webovým AI, prostě ho zkopírujte na začátek konverzace. Dramaticky to zlepší relevanci odpovědí.
AI exceluje v generování testů. Ale nejsilnější přístup je TDD s AI — nechte AI napsat testy před implementací. Proč? Protože testy definují kontrakt. Když máte testy, implementace je „jen" splnění specifikace.
Prompt ke zkopírování
AI vám vygeneruje testy včetně edge cases, na které byste sami nepomysleli. Pak implementujete kód, který testy splní. Reálná úspora: 30–60 minut na každém testovacím souboru.
Workflow v praxi vypadá takto:
Tenhle přístup je výrazně efektivnější než „napiš funkci a pak k ní testy", protože testy vás přinutí přemýšlet o edge cases před implementací. AI je v tom skvělé — vymyslí scénáře, které byste přeskočili: prázdné vstupy, unicode znaky, extrémně dlouhé stringy, negativní čísla, null vs undefined.
Prompt ke zkopírování
Než pošlete PR na review, prožeňte ho přes AI. Ne jako náhradu lidského review, ale jako první filtr. Lidský reviewer se pak může soustředit na architekturu a business logiku místo triviálních chyb.
Prompt ke zkopírování
Tohle zachytí většinu běžných chyb — chybějící null check, nezavalidovaný vstup, N+1 query. Reálný příběh z praxe: AI review zachytilo SQL injection v parametrizovaném query, kde developer omylem použil string interpolaci místo prepared statement. Lidský reviewer to přehlédl, protože kód „vypadal" bezpečně.
Pro systematické code review v CI/CD pipeline existují nástroje jako CodeRabbit nebo Sourcery, které automaticky reviewují každý PR. Ale i manuální prompt ve webovém rozhraní je extrémně hodnotný — zvláště pro solo developery, kteří nemají koho požádat o review.
AI code review není náhrada lidského review — je to multiplikátor. Lidský reviewer se soustředí na „proč" (architektura, business logika), AI na „jak" (edge cases, security, performance).
Security review je jedna z oblastí, kde AI poskytuje obrovskou hodnotu, protože má „přečteno" tisíce zdokumentovaných zranitelností. Většina vývojářů nemá security background — AI tuto mezeru efektivně vyplní.
Prompt ke zkopírování
AI nenahradí pentest, ale zachytí 80 % běžných chyb v každodenním vývoji. SQL injection, hardcodovaný API klíč, chybějící rate limiting — věci, které se snadno přehlédnou pod časovým tlakem.
Konkrétní příklady, co AI běžně najde:
eval() s uživatelským vstupem — command injectionhttpOnly flag na session cookie — přístupný přes XSSorigin: '*' na API s autentizací — bypass same-origin policyMath.random() pro generování tokenů — predikovatelné výstupy80 %
běžných bezpečnostních chyb zachycených AI auditem ještě před code review
„Vylepši tento kód" je nejhorší prompt pro refaktoring. AI potřebuje vědět co přesně a proč — jinak dostanete over-engineered abstrakcí, které nikdo v týmu nepochopí. Každý z těchto promptů dá konkrétní, použitelný výstup:
Poslední bod je důležitý: explicitně řekněte AI, kdy nemá abstrahovat. Jinak dostanete over-engineered řešení pro triviální problém. „Premature abstraction" je horší než duplikace.
Prompt ke zkopírování
Všimněte si explicitního pořadí priorit a omezení. Bez nich AI typicky začne tím, co je nejzajímavější (abstrakce, design patterns), ne tím, co přináší největší hodnotu (čitelnost, error handling).
Zdědili jste legacy codebase bez dokumentace? Tohle je killer use case pro AI. Za den dokáže jeden vývojář s AI zdokumentovat codebase, na který by bez AI potřeboval týden.
Prompt ke zkopírování
Protože AI nemá „curse of knowledge", dokumentace bývá srozumitelnější než ta, kterou by napsal autor kódu. AI vysvětluje to, co je čtenáři nejasné — ne to, co je zajímavé z technického pohledu.
Rozšířený workflow pro dokumentaci celého projektu:
Prompt ke zkopírování
Nejefektivnější workflow není napsat dokonalý prompt napoprvé. Je to dialog — stejně jako pair programming s kolegou:
AI si pamatuje kontext konverzace. Tohle je rychlejší než psát dokonalý 500-slovný prompt — stejně jako je rychlejší říct kolegovi „ještě uprav tohle" než specifikovat vše předem.
Klíčové fráze pro iteraci, které dobře fungují:
Důležité: ukládejte si osvědčené prompty. Vytvořte ve firemním repu složku /prompts nebo sdílený dokument. Standardizované prompty dávají konzistentní výsledky napříč týmem a šetří čas při opakujících se úkolech (generování testů, code review, migrace).
Praktický tip
Vytvořte „prompt library" — sdílenou složku s ověřenými prompty pro běžné úkoly. Kategorizujte: testy, review, dokumentace, refaktoring, security. Nový člen týmu je produktivní s AI od prvního dne.
Většina vývojářů dělá při práci s AI stále dokola stejné chyby. Tady je seznam těch nejčastějších — a jak se jim vyhnout:
Nejlepší prompt engineer není ten, kdo píše nejdelší prompty — je to ten, kdo dává AI právě tolik kontextu, kolik potřebuje. Ne víc, ne míň.
Prompt engineering není magie — je to strukturované zadávání úkolů. Stejné principy jako dobrý ticket nebo code review request. Tři pravidla, která pokryjí 90 % situací:
A jedno meta-pravidlo: investujte čas do system promptů a prompt library. Upfront investice 2–3 hodin vám ušetří desítky hodin měsíčně. AI je nejsilnější, když ho používáte systematicky — ne ad hoc.
Chcete se naučit tyto techniky v praxi? Na našich workshopech pro vývojáře procvičujeme všechny zmíněné techniky na reálných příkladech z vašeho stacku.