Kódovací prompty pro Grok
Prompty pro každodenní vývojářskou rutinu: čtení cizího kódu, hledání chyb, psaní testů a dokumentace nebo převod screenshotu na funkční layout.
Těchto dvacet programátorských promptů pokrývá běžný pracovní týden vývojáře: luštění chybových hlášek, hledání chyb, které nezpůsobí pád, ale vracejí špatný výsledek, revizi diffů, psaní testů a fixtures, sestavování SQL dotazů a regulárních výrazů, psaní shell skriptů, dokumentování API, řešení problémů s Gitem i učení se novému jazyku porovnáním s tím, který už znáte.
Grok odpovídá rychleji a lépe, když má k dispozici fakta. Uveďte jazyk, framework a verzi, vložte co nejmenší ukázku kódu zachycující problém společně s celým zněním chyby a popište, co jste očekávali. U chyb několik promptů doporučuje Grok 4.3 Thinking: kód si před odpovědí podrobně projde, což pomáhá u chyb o jedničku, souběhů (race conditions) a složitých podmínek. Grok 4.20 bohatě stačí na rychlá vysvětlení a šablonovitý kód (boilerplate). Dva prompty využívají porozumění obrázkům – jeden pro snímek rozbitého layoutu a druhý pro náčrt datového modelu z tabule.
Platí obvyklá upozornění, možná víc než kde jinde. Modely mají omezené datum znalostí a nemohou číst aktuální dokumentaci, takže funkce knihovny mohla být přejmenována nebo nemusí vůbec existovat. Kód, který vypadá správně, může selhat, proto jej vždy spusťte a otestujte. Nikdy nevkládejte API klíče, hesla, tokeny ani zákaznická data; vaše zprávy procházejí přes náš server k poskytovateli modelu za účelem vygenerování odpovědi. Dlouhé zprávy se ořezávají, posílejte proto jen danou funkci, nikoli celý repozitář.
Podívejte se, jak vývojáři používají Grok, otevřete si Code Assistant nebo si přečtěte o Grok API.
Jak tyto prompty přizpůsobit
- Uveďte svůj stack včetně verzí: „Node 22, TypeScript 5, Express“ je mnohem lepší než „JavaScript“.
- U čehokoli většího než jedna funkce chtějte nejdřív plán a až potom kód.
- Vyžádejte si vysvětlení ke každé změně, abyste mohli posoudit samotnou úvahu, nejen diff.
- Šetřete si Grok 4.7 na ty nejsložitější problémy; limit je 10 zpráv denně.
-
01
Rozluštit chybovou zprávu
Používám [jazyk nebo framework a verze]. Vysvětlete tuto chybu jednoduše vlastními slovy, seřaďte tři nejpravděpodobnější příčiny podle pravděpodobnosti a u každé uveďte, co zkontrolovat jako první: [vložte celou chybu a stack trace]
-
02
Krokovat chybný výsledek
Tato funkce při volání se vstupem [vstup] vrací [skutečný výsledek], ale očekávám [očekávaný výsledek]. Projděte provádění kód po řádku pro tento vstup, sledujte každou proměnnou a zastavte se na prvním řádku, kde se stav liší od očekávaného: [vložte kód]
-
03
Odhalit race condition
Tento kód v [jazyk] při zátěži občas způsobuje [projev chyby], ale při samostatném testování nikdy: [vložte kód]. Zaměřte se na souběh vláken (race conditions), sdílený stav a předpoklady o pořadí provádění. U každého podezřelého místa popište přesné prolnutí operací, které by chybu způsobilo, a navrhněte řešení.
-
04
Zkontrolovat pull request
Zkontrolujte tento diff z pozice náročného senior vývojáře pro codebase v [jazyk]. Připomínky rozdělte na chyby, rizika, čitelnost a testy, uveďte reference na řádky a zakončete verdiktem: schválit, schválit se změnami nebo vyžádat změny, včetně jednovětého odůvodnění: [vložte diff]
-
05
Okrajové případy a testy
U níže uvedené funkce vypište všechny okrajové případy, které byste testovali, a uveďte proč. Poté napište testy pro [testovací framework]. Zahrňte alespoň jeden test, u kterého očekáváte, že se současným kódem selže, a uveďte, který to je: [vložte funkci]
-
06
Generovat testovací data
Vytvořte realistická testovací data (fixtures) pro tento datový model ve formátu [formát, např. JSON nebo factory funkce]: [vložte model]. Zahrňte deset běžných záznamů a pět záludných (např. prázdné řetězce, velmi dlouhá jména, nelatinkové znaky a hraniční data) a označte, které jsou které.
-
07
SQL dotaz ze zadání
Na základě tohoto schématu: [vložte schéma] napište dotaz pro [databáze], který vrátí [co potřebujete]. Vysvětlete dotaz klauzuli po klauzuli a poté ukažte variantu, která ošetřuje i [okrajový případ, např. zákazníci bez objednávek].
-
08
Opravit regulární výraz
Tento regulární výraz by měl [zamýšlené chování] v [jazyk nebo nástroj], ale [co nefunguje]: [vložte regex]. Rozložte jej na části a každou vysvětlete, ukažte vstup, na kterém se problém projeví, a navrhněte opravenou verzi spolu se třemi řetězci, které musí odmítnout.
-
09
Bezpečný pomocný skript
Napište skript pro [bash nebo PowerShell], který [úkol, např. archivuje logy starší než 30 dní do zipu]. Zajistěte maximální bezpečnost: režim cvičného běhu (dry-run), který pouze vypíše plánované akce, srozumitelné chybové hlášky a komentář u každého řádku, který maže nebo přepisuje soubory.
-
10
Zdokumentovat API endpoint
Napište referenční dokumentaci pro tento endpoint: [vložte kód obslužné rutiny nebo route]. Uveďte metodu a cestu, parametry včetně typů a informace, zda jsou povinné, ukázkový požadavek, příklady úspěšných i chybových odpovědí a všechny stavové kódy, které může vrátit.
-
11
Vyřešit zmatek v Gitu
Můj Git repozitář je v tomto stavu: [vložte git status a posledních několik řádků git log]. Mým cílem bylo [cíl]. Jednoduše vysvětlete, co se stalo, a uveďte přesné příkazy k nápravě – začněte příkazem, který zazálohuje mou aktuální práci. Před jakýmkoli příkazem, který přepisuje historii, mě výslovně varujte.
-
12
Přepsat kód v idiomatickém stylu
Plynule ovládám [jazyk, který znám] a začínám se učit [nový jazyk]. Vezměte tuto ukázku napsanou v mém obvyklém stylu: [vložte kód], a přepište ji tak, jak by to udělal zkušený vývojář v [nový jazyk]. Poté vysvětlete použité idiomy, které v mém původním jazyce nemají přímý ekvivalent.
-
13
Opravit layout podle screenshotu
Přikládám screenshot své stránky. Problém: [co vypadá špatně]. Zde je HTML a CSS dané sekce: [vložte kód]. Najděte příčinu, navrhněte minimální opravu v CSS a vysvětlete, proč k tomu došlo, abych stejnou chybu neopakoval/a.
-
14
Z náčrtu na tabuli do databázových tabulek
Přikládám fotku náčrtu datového modelu na tabuli pro [aplikace]. Převeďte jej na definice tabulek pro [databáze] s primárními klíči, cizími klíči a vhodnými datovými typy. Vypište všechny vztahy, které jsou v náčrtu nejednoznačné, a zeptejte se na ně dříve, než uděláte vlastní předpoklad.
-
15
Určit složitost a najít rychlejší řešení
Jaká je časová a paměťová složitost této funkce a proč? [vložte kód] Pokud existuje rychlejší přístup pro vstupy o velikosti zhruba [velikost], ukažte jej a vysvětlete, jaký vliv má na čitelnost kódu.
-
16
Refaktorovat beze změny chování
Zrefaktorujte tuto funkci tak, aby byla lépe čitelná, beze změny jejího chování: [vložte kód]. Postupujte v malých, pojmenovaných krocích, každou změnu popište v jednom řádku a uveďte jakékoli chování, kterým jste si nebyli jistí, abych si ho mohl/a před mergem ověřit.
-
17
Napsat README od nuly
Napište README pro můj projekt [název], který [co dělá]. Sekce: o projektu, rychlý start s příkazy k okamžitému zkopírování, možnosti konfigurace v přehledné tabulce, časté problémy a jak přispět. Zde jsou klíčové soubory a příkazy: [vložte podrobnosti]
-
18
Vysvětlit cizí kód
Vysvětlete, co dělá tento kód v jazyce [jazyk], někomu, kdo umí programovat, ale nezná tento codebase. Začněte shrnutím ve dvou větách, projděte jej blok po bloku a upozorněte na cokoli, co vypadá jako chyba nebo dočasný hack: [vložte kód]
-
19
Otestovat slabiny mého návrhu
Plánuji vytvořit [funkce] tímto způsobem: [popište přístup]. Buďte ďáblův advokát. Uveďte tři nejpravděpodobnější způsoby, jak tento návrh v produkci selže, jaké symptomy se projeví a jaká levnější alternativa případně existuje. Buďte nekompromisní – raději to uslyším teď než ve tři ráno.
-
20
Převést kód do jiného jazyka
Převeďte tento kód z jazyka [výchozí jazyk] do idiomatického kódu v [cílový jazyk], nikoli doslovným přepisem řádek po řádku: [vložte kód]. Kde je to možné, použijte standardní knihovnu cílového jazyka, zachovejte původní chování a upozorněte na všechna místa, kde se oba jazyky chovají odlišně (např. celočíselné dělení nebo kódování řetězců).
Chcete se Grok na něco zeptat?
Žádný účet, žádné stahování, žádná karta. Otevřete chat, napište dotaz a sledujte odpověď od Grok v reálném čase.
Otevřít chat