Common mistakes
Frequent pitfalls to avoid when writing Scrambo programs.
- Calling a facade before
editor.open(...). - Editing the timeline before
editor.start()has connected the browser. - Calling a refinement specialist before a first timeline exists.
- Passing a plain dictionary where Planner Compile or Author expects an
Artifact. - Asking Source Work to edit the timeline, or a caption specialist to restructure the whole video.
- Hiding the narration source or target duration in vague language.
- Asking for transcript-based decisions without granting
tools=[transcribe], event-grounded decisions withouttools=[detect_events], or beat-driven cutting withouttools=[detect_beats], to the specialist that must make them. - Granting
tools=[detect_beats]to Planner Compile or Author — it is accepted only by Source Work. - Expecting
planner.askto write files, compute analysis, prepare media, or change the timeline; it is deliberately read-only. - Reaching for a separate scout or prepare agent;
source.workis the single entry point for semantic selection and mechanical rendering, and it authors the run's sole source brief. - Calling a capability like
transcribe(...)ordetect_events(...)directly, or assuming a per-call grant persists to the next specialist. - Calling
masking(...)directly, passing it caller configuration, or assuming a precomputed matte is live before a timeline specialist places it. - Looking for a public SFX tool; ask
timeline.sound_agentfor sound design. - Assuming an uploaded JSON file is automatically associated with similarly named media; it remains an untrusted candidate until an enabled agent imports it.
- Passing prose to
timeline.validate(...); it accepts a selection spec or aValidationPolicy, not a natural-language prompt. - Assuming every validation group applies to every edit. Select checks relevant to the layers you actually created.
- Closing the browser tab during a run.
- Depending on programmatic export in code meant to run against the cloud API.
The most reliable programs are explicit about outcomes, keep agent responsibilities narrow, pass artifacts directly, and validate the properties that matter for the deliverable.
