@@ -26,17 +26,17 @@ type GenerateCmd struct {
2626func (cmd * GenerateCmd ) Run (globals * Globals ) error {
2727 return runagent (globals , func (ctx context.Context , client llm.Agent ) error {
2828 // Get the model
29- agent , ok := client .(* agent.Agent )
29+ a , ok := client .(* agent.Agent )
3030 if ! ok {
3131 return fmt .Errorf ("No agents found" )
3232 }
33- model , err := agent .GetModel (ctx , cmd .Model )
33+ model , err := a .GetModel (ctx , cmd .Model )
3434 if err != nil {
3535 return err
3636 }
3737
3838 // Create a session
39- session , err := model .Context (agent .WithStream (! cmd .NoStream ))
39+ session := model .Context (agent .WithStream (! cmd .NoStream ))
4040 if err != nil {
4141 return err
4242 }
@@ -48,21 +48,23 @@ func (cmd *GenerateCmd) Run(globals *Globals) error {
4848 return nil
4949 } else if err != nil {
5050 return err
51- } else if err := session .AppendUserPrompt (strings .TrimSpace (input )); err != nil {
52- return err
5351 }
5452
55- // Ignore empty import
56- if session .Text () == "" {
53+ // Ignore empty input
54+ input = strings .TrimSpace (input )
55+ if input == "" {
5756 continue
5857 }
5958
6059 // Feed input into the model
61- response , err := agent . Generate (ctx , model , session )
60+ response , err := session . FromUser (ctx , input )
6261 if err != nil {
6362 return err
6463 }
6564 fmt .Println (response .Text ())
65+
66+ // Update session
67+ session = response
6668 }
6769 })
6870}
0 commit comments