refactor: replace local tool name and code variables with direct references from toolx package

This commit is contained in:
mlogclub
2026-04-14 09:51:25 +08:00
parent ceb5df87fd
commit e42b2b0f4d
6 changed files with 24 additions and 54 deletions
@@ -15,11 +15,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
AnalyzeConversationToolCode = toolx.GraphAnalyzeConversation.Code
AnalyzeConversationToolName = toolx.GraphAnalyzeConversation.Name
)
type AnalyzeConversationTool struct { type AnalyzeConversationTool struct {
conversation *models.Conversation conversation *models.Conversation
} }
@@ -29,11 +24,11 @@ func NewAnalyzeConversationTool() *AnalyzeConversationTool {
} }
func (t *AnalyzeConversationTool) Name() string { func (t *AnalyzeConversationTool) Name() string {
return AnalyzeConversationToolName return toolx.GraphAnalyzeConversation.Name
} }
func (t *AnalyzeConversationTool) Code() string { func (t *AnalyzeConversationTool) Code() string {
return AnalyzeConversationToolCode return toolx.GraphAnalyzeConversation.Code
} }
func (t *AnalyzeConversationTool) Enabled(ctx registry.Context) bool { func (t *AnalyzeConversationTool) Enabled(ctx registry.Context) bool {
@@ -49,7 +44,7 @@ func (t *AnalyzeConversationTool) Build(ctx registry.Context) (einotool.BaseTool
func (t *AnalyzeConversationTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *AnalyzeConversationTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: AnalyzeConversationToolName, Name: toolx.GraphAnalyzeConversation.Name,
Desc: "Graph Tool。用于整理当前对话摘要、识别投诉/资金/情绪等风险信号,并给出继续解答、建单或转人工的建议。", Desc: "Graph Tool。用于整理当前对话摘要、识别投诉/资金/情绪等风险信号,并给出继续解答、建单或转人工的建议。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -100,7 +95,7 @@ func (t *AnalyzeConversationTool) Info(ctx context.Context) (*schema.ToolInfo, e
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": AnalyzeConversationToolCode, "toolCode": toolx.GraphAnalyzeConversation.Code,
"sourceType": "graph", "sourceType": "graph",
}, },
}, nil }, nil
@@ -15,11 +15,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
CreateTicketConfirmToolCode = toolx.GraphCreateTicketConfirm.Code
CreateTicketConfirmToolName = toolx.GraphCreateTicketConfirm.Name
)
type CreateTicketGraphTool struct { type CreateTicketGraphTool struct {
conversation *models.Conversation conversation *models.Conversation
aiAgent *models.AIAgent aiAgent *models.AIAgent
@@ -30,11 +25,11 @@ func NewCreateTicketGraphTool() *CreateTicketGraphTool {
} }
func (t *CreateTicketGraphTool) Name() string { func (t *CreateTicketGraphTool) Name() string {
return CreateTicketConfirmToolName return toolx.GraphCreateTicketConfirm.Name
} }
func (t *CreateTicketGraphTool) Code() string { func (t *CreateTicketGraphTool) Code() string {
return CreateTicketConfirmToolCode return toolx.GraphCreateTicketConfirm.Code
} }
func (t *CreateTicketGraphTool) Enabled(ctx registry.Context) bool { func (t *CreateTicketGraphTool) Enabled(ctx registry.Context) bool {
@@ -53,7 +48,7 @@ func (t *CreateTicketGraphTool) Build(ctx registry.Context) (einotool.BaseTool,
func (t *CreateTicketGraphTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *CreateTicketGraphTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: CreateTicketConfirmToolName, Name: toolx.GraphCreateTicketConfirm.Name,
Desc: "Graph Tool。用于封装建单参数整理、用户确认、真正创建工单和结果返回的确定性流程。仅在用户明确要求建单且标题、描述已整理清楚后调用。", Desc: "Graph Tool。用于封装建单参数整理、用户确认、真正创建工单和结果返回的确定性流程。仅在用户明确要求建单且标题、描述已整理清楚后调用。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -94,7 +89,7 @@ func (t *CreateTicketGraphTool) Info(ctx context.Context) (*schema.ToolInfo, err
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": CreateTicketConfirmToolCode, "toolCode": toolx.GraphCreateTicketConfirm.Code,
"sourceType": "graph", "sourceType": "graph",
}, },
}, nil }, nil
@@ -15,11 +15,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
HandoffConversationToolCode = toolx.GraphHandoffConversation.Code
HandoffConversationToolName = toolx.GraphHandoffConversation.Name
)
type HandoffGraphTool struct { type HandoffGraphTool struct {
conversation *models.Conversation conversation *models.Conversation
aiAgent *models.AIAgent aiAgent *models.AIAgent
@@ -30,11 +25,11 @@ func NewHandoffGraphTool() *HandoffGraphTool {
} }
func (t *HandoffGraphTool) Name() string { func (t *HandoffGraphTool) Name() string {
return HandoffConversationToolName return toolx.GraphHandoffConversation.Name
} }
func (t *HandoffGraphTool) Code() string { func (t *HandoffGraphTool) Code() string {
return HandoffConversationToolCode return toolx.GraphHandoffConversation.Code
} }
func (t *HandoffGraphTool) Enabled(ctx registry.Context) bool { func (t *HandoffGraphTool) Enabled(ctx registry.Context) bool {
@@ -53,7 +48,7 @@ func (t *HandoffGraphTool) Build(ctx registry.Context) (einotool.BaseTool, error
func (t *HandoffGraphTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *HandoffGraphTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: HandoffConversationToolName, Name: toolx.GraphHandoffConversation.Name,
Desc: "Graph Tool。用于封装转人工原因整理、用户确认、真正转人工和结果返回的确定性流程。仅在用户明确要求人工客服,或你已确认必须转人工处理时调用。", Desc: "Graph Tool。用于封装转人工原因整理、用户确认、真正转人工和结果返回的确定性流程。仅在用户明确要求人工客服,或你已确认必须转人工处理时调用。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -69,7 +64,7 @@ func (t *HandoffGraphTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": HandoffConversationToolCode, "toolCode": toolx.GraphHandoffConversation.Code,
"sourceType": "graph", "sourceType": "graph",
}, },
}, nil }, nil
@@ -15,11 +15,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
PrepareTicketDraftToolCode = toolx.GraphPrepareTicketDraft.Code
PrepareTicketDraftToolName = toolx.GraphPrepareTicketDraft.Name
)
type PrepareTicketDraftTool struct { type PrepareTicketDraftTool struct {
conversation *models.Conversation conversation *models.Conversation
} }
@@ -29,11 +24,11 @@ func NewPrepareTicketDraftTool() *PrepareTicketDraftTool {
} }
func (t *PrepareTicketDraftTool) Name() string { func (t *PrepareTicketDraftTool) Name() string {
return PrepareTicketDraftToolName return toolx.GraphPrepareTicketDraft.Name
} }
func (t *PrepareTicketDraftTool) Code() string { func (t *PrepareTicketDraftTool) Code() string {
return PrepareTicketDraftToolCode return toolx.GraphPrepareTicketDraft.Code
} }
func (t *PrepareTicketDraftTool) Enabled(ctx registry.Context) bool { func (t *PrepareTicketDraftTool) Enabled(ctx registry.Context) bool {
@@ -49,7 +44,7 @@ func (t *PrepareTicketDraftTool) Build(ctx registry.Context) (einotool.BaseTool,
func (t *PrepareTicketDraftTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *PrepareTicketDraftTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: PrepareTicketDraftToolName, Name: toolx.GraphPrepareTicketDraft.Name,
Desc: "Graph Tool。用于根据当前会话和已收集信息整理工单草稿,输出建议标题、建议描述、缺失字段和追问建议。适合在真正调用 create_ticket_with_confirmation 前先整理工单内容。", Desc: "Graph Tool。用于根据当前会话和已收集信息整理工单草稿,输出建议标题、建议描述、缺失字段和追问建议。适合在真正调用 create_ticket_with_confirmation 前先整理工单内容。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -114,7 +109,7 @@ func (t *PrepareTicketDraftTool) Info(ctx context.Context) (*schema.ToolInfo, er
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": PrepareTicketDraftToolCode, "toolCode": toolx.GraphPrepareTicketDraft.Code,
"sourceType": "graph", "sourceType": "graph",
}, },
}, nil }, nil
@@ -18,11 +18,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
ToolSearchToolCode = toolx.BuiltinToolSearch.Code
ToolSearchToolName = toolx.BuiltinToolSearch.Name
)
type ToolSearchTool struct { type ToolSearchTool struct {
allowedToolCodes []string allowedToolCodes []string
} }
@@ -32,11 +27,11 @@ func NewToolSearchTool() *ToolSearchTool {
} }
func (t *ToolSearchTool) Name() string { func (t *ToolSearchTool) Name() string {
return ToolSearchToolName return toolx.BuiltinToolSearch.Name
} }
func (t *ToolSearchTool) Code() string { func (t *ToolSearchTool) Code() string {
return ToolSearchToolCode return toolx.BuiltinToolSearch.Code
} }
func (t *ToolSearchTool) Enabled(ctx registry.Context) bool { func (t *ToolSearchTool) Enabled(ctx registry.Context) bool {
@@ -54,7 +49,7 @@ func (t *ToolSearchTool) Build(ctx registry.Context) (einotool.BaseTool, error)
func (t *ToolSearchTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *ToolSearchTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: ToolSearchToolName, Name: toolx.BuiltinToolSearch.Name,
Desc: "当你需要使用当前会话允许的长尾 MCP 工具时,先调用本工具搜索合适的 toolCode;确认目标后,可再次调用本工具并传入 toolCode 与 arguments 代理执行。不要用它替代明确固定的内置流程工具。", Desc: "当你需要使用当前会话允许的长尾 MCP 工具时,先调用本工具搜索合适的 toolCode;确认目标后,可再次调用本工具并传入 toolCode 与 arguments 代理执行。不要用它替代明确固定的内置流程工具。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -85,7 +80,7 @@ func (t *ToolSearchTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": ToolSearchToolCode, "toolCode": toolx.BuiltinToolSearch.Code,
}, },
}, nil }, nil
} }
@@ -15,11 +15,6 @@ import (
orderedmap "github.com/wk8/go-ordered-map/v2" orderedmap "github.com/wk8/go-ordered-map/v2"
) )
var (
TriageServiceRequestToolCode = toolx.GraphTriageServiceRequest.Code
TriageServiceRequestToolName = toolx.GraphTriageServiceRequest.Name
)
type TriageServiceRequestTool struct { type TriageServiceRequestTool struct {
conversation *models.Conversation conversation *models.Conversation
} }
@@ -29,11 +24,11 @@ func NewTriageServiceRequestTool() *TriageServiceRequestTool {
} }
func (t *TriageServiceRequestTool) Name() string { func (t *TriageServiceRequestTool) Name() string {
return TriageServiceRequestToolName return toolx.GraphTriageServiceRequest.Name
} }
func (t *TriageServiceRequestTool) Code() string { func (t *TriageServiceRequestTool) Code() string {
return TriageServiceRequestToolCode return toolx.GraphTriageServiceRequest.Code
} }
func (t *TriageServiceRequestTool) Enabled(ctx registry.Context) bool { func (t *TriageServiceRequestTool) Enabled(ctx registry.Context) bool {
@@ -49,7 +44,7 @@ func (t *TriageServiceRequestTool) Build(ctx registry.Context) (einotool.BaseToo
func (t *TriageServiceRequestTool) Info(ctx context.Context) (*schema.ToolInfo, error) { func (t *TriageServiceRequestTool) Info(ctx context.Context) (*schema.ToolInfo, error) {
return &schema.ToolInfo{ return &schema.ToolInfo{
Name: TriageServiceRequestToolName, Name: toolx.GraphTriageServiceRequest.Name,
Desc: "Graph Tool。用于综合分析当前对话,判断应该继续解答、整理工单草稿还是转人工;当判断为建单时,会一并返回结构化工单草稿建议。", Desc: "Graph Tool。用于综合分析当前对话,判断应该继续解答、整理工单草稿还是转人工;当判断为建单时,会一并返回结构化工单草稿建议。",
ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{ ParamsOneOf: schema.NewParamsOneOfByJSONSchema(&einojsonschema.Schema{
Version: einojsonschema.Version, Version: einojsonschema.Version,
@@ -93,7 +88,7 @@ func (t *TriageServiceRequestTool) Info(ctx context.Context) (*schema.ToolInfo,
)), )),
}), }),
Extra: map[string]any{ Extra: map[string]any{
"toolCode": TriageServiceRequestToolCode, "toolCode": toolx.GraphTriageServiceRequest.Code,
"sourceType": "graph", "sourceType": "graph",
}, },
}, nil }, nil