Documentation
¶
Index ¶
- Constants
- Variables
- func CreateTextArea(existing *textarea.Model) textarea.Model
- func NewEditorCmp(app *app.App) tea.Model
- func NewGoalStatusCmp() tea.Model
- func NewMessagesCmp(app *app.App) tea.Model
- func NewSidebarCmp(session session.Session, history history.Service) tea.Model
- type BlurChatEditorMsg
- type ChatInfoSidebar
- type ChatSidebarConfigChangedMsg
- type CompactSessionMsg
- type DeleteAttachmentKeyMaps
- type EditorFocusMsg
- type EditorHeightChangedMsg
- type EditorKeyMaps
- type FocusChatEditorMsg
- type GoalState
- type GoalUpdatedMsg
- type MessageKeys
- type SendMsg
- type SessionClearedMsg
- type SessionSelectedMsg
- type ShowSlashCompletionMsg
- type TodosUpdatedMsg
Constants ¶
const RepoURL = "https://github.com/digiogithub/pando"
RepoURL is the Pando repository URL shown (and clickable) in the chat sidebar header.
Variables ¶
var DeleteKeyMaps = DeleteAttachmentKeyMaps{ AttachmentDeleteMode: key.NewBinding( key.WithKeys("ctrl+shift+r"), key.WithHelp("ctrl+shift+r+{i}", "delete attachment at index i"), ), Escape: key.NewBinding( key.WithKeys("esc"), key.WithHelp("esc", "cancel delete mode"), ), DeleteAllAttachments: key.NewBinding( key.WithKeys("r"), key.WithHelp("ctrl+r+r", "delete all attchments"), ), }
Functions ¶
func NewGoalStatusCmp ¶ added in v0.324.0
Types ¶
type BlurChatEditorMsg ¶ added in v0.3.0
type BlurChatEditorMsg struct{}
BlurChatEditorMsg is sent to the chat editor to relinquish textarea focus.
type ChatInfoSidebar ¶ added in v0.501.1
type ChatInfoSidebar interface {
tea.Model
SetSize(width, height int) tea.Cmd
GetSize() (int, int)
BindingKeys() []key.Binding
// SetSession switches the sidebar to a different session, reloading its plan
// and modified-files state.
SetSession(s session.Session)
}
ChatInfoSidebar is the embeddable session info column rendered to the right of the chat in the Chat workspace tab. It exposes the session title, configured LSPs, the current Plan (TodoWrite entries) and the files modified during the session. It satisfies layout.Container (tea.Model + Sizeable + Bindings) so it can be dropped into a SplitPaneLayout panel.
func NewChatInfoSidebar ¶ added in v0.501.1
func NewChatInfoSidebar(s session.Session, history history.Service) ChatInfoSidebar
NewChatInfoSidebar builds the embeddable chat info sidebar bound to the given session and history service.
type ChatSidebarConfigChangedMsg ¶ added in v0.501.1
type ChatSidebarConfigChangedMsg struct{}
ChatSidebarConfigChangedMsg is dispatched when the chat info sidebar configuration (enabled mode or minimum width) changes, so the chat page can rebuild its layout to show or hide the sidebar live without a restart.
type CompactSessionMsg ¶ added in v0.410.1
type CompactSessionMsg struct{}
CompactSessionMsg requests a manual compaction of the current session.
type DeleteAttachmentKeyMaps ¶
type EditorFocusMsg ¶
type EditorFocusMsg bool
type EditorHeightChangedMsg ¶ added in v0.416.13
type EditorHeightChangedMsg struct {
Lines int
}
EditorHeightChangedMsg is emitted by the editor when its line count changes. Lines is clamped to [1, 10].
type EditorKeyMaps ¶
type FocusChatEditorMsg ¶ added in v0.3.0
type FocusChatEditorMsg struct{}
FocusChatEditorMsg is sent to the chat editor to request textarea focus.
type GoalState ¶ added in v0.324.0
type GoalState struct {
Objective string
Status string
Iteration int64
MaxIterations int64
StartedAt int64
CompletedAt int64
HasCompletedAt bool
Progress string
NextStep string
}
GoalState is the TUI-friendly projection of the current goal/autopilot state.
func (*GoalState) IsTerminal ¶ added in v0.324.0
type GoalUpdatedMsg ¶ added in v0.324.0
GoalUpdatedMsg is dispatched when the current session goal state changes.
type MessageKeys ¶
type SendMsg ¶
type SendMsg struct {
Text string
Attachments []message.Attachment
}
type SessionClearedMsg ¶
type SessionClearedMsg struct{}
type SessionSelectedMsg ¶
type ShowSlashCompletionMsg ¶ added in v0.410.1
type ShowSlashCompletionMsg struct{}
ShowSlashCompletionMsg is emitted when "/" is typed at the start of an empty editor.
type TodosUpdatedMsg ¶ added in v0.257.0
TodosUpdatedMsg is dispatched when the TodoWrite tool updates the plan.