#!/usr/bin/env php
<?php

if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
    require __DIR__ . '/../vendor/autoload.php';
} elseif (file_exists(__DIR__ . '/../../../autoload.php')) {
    require __DIR__ . '/../../../autoload.php';
} else {
    fwrite(STDERR, 'ERROR: Composer dependencies not properly set up! Run "composer install" or see README.md for more details' . PHP_EOL);
    exit(1);
}

// hide PHP 8.1 deprecations
error_reporting(E_ALL & ~E_DEPRECATED);

use Diversen\MinimalCli;
use Diversen\GPT\Shell;
use Diversen\GPT\Chat;
use Diversen\GPT\Code;

$minimal_cli = new MinimalCli();
$minimal_cli->header = "Shell GTP for PHP";
$minimal_cli->addCommandClass('shell', Shell::class);
$minimal_cli->addCommandClass('chat', Code::class);
$minimal_cli->addCommandClass('code', Chat::class);
$minimal_cli->runMain();