(req dto.AgentIDReq)
| 884 | } |
| 885 | |
| 886 | func (a AgentService) GetModelConfig(req dto.AgentIDReq) (*dto.AgentModelConfig, error) { |
| 887 | agent, err := agentRepo.GetFirst(repo.WithByID(req.AgentID)) |
| 888 | if err != nil { |
| 889 | return nil, err |
| 890 | } |
| 891 | if agent.AgentType == constant.AppHermesAgent { |
| 892 | cfg, err := readHermesConfig(agent.ConfigPath) |
| 893 | if err != nil { |
| 894 | return nil, err |
| 895 | } |
| 896 | account, err := agentAccountRepo.GetFirst(repo.WithByID(agent.AccountID)) |
| 897 | if err != nil { |
| 898 | return nil, err |
| 899 | } |
| 900 | accountModels, err := loadAgentAccountModels(account) |
| 901 | if err != nil { |
| 902 | return nil, err |
| 903 | } |
| 904 | model, err := resolveHermesConfiguredModelID(account, accountModels, cfg.Model.Default) |
| 905 | if err != nil { |
| 906 | return nil, err |
| 907 | } |
| 908 | return &dto.AgentModelConfig{ |
| 909 | AccountID: agent.AccountID, |
| 910 | Model: model, |
| 911 | Fallbacks: []string{}, |
| 912 | }, nil |
| 913 | } |
| 914 | agent, _, conf, err := a.loadOpenclawAgentConfig(req.AgentID) |
| 915 | if err != nil { |
| 916 | return nil, err |
| 917 | } |
| 918 | account, err := agentAccountRepo.GetFirst(repo.WithByID(agent.AccountID)) |
| 919 | if err != nil { |
| 920 | return nil, err |
| 921 | } |
| 922 | models, err := loadAgentAccountModels(account) |
| 923 | if err != nil { |
| 924 | return nil, err |
| 925 | } |
| 926 | model := extractOpenclawPrimaryModelID(conf, account, models) |
| 927 | if model == "" { |
| 928 | model = agent.Model |
| 929 | } |
| 930 | return &dto.AgentModelConfig{ |
| 931 | AccountID: agent.AccountID, |
| 932 | Model: model, |
| 933 | Fallbacks: extractOpenclawFallbackModelIDs(conf, account, models, model), |
| 934 | }, nil |
| 935 | } |
| 936 | |
| 937 | func (a AgentService) UpdateModelConfig(req dto.AgentModelConfigUpdateReq) error { |
| 938 | agent, err := agentRepo.GetFirst(repo.WithByID(req.AgentID)) |
nothing calls this directly
no test coverage detected