Docs target current release v0.7.0.v0.7.1 is under review

Forked debugging

The loop is inspect, choose an intervention point, continue through a compatible runtime, and compare. Forking preserves provenance; it does not recreate missing code or credentials.

Inspect first

Terminal
tine show failed.tine
tine verify failed.tine
tine cost failed.tine

Continue

debug.py
1from opentine import Agent, Run
2from opentine.models.anthropic import Anthropic
3
4failed = Run.load("failed.tine")
5for step in failed.steps:
6    if step.kind.value == "error":
7        print(step.short_id, step.error, step.outputs)
8
9last_good = failed.steps[4]  # choose after inspecting lineage
10agent = Agent(model=Anthropic("claude-sonnet-5"), tools=[])
11fixed = agent.resume_sync(
12    failed,
13    from_step=last_good.id,
14    prompt="Continue with the recorded failure as a constraint.",
15)
16fixed.save("fixed.tine")

Replace the empty tool list with compatible, scoped tool callables when the continuation requires them.

Compare

Terminal
tine diff failed.tine fixed.tine

Use the last semantically valid step, not automatically the step before an error.