UNPKG

@ddegtyarev/aws-tools

Version:

This project contains AWS API integration tools for use in Vertex AI SDK.

32 lines (31 loc) 1.48 kB
// src/index.ts import { awsDescribeInstances } from './tools/awsDescribeInstances.js'; import { awsGetCostAndUsage } from './tools/awsGetCostAndUsage.js'; import { awsCloudWatchGetMetrics } from './tools/awsCloudWatchGetMetrics.js'; import { awsCostOptimizationHubListRecommendations } from './tools/awsCostOptimizationHubListRecommendations.js'; import { awsCostPerServicePerRegion } from './tools/awsCostPerServicePerRegion.js'; // Export chart utilities export { generateChartFiles, generatePNGChart, generateSVGChart } from './chartUtils.js'; export const tools = [ awsDescribeInstances, awsGetCostAndUsage, awsCloudWatchGetMetrics, awsCostOptimizationHubListRecommendations, awsCostPerServicePerRegion, ]; export async function invoke(toolName, input, config) { switch (toolName) { case 'awsDescribeInstances': return await awsDescribeInstances.invoke(input, config); case 'awsGetCostAndUsage': return await awsGetCostAndUsage.invoke(input, config); case 'awsCloudWatchGetMetrics': return await awsCloudWatchGetMetrics.invoke(input, config); case 'awsCostOptimizationHubListRecommendations': return await awsCostOptimizationHubListRecommendations.invoke(input, config); case 'awsCostPerServicePerRegion': return await awsCostPerServicePerRegion.invoke(input, config); default: throw new Error(`Tool ${toolName} not found`); } }