| 56 | } |
| 57 | |
| 58 | func cloneConfig(src *aghconfig.Config) aghconfig.Config { |
| 59 | return aghconfig.Config{ |
| 60 | Daemon: src.Daemon, |
| 61 | HTTP: src.HTTP, |
| 62 | Defaults: src.Defaults, |
| 63 | Agents: src.Agents, |
| 64 | Limits: src.Limits, |
| 65 | Session: src.Session, |
| 66 | Permissions: src.Permissions, |
| 67 | MCPServers: cloneMCPServers(src.MCPServers), |
| 68 | Providers: cloneProviders(src.Providers), |
| 69 | ModelCatalog: cloneModelCatalogConfig(src.ModelCatalog), |
| 70 | Sandboxes: cloneSandboxProfiles(src.Sandboxes), |
| 71 | Observability: src.Observability, |
| 72 | Log: src.Log, |
| 73 | Memory: cloneMemoryConfig(&src.Memory), |
| 74 | Skills: aghconfig.SkillsConfig{ |
| 75 | Enabled: src.Skills.Enabled, |
| 76 | DisabledSkills: append([]string(nil), src.Skills.DisabledSkills...), |
| 77 | PollInterval: src.Skills.PollInterval, |
| 78 | AllowedMarketplaceMCP: append([]string(nil), src.Skills.AllowedMarketplaceMCP...), |
| 79 | AllowedMarketplaceHooks: append([]string(nil), src.Skills.AllowedMarketplaceHooks...), |
| 80 | Marketplace: src.Skills.Marketplace, |
| 81 | }, |
| 82 | Extensions: cloneExtensionsConfig(src.Extensions), |
| 83 | Tools: aghconfig.ToolsConfig{ |
| 84 | Enabled: src.Tools.Enabled, |
| 85 | HostedMCPEnabled: src.Tools.HostedMCPEnabled, |
| 86 | DefaultMaxResultBytes: src.Tools.DefaultMaxResultBytes, |
| 87 | HostedMCP: src.Tools.HostedMCP, |
| 88 | Policy: aghconfig.ToolsPolicyConfig{ |
| 89 | ExternalDefault: src.Tools.Policy.ExternalDefault, |
| 90 | ApprovalTimeoutSeconds: src.Tools.Policy.ApprovalTimeoutSeconds, |
| 91 | TrustedSources: append([]string(nil), src.Tools.Policy.TrustedSources...), |
| 92 | }, |
| 93 | }, |
| 94 | Automation: cloneAutomationConfig(src.Automation), |
| 95 | Autonomy: src.Autonomy, |
| 96 | Hooks: aghconfig.HooksConfig{ |
| 97 | Declarations: cloneHookDecls(src.Hooks.Declarations), |
| 98 | }, |
| 99 | Network: src.Network, |
| 100 | } |
| 101 | } |
| 102 | |
| 103 | func cloneMemoryConfig(src *aghconfig.MemoryConfig) aghconfig.MemoryConfig { |
| 104 | cloned := *src |