---
name: Miro-ghostwriter-profiler
description: |
  Analyzovat vzorky psaní a vytvořit/obohatit ghostwriter profil osobnosti.
  Použij VŽDY když uživatel chce vytvořit profil pisatele, analyzovat styl psaní,
  zachytit hlas autora, nebo když říká 'vytvoř profil', 'analyzuj styl',
  'ghostwriter', 'style guide', 'writing profile', 'jak píše', 'zachyť hlas'.
  Taky použij pro obohacení existujícího profilu dalšími vzorky.
  Systém 3 úrovní: L1 (lehký sweep), L2 (hloubková analýza), L3 (platformní adaptace).
allowed-tools:
  - Read
  - Write
  - Edit
  - Glob
  - Grep
  - Agent
  - AskUserQuestion
  - WebFetch
---

# Ghostwriter Profiler

Analyzuje vzorky psaní a vytváří ghostwriter profil osobnosti. Profil slouží jako
operační manuál pro AI, které bude psát hlasem této osoby - ne popis, ale návod k replikaci.

Postaveno na dvou analytických metodologiích:
- **Pod mikroskopem** (micro/mid/macro) - lingvistická analýza na 3 úrovních zrnitosti
- **Psychologický profiler** - 8-dimenzionální ToV framework (formalita, emoce, komplexita, perspektiva, humor, autorita, tempo, empatie)

Výstupy jsou ukládány jako profily ve schématu A-J (10 sekcí, 3 úrovně hloubky).

---

## Režimy

### Create L1 (výchozí)

Nový profil od nuly. Lehký plný sweep přes všechny vzorky.

**Spuštění:** `/Miro-ghostwriter-profiler` nebo `/Miro-ghostwriter-profiler {jméno}`

**Co produkuje:** Profil s vyplněnými sekcemi A, B, C, D, J (Level 1).

### Enrich

Obohacení existujícího profilu dalšími vzorky nebo hloubkovým ponorem do konkrétní sekce.

**Spuštění:** `/Miro-ghostwriter-profiler --enrich {jméno}` nebo `/Miro-ghostwriter-profiler --enrich {jméno} --section E`

**Co produkuje:** Rozšířený profil s hlubšími nebo novými sekcemi.

### Review

Přečte existující profil, identifikuje mezery a problémy s kvalitou, navrhne další kroky.

**Spuštění:** `/Miro-ghostwriter-profiler --review {jméno}`

**Co produkuje:** Zpráva o stavu profilu bez změn v souboru.

---

## Vstupní flow

### 1. Parsování argumentů

Extrahuj z uživatelova příkazu:

| Argument | Výchozí | Popis |
|----------|---------|-------|
| `{jméno}` | ptej se | Jméno osoby (malá písmena, bez diakritiky pro cestu) |
| `--enrich` | false | Režim obohacení existujícího profilu |
| `--review` | false | Režim revize existujícího profilu |
| `--section X` | all | Cílová sekce pro enrich (A-J) |

### 2. Zjisti jméno

Pokud jméno nebylo zadáno:
```
Pro koho vytvářím profil? Zadej jméno osoby.
```

Z jména odvoď:
- **display_name:** Původní jméno s diakritikou (pro nadpisy v profilu)
- **slug:** Malá písmena, bez diakritiky, mezery nahrazené pomlčkou (pro cestu k souboru)
- **profile_path:** `agents/personas/ghostwriter-profiles/{slug}-style.md`

### 3. Zkontroluj existující profil

Pomocí Glob zkontroluj, zda profil už existuje:
```
agents/personas/ghostwriter-profiles/{slug}-style.md
```

- **Create + profil existuje:** Upozorni uživatele a nabídni volbu: přepsat / přepnout na enrich
- **Enrich/Review + profil neexistuje:** Chyba - "Profil pro {jméno} neexistuje. Chceš vytvořit nový?"
- **Concurrency guard:** Pokud existující profil má `last_enriched` novější než 1 minuta, varuj: "Profil byl upraven před méně než minutou. Pokračovat?" Neblokuj.

