@@ -36,13 +36,14 @@ var downloadDescription []byte
37func NewDownloadTool(permissions permission.Service, workingDir string, client *http.Client) fantasy.AgentTool {
37func NewDownloadTool(permissions permission.Service, workingDir string, client *http.Client) fantasy.AgentTool {
38 if client == nil {
38 if client == nil {
39+ transport := http.DefaultTransport.(*http.Transport).Clone()
40+ transport.MaxIdleConns = 100
41+ transport.MaxIdleConnsPerHost = 10
42+ transport.IdleConnTimeout = 90 * time.Second
39 client = &http.Client{
44 client = &http.Client{
40− Timeout: 5 * time.Minute, // Default 5 minute timeout for downloads
45+ Timeout: 5 * time.Minute, // Default 5 minute timeout for downloads
41− Transport: &http.Transport{
46+ Transport: transport,
43− MaxIdleConnsPerHost: 10,
44− IdleConnTimeout: 90 * time.Second,
48 return fantasy.NewParallelAgentTool(
49 return fantasy.NewParallelAgentTool(