diff --git a/backend/application/plugin/plugin.go b/backend/application/plugin/plugin.go index 4b91dbc72..bdcc79b20 100644 --- a/backend/application/plugin/plugin.go +++ b/backend/application/plugin/plugin.go @@ -74,7 +74,6 @@ func (p *PluginApplicationService) GetBotDefaultParams(ctx context.Context, req if err != nil { return nil, errorx.Wrapf(err, "GetDraftAgentToolByName failed, agentID=%d, toolName=%s", req.BotID, req.APIName) } - reqAPIParams, err := draftAgentTool.ToReqAPIParameter() if err != nil { return nil, err diff --git a/backend/crossdomain/contract/plugin/model/toolinfo.go b/backend/crossdomain/contract/plugin/model/toolinfo.go index a4ee64e6a..61d514d1a 100644 --- a/backend/crossdomain/contract/plugin/model/toolinfo.go +++ b/backend/crossdomain/contract/plugin/model/toolinfo.go @@ -50,6 +50,8 @@ type ToolInfo struct { Method *string SubURL *string Operation *Openapi3Operation + + AgentID *int64 } func (t ToolInfo) GetName() string { @@ -155,7 +157,7 @@ func (t ToolInfo) ToRespAPIParameter() ([]*common.APIParameter, error) { location: string(consts.ParamInBody), required: required[subParamName], } - apiParam, err := toAPIParameter(paramMeta, prop.Value) + apiParam, err := t.toAPIParameter(paramMeta, prop.Value) if err != nil { return nil, err } @@ -204,7 +206,7 @@ func (t ToolInfo) ToReqAPIParameter() ([]*common.APIParameter, error) { location: paramVal.In, required: paramVal.Required, } - apiParam, err := toAPIParameter(paramMeta, schemaVal) + apiParam, err := t.toAPIParameter(paramMeta, schemaVal) if err != nil { return nil, err } @@ -241,7 +243,7 @@ func (t ToolInfo) ToReqAPIParameter() ([]*common.APIParameter, error) { location: string(consts.ParamInBody), required: required[subParamName], } - apiParam, err := toAPIParameter(paramMeta, prop.Value) + apiParam, err := t.toAPIParameter(paramMeta, prop.Value) if err != nil { return nil, err } @@ -255,7 +257,7 @@ func (t ToolInfo) ToReqAPIParameter() ([]*common.APIParameter, error) { return params, nil } -func toAPIParameter(paramMeta paramMetaInfo, sc *openapi3.Schema) (*common.APIParameter, error) { +func (t ToolInfo) toAPIParameter(paramMeta paramMetaInfo, sc *openapi3.Schema) (*common.APIParameter, error) { if sc == nil { return nil, fmt.Errorf("schema is required") } @@ -281,7 +283,9 @@ func toAPIParameter(paramMeta paramMetaInfo, sc *openapi3.Schema) (*common.APIPa if sc.Default != nil { apiParam.GlobalDefault = ptr.Of(fmt.Sprintf("%v", sc.Default)) - apiParam.LocalDefault = ptr.Of(fmt.Sprintf("%v", sc.Default)) + if t.AgentID != nil { + apiParam.LocalDefault = ptr.Of(fmt.Sprintf("%v", sc.Default)) + } } if sc.Format != "" { @@ -333,7 +337,7 @@ func toAPIParameter(paramMeta paramMetaInfo, sc *openapi3.Schema) (*common.APIPa required: required[subParamName], location: paramMeta.location, } - subParam, err := toAPIParameter(subMeta, prop.Value) + subParam, err := t.toAPIParameter(subMeta, prop.Value) if err != nil { return nil, err } @@ -356,7 +360,7 @@ func toAPIParameter(paramMeta paramMetaInfo, sc *openapi3.Schema) (*common.APIPa location: paramMeta.location, required: paramMeta.required, } - subParam, err := toAPIParameter(subMeta, item) + subParam, err := t.toAPIParameter(subMeta, item) if err != nil { return nil, err } diff --git a/backend/domain/plugin/internal/dal/agent_tool_draft.go b/backend/domain/plugin/internal/dal/agent_tool_draft.go index cfc5c1ad1..d03e57114 100644 --- a/backend/domain/plugin/internal/dal/agent_tool_draft.go +++ b/backend/domain/plugin/internal/dal/agent_tool_draft.go @@ -57,6 +57,7 @@ func (a agentToolDraftPO) ToDO() *entity.ToolInfo { SubURL: &a.SubURL, Operation: a.Operation, Source: ptr.Of(bot_common.PluginFrom(a.Source)), + AgentID: ptr.Of(a.AgentID), } } diff --git a/backend/domain/plugin/internal/dal/agent_tool_version.go b/backend/domain/plugin/internal/dal/agent_tool_version.go index bdf47d657..237589ec2 100644 --- a/backend/domain/plugin/internal/dal/agent_tool_version.go +++ b/backend/domain/plugin/internal/dal/agent_tool_version.go @@ -57,6 +57,7 @@ func (a agentToolVersionPO) ToDO() *entity.ToolInfo { SubURL: &a.SubURL, Operation: a.Operation, Source: ptr.Of(bot_common.PluginFrom(a.Source)), + AgentID: ptr.Of(a.AgentID), } }