autoagent-cli
Version:
Run autonomous AI agents using Claude or Gemini for task execution
61 lines (60 loc) ⢠2.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.registerCheckCommand = registerCheckCommand;
const providers_1 = require("../../providers");
const logger_1 = require("../../utils/logger");
function registerCheckCommand(program) {
program
.command('check')
.description('Check provider availability')
.option('-p, --provider <provider>', 'AI provider to check')
.action(async (options) => {
try {
if (options.provider !== undefined && options.provider !== '') {
const provider = (0, providers_1.createProvider)(options.provider);
const available = await provider.checkAvailability();
logger_1.Logger.info(`\nš Checking ${provider.name} CLI...\n`);
if (available) {
logger_1.Logger.success(`${provider.name} CLI is installed`);
}
else {
logger_1.Logger.error(`${provider.name} CLI is not installed`);
logger_1.Logger.newline();
logger_1.Logger.info(`š” To install ${provider.name} CLI:`);
if (provider.name === 'claude') {
logger_1.Logger.info(' Visit: https://claude.ai/code');
}
else {
logger_1.Logger.info(' Visit: https://ai.google.dev/gemini-api/docs/quickstart');
}
}
}
else {
const providers = ['claude', 'gemini'];
logger_1.Logger.info('\nš Checking provider CLI tools...\n');
let anyAvailable = false;
for (const providerName of providers) {
const provider = (0, providers_1.createProvider)(providerName);
const available = await provider.checkAvailability();
if (available) {
logger_1.Logger.success(`${provider.name} CLI is installed`);
anyAvailable = true;
}
else {
logger_1.Logger.error(`${provider.name} CLI is not installed`);
}
}
if (!anyAvailable) {
logger_1.Logger.newline();
logger_1.Logger.info('š” To install provider CLIs:');
logger_1.Logger.info(' Claude: https://claude.ai/code');
logger_1.Logger.info(' Gemini: https://ai.google.dev/gemini-api/docs/quickstart');
}
}
}
catch (error) {
logger_1.Logger.error(`Failed: ${error instanceof Error ? error.message : String(error)}`);
process.exit(1);
}
});
}