@@ -132,6 +132,13 @@ func (c *coordinator) Run(ctx context.Context, sessionID string, prompt string,
mergedOptions, temp, topP, topK, freqPenalty, presPenalty := mergeCallOptions(model, providerCfg)
+ if providerCfg.OAuthToken != nil && providerCfg.OAuthToken.IsExpired() {
+ slog.Info("Token needs to be refreshed", "provider", providerCfg.ID)
+ if err := c.refreshOAuth2Token(ctx, providerCfg); err != nil {
+ return nil, err
+ }
+ }
+
run := func() (*fantasy.AgentResult, error) {
return c.currentAgent.Run(ctx, SessionAgentCall{
SessionID: sessionID,