- {/* ---- Session import ---- */}
-
Import session
-
- Replaces the current timeline with an `opencode export` JSON file
-
-
-
-
-
-
-
- {loaded()} • {session().title || session().id} • {state.messages.length} message
- {state.messages.length === 1 ? "" : "s"}
-
-
-
-
- {issue()}
-
-
-
- {/* ---- User messages ---- */}
-
User messages
-
- Creates a new turn (user + empty assistant)
-
-
-
- {(key) => (
-
- )}
-
-
-
-
-
-
- {/* ---- Text and reasoning blocks ---- */}
-
Text and reasoning blocks
-
- Appends to the last turn's assistant parts
-
-
-
- {(key) => (
-
- )}
-
-
-
-
- {/* ---- Tool calls ---- */}
-
Tool calls
-
- Appends to the last turn's assistant parts
-
-
-
- {(key) => (
-
- )}
-
-
-
- {/* ---- Composite (full turns) ---- */}
-
Composite turns
-
- Creates complete user + assistant turns
-
-
-
-
-
-
-
-
-
-
-
-