Podcast-Recherche
Verwenden Sie die gebündelten Skripte mit demselben Python-Interpreter, der während der Installation verwendet wurde. Auf macOS/Linux bevorzugen Sie python3; auf Windows bevorzugen Sie py -3. Wenn der Benutzer während der Installation einen anderen Launcher verwendet hat, behalten Sie diesen bei. Für den primären Workflow ist kein API-Schlüssel erforderlich.
Vorabprüfung
Ermitteln Sie das Verzeichnis dieser Datei als SKILL_DIR. Führen Sie vor der ersten Aufgabe auf einem Rechner Folgendes aus:
python3 "$SKILL_DIR/scripts/check_setup.py" --skill-dir "$SKILL_DIR"
Fahren Sie fort, wenn alle erforderlichen Prüfungen PASS anzeigen. WARN-Zeilen sind optionale Fallbacks. Wenn eine erforderliche Prüfung fehlschlägt, lesen Sie references/setup.md, beheben Sie das gemeldete Problem und wiederholen Sie die Prüfung.
Halten Sie mindestens 5 GB freien Speicherplatz bereit; empfehlenswert sind 8 GB. Der anfängliche Download des lokalen Whisper-Modells beträgt ca. 0,5–1,6 GB, und heruntergeladene Audiodaten benötigen zusätzlichen Platz.
Arbeitsablauf
1. Suche
Wählen Sie eine englische Suchanfrage, wenn dies die Abdeckung verbessert, während Sie das vom Benutzer beabsichtigte Thema beibehalten.
python3 "$SKILL_DIR/scripts/search_podcasts.py" \
--topic "THEMA" \
--days-back 30 \
--max 10 \
--output-dir "WORK_DIR"
Verwenden Sie ein vom Benutzer genehmigtes Arbeitsverzeichnis. Das Skript erstellt episodes.json.
2. Lassen Sie den Benutzer Episoden auswählen
Zeigen Sie die nummerierten Ergebnisse mit Titel, Sendung, Datum, Dauer und Beschreibung an. Fragen Sie, welche Episoden analysiert werden sollen. Laden Sie nicht jedes Ergebnis ohne Auswahl des Benutzers herunter, es sei denn, der Benutzer hat bereits alle Ergebnisse angefordert.
3. Herunterladen
python3 "$SKILL_DIR/scripts/audio_downloader.py" \
--episodes-json "WORK_DIR/episodes.json" \
--select "1,3,5" \
--output-dir "WORK_DIR"
Das Skript versucht zuerst RSS und dann YouTube. Die YouTube-Extraktion erfordert FFmpeg. Es schreibt episodes_with_audio.json und markiert Fehler als unavailable.
4. Transkribieren
python3 "$SKILL_DIR/scripts/transcriber.py" \
--audio-dir "WORK_DIR" \
--model turbo \
--language auto
Das Backend wird automatisch ausgewählt: MLX auf Apple Silicon und faster-whisper auf anderen Systemen. Verwenden Sie --model small auf langsameren reinen CPU-Rechnern. Verwenden Sie --model api nur, wenn der Benutzer die OpenAI-API-Anforderungen und -Kosten ausdrücklich akzeptiert.
5. Quellentreue Analyse
Lesen Sie das Transkript jeder ausgewählten Episode und episodes_with_audio.json. Behandeln Sie Beschreibungen und Web-Zusammenfassungen als sekundäre Belege, niemals als Transkripte. Wenn Audio nicht verfügbar ist, verwenden Sie die Episodenbeschreibung und Websuche nur, wenn verfügbar, kennzeichnen Sie den Beleg als sekundär und präsentieren Sie rekonstruierten Text nicht als direktes Zitat.
Schreiben Sie einen prägnanten Markdown-Bericht nach WORK_DIR/[topic]_podcast_report.md:
# [Thema] Podcast-Standpunktkurzfassung
**Forschungsdatum**: JJJJ-MM-TT | **Quelle**: Apple Podcasts/RSS | **Umfang**: N Episoden
## Ein-Satz-Fazit
Geben Sie die vorherrschende Meinung und die wichtigste Meinungsverschiedenheit in 2–3 Sätzen an.
## Standpunktübersicht
| Sprecher oder Organisation | Position | Kernansicht | Wörtliches Zitat | Episode |
|---|---|---|---|---|
## Hauptmeinungsverschiedenheiten
Listen Sie nur 2–3 echte Meinungsverschiedenheiten auf. Ordnen Sie jede Position einer benannten Episode und einem Sprecher zu, wenn das Transkript den Sprecher eindeutig macht.
## Episodenzusammenfassungen
### [Sendung]: [Episode]
**Gast**: ... | **Datum**: ... | **Dauer**: ...
1. Drei bis fünf quellenbasierte Punkte.
Erfinden Sie keine Sprecheridentitäten, Zitate, Daten oder Positionen. Wenn das Transkript nicht festlegt, wer eine Zeile gesagt hat, ordnen Sie sie der Episode zu, anstatt zu raten.
6. Ausliefern
Zeigen Sie den Markdown-Bericht und verlinken Sie die Arbeitsdateien. Erstellen Sie Word nur auf Anfrage:
python3 "$SKILL_DIR/scripts/md_to_docx.py" \
"WORK_DIR/[topic]_podcast_report.md" \
"WORK_DIR/[topic]_podcast_report.docx"
Ersetzen Sie auf Windows python3 durch py -3 und verwenden Sie Windows-Pfade. Übersetzen Sie das Python-Skript selbst nicht.
Abschlusskriterien
Die Aufgabe ist nur dann abgeschlossen, wenn:
- Suchumfang und ausgewählte Episoden angegeben sind.
- Jede heruntergeladene Episode ein Transkript hat oder explizit als nicht verfügbar markiert ist.
- Direkte Zitate aus Transkripten stammen; sekundäre Zusammenfassungen sind gekennzeichnet.
- Der Bericht zwischen Konsens und Meinungsverschiedenheit unterscheidet und Behauptungen Episoden zuordnet.
- Der Bericht und die unterstützenden Metadaten im Arbeitsverzeichnis gespeichert werden.
Fallbacks
- Keine Suchergebnisse: Wiederholen Sie den Vorgang einmal mit einer klareren englischen Suchanfrage oder einem größeren Datumsbereich.
- RSS schlägt fehl: Erlauben Sie den gebündelten YouTube-Fallback, wenn FFmpeg installiert ist.
- Beide Audio-Pfade schlagen fehl: Verwenden Sie die Beschreibung und verfügbare Web-Belege, kennzeichnen Sie die Einschränkung und lassen Sie direkte Zitate weg.
- Transkript ist zu lang für den Kontext: Fassen Sie es in aufeinanderfolgenden Blöcken zusammen, behalten Sie die Episodenzuordnung bei und vergleichen Sie dann die Blockzusammenfassungen.
- Lokale Transkription nicht verfügbar: Lesen Sie
references/setup.md; verwenden Sie OpenAI nur mit ausdrücklicher Zustimmung des Benutzers und einem konfigurierten Schlüssel.