ScramboPython SDK

Artifacts

Immutable Artifact and ValidationReport results and how caching uses them.

Agent calls return immutable Artifact objects. They are useful results for inspection, validation, logging, and compatibility APIs. The normal Source Work → Planner Compile → Author flow hands off through the current run directory, so it does not require passing artifacts between those calls.

from scrambo import Artifact, ValidationReport
Field or methodMeaning
nameThe stage name supplied by your program.
kindThe kind of agent task that produced it.
execution_idThe unique accepted execution of that task.
resultStructured result data, such as result["brief"], result["plan"], or generated media records.
llm_invokedWhether this result required a model call.
cachedWhether Scrambo reused matching prior work.
input_ref()A compact compatibility reference for APIs that explicitly accept an artifact.

ValidationReport adds:

Field or methodMeaning
passedTrue when all selected validators passed.
findingsStructured findings suitable for logging or custom routing.
mdA readable Markdown report.
require_passed()Raises ScramboValidationError if the report failed.

Stable prompts and stable stage names allow Scrambo to reuse work when inputs and upstream artifacts have not changed. A changed prompt, media input, base timeline revision, model setting, or upstream artifact creates new work. Treat caching as an optimization, not as program state: always express the complete intent needed by the call.