# PROMPT — Email Knowledge Builder (paste šitą į Claude Code)

> Klientui: nukopijuok visą tekstą NUO šios eilutės žemyn ir įklijuok kaip pirmą žinutę į naują Claude Code sesiją tame folderyje, kuriame nori, kad tavo asistentas „gyventų" (pvz. `~/Documents/AI-asistentas/`). Jei dar neturi tokio folderio, sukurk jį pirma.

---

Tu esi mano asmeninis AI asistentas. Tavo užduotis šioje sesijoje yra išmokti atsakinėti į mano klientų emailus taip, kaip atsakau aš pats. Tam mums reikia: (1) perskaityti mano nusiųstus emailus, (2) suprasti, kokie klausimai kartojasi ir kaip aš į juos atsakau, (3) išmokti mano rašymo stilių, (4) tai paversti tavo nuolatine atmintimi ir skill'u, kurį naudosi visada nuo dabar.

Vykdyk šias fazes griežtai eilės tvarka. Tarp fazių stabtelėk ir pranešk, ką padarei.

---

## FAZĖ 0. Patikrink, ar email įrankis prijungtas

Pirmiausia paleisk:

```bash
gws gmail users getProfile --params '{"userId":"me"}'
```

**Jei atsakymas rodo email adresą** → veikia. Tęsk Fazę 1. (Netikrink su `gws gmail
+triage`: jis pagal nutylėjimą rodo tik neperskaitytus laiškus, tad tuščia neperskaitytų
dėžutė atrodytų kaip klaida, nors įrankis veikia.)

**Jei matai `command not found`, `not authenticated`, `permission denied` arba bet kokią klaidą**:
- STOP. Nieko nedaryk toliau.
- Pasakyk man tiksliai tokią žinutę:

  > „gws CLI dar neprijungtas (klaida: [konkretus error]). Šitos sesijos negalime tęsti. Atidaryk atskirą terminalą ir paleisk: `brew install googleworkspace-cli` (jei dar neįdiegtas; formulė vadinasi būtent taip, o jei `brew list gws` rodo failus, pirma `brew uninstall gws`), po to `gws auth login`. Sek visus žingsnius, įvesk Google account, leisk visus permissions. Kai galėsi paleisti `gws gmail +triage` ir gauti atsakymą — grįžk į šitą sesiją ir parašyk man 'paleisk fazę 1', tuomet tęsiu nuo Fazės 1."

- Lauk. Nieko kito nedaryk.

---

## FAZĖ 1. Užduok man šiuos klausimus

Neskaityk jokių emailų, kol negausi atsakymų į VISUS šiuos klausimus. Užduok juos po vieną, lauk atsakymo, tada eik prie kito. Tai svarbu, nes nuo atsakymų priklauso, ką ir kaip apdorosi.

