diff --git a/services/actions/browseragentrunner.go b/services/actions/browseragentrunner.go index 701f5d7..f339caf 100644 --- a/services/actions/browseragentrunner.go +++ b/services/actions/browseragentrunner.go @@ -25,7 +25,18 @@ func NewBrowserAgentRunner(config map[string]string, defaultURL string) *Browser config["baseURL"] = defaultURL } - client := api.NewClient(config["baseURL"], 15*time.Minute) + timeout := "15m" + if config["timeout"] != "" { + timeout = config["timeout"] + } + + duration, err := time.ParseDuration(timeout) + if err != nil { + // If parsing fails, use default 15 minutes + duration = 15 * time.Minute + } + + client := api.NewClient(config["baseURL"], duration) return &BrowserAgentRunner{ client: client, @@ -118,5 +129,12 @@ func BrowserAgentRunnerConfigMeta() []config.Field { Type: config.FieldTypeText, HelpText: "Custom name for this action", }, + { + Name: "timeout", + Label: "Client Timeout", + Type: config.FieldTypeText, + Required: false, + HelpText: "Client timeout duration (e.g. '15m', '1h'). Defaults to '15m' if not specified.", + }, } } diff --git a/services/actions/deepresearchrunner.go b/services/actions/deepresearchrunner.go index ef3c0f0..68902d6 100644 --- a/services/actions/deepresearchrunner.go +++ b/services/actions/deepresearchrunner.go @@ -25,7 +25,18 @@ func NewDeepResearchRunner(config map[string]string, defaultURL string) *DeepRes config["baseURL"] = defaultURL } - client := api.NewClient(config["baseURL"], 15*time.Minute) + timeout := "15m" + if config["timeout"] != "" { + timeout = config["timeout"] + } + + duration, err := time.ParseDuration(timeout) + if err != nil { + // If parsing fails, use default 15 minutes + duration = 15 * time.Minute + } + + client := api.NewClient(config["baseURL"], duration) return &DeepResearchRunner{ client: client, @@ -126,5 +137,12 @@ func DeepResearchRunnerConfigMeta() []config.Field { Type: config.FieldTypeText, HelpText: "Custom name for this action", }, + { + Name: "timeout", + Label: "Client Timeout", + Type: config.FieldTypeText, + Required: false, + HelpText: "Client timeout duration (e.g. '15m', '1h'). Defaults to '15m' if not specified.", + }, } }