go.bigb.es/claudio
Types
type Entry struct { Kind EntryKind Time time.Time Label string // short summary for the list Content string // full raw text SepAfter bool // render a visual separator after this entry in the list // Structured HTTP fields (populated for request/response kinds). RequestLine string // e.g. "POST /v1/messages HTTP/1.1" or "HTTP/2.0 200 OK" Headers []Header // parsed headers Body string // pretty-printed JSON body (if available), otherwise raw body // Structured stream fields (populated for KindStream). Stream *StreamData }
type EntryKind int
EntryKind classifies a log entry.
const ( KindSlog EntryKind = iota // time=... level=... structured log line (fallback) KindInfo // level=INFO KindWarn // level=WARN KindError // level=ERROR KindDebug // level=DEBUG KindIncoming // INCOMING REQUEST from Claude Code KindOutgoing // OUTGOING REQUEST to upstream API KindResponse // UPSTREAM RESPONSE KindStream // STREAM RESPONSE FROM UPSTREAM )
func (k EntryKind) IsSlog() bool
IsSlog returns true for any slog-derived entry kind.
type Header struct { Key string Value string }
Header is a parsed HTTP header key-value pair.
type Model struct { // contains filtered or unexported fields }
Model is the bubbletea model for the log reader TUI.
type StreamData struct { Model string Thinking string // reassembled reasoning content Content string // reassembled output content Chunks int Usage *StreamUsage StopReason string }
StreamData holds parsed SSE stream information.
type StreamUsage struct { PromptTokens int `json:"prompt_tokens"` CompletionTokens int `json:"completion_tokens"` TotalTokens int `json:"total_tokens"` CachedTokens int `json:"cached_tokens,omitempty"` }
StreamUsage holds token usage from the stream.
Entry is a single parsed log entry.