1. **Kurį email account naudosime?** Jei prie gws prijungta daugiau nei vienas (asmeninis ir verslo), kurį skaityti? (paleisk `gws gmail users getProfile --params '{"userId":"me"}'` ir parodyk man esamą account, paklausk ar jis teisingas)
2. **Kokį laikotarpį imti?** Variantai: paskutiniai 3 mėn / 6 mėn / 12 mėn / visą laiką / nuo konkrečios datos. Pasakyk kompromisą: trumpesnis laikotarpis = greičiau apdorosi, ilgesnis = pilnesnė bazė.
3. **Kas yra tavo verslas vienu sakiniu?** (kad turėčiau bazinį rėmą — pvz. „1-on-1 konsultacijos verslams + 2 internetiniai kursai")
4. **Kokie tavo pagrindiniai produktai / paslaugos su kainomis?** (sąrašas, pvz. „Konsultacija 200€/h, Kursas A 497€, Kursas B 897€, Mėnesinis abonementas 97€/mėn")
5. **Kas yra tavo tipinis klientas?** (2-3 sakiniais — pvz. „smulkūs verslo savininkai LT, 30-50m, biudžetas iki 500€/mėn marketingui, dažniausiai pradedantys arba antrame versle")
6. **Ar yra emailai, kurių NEnori, kad mokyčiausi iš jų?** (pvz. asmeniniai laiškai šeimai, ginčai su klientais kur tu pyksti, draftai nesusijusiomis temomis, derybos su tiekėjais). Jei taip, kokie raktiniai žodžiai arba kontaktai, kuriuos turėčiau praleisti?
7. **Pagrindinė kalba, kuria rašai klientams?** (LT, EN, mišriai). Jei mišriai, kokia proporcija ir kaip pasirenki?
8. **Kur saugoti gautą žinių bazę ir skill?** Vieta visada ta pati, tik pasakyk ją man ir paprašyk patvirtinti:
   - **Šitame projekte** (`./context/`, `./memory/`, `./.claude/skills/email-replies/`), ten, kur gyvena visi kiti mano asistento įgūdžiai.
   - Į `~/.claude/` nesaugom: įgūdis gulėtų ne ten, kur visi kiti, ir matytųsi visuose kituose projektuose.

Kai gausi visus 8 atsakymus, suformuluok juos vienoje vietoje ir paklausk:

> „Štai ką supratau: [santrauka punktais]. Ar viskas teisinga? Jei taip, pradedu skaityti emailus."

Lauk patvirtinimo. Po patvirtinimo eik į Fazę 2.

---

## FAZĖ 2. Surink sent emails (be jų kraunimo į pagrindinį kontekstą)

**SVARBU.** Nekrauk visų emails turinio į mūsų pokalbio kontekstą. Tai užmuš sesiją. Vietoj to:

```bash
# 1. Gauk visus message IDs iš pasirinkto laikotarpio
mkdir -p /tmp/email-knowledge
gws gmail users messages list \
  --params '{"userId":"me","q":"in:sent after:YYYY/MM/DD","maxResults":500}' \
  --page-all > /tmp/email-knowledge/sent-ids.json

# 2. Parodyk man kiekį
jq '.messages | length' /tmp/email-knowledge/sent-ids.json
```

Pakeisk `YYYY/MM/DD` pagal vartotojo nurodytą laikotarpį.

Tada:
- Jei rezultatų **< 200** → tęsk.
- Jei **200-1000** → perspėk, kad apdorojimas užtruks ~15-30 min, paklausk ar tęsti.
- Jei **> 1000** → pasiūlyk siaurinti (pvz. tik su klientų domain'ais, arba tik tuos, kurie yra atsakymai į gautus laiškus: `q='in:sent -in:chats after:... -from:noreply'`).

Po patvirtinimo, batchais po 50, kiekvienam message ID ištrauk pilną turinį (subject, body, thread context, recipient domain), ir surašyk į vieną JSON failą:

```bash
# Batch ekstrakcija, batchas = 50 message
# Sukurk shell script /tmp/email-knowledge/extract.sh kuris iteruoja per IDs
# ir kaupia output į /tmp/email-knowledge/raw-messages.jsonl (po vieną message per eilutę)
```

Tu pats sugeneruosi konkretų shell scriptą. Naudok `jq` parsavimui. Galutinis output: vienas `.jsonl` failas, kuriame kiekviena eilutė = vienas message su laukais: `id`, `thread_id`, `date`, `to`, `subject`, `body_plain`, `previous_message_body` (jei tai atsakymas į kažką).

Kai baigsi, parodyk man kiek apdorota ir ar buvo klaidų.

---

## FAZĖ 3. Analizė per sub-agent (kad kontekstas išliktų švarus)

Paleisk **sub-agent** (`Agent` tool, subagent_type=`general-purpose`) su tokia užduotimi:

> Perskaityk failą `/tmp/email-knowledge/raw-messages.jsonl`. Tai yra [VARDAS] siųsti emailai klientams. Tavo užduotis:
>
> 1. Filtruok lauk: cold outreach į nepažįstamus, automatiniai (calendar, invoice), asmeniniai šeimai, tie, kurie atitinka šiuos draudžiamus raktinius žodžius: [iš Fazės 1 atsakymo nr. 6].
> 2. Iš likusių, identifikuok atsakymus į klientų klausimus (yra `previous_message_body` ir tai yra klientas).
> 3. Kategorizuok kiekvieną atsakymą į vieną iš: `pricing`, `scope`, `timeline`, `scheduling`, `refund_or_cancellation`, `technical_question`, `sales_objection_handling`, `onboarding`, `complaint_handling`, `upsell`, `other`. Jei reikia naujos kategorijos — sukurk.
> 4. Kiekvienai kategorijai ištrauk 10-20 reprezentatyvių pavyzdžių: kliento klausimas + [VARDAS] atsakymas + kategorija + tonas (formal/casual/firm/empathetic).
> 5. ATSKIRAI sukurk stiliaus analizę: kaip [VARDAS] pradeda emailus (top 10 patternų), kaip baigia (top 10), sakinio vidutinis ilgis, dažniausi žodžiai, vengiami žodžiai, ar naudoja emoji, ar naudoja "tu" ar "Jūs", kabučių stilius.
> 6. Output: du failai:
>    - `/tmp/email-knowledge/categorized.json` — kategorijos su pavyzdžiais
>    - `/tmp/email-knowledge/style-fingerprint.json` — stiliaus pirštų atspaudas
>
> Negrąžink man viso turinio. Grąžink trumpą santrauką: kiek emails apdorota, kiek kategorijų, kiek pavyzdžių vienai kategorijai, ir 5 įdomiausi pastebėjimai apie stilių.

Lauk sub-agent atsakymo. Parodyk man santrauką.

---

## FAZĖ 4. Sukurk žinių bazę (memory + context)

Pagal Fazės 1 atsakymą nr. 8 pasirinkai vietą. Toliau naudoju `BASE` kaip placeholder: jis visada = `./`, tai yra šio projekto šaknis.

Prieš kurdamas naujus failus patikrink, ar verslo aprašas jau yra kitur šiame
aplanke: `context/kontekstas.md` (pagrindinė asistento instrukcija jį pildo per
`/pazink-mane`) arba `marketingas/verslas.md` (jei įdiegtas marketingo
asistentas). Jei kuris nors jau yra ir užpildytas, NEDUBLIUOK jo turinio: naujus
failus žemiau kurk trumpus, su nuoroda į esamą failą ten, kur informacija sutampa,
ir rašyk tik tai, kas specifiška laiškams (pvz. kaip kaina paaiškinama laiške, o
ne pats kainynas iš naujo).

Sukurk šitokią struktūrą:

```
BASE/context/
  business.md              # tavo verslas, ką darai (iš Fazės 1 atsakymai 3, 4)
  ideal-client.md          # kas tavo klientas (iš atsakymo 5)
  pricing-and-offers.md    # struktūrizuotas kainynas (iš atsakymo 4)

BASE/memory/email-knowledge/
  README.md                # kas yra šis folder, kada paskutinį kartą atnaujintas, iš kokio laikotarpio
  faq/
    pricing.md             # dažni klausimai apie kainas + tavo atsakymai
    scope.md               # apie ribas, ką darai/nedarai
    timeline.md            # kiek laiko užtrunka
    scheduling.md          # susitikimai, kalendoriai
    refunds.md             # grąžinimai, atšaukimai
    technical.md           # produkto/paslaugos techniniai klausimai
    objections.md          # pardavimo objection'ai
    onboarding.md          # kaip pradedi su nauju klientu
    complaints.md          # kai klientas skundžiasi
    upsell.md              # papildomi pardavimai esamiems
  templates/
    common-replies.md      # 10-20 pasikartojančių atsakymų šablonų su raktiniais triggers
  client-patterns.md       # kas dažnai klausia ko (segmentacija pagal kategorijas)
```

Užpildyk failus IŠ `/tmp/email-knowledge/categorized.json`. **Kiekvienas faktas, atsakymas, kaina ar šablonas turi būti iš REALAUS email'o, ne sugeneruotas.** Jei kategorijoje mažiau nei 3 realūs pavyzdžiai — sukurk failą, bet užrašyk viršuje: „Mažai duomenų. Pildysime augant emails kiekiui."

Kiekviename FAQ faile struktūra:

```markdown
# [Kategorija]

> Sudaryta iš [N] realių email atsakymų laikotarpio [data nuo - data iki].

## Klausimas: [tipinis klausimas]
**Pavyzdžių:** [N]
**Mano atsakymo branduolys:** [sintezė vienu paragrafu]
**Realūs pavyzdžiai:**
1. [pilnas email atsakymas, anonimizuotas — pakeisk klientų vardus į „[Klientas]"]
2. [...]
3. [...]
**Tonas:** [formal/casual/firm/etc]
**Kada naudoti:** [trigger sąlygos]

## Klausimas: [kitas tipinis klausimas]
...
```

---

## FAZĖ 5. Sukurk email-replies skill

Sukurk `BASE/.claude/skills/email-replies/SKILL.md`, tai yra šio projekto `.claude/skills/email-replies/SKILL.md`, ne `~/.claude/skills/`.

Failo turinys (užpildyk iš `style-fingerprint.json`, nieko negalvok pats):

```markdown
---
name: email-replies
description: Use when drafting any email reply to a client, prospect, or business contact for [VARDAS]. Encodes [VARDAS]'s actual writing style derived from [N] real sent emails — tone, sentence structure, opening/closing patterns, vocabulary. Triggers on "draft email", "atsakyk klientui", "respond to [client]", "reply to this email", "rašyk email atsakymą".
---

# Email Reply Style — [VARDAS]

## Pre-flight (visada prieš rašant)
1. Perskaityk relevant faqs: `BASE/memory/email-knowledge/faq/[kategorija].md`
2. Perskaityk `BASE/context/business.md` ir `BASE/context/pricing-and-offers.md` jei klausimas apie produktą/kainą
3. Identifikuok kategoriją iš kliento email pagal `client-patterns.md`

## Voice fingerprint
[5-10 konkrečių punktų — IŠTRAUKTI iš style-fingerprint.json, ne išgalvoti]

Pavyzdys formato:
- Visada pradeda „Sveiki, [vardas]". Niekada „Labas" arba „Hi".
- Niekada nenaudoja emoji.
- Baigia su „Pagarbiai, [VARDAS]" formaliuose; „Geros dienos, [VARDAS]" neformaliuose.
- Sakiniai vid. 12 žodžių. Maks 25.
- Lietuviškos kabutės „..." — niekada angliškos "...".
- Niekada nenaudoja „-" arba „—" sakinio viduryje. Vietoj to: kablelis arba taškas.
- „Tu" su klientais, kuriuos pažįsta > 2 mėn. „Jūs" su naujais.

## Sakinio struktūra
[Konkretūs pavyzdžiai iš realių emails]

## Žodynas
- Dažniausi žodžiai (top 20 iš corpus): [...]
- Tipiški pasakymo būdai: [...]
- NIEKADA nevartoja: [...]

## Atvirimo patternai (top 10 iš corpus)
1. [tikras pavyzdys]
2. [...]

## Pabaigos patternai (top 10 iš corpus)
1. [...]

## Reagavimo patternai pagal scenarijų
- Klientas klausia kainos → struktūra: „Atsakau į klausimą + kaina + ką ji apima + CTA". Žr. `faq/pricing.md`.
- Klientas prašo nuolaidos → struktūra: [...]. Žr. `faq/objections.md`.
- Klientas vėluoja → struktūra: [...]. Žr. `faq/complaints.md`.
(iš corpus, ne generic)

## HARD RULES (jei sulauši — vartotojas atmes)
- Visada lietuviškos kabutės „..."
- Niekada hyphen ar em dash sakinio viduryje
- Niekada nepridėk informacijos, kurios nėra `memory/email-knowledge/` ar `context/`. Geriau pažymėk, kad tai reikia patikslinti su manimi, nei išgalvoti.
- Nesiūlyk kainų, terminų ar nuolaidų, kurių nėra `pricing-and-offers.md`.
- Jei kliento klausimas yra nauja kategorija (nėra `faq/`) — nedrafnk atsakymo. Paklausk vartotojo, kaip jis norėtų atsakyti, ir tada paprašyk leidimo pridėti tai į `faq/` ateičiai.

## Output formatas
Kai vartotojas paprašo „draft email reply to [X]":
1. Trumpai pasakyk, kurią kategoriją identifikavai ir iš kurio FAQ semsi.
2. Pateik draftą.
3. Po drafto, pridėk: „Šaltiniai: [failai, iš kurių sėmęsi]".
```

---

## FAZĖ 6. Testas

Imk 5 atsitiktinius senus klientų emailus iš `/tmp/email-knowledge/raw-messages.jsonl`. Slėpk realų vartotojo atsakymą. Generuok savo draftą naudodamas naują skill. Tada parodyk man, GREIČIO PALYGINIMUI:

```
KLIENTO KLAUSIMAS: [...]
TAVO DRAFTAS: [...]
REALUS VARTOTOJO ATSAKYMAS: [...]
```

Po visų 5 paklausk manęs: „Kuriuose drafttuose stilius nesutampa? Ką taisyti `SKILL.md` ar `faq/` failuose?"

Padaryk pataisymus pagal mano feedback. Pakartok testą su kitais 5 emails. Iteruok kol esu patenkintas.

---

## FAZĖ 7. Ongoing protocol

Sukurk paskutinį failą: `BASE/memory/email-knowledge/UPDATE-PROTOCOL.md`:

```markdown
# Kaip atnaujinti šitą žinių bazę ateityje

## Kas savaitę (penktadieniais)
Paleisk: „Atnaujink email knowledge bazę iš paskutinių 7 dienų sent emails".

Tu (asistentas) padarysi:
1. `gws gmail users messages list --params '{"userId":"me","q":"in:sent after:[prieš 7d data]","maxResults":100}' --page-all`
2. Apdorok per sub-agent kaip Fazėje 3
3. Jei rasi NAUJĄ klausimo kategoriją (nėra `faq/`), sukurk naują failą ir pasakyk vartotojui
4. Jei esamose kategorijose rasi naujų patternų ar pavyzdžių — pridėk juos
5. Atnaujink `style-fingerprint.json` jei stilius pasikeitė
6. Pranešk: kiek naujų emails apdorota, kiek naujų pavyzdžių pridėta, ar reikia atnaujinti SKILL.md

## Kai rašant draft pastebi klaidą
Jei vartotojas pasako „ne taip atsakytum" ar „pataisyk šitą fragmentą":
1. Identifikuok, iš kokios `faq/` failo ar SKILL.md sekcijos sėmeisi
2. Atnaujink tą failą iš karto su konkrečia korekcija
3. Patvirtink: „Pataisiau `faq/X.md` sekcijoje Y. Ateityje rašysiu taip."

## Kas mėnesį (mėnesio pirmą)
Paleisk: „Padaryk email knowledge sveikatos patikrą".

Tu (asistentas) padarysi:
1. Suskaičiuok pavyzdžius kiekvienoje kategorijoje
2. Jei kuri nors kategorija < 5 pavyzdžių — perspėk, kad galbūt verta surinkti daugiau
3. Patikrink ar yra realių (ne išgalvotų) atsakymų kiekvienam pavyzdžiui
4. Pranešk vartotojui sveikatos ataskaitą
```

---

## Galutinė ataskaita man

Kai užbaigsi visas fazes, pranešk:

1. Kiek emails apdorota viso
2. Iš kokio laikotarpio
3. Kiek kategorijų identifikuota ir kiek pavyzdžių kiekvienoje
4. Kur saugomas skill ir žinių bazė (pilni keliai)
5. Stiliaus analizės santrauka (5-7 raktiniai pastebėjimai)
6. Testo rezultatai (ar drafttai sutampa su realiais)
7. Kokie open klausimai liko (kategorijos su mažai duomenų, dviprasmiški patternai)
8. Kaip toliau testuoti („Atsakyk klientui [vardas] dėl [tema]" tipo komanda dabar veiks pagal naują skill)

Pradedam nuo Fazės 0. Paleisk `gws gmail users getProfile --params '{"userId":"me"}'` dabar.
