Structure Screenplay
Convert source text into production-oriented structure without changing story facts.
Inputs
Read the shared request envelope and validate payload against schemas/input.schema.json.
Require:
payload.script_textproject.id
Treat project metadata, target scope, and prior checkpoints as constraints, not story evidence.
Workflow
- Preserve the supplied text as the authoritative source.
- Split it into scenes using explicit headings when available and conservative inference otherwise.
- Split each scene into narrative units when location, time, objective, or dramatic condition changes.
- Describe the rhythm curve from observable changes in pressure, pace, emotion, and information.
- Segment units into beats with stable IDs and source ranges.
- Add production facts for characters, locations, props, dialogue, action, sound, and continuity.
- Record uncertain interpretation as diagnostics instead of silently completing missing facts.
- Preserve completed stages when later work fails or a retry targets only selected IDs.
Output rules
Return the shared result envelope with:
skill: structure-screenplaydata.scenesdata.unitsdata.beatsdata.rhythm_curvedata.progress
Every unit and beat must include a stable ID and at least one source reference. Never discard valid earlier-stage output because a later stage is partial.
Use completed only when every requested stage is complete. Use partial when useful structure exists but detail is incomplete. Use blocked when required source text is absent.
Boundaries
- Do not rewrite dialogue or invent events.
- Do not infer visual design details that are not needed for structural clarity.
- Do not create shot choices.
- Do not merge distinct characters or locations solely because their names are similar.
Read references/field-guide.md when assigning IDs, source ranges, or production facts.