Skip to main content

Настройка по умолчанию (в комплекте CLI)

SDK Node.js, Python и .NET включают Второй пилот CLI как зависимость — ваше приложение поставляется с всем, что нужно, без дополнительной установки или настройки.

Кто может использовать эту функцию?

GitHub Copilot SDK Доступна со всеми Copilot тарифными планами.

Примечание.

Второй пилот SDK в настоящее время находится в Публичный предварительный просмотр. Функциональность и доступность могут меняться.

Лучше всего для: Большинство приложений — настольные приложения, отдельные инструменты, утилиты CLI, прототипы и многое другое.

Принцип работы

При установке Второй пилот SDKавтоматически добавляется , Второй пилот CLI Он Второй пилот SDK начинает процесс как ребёнка и общается по stdio. Нечего дополнительно настраивать.

Диаграмма, показывающая, как клиент SDK включает бинарный файл Copilot CLI и совершает API-вызовы GitHub Copilot.

Ключевые характеристики:

  • Второй пилот CLI входит в Второй пилот SDKкомплект — отдельная установка не требуется
  • Он Второй пилот SDK управляет версией CLI для обеспечения совместимости
  • Пользователи аутентифицируются через ваше приложение (или используют env vars / BYOK)
  • Сессии управляются каждым пользователем на их машине

Примечание.

Go и Java SDK не входят в комплект Второй пилот CLI. Вам нужно установить CLI отдельно или cliPath настроить его на ссылку на существующий бинарный файл. Дополнительные сведения см. в разделе Использование локального CLI с Copilot SDK .

Быстрый старт

import { CopilotClient } from "@github/copilot-sdk";

const client = new CopilotClient();

const session = await client.createSession({ model: "gpt-4.1" });
const response = await session.sendAndWait({ prompt: "Hello!" });
console.log(response?.data.content);

await client.stop();

Для примеров в Python, Go, .NET и Java см. Default setup в репозитории github/copilot-sdk. Для Java см. репозиторийgithub/copilot-sdk-java.

Стратегии аутентификации

Вам нужно решить, как ваши пользователи будут аутентифицироваться. Вот распространённые закономерности:

Диаграмма, показывающая варианты аутентификации для комплектного CLI: учетные данные для входа, токен, предоставленный приложением, или BYOK.

Вариант А: авторизованные учетные данные пользователя (самое простое)

Пользователь входит в Второй пилот CLI систему один раз, и ваше приложение использует эти учетные данные. Лишний код не требуется — это поведение по умолчанию.

const client = new CopilotClient();
// Default: uses signed-in user credentials

Вариант B: токен через переменную среды

Отправьте в приложение инструкции по установке токена или программно:

const client = new CopilotClient({
    env: {
        COPILOT_GITHUB_TOKEN: getUserToken(),  // Your app provides the token
    },
});

Вариант C: BYOK (авторизация не GitHub требуется)

Если вы сами управляете ключами провайдера модели, пользователям вообще не нужны GitHub аккаунты:

const client = new CopilotClient();

const session = await client.createSession({
    model: "gpt-4.1",
    provider: {
        type: "openai",
        baseUrl: "https://api.openai.com/v1",
        apiKey: process.env.OPENAI_API_KEY,
    },
});

Подробности смотрите в разделе AUTOTITLE .

Управление сеансами

Приложения обычно хотят иметь именованные сессии, чтобы пользователи могли возобновлять разговоры:

const client = new CopilotClient();

// Create a session tied to the user's project
const sessionId = `project-${projectName}`;
const session = await client.createSession({
    sessionId,
    model: "gpt-4.1",
});

// User closes app...
// Later, resume where they left off
const resumed = await client.resumeSession(sessionId);

Состояние сессии сохраняется при ~/.copilot/session-state/{sessionId}/.

Когда двигаться дальше

НеобходимостьСледующее руководство
Пользователи входят с GitHub учётными записями
Использование GitHub OAuth с Copilot SDK
Запускайте на сервере, а не на пользовательских машинах
Настройка Copilot SDK для бэкенд-сервисов
Используйте свои собственные модели
приносите свой ключ (BYOK)

Дальнейшие действия