### 4. Sbírej vzorky

Zobraz uživateli:
```
Potřebuji vzorky psaní od {display_name}. Přijímám:
- Text vložený přímo do chatu
- Cesty k souborům (.md, .txt)
- URL adresy článků nebo příspěvků

Pošli vzorky (minimum 2, ideálně 3+). Až budeš hotový, napiš "hotovo" nebo "done".
```

**Sběrová smyčka:**
Opakovaně přijímej vstupy, dokud uživatel neřekne "hotovo"/"done"/"to je vše"/"that's all".

Pro každý vstup:
1. **Text (žádná cesta, žádné URL):** Přidej jako vzorek
2. **Cesta k souboru:** Načti přes Read. Pokud soubor neexistuje nebo je binární, přeskoč s varováním.
3. **URL:** Načti přes WebFetch. Pokud URL nedostupné, přeskoč s varováním.

**Validace vzorků:**
- Přeskoč binární soubory a prázdné soubory s varováním
- Přeskoč nedostupné URL s varováním
- Varuj u vzorků kratších než 200 slov: "Vzorek '{název}' má jen {N} slov - analýza může být mělká."
- **Minimum 2 validní vzorky.** Pokud méně, řekni: "Potřebuji alespoň 2 vzorky textu pro smysluplnou analýzu."
- Pro Enrich režim: minimum 1 nový vzorek

### 5. Pro Enrich: zeptej se na fokus

Pokud `--section` nebylo zadáno:
```
Na kterou sekci se chceš zaměřit?
A) Voice & Tone  B) Structure  C) Anti-Patterns  D) Vocabulary
E) Sentence-Level  F) Signature Moves  G) Examples
H) Format & Platform  I) Revision Checklist  J) Replication Rules
Nebo "all" pro celkový sweep.
```

---

## Načítání referencí

Před spuštěním agenta načti příslušné referenční soubory. Cesty jsou relativní k tomuto skill adresáři.

### Create L1

Načti **všechny**:
1. `agents/personas/ghostwriter-profiles/_schema.md` (z repo)
2. `references/analysis-microscope.md` (Pod mikroskopem)
3. `references/analysis-profiler.md` (Psychologický profiler)
4. `references/every-to-framework.md` (Every.to framework)

### Enrich

Načti:
1. `agents/personas/ghostwriter-profiles/_schema.md` (z repo)
2. Referenční soubor relevantní pro cílovou sekci (viz mapovací tabulka níže)
3. `references/conflict-resolution.md` (vždy při enrichmentu)
4. Existující profil (pro kontext)

**Mapování sekce na referenční soubor:**

| Cílová sekce | Primární reference |
|-------------|-------------------|
| A (Voice & Tone) | analysis-profiler.md |
| B (Structure) | analysis-microscope.md (macro level) |
| C (Anti-Patterns) | every-to-framework.md |
| D (Vocabulary) | analysis-microscope.md (micro level) |
| E (Sentence-Level) | analysis-microscope.md (mid level) |
| F (Signature Moves) | every-to-framework.md |
| G (Examples) | every-to-framework.md |
| H (Format & Platform) | analysis-microscope.md (macro level) |
| I (Revision Checklist) | every-to-framework.md |
| J (Replication Rules) | every-to-framework.md |

Pokud `--section all`, načti všechny reference.

### Review

Načti jen:
1. `agents/personas/ghostwriter-profiles/_schema.md` (z repo)
2. Existující profil

---

## Spuštění agenta

Po nasbírání vzorků a načtení referencí spusť analýzu přes Agent tool.

### Agent prompt - Create L1

Použij Agent tool s `mode: "bypassPermissions"` a `model: "sonnet"`.

Prompt pro agenta (vyplň proměnné v `{}`):

