agentleFS
jantichyjantichy/claude/skills/ptydepe/SKILL.md

ptydepe

Skill45 starsChanged 17 days agoMITView on GitHub

Skill se použije, když uživatel zadá "/ptydepe", "/ptydepe suggest" nebo "/ptydepe add <termín>", anebo chce prověřit termíny, které Claude používá, přestože je v oboru nikdo nezná – slova převzatá z náhodné zmínky, z překlepu nebo z doslovného překladu, která se pak rozlezla napříč projekty a dokumentací. Výchozí režim "suggest" takové termíny vytipuje, režim "add" vypořádá jeden z nich. Postup, meze rozsahu a vyloučená místa má skill v těle a jsou závazné – bez jeho načtení se hledání ani náhrada nespouští, protože plošná náhrada umí nevratně přepsat soubory mimo verzování. Na rozdíl od /replace, který přejmenuje na zadání a v jednom projektu, tenhle skill rozhoduje, jestli se má přejmenovat, a jede přes všechny repozitáře naráz.

The file

We split this skill into the rules it gives an agent

1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    „Je to uživatelovo slovo“ není argument pro ponechání: Do souborů se dostane i to, co uživatel jednou napsal a sám tak nemluví.

    line 67

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Ptydepe

Co skill dělá

Hledá a ruší neustálené termíny – slova, která používám, jako by byla zavedená, přestože je nikdo jiný nezná. Vznikají tím, že v konverzaci padne slovo, klidně jen překlepem nebo doslovným překladem, a já ho příště beru jako termín. Dohodnuté náhrady drží tabulka v ~/.claude/standards/ptydepe.md, která se importuje do každé session; rozvahu, proč který termín padl, drží terms.md v adresáři skillu.

  • /ptydepe nebo /ptydepe suggest – vytipování. Projede konfiguraci i znalostní bázi a vrátí seřazené kandidáty s četností a běžným protějškem. Nic nemění.
  • /ptydepe add <termín> – projednání jednoho termínu. Co znamená, odkud se vzal a čím ho nahradit. Konce jsou tři: nahradit, ponechat (je to běžná čeština), nebo zakázat preventivně – protějšek je zavedený dávno a cizí slovo se teprve tlačí do vět. Po schválení náhrada napříč všemi repozitáři, zápis do ptydepe.md i do terms.md, commit.

Jméno je po umělém jazyce z Havlova Vyrozumění: řeč, které nikdo nerozumí, ale všichni předstírají, že ano.

Co skill nedělá

  • Nepřejmenovává na zadání. /replace dostane starý a nový tvar a provede to; tenhle skill nejdřív rozhoduje, jestli se má přejmenovat vůbec, a teprve pak nahrazuje – a to napříč všemi repozitáři, ne v jednom projektu.
  • Neaudituje projekt. Rozpory mezi soubory řeší /consistency, srozumitelnost zápisu /end. Tady jde výhradně o pojmenování.
  • Neposuzuje obsah. Jestli dokument dává smysl, řeší /oponent.
  • Nesahá na cizí a publikované texty, ani když jsou verzované – archiv článků, ohlasy, rozbory cizího stylu. Termín v nich není pravidlo, ale doklad, jak to tehdy bylo napsané.
  • Nezakládá projektové glosáře. docs/glossary.md doménových pojmů jednoho projektu (~/.claude/standards/structure.md) je jiná věc: ten vysvětluje pojmy oboru, tenhle skill ruší vymyšlené.

Jak je to postavené uvnitř

Skill si dělá všechno sám a na /replace nedeleguje – ten umí odvozené tvary, ale ne to, co náhradu termínu doopravdy komplikuje: změnu rodu a s ní shodu přívlastků, homonyma, opačné významy a repetice, které náhrada vyrobí.

Náhrada se proto píše jako mapa frází, ne jako záměna slova. Ke každé vazbě se starým termínem se napíše její nová podoba i se shodou („vyber čtyři až pět úhlů“ → „vyber čtyři až pět hledisek“), a teprve ta mapa se pustí přes soubory z git ls-files. Je to pracnější než sed a je to schválně: plošná záměna slova rozbije každou větu, kde se změnil rod nebo kde slovo znamená něco jiného.

Závazné je rozhodnutí, ne mechanika: náhrada se nedělá bez uživatele, starý termín zůstane zapsaný v terms.md a nikde jinde, a běh končí doloženým kontrolním průchodem. Jak se ta náhrada technicky provede, je implementační detail.


