В качестве альтернативы использованию GitHub Actions или облачным песочницам, управляемым GitHub, можно предоставить настраиваемую среду для GitHub Copilot сеансов. Настраиваемая среда — это компьютер Linux или пространство кода, на котором выполняется Copilot узел. copilotd
Вы создаете узел и регистрируете его в учетной GitHub записи. Затем его можно выбрать в качестве среды в клиенте, поддерживающем пользовательские среды. Регистрация делает существующий узел доступным для клиентов.
Вам нужна Copilot лицензия и доступ к пользовательским средам. Вы несете ответственность за компьютер, рабочую область и инструменты, а также за поддержание работы узла и актуальности. Закрытие клиентского подключения не останавливает узел или компьютер.
Использование компьютера Linux
Используется Copilot CLI для запуска и регистрации узла на компьютере Linux.
1. Подготовка узла
Для установки предварительной версии Copilot CLIlinux требуется компьютер Linux и npm или Homebrew. Требования к установке и другие методы установки см. в разделе Установка GitHub Copilot CLI.
-
На компьютере, который вы хотите использовать, подготовьте рабочую область и установите средства и зависимости, необходимые сеансам агента.
-
Установите предварительную версию Copilot CLI с помощью npm:
npm install -g @github/copilot@prereleaseКроме того, установите его с помощью Homebrew:
brew install copilot-cli@prerelease
2. Регистрация узла
Узел регистрируется в качестве среды, принадлежащей учетной записи, с которой выполняется проверка подлинности.
-
Войдите в GitHub.com систему и следуйте запросам проверки подлинности:
copilot login -
Запустите Copilot CLI , чтобы параметры учетной записи и флаги функций загружались, а затем выйти из интерактивного сеанса:
copilot -
Запустите узел среды. Замените
HOST-NAMEименем, которое будет распознаваться в селекторе среды.copilot --environment-host "HOST-NAME"Команда запускает узел и регистрирует компьютер под выбранным именем. Продолжайте работу узла, чтобы клиенты могли подключиться к нему.
3. Выбор среды
Подключитесь из клиента, поддерживающего выбор зарегистрированных сред.
-
Войдите в клиент с той же GitHub учетной записью, которую вы использовали для регистрации узла.
-
Откройте среды и выберите узел по имени, зарегистрированного вами.
Клиент подключается к работающему узлу, где выполняются сеансы агента.
С использованием GitHub Codespaces
Используйте функцию контейнера разработки для автоматического запуска и регистрации узла при запуске пространства кода. Вам нужен доступ к GitHub Codespaces. Чтобы использовать приведенные ниже команды, также требуется проверка подлинности установки GitHub CLI.
1. Настройка пространства кода
Конфигурация контейнера разработки определяет, как установлен узел.
-
В репозитории создайте или измените его
.devcontainer/devcontainer.json, чтобы добавить функцию узла. Рассмотрим пример.{ "image": "mcr.microsoft.com/devcontainers/base:ubuntu", "features": { "ghcr.io/github/copilot-host/copilotd:0": {} } } -
При необходимости настройте функцию для вашей среды. Используйте
:prereleaseвместо:0предварительного канала. Чтобы клонировать дополнительные репозитории, добавьтеrepositoriesпараметр в объект конфигурации компонента:"ghcr.io/github/copilot-host/copilotd:0": { "repositories": "OWNER/REPOSITORY-1,OWNER/REPOSITORY-2" }
OWNER/REPOSITORY-2 Замените OWNER/REPOSITORY-1 и на владельцев и имена репозиториев клонировать.
2. Запуск и регистрация узла
Функция запускается copilotd и регистрирует пространство кода автоматически при запуске контейнера.
-
Чтобы создать новое пространство кода, зафиксируйте и отправьте конфигурацию контейнера разработки. Затем создайте пространство кода в этой ветви. Замените
OWNER/REPOSITORYвладельцем репозитория и именем иBRANCHветвью, содержащей конфигурацию.gh codespace create -r OWNER/REPOSITORY -b BRANCHДля существующего пространства кода перестройте контейнер. Замените
CODESPACE-NAMEименем пространства кода.gh codespace rebuild -c CODESPACE-NAME -
Дождитесь запуска контейнера и регистрации узла.
3. Выберите среду пространства кода
Используйте клиент, поддерживающий выбор зарегистрированных сред. Маркер, используемый для входа в клиент, должен включать codespace область.
-
Войдите в клиент с GitHub учетной записью, владеющей пространством кода.
-
Откройте среды и выберите пространство кода.
Если пространство кода остановлено, подключите его и запускается
copilotdавтоматически.
Чтобы проверить журналы узлов, выполните следующую команду в пространстве кода:
tail -F /workspaces/.copilotd/logs/copilotd.log