```
# Ghostwriter Profile Analysis - Level 1

## Tvůj úkol

Analyzuj následující vzorky psaní od {display_name} a vytvoř ghostwriter profil
Level 1 (sekce A, B, C, D, J). Profil je operační manuál pro AI - ne popis osoby,
ale konkrétní, akční instrukce pro replikaci hlasu.

## Analytické metodologie

Proveď analýzu pomocí obou metodik současně:

### Pod mikroskopem (3 úrovně)
{obsah souboru analysis-microscope.md}

### Psychologický profiler (8 dimenzí)
{obsah souboru analysis-profiler.md}

### Every.to framework
{obsah souboru every-to-framework.md}

## Schéma profilu
{obsah souboru _schema.md}

## Vzorky k analýze

{očíslované vzorky - každý s pořadovým číslem a počtem slov}

## Instrukce pro analýzu

1. Přečti všechny vzorky. Zapiš si první dojem - celkový registr, emoční teplota.
2. Proveď Pod mikroskopem sweep:
   - Micro: lexikální fingerprinting, anglicismy, interpunkce
   - Mid: délka vět, rytmus, parentetické vsuvky, otázky v textu
   - Macro: struktura odstavců, přechody, otevírací/uzavírací vzorce, argumentační tok
3. Proveď Psychologický profiler:
   - Ohodnoť všech 8 dimenzí na škále 1-10
   - Identifikuj 2-3 klíčová napětí (tension pairs)
4. Syntetizuj nálezy do sekcí A, B, C, D, J dle schématu.
5. Zapiš profil do souboru.

## Pravidla kvality

- Každé tvrzení v profilu musí být doložitelné konkrétním příkladem ze vzorků
- Vzorec = nalezený alespoň ve 2 vzorcích. Jeden výskyt = "Possible:" prefix
- Anti-patterns (C) jsou nejvýkonnější sekce - investuj sem čas
- Tension pairs (A) jsou nejefektivnější shrnutí - formuluj jako "X, ale ne Y"
- Replication Rules (J) musí být testovatelné - AI musí umět ověřit, zda pravidlo dodrželo
- NIKDY nepoužívej em dash (–). Použij krátkou pomlčku (-) s mezerami.
- Piš profil v češtině s plnou diakritikou.

## Výstup

1. Zapiš profil do: {profile_path}
   - Použij frontmatter ze schématu, vyplň: name, status: draft, level: 1,
     samples_analyzed: {počet vzorků}, last_enriched: {dnešní datum},
     version: "0.1", sections s příslušnými statusy (draft pro A,B,C,D,J; pending pro E-I)
   - Tělo profilu dle šablony ve schématu
2. Vrať stručné shrnutí (5-10 bodů):
   - Hlavní tension pairs
   - Nejdůležitější anti-patterns
   - Celkový registr a emoční teplota
   - Co profilu chybí a doporučení pro L2 enrichment
```

### Agent prompt - Enrich

```
# Ghostwriter Profile Enrichment

## Tvůj úkol

Obohatit existující ghostwriter profil {display_name} o nové poznatky.
{pokud --section: "Zaměř se na sekci {section}."}
{pokud --section all: "Proveď celkový sweep přes všechny sekce."}

## Analytická metodologie
{obsah relevantního referenčního souboru}

## Pravidla pro řešení konfliktů
{obsah souboru conflict-resolution.md}

## Schéma profilu
{obsah souboru _schema.md}

## Existující profil
{obsah existujícího profilu}

## Nové vzorky k analýze

{očíslované nové vzorky}

## Instrukce pro enrichment

1. Přečti existující profil. Zapamatuj si, co už je zdokumentováno.
2. Analyzuj nové vzorky se zaměřením na {cílovou sekci / všechny sekce}.
3. Pro každý nový nález porovnej s existujícím profilem:
   - Pokud potvrzuje existující: posíli příkladem
   - Pokud rozšiřuje: přidej do profilu
   - Pokud je v rozporu: NEMĚŇ profil, místo toho zapiš do shrnutí jako CONFLICT
4. Aktualizuj profil:
   - Přidej nové poznatky do příslušných sekcí
   - Aktualizuj frontmatter: samples_analyzed, last_enriched, section statusy
   - Zvyš level pokud jsou dokončeny všechny sekce dané úrovně
5. Vrať shrnutí s:
   - Co bylo přidáno (nové poznatky)
   - Co bylo potvrzeno (existující vzorce zesíleny)
   - CONFLICTS (pokud nějaké - v předepsaném formátu)
   - Doporučení pro další enrichment

## Pravidla kvality

- NIKDY silently nepřepisuj existující obsah
- Konflikty prezentuj v tomto formátu:
  CONFLICT in Section [X]:
  - Existing: "[aktuální hodnota v profilu]"
  - New evidence: "[nový nález]" (from sample: [číslo/název vzorku])
  - Recommendation: [krátká poznámka]
- Vzorec = 2+ výskyty. Jeden výskyt = "Possible:" prefix.
- NIKDY nepoužívej em dash (–). Použij krátkou pomlčku (-) s mezerami.
- Piš v češtině s plnou diakritikou.

## Výstup

Zapiš aktualizovaný profil do: {profile_path}
Vrať shrnutí enrichmentu.
```

