@@ -2,6 +2,7 @@ package chat
22
33import (
44 "context"
5+ "fmt"
56 "time"
67
78 "github.com/charmbracelet/bubbles/v2/help"
@@ -649,7 +650,9 @@ func (p *chatPage) changeFocus() {
649650func (p *chatPage) cancel() tea.Cmd {
650651 if p.isCanceling {
651652 p.isCanceling = false
652− p.app.CoderAgent.Cancel(p.session.ID)
653+ if p.app.CoderAgent != nil {
654+ p.app.CoderAgent.Cancel(p.session.ID)
655+ }
653656 return nil
654657 }
655658
@@ -687,6 +690,9 @@ func (p *chatPage) sendMessage(text string, attachments []message.Attachment) te
687690 session = newSession
688691 cmds = append(cmds, util.CmdHandler(chat.SessionSelectedMsg(session)))
689692 }
693+ if p.app.CoderAgent == nil {
694+ return util.ReportError(fmt.Errorf("coder agent is not initialized - please check your configuration"))
695+ }
690696 _, err := p.app.CoderAgent.Run(context.Background(), session.ID, text, attachments...)
691697 if err != nil {
692698 return util.ReportError(err)
@@ -832,7 +838,7 @@ func (p *chatPage) Help() help.KeyMap {
832838 key.WithHelp("esc", "press again to cancel"),
833839 )
834840 }
835− if p.app.CoderAgent.QueuedPrompts(p.session.ID) > 0 {
841+ if p.app.CoderAgent != nil && p.app.CoderAgent.QueuedPrompts(p.session.ID) > 0 {
836842 cancelBinding = key.NewBinding(
837843 key.WithKeys("esc"),
838844 key.WithHelp("esc", "clear queue"),