]> git.giacomolli.uk - onechat/blobdiff - subagent.go
Show styled replies only on terminal output
[onechat] / subagent.go
index 596c03818510460456b8cbead078bf0051aeee3f..132ca475fe8d525f91a2d452fba8ff8451b02fe9 100644 (file)
@@ -130,8 +130,10 @@ func (s *Subagents) Close() error {
        defer s.mutex.Unlock()
 
        var err error
+
        for name, subagent := range s.open {
                err = errors.Join(err, subagent.close())
+
                delete(s.open, name)
        }
 
@@ -169,6 +171,14 @@ func (a *Subagent) Flush(ctx context.Context) error {
        return a.syncer.Flush(ctx)
 }
 
+// First returns the first message of the log.
+func (a *Subagent) First() (Message, error) {
+       a.mutex.Lock()
+       defer a.mutex.Unlock()
+
+       return a.log.Message(0)
+}
+
 // Show returns the whole log, each message as "i|kind: text", with a blank line
 // between messages.
 func (a *Subagent) Show() (string, error) {