Vision Stand 2026-08-28 03:30 UTC

Automatisierung

Alle Skripte, quer über alle Phasen

Die Fabrik besteht zum großen Teil aus Skripten, die niemand sieht: Anmeldungen bei AdsPower und Multilogin, Captchas, Warmup, Branding, Upload, dazu der ganze Klon-Apparat und die Patches, die Bausteine in die Workflows schreiben.

Die Beschreibungen unten sind nicht gepflegt, sondern werden bei jedem Bau aus der ersten Zeile im Skript selbst gelesen. Ein Skript, das umbenannt oder gelöscht wird, verschwindet hier von allein. Was keinem Schritt zugeordnet ist, steht als solches da: entweder fehlt die Zuordnung, oder das Skript wird nicht mehr gebraucht.

Konten und Browser 48 Skripte, 22 ohne Phase

Anmelden, 2FA, Captcha, Antidetect-Profile, Warmup, Branding, Upload · Ordner scaling/

SkriptWas es tutPhase
account_loginaccount_login.py – Google-Login im getarnten Browser vollautomatisch durchfahren.1 Kanal Prep
account_signupaccount_signup.py – ein Google-Konto SELBST anlegen (Jonas-Weg), vollautomatisch.1 Kanal Prep
adspower_driveadspower_drive.py – steuert AdsPower-Profile headless über die Local API (Port 50325).1 Kanal Prep
anchor_checkanchor_check.py – LESENDER Nachweis, dass der Trust-Anker eines Kontos wirklich steht.1 Kanal Prep
backup_codesbackup_codes.py – Google-Backup-Codes ziehen und sicher ablegen (dritter Trust-Anker, jonas.md §2c-H).1 Kanal Prep
channel_createchannel_create.py – Schritt 7b: dem Google-Konto einen YouTube-Kanal geben (HZ-426).1 Kanal Prep
editorseditors.py – wer managt welchen Kanal. EINE Quelle: hq.config.json -> editors.1 Kanal Prep
factory_statefactory_state.py – Bau-Status der Konten-Fabrik HART schreiben statt raten (HZ-817).1 Kanal Prep
multilogin_drivemultilogin_drive.py – Multilogin-X-Profile per API bauen + headless fernsteuern.1 Kanal Prep
pop_checkpop_check.py – Reichweiten-Tor (HZ-1116): 2 Tage nach dem Walking-Video Urteil faellen.1 Kanal Prep
proxy_watchproxy_watch.py – warnt, BEVOR ein Proxy ablaeuft (HZ-817).1 Kanal Prep
recovery_addrecovery_add.py – Recovery-Telefonnummer im Google-Konto hinterlegen (Trust-Anker, jonas.md §2c-H).1 Kanal Prep
rotate_credsrotate_creds.py – Passwort und Authenticator (TOTP) eines gekauften Google-Kontos auf EIGENE1 Kanal Prep
run_channelrun_channel.py – Kanal(e) aktivieren: Profil starten -> Google-Login -> Captcha (whisper)1 Kanal Prep
secrets_storesecrets_store.py – EINE Quelle fuer das Schreiben in dashboard/config/hq.secrets.json.1 Kanal Prep
verify_probeverify_probe.py – Nur-Lesen-Diagnose: WAS genau will Google von diesem Konto?1 Kanal Prep
video_metavideo_meta.py – Titel und Beschreibung eines hochgeladenen Videos aendern (HZ-428).1 Kanal Prep
walking_metawalking_meta.py – der BELEG neben jedem Walking-Video (HZ-428 Teil 2+3).1 Kanal Prep
warmupwarmup.py – SCHRITT 5 der Konten-Fabrik (HZ-218/817): frisch eingeloggte YouTube-Konten1 Kanal Prep
whisper_captchawhisper_captcha.py – reCAPTCHA v2 Audio-Challenge lokal lösen ($0, kein API-Key, kein Extension).1 Kanal Prep
ytsellerYTSeller-Client – Zutaten-Beschaffung fuer die Konten-Fabrik (docs/bereiche/scaling.md).1 Kanal Prep
build_channelbuild_channel.py <CH> [--editor] – oder als Funktion build(CH, editor) importierbar.2 DNA & Rezept
fabrik_checkfabrik_check.py – taeglicher Selbsttest der Konten-Fabrik (HZ-443). Read-only, $0.4 Test
studio_publishHZ-290 – die Bruecke: fertiger Render eines Klon-Kanals -> plan.json -> Browser-Upload.5 Veröffentlichen
warmup_dailywarmup_daily.py – taeglicher Warmup-Lauf ueber die Konten, die UNS gehoeren (Cron).5 Veröffentlichen
yt_uploadyt_upload.py – ein Video ueber die YouTube-Studio-OBERFLAECHE hochladen, im getarnten Profil.5 Veröffentlichen
account_parseaccount_parse.py – Konto-Zeilen robust lesen. EIN Parser, zwei Nutzer:–
adspower_watchdogadspower_watchdog.py – haelt AdsPower (und seine Anzeige :99) von selbst am Leben (Cron).–
auto_uploadHZ-288 – AUTO-UPLOAD: fertige Videos laufen ohne Handgriff auf ihren YouTube-Kanal.–
backup_codes_watchbackup_codes_watch.py – zieht fehlende Google-Backup-Codes SELBST, sobald ein Konto anmeldbar ist (HZ-470).–
brand_applybrand_apply.py – das fertige Branding wirklich AUF den Kanal setzen (HZ-844, Teil von HZ-249).–
brand_bilderKanalbild AUS der DNA-Vorgabe: Avatar + Banner erzeugen – hinter zwei Toren (HZ-1237).–
browser_driverbrowser_driver.py – EINE Naht fuer alle Browser-Starts der Konten-Fabrik.–
build_batchbuild_batch.py – baut einen Konten-Batch (Haupt + Editor) in EINEM Prozess.–
captcha_probecaptcha_probe.py – feststellen, WELCHES Captcha Google vor den Login stellt (rein lesend).–
captcha_solvecaptcha_solve.py – Captcha lösen via NoCaptcha AI (Konten-Fabrik, Login-Automatik HZ-223).–
factory_statusfactory_status.py – LEBENDER Stand je Konto, den das HQ anzeigt (Leon-Wunsch 20.07.:–
kanal_prepkanal_prep.py – HZ-1125: Schritt 1 der Fabrik (Kanal Prep) als EIN Ablauf sichtbar machen.–
meldenEIN Melde-Weg nach Telegram – und die Regel, WANN gemeldet wird.–
nummern_poolnummern_pool.py – EINE Quelle fuer die gekauften US-SMS-Nummern der Konten-Fabrik.–
prep_ketteprep_kette.py – HZ-1134: O1 Kanal Prep FUEHRT AUS, statt nur zu berichten.–
profil_offenprofil_offen.py – ein Browser-Profil SICHTBAR offen halten, damit ein Mensch darin klickt.–
relogin_dailyHZ-402 – Re-Login-Automat: abgemeldete Konten melden sich selbst wieder an.–
runlogrunlog.py – Arbeitsbericht der Konten-Fabrik.–
ui_healui_heal.py – Selbstheilung für Browser-Automation, wenn Google die Oberfläche ändert.–
yt_entwuerfeHZ-1255 – Studio-Entwuerfe LISTEN und gezielt LOESCHEN.–
yt_replyyt_reply.py – Zuschauer-Kommentare beantworten: ENTWÜRFE erzeugen, einzeln nach Freigabe posten.–
yt_verifyyt_verify.py – YouTube-Kanal per SMS verifizieren (youtube.com/verify), ohne Handgriff.–

Klon-Apparat 159 Skripte, 134 ohne Phase

Nische messen, DNA ziehen, Maßstab, Prüfen, Forken, Rezepte · Ordner channel_clone/

SkriptWas es tutPhase
algrow_restHZ-239/HZ-846 · Serverseitige Algrow-REST-Bruecke – OHNE Claude-MCP-Session.2 DNA & Rezept
apply_recipeHZ-230 Apply-Motor v2 – Kanal-Registry + Recipe in EINEM Befehl anwenden.2 DNA & Rezept
channel_dossierHZ-509: Kanal-Dossier – EIN Datensatz je Kanal, zwei Auswertungstiefen.2 DNA & Rezept
clone_refine_loopHZ-324 · Autonomer Klon-Verfeinerungs-Loop ($0, headless, per Cron).2 DNA & Rezept
derive_formatHZ-322 · Render-Format aus AI-Vision automatisch ableiten (kanaluebergreifend, $0).2 DNA & Rezept
dna_massstabHZ-519 · Den MASSSTAB in die DNA schreiben – messbare Zielwerte statt Prosa ($0).2 DNA & Rezept
extract_dnaChannel-Clone · Phase 0 – Kanal-DNA-Extraktor (HZ-205, Vorstufe zu HZ-203).2 DNA & Rezept
fetch_channel_videosHZ-216: Read a FOREIGN YouTube channel's public video list via the YouTube Data API,2 DNA & Rezept
fork_channelHZ-231 (Motor v2 Block C, der HZ-203-Kern): Kanal-ERSTELLEN aus Recipe+DNA.2 DNA & Rezept
frame_visionHZ-297 · Eigene Video-Vision ($0, Algrow-unabhaengig).2 DNA & Rezept
kanal_spracheWelche Sprache misst man an einem Kanal? – eine Auflösung für alle Transkript-Wege.2 DNA & Rezept
klonbarkeitK0 · KLONBARKEIT – kann dieser fremde Kanal ueberhaupt geklont werden, und wie weit?2 DNA & Rezept
niche_probeHZ-491: Nischen-Sonde – holt harte YouTube-Zahlen zu einer Nischen-Hypothese und schreibt2 DNA & Rezept
traegerTRAEGER – welcher Baustein traegt dieses Element? Die Zuordnung, die in BEIDE Richtungen geht.2 DNA & Rezept
yt_subsHZ-491 · Untertitel fremder YouTube-Videos holen – lokal, $0.2 DNA & Rezept
clone_scoreHZ-353 · T3 – Frame-Abgleich gegen die Referenz + ehrlicher Klon-Prozent ($0).4 Test
dna_loopHZ-519 · Der Regelkreis: Test-Folge rendern -> messen -> Rezept-Zahlen nachziehen ($0).4 Test
factory_testHZ-352 · FABRIK-TEST – T1 (Trockenlauf) + T2 (Test-Render) als EIN Werkzeug.4 Test
material_mixHZ-519 · Materialmix eines Kanals messen – woraus die Bilder BESTEHEN ($0).4 Test
modul_abdeckungHZ-541 · MODUL-ABDECKUNG – zeigt EINE Folge wirklich jedes Modul? ($0)4 Test
modul_showroomHZ-541 · MODUL-SHOWROOM – jede Auspraegung einmal ansehen, nebeneinander ($0).4 Test
render_probeHZ-352 · Test-Render fuer EINEN beliebigen Kanal – Wegwerf-Container, $0.4 Test
road_checkHZ-363 – Der Beweis: fährt die Straße wirklich genau das, was heute im Fork steht?4 Test
upload_target_checkHZ-814 Preflight: stimmt das Upload-Ziel jedes Kanals ueberall ueberein?4 Test
wiring_treeHZ-393 · T0 VERDRAHTUNGS-BAUM – haengt die Pipeline eines Kanals wirklich zusammen? ($0, Sekunden)4 Test
abnahme_korbAbnahme-Korb: EIN Weg, wie ein Werkzeug etwas zum Ansehen zu Leon bringt.–
abruf_ledgerHZ-941 · Vorbild-Abruf: Wiederhol-Weg, gemessenes Zeitfenster, lautes Scheitern (read-only bis–
anstoss_riegelEIN Auslöser je Kanal – der gemeinsame Riegel vor jedem bezahlten Lauf.–
apply_p1_promptapply_p1_prompt.py – HZ-1300. Gegenrichtung zu freeze_p1_prompt.py: schreibt–
asset_preflightPreflight fuer Render-Assets: findet fehlende Dateien BEVOR ein Render daran stirbt.–
assign_voice_settingsHZ-842 – jedem Kanal seine eigenen STIMMEN-REGLER geben (Folge von HZ-837).–
assign_voicesHZ-837 – jedem Kanal seine EIGENE Stimme geben, aus der DNA abgeleitet.–
autonomieHZ-508 – LÄUFT DIESER KANAL OHNE HAND? Eine gemessene Tafel und EIN Schalter.–
avatar_lageHZ-1293 · Avatar-Lage – WO im Video steht die Kanal-Figur, nicht nur WIE OFT ($0).–
beat_probeHZ-355 – Was steht bei diesem Kanal WIRKLICH als Beat-Regel im Router-Prompt? ($0, kein Lauf)–
bewegung_linseBewegungs-Dimension des Klon-Scores: Freezes, harte Spruenge, Schwarzbilder. Read-only, $0.–
bgm_holenHintergrundmusik mit BELEGBARER Lizenz holen – und die Herkunft mitschreiben.–
bildwegWelches BILDMATERIAL ein Kanal braucht – aus seiner DNA, nicht aus einer Vorlage.–
build_packageHZ-821 – Kanal-Paket: aus dem duennen ~1KB-Recipe ein VOLLSTAENDIGES, selbsttragendes–
build_voice_poolBaut channel_clone/voices.json – den EINEN Stimmen-Pool, aus dem sich Builder,–
channel_doctorKanal-Doktor (HZ-234) – die Self-Critique-Schleife des Klon-Motors.–
channelsHZ-257 – DIE Kanal-Quelle fuer alle Video-Store-Werkzeuge.–
clip_linseHZ-1279 Clip-Linse: 3-5s-Ausschnitte als Frame-Streifen unser vs. Vorbild, nebeneinander.–
dna_checkHZ-503 – Welche DNA liest die Pipeline WIRKLICH? (read-only, $0)–
dna_pruefenHZ-519 · Trifft eine veroeffentlichte Folge den MASSSTAB ihrer DNA? ($0)–
dna_signature_setHZ-1280 · Signature-Wahl fest in die DNA schreiben – Leons Klick aus dem Showroom.–
docker_deckelEIN Zeitdeckel fuer jeden `docker exec` – am Host UND im Container. Read-only, $0.–
drift_checkHZ-233/230 Drift-Check – meldet, wenn ein Baustein-Anker nicht mehr auf die P2 eines–
eigennameEin geklonter Kanal bekommt einen EIGENEN Namen – nicht den seines Vorbilds ($0).–
eigenname_propagierenIst ein eigener Name gewaehlt, zieht er durch die Fabrik nach ($0, HZ-1301).–
element_specHZ-1277 · Element-Spec – einen Referenz-Frame des VORBILDS vermessen -> Spec-Werte.–
element_testHZ-1277 · Element-Test – der $0-Schnellkreis: Payload + Vertrag + Stills in ~5 Minuten.–
export_frischeHZ-799 – Frische-Waechter fuer die Workflow-Exporte in out/ und src_dumps/.–
fabrik_loopHZ-336/343 · Autonomer Fabrik-Optimierungs-Loop ($0, 2 Agenten, per Cron).–
flaechen_linseHZ-1013 · Flaechen-Dimension der Klon-Messung ($0, nur ffmpeg – kein Modell).–
fork_erbeDas psych-Erbe aus den Fork-Vorlagen nehmen – beim FORK, nicht erst am lebenden Workflow.–
freeze_p1_promptHZ-528 – die P1-Prompts eines Kanals aus seinem lebenden Fork ins REZEPT einfrieren.–
freeze_p3_renderHZ-404 – die drei nicht herleitbaren P3-Werte je Kanal messen und einfrieren.–
freeze_p3_triggerHZ-431 – den P3-Trigger-Webhook je Kanal messen und in die Registry einfrieren.–
freeze_p4_thumbHZ-405 – die Thumbnail-Schule eines Kanals aus seinem lebenden Fork-P4 einfrieren.–
freeze_p5_callbackHZ-403 – den Upload-Callback je Kanal messen und in die Registry einfrieren.–
freeze_router_promptHZ-406 – den Router-Prompt eines Kanals aus seinem lebenden Fork ins REZEPT einfrieren.–
funnel_assetsfunnel_assets.py – erzeugt die QR-Endkarte für den Funnel-Baustein. $0, lokal.–
funnel_preis_checkfunnel_preis_check.py – stimmt der EINGEBRANNTE Kartenpreis mit dem Shop überein? $0.–
funnel_video_checkfunnel_video_check.py – prüft den Funnel-Baustein IM fertigen Video. Read-only, $0.–
gegenhaltGegenhalt – ALLE messbaren Achsen auf einmal gegen ihr Soll. Read-only, $0.–
golden_gateHZ-1277 · Golden-Gate – laeuft VOR jedem Renderer-Rebuild, nicht danach.–
grading_farbtonHZ-1034 – Farbton des Bildmaterials messen und den Tint dagegen rechnen ($0, read-only).–
hausregel_checkWächter für die Hausregeln aus CLAUDE.md. Read-only, $0, kein Netz.–
heygen_clientheygen_client.py – HeyGen-API-Client für den Persona-Baustein (docs/funnel_persona_plan.md).–
inject_p1DNA → P1-Injektion (HZ-206): setzt den CHANNEL-DNA-Block in den Skript-Prompt–
karten_kontrastkarten_kontrast.py – steht ein Foto hinter der Lesekarte, oder ist die Flaeche flach? ($0)–
karten_linseHZ-1282 (BAU 2/2 aus HZ-1209) · Karten-Dimension des Klon-Scores: Textzeilen + Kartenflaeche–
karten_sprache_checkkarten_sprache_check.py – HZ-1300. Sind P1-Prompt und Karten-Chrome (Reddit-Kommentare,–
klon_loopHZ-1115 · Klon-Loop als Standardschritt – EIN Aufruf je Kanal, VOR dem Go-Live.–
klon_referenzWer ist das Vorbild eines Kanals? – EINE Auflösung, von allen benutzt (HZ-525).–
klon_verlaufDer Verlauf der Kernzahl – EINE Regel, gelesen von der Vision-Seite UND vom HQ.–
klonbarkeit_standDer K0-Stand aus dem Ledger – EINE Lesestelle für alle Anzeigen (12.08.2026).–
laenge_linseDie Laengen-Dimension des Klon-Scores: Ist-Dauer gegen die abgenommene Sollspanne. $0.–
look_abHZ-519 · A/B-Vergleich zweier Stil-Fassungen MIT Stichprobe.–
look_loopHZ-519 · Look-Loop: den Bild-Prompt so lange nachziehen, bis der Ist im Zielkorridor liegt.–
look_metrikHZ-519 · Objektive Look-Metrik fuer den Bild-Loop ($0, nur ffmpeg).–
luecken_artHZ-338 · Jede Klon-Luecke sagt, WO sie hingehoert: WERT, REGEL oder SYSTEM ($0, read-only).–
material_spracheHZ-542 · Das Skript kennt sein Material – Regeln je Materialart sehen und ableiten ($0).–
modulbuchHZ-848 · MODULBUCH – was kann der Renderer, und welcher Kanal nutzt es?–
motiv_sperreVorab-Pruefung: kann zu DIESER Person ueberhaupt eine Folge entstehen? (Leon 11.08.2026)–
niche_boardDie EINE gesperrte Schreibstelle für das Ideen-Board (channel_clone/niche_ideas.json).–
nischen_eignungK1+ · NISCHEN-EIGNUNG – welche Nische zieht, UND kann unsere Fabrik sie ohne Hand bauen?–
nischen_eignung_standDer Nischen-Eignungs-Stand aus dem Ledger – EINE Lesestelle für alle Anzeigen (13.08.2026).–
nischen_takt_planWAS WIRD WANN NACHGEMESSEN – die eine Lesestelle für den Takt der Nischen-Prüfung.–
not_suchwortHZ-671 · Das Not-Suchwort eines Kanals sehen und aus seiner DNA ableiten ($0).–
p1_laengeModul 12 (Video-Laenge): alle Laengen-Angaben EINES P1-Skript-Prompts konsistent–
p1_probeHZ-792 – Wie viele Woerter schreibt der LEBENDE P1-Skript-Prompt wirklich? ($0, kein Lauf)–
p2_bildpromptsDie zwei BILD-Prompts der P2-Stufe aus der DNA eines Kanals ableiten ($0).–
p2_strasse_probeHZ-525 – würde die P2-Straße diesen Kanal FAHREN? Gemessen, ohne einen Cent auszugeben.–
pacing_messenHZ-538 · Taugt ein Kanal-Dossier als Messgrundlage? (kein LLM, kein Netz, $0)–
passung_linseBild-zu-Inhalt-Passung: passt das Gezeigte zu dem, was gerade ERZÄHLT wird?–
payload_vertragHZ-1277 · Payload-Vertrag – sind die Format-Elemente einer Folge da UND sichtbar?–
probe_klonbarkeitPROBE K0 – schlaegt die Klonbarkeits-Skala ueberhaupt aus? ($0, kein Netz, kein Modell)–
prompt_kreisHZ-977 · Der Prompt-Kreis: eine gemessene Klon-Luecke aendert EINEN Prompt-Satz und–
prompt_verdrahtenFeste Prompt-Literale an die Werkbank anschliessen (HZ-973).–
prompt_vorschlagHZ-951 · Eine REGEL-Luecke bekommt einen VORSCHLAGSSATZ und einen Freigabe-Befehl ($0).–
prompt_werkbankPrompt-Werkbank – EIN Ort fuer jeden Text, den wir einer KI geben (HZ-973).–
recipe_from_liveHZ-307 – Ist-Zustand-Scanner: was nutzt jeder Kanal WIRKLICH (nicht was das Recipe behauptet).–
referenz_messenHZ-538/545 · Ein Referenzvideo als DATEI vermessen – ohne YouTube-Zugriff ($0, kein LLM).–
registry_ioEine gesperrte Schreibstelle fuer channel_clone/registry.json.–
registry_sync_activeHZ-394 – registry.json `active` gegen den echten n8n-Stand abgleichen.–
render_host_checkSoll/Ist: ruft jede Pipeline-Stufe den Render-Container an, den ihr Kanal laut Register hat?–
render_mappingHZ-410 – `render_mapping` aus der Kanal-DNA in echte Renderer-Schalter uebersetzen.–
retention_probeHZ-528 – Retentions-KURVEN je Video ziehen, damit am Skript nicht geraten wird.–
rezept_wirkungHat ein ECHTES Video die Rezept-Werte wirklich benutzt? – je Teil, gemessen. ($0)–
road_idsHZ-566 – WER IST DIE STRASSE? Eine Auskunft, die jedes Werkzeug dieselbe Antwort gibt.–
road_sperreHZ-761 – EINEN Kanal auf der geteilten Straße einzeln anhalten.–
road_switchHZ-540 – der Straßen-Stand als EINE gemessene Tafel, und der Umschalt-Handgriff als EIN Weg.–
sample_alvaro_thumbsHZ-296-Vorarbeit: alvaro-Thumbnail-Showroom nach vision-verifizierter thumbnail_dna.–
sample_stylesBuilder-Stil-Galerie (HZ-212 v4): DIESELBE Szene in jedem Bild-Stil – echte–
schreiber_checkHZ-873 – WER schreibt registry.json und active_stand.json, in welchem TAKT, und mit Sperre?–
scrape_proxy_checkHZ-1026 · Lebt SCRAPE_PROXY? (read-only, $0)–
self_test_materialHZ-242 · Selbst-Test-Material: unsere EIGENEN Folgen als Scrape-JSON fuer extract_dna.py.–
signatur_showroomHZ-1280 · SIGNATUR-SHOWROOM – 10 Signature-Effekt-Varianten einmal rendern, nebeneinander ($0).–
skript_linseSkript- und Titel-Dimension: klingt UNSER Text wie das Vorbild – bevor irgendwer klickt?–
skript_vertrag_checkskript_vertrag_check.py – hält UNSER Skript den Redaktionsvertrag der DNA ein? $0.–
stock_licht_checkHZ-1239 – prueft, ob die P2-Stock-Suche eines Kanals ihre Lichtstimmung wirklich aus der–
takt_nachruestenHZ-960 – was `autonomie.py` als FEHLEND meldet, baut dieses Werkzeug nach.–
takt_waechterHZ-1089 – Takt-Automatik statt Handklick (ersetzt HZ-508).–
test_absturz_schwelleHZ-956 – die Absturz-Schwelle muss ueber der eigenen Messstreuung liegen.–
test_geteilter_publisherHZ-1074: `--freigabe aus` darf einen GETEILTEN Publisher-Workflow nicht deaktivieren.–
test_juengste_gleichstandHZ-885 · Zeigt bei ZEIT-GLEICHSTAND jede Stelle dieselbe Ledger-Zeile? ($0, read-only)–
test_klon_linienHZ-703 – der Verlauf vergleicht NUR innerhalb einer Quelle. Read-only, $0.–
test_linsen_neuDie zwei neuen Mess-Dimensionen (13.08.2026) an gebauten UND echten Faellen – $0, kein Modell.–
test_linsen_zaehlerDer Linsen-Zaehler kann nicht mehr ueberlaufen – und wenn doch, wird es laut.–
test_prompt_kreisHZ-977 · Der Automat des Prompt-Kreises, gegen eine erfundene naechste Messung ($0).–
test_schreiber_checkGegenprobe fuer schreiber_check.py – $0, ohne Netz, ohne Schreibzugriff (HZ-873).–
test_skript_linseSkript- und Titel-Dimension an echten Quellen und gebauten Faellen – $0, kein Modell.–
test_wf_bearbeitenSelbsttest fuer den EINEN Schreibweg nach n8n: apply_recipe.wf_bearbeiten (HZ-873).–
testdata_buildHZ-352 · T2-Test-Assets fuer EINEN Kanal bauen – lokal, gratis, kanaltypisch.–
testdata_fetchHZ-347 · Test-Assets fuer die Klon-/Bild-QA holen – lokal und gratis.–
thumb_dna_loopHZ-320 – Thumbnail-DNA-Generator mit KI-Abgleich-Loop (wiederverwendbar, alle Kanaele).–
thumb_dna_messDie `thumbnail_dna` eines Vorbildkanals an seinen ECHTEN Thumbnails messen ($0).–
thumb_linseThumbnail-Dimensionen des Klon-Scores: Format, Dunkelheit, Farbkraft. Read-only, $0.–
thumb_schuleDie Thumbnail-Schule eines Kanals aus SEINER DNA ableiten – statt sie aus dem Fork zu erben.–
thumb_stilHZ-349 – die Thumbnail-Textfuehrung eines Kanals umschalten: tupac_integrated | flach_overlay | hook_band | clean.–
thumb_wahlWelche Thumbnail-Variante geht hoch? Die naechste am Vorbild – nicht die erste. Read-only, $0.–
thumb_widerspruchHZ-1035 – Widersprueche zwischen dem zusammengesetzten Thumbnail-Prompt und der–
ton_linseTon-Dimensionen des Klon-Scores: Stimme, Tempo, Musik, Lautheit. Read-only, $0.–
ton_referenzDas TON-SOLL des Vorbilds – gemessen, nicht abgeleitet. Lokal, $0 Modellkosten.–
upload_ortHZ-990 – EINE Antwort auf die Frage: wo haengt das Upload-Ziel eines Kanals HEUTE?–
upload_sprache_checkupload_sprache_check.py – sind Titel, Beschreibung und Pinned-Kommentar in Produktions-Sprache? $0.–
voice_pickAutomatische Stimmen-Wahl aus dem Pool (HZ-254).–
voice_reglerHZ-698 – die Stimmen-Regler eines Kanals aus seiner DNA ableiten, ohne Netz und ohne Kosten.–
voice_samplesEchte Hoerproben zu den Stimmen-Kandidaten – im Skripttext des jeweiligen KANALS (HZ-837/HZ-697).–
wert_herleitungHZ-950 · Woher kommt der Wert, den der Regelkreis setzt? ($0, read-only ausser --setzen)–
wortlaut_linseWortlaut-Dimension des Klon-Scores: sagt unsere Folge dasselbe wie das Vorbild? Read-only, $0.–
wortziel_messenHZ-407 – Das Wortziel jedes Kanals: messen, einordnen, einfrieren.–
yt_commentscommentThreads-Leser (HZ-234, Kanal-Doktor) – echte Zuschauer-Kommentare eines Videos.–
yt_comments_sessionSession-basierter Kommentar-Leser (HZ-841) – echte Zuschauer-Kommentare OHNE OAuth.–
yt_meta_apiHZ-1012 · Metadaten fremder YouTube-Videos OHNE Proxy – ueber die YouTube Data API ($0).–
yt_quotaDas YouTube-Quota-Buch – wie viel vom Tagesbudget ist weg, und wofür? (13.08.2026)–
yt_zweitwegHZ-804 · Der ZWEITE Weg zu Vorbild-Material – ohne yt-dlp und ohne SCRAPE_PROXY.–

Pipeline-Patches 74 Skripte, 74 ohne Phase

Je ein Skript, das einen Baustein in einen n8n-Node schreibt · Ordner wf_fork/

SkriptWas es tutPhase
patch_alvaro_upload_guardHZ-290 SICHERHEIT: der alvaro_horror (Historias Reddit) Kanal laedt ueber den–
patch_apimart_zu_codexHZ-1278 · ApiMart -> codex-proxy in n8n-Workflows (Leon 17.08.2026: "kein apimart mehr,–
patch_dedup_pro_laufBild-Dedup: eine Merkliste JE AUSFUEHRUNG statt einer geteilten pro Workflow.–
patch_drive_urlHZ-969 – `drive_folder_url` in P1 gegen eine leere Antwort absichern.–
patch_einzelpoll_zeitgrenzeZeitgrenze auf Status-Abrufe, die HINTER einem Wait stehen, aber KEIN Kreis sind.–
patch_errorhandler_telegram_onerrorHZ-1049 – Der Fehlermelder darf nicht am ersten Meldeweg sterben.–
patch_filestoreHZ-287 – n8n-Workflows von Cloudflare R2 auf den lokalen Filestore umstellen.–
patch_geo_p2_harvest_sources[ABGELOEST durch wf_fork/patch_harvest_sources.py (HZ-302) – sources kommen jetzt MODULAR aus–
patch_geo_p2_harvest_stageEmpty-Earth-P2 (JUpLZKHZCSUBfgzE): Harvester als LETZTE Bildquelle in die Stock-Kette (HZ-272).–
patch_geo_p4_integrated_textGeo-P4 (Empty Earth, 7EuCgga9fwXwqVzp): Thumbnail auf integrierten Text umstellen.–
patch_harvest_sourcesHarvest-GW-`sources` MODULAR aus dem Kanal-Rezept setzen (HZ-302).–
patch_history_p2_harvest_stageHistory-P2 (LKQVM0y1jVGbZ9n9): Harvester als LETZTE Bildquelle in die Stock-Kette (HZ-291).–
patch_leere_visuals_waechterWächter gegen die zweite stille Sackgasse: 0 gültige Visuals enden als *success*.–
patch_leerer_lauf_waechterWächter gegen den stillen Leerlauf: „kein Lauf im Store" wird ein sichtbarer Abbruch.–
patch_lock_release_meldungDie Freigabe des Render-Locks wird gelesen und ein Scheitern gemeldet (HZ-796, 04.08.2026).–
patch_lock_ttlRender-Lock ohne Laufzeit reparieren (gemessen 02.08.2026).–
patch_netzfehler_riegelHZ-825 – den Netzfehler-Riegel (guard_netzfehler.py) in die LEBENDEN Straßen nachziehen.–
patch_p1_antwort_waechterWaechter hinter die drei ungeprueften Aufrufe in Fork P1_Script ($0, kein Lauf noetig).–
patch_p1_kapitelgrenzeHZ-1278 · P1 'Skript Parsen': Kapitel-Fallback an Objektgrenzen binden (17.08.2026).–
patch_p1_leere_dedupP1 stirbt still, wenn eine Dedup-Abfrage 0 Zeilen liefert.–
patch_p1_motiv_sperreHZ-1143: P1 fragt die Motiv-Sperre selbst ab, statt dass ein Mensch sie vorher aufruft.–
patch_p1_nachschlagHZ-792 – P1 schiebt ein zu kurzes Skript NACH, statt es kurz auszuliefern.–
patch_p1_script_parserFix P1 brittle script-JSON parsing (Leon test-run crash 20.06.): inline JSON.parse breaks–
patch_p1_sprache_debugHZ-1278 · P1 Sprach-Override fuer die Debug-Phase (Leon 17.08.2026).–
patch_p1_themaP1 schreibt Hooks und Titel, ohne das THEMA des Videos zu kennen.–
patch_p1_wortzaehlerHZ-792 – P1 zaehlt die Woerter seines Skripts SELBST (statt sie sich vom Modell sagen zu lassen).–
patch_p2_bildwegP2 auf den Bildweg der DNA stellen – KI-Illustration statt Stock, wenn der Kanal das ist.–
patch_p2_doodlePsych P2 (TPAUqXCPLFmRCSWC) STOCK -> DOODLE-KI-Umbau (Leon 03.07., Doodle-Pivot).–
patch_p2_judge_notzweigHZ-765: Der Not-Zweig von "Apply Judge Pick" traegt die Beat-Pflichtfelder mit ––
patch_p2_kein_leerer_submitHZ-735 – kein BEZAHLTER Auftrag mit leerem oder unveraendertem Input, live nachziehen.–
patch_p2_material_mixHZ-233 Material-Mix-Patch fuer Stock-P2s (Geo/Wisdom-Muster; Ziel = HZ-231-Klon-Fork).–
patch_p2_road_directorDie Director-Palette der P2-STRASSE aus dem Bauplan holen statt als Literal (HZ-745).–
patch_p2_road_materialHZ-542 – den Node „Skript ans Material anpassen" in die LEBENDE P2-Straße einsetzen.–
patch_p2_road_routerHZ-525 – den Prompt-Bau-Node der P2-Straße auf den Stand von build_p2_road.py bringen.–
patch_p2_road_stimmeDie Stimme der P2-STRASSE aus dem Bauplan holen statt aus dem Stamm (02.08.2026).–
patch_p2_road_videoHZ-625 – Bewegtbild ueberlebt den Quellen-Mix der lebenden P2-Strasse.–
patch_p2_store_waechterHZ-944 · Waechter hinter die zwei Store-Statusschreiber in Road P2.–
patch_p2_tts_lokalP2-Stimme von Algrow auf den lokalen XTTS-Dienst umlegen – und zurueck (HZ-1337).–
patch_p2_uebergabe_lautHZ-1031 – Die Übergabe P2→P3 kann nicht mehr still ausfallen (08.08.2026).–
patch_p2_videoPsych P2 (TPAUqXCPLFmRCSWC): STOCK-VIDEO-Beats via Pexels Video API (Leon 21.06.).–
patch_p3_hq_outHZ-1139 – dem Fork-P3 eines Kanals das fehlende `hq_out` im Render-Aufruf beibringen.–
patch_p3_render_callbackHZ-1120 – dem Fork-P3 eines Kanals das fehlende `callback_url` beibringen.–
patch_p3_render_zieleDer Fork-P3 sagt dem Renderer weder, WESSEN P4 er wecken soll, noch WOHIN das Video gehoert.–
patch_p3_triggerHZ-404 – einen Kanal auf die P3-Straße umschalten (und zurück).–
patch_p4_signlinkHZ-919 – Road P4: den EINEN echten anklickbaren Video-Link in der Telegram-Meldung–
patch_p4_tote_nodesP4: Nodes entfernen, die von keinem Trigger aus erreichbar sind (HZ-679).–
patch_p4_triggerHZ-405 – den Render-Callback eines Kanals auf die P4-Straße umschalten (und zurück).–
patch_p4_upload_paket_storeP4-Fork: das Upload-Paket in die STORE-Zeile schreiben, statt es wegzuwerfen.–
patch_p4_upload_targetHZ-814: schreibt das Upload-ZIEL explizit in jeden P4- und Publisher-Node.–
patch_p5_callbackHZ-403 – den Upload-Callback eines Kanals auf die P5-Straße umschalten (und zurück).–
patch_poll_deckelDeckel auf die Abfrage-Warteschleifen von P2 und P4 (gemessen 03.08.2026).–
patch_psych_p2_directorHZ-212 AI-Director (Leons Advisor): neuer Code-Node in Psych-P2 zwischen–
patch_psych_p2_router_scriptHZ-429 – psych P2 'Stock Query Router': das Skript kam nie am Router an.–
patch_psych_retention_abcPsych Retention-Fix A+B+C (Leon 2026-07-12).–
patch_read_via_gatewayHZ-271 – Lese-Node `Notion - Get Run` auf den eigenen Store umhaengen.–
patch_render_lock_hostnameAlle n8n-Nodes von `http://render:8080` auf `http://render-lock:8080` umstellen (HZ-1054).–
patch_renderer_umzugHZ-848 · Kanäle vom alten auf den EINEN Renderer umbiegen (history + cs -> psychology).–
patch_rente_upload_guardHZ-252 SICHERHEIT: verhindert, dass ein Rente-Testlauf versehentlich auf einen–
patch_road_p2_bildwegKaskadenende des Bildwegs an der LEBENDEN Strasse Road P2 schliessen.–
patch_road_p2_judge_jsonDen Bild-Richter der lebenden P2-Strasse dazu bringen, dass seine Antwort ankommt.–
patch_road_p2_notstufeDie Not-Stufe der Bildkaskade in P2 wieder mit einem Suchwort versorgen (Strasse + Fork).–
patch_road_p2_tonwegLeerpruefung des TONWEGS an der LEBENDEN Strasse Road P2 nachziehen.–
patch_script_fetchHZ-386 – 'R2 - Fetch Script' auf eine ableitbare URL umstellen statt auf ein DB-Feld.–
patch_stufen_kanalHZ-755 – jeder Stufen-Aufruf traegt seinen Kanal (`?channel=<key>`).–
patch_telegram_kanalHZ-436 – jede Telegram-Meldung der Straße nennt den Kanal aus dem BAUPLAN, nicht ein Literal.–
patch_testmodeHZ-815 – Trockenlauf pro Kanal an/aus schalten.–
patch_tg_wiederholungsfilterDieselbe Meldung kommt nicht jeden Tag neu (13.08.2026, Leon: "immer pro tag mindestens–
patch_topic_dedup_retryDer Themen-Generator sieht die schon benutzten Themen – und eine Wiederholung weckt–
patch_tts_speedSprechtempo-Parameter `speed` in den TTS-Node der P2-Strasse haengen – EINMALIG, parametrisch.–
patch_upload_guardUpload-Wächter für P2: ein fehlgeschlagener Filestore-Upload darf nicht weiterlaufen.–
patch_whisper_timeoutHZ-704 – Whisper-Wortzeitmarken: Node-Timeout auf die GEMESSENE Laufzeit anheben.–
patch_wortzeitmarken_guardHZ-789 / HZ-683 – den Wortzeitmarken-Riegel in ALLE lebenden P3 nachziehen.–
patch_write_via_storeHZ-271 Endschritt – Notion-WRITE-Nodes auf direkten Store-Write (op=upsert) umbauen.–
patch_zeile_fehlt_stoppDer Leerfall der Straßen-Stufen P3/P4/P5 endete als *success* – hier bekommt er einen Stopp.–