UNPKG

autoagent-cli

Version:

Run autonomous AI agents using Claude or Gemini for task execution

28 lines (27 loc) 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ProviderFactory = void 0; const index_js_1 = require("./index.js"); class ProviderFactory { static async getProvider(preferredProvider) { try { const provider = (0, index_js_1.createProvider)(preferredProvider); if (await provider.checkAvailability()) { return provider; } const fallbackProvider = await (0, index_js_1.getFirstAvailableProvider)(); if (fallbackProvider) { return fallbackProvider; } throw new Error(`Provider ${preferredProvider} is not available and no fallback providers found`); } catch (error) { const fallbackProvider = await (0, index_js_1.getFirstAvailableProvider)(); if (fallbackProvider) { return fallbackProvider; } throw new Error(`Failed to create provider ${preferredProvider}: ${error instanceof Error ? error.message : 'Unknown error'}`); } } } exports.ProviderFactory = ProviderFactory;