Versions in this module Expand all Collapse all v0 v0.5.0 Sep 30, 2026 v0.4.0 Sep 30, 2026 Changes in this version + type Block interface + Focusable func() bool + Update func(msg tea.Msg) (Block, tea.Cmd) + View func(width int, focused bool) string + type EntityBlock interface + Current func() *entity.Ref + type Entry struct + Block Block + ID string + Markdown bool + Role Role + Text string + type EscCapturer interface + CapturesEsc func() bool + type MarkdownRenderer func(text string, width int) string + type Model struct + func New(opts ...Option) *Model + func (m *Model) Append(e Entry) + func (m *Model) AppendDelta(id, text string) + func (m *Model) AppendDeltaNoRender(id, text string) + func (m *Model) Blur() + func (m *Model) CapturesEsc() bool + func (m *Model) Clear() + func (m *Model) Current() *entity.Ref + func (m *Model) DeliverWheelToFocusedBlock(msg tea.MouseWheelMsg) (consumed bool, cmd tea.Cmd) + func (m *Model) Entries() []Entry + func (m *Model) Focus(stop int) + func (m *Model) FocusedBlock() Block + func (m *Model) FocusedEntry() *Entry + func (m *Model) InvalidateAndRebuild(id string) + func (m *Model) Rebuild(scrollToBottom bool) + func (m *Model) ReplaceBlock(id string, b Block) + func (m *Model) ScrollDown(lines int) + func (m *Model) ScrollUp(lines int) + func (m *Model) SetMarkdownRenderer(r MarkdownRenderer) + func (m *Model) SetSize(width, height int) + func (m *Model) StopForID(id string) int + func (m *Model) Stops() int + func (m *Model) Update(msg tea.Msg) tea.Cmd + func (m *Model) View() string + type Option func(*Model) + func WithMarkdownRenderer(r MarkdownRenderer) Option + type Role string + const RoleAssistant + const RoleSystem + const RoleUser + type Roled interface + Role func() theme.Role + type SelfFramed interface + SelfFramed func() bool + type Targeted interface + TargetEntryID func() string + type Titled interface + Title func() string + type WheelConsumer interface + ConsumesWheel func(msg tea.MouseWheelMsg) bool