screenplay_snapshot_apply
Use when the user has exact text or block changes to save: replace, insert or delete text/blocks, update block metadata, or replace a scene from Fountain/plain text. Read current base_rev and scene/block IDs with screenplay_read first. This directly changes current pages without AI rewriting. Generate passage edits with screenplay_edit_propose; apply a reviewed supplied-text draft with screenplay_draft_apply. Wait for active screenplay generation to finish first.
When to use
- Use after `screenplay_read` when you know the current `base_rev`, target scene/block IDs, and the exact mutation to apply.
- Use for direct block-level edits such as replacing text, inserting text, deleting text, deleting a block, inserting a new block, or updating block metadata such as dialogue character display.
- Use `replace_scene_from_text` when the caller has exact Fountain/plain screenplay text and wants to replace one existing scene's editor blocks without creative rewriting.
When not to use
- Do not use for natural-language requests like "make this dialogue sharper"; use `screenplay_edit_propose` then `screenplay_edit_apply`.
- Do not use `screenplay_rewrite_run` for exact known replacement text; reserve rewrite proposals for creative direction-driven changes.
- Do not use raw legacy editor operation objects; use the snapshot mutation operations exposed by this tool.
- Do not use while `screenplay_generation_run` is still generating screenplay prose for the same project; poll `job_get` first.
Examples
- “Replace block `block_abc` with this exact revised action line.”
- “Delete block `block_abc` from snapshot revision 42.”
- “Insert an action block after `block_abc` in scene `scene_123`.”
- “Update dialogue block `block_abc` so its character display is `LESTRADE`.”
- “Replace scene `scene_123` from exact Fountain text using `replace_scene_from_text`.”
Anti-examples
- Rewrite this whole scene in a darker tone.
- Apply this raw `updateText` op.
Backend capabilities
screenplay.snapshot_apply
Linked resources
Tool calls may return resource_links pointing at these resource families.
Input schema
screenplay_snapshot_apply input
{
"$ref": "./screenplay.snapshot_apply.input.json"
}Output schema
screenplay_snapshot_apply output
{
"$ref": "./screenplay.snapshot_apply.output.json"
}← All toolsv1 · mutate_tool