use Revolution\Copilot\Facades\Copilot;
use Revolution\Copilot\Contracts\CopilotSession;
use Revolution\Copilot\Types\UserInputRequest;
use Revolution\Copilot\Types\UserInputResponse;
Copilot::start(function (CopilotSession $session) {
$response = $session->sendAndWait(prompt: '请询问用户喜欢的语言');
dump($response->content());
}, config: [
'model' => 'gpt-5',
'onUserInputRequest' => function (UserInputRequest $request): UserInputResponse {
// $request->question - 问题内容
// $request->choices - 多选选项数组(可选)
// $request->allowFreeform - 是否允许自由输入(默认: true)
dump("Question from agent: {$request->question}");
if ($request->choices) {
dump('Choices: '.implode(', ', $request->choices));
}
// 返回用户的回答
return new UserInputResponse(
answer: 'PHP',
wasFreeform: true, // 是否是自由输入而非从选项中选择
);
},
]);