### Agent prompt - Review

Review režim nepoužívá agenta. Provede se přímo v hlavním kontextu:

1. Načti existující profil
2. Načti schéma (_schema.md)
3. Porovnej profil proti schématu:
   - Které sekce chybí nebo jsou nedostatečné?
   - Splňuje profil prahy dokončení pro svůj deklarovaný level?
   - Jsou tension pairs specifické nebo generické?
   - Jsou anti-patterns akční (Pattern/Solution formát)?
   - Jsou replication rules testovatelné?
4. Prezentuj zprávu uživateli

---

## Prezentace výsledků

### Po Create L1

```
Profil vytvořen: {profile_path}
Level: 1 (lehký přehled)
Vzorky analyzováno: {N}

Klíčové nálezy:
{shrnutí od agenta - tension pairs, anti-patterns, registr}

Další kroky:
- Obohatit profil dalšími vzorky: /Miro-ghostwriter-profiler --enrich {slug}
- Prohloubit konkrétní sekci: /Miro-ghostwriter-profiler --enrich {slug} --section E
- Zkontrolovat kvalitu profilu: /Miro-ghostwriter-profiler --review {slug}
- Doplnit profil rozhovorem: /Miro-ghostwriter-interviewer {slug} (budoucí skill)
```

### Po Enrich

```
Profil obohacen: {profile_path}
Level: {aktuální level}
Vzorky celkem: {N}

Co se změnilo:
{shrnutí od agenta - nové poznatky, potvrzení, konflikty}

{pokud CONFLICTS:}
Nalezené konflikty (vyžadují tvé rozhodnutí):
{seznam konfliktů}

Další kroky:
{doporučení od agenta}
```

### Po Review

```
Stav profilu: {display_name}
Level: {level} | Vzorky: {N} | Poslední enrichment: {datum}

Stav sekcí:
{tabulka sekcí se statusy a hodnocením kvality}

Nalezené problémy:
{seznam problémů s konkrétními doporučeními}

Doporučené akce:
{prioritizované další kroky}
```

---

## Konvence cest

- **Profily:** `agents/personas/ghostwriter-profiles/{slug}-style.md`
- **Schéma:** `agents/personas/ghostwriter-profiles/_schema.md`
- **Reference:** `{skill_dir}/references/` (tento skill adresář)
- **slug:** malá písmena, bez diakritiky, pomlčky místo mezer
  - "Jan Tobořík" -> `jan-toborik`
  - "Miroslav" -> `miroslav`
  - "Tereza Svobodová" -> `tereza-svobodova`

---

## Omezení a hranice

- Tento skill **analyzuje** styl a **vytváří** profily. Nepíše obsah hlasem osoby.
- Pro psaní obsah hlasem osoby bude sloužit budoucí skill `Miro-ghostwriter-writer`.
- Pro doplnění profilu rozhovorem bude sloužit `Miro-ghostwriter-interviewer`.
- Profil je připravený k použití writer skillem, když splní Profile Readiness Gate
  (viz schéma: všechny L1 sekce complete, level >= 1, samples >= 3).
