Uso in stile SDK ufficiale
Questo pacchetto supporta anche uno stile pure PHP che riproduce l’uso dell’SDK ufficiale.
Al tempo stesso offre un’esperienza di sviluppo tipica di Laravel.
Questa pagina spiega che “poiché all’interno del Facade è riprodotto l’SDK ufficiale, è possibile usarlo anche in questo modo”.
Di norma è consigliato l’uso tramite Facade.
use Revolution\Copilot\Client;
use Revolution\Copilot\Session;
use Revolution\Copilot\Types\SessionEvent;
$client = new Client([
'cli_path' => 'copilot',
'cli_args' => [],
'cwd' => base_path(),
'log_level' => 'info',
'env' => null,
]);
$client->start();
/** @var Session $session */
$session = $client->createSession([
'model' => 'gpt-5',
]);
$done = $session->on(function (SessionEvent $event) {
if($event->isAssistantMessage()) {
echo $event->content();
}
});
$session->send(prompt: 'Tell me something about Laravel.');
$session->wait(timeout: 60.0); // Finché il True async non è implementato ufficialmente, si attende con wait().
$done();
$session->disconnect();
$client->stop();