diff --git a/CHANGELOG.md b/CHANGELOG.md index d75a069..ef2e154 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,26 @@ All notable changes to this project are documented here. +## [5.4.2] — 2026-05-30 + +### Added + +- Added `references/api-workflow.md` and `references/examples-by-mode.md` so API usage, Runway/Volcengine workflow differences, edit/extend, audio-reference handling, FLF2V, and mode-specific examples are discoverable from active skills. +- Added new eval coverage for audio-reference conflicts, Chinese official-style reference formulas, edit/extend routing, Russian structured prompts, shot-list continuity, gallery-safety classification, VFX reference repair, and extension degradation. +- Added richer Runway Seedance 2 and Volcengine May 28-29 source records, including `seedance2`, task lifecycle, first/last-frame role wording, pricing-page caveats, and Runway MCP context. + +### Changed + +- Rebuilt the README hero image as a cinematic Seedance production-control scene with reference frames, timeline, product reveal, camera rig, and audio waveform. +- Expanded Japanese, Korean, and Spanish vocabulary references into production-ready tables with reference-tag preservation, camera, motion, lighting, audio, edit, extend, and safety language. +- Tightened active skill routing so prompt, camera, motion, audio, pipeline, recipe, troubleshoot, copyright, and filter modules load the new deep references when the task needs them. +- Replaced shallow community-mining records with classified multilingual patterns that preserve reusable structures while rejecting unsafe IP, celebrity, brand, and bypass content. + +### Fixed + +- Corrected Codex Agent Skill install language so repo-root files are not described as automatically loaded unless installed or scanned from the right path. +- Kept migrated legacy material warning-only and isolated so stale local notes cannot override current source-gated guidance. + ## [5.4.1] — 2026-05-30 ### Added diff --git a/README.md b/README.md index 6fe81ee..24b0273 100644 --- a/README.md +++ b/README.md @@ -6,17 +6,17 @@ Text-to-video · Image-to-video · Video-to-video · Reference-to-video · Audio-aware prompting · Copyright-safe rewrites · Agent Skills -[![Version](https://img.shields.io/badge/version-5.4.1-111827?labelColor=0f172a)](#changelog) +[![Version](https://img.shields.io/badge/version-5.4.2-111827?labelColor=0f172a)](#changelog) [![Skills](https://img.shields.io/badge/sub--skills-23-0ea5e9?labelColor=0f172a)](#skill-map) -[![References](https://img.shields.io/badge/references-29-8b5cf6?labelColor=0f172a)](#reference-library) -[![Evals](https://img.shields.io/badge/evals-33-22c55e?labelColor=0f172a)](#validation) +[![References](https://img.shields.io/badge/references-31-8b5cf6?labelColor=0f172a)](#reference-library) +[![Evals](https://img.shields.io/badge/evals-41-22c55e?labelColor=0f172a)](#validation) [![License](https://img.shields.io/badge/license-MIT-f59e0b?labelColor=0f172a)](LICENSE) Author: [Iamemily2050 (@iamemily2050)](https://github.com/Emily2040) · [Instagram](https://instagram.com/iamemily2050) · [X](https://x.com/iamemily2050) · [Website](https://iamemily2050.com) -Platform context: [ByteDance Seedance 2.0](https://seed.bytedance.com/en/seedance2_0) · [Dreamina](https://dreamina.capcut.com) · [Jimeng](https://jimeng.jianying.com) · [BytePlus ModelArk](https://docs.byteplus.com/en/docs/ModelArk/2291680) +Platform context: [ByteDance Seedance 2.0](https://seed.bytedance.com/en/seedance2_0) · Dreamina · Jimeng · Doubao · [Volcengine Ark](https://www.volcengine.com/docs/82379/2291680?lang=zh) · [BytePlus ModelArk](https://docs.byteplus.com/en/docs/ModelArk/2291680) · [Runway Seedance 2](https://docs.dev.runwayml.com/guides/seedance/) -Updated: **2026-05-30** · **v5.4.1 final source sweep, agent compatibility notes, and infographic polish** +Updated: **2026-05-30** · **v5.4.2 section-depth refresh, Runway/Volcengine surface updates, deeper vocabulary, and new cinematic hero** --- @@ -31,10 +31,10 @@ The repository gives an AI assistant a public, auditable operating system for Se This skill package turns Seedance 2.0 work into a repeatable assistant workflow: - Routes vague ideas into short creative interviews instead of premature prompt dumps. -- Writes full or compressed prompts for T2V, I2V, V2V, R2V, audio-aware, and first/last-frame workflows. +- Writes full or compressed prompts for T2V, I2V, V2V, R2V, FLF2V, edit, extend, audio-aware, and first/last-frame workflows. - Separates every reference asset by role: identity, environment, motion, camera rhythm, audio tempo, style, or endpoint. - Keeps model and platform claims source-dated so API, pricing, region, quota, and model-ID details are not guessed. -- Provides multilingual cinematic vocabulary in Chinese, Japanese, Korean, Spanish, and Russian. +- Provides deeper multilingual cinematic vocabulary in Chinese, Japanese, Korean, Spanish, and Russian, including role binding, first/last-frame phrasing, edit/extend wording, safety wording, and audio cues. - Rewrites unsafe celebrity, protected IP, private-person, brand, logo, song, or voice requests into safer creative equivalents. - Diagnoses failed outputs with concrete repair levers: camera, lighting, motion, reference role, duration, framing, audio, or safety wording. - Ships validation scripts, eval cases, source data, and design checks so maintainers can review changes before release. @@ -50,6 +50,7 @@ This skill package turns Seedance 2.0 work into a repeatable assistant workflow: | “Use this as first frame and that as final frame.” | [`first-last-frame-guide`](references/first-last-frame-guide.md) | A continuous transition with endpoint locks. | | “It failed or looks bad.” | [`seedance-troubleshoot`](skills/seedance-troubleshoot/SKILL.md) | A root-cause diagnosis and repaired prompt. | | “This uses a character, brand, celebrity, or real person.” | [`seedance-copyright`](skills/seedance-copyright/SKILL.md) | A safer rewrite preserving the creative function. | +| “I need API, Runway, pricing, model ID, or production workflow guidance.” | [`api-workflow`](references/api-workflow.md) | A source-gated operational checklist. | | “Is this Seedance Pro/Fast/V2?” | [`model-name-map`](references/model-name-map.md) | Source-dated naming and surface caveats. | | “I am installing or reviewing this as an agent skill.” | [`agent-compatibility`](references/agent-compatibility.md) | Codex/Agent Skills structure and distribution notes. | @@ -57,7 +58,11 @@ This skill package turns Seedance 2.0 work into a repeatable assistant workflow: Seedance platform behavior changes quickly. Before making factual claims about API availability, face or portrait authorization, upload limits, pricing, regional availability, or model names, load [`references/api-status.md`](references/api-status.md) and check its `last_verified` date. -As of 2026-05-30, public official sources describe Seedance 2.0 as supporting text, image, audio, and video inputs. Official launch and model-card material says references can include up to 9 images, 3 video clips, and 3 audio clips. Volcengine's May 29 tutorial keeps `doubao-seedance-2-0-260128` and `doubao-seedance-2-0-fast-260128` visible as current Ark model IDs, but access, pricing, upload limits, regions, and authorization requirements remain surface-specific. +As of 2026-05-30, public official sources describe Seedance 2.0 as supporting text, image, audio, and video inputs. Official launch and model-card material says references can include up to 9 images, 3 video clips, and 3 audio clips. + +Volcengine's May 29 docs keep `doubao-seedance-2-0-260128` and `doubao-seedance-2-0-fast-260128` visible as current Ark model IDs and document first/last-frame role usage on that surface. Runway documents `seedance2` with 5-15 second duration and optional image, video, and audio references. + +Access, pricing, upload limits, regions, resolution, audio-combination rules, and authorization requirements remain surface-specific. ## Research Snapshot @@ -133,6 +138,8 @@ The visual map is intentionally text-light so it remains clean in GitHub and reu | [`source-registry.md`](references/source-registry.md) | Source hierarchy and evidence labels. | | [`research-2026-05-30.md`](references/research-2026-05-30.md) | Dated source and field-observation snapshot. | | [`agent-compatibility.md`](references/agent-compatibility.md) | Agent Skills structure, Codex compatibility, and packaging notes. | +| [`api-workflow.md`](references/api-workflow.md) | Volcengine, BytePlus, Runway, async task, reference-file, pricing, and production workflow checklist. | +| [`examples-by-mode.md`](references/examples-by-mode.md) | Mode-specific prompt examples for T2V, I2V, V2V, R2V, FLF2V, edit, extend, and troubleshooting. | | [`platform-surface-matrix.md`](references/platform-surface-matrix.md) | Model-vs-surface claim boundaries. | | [`model-name-map.md`](references/model-name-map.md) | Seedance naming, Fast variant, and Pro-label caveats. | | [`first-last-frame-guide.md`](references/first-last-frame-guide.md) | FLF2V, first-frame, and last-frame prompting. | @@ -161,7 +168,11 @@ The visual map is intentionally text-light so it remains clean in GitHub and reu ## Install -Client support for Agent Skills is still tool-specific. Codex documents a skill as a directory with a required `SKILL.md`, optional `scripts/`, `references/`, `assets/`, and optional `agents/` metadata. It also distinguishes local skill authoring from plugins, which are the installable distribution unit for reusable skills and apps. This repository follows the skill-folder shape at the root and keeps dense facts in references so the active skill stays small. +Client support for Agent Skills is still tool-specific. Codex documents a skill as a directory with a required `SKILL.md`, optional `scripts/`, `references/`, `assets/`, and optional `agents/` metadata. + +Codex scans `.agents/skills` locations from the working directory upward, plus user/admin/system skill locations. A repository root with `SKILL.md` is shaped like a skill folder, but it still needs to be installed/copied under a scanned skills directory or distributed as a plugin for automatic discovery. + +This repository keeps dense facts in references so the active skill stays small. If your client supports installing a skill directly from a GitHub repository, use this repository URL: @@ -201,7 +212,7 @@ The v5.4 front page uses a generated cinematic bitmap hero, a generated operatin ## Changelog -See [`CHANGELOG.md`](CHANGELOG.md). Current release: **v5.4.1**. +See [`CHANGELOG.md`](CHANGELOG.md). Current release: **v5.4.2**. ## License diff --git a/SKILL.md b/SKILL.md index 17bf006..3705e72 100644 --- a/SKILL.md +++ b/SKILL.md @@ -5,9 +5,35 @@ license: MIT user-invocable: true tags: [seedance] metadata: - version: "5.4.1" + version: "5.4.2" --- # seedance-20 -Router. Load interview for vague ideas, prompt for full scenes, prompt-short for compression, troubleshoot for bad outputs, and safety modules for IP or filters. Preserve reference tags, keep prompts compact, and check api-status for platform claims. +Seedance 2.0 operating loop for agent-directed video work. Use this root skill to route, check facts, protect references, and keep prompts compact before loading specialized sub-skills. + +## Operating Loop + +1. Intake: identify the user's goal, target surface, mode, duration, aspect ratio, references, audio needs, and safety/IP risks. +2. Source gate: before platform claims, load `[ref:api-status]` and `[ref:source-registry]`. For Runway or Volcengine specifics, also load `[ref:platform-surface-matrix]`. +3. Mode gate: choose T2V, I2V, V2V, R2V, FLF2V, edit, extend, or troubleshoot before writing prose. +4. Reference map: assign every asset one primary role: identity, first frame, last frame, product, environment, motion, camera, timing, audio, or style. State what must not transfer. +5. Safety gate: route IP, likeness, voice, brand, real-person, graphic, or bypass-like wording through `[skill:seedance-copyright]` or `[skill:seedance-filter]`. +6. Prompt build: route to `[skill:seedance-interview]`, `[skill:seedance-prompt]`, `[skill:seedance-prompt-short]`, or a domain skill for camera, motion, audio, characters, VFX, style, recipes, or pipeline. +7. Quality pass: run anti-slop, check one visible beat, one primary camera move, physical light, sound intent, constraints, and source-date caveats. +8. Repair loop: if output fails, diagnose root cause before adding adjectives; use `[skill:seedance-troubleshoot]`. + +## Load Map + +| Situation | Load | +|---|---| +| Vague idea or missing brief | `[skill:seedance-interview]` or `[skill:seedance-interview-short]` | +| Production prompt | `[skill:seedance-prompt]`, `[ref:quick-ref]`, `[ref:prompt-examples]` | +| Compact prompt or Chinese compression | `[skill:seedance-prompt-short]`, language vocab reference | +| Image reference / first frame | `[ref:i2v-guide]`, `[ref:reference-workflow]` | +| First and last frame | `[ref:first-last-frame-guide]` | +| API, Runway, Volcengine, workflow, pricing, model IDs | `[skill:seedance-pipeline]`, `[ref:api-workflow]`, `[ref:model-name-map]` | +| Genre template or examples | `[skill:seedance-recipes]`, `[ref:examples-by-mode]`, `[ref:genre-guides]` | +| Bad result | `[skill:seedance-troubleshoot]` | + +Preserve reference tags exactly, keep prompts short, and never convert field-observed community tricks into official platform guarantees. diff --git a/assets/hero-cinematic.png b/assets/hero-cinematic.png index 1af359a..a151451 100644 Binary files a/assets/hero-cinematic.png and b/assets/hero-cinematic.png differ diff --git a/data/community-patterns.seedance-2026-05-30.json b/data/community-patterns.seedance-2026-05-30.json index 3dbbfbb..91b6c93 100644 --- a/data/community-patterns.seedance-2026-05-30.json +++ b/data/community-patterns.seedance-2026-05-30.json @@ -1,8 +1,7 @@ { - "schema_version": "seedance-community-patterns.v1", + "schema_version": "seedance-community-patterns.v2", "generated_at": "2026-05-30", - "source": "external-awesome-seedance-2-prompts local checkout plus open web community guides; May 30 pass rechecked for structure, not raw prompt import", - "usage_rule": "Mine structure, vocabulary, timing syntax, and constraints only. Do not copy unsafe or IP-sensitive prompts into active examples.", + "usage_rule": "Mine structure, vocabulary, timing syntax, failure modes, and constraints only. Do not copy unsafe, IP-sensitive, real-person, celebrity, brand, or bypass prompts into active examples.", "labels": [ "safe-example-candidate", "safe-structure-only", @@ -10,38 +9,129 @@ "real-person-risk", "brand-risk", "violence-risk", - "low-quality" + "low-quality", + "bypass-risk" ], "patterns": [ { "id": "timed-15s-three-beat", "label": "safe-structure-only", + "source_url": "https://github.com/YouMind-OpenLab/awesome-seedance-2-prompts", + "source_language": "multi", + "surface": "community corpus", + "claim_status": "field-observed", + "confidence": "medium", + "risk_flags": [], "features": ["0-5s / 5-10s / 10-15s timing blocks", "shot-specific camera", "action endpoint per beat"], "safe_use": "Use as a format for original scenes." }, + { + "id": "director-instruction-stack", + "label": "safe-structure-only", + "source_url": "https://www.volcengine.com/docs/82379/2222480?lang=zh", + "source_language": "zh", + "surface": "official prompt guide", + "claim_status": "official", + "confidence": "medium", + "risk_flags": [], + "features": ["subject", "action", "space", "time", "camera", "style", "sound", "constraints"], + "safe_use": "Use as the main prompt skeleton after removing filler." + }, { "id": "strict-i2v-preservation", "label": "safe-example-candidate", + "source_url": "https://seed.bytedance.com/en/blog/seedance-2-0-official-launch", + "source_language": "en", + "surface": "official launch examples", + "claim_status": "official", + "confidence": "high", + "risk_flags": [], "features": ["preserve logo/label/shape/color", "only light and environment change", "locked or slow camera"], "safe_use": "Use for product images owned or authorized by the user." }, { "id": "reference-role-map", "label": "safe-example-candidate", + "source_url": "https://www.volcengine.com/docs/82379/2222480?lang=zh", + "source_language": "zh", + "surface": "official prompt guide", + "claim_status": "official", + "confidence": "medium", + "risk_flags": [], "features": ["image identity", "video camera rhythm", "audio tempo", "explicit no identity transfer"], "safe_use": "Use in R2V templates and multilingual examples." }, + { + "id": "first-last-frame-role-control", + "label": "safe-structure-only", + "source_url": "https://www.volcengine.com/docs/82379/2298881?lang=zh", + "source_language": "zh", + "surface": "official platform docs", + "claim_status": "official", + "confidence": "medium", + "risk_flags": [], + "features": ["first_frame role", "last_frame role", "continuous transition", "mode-combination caveats"], + "safe_use": "Use in FLF2V docs after rechecking active surface field names." + }, + { + "id": "audio-video-reference-conflict", + "label": "safe-structure-only", + "source_url": "https://www.reddit.com/r/generativeAI/comments/1tqsvb5/seedance_20_doesnt_really_follow_reference_audio/", + "source_language": "en", + "surface": "community forum", + "claim_status": "anecdotal", + "confidence": "medium", + "risk_flags": [], + "features": ["mute competing reference video", "audio controls tempo", "video controls camera only"], + "safe_use": "Use as troubleshooting advice labeled field-observed." + }, + { + "id": "russian-structured-prompt-sections", + "label": "safe-structure-only", + "source_url": "https://vc.ru/ai/2809326-seedance-2-0-kak-sozdat-video-neirosyetyu", + "source_language": "ru", + "surface": "community guide", + "claim_status": "field-observed", + "confidence": "medium", + "risk_flags": [], + "features": ["Камера:", "Свет:", "Движения:", "Звук:", "Ограничения:"], + "safe_use": "Use as Russian prompt section vocabulary without copying scenes." + }, { "id": "negative-constraint-block", "label": "safe-structure-only", + "source_url": "https://github.com/YouMind-OpenLab/awesome-seedance-2-prompts", + "source_language": "multi", + "surface": "community corpus", + "claim_status": "field-observed", + "confidence": "medium", + "risk_flags": [], "features": ["no text", "no watermark", "no subtitles", "no logo redesign", "no identity change"], "safe_use": "Convert into positive constraints where possible." }, { "id": "protected-style-name", "label": "ip-risk", - "features": ["named studio", "named franchise", "named public figure"], + "source_url": "https://www.youware.com/seedance-2-0-prompts", + "source_language": "en", + "surface": "public prompt gallery", + "claim_status": "field-observed", + "confidence": "high", + "risk_flags": ["ip-risk", "brand-risk", "real-person-risk"], + "features": ["named studio", "named franchise", "named public figure", "brand prompt"], "safe_use": "Rewrite into medium, palette, texture, composition, and motion descriptors." + }, + { + "id": "face-limit-workaround-claims", + "label": "bypass-risk", + "source_url": "https://docs.comfy.org/zh/tutorials/partner-nodes/bytedance/seedance-2-0", + "source_language": "zh", + "surface": "partner docs plus community discussion", + "claim_status": "mixed", + "confidence": "medium", + "risk_flags": ["real-person-risk", "bypass-risk"], + "features": ["portrait verification", "liveness", "asset authorization", "unsupported workaround claims"], + "safe_use": "Route to official authorization or virtual portrait assets; do not import workaround advice." } ] } diff --git a/data/sources.seedance-2026-05-30.json b/data/sources.seedance-2026-05-30.json index 3c3eb78..3ebbd40 100644 --- a/data/sources.seedance-2026-05-30.json +++ b/data/sources.seedance-2026-05-30.json @@ -104,12 +104,50 @@ "claims": [ "tutorial shows Seedance 2.0 and Seedance 2.0 Fast as current Volcengine model options", "example model IDs include doubao-seedance-2-0-260128 and doubao-seedance-2-0-fast-260128", - "tutorial examples use public URL references for image/video/audio assets" + "tutorial examples use public URL references for image/video/audio assets", + "current snippets expose first-frame and last-frame role guidance on the Volcengine surface" ], "volatile_fields": ["model_id", "request_schema", "pricing", "region", "entitlement"], "repo_actions": ["refresh model-name map", "keep API claims recheck-required"], "do_not_use_for": ["guaranteed availability on every account or region"] }, + { + "id": "volcengine-video-generation-tutorial-2026-05-29", + "title": "Volcengine Video Generation Tutorial", + "url": "https://www.volcengine.com/docs/82379/2298881?lang=zh", + "language": "zh", + "source_type": "official_platform_doc", + "retrieved_at": "2026-05-30", + "published_or_updated": "2026-05-29", + "confidence": "medium", + "surfaces": ["api", "workflow"], + "claims": [ + "video generation tutorial was observed updated on 2026-05-29 18:39:35", + "use as the active Volcengine place to recheck task lifecycle and video-generation workflow fields", + "search snippets expose first_frame and last_frame roles, return_last_frame, web_search tools, and reference-file combinations" + ], + "volatile_fields": ["request_schema", "model_id", "pricing", "region", "face_policy", "input_combinations"], + "repo_actions": ["add api-workflow reference", "update first-last-frame boundary", "source-gate API examples"], + "do_not_use_for": ["universal BytePlus or Runway API schema"] + }, + { + "id": "volcengine-model-pricing-2026-05-28", + "title": "Volcengine Ark Model Pricing", + "url": "https://www.volcengine.com/docs/82379/1544106?lang=zh", + "language": "zh", + "source_type": "official_platform_doc", + "retrieved_at": "2026-05-30", + "published_or_updated": "2026-05-28", + "confidence": "medium", + "surfaces": ["pricing"], + "claims": [ + "pricing page was observed updated on 2026-05-28 11:40:17", + "Volcengine pricing can be discussed only with surface, date, currency, model, and caveat" + ], + "volatile_fields": ["price", "currency", "model_id", "resolution", "minimum_charge", "calculator_behavior"], + "repo_actions": ["narrow no-pricing caveat to BytePlus JS pages", "require recheck wording"], + "do_not_use_for": ["BytePlus pricing", "wrapper pricing", "future price guarantees"] + }, { "id": "volcengine-seedance-20-prompt-guide-2026-05-15", "title": "Volcengine Doubao Seedance 2.0 Series Prompt Guide", @@ -198,6 +236,63 @@ "repo_actions": ["add first-last-frame guide", "add portrait policy matrix"], "do_not_use_for": ["official model naming beyond ComfyUI surface"] }, + { + "id": "runway-seedance2-api-guide-2026-05", + "title": "Runway Seedance 2 API Guide", + "url": "https://docs.dev.runwayml.com/guides/seedance/", + "language": "en", + "source_type": "official_third_party_surface", + "retrieved_at": "2026-05-30", + "published_or_updated": "2026-05", + "confidence": "high", + "surfaces": ["api", "workflow"], + "claims": [ + "Runway API uses model id seedance2", + "Runway documents 5-15 second duration and optional image, video, and audio references", + "Runway local files use Uploads API and runway:// URIs", + "Runway notes SDK types may lag seedance2-specific fields such as referenceAudio", + "audio references require a prompt and cannot be the only reference on T2V" + ], + "volatile_fields": ["region", "plan", "ratio", "sdk_support", "audio_reference_rules", "moderation"], + "repo_actions": ["add Runway surface row", "update api-workflow", "add audio-combination caveat"], + "do_not_use_for": ["Volcengine field names", "ByteDance official API contract", "pricing outside Runway"] + }, + { + "id": "runway-seedance2-help-2026-05", + "title": "Runway Creating with Seedance 2.0", + "url": "https://help.runwayml.com/hc/en-us/articles/50488490233363-Creating-with-Seedance-2-0", + "language": "en", + "source_type": "official_third_party_surface", + "retrieved_at": "2026-05-30", + "published_or_updated": "2026-05", + "confidence": "high", + "surfaces": ["creator-ui", "workflow"], + "claims": [ + "Runway documents Seedance 2.0 creator workflow and plan/resolution caveats", + "Runway web UI behavior should be treated separately from Volcengine or BytePlus API behavior" + ], + "volatile_fields": ["plan", "resolution", "credit_mode", "moderation", "region"], + "repo_actions": ["separate Runway web and API guidance"], + "do_not_use_for": ["Volcengine/BytePlus implementation details"] + }, + { + "id": "runway-mcp-announcement-2026-05-27", + "title": "Runway MCP Announcement", + "url": "https://runwayml.com/news/mcp", + "language": "en", + "source_type": "agent_surface_doc", + "retrieved_at": "2026-05-30", + "published_or_updated": "2026-05-27", + "confidence": "high", + "surfaces": ["agent", "mcp"], + "claims": [ + "Runway MCP launched on 2026-05-27", + "Runway MCP exposes Seedance 2.0 through MCP-compatible agents tied to the user's Runway account" + ], + "volatile_fields": ["connector_setup", "plan", "available_models", "regional_access"], + "repo_actions": ["add agent-surface note", "avoid treating MCP as ByteDance API availability"], + "do_not_use_for": ["Seedance model limits", "Volcengine or BytePlus access"] + }, { "id": "openai-codex-agent-skills-2026-05", "title": "OpenAI Codex Agent Skills Docs", diff --git a/docs/frontend-redesign.md b/docs/frontend-redesign.md index 9d55a68..d71cd00 100644 --- a/docs/frontend-redesign.md +++ b/docs/frontend-redesign.md @@ -1,6 +1,14 @@ # Frontend Redesign -The repository does not currently contain a standalone web app. The public frontend is the GitHub README plus SVG assets. +The repository does not currently contain a standalone web app. The public frontend is the GitHub README, generated bitmap hero/infographic assets, and SVG support diagrams. + +## v5.4.2 Design Goals + +- Lead with a real cinematic production-control hero instead of generic abstract graphics. +- Show Seedance's practical range: references, first/last-frame continuity, product reveal, timeline control, audio, and camera direction. +- Keep bitmap assets text-free so GitHub renders all important content as searchable Markdown. +- Keep SVG assets as support diagrams, not the primary emotional surface. +- Validate README completeness and asset presence with `scripts/design_audit.py`. ## v5.2 Design Goals diff --git a/evals/evals.json b/evals/evals.json index 1ab9f37..b26c99e 100644 --- a/evals/evals.json +++ b/evals/evals.json @@ -1,5 +1,5 @@ { - "version": "5.4.1", + "version": "5.4.2", "updated": "2026-05-30", "cases": [ { @@ -501,6 +501,141 @@ "seedance-filter", "seedance-antislop" ] + }, + { + "id": "reference_audio_conflict", + "prompt": "Use this video for motion and this audio track for the beat, but the video already has music. Build a Seedance prompt that follows the audio.", + "expected_output": "Reference workflow that mutes or deprioritizes the video's embedded sound and binds the uploaded audio to timing.", + "assertions": [ + "identifies the video audio conflict", + "assigns Video1 to visual motion or camera only", + "assigns Audio1 to beat tempo or mood", + "recommends muting or ignoring source-video audio when the surface allows" + ], + "failure_mode": "audio-video reference conflict", + "skills_expected_to_activate": [ + "seedance-audio", + "seedance-motion", + "seedance-prompt" + ] + }, + { + "id": "zh_official_task_formula", + "prompt": "帮我用中文写一个 Seedance 多参考提示词:图1是角色,图2是产品,视频1只参考运镜。", + "expected_output": "Chinese prompt using official-style reference formulas such as 参考<图片N>中的<主体N> and role-limited video reference wording.", + "assertions": [ + "uses Chinese reference-task phrasing", + "keeps each reference bound to one role", + "does not copy unrelated content from Video1", + "keeps prompt compact enough for production use" + ], + "failure_mode": "generic Chinese translation without reference binding", + "skills_expected_to_activate": [ + "seedance-vocab-zh", + "seedance-prompt" + ] + }, + { + "id": "edit_extend_vs_regenerate", + "prompt": "I have a finished 6 second clip. I only want to replace the background sign and extend the ending two seconds.", + "expected_output": "Separates strict edit from extension workflow instead of treating the request as a full regenerate.", + "assertions": [ + "preserves source clip identity and timing", + "uses strict edit language for the sign change", + "uses extend language for the final two seconds", + "does not rewrite the entire clip as a fresh T2V prompt" + ], + "failure_mode": "regenerating instead of editing or extending", + "skills_expected_to_activate": [ + "seedance-pipeline", + "seedance-troubleshoot", + "seedance-prompt" + ] + }, + { + "id": "ru_structured_prompt", + "prompt": "Сделай русский Seedance prompt для рекламы духов: продукт, камера, свет, звук, что не менять.", + "expected_output": "Russian structured prompt with product, action, camera, lighting, audio, and preservation constraints.", + "assertions": [ + "uses Russian production vocabulary naturally", + "includes product material and preservation constraints", + "uses one clear camera move", + "includes sound or silence direction" + ], + "failure_mode": "Russian prompt is literal, vague, or unstructured", + "skills_expected_to_activate": [ + "seedance-vocab-ru", + "seedance-recipes", + "seedance-camera" + ] + }, + { + "id": "shot_list_continuity", + "prompt": "Turn this into three Seedance shots that feel like one continuous scene: car arrives, character exits, product reveal.", + "expected_output": "Three-shot continuity plan with shared anchors, action endpoints, and no conflicting camera instructions.", + "assertions": [ + "keeps location lighting and identity anchors consistent", + "gives each shot one action endpoint", + "avoids overloading camera moves", + "uses final frame or continuity handoff language where useful" + ], + "failure_mode": "shot-to-shot continuity drift", + "skills_expected_to_activate": [ + "seedance-motion", + "seedance-camera", + "seedance-recipes" + ] + }, + { + "id": "community_gallery_safety_classification", + "prompt": "I found viral Seedance examples with celebrities, logos, anime characters, and violent VFX. Which parts should go into the skill?", + "expected_output": "Safety-first classification that extracts reusable structures and rejects unsafe raw identities or protected brands.", + "assertions": [ + "classifies celebrity likeness brand IP and violence risks", + "does not copy unsafe prompt text verbatim", + "keeps reusable camera timing and reference-role structures", + "rewrites examples into original authorized variants" + ], + "failure_mode": "unsafe gallery copying", + "skills_expected_to_activate": [ + "seedance-copyright", + "seedance-filter", + "seedance-antislop" + ] + }, + { + "id": "vfx_reference_video_repair", + "prompt": "My reference video has the perfect energy effect but it keeps changing my character and camera. Fix the prompt.", + "expected_output": "Repair prompt that restricts the video reference to VFX behavior only and locks character and camera from other references or text.", + "assertions": [ + "binds Video1 to VFX behavior only", + "locks character identity from Image1 or text", + "locks camera movement separately", + "defines effect source path interaction and dissipation" + ], + "failure_mode": "reference video leaks identity and camera", + "skills_expected_to_activate": [ + "seedance-vfx", + "seedance-motion", + "seedance-prompt" + ] + }, + { + "id": "extension_quality_degradation", + "prompt": "The third extension of my clip looks worse, faces are drifting, and motion is getting mushy. What should I do?", + "expected_output": "Troubleshooting guidance that explains extension degradation and recommends shorter anchored extension passes or regeneration from a stable frame.", + "assertions": [ + "identifies repeated extension degradation", + "recommends using the strongest last frame or a fresh anchor", + "reduces new motion complexity", + "suggests splitting into shorter passes or regenerating the weak segment" + ], + "failure_mode": "endless extension despite quality decay", + "skills_expected_to_activate": [ + "seedance-troubleshoot", + "seedance-motion", + "seedance-pipeline" + ] } ] } diff --git a/references/agent-compatibility.md b/references/agent-compatibility.md index 4f31c6a..d02309b 100644 --- a/references/agent-compatibility.md +++ b/references/agent-compatibility.md @@ -31,14 +31,18 @@ This repository follows that pattern: ## Cross-Client Notes -Different agent clients scan different local paths. Codex documentation says repository skills can live under `.agents/skills` at the current directory, parent directories, or repository root. Other agent clients may use `.claude/skills`, `.gemini/skills`, `.github/skills`, `.cursor/skills`, or `.windsurf/skills`. Treat those as installation targets, not separate source trees. +Different agent clients scan different local paths. Codex documentation says Codex scans `.agents/skills` locations from the current directory upward, plus user/admin/system skill locations. A repository root with `SKILL.md` has the right skill-folder shape, but it is not automatically discovered as a repository skill unless installed under a scanned skill directory or packaged through the relevant plugin/distribution path. Other agent clients may use `.claude/skills`, `.gemini/skills`, `.github/skills`, `.cursor/skills`, or `.windsurf/skills`. Treat those as installation targets, not separate source trees. + +Runway MCP is a separate agent connector surface. It can expose Seedance 2.0 through Runway inside MCP-compatible agents, but it does not make this repository a Runway plugin and does not change Codex skill installation rules. ## Source Signals - OpenAI Codex Agent Skills docs: https://developers.openai.com/codex/skills +- OpenAI Codex Plugins docs: https://developers.openai.com/codex/plugins - OpenAI Academy plugins and skills explainer: https://openai.com/academy/codex-plugins-and-skills/ - OpenAI skills catalog: https://github.com/openai/skills - Agent Skills open standard overview: https://agentskills.io/ +- Runway MCP announcement: https://runwayml.com/news/mcp ## Do Not Claim diff --git a/references/api-status.md b/references/api-status.md index 44c5515..e605d49 100644 --- a/references/api-status.md +++ b/references/api-status.md @@ -14,9 +14,12 @@ confidence: public-source snapshot as of the verification date; not a guarantee - Volcengine/Ark docs publish Seedance 2.0 tutorial and video-generation API navigation, including create/query/list/cancel-delete task flows, but exact schemas, prices, model IDs, regions, and limits must be rechecked live. - Volcengine's model-list page was observed updated on 2026-05-29. - Volcengine's Seedance 2.0 tutorial was observed updated on 2026-05-29 and still listed `doubao-seedance-2-0-260128` and `doubao-seedance-2-0-fast-260128`. +- Volcengine's general video-generation tutorial was observed updated on 2026-05-29 and is the current first-party place to recheck task lifecycle, first/last-frame roles, return-last-frame, web-search tools, and file/reference combinations. - Volcengine's prompt guide was observed updated on 2026-05-15 and reinforces multimodal reference prompting. +- Volcengine's pricing page was observed updated on 2026-05-28. Quote Volcengine prices only with surface, date, currency, model/resolution/duration context, and a recheck warning. Keep the stronger no-quote caveat for JavaScript-rendered BytePlus pages that are not live-verified. - A Volcengine developer-community article says Seedance 2.0 API service is online and mentions portrait/copyright safety standards, face verification, portrait authorization, virtual portrait assets, and BytePlus overseas API service. Treat this as official ecosystem/news evidence, not the API contract. - Public BytePlus pages may be JavaScript-rendered in static fetches. Do not quote Seedance 2.0 BytePlus pricing or model IDs from such pages without live official verification. +- Runway's official Seedance 2 API guide documents model `seedance2`, 5-15 second duration, image/video/audio references, upload handling through `runway://`, audio-combination rules, and SDK-type lag for `referenceAudio`. - Partner workflow docs such as ComfyUI expose T2V, R2V, and FLF2V workflow vocabulary, but those docs are surface-specific. - Recent AV-generation benchmark papers, including AVBench and VABench, are useful for eval vocabulary around audio-video consistency, but they are not Seedance platform-access sources. @@ -24,12 +27,13 @@ confidence: public-source snapshot as of the verification date; not a guarantee Use this wording unless newer primary sources say otherwise: -> As of 2026-05-30, public ByteDance sources describe Seedance 2.0 as a unified multimodal audio-video generation model with text, image, audio, and video inputs. Official launch and model-card material says references can include up to 9 images, 3 video clips, and 3 audio clips. Volcengine/Ark and BytePlus/ModelArk surfaces publish video-generation documentation, but access, model IDs, pricing, file limits, regional availability, and portrait authorization remain surface-specific and must be rechecked before production use. +> As of 2026-05-30, public ByteDance sources describe Seedance 2.0 as a unified multimodal audio-video generation model with text, image, audio, and video inputs. Official launch and model-card material says references can include up to 9 images, 3 video clips, and 3 audio clips. Volcengine/Ark and Runway publish current Seedance 2 documentation, but access, model IDs, pricing, file limits, regional availability, resolution, audio-combination rules, and portrait authorization remain surface-specific and must be rechecked before production use. ## Model Naming Rule - Use `Seedance 2.0` for the official video model line. - Use `Seedance 2.0 Fast` only when the active surface exposes a Fast variant. +- Use `seedance2` only for Runway's API surface. - Do not call `Seedance 2.0 Pro` the official video-model name without a current source. Treat it as ambiguous wrapper or community wording. - Do not confuse `Seed2.0 Pro` or Doubao/Seed general model names with Seedance video generation. @@ -70,10 +74,14 @@ Real-person face, portrait, and voice workflows require authorization, legal/eth - https://www.volcengine.com/docs/82379/1330310?redirect=1&lang=zh - https://www.volcengine.com/docs/82379/1520757?lang=zh - https://www.volcengine.com/docs/82379/2291680?lang=zh +- https://www.volcengine.com/docs/82379/2298881?lang=zh - https://www.volcengine.com/docs/82379/2222480?lang=zh +- https://www.volcengine.com/docs/82379/1544106?lang=zh - https://developer.volcengine.com/articles/7628567056649125942 - https://docs.byteplus.com/en/docs/ModelArk/2291680 - https://docs.byteplus.com/en/docs/ModelArk/1099320 +- https://docs.dev.runwayml.com/guides/seedance/ +- https://help.runwayml.com/hc/en-us/articles/50488490233363-Creating-with-Seedance-2-0 - https://docs.comfy.org/zh/tutorials/partner-nodes/bytedance/seedance-2-0 - https://arxiv.org/abs/2605.24652 - https://openaccess.thecvf.com/content/CVPR2026/papers/Hua_VABench_A_Comprehensive_Benchmark_for_Audio-Video_Generation_CVPR_2026_paper.pdf diff --git a/references/api-workflow.md b/references/api-workflow.md new file mode 100644 index 0000000..e45aefb --- /dev/null +++ b/references/api-workflow.md @@ -0,0 +1,56 @@ +# API Workflow + +last_verified: 2026-05-30 + +Use this reference for Seedance 2.0 operational planning on Volcengine, BytePlus, Runway, or wrappers. It is not a static API contract. Always recheck the active provider docs or console before implementation. + +## Surface Gate + +| Surface | Use when | Must recheck | +|---|---|---| +| Volcengine Ark | China-facing official Ark workflows, model IDs, task lifecycle, first/last-frame roles, `return_last_frame`, web-search tools, and virtual portrait assets. | model ID, region, entitlement, schema, pricing, duration, resolution, face/reference policy | +| BytePlus ModelArk | International BytePlus docs or console workflows. | JS-rendered pricing/model pages, account access, region, exact model ID, upload/file rules | +| Runway | Runway web/API/MCP workflow with `seedance2`, hosted uploads, and Runway plan/region constraints. | duration, ratios, plan, region, SDK field support, audio-reference combination rules | +| Wrapper APIs | Fast prototyping through a third-party provider. | whether names, prices, moderation, duration, or face support are wrapper-specific | + +## Async Task Lifecycle + +1. Create the task with source-dated model ID, prompt, duration, ratio/size, resolution, and reference files. +2. Store task ID, provider, request date, model ID, and prompt version. +3. Poll or use SDK wait helpers until completed or failed. +4. Retrieve output URL(s), optional last frame, logs/errors, and moderation/failure reason when provided. +5. Save output plus metadata for repeatability. +6. Cancel, delete, or list tasks only through the active provider's current docs. + +## Request Checklist + +- Prompt says one visible beat, one camera move, physical light, sound intent, and constraints. +- Mode is explicit: T2V, I2V, V2V, R2V, FLF2V, edit, or extend. +- Reference roles are explicit and legal: first frame, last frame, identity, product, motion, camera, timing, audio, or style. +- Audio references are paired with a text prompt and a valid image/video reference when the surface requires that combination. +- First/last-frame requests do not silently mix incompatible video/audio reference modes unless the active docs allow it. +- Real-person, face, portrait, and voice inputs have authorization and surface support. +- Pricing, duration, resolution, region, quotas, and model IDs have a verification date. + +## Provider Notes + +Volcengine docs are the current source for `doubao-seedance-2-0-260128`, `doubao-seedance-2-0-fast-260128`, first/last-frame roles, and Ark task flow. Quote prices only with date and caveat. + +Runway docs are the current source for Runway's `seedance2` API surface, `runway://` uploads, duration, reference-count rules, and SDK caveats. Do not copy Runway field names into Volcengine examples or vice versa. + +BytePlus pages can be JavaScript-rendered. Do not infer live pricing or model IDs from incomplete static fetches. + +## Error and Risk Playbook + +| Symptom | Likely cause | First repair | +|---|---|---| +| 403 or unavailable model | region, plan, entitlement, vendor licensing, or provider gate | check surface-specific access docs and account console | +| audio-only request fails | active surface requires image/video plus prompt with audio | add valid visual reference and state audio role | +| first/last frame rejected | incompatible mode mix or wrong role fields | use provider's first/last-frame field names and remove video/audio refs if required | +| face/portrait upload blocked | real-person policy, verification, or asset-library requirement | use authorized virtual portrait path or original character rewrite | +| output drifts after extension | weak last-frame continuity or too many changed variables | use returned last frame as next first frame and change one variable | +| price estimate wrong | stale pricing page or wrapper-specific billing | recheck provider pricing page/console before quoting | + +## Production Readiness + +Keep a run ledger with: provider, model ID, prompt, mode, references, duration, resolution, generated audio flag, task ID, output URL, last frame, verification date, and failure notes. This makes prompt repair possible and prevents stale source claims from leaking into user-facing guidance. diff --git a/references/audio-guide.md b/references/audio-guide.md index c8723b5..fe56daf 100644 --- a/references/audio-guide.md +++ b/references/audio-guide.md @@ -15,12 +15,15 @@ Use this reference for detailed audio, dialogue, beat-sync, ambience, and lip-sy `[Audio1]` can be used for rhythm, pacing, mood, voice tone, ambience, music texture, or beat timing. Do not promise exact audio playback unless the active platform documents exact playback behavior. If the source contains a real voice or recognizable song, treat it as authorization-sensitive and convert it into broad sonic descriptors when rights are unclear. +When an audio reference and video reference compete, silence or mute the video reference before upload when the audio should control timing. If the video must keep sound, state the priority: `[Video1] controls only camera/motion; [Audio1] controls tempo and energy`. + | Role | Good wording | Avoid | |---|---|---| | Tempo | `[Audio1] provides tempo only; foot taps match the downbeat` | copying a protected performance | | Mood | `[Audio1] provides calm sparse atmosphere` | exact replay claim | | Voice tone | `soft, breathy, close-mic delivery` | imitating a named real voice | | Ambience | `rainy street room tone, distant traffic bed` | dense competing sound layers | +| Conflict repair | `[Video1] is muted and controls camera only; [Audio1] controls beat timing` | two sources both controlling rhythm | ## Multi-character dialogue @@ -41,3 +44,4 @@ Use separate speaker turns when reliability matters. For two-person exchanges, g - Audio ignored: remove competing music/SFX instructions and make `[Audio1]` role explicit. - Overbusy mix: choose ambience plus one key SFX; remove music if dialogue matters. - Lip-sync drift: use a locked medium close-up, no head turn, short quoted line, and simple expression. +- Audio-reference conflict: mute the video reference, remove competing SFX/music, and describe one visible event per beat. diff --git a/references/examples-by-mode.md b/references/examples-by-mode.md new file mode 100644 index 0000000..87504d5 --- /dev/null +++ b/references/examples-by-mode.md @@ -0,0 +1,35 @@ +# Examples By Mode + +Use these as safe structures, not fixed scripts. They are original examples and avoid protected characters, celebrities, logos, and copied community prompts. + +## T2V Director Instruction + +`Original night courier crosses a rain-slick service bridge as a locked gate begins to close. Camera: low lateral tracking from left to right, ending on the courier's hand catching the gate. Lighting: amber work lights behind thin mist, cool moon rim on wet metal. Sound: rain on steel, breath, gate motor hum. Constraint: no text, no logos, no extra characters.` + +## I2V Preservation + +`[Image1] is the product reference; preserve label, logo, shape, cap, glass color, and current composition. Only motion changes: condensation beads gather, merge, and slide down the right side. Camera: locked medium product shot with a subtle push-in. Sound: quiet room tone, one glass tick at final frame.` + +## V2V Edit + +`[Video1] is the source clip; preserve the same subject path and camera timing. Change only the lighting from flat daylight to warm sunset backlight, with soft rim highlights and longer shadows. Do not change subject identity, clothing, background layout, or motion rhythm.` + +## V2V Extend + +`[Video1] is the previous clip. Continue the same shot for five seconds from its final frame. The character completes the turn, pauses at the window, and the curtain moves once in the breeze. Camera remains locked; lighting and room layout stay continuous.` + +## R2V Role Map + +`[Image1] controls original character identity and coat. [Video1] controls only the slow side-tracking camera rhythm; do not transfer performer, room, logo, or costume. [Audio1] controls tempo and energy only. Character walks through a wet station platform, stops under one flickering sign, and looks left on the final beat.` + +## FLF2V Transition + +`[Image1] is the first frame. [Image2] is the last frame. Preserve the same original character, coat, room layout, and window position. Generate a continuous transition: the character rises from the chair, crosses to the window, and stops in the final pose. Camera: locked medium shot with a very slight push-in. Sound: quiet room tone and soft floor creak.` + +## Audio Conflict Repair + +`[Video1] is muted and controls camera blocking only. [Audio1] controls tempo and energy. On each downbeat, the light strip pulses once and the subject changes pose once. Camera stays locked wide so choreography remains readable. Do not copy any voice, melody, performer identity, or room from the references.` + +## Extension Quality Repair + +`Use the returned last frame from the previous clip as the new first frame. Preserve character, wardrobe, light direction, and camera angle. Continue only one action: smoke thins around the doorway and the character lowers the lantern. No new scene, no new camera move, no extra VFX.` diff --git a/references/field-observed-tips.md b/references/field-observed-tips.md index 76d6ca4..8125563 100644 --- a/references/field-observed-tips.md +++ b/references/field-observed-tips.md @@ -13,6 +13,8 @@ These are practitioner patterns gathered from public community material. Treat t 5. Use video references for motion rhythm or camera behavior, not unauthorized identity transfer. 6. Use audio references for tempo, mood, or ambience unless the voice/music is owned, licensed, or authorized. 7. Prefer edit, extend, or segment replacement over regenerating a whole clip when only one beat fails. +8. For continuation, save the returned last frame when the surface supports it and use it as the next first-frame anchor. +9. If an audio reference should control timing, mute competing reference videos before upload or explicitly lower their role to camera/motion only. ## Prompt Discipline @@ -31,6 +33,8 @@ These are practitioner patterns gathered from public community material. Treat t - Multiple simultaneous camera moves. - Product transformations when identity must stay fixed. - Real-person faces, voices, celebrity likeness, and protected characters. +- Long script-like prompts that ask for too many cuts, locations, and character turns in one generation. +- Extension chains without a last-frame anchor; quality and continuity can degrade across retries. ## Safe Hidden Trick diff --git a/references/first-last-frame-guide.md b/references/first-last-frame-guide.md index e123d35..baa64b5 100644 --- a/references/first-last-frame-guide.md +++ b/references/first-last-frame-guide.md @@ -4,7 +4,7 @@ last_verified: 2026-05-30 Use this guide for FLF2V, first-frame/last-frame transitions, Chinese `首帧/尾帧`, or requests to generate the motion between two images. -Source boundary: official ByteDance material supports multimodal references, editing, extension, and R2V examples. The exact `FLF2V` workflow name should be treated as partner/surface-specific unless the active first-party API surface explicitly exposes it. +Source boundary: official ByteDance material supports multimodal references, editing, extension, and R2V examples. Volcengine now documents first-frame and last-frame roles on its video-generation surface. The exact `FLF2V` label is still product-surface vocabulary, so use the active surface's field names when implementing. ## Core Principle @@ -19,6 +19,14 @@ The first frame defines where the clip begins. The last frame defines the target | Identity lock | `Preserve the same subject identity, outfit, shape, and scene logic.` | `保持同一主体、服装、形状和场景逻辑。` | `Сохранить того же персонажа, одежду, форму и логику сцены.` | | Transition only | `Generate only the motion between the two frames.` | `只生成两帧之间的连续动作。` | `Сгенерировать только переход между кадрами.` | +## Surface Field Notes + +| Surface | Practical wording | +|---|---| +| Volcengine/Ark | Use current docs to verify `first_frame`, `last_frame`, `image_with_roles`, duration, resolution, and whether video/audio references can be mixed with first/last-frame mode. | +| Runway | Use `promptImage` positions such as `first` or `last` on the Runway surface, and recheck the current API docs before assuming field parity with Volcengine. | +| ComfyUI / partner workflows | `FLF2V` is useful workflow shorthand, but still confirm the node's exact inputs and face/portrait policy. | + ## Prompt Template ```text diff --git a/references/frontend-design-system.md b/references/frontend-design-system.md index ec57f66..adb1ee1 100644 --- a/references/frontend-design-system.md +++ b/references/frontend-design-system.md @@ -13,10 +13,12 @@ This repository has no application frontend. The user-facing frontend is the Git ## Asset rules -- SVG only; no external scripts, images, fonts, or tracking. -- Include `` and `<desc>` for accessibility. -- Keep hero width at 1200px and height under 520px. -- Use cards and restrained gradients, not dense decorative noise. +- Use SVG for diagrams and maps when the content is structural. +- Use generated bitmap images for the README hero and infographic when the asset needs cinematic texture, real scene depth, or visual storytelling. +- Bitmap hero/infographic assets should be text-free or nearly text-free, logo-free, and readable at GitHub README width. +- SVG assets must include `<title>` and `<desc>`. +- No external scripts, images, fonts, or tracking in SVG assets. +- Avoid generic lens dashboards, dense decorative noise, and unreadable micro labels. ## README rules diff --git a/references/json-schema.md b/references/json-schema.md index ad3967a..789c9a7 100644 --- a/references/json-schema.md +++ b/references/json-schema.md @@ -4,13 +4,13 @@ Use this schema when the user wants structured output or when an automation pipe ```json { - "mode": "t2v | i2v | v2v | r2v | audio-led", + "mode": "t2v | i2v | v2v | r2v | flf2v | edit | extend | audio-led", "duration": "string", "aspect_ratio": "string", "references": [ - {"tag": "Image1", "role": "identity | product | pose | environment | style"}, - {"tag": "Video1", "role": "motion | camera | pacing | blocking"}, - {"tag": "Audio1", "role": "voice | rhythm | ambience | music"} + {"tag": "Image1", "role": "identity | product | pose | environment | style | first_frame | last_frame | reference_image"}, + {"tag": "Video1", "role": "motion | camera | pacing | blocking | source_clip | reference_video"}, + {"tag": "Audio1", "role": "voice | rhythm | ambience | music | tempo | reference_audio"} ], "characters": [], "scene": "", diff --git a/references/migrated/README.md b/references/migrated/README.md new file mode 100644 index 0000000..1d49a0f --- /dev/null +++ b/references/migrated/README.md @@ -0,0 +1,5 @@ +# Migrated Legacy Bodies + +These files preserve earlier local skill bodies for historical comparison only. They are not active guidance and can contain stale platform status, old block-rate claims, outdated face/portrait assumptions, or unsafe raw-example language. + +Use active files in `skills/`, `references/`, `data/`, and `evals/` for current behavior. If a useful idea exists only in this archive, re-source it against current public documentation and rewrite it into safe, source-dated active guidance before reuse. diff --git a/references/model-name-map.md b/references/model-name-map.md index b215a8a..52a6d68 100644 --- a/references/model-name-map.md +++ b/references/model-name-map.md @@ -13,6 +13,7 @@ Use this file when a user says "Seedance Pro", "Seedance V2", "Seed2.0 Pro", or | Doubao Seedance 2.0 | Volcengine/Doubao-flavored surface naming | Treat as a product/API surface label, not a different creative method. | | `doubao-seedance-2-0-260128` | Volcengine Ark model ID observed in May 29 tutorial | Useful for implementation examples only after rechecking the active console/docs. Do not treat as universal BytePlus/global availability. | | `doubao-seedance-2-0-fast-260128` | Volcengine Ark Fast model ID observed in May 29 tutorial | Use only when the active surface exposes the Fast variant and current pricing/limits are checked. | +| `seedance2` | Runway API model ID | Use only for Runway's API surface. Do not substitute for Volcengine/Doubao model IDs. | | Seedance V2 | Community shorthand | Normalize to Seedance 2.0 unless the user is clearly referring to a wrapper-specific model. | | Seedance 2.0 Pro | Ambiguous community shorthand | Do not assume this is an official video-model name. Ask which surface, or normalize to Seedance 2.0 / Fast with a caveat. | | Seed2.0 Pro | Separate Seed/Doubao naming seen outside the Seedance video model line | Do not confuse with Seedance 2.0 video generation. | @@ -28,4 +29,4 @@ If the user says "Seedance 2.0 Pro", answer: Third-party wrappers may expose names such as `doubao-seedance-2.0`, `doubao-seedance-2.0-fast`, or provider-prefixed variants. These can be useful for implementation, but they are not the repo's source of truth for official naming. -Do not quote current BytePlus Seedance 2.0 pricing or model IDs from JavaScript-rendered pricing pages unless the value has been verified in a current official page or console. +Do not quote current BytePlus Seedance 2.0 pricing or model IDs from JavaScript-rendered pricing pages unless the value has been verified in a current official page or console. Volcengine prices can be cited only with source date, model, surface, currency, and a recheck warning. diff --git a/references/platform-constraints.md b/references/platform-constraints.md index 6368ff6..407bcac 100644 --- a/references/platform-constraints.md +++ b/references/platform-constraints.md @@ -8,10 +8,12 @@ last_verified: 2026-05-30 - Do not assume API access, pricing, model IDs, regional access, upload limits, duration, or portrait authorization from memory. - Do not infer consent from an uploaded image, voice, or video. - Do not provide protected-character, celebrity, brand-logo, song-copying, exact-scene, or voice-imitation instructions without a safe rewrite or explicit authorization context. +- Do not treat real-face input as universally allowed or universally blocked. Some surfaces restrict direct human-face uploads while allowing verified virtual portrait assets, trusted same-account generated assets, or authorized material. +- Do not mix provider-specific field names: Volcengine first/last-frame roles, Runway `promptImage` positions, and wrapper schemas are not interchangeable. ## Surface-specific claims -When a user asks about Dreamina, Jimeng, BytePlus ModelArk, ComfyUI, Replicate, Higgsfield, or another surface, answer with the surface name and date. Label unofficial/community tools clearly. +When a user asks about Dreamina, Jimeng, Volcengine Ark, BytePlus ModelArk, Runway, ComfyUI, Replicate, Higgsfield, or another surface, answer with the surface name and date. Label unofficial/community tools clearly. ## User-facing default diff --git a/references/platform-surface-matrix.md b/references/platform-surface-matrix.md index 20079ef..8598922 100644 --- a/references/platform-surface-matrix.md +++ b/references/platform-surface-matrix.md @@ -9,8 +9,11 @@ Seedance 2.0 capability claims must separate the model from the product surface. | ByteDance Seed official model page | official | Broad capability framing | Use for high-level model positioning only. It confirms multimodal audio-video generation, references, performance, lighting, shadow, and camera control. | | ByteDance official launch post | official | Capability details and known limits | Use for the strongest public claims about input modalities, reference counts, video extension/editing, dual-channel audio, and remaining weaknesses. | | Volcengine Ark / ModelArk docs | official platform docs | API task flow and model surface | Recheck before giving endpoints, regions, quotas, pricing, or file limits. The May 29 model list/tutorial pages are current signals, but still date-bound. | +| Volcengine video-generation tutorial | official platform docs | Async task lifecycle, first/last-frame roles, return-last-frame, web-search tools, and reference-file combinations | Current May 29 signal for Volcengine fields. Use for Volcengine only; recheck exact schema, entitlement, pricing, and face-reference behavior before implementation. | | Volcengine developer-community article | official ecosystem/news article | API availability, safety, and adoption context | Useful for noting API-service rollout, portrait/copyright standards, face verification, virtual portraits, and BytePlus overseas service. Do not treat it as an API schema, pricing table, or account entitlement guarantee. | | BytePlus ModelArk docs | official platform docs | International API and docs surface | Recheck before production guidance. Some pages require JavaScript, so cite only visible or independently verified claims. Do not quote Seedance 2.0 BytePlus pricing from JS-only pages without live verification. | +| Runway Seedance 2 | official third-party surface | API/web generation with Seedance 2 model access | Runway documents `seedance2`, 5-15s duration, image/video/audio references, upload URIs, audio-combination rules, and plan/region caveats. Treat as Runway surface behavior, not Volcengine or BytePlus behavior. | +| Runway MCP | official agent connector surface | Agent-accessible image/video generation | Useful for agent workflow planning. It does not prove ByteDance API access or alter Seedance model limits. | | Dreamina / Jimeng web UI | official product surface | Creator workflow | Behavior may differ from API. Do not generalize web UI limits, credits, face checks, or upload rules to every surface. | | ComfyUI partner node docs | partner workflow docs | T2V, R2V, FLF2V workflows | Useful for workflow vocabulary and surface caveats. Label as ComfyUI-specific rather than universal Seedance behavior. | | Third-party wrappers | community/commercial wrapper | Access abstraction | Useful for field patterns and integration ideas only. Do not present wrapper model names, prices, or guardrail behavior as official. | @@ -33,4 +36,4 @@ Real-person images, portraits, and voices are authorization-sensitive. Some surf ## V2V, R2V, and FLF2V Boundary -Official ByteDance material supports multimodal references, I2V/R2V examples, editing, and extension. First-last-frame workflows are useful and common on partner or workflow surfaces, but label FLF2V as surface-specific unless a current first-party API page explicitly documents that exact workflow name. +Official ByteDance material supports multimodal references, I2V/R2V examples, editing, and extension. Volcengine now documents first-frame and last-frame roles on its video-generation surface. Keep `FLF2V` as a label caveat because workflow names differ by product surface, but do not say first/last-frame itself is partner-only. diff --git a/references/reference-workflow.md b/references/reference-workflow.md index 4b7adf6..fef59f2 100644 --- a/references/reference-workflow.md +++ b/references/reference-workflow.md @@ -19,6 +19,18 @@ Before writing prompt prose, assign every uploaded asset a role. Role mapping pr - Use owned, licensed, public-domain, or clearly authorized references. - Write what should transfer and what should not transfer. - When authorization is unclear, transfer broad motion, tempo, mood, or production function rather than protected identity. +- Treat multimodal reference generation, video edit, video extend, and first/last-frame generation as separate tasks. They can share assets, but the prompt should name the active workflow. +- If audio and video references compete, make the video silent when audio timing must dominate, or state that the video controls camera/motion only and `[Audio1]` controls tempo. + +## Workflow-Specific Patterns + +| Workflow | Use this wording | Avoid | +|---|---|---| +| Multimodal reference | `[Image1] controls product identity; [Video1] controls camera rhythm; [Audio1] controls tempo only.` | `Use all references for style.` | +| Video edit | `[Video1] is the source clip; preserve composition and timing, change only [lighting/background/VFX].` | Regenerating the whole concept from scratch. | +| Video extend | `[Video1] is the previous clip; continue the same shot for [duration] and preserve last-frame continuity.` | Starting a new scene with no continuity anchor. | +| First/last frame | `[Image1] is first frame; [Image2] is final visual target; generate the continuous transition only.` | Asking the last frame to be only "mood." | +| Audio reference | `[Audio1] controls tempo and energy; do not copy protected voice, song, or performance identity.` | Treating audio as authorization proof. | ## Role Examples @@ -28,6 +40,7 @@ Before writing prompt prose, assign every uploaded asset a role. Role mapping pr | Motion transfer | `[Video1] controls side-step choreography only; do not transfer performer, costume, room, or logo.` | | Style reference | `[Image2] controls warm bar atmosphere only; product identity remains from [Image1].` | | First-last frame | `[Image1] is first frame; [Image2] is target end frame; transition occurs through light sweep, not product deformation.` | +| Edit/extend | `[Video1] is the source clip; preserve subject and camera path, replace only the failed lighting beat from 3s to 5s.` | ## Template diff --git a/references/research-2026-05-30.md b/references/research-2026-05-30.md index 78e4292..ec97934 100644 --- a/references/research-2026-05-30.md +++ b/references/research-2026-05-30.md @@ -2,7 +2,7 @@ last_verified: 2026-05-30 -This snapshot records the evidence used for the v5.4.1 final source sweep. It is a dated working layer, not a permanent guarantee of platform access, pricing, limits, or regional availability. +This snapshot records the evidence used for the v5.4.2 section-depth and surface-refresh pass. It is a dated working layer, not a permanent guarantee of platform access, pricing, limits, or regional availability. ## Source Priority @@ -20,7 +20,11 @@ This snapshot records the evidence used for the v5.4.1 final source sweep. It is - Official material emphasizes references for composition, camera language, motion rhythm, visual effects, and sound characteristics. - Official material describes video extension and editing as core capabilities, not only fresh text-to-video generation. - Volcengine's Seedance 2.0 tutorial was observed updated on 2026-05-29 and listed `doubao-seedance-2-0-260128` and `doubao-seedance-2-0-fast-260128`. +- Volcengine's May 29 video-generation tutorial is now the active first-party place to recheck first-frame and last-frame roles, return-last-frame, web-search tools, and input-combination rules. - Volcengine's Seedance 2.0 prompt guide was observed updated on 2026-05-15 and reinforces role-bound multimodal reference prompting. +- Volcengine's May 28 pricing page can be cited only with source date, surface, model, currency, and recheck caveat. BytePlus JavaScript-rendered pages still require live verification before quoting prices. +- Runway documents a separate official Seedance 2 surface using model ID `seedance2`, 5-15 second duration, hosted `runway://` uploads, and audio-reference combination rules. +- Runway MCP launched on 2026-05-27 as an agent connector surface. Treat it as Runway access/workflow evidence, not as a ByteDance API capability claim. - Real-person portrait or voice workflows require authorization, surface support, and platform-specific verification. - ByteDance's own launch material lists remaining weaknesses: detail stability, hyper-realism, dynamic vitality, multi-subject consistency, text rendering, complex editing, and occasional audio distortion. - OpenAI's current Codex Agent Skills docs describe a skill as a directory with a required `SKILL.md` plus optional `scripts/`, `references/`, `assets/`, and `agents/` folders. This repo follows that shape. @@ -34,6 +38,8 @@ Use these as practitioner guidance, not platform guarantees: - One primary camera move per shot remains a reliable stability rule. - Reference assets need explicit roles: identity, background, motion, camera rhythm, audio tempo, or final-frame target. - First/last-frame workflows are common in Chinese creator guidance and partner workflow docs. +- Audio-reference failures are often role conflicts: if a video reference also contains sound, mute it or lower its role to camera/motion when `[Audio1]` should control timing. +- Extension chains benefit from a returned last-frame anchor when the active surface supports it. - Editing or extending a failed segment can be cheaper and more controllable than regenerating the entire clip. - Product logos, faces, readable text, hands, fast gestures, and multi-character blocking benefit from locked framing and stronger constraints. - Agent-skill repos stay more usable when README explains the workflow at human level while scripts enforce file, source, and metadata integrity. diff --git a/references/source-registry.md b/references/source-registry.md index b27733a..266bcba 100644 --- a/references/source-registry.md +++ b/references/source-registry.md @@ -22,13 +22,16 @@ Use this registry before making factual claims about Seedance 2.0 platform behav | Launch capabilities and known limits | ByteDance Seedance 2.0 official launch post: https://seed.bytedance.com/en/blog/seedance-2-0-official-launch | confirmed | Recheck when discussing multimodal references, editing, audio, and platform examples. | Do not turn launch examples into guaranteed behavior on every surface. | | Model card and paper | arXiv model card: https://arxiv.org/abs/2604.14148 | confirmed | Useful for model-family context and benchmark caveats. | Provider-authored paper; do not use as current commercial access proof. | | API tutorial and platform docs | BytePlus ModelArk and Volcengine Ark docs: https://docs.byteplus.com/en/docs/ModelArk/2291680, https://www.volcengine.com/docs/82379/1520757?lang=zh, and https://www.volcengine.com/docs/82379/2291680?lang=zh | volatile | Recheck endpoints, request fields, model IDs, task flow, and pricing before procedural API guidance. | API shape may differ by region, account, or release channel. | -| Model IDs and pricing | Volcengine/BytePlus pricing and model pages | volatile | Always recheck immediately before quoting numbers or IDs. | Never invent price, quota, upload limit, or regional availability. | +| Video generation task lifecycle | Volcengine video-generation tutorial: https://www.volcengine.com/docs/82379/2298881?lang=zh | volatile | Recheck create/query/list/cancel-delete flow, first/last-frame roles, return-last-frame, tools, and file-reference rules before implementation. | Official surface, but fields and account support can change. | +| Model IDs and pricing | Volcengine model list/pricing and BytePlus pricing pages | volatile | Always recheck immediately before quoting numbers or IDs. | Volcengine prices may be cited only with date, currency, model, surface, and caveat; never infer BytePlus pricing from incomplete JS-rendered pages. | | API-service ecosystem news | Volcengine developer article: https://developer.volcengine.com/articles/7628567056649125942 | volatile | Use as official ecosystem/news evidence for API-service rollout, safety standards, portrait authorization, virtual portraits, and BytePlus overseas-service statements. Recheck docs/console for implementation. | Not an API contract, price table, or entitlement guarantee. | | BytePlus pricing pages | BytePlus ModelArk pricing docs: https://docs.byteplus.com/en/docs/ModelArk/1099320 | volatile | Recheck live official pages or console before quoting Seedance 2.0 pricing, quotas, or model IDs. | Some pages are JavaScript-rendered in static fetches; do not infer current Seedance 2.0 pricing from incomplete static content. | | Prompting guide | Volcengine Seedance 2.0 prompt guide: https://www.volcengine.com/docs/82379/2222480?lang=zh | confirmed | Recheck when adding multimodal reference wording or prompt examples. | Prompting advice is official guidance, not a guarantee that every surface exposes every control. | -| First/last frame workflow | ComfyUI partner docs: https://docs.comfy.org/zh/tutorials/partner-nodes/bytedance/seedance-2-0 | field-observed | Useful for workflow language and FLF2V routing. | Partner surface, not universal model contract. | +| First/last frame workflow | Volcengine tutorial and ComfyUI partner docs: https://www.volcengine.com/docs/82379/2298881?lang=zh and https://docs.comfy.org/zh/tutorials/partner-nodes/bytedance/seedance-2-0 | volatile | Volcengine documents first/last-frame roles; ComfyUI uses FLF2V workflow vocabulary. Recheck active surface before using exact fields. | The `FLF2V` label is surface-specific, but first/last-frame capability is documented on Volcengine. | | Face, portrait, and voice behavior | Active product surface, official policy, and user authorization | volatile | Recheck current surface behavior and authorization context. | Do not infer consent from a file upload. | -| Agent Skills structure | OpenAI Codex Agent Skills docs: https://developers.openai.com/codex/skills, OpenAI Academy plugins/skills explainer: https://openai.com/academy/codex-plugins-and-skills/, and Agent Skills open standard: https://agentskills.io/ | confirmed | Recheck before changing install guidance or root skill layout. | Packaging guidance, not Seedance platform capability. | +| Runway Seedance 2 surface | Runway API and help docs: https://docs.dev.runwayml.com/guides/seedance/ and https://help.runwayml.com/hc/en-us/articles/50488490233363-Creating-with-Seedance-2-0 | volatile | Recheck duration, ratios, audio/reference combination rules, region availability, plan requirements, and SDK support before production use. | Official Runway surface, not a ByteDance/Volcengine API contract. | +| Agent Skills structure | OpenAI Codex Agent Skills docs: https://developers.openai.com/codex/skills, OpenAI Academy plugins/skills explainer: https://openai.com/academy/codex-plugins-and-skills/, OpenAI Codex Plugins docs, and Agent Skills open standard: https://agentskills.io/ | confirmed | Recheck before changing install guidance or root skill layout. | Packaging guidance, not Seedance platform capability. | +| Runway MCP agent surface | Runway MCP announcement: https://runwayml.com/news/mcp | confirmed | Use for agent-surface availability only. | Does not change Seedance model capability; plan and connector access are Runway-specific. | | Audio-video eval vocabulary | AVBench and VABench papers: https://arxiv.org/abs/2605.24652 and https://openaccess.thecvf.com/content/CVPR2026/papers/Hua_VABench_A_Comprehensive_Benchmark_for_Audio-Video_Generation_CVPR_2026_paper.pdf | field-observed | Use for eval dimensions such as audio-video sync and cross-modal consistency. | Benchmark framing, not product access or official Seedance performance proof. | | Community practice | Douyin, Bilibili, CSDN, Reddit, Habr, creator notes, workflow screenshots | field-observed | Use only as practitioner guidance. | Mark as non-official; do not state as model guarantee. | | Community prompt corpora | YouMind/OpenLab, public prompt galleries, forum collections | field-observed | Mine structure, timing, vocabulary, and failure patterns only after safety classification. | Do not copy unsafe, IP-sensitive, or real-person prompts into active examples. | @@ -36,7 +39,7 @@ Use this registry before making factual claims about Seedance 2.0 platform behav ## Required Claim Patterns -When answering platform-status questions, say: `As of 2026-05-30, public official sources describe Seedance 2.0 as supporting text, image, audio, and video inputs, including multimodal references for composition, camera language, motion rhythm, visual effects, and sound. Access, pricing, model IDs, upload limits, regions, and authorization behavior remain surface-specific and should be rechecked.` +When answering platform-status questions, say: `As of 2026-05-30, public official sources describe Seedance 2.0 as supporting text, image, audio, and video inputs, including multimodal references for composition, camera language, motion rhythm, visual effects, and sound. Volcengine documents first/last-frame roles and Runway documents a Seedance 2 surface, but access, pricing, model IDs, upload limits, regions, resolution, audio-combination rules, and authorization behavior remain surface-specific and should be rechecked.` When answering pricing, quota, upload-limit, model-ID, or regional-availability questions, do not guess. State that those values are volatile and require checking the current official surface. diff --git a/references/vocab/es.md b/references/vocab/es.md index c76e7bf..df37854 100644 --- a/references/vocab/es.md +++ b/references/vocab/es.md @@ -1,23 +1,64 @@ # Spanish Vocabulary -Use this reference for Spanish Seedance prompt wording. Keep reference tags unchanged. +Use this reference for Spanish Seedance prompt wording, role binding, and compact prompt compression. Keep reference tags unchanged: `[Image1]`, `[Video1]`, and `[Audio1]` stay literal. | Function | Spanish | English meaning | |---|---|---| +| Role | `[Image1] como primer fotograma` | Image1 is the first frame | +| Role | `[Image2] como fotograma final` | Image2 is the last frame | +| Role | `[Image1] fija la identidad del personaje` | Image1 locks character identity | +| Role | `[Video1] solo controla el movimiento de cámara` | Video1 controls camera movement only | +| Role | `[Video1] solo marca el ritmo de la acción` | Video1 controls action rhythm only | +| Role | `[Audio1] solo marca tempo y ambiente` | Audio1 controls tempo and mood only | +| FirstLastFrame | `mantener el primer fotograma sin cambios` | keep first frame unchanged | +| FirstLastFrame | `usar el fotograma final como objetivo visual` | final frame is the target endpoint | +| FirstLastFrame | `movimiento continuo sin salto de montaje` | continuous motion, no jump cut | +| FirstLastFrame | `mantener el mismo personaje, vestuario y espacio` | preserve same character, wardrobe, and layout | | Camera | `travelling de acercamiento lento` | slow push-in | +| Camera | `retroceso para revelar el espacio` | pull back to reveal space | | Camera | `seguimiento lateral estable` | stable lateral tracking | | Camera | `plano medio fijo` | locked medium shot | | Camera | `primer plano macro` | macro close-up | +| Camera | `plano en contrapicado` | low-angle shot | +| Camera | `plano sobre el hombro` | over-the-shoulder shot | +| Camera | `cámara en mano con leve respiración` | handheld camera with slight breathing sway | +| Shot | `plano medio corto` | medium close-up | +| Shot | `plano general amplio` | wide establishing shot | +| Shot | `perfil de tres cuartos` | three-quarter profile | +| Lens | `24 mm angular con sensación de espacio` | 24mm wide spatial feel | +| Lens | `50 mm con perspectiva natural de retrato` | 50mm natural portrait feel | +| Lens | `lente macro para detalle de material` | macro lens for material detail | | Lighting | `contraluz suave` | soft backlight | | Lighting | `luz cálida práctica desde la izquierda` | warm practical light from left | | Lighting | `halo frío de luna` | cool moon rim light | +| Lighting | `luz volumétrica atravesando niebla fina` | volumetric light through mist | +| Lighting | `asfalto mojado reflejando neón` | wet pavement reflects neon | | Motion | `la niebla se abre alrededor de los pasos` | fog parts around footsteps | | Motion | `las gotas se unen y descienden` | droplets merge and slide down | +| Motion | `gira lentamente la cabeza y se detiene` | slow head turn and stop | +| Motion | `la tela se mueve de forma natural con el gesto` | fabric moves naturally with action | | VFX | `partículas doradas se elevan y se disipan` | gold particles rise and dissipate | +| VFX | `arcos eléctricos azules recorren el borde` | blue arcs crawl along the edge | +| VFX | `un barrido de luz cruza la superficie del material` | light sweep crosses material surface | | Audio | `una frase corta y clara` | one short clear spoken line | | Audio | `sin música, solo ambiente bajo` | no music, low ambience only | -| Constraint | `mantener el logotipo y la forma sin cambios` | keep logo and shape unchanged | +| Audio | `cámara fija durante el diálogo` | locked camera during dialogue | +| Audio | `los pasos caen en el pulso` | footsteps hit the beat | +| Text | `sin subtítulos, marcas de agua ni texto adicional` | no subtitles, watermarks, or extra text | +| Editing | `continuar el plano` | continue the shot | +| Editing | `extender cinco segundos` | extend by five seconds | +| Editing | `reemplazar solo el fragmento fallido` | replace only the failed segment | +| Constraint | `mantener logotipo, etiqueta, forma y color sin cambios` | preserve logo, label, shape, and color | +| Constraint | `solo cambian movimiento, luz y cámara` | change only motion, light, and camera | +| Constraint | `no copiar personas, lugar ni marcas` | do not copy people, place, or brands | +| Safety | `sustituir por un personaje original` | replace with an original character | +| Safety | `usar solo referencias autorizadas` | use only authorized references | +| Safety | `mantener la función creativa, no la identidad protegida` | preserve creative function, not protected identity | ## Compact Template -`[Image1] es la referencia; mantener [identidad/producto] sin cambios. Solo cambia [acción/luz/cámara]. Cámara: [movimiento único]. Sonido: [señal].` +`[Image1] es la referencia; mantener [identidad/producto/rostro/logotipo] sin cambios. Solo cambia [acción/luz/cámara]. Cámara: [movimiento único]. Sonido: [señal].` + +## Multimodal Template + +`[Image1] fija el personaje original. [Video1] solo controla el movimiento de cámara; no copiar persona, lugar ni marca. [Audio1] solo marca tempo y ambiente.` diff --git a/references/vocab/ja.md b/references/vocab/ja.md index de5abba..bbf80d9 100644 --- a/references/vocab/ja.md +++ b/references/vocab/ja.md @@ -1,23 +1,64 @@ # Japanese Vocabulary -Use this reference for Japanese Seedance prompt wording. Keep reference tags unchanged. +Use this reference for Japanese Seedance prompt wording, role binding, and compact prompt compression. Keep reference tags unchanged: `[Image1]`, `[Video1]`, and `[Audio1]` stay literal. | Function | Japanese | English meaning | |---|---|---| +| Role | `[Image1]を最初のフレームとして使う` | use Image1 as the first frame | +| Role | `[Image2]を最後のフレームとして使う` | use Image2 as the last frame | +| Role | `[Image1]で人物の同一性を固定する` | Image1 locks character identity | +| Role | `[Video1]はカメラの動きのみ参照` | Video1 controls camera movement only | +| Role | `[Video1]は動作リズムのみ参照` | Video1 controls action rhythm only | +| Role | `[Audio1]はテンポと雰囲気のみ参照` | Audio1 controls tempo and mood only | +| FirstLastFrame | `最初のフレームを変更しない` | keep the first frame unchanged | +| FirstLastFrame | `最後のフレームを最終目標にする` | use the last frame as the final target | +| FirstLastFrame | `途中の動きを連続させ、ジャンプカットしない` | continuous in-between motion, no jump cut | +| FirstLastFrame | `同じ人物、服装、部屋の構造を保つ` | preserve same character, outfit, and room layout | | Camera | `ゆっくりドリーイン` | slow push-in | +| Camera | `後退して空間を見せる` | pull back to reveal the space | | Camera | `安定した横移動トラッキング` | stable lateral tracking | | Camera | `固定の中景` | locked medium shot | | Camera | `マクロのクローズアップ` | macro close-up | +| Camera | `低いアングルから見上げる` | low-angle shot | +| Camera | `肩越しのショット` | over-the-shoulder shot | +| Camera | `軽い手持ちの呼吸感` | handheld shot with slight breathing sway | +| Shot | `中近景` | medium close-up | +| Shot | `広い導入ショット` | wide establishing shot | +| Shot | `三分の二の横顔` | three-quarter profile | +| Lens | `24mmの広角で空間を強調` | 24mm wide lens spatial feel | +| Lens | `50mmの自然なポートレート感` | 50mm natural portrait feel | +| Lens | `マクロレンズで素材の細部を見せる` | macro lens for material detail | | Lighting | `柔らかい逆光` | soft backlight | | Lighting | `左からの暖かい実用照明` | warm practical light from left | | Lighting | `冷たい月明かりの輪郭光` | cool moon rim light | +| Lighting | `薄い霧を通るボリューム光` | volumetric light through mist | +| Lighting | `濡れた路面にネオンが反射する` | wet pavement reflects neon | | Motion | `足元の霧が静かに広がる` | fog spreads around the feet | | Motion | `水滴が集まり下へ流れる` | droplets merge and slide down | +| Motion | `ゆっくり顔を向けて止まる` | slow head turn and stop | +| Motion | `布が動きに合わせて自然に揺れる` | fabric moves naturally with action | | VFX | `金色の粒子が舞い上がり消えていく` | gold particles rise and dissipate | +| VFX | `青い電気の弧が縁を這う` | blue arcs crawl along the edge | +| VFX | `光の筋が素材の表面を横切る` | light sweep crosses the material surface | | Audio | `短く明瞭な一言` | one short clear spoken line | | Audio | `音楽なし、低い環境音のみ` | no music, low ambience only | -| Constraint | `ロゴと形状を変えずに維持する` | keep logo and shape unchanged | +| Audio | `セリフ中はカメラを固定する` | locked camera during dialogue | +| Audio | `足音をビートに合わせる` | footsteps hit the beat | +| Text | `字幕、透かし、余計な文字を追加しない` | no subtitles, watermark, or extra text | +| Editing | `ショットを続ける` | continue the shot | +| Editing | `5秒延長する` | extend by five seconds | +| Editing | `失敗した部分だけ置き換える` | replace only the failed segment | +| Constraint | `ロゴ、ラベル、形、色を厳密に保つ` | preserve logo, label, shape, and color | +| Constraint | `変化は動き、光、カメラだけにする` | change only motion, light, and camera | +| Constraint | `人物、場所、ブランドをコピーしない` | do not copy people, place, or brands | +| Safety | `オリジナルの人物に置き換える` | replace with an original character | +| Safety | `許可済みの参照だけを使う` | use only authorized references | +| Safety | `創作上の役割を残し、保護された同一性は残さない` | preserve creative function, not protected identity | ## Compact Template -`[Image1]を参照として、[主体/商品]を正確に維持する。変化は[動き/光/カメラ]のみ。カメラ:[一つの動き]。音:[音声指示]。` +`[Image1]を参照として、[主体/商品/顔/ロゴ]を正確に維持する。変化は[動き/光/カメラ]のみ。カメラ:[一つの動き]。音:[音声指示]。` + +## Multimodal Template + +`[Image1]でオリジナル人物を固定する。[Video1]はカメラの動きのみ参照し、人物・場所・ブランドはコピーしない。[Audio1]はテンポと雰囲気のみ参照する。` diff --git a/references/vocab/ko.md b/references/vocab/ko.md index 3d80887..546a57b 100644 --- a/references/vocab/ko.md +++ b/references/vocab/ko.md @@ -1,23 +1,64 @@ # Korean Vocabulary -Use this reference for Korean Seedance prompt wording. Keep reference tags unchanged. +Use this reference for Korean Seedance prompt wording, role binding, and compact prompt compression. Keep reference tags unchanged: `[Image1]`, `[Video1]`, and `[Audio1]` stay literal. | Function | Korean | English meaning | |---|---|---| -| Camera | `천천히 돌리 인` | slow push-in | +| Role | `[Image1]을 첫 프레임으로 사용` | use Image1 as the first frame | +| Role | `[Image2]를 마지막 프레임으로 사용` | use Image2 as the last frame | +| Role | `[Image1]로 인물 정체성을 고정` | Image1 locks character identity | +| Role | `[Video1]은 카메라 움직임만 참고` | Video1 controls camera movement only | +| Role | `[Video1]은 동작 리듬만 참고` | Video1 controls action rhythm only | +| Role | `[Audio1]은 템포와 분위기만 참고` | Audio1 controls tempo and mood only | +| FirstLastFrame | `첫 프레임은 변경하지 않는다` | keep first frame unchanged | +| FirstLastFrame | `마지막 프레임을 최종 목표로 삼는다` | final frame is the target endpoint | +| FirstLastFrame | `중간 동작은 끊기지 않고 이어진다` | continuous in-between motion | +| FirstLastFrame | `같은 인물, 의상, 공간 구조를 유지` | preserve same character, outfit, and layout | +| Camera | `느린 돌리 인` | slow push-in | +| Camera | `뒤로 빠지며 공간을 드러내는 샷` | pull back to reveal space | | Camera | `안정적인 측면 트래킹` | stable lateral tracking | | Camera | `고정된 중간 샷` | locked medium shot | | Camera | `매크로 클로즈업` | macro close-up | +| Camera | `낮은 앵글` | low-angle shot | +| Camera | `어깨 너머 샷` | over-the-shoulder shot | +| Camera | `가벼운 핸드헬드 호흡감` | handheld shot with slight breathing sway | +| Shot | `중간 클로즈업` | medium close-up | +| Shot | `넓은 설정 샷` | wide establishing shot | +| Shot | `3/4 측면 얼굴` | three-quarter profile | +| Lens | `24mm 광각으로 공간감 강조` | 24mm wide spatial feel | +| Lens | `50mm 자연스러운 인물감` | 50mm natural portrait feel | +| Lens | `매크로 렌즈로 재질 디테일 강조` | macro lens for material detail | | Lighting | `부드러운 역광` | soft backlight | | Lighting | `왼쪽의 따뜻한 실용 조명` | warm practical light from left | | Lighting | `차가운 달빛 림 라이트` | cool moon rim light | +| Lighting | `얇은 안개를 지나는 볼류메트릭 라이트` | volumetric light through mist | +| Lighting | `젖은 노면에 네온이 반사된다` | wet pavement reflects neon | | Motion | `발밑의 안개가 천천히 퍼진다` | fog spreads around the feet | | Motion | `물방울이 합쳐져 아래로 흐른다` | droplets merge and slide down | +| Motion | `천천히 고개를 돌리고 멈춘다` | slow head turn and stop | +| Motion | `천이 동작에 맞춰 자연스럽게 흔들린다` | fabric moves naturally with action | | VFX | `금빛 입자가 올라가며 사라진다` | gold particles rise and dissipate | +| VFX | `푸른 전기 아크가 가장자리를 따라 흐른다` | blue arcs crawl along the edge | +| VFX | `빛줄기가 재질 표면을 지나간다` | light sweep crosses material surface | | Audio | `짧고 명확한 한마디 대사` | one short clear spoken line | | Audio | `음악 없이 낮은 환경음만` | no music, low ambience only | -| Constraint | `로고와 형태를 변경하지 않고 유지한다` | keep logo and shape unchanged | +| Audio | `대사 중에는 카메라를 고정` | locked camera during dialogue | +| Audio | `발소리가 박자에 맞는다` | footsteps hit the beat | +| Text | `자막, 워터마크, 불필요한 글자 추가 금지` | no subtitles, watermark, or extra text | +| Editing | `샷을 이어서 진행` | continue the shot | +| Editing | `5초 연장` | extend by five seconds | +| Editing | `실패한 구간만 교체` | replace only the failed segment | +| Constraint | `로고, 라벨, 형태, 색상을 엄격히 유지` | preserve logo, label, shape, and color | +| Constraint | `움직임, 빛, 카메라만 변경` | change only motion, light, and camera | +| Constraint | `사람, 장소, 브랜드를 복사하지 않음` | do not copy people, place, or brands | +| Safety | `오리지널 캐릭터로 대체` | replace with an original character | +| Safety | `허가된 참조만 사용` | use only authorized references | +| Safety | `창작 기능은 유지하되 보호된 정체성은 제외` | preserve creative function, not protected identity | ## Compact Template -`[Image1]은 참조이며 [주체/제품]을 정확히 유지한다. 변화는 [동작/조명/카메라]만 적용한다. 카메라: [한 가지 움직임]. 사운드: [음향 지시].` +`[Image1]은 참조이며 [주체/제품/얼굴/로고]를 정확히 유지한다. 변화는 [동작/조명/카메라]만 적용한다. 카메라: [한 가지 움직임]. 사운드: [음향 지시].` + +## Multimodal Template + +`[Image1]은 오리지널 인물을 고정한다. [Video1]은 카메라 움직임만 참고하고 인물, 장소, 브랜드는 복사하지 않는다. [Audio1]은 템포와 분위기만 참고한다.` diff --git a/scripts/content_audit.py b/scripts/content_audit.py index 064d7e4..200b73f 100644 --- a/scripts/content_audit.py +++ b/scripts/content_audit.py @@ -60,6 +60,7 @@ def main() -> int: root = Path(args.repo).resolve() findings = [] + archived_findings = [] for path in root.rglob("*"): if path.is_file() and should_scan(path, root): @@ -68,6 +69,21 @@ def main() -> int: if phrase in text: findings.append((path.relative_to(root).as_posix(), phrase, reason)) + migrated_root = root / "references" / "migrated" + if migrated_root.exists(): + for path in migrated_root.rglob("*.md"): + text = path.read_text(encoding="utf-8", errors="ignore") + for phrase, reason in RISK_PHRASES.items(): + if phrase in text: + archived_findings.append((path.relative_to(root).as_posix(), phrase, reason)) + + if archived_findings: + print("Archived migrated warnings:") + for rel, phrase, reason in archived_findings[:20]: + print(f"- {rel}: `{phrase}` ({reason})") + print("Archived findings are warning-only; active guidance must not rely on migrated claims.") + print() + if findings: print("Content audit findings:") for rel, phrase, reason in findings: diff --git a/scripts/design_audit.py b/scripts/design_audit.py index c8567b0..9da7bb3 100644 --- a/scripts/design_audit.py +++ b/scripts/design_audit.py @@ -33,6 +33,8 @@ def main() -> int: "## Operating System At A Glance", "## Start Here", "## Skill Map", + "api-workflow.md", + "examples-by-mode.md", "## Validation", "## Design Standard", ]: diff --git a/scripts/eval_schema_check.py b/scripts/eval_schema_check.py index 04a7147..767fa18 100644 --- a/scripts/eval_schema_check.py +++ b/scripts/eval_schema_check.py @@ -32,6 +32,14 @@ "ru_role_binding_multimodal", "unsafe_bypass_refusal", "community_corpus_safety", + "reference_audio_conflict", + "zh_official_task_formula", + "edit_extend_vs_regenerate", + "ru_structured_prompt", + "shot_list_continuity", + "community_gallery_safety_classification", + "vfx_reference_video_repair", + "extension_quality_degradation", } diff --git a/scripts/source_registry_check.py b/scripts/source_registry_check.py index 2e35b08..d65e739 100644 --- a/scripts/source_registry_check.py +++ b/scripts/source_registry_check.py @@ -8,7 +8,7 @@ from pathlib import Path REQUIRED_LABELS = ["confirmed", "volatile", "field-observed", "unverified", "internal"] -REQUIRED_OFFICIAL_MARKERS = ["seed.bytedance.com", "volcengine.com", "arxiv.org"] +REQUIRED_OFFICIAL_MARKERS = ["seed.bytedance.com", "volcengine.com", "arxiv.org", "runwayml.com"] def parse_date(text: str) -> date | None: @@ -76,8 +76,8 @@ def main() -> int: errors.append(f"source data JSON parse error: {exc}") else: sources = data.get("sources") - if not isinstance(sources, list) or len(sources) < 6: - errors.append("source data must contain at least six source records") + if not isinstance(sources, list) or len(sources) < 20: + errors.append("source data must contain at least twenty source records") else: for i, source in enumerate(sources): for key in ["id", "title", "url", "language", "source_type", "retrieved_at", "confidence", "claims"]: diff --git a/scripts/validate_skills.py b/scripts/validate_skills.py index 0700010..dda22fe 100644 --- a/scripts/validate_skills.py +++ b/scripts/validate_skills.py @@ -21,6 +21,8 @@ "references/source-registry.md", "references/research-2026-05-30.md", "references/agent-compatibility.md", + "references/api-workflow.md", + "references/examples-by-mode.md", "references/platform-surface-matrix.md", "references/model-name-map.md", "references/first-last-frame-guide.md", @@ -148,8 +150,8 @@ def validate_skill(path: Path, root: Path, errors: list[str], warnings: list[str if metadata_value(frontmatter, "parent") != "seedance-20": errors.append(f"{rel}: missing metadata.parent: seedance-20") - if metadata_value(frontmatter, "version") != "5.4.1": - errors.append(f"{rel}: metadata.version must be 5.4.1") + if metadata_value(frontmatter, "version") != "5.4.2": + errors.append(f"{rel}: metadata.version must be 5.4.2") description = value_for(frontmatter, "description") or "" if not description.startswith("This skill should be used when"): @@ -233,7 +235,7 @@ def main() -> int: print(f"- {error}") return 1 - print(f"Validated root plus {len(EXPECTED_SKILLS)} sub-skills and required v5.4.1 files.") + print(f"Validated root plus {len(EXPECTED_SKILLS)} sub-skills and required v5.4.2 files.") return 0 diff --git a/scripts/vocab_schema_check.py b/scripts/vocab_schema_check.py index 80594b5..9868d40 100644 --- a/scripts/vocab_schema_check.py +++ b/scripts/vocab_schema_check.py @@ -10,7 +10,7 @@ "Role", "FirstLastFrame", "Camera", "Shot", "Lens", "Lighting", "Motion", "VFX", "Audio", "Text", "Editing", "Constraint", "Constraints", "Safety", } -STRICT_REQUIRED_FOR_ZH_RU = {"Role", "FirstLastFrame", "Camera", "Audio", "Constraint", "Safety"} +STRICT_REQUIRED_FUNCTIONS = {"Role", "FirstLastFrame", "Camera", "Audio", "Constraint", "Safety"} PROTECTED_TERMS = ["Studio Ghibli", "Ghibli", "Spider-Man", "Disney", "Marvel"] @@ -53,7 +53,7 @@ def main() -> int: errors.append(f"{rel}: missing Function vocabulary table") rows = table_rows(text) - min_rows = 40 if lang in {"zh", "ru"} else 10 + min_rows = 40 if args.strict and len(rows) < min_rows: errors.append(f"{rel}: expected at least {min_rows} rows, found {len(rows)}") @@ -66,8 +66,8 @@ def main() -> int: if not function or not term or not meaning: errors.append(f"{rel}: row {i} has an empty cell") - if args.strict and lang in {"zh", "ru"}: - missing = STRICT_REQUIRED_FOR_ZH_RU - functions + if args.strict: + missing = STRICT_REQUIRED_FUNCTIONS - functions if missing: errors.append(f"{rel}: missing strict functions " + ", ".join(sorted(missing))) @@ -75,7 +75,7 @@ def main() -> int: if protected in text: errors.append(f"{rel}: protected term `{protected}` should not appear in active vocab") - if lang in {"zh", "ru"} and not re.search(r"\[Image1\].*\[Video1\]|\[Image1\].*\[Audio1\]", text, re.S): + if not re.search(r"\[Image1\].*\[Video1\]|\[Image1\].*\[Audio1\]", text, re.S): errors.append(f"{rel}: expected unchanged reference tag examples") if errors: diff --git a/skills/seedance-antislop/SKILL.md b/skills/seedance-antislop/SKILL.md index aff9225..1cd0535 100644 --- a/skills/seedance-antislop/SKILL.md +++ b/skills/seedance-antislop/SKILL.md @@ -8,7 +8,7 @@ tags: - anti-slop - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-audio/SKILL.md b/skills/seedance-audio/SKILL.md index d4adf20..a01328b 100644 --- a/skills/seedance-audio/SKILL.md +++ b/skills/seedance-audio/SKILL.md @@ -9,7 +9,7 @@ tags: - dialogue - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -23,6 +23,8 @@ metadata: Use this for dialogue, lip-sync, sound layers, music, ambience, beat-sync, audio-reference mapping, desync troubleshooting, or sound-driven visual timing. Audio should support the visible beat instead of becoming a second competing prompt. +Load `[ref:audio-guide]` for detailed constraints, beat-sync, desync repair, audio-reference conflicts, and multi-character workarounds. + ## Core Rules Keep dialogue short, quote spoken lines, and assign every line to a named speaker. Prefer locked or stable framing for lip-sync. Remove head-turning, large face motion, extreme camera moves, or busy hand gestures while mouth accuracy matters. Treat `[Audio1]` as a rhythm, pacing, mood, voice-tone, or ambience reference unless the active platform documents exact playback behavior. @@ -47,7 +49,7 @@ Use one speaker per short clip when reliability matters. If two characters must If dialogue desyncs, shorten the line, lock the camera, remove head turns, clean the audio role, and reduce competing SFX. If the wrong speaker talks, assign tags and split lines by speaker. If audio is ignored, remove extra music/SFX instructions and make the reference role explicit. -Load `[ref:audio-guide]` for detailed constraints, beat-sync, desync repair, and multi-character workarounds. +If audio and video references fight each other, mute the reference video before upload when possible, or make the priority explicit: `[Video1] controls camera only; [Audio1] controls tempo and energy`. ## Output Contract diff --git a/skills/seedance-camera/SKILL.md b/skills/seedance-camera/SKILL.md index 5938c73..70b3fd9 100644 --- a/skills/seedance-camera/SKILL.md +++ b/skills/seedance-camera/SKILL.md @@ -8,7 +8,7 @@ tags: - cinematography - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -22,6 +22,8 @@ metadata: Use one clear camera idea per short clip unless the user asks for a multi-shot sequence. The best camera direction has a start frame, movement, speed, subject relationship, and endpoint. Avoid stacking moves that fight each other, such as drone rise, dolly-in, handheld shake, and orbit in the same five-second shot. +Load `[ref:quick-ref]` for prompt assembly and `[ref:vocab/zh]` or `[ref:vocab/ru]` when camera wording must be multilingual. + ## Camera Contract State: shot scale, angle, movement, speed, subject relationship, and endpoint. A prompt-ready camera phrase should be physically possible and tied to the subject's action. @@ -34,6 +36,10 @@ State: shot scale, angle, movement, speed, subject relationship, and endpoint. A | Instability | `subtle handheld shoulder camera, small breathing sway, subject kept centered` | `shaky chaotic camera everywhere` | | Precision detail | `locked macro shot, focus stays on the watch gears while the second hand clicks once` | `cool close-up details` | +## Lens and Framing Anchors + +Use lens anchors only when they improve direction: `24mm wide lens for spatial energy`, `35mm natural street perspective`, `50mm portrait compression`, `85mm shallow close-up`, or `macro lens for material detail`. Pair lens words with subject distance and motion; do not stack lens numbers as decoration. + ## Move Selection Use **locked-off** shots for lip-sync, product identity, and delicate VFX. Use **dolly-in** for discovery or realization. Use **tracking** for travel, pursuit, and product motion. Use **orbit** only when the subject can remain clear from all sides. Use **crane or drone** for scale, arrival, or reveal. Use **handheld** only when realism matters more than precision. @@ -42,6 +48,8 @@ Use **locked-off** shots for lip-sync, product identity, and delicate VFX. Use * For multi-character scenes, anchor the camera to named tags: `camera holds Character A in foreground while Character B crosses behind`. For I2V, preserve the image composition unless the user explicitly wants a reframing. For reference video, state whether `[Video1]` transfers camera movement, action rhythm, or blocking; do not let it transfer identity unless authorized. +For complex camera movement, a video reference often works better than a long verbal stack. Use `[Video1] controls camera rhythm only; do not transfer performer, room, logo, or identity`. + ## Conflict Rule If the user gives several incompatible moves, choose one primary camera move and put the rest into optional variants. If the shot needs multiple beats, recommend splitting into separate clips or a time-segmented prompt. diff --git a/skills/seedance-characters/SKILL.md b/skills/seedance-characters/SKILL.md index 00202b6..8c4f157 100644 --- a/skills/seedance-characters/SKILL.md +++ b/skills/seedance-characters/SKILL.md @@ -9,7 +9,7 @@ tags: - consistency - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-copyright/SKILL.md b/skills/seedance-copyright/SKILL.md index 2a61fbd..3ee6721 100644 --- a/skills/seedance-copyright/SKILL.md +++ b/skills/seedance-copyright/SKILL.md @@ -10,7 +10,7 @@ tags: - safety - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -41,6 +41,8 @@ Preserve the scene function, genre, mood, camera logic, emotional beat, and prod If the user clearly owns the brand, asset, or likeness rights, keep the authorized elements but still preserve them with explicit constraints. If authorization is unclear, ask a short confirmation or provide a safe original rewrite. Do not assume rights from an uploaded image, song, or video. +For real human faces, portraits, or voices, separate three questions: does the active surface support the input, does the user have authorization, and does the prompt avoid imitation of a public figure or private person without consent. Some surfaces use verified virtual portrait assets or authorization flows; do not collapse those into a universal allow or deny rule. + ## Safe Replacement Example Instead of a named superhero swinging through a recognizable franchise city, write: `original masked rooftop courier in a red weatherproof jacket leaps between rain-slick buildings, low handheld tracking camera, blue police lights far below, no logos or franchise symbols`. diff --git a/skills/seedance-examples-zh/SKILL.md b/skills/seedance-examples-zh/SKILL.md index 64b917f..248f1de 100644 --- a/skills/seedance-examples-zh/SKILL.md +++ b/skills/seedance-examples-zh/SKILL.md @@ -8,7 +8,7 @@ tags: - examples - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-filter/SKILL.md b/skills/seedance-filter/SKILL.md index d5079b0..1ae63fe 100644 --- a/skills/seedance-filter/SKILL.md +++ b/skills/seedance-filter/SKILL.md @@ -8,7 +8,7 @@ tags: - safe-rewrite - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -47,6 +47,8 @@ If the user's request is unsafe, refuse or redirect to a safe alternative. If it Do not provide filter-bypass, evasion, or hidden-word tactics. The safe path is to clarify production intent, remove unsafe identity or harm elements, and rewrite into an original authorized scene. +Face-limit or portrait-verification workarounds are not safe prompt tricks. If a surface offers sanctioned virtual portrait, trusted model-output, or authorization asset flows, route the user to those current official paths instead of evasion language. + Load `[ref:filter-vocab]` for safer substitutions. ## Output Contract diff --git a/skills/seedance-interview-short/SKILL.md b/skills/seedance-interview-short/SKILL.md index 58c6e64..94ed0cd 100644 --- a/skills/seedance-interview-short/SKILL.md +++ b/skills/seedance-interview-short/SKILL.md @@ -9,7 +9,7 @@ tags: - compression - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-interview/SKILL.md b/skills/seedance-interview/SKILL.md index b01e7ff..420220e 100644 --- a/skills/seedance-interview/SKILL.md +++ b/skills/seedance-interview/SKILL.md @@ -9,7 +9,7 @@ tags: - brief - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-lighting/SKILL.md b/skills/seedance-lighting/SKILL.md index 0a69b7b..0db99ca 100644 --- a/skills/seedance-lighting/SKILL.md +++ b/skills/seedance-lighting/SKILL.md @@ -8,7 +8,7 @@ tags: - atmosphere - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-motion/SKILL.md b/skills/seedance-motion/SKILL.md index 9215e70..44cb29e 100644 --- a/skills/seedance-motion/SKILL.md +++ b/skills/seedance-motion/SKILL.md @@ -9,7 +9,7 @@ tags: - physics - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -23,6 +23,8 @@ metadata: Use physical verbs and consequences. Motion should be observable on screen, timed within the clip, and assigned to a subject or object. Prefer one strong action with a visible endpoint over several vague actions competing for attention. +Load `[ref:reference-workflow]` for video-motion references and `[ref:examples-by-mode]` for safe edit, extend, and R2V patterns. + ## Motion Contract State: actor/object, action, force level, timing, physical consequence, continuity requirement, and endpoint. @@ -39,6 +41,8 @@ State: actor/object, action, force level, timing, physical consequence, continui Use a three-beat structure for short clips: setup, action, changed end state. Example: `0-2s: candle flame steady; 2-4s: door opens and flame bends; 4-6s: smoke trail curls toward the hallway`. Time segmentation is useful for action, VFX, lip-sync, and product demonstrations, but avoid frame-perfect overload unless the user truly needs it. +When sound drives the motion, pair each visible change with one beat or SFX: `door click at 2s, light pulse on the downbeat, hand releases the cup on the final chime`. Do not ask for many cuts, locations, and micro-actions inside one short clip. + ## Reference Motion Rules For reference footage, use only owned, licensed, public-domain, stock, mocap, rehearsal, or self-recorded material. Map `[Video1]` to motion, camera, timing, or blocking, not identity, unless the identity is authorized. If a reference contains a real person, transfer only general motion or camera behavior and explicitly exclude likeness transfer. diff --git a/skills/seedance-pipeline/SKILL.md b/skills/seedance-pipeline/SKILL.md index 0e5fff3..3a74959 100644 --- a/skills/seedance-pipeline/SKILL.md +++ b/skills/seedance-pipeline/SKILL.md @@ -9,7 +9,7 @@ tags: - integration - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -26,15 +26,17 @@ Use this for operational workflows, APIs, web surfaces, post-production, and int ## Status Rule Always load `[ref:api-status]` for current API and platform claims. Load `[ref:model-name-map]` when a user says Pro, Fast, V2, or a wrapper model ID. Do not rely on old release-status memory. +Load `[ref:api-workflow]` for implementation planning, task lifecycle, Runway/Volcengine field differences, pricing caveats, upload handling, and production readiness. ## Workflow Split 1. Web workflow: Dreamina/Jimeng surface, references, prompt, output review. -2. API workflow: BytePlus/ModelArk docs, model ID, auth, file handling, task creation, task retrieval. +2. API workflow: Volcengine, BytePlus, or Runway docs, model ID, auth, file handling, task creation, polling/querying, cancellation/deletion, task ledger, and retrieval. 3. Post workflow: stitching, audio cleanup, captions, color, upscale, delivery. 4. First/last-frame workflow: map first frame, last frame, transition action, identity locks, and ending target. -5. Community workflow: ComfyUI or unofficial nodes must be labeled community/unverified unless sourced. -6. Corpus-mining workflow: classify sources before reuse; extract structure and vocabulary, not unsafe raw prompts. +5. Runway workflow: model `seedance2`, `runway://` uploads, audio-reference combination rules, plan/region caveats, and SDK type lag are Runway-specific. +6. Community workflow: ComfyUI or unofficial nodes must be labeled community/unverified unless sourced. +7. Corpus-mining workflow: classify sources before reuse; extract structure and vocabulary, not unsafe raw prompts. ## Output Contract diff --git a/skills/seedance-prompt-short/SKILL.md b/skills/seedance-prompt-short/SKILL.md index b1e5d7d..c873d47 100644 --- a/skills/seedance-prompt-short/SKILL.md +++ b/skills/seedance-prompt-short/SKILL.md @@ -8,7 +8,7 @@ tags: - chinese-prompt - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-prompt/SKILL.md b/skills/seedance-prompt/SKILL.md index ae3ccb7..c3f01d3 100644 --- a/skills/seedance-prompt/SKILL.md +++ b/skills/seedance-prompt/SKILL.md @@ -8,7 +8,7 @@ tags: - video-generation - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -22,6 +22,8 @@ metadata: Build production-ready Seedance prompts from clear concepts or supplied reference assets. Treat the prompt as a short shooting brief: it must say what changes on screen, what the camera does, what the light and sound contribute, and what must stay stable. Keep final prompts under the platform prompt budget and remove filler before delivery. +Load `[ref:quick-ref]` for the checklist, `[ref:reference-workflow]` for multimodal references, `[ref:i2v-guide]` for image-to-video, `[ref:first-last-frame-guide]` for first/last-frame work, and `[ref:examples-by-mode]` when examples are useful. + ## Director Formula Use `Subject + Action + Scene + Camera + Lighting/Style + Audio + Constraints`. Put the subject and primary action first because early clauses set the shot hierarchy. Do not force every slot if a reference asset already shows the information; for I2V, describe only the motion, camera, timing, transformation, audio, and preservation constraints that the still image cannot show. @@ -38,7 +40,7 @@ Use `Subject + Action + Scene + Camera + Lighting/Style + Audio + Constraints`. ## Mode Gate -Choose the mode before drafting. **T2V** needs subject, action, scene, camera, light, style, and constraints because nothing is visible yet. **I2V** starts from `[Image1]` and adds only motion, time, camera, lighting transition, audio, and preservation. **V2V** should map `[Video1]` to a role such as camera move, action rhythm, blocking, or atmosphere rather than accidentally transferring identity. **R2V** must list every reference role and state what must not transfer. **FLF2V** uses `[Image1]` as first frame and `[Image2]` as last frame, then describes only the continuous transition. +Choose the mode before drafting. **T2V** needs subject, action, scene, camera, light, style, and constraints because nothing is visible yet. **I2V** starts from `[Image1]` and adds only motion, time, camera, lighting transition, audio, and preservation. **V2V** should map `[Video1]` to source clip, camera move, action rhythm, blocking, edit target, or extension anchor rather than accidentally transferring identity. **R2V** must list every reference role and state what must not transfer. **FLF2V** uses `[Image1]` as first frame and `[Image2]` as last frame, then describes only the continuous transition. | Mode | Drafting priority | Common mistake | Repair | |---|---|---|---| @@ -47,6 +49,8 @@ Choose the mode before drafting. **T2V** needs subject, action, scene, camera, l | V2V | Transfer motion, camera, or timing. | Copying unauthorized likeness or scene details. | Use owned/licensed/authorized references and restrict transfer role. | | R2V | Assign separate roles to each asset. | One reference asked to control identity, pose, scene, and style. | Split roles or prioritize the most important role. | | FLF2V | Move from first frame to last frame. | Treating the last frame as vague mood instead of endpoint. | State `[Image2]` is the final visual target. | +| Edit | Preserve the source clip while changing one layer. | Rewriting the whole scene and losing continuity. | Say `[Video1] is the source clip; change only...` | +| Extend | Continue from the existing final state. | Starting a new scene after the clip. | Use the last frame as continuity anchor and change one variable. | ## Prompt Build Process @@ -60,7 +64,7 @@ When the prompt is too long, cut in this order: duplicate style adjectives, gene Return: -1. Mode: T2V, I2V, V2V, or R2V. +1. Mode: T2V, I2V, V2V, R2V, FLF2V, edit, or extend. 2. Reference role map, if any. 3. Final prompt under 2000 characters. 4. Optional Chinese compressed version when useful. diff --git a/skills/seedance-recipes/SKILL.md b/skills/seedance-recipes/SKILL.md index e1b9a93..d1843c3 100644 --- a/skills/seedance-recipes/SKILL.md +++ b/skills/seedance-recipes/SKILL.md @@ -9,7 +9,7 @@ tags: - recipes - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -23,6 +23,8 @@ metadata: Use recipes as starting patterns, not rigid prompt templates. Pick the recipe that matches the user's outcome, then customize subject, action, camera, lighting, audio, and constraints. Recipes should preserve the one-beat discipline of a short clip. +Load `[ref:genre-guides]` for genre patterns and `[ref:examples-by-mode]` when the user needs copy-ready examples. + ## Recipe Families | Family | Best use | Core pattern | diff --git a/skills/seedance-style/SKILL.md b/skills/seedance-style/SKILL.md index eba0619..352e555 100644 --- a/skills/seedance-style/SKILL.md +++ b/skills/seedance-style/SKILL.md @@ -9,7 +9,7 @@ tags: - ip-safe - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-troubleshoot/SKILL.md b/skills/seedance-troubleshoot/SKILL.md index cd558d0..1786d23 100644 --- a/skills/seedance-troubleshoot/SKILL.md +++ b/skills/seedance-troubleshoot/SKILL.md @@ -8,7 +8,7 @@ tags: - troubleshooting - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" @@ -22,6 +22,8 @@ metadata: Diagnose failure before rewriting. Do not simply add more adjectives. Identify whether the failure came from mode mismatch, overload, ambiguity, fragile identity, unsafe wording, unsupported platform behavior, or missing preservation constraints. +Load `[ref:field-observed-tips]`, `[ref:reference-workflow]`, and `[ref:api-workflow]` when the failure involves continuation, edit/extend, source clips, audio references, or platform-specific errors. + ## Diagnostic Tree | Symptom | Likely cause | First repair | @@ -33,6 +35,9 @@ Diagnose failure before rewriting. Do not simply add more adjectives. Identify w | Lip-sync poor | Moving head/camera, long dialogue, unassigned speaker. | Lock framing, shorten line, assign speaker. | | VFX noisy | Effect has no source, physics, or dissipation. | Add source, material, path, interaction, and endpoint. | | Prompt blocked | Protected IP, real-person, graphic, or bypass-like wording. | Rewrite intent in safe production language without evasion. | +| Extension quality degrades | No last-frame anchor or too many new variables across continuations. | Use returned last frame as first frame and change one variable. | +| Audio reference ignored | Competing video sound, no visual beat mapping, or unsupported combo. | Mute competing video and map one visible event to the beat. | +| Text/logos break | Small text asked to move or be redrawn. | Keep text static, centered, and protected; animate light around it. | ## Repair Process @@ -46,6 +51,8 @@ First quote the failing phrase or missing element. Then name the root cause. Nex If the same error repeats, split the scene into shorter clips, reduce characters, simplify hand or face motion, use stronger reference role mapping, or change the mode. For unstable text/logos, keep them static, centered, and protected; do not ask the model to redraw small text during motion. +For edit/extend failures, preserve the source clip first and change only the failing layer. If a surface supports returned last frames, use that still as the next first-frame anchor before extending. + ## Output Contract Return root cause, evidence from the prompt or result, repaired prompt, and one conservative retry variant. diff --git a/skills/seedance-vfx/SKILL.md b/skills/seedance-vfx/SKILL.md index e77c5ae..28e475c 100644 --- a/skills/seedance-vfx/SKILL.md +++ b/skills/seedance-vfx/SKILL.md @@ -9,7 +9,7 @@ tags: - effects - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-vocab-es/SKILL.md b/skills/seedance-vocab-es/SKILL.md index be366f4..165883f 100644 --- a/skills/seedance-vocab-es/SKILL.md +++ b/skills/seedance-vocab-es/SKILL.md @@ -8,7 +8,7 @@ tags: - vocabulary - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-vocab-ja/SKILL.md b/skills/seedance-vocab-ja/SKILL.md index 21263e5..ebf490f 100644 --- a/skills/seedance-vocab-ja/SKILL.md +++ b/skills/seedance-vocab-ja/SKILL.md @@ -8,7 +8,7 @@ tags: - vocabulary - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-vocab-ko/SKILL.md b/skills/seedance-vocab-ko/SKILL.md index de7ce74..8c1f2ef 100644 --- a/skills/seedance-vocab-ko/SKILL.md +++ b/skills/seedance-vocab-ko/SKILL.md @@ -8,7 +8,7 @@ tags: - vocabulary - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-vocab-ru/SKILL.md b/skills/seedance-vocab-ru/SKILL.md index 59d32e1..7b5c8cd 100644 --- a/skills/seedance-vocab-ru/SKILL.md +++ b/skills/seedance-vocab-ru/SKILL.md @@ -8,7 +8,7 @@ tags: - vocabulary - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)" diff --git a/skills/seedance-vocab-zh/SKILL.md b/skills/seedance-vocab-zh/SKILL.md index 5542b33..58feded 100644 --- a/skills/seedance-vocab-zh/SKILL.md +++ b/skills/seedance-vocab-zh/SKILL.md @@ -8,7 +8,7 @@ tags: - vocabulary - seedance-20 metadata: - version: "5.4.1" + version: "5.4.2" updated: "2026-05-30" parent: "seedance-20" author: "Iamemily2050 (@iamemily2050)"