---
name: mytalentscout-sales-agent-prompts
description: >-
  Pflegt den Sales-Intelligence-Agent (Anthropic Web Search) im myTalentscout-/scraper-Projekt:
  variable, natürliche Prompts für DACH-IT-Recherche (Jobs, Firmen, Kontakte), festes
  JSON-Schema, keine Anti-Bot-Evasion. Nutzen bei Änderungen an jobscraper-agent,
  sales-prompt-styles, jobscraper-sources, KI-Suche, „weniger generisch“, Prospects-Prompts.
---

# myTalentscout — Sales-Agent-Prompts (persönlich)

**Gespiegelt für:** Cursor (`~/.cursor/skills/…`) und Claude Code (`~/.claude/skills/…`). Inhalt identisch halten bei Änderungen.

## Wann dieser Skill gilt

- Anpassungen an **Anthropic-Prompts** für `/api/search` und den **Sales-Agent**.
- Themen: **Stellen/Firmen/Kontakte**, **DACH**, **Prompt-Rotation**, **Qualität der Freitexte**.
- User fragt nach **weniger generisch**, **natürlicher Suche**, **Prompt-Variation**.

## Pflicht-Dateien im Repo (relativ zum Projektroot)

| Datei | Rolle |
|-------|--------|
| `src/config/sales-prompt-styles.ts` | Rotierende Einleitungen, Zeitstempel, Qualitäts-Hinweise, Aufgaben-Labels; `promptStyleKey()` |
| `src/services/jobscraper-agent.service.ts` | `buildPrompt()`, `callAnthropic()`, `runSearchOnce` |
| `src/config/jobscraper-sources.ts` | `SEARCH_CONFIGS`, `ALL_SOURCES`, `buildQuery(focus, region)` |

## Regeln (nicht verhandelbar)

1. **JSON-Ausgabe-Schema** für Prospects bleibt **strukturell unverändert** (exakte Keys wie im Prompt-Ende). Nur **Rahmen- und Stil-Anweisungen** variieren.
2. **Keine** Hinweise zu Proxy-Rotation, Fingerprint-Spoofing, Captcha-Umgehung oder sonstiger **Umgehung von Anti-Bot / Nutzungsbedingungen**. Stattdessen: **offizielle APIs**, **erlaubte Quellen**, **manuelle Recherche** empfehlen.
3. **Fakten**: Nur öffentlich belegbare Informationen; keine erfundenen Firmen, Stellen oder Kontakte in den Anweisungen fordern.
4. Neue **Sprach-Variationen** über `sales-prompt-styles.ts` oder zusätzliche `buildQuery`-Varianten — nicht durch riesige copy-paste-Blöcke in einem einzigen String.

## Workflow: Prompt erweitern

1. **Nur Rahmen** (Einleitung, Ton, Datum, Anti-Floskel): Arrays in `sales-prompt-styles.ts` erweitern, `pickVariant` / `promptStyleKey` unverändert lassen, sofern möglich.
2. **Inhaltliche Suchlogik** (welche Portale, welcher Fokus): `SEARCH_CONFIGS` / `buildQuery` in `jobscraper-sources.ts`.
3. **Einbindung**: `buildPrompt()` in `jobscraper-agent.service.ts` aktualisieren; `styleKey` weiter aus `promptStyleKey(si, searchIndex, focus)` speisen.
4. **`npm run build`** ausführen.

## Checkliste vor dem Einchecken (wenn du committest)

- [ ] JSON-Block am Ende von `buildPrompt` noch **parsebar** und **identisch** zum bestehenden Prospect-Schema
- [ ] Keine neuen „Evasion“-Formulierungen
- [ ] TypeScript baut ohne Fehler
- [ ] Kurz im UI oder per `POST /api/search` smoke-testen (mit gültigem `ANTHROPIC_API_KEY`)

## Kurzreferenz: `promptStyleKey`

Deterministisch aus **Quellen-Index**, **searchIndex** (Laufzähler) und **Focus-String** — sorgt für **Wechsel** ohne echte Zufälligkeit in Logs/Replays.

## Optional: neue `buildQuery`-Variante

Wenn eine Konfiguration **mehrere Satzmuster** braucht:

- Entweder zweite Funktion `buildQueryVariantB` und in `buildQuery` per `(styleKey % 2)` wählen, **oder**
- Array von Template-Strings und `pickVariant(templates, styleKey)` — **ohne** das JSON-Schema zu duplizieren.

---

## Quellen / Herkunft dieser Skill-Inhalte

| Inhalt | Herkunft |
|--------|----------|
| Dateipfade und Rolle der Module | Analyse des lokalen Repos **myTalentscout/scraper** (Stand: bei letzter Synchronisation mit Cursor); maßgeblich sind immer die **aktuellen Dateien** im Projekt. |
| Regeln (festes JSON, keine Evasion, belegbare Fakten) | Abstimmung mit der Nutzerin in **Cursor-Chats** + gängige Praxis für **Prompt-Sicherheit** und **plattformkonforme** Nutzung; **kein** Gesetzestext und **keine** offizielle Anthropic-Zitierung pro Satz. |
| Anthropic Messages API & Tools | Öffentliche Herstellerdokumentation: [Anthropic API documentation](https://docs.anthropic.com) — konkrete Tool-Typen/Modellnamen können sich ändern; vor Deploy **Dokumentation prüfen**. |
| Aufbau des Skills (Frontmatter, Struktur) | Cursor-Anleitung **Creating Skills** (lokal u. a. unter `~/.cursor/skills-cursor/create-skill/SKILL.md`). |
| Diese Quellen-Tabelle | Vom **KI-Assistenten (Cursor/Composer)** ergänzt auf **explizite Nutzeranfrage** („Quelle dazu, woher du die Daten hast“). |

**Hinweis:** Der Skill ist **kein** Ersatz für Rechtsberatung oder für die aktuelle Anthropic-/LinkedIn-Dokumentation.