Fáze 0 – Příprava

Společný začátek je v ~/.claude/skills/preflight.md. Skill neběží nad jedním projektem, ale nad všemi naráz, takže body 1 až 3 nahrazuje vlastními předpoklady:

  1. Kořeny. ~/.claude, ~/Context a každý další git repozitář v ~/Projects a ~/Clients. Posledně jmenované se do rozsahu berou, jen když se v nich termín vyskytuje – zjistí to inventura, ne domněnka.
  2. Zjisti, co je už rozhodnuté – termín, který v tom seznamu je, ať nahrazený, nebo vědomě ponechaný, se znovu neprojednává. Kolik k tomu potřebuješ přečíst, se liší podle režimu: suggest si vystačí s ~/.claude/standards/ptydepe.md a s Obsahem terms.md v adresáři skillu, protože k vytipování kandidátů stačí jména; add čte oba soubory celé, protože rozhoduje o termínu a potřebuje k tomu úvahy i zamítnuté varianty. Rozvaha roste s každým vypořádaným termínem, takže tahat ji do běhu, který ji nepoužije, je kontext placený zbytečně.
  3. Vypiš rozpracované změny v každém známém kořeni a pokračuj. Blokuje jedině soubor, na který pak náhrada sáhne – ten by se s ní smíchal a přestalo by být poznat, co je čí. Rozhodnout se to tady ale nedá, protože rozsah zjistí až Fáze 4; výpis odsud je jen podklad pro ni. Na cizí rozpracovanou práci se neptej: do commitu se nedostane, protože se commitují jmenované cesty (~/.claude/standards/rules.md, Commituj jmenované cesty, ne -A), a dotaz, který nic nerozhoduje, se naučí odklikávat bez čtení.

    Na čistý strom se nečeká v žádném kořeni – nad ~/.claude běží souběžné session skoro pořád a tvrdý požadavek by se začal mlčky obcházet. Blokující je všude jen průnik s rozsahem.

    Výpis odsud zestárne – souběžná session mezitím commituje i rozpracovává. Fáze 4 ho proto nepoužívá jako pravdu, ale jen jako upozornění, a kolizi měří čerstvým git status.

  4. Zjisti režim a termín z argumentu. Bez argumentu jede suggest.

Co se svými zápisy udělá: commituje je, v každém dotčeném repozitáři zvlášť a s vlastní zprávou. Bez toho by je posbíral autocommit cizí session spolu s něčím nesouvisejícím.

Fáze 1 – Volba režimu

RežimPokračuj
suggest (výchozí)Režim suggest níž
add <termín>Fáze 2

Fáze 2 – Co ten termín znamená a odkud se vzal

Nejdřív si ho přečti v kontextu, teprve pak o něm mluv. Vytáhni všechny výskyty i s okolím a odpověz na tři otázky:

  1. Co jím myslím – jedna věta, konkrétně. Ne „něco jako kontrola“.
  2. Odkud se vzal – z konverzace, z doslovného překladu, z uživatelova zápisu? Dohledej to; není-li to dohledatelné, řekni to rovnou, místo abys původ domýšlel.
  3. Je zavedený? Odděleně anglicky a česky – to se běžně liší a rozhoduje ta druhá odpověď. Quality gate je zavedený pojem, česká „brána“ ne.

„Je to uživatelovo slovo“ není argument pro ponechání. Do souborů se dostane i to, co uživatel jednou napsal a sám tak nemluví.

Nula výskytů není důvod skončit. Zadá-li uživatel termín, který v souborech není – a suggest ho nabídnout nemůže, protože řadí podle četnosti –, míří to na preventivní zápis: slovo se do české věty teprve tlačí a má se zakázat dřív, než se uchytí. Řekni nahlas, že výskyty nejsou, odpověz na otázky 2 a 3 z vlastní znalosti a k první doplň, čím se to dnes v souborech říká místo toho – ten doklad nahrazuje kontext, který by jinak dal výpis výskytů. Fáze 4 i Fáze 5 pak odpadají a řekne se to.

Fáze 3 – Návrh a rozhodnutí

Vyber jednu náhradu a obhaj ji. Ne výčet možností – to je odklad rozhodnutí na horší chvíli. K ní přidej jednu až dvě zvážené a zamítnuté i s důvodem; příště se pak nezkoumají znovu.

