Примечание.
Второй пилот SDK в настоящее время находится в Публичный предварительный просмотр. Функциональность и доступность могут меняться.
Удалённые сессии позволяют пользователям получать доступ к своей Copilot сессии как GitHub с веба, так и с мобильных устройств. При включении он Второй пилот SDK соединяет каждую сессию с Центром управления миссией, создавая URL, который можно поделиться в виде ссылки или QR-кода.
Необходимые условия
- Пользователь должен быть аутентифицирован (токеном GitHub или вошедшим в систему)
- Рабочий каталог сессии должен быть репозиторием GitHub
Включение удалённых сессий
Вы можете включить удалённый доступ на уровне клиента (всегда включённый) или переключить его за сессию (по запросу).
Всегда-онлайн (на уровне клиента)
Устанавливайте remote: true при создании клиента. Каждая сессия в репозитории GitHub автоматически получает удалённый URL.
import { CopilotClient } from "@github/copilot-sdk";
const client = new CopilotClient({ remote: true });
const session = await client.createSession({
workingDirectory: "/path/to/github-repo",
onPermissionRequest: async () => ({ allowed: true }),
});
session.on("session.info", (event) => {
if (event.data.infoType === "remote") {
console.log("Remote URL:", event.data.url);
}
});
Примеры в Python, Go, C# и Rust см. репозиторий github/copilot-sdk. Для Java см. репозиторийgithub/copilot-sdk-java.
Переключатель по запросу (переключатель на сессию)
Используйте session.rpc.remote.enable() для запуска удалённого доступа во время сессии и session.rpc.remote.disable() остановки его. Это эквивалентно Второй пилот CLI' /remote on s и /remote off командам.
const result = await session.rpc.remote.enable();
console.log("Remote URL:", result.url);
// Later: stop sharing
await session.rpc.remote.disable();
Примеры в Python, Go, C# и Rust см. репозиторий github/copilot-sdk. Для Java см. репозиторийgithub/copilot-sdk-java.
Генерация QR-кодов
Удалённый URL можно отобразить в виде QR-кода для удобного мобильного доступа. Он Второй пилот SDK предоставляет URL — используйте выбранную вами библиотеку QR-кодов.
Примечания
- Опция клиента
remoteдействует только при появлении Второй пилот SDKВторой пилот CLI. Он игнорируется при подключении к внешнему серверу черезcliUrl. - Если рабочая папка не является репозиторием GitHub, удалённая настройка тихо пропускается (режим всегда включено) или возвращается ошибка (режим по запросу).
- Удалённые сессии требуют аутентификации. Убедитесь,
gitHubTokenчто это настроеноuseLoggedInUser.