pub enum ClaudeRecord {
Show 16 variants
User {
message: Message,
meta: RecordMeta,
},
Assistant {
message: Message,
meta: RecordMeta,
},
System {
subtype: Option<String>,
extra: ExtraFields,
},
Attachment {
extra: ExtraFields,
},
FileHistorySnapshot {
extra: ExtraFields,
},
AiTitle {
extra: ExtraFields,
},
PermissionMode {
extra: ExtraFields,
},
Mode {
extra: ExtraFields,
},
LastPrompt {
extra: ExtraFields,
},
QueueOperation {
extra: ExtraFields,
},
PrLink {
extra: ExtraFields,
},
AgentName {
extra: ExtraFields,
},
Started {
extra: ExtraFields,
},
Result {
extra: ExtraFields,
},
WorktreeState {
extra: ExtraFields,
},
Unknown,
}Expand description
One line of a Claude Code transcript.
Variants§
User
A user turn (plain text, or an array of content blocks incl. tool results).
Fields
meta: RecordMetaConversation-graph links and metadata.
Assistant
An assistant turn (text, thinking, and/or tool calls).
Fields
meta: RecordMetaConversation-graph links and metadata.
System
A system event (subtypes: compact_boundary, turn_duration,
api_error, away_summary, stop_hook_summary, …).
Attachment
An attachment record (pasted/added files, images, command output).
Fields
extra: ExtraFieldsAnything (shape varies widely).
FileHistorySnapshot
A file-state snapshot enabling edit undo.
Fields
extra: ExtraFieldsAnything.
AiTitle
Generated conversation title.
Fields
extra: ExtraFieldsAnything.
PermissionMode
Permission-mode marker.
Fields
extra: ExtraFieldsAnything.
Mode
Mode marker.
Fields
extra: ExtraFieldsAnything.
LastPrompt
The last typed prompt (UI restore).
Fields
extra: ExtraFieldsAnything.
QueueOperation
Prompt-queue operation (UI).
Fields
extra: ExtraFieldsAnything.
PrLink
PR link metadata.
Fields
extra: ExtraFieldsAnything.
AgentName
Subagent name marker.
Fields
extra: ExtraFieldsAnything.
Started
Subagent task start marker.
Fields
extra: ExtraFieldsAnything.
Result
Subagent task result marker.
Fields
extra: ExtraFieldsAnything.
WorktreeState
Git worktree state marker.
Fields
extra: ExtraFieldsAnything.
Unknown
Any record type we do not model yet.
Implementations§
Source§impl ClaudeRecord
impl ClaudeRecord
Sourcepub fn tag(&self) -> Option<&'static str>
pub fn tag(&self) -> Option<&'static str>
The static discriminant name, or None for ClaudeRecord::Unknown.
Trait Implementations§
Source§impl Clone for ClaudeRecord
impl Clone for ClaudeRecord
Source§fn clone(&self) -> ClaudeRecord
fn clone(&self) -> ClaudeRecord
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more