Kritérium je jediné: rozumí tomu člověk, který k tomu přijde bez slovníku?

KdyCo s tím
Existuje běžný český protějšekvezmi ho
Termín je zavedený anglicky, ne českypřelož podle zavedené vazby, ne doslova – surgical strike je česky „cílený úder“, ne „chirurgický“
Je to metafora, kterou věta vedle stejně vysvětlujezruš termín a nech ten popis
Jednoslovný protějšek nese jen půlku významunahraď popisem, ne slovem – heslo pak zní celou větou („seznam, který musí přesně sedět“). Je to legitimní výsledek, ne nouzové řešení
Slovo je běžná čeština v tomhle významuponech a zapiš proč, ať se to neotevírá znovu
Český protějšek je v souborech zavedený a cizí slovo v nich nenízakaž ho preventivně. Náhrada se neprovádí, protože není co přepsat; zapisuje se ale stejně jako náhrada – viz Fáze 6
Termín je zároveň identifikátor v kódu nebo klíčové slovo jazykaponech. Přeložit běžný text, zatímco kód dál říká původní jméno, vyrobí dvě jména pro jednu věc – guard je klíčové slovo Swiftu i pole ve schématu nálezu

Pak se zastav a počkej na souhlas. Na soubory se v téže odpovědi nesahá – uživatel si často vybere jinou variantu, nebo ho návrh přivede na třetí, a práce udělaná mezitím se zahazuje. Odpoví-li jen na část návrhu, zbytek je pořád nezodpovězený, ne tiše schválený.

Technické identifikátory se schvalují zvlášť – jméno souboru, proměnné prostředí, klíče. Jejich přejmenování je změna chování, ne terminologie: komu běží vypnutá kontrola přes starou proměnnou, tomu se tiše zapne. Schválí-li se, přestěhuj i stav, který na starém jméně visí.

Fáze 4 – Inventura a vyloučení

Inventuru nikdy nezkracuj. cut, head ani -m na výstupu grepu znamenají, že výskyt dál na řádku neuvidíš – a pak se objeví až po commitu.

Tahle fáze i Fáze 5 odpadají u preventivního zápisu – u nuly výskytů není co vyloučit ani co přepsat. Průchod přesto pusť a jeho výstup vypiš: je to jediný doklad, že ta nula je změřená, a ne domnělá. Vyjde-li nenulový, preventivní zápis to není a pokračuj normálně.

  1. Jede se výhradně přes git ls-files. Nikdy rglob ani find přes adresář: ~/.claude obsahuje transkripty session, cache a paměť, které v .gitignore sice jsou, ale rekurzivnímu skriptu to nevadí a přepíše je.
  2. Najdi legitimní významy téhož slova a soubory, kde stojí, vyluč jmenovitě. Stává se to skoro pokaždé: „brána“ byla i platební, „vizitka“ i firemní web, „osa“ i časová.
  3. Vyluč publikované texty, cizí texty a datované doklady stavu. Kritérium zní: tvrdí ten soubor, jak to má být, nebo jak to tehdy bylo? Druhé se nepřepisuje, protože náhrada v něm nesjednocuje termín, ale falšuje záznam. Dnes to jsou ~/Context/Archive/, Compose/_analysis/, ohlasy ve Speaking/, datované plány v Compose/_superpowers/plans/ a cizí vendor kód v repozitářích ~/Projects – výčet ale není uzavřený, rozhoduje to kritérium.
  4. Vyluč vlastní frontu kandidátů. Seznam termínů k projednání obsahuje ten termín jako položku a náhrada by si přepsala vlastní zadání.
  5. Vyluč ~/.claude/standards/ptydepe.md a skills/ptydepe/terms.md. Starý tvar v nich stojí schválně – v levém sloupci tabulky a ve větě „nahrazuje dřívější …“. Náhrada by z rozhodnutí udělala tautologii a nikdo by pak nezjistil, co se čím nahradilo.
  6. Ověř, že slovo nemá v některém souboru opačný význam. Stalo se: týž termín označoval jinde vadu, ne přednost, a plošná náhrada by z toho udělala nesmysl.

Teď změř kolizi s rozpracovanou prací – tohle je první okamžik, kdy se to dá udělat, protože teprve tady znáš rozsah. Pusť čerstvý git status v každém dotčeném repozitáři, ne výpis z Fáze 0: ten je mezitím starý o celou fázi a souběžná session do stromu zapisuje dál. Je-li v průniku s rozsahem byť jediný soubor, zastav se a zeptej se.

