package aiopscontext import ( "context" "ezops/pkg/agentcli/tools" ) // AgentProvider 适配 Agent CLI tools.AIOpsContextProvider。 // Logan.Li type AgentProvider struct { service *Service } // NewAgentTools 返回可注册到 Agent CLI 的 AIOps 平台只读工具。 // Logan.Li func NewAgentTools(service *Service) []tools.Tool { provider := &AgentProvider{service: service} return []tools.Tool{ tools.NewAIOpsAssetSearchTool(provider), tools.NewAIOpsAlertListTool(provider), tools.NewAIOpsMetricSummaryTool(provider), } } // SearchAssets 查询资产。 // Logan.Li func (p *AgentProvider) SearchAssets(ctx context.Context, keyword string, limit int) (interface{}, error) { return p.service.SearchAssets(ctx, keyword, limit) } // ListAlerts 查询告警。 // Logan.Li func (p *AgentProvider) ListAlerts(ctx context.Context, target, severity, status, timeRange string, limit int) (interface{}, error) { return p.service.ListAlerts(ctx, AlertQuery{ Target: target, Severity: severity, Status: status, TimeRange: timeRange, Limit: limit, }) } // MetricSummary 查询指标摘要。 // Logan.Li func (p *AgentProvider) MetricSummary(ctx context.Context, target, metric, timeRange string, limit int) (interface{}, error) { return p.service.MetricSummary(ctx, target, metric, timeRange, limit) }