Was macht inktofilm?
Behandle eine natürliche Spracheingabe als vollständigen Ausgangspunkt. Der Benutzer muss keinen Code schreiben, keine Befehle ausführen, keine Modelle verstehen oder ein Drehbuch vorbereiten.
Benutzererfahrung
- Beginne mit der Idee des Benutzers. Wenn eine wichtige kreative Richtung fehlt, triff eine starke Standardentscheidung oder biete ein prägnantes Konzept zur Zustimmung an; stelle nur Fragen, die den Film wesentlich verändern würden.
- Führe Einrichtung, Planung, Generierung, Auswertung, Wiederholungen und Bearbeitung im Namen des Benutzers durch. Gib keine internen Befehle, Anbieter-Payloads oder Implementierungsdetails preis, es sei denn, der Benutzer fragt danach.
- Standardmäßig erstelle einen kompletten 30-Sekunden-, 16:9-Kinokurzfilm oder Trailer, wenn Dauer und Format nicht angegeben sind. Für einen Spielfilm oder eine Serie erstelle zuerst einen genehmigten kurzen Proof-of-Concept und fahre dann in Kapiteln oder Episoden mit einer gemeinsamen Charakter- und Weltbibel fort.
Private Einrichtung und bezahlte Generierung
Verwende einen vorhandenen InkToFilm-Checkout, wenn verfügbar. Erstelle andernfalls einen projektspezifischen Checkout von https://github.com/yingwang/inktofilm und eine projektspezifische Umgebung; ändere keine nicht zugehörige Systemkonfiguration. Überprüfe FFmpeg, FFprobe und den fal-Client vor der Produktion; inktofilm doctor zeigt, was fehlt.
- Suche nach
FAL_KEYin der Prozessumgebung, dann in einer projektspezifischen.env. Die CLI liest nur die Umgebung, also lade die Datei in die Shell, die sie ausführt, z. B. mitset -a; . ./.env; set +a, und gib den Wert niemals aus. - Wenn er fehlt, frage den Benutzer einmal nach seinem fal-API-Schlüssel. Wenn ein angemeldeter Browser verfügbar ist, biete an, einen API-beschränkten Schlüssel mit expliziter Genehmigung zu erstellen und zu kopieren, anstatt den Benutzer zu zwingen, ihn im Chat preiszugeben.
- Gib den Schlüssel niemals per Echo aus, protokolliere, fasse ihn in einer Eingabeaufforderung zusammen oder committe ihn. Speichere ihn nur in einer ignorierten lokalen
.envmit Modus0600und überprüfe, ob Git die Datei vor jedem Commit oder Push ignoriert. - Lies die aktuellen Anbieterpreise, schätze die Anzahl der generierten Sekunden und den Wiederholungsspielraum, nenne eine harte Ausgabenobergrenze und hole die Bestätigung sofort vor der ersten bezahlten Anfrage ein. Stoppe, bevor die genehmigte Obergrenze überschritten wird. fal stellt MiniMax H3 Max pro generierter Sekunde und Nano-Banane pro Standbild in Rechnung, daher kostet ein Fünf-Shot-30-Sekunden-Film mit Standbildern und einigen Wiederholungen normalerweise ein paar Dollar; überprüfe die Modellseiten für die aktuellen Preise, statt sie anzunehmen.
Erstelle den Film
Führe die kreative und bewertende Arbeit mit dem Agenten aus, der diesen Skill ausführt, und verwende fal MiniMax H3 Max als Standard-Videogenerator, während du jedes vom Benutzer explizit gewählte Modell respektierst.
- In Claude Code bist du der Planer und der Richter. Schreibe das Drehbuch, den Plan und die Tests selbst und arbeite dich durch die folgenden Phasen, sodass jedes Bild betrachtet wird, bevor eine Videogutschrift dafür ausgegeben wird. Um eine Einstellung zu beurteilen, mustere dieselben gleichmäßig verteilten Frames, die der Auswerter mit
inktofilm framesverwendet, überprüfe sie direkt, schreibe das überprüfte ergebnisbezogene JSON und spiele es mitinktofilm run suite.json --semantic-resultserneut ab. Bewerte nur, was in den gemusterten Frames sichtbar ist, und zeichne deinen eigenen Modellnamen in der Ergebnisherkunft auf. - In Codex erledigt die integrierte CLI-Schnittstelle dieselbe Arbeit durch die authentifizierte Codex-CLI:
inktofilm run --semantic-codexfür die Bewertung und der Standard-Planer und -Richter voninktofilm produce. - Wenn der Benutzer möchte, dass der Lauf unbeaufsichtigt endet, übergib die Bewertung an eine CLI, anstatt sie in der Schleife durchzuführen:
inktofilm run --semantic-claudeoderinktofilm produce --judge-claude, was nichts als Claude Code und einen fal-Schlüssel benötigt. Bevorzuge die Bewertung in der Schleife, wenn du bereits anwesend bist, da dies ein Modell statt zwei kostet und du bemerken kannst, wonach keine Behauptung gefragt hat. - Jedes andere Modell kann über die JSON-Stdin/Stdout-Hooks angeschlossen werden:
--semantic-command,--planner-command,--judge-commandund--video-command. - Welcher Richter auch immer läuft, er bewertet nur die Behauptungen, die der Plan geschrieben hat. Schreibe Behauptungen für die Fehler, die tatsächlich wiederkehren, einschließlich erfundener Bildschirmtexte, in den Frame eingebrannter Letterboxing, einer Kostümierung, die in die falsche Kultur abdriftet, und eines Ausdrucks, der der Szene widerspricht.
Der gestufte Workflow
inktofilm produce ist fortsetzbar: Porträts, Standbilder und Einstellungsversuche, die bereits im Ausgabeverzeichnis existieren, werden wiederverwendet, sodass derselbe Befehl nach einer Überprüfung erneut ausgeführt werden kann und nur für die fehlende Arbeit bezahlt wird.
- Schreibe
script.mdundplan.jsonselbst, danninktofilm produce script.md --plan plan.json --stills-only -o <projekt>. Dies rendert ein Porträt pro Charakter und ein Standbild pro Einstellung und stoppt. Öffne jedes Bild. Ein Porträt, das nicht der Charakter ist, ein Standbild mit dem falschen Bildausschnitt, ein Gesicht im falschen Alter, eine zusätzliche Person oder Text auf einem Requisit ist hier billig zu beheben und in einem Clip teuer: lösche die Datei, schärfe ihre Eingabeaufforderung und führe denselben Befehl erneut aus. - Drehe mit
--no-judge, wenn du in der Schleife bewerten wirst, oder mit--judge-claude, wenn der Lauf unbeaufsichtigt ist.--no-judgeführt die Medienprüfungen durch, wählt den neuesten Versuch jeder Einstellung aus, schreibtsuite.jsonfür die ausgewählten Clips und erstellt einen einfachen Schnittfinal.mp4. - Für jede Einstellung mustert
inktofilm frames shots/<einstellung>-attempt-1.mp4die Frames, die ein Richter sehen würde. Betrachte sie, schreibe die überprüfte Ergebnisdatei und spiele sie mitinktofilm run suite.json --semantic-results reviewed.json -o reviewerneut ab. - Generiere nur neu, was fehlgeschlagen ist:
--reshoot <einstellungs_id>gibt dieser Einstellung einen neuen Versuch, nummeriert nach den vorhandenen auf der Festplatte, und alles andere wird wiederverwendet. Bearbeite zuerst die Eingabeaufforderung, wenn der Fehler an der Eingabeaufforderung lag. Beurteile die neue Aufnahme gegen die alte, anstatt anzunehmen, dass sie besser ist; wenn die frühere Aufnahme gewinnt, macht--select <einstellungs_id>=<versuch>sie wieder zum Clip der Einstellung, sodass das Manifest,suite.jsonundfinal.mp4alle der Wahl des Reviewers folgen. - Erstelle den endgültigen Schnitt selbst mit FFmpeg, wenn der Film mehr als einen einfachen Schnitt benötigt: Überblendungen, Tonbrücken, Dialoge und eine lokal gesetzte Titelsequenz.
Eingabeaufforderungen schreiben, die die Generierung überleben
- Die Cast-Bibel in jeder Video-Eingabeaufforderung deckt nur die Charaktere ab, die die Einstellung auflistet, also liste sie auf. Eine Einzelcharakter-Einstellung, die den gesamten Cast beschreibt, neigt dazu, die anderen im Hintergrund zu platzieren.
- Referenzporträts werden dem Standbild-Editor in der Reihenfolge der
charactersder Einstellung übergeben. Beziehe dich in der Standbild-Eingabeaufforderung auf diese Reihenfolge, z. B. „die Frau aus dem ersten Referenzbild