Zopakuj to těsně před zápisem v Fázi 5. Mezi tímhle místem a zápisem leží čekání na tvůj souhlas, tedy minuty až hodiny – a přesně v nich soubor přibude.

Vypiš přehled ke schválení: počet výskytů, soubory, vědomě ponechaná místa a proč.

Fáze 5 – Náhrada

Sestav mapu frází, ne seznam slov. Ke každé vazbě, ve které se starý termín vyskytuje, napiš její novou podobu i se shodou – vytáhni si je předem (grep na okolí termínu) a projdi je očima. Teprve pak mapu pusť přes soubory z git ls-files.

Pak zkontroluj to, co ani ta nejlepší mapa nezachytí, protože to není o tvarech:

  • Shodu rodu. Změní-li se rod, mění se přívlastky i vztažná zájmena: „každý má jediný hledisko“ místo „jediné“. Projdi diff a hledej mužské koncovky před novým slovem středního rodu.
  • Repetice. Náhrada vyrobí věty typu „vypnutá kontrola se hlásí: kontrola, o které nikdo neví… tváří se jako kontrola“. Ty se přepisují celé, ne slovem.
  • Vazby, které přestaly sedět. „opravy zanášejí nové pozůstatky“ – pozůstatky se nezanášejí, zůstávají.
  • Popisky a názvy. Opisuje-li se termín v běžném textu slovesem („nic nezůstalo viset“), je to v pořádku – ale tam, kde totéž slovo stojí jako jméno věci, ne. Projdi header u AskUserQuestion, popisky polí v šablonách výstupu a nadpisy kroků a ověř, že pojmenovávají podstatným jménem. „Viselo 4/4“ jako název kroku ve formuláři nepojmenovává nic, ale gramaticky je věta okolo v pořádku, takže náhrada projde a vidí se to až v běžícím formuláři.

Fáze 6 – Záznam

Zapisuje se na dvě místa a obojí je povinné. Rozdělené jsou proto, že ptydepe.md jde do každé session a rostl by s každým termínem, kdežto důvody potřebuje jen ten, kdo rozhoduje:

  • ~/.claude/standards/ptydepe.md – jeden řádek tabulky: starý tvar, nový tvar, rozsah a meze. Nic víc; odůvodnění sem nepatří.
  • ~/.claude/skills/ptydepe/terms.md – heslo s celou rozvahou (a řádek do jeho Obsahu): co termín znamená, co jím naopak není, a věta „nahrazuje dřívější …“ i s důvodem – u preventivního zápisu místo ní „neříkej tomu …“, protože se nic nenahrazuje. Starý termín zůstává zapsaný tady – jinde se nahradil beze stopy –, aby se dalo rozhodnutí vrátit nebo aspoň dohledat, proč padlo. Čtyři druhy míst, kde vědomě zůstává i jinde, vypisuje terms.md, Jak se to zapisuje; heslo je u sebe vždycky jmenuje.

Neexistuje-li některý z nich, založ ho: ptydepe.md s nadpisem, sekcí Jak se používá a prázdnou tabulkou, terms.md s nadpisem, sekcí Jak se to zapisuje, sekcí Obsah a prázdnými sekcemi Termíny a Ponechané termíny. Bez toho by první běh neměl kam zapsat.

Nebylo-li co nahradit, zapiš to stejně – je to preventivní zápis a pravidlo pro něj drží terms.md, Jak se to zapisuje. Pro běh z toho plyne jediné: Fáze 7 vypíše u rozsahu i u ručně přepsaných vět nulu a je to platný výsledek, ne prázdný běh.

Skončilo-li to ponecháním, do ptydepe.md nepatří nic – tabulka říká, co se čím nahrazuje. Zapiš rozhodnutí i se zamítnutými variantami do sekce Ponechané termíny v terms.md a přidej ho do jeho Obsahu, jinak se termín otevře znovu při příští revizi.

Fáze 7 – Závěr

Ověř a dolož příkazem, ne dojmem: kontrolní průchod na starý tvar a příkazy z kontraktu každého dotčeného repozitáře.

## <starý> → <nový>

- **Rozsah:** <N> výskytů v <M> souborech, repozitáře: <seznam>
- **Vědomě ponecháno:** <kde a proč, nebo „nic"> – vyloučené soubory i starý tvar ponechaný uvnitř verzovaného souboru (identifikátor v kódu, jméno cizí kategorie, jméno zrušené věci). Čtyři druhy vypisuje `terms.md`, *Jak se to zapisuje*
- **Ručně přepsané věty:** <kolik a proč – shoda, repetice>

**Ověřeno**
- Kontrolní průchod: <příkaz a co vrátil>
- Kontrakt: <příkazy a návratové kódy, nebo „repozitář nemá">

**Zapsáno**
- ptydepe.md · terms.md · commity v <repozitářích>

Vypisuj to jako Markdown, ne jako blok kódu, a řádky nezalamuj natvrdo – ~/.claude/standards/rules.md, Styl odpovědí.

Zakonči jednou z těchto vět, nikdy ničím vágním mezi tím:

  • Termín je vypořádaný a ověřený, starý tvar se mimo ptydepe.md, terms.md a vědomě ponechaná místa nevyskytuje.
  • Termín vypořádaný není – brání tomu: <konkrétní seznam>.

Režim suggest

Vytipuje kandidáty. Nic nemění a na nic se neptá – výstupem je seznam k projednání.

Termín s nulou výskytů odsud vypadnout nemůže, protože se řadí podle četnosti. Kandidát na preventivní zápis proto přichází vždycky od uživatele, add s termínem, který v souborech není – a není to chyba zadání.

Kritérium je jediné a zní: normálně se tomu říká jinak. Hledej tedy termín, který:

  • nemá oporu v oboru – v angličtině ano, v češtině ne (ratchet → „ráčna“), nebo nikde,
  • je doslovný překlad, který v češtině znamená něco jiného („chirurgický zásah“),
  • má v češtině obsazený jiný význam („zelená linka“ je telefon podpory, „zamluvit“ je rezervovat),
  • je anglicismus skloňovaný po česku („fresh-readera“, „2 fresh-readeři“),
  • pojmenovává formu místo účelu („dvě věty“ místo „verdikt“),
  • není slovo, jen tvar odvozený ze slovesa („viséc“ z „zůstalo to viset“).

Nehledej podle vlastního pocitu, co zní divně. Ten tě zradí: „brána“ i „zelená linka“ vypadaly jako moje výmysly a byly z uživatelových souborů, zatímco běžně vypadající „vizitka“ termín byl. Spolehlivější síto je četnost bez definice – slovo, které se používá často a nikde není vysvětlené, si buď každý vykládá po svém, nebo se zavedlo bokem.

Výstup seřaď podle četnosti a u každého uveď, čemu se tak běžně říká. Bez toho je to jen seznam podezření, ke kterému se nedá nic rozhodnout.

- **<termín>** – <N>× v <M> souborech · <kde vznikl> · běžně: <protějšek>

Vypisuj to jako Markdown, ne jako blok kódu, a řádky nezalamuj natvrdo – ~/.claude/standards/rules.md, Styl odpovědí.

Na konci nabídni zapsání fronty do souboru. Seznam v konverzaci nepřežije kompaktaci a práce by se rozjela znovu od nuly.

Časté chyby

  • Skript jel rekurzivně přes adresář místo přes git ls-files a přepsal transkripty, cache a soubory historie. Nevratné, protože nejsou v gitu.
  • Inventura zkrácená cut -c1-230 minula polovinu výskytů – ty, které stály dál na řádku. Objevily se až po commitu.
  • Fronta kandidátů si přepsala vlastní položku, protože nebyla vyloučená z náhrady.
  • Náhrada zasáhla homonymum – „platební brána“ se změnila na „platební kontrolu“ ve větě o penězích.
  • Změna rodu rozbila shodu. „Úhel“ je mužský, „hledisko“ střední, a přívlastky zůstaly v původním tvaru.
  • Termín se obhajoval z paměti místo ze souborů. U preventivního zápisu je to naopak jediný možný postup – výskyty nejsou –, ale i tam se z paměti neberou fakta o cizích souborech: doklad, že je protějšek zavedený, se cituje z grepu, ne z dojmu.
  • Náhrada se začala dělat před souhlasem. Uživatel se rozhodl jinak a muselo se to vracet.
  • Náhrada minula popisky ve formuláři. Podstatné jméno se v /end nahradilo všude, ale v headeru a v šabloně zbyl tvar odvozený ze slovesa: krok se jmenoval „Viselo 4/4“. Prošlo to kontrolním průchodem i testy a všimlo si toho až oko nad běžícím formulářem.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.