Skip to main content
Skip to content

Создание настраиваемой среды для агентов

Выполнение Copilot сеансов с собственными инструментами и зависимостями на компьютере Linux или в пространстве кода.

В качестве альтернативы использованию GitHub Actions или облачным песочницам, управляемым GitHub, можно предоставить настраиваемую среду для GitHub Copilot сеансов. Настраиваемая среда — это компьютер Linux или пространство кода, на котором выполняется Copilot узел. copilotd

Вы создаете узел и регистрируете его в учетной GitHub записи. Затем его можно выбрать в качестве среды в клиенте, поддерживающем пользовательские среды. Регистрация делает существующий узел доступным для клиентов.

Вам нужна Copilot лицензия и доступ к пользовательским средам. Вы несете ответственность за компьютер, рабочую область и инструменты, а также за поддержание работы узла и актуальности. Закрытие клиентского подключения не останавливает узел или компьютер.

Использование компьютера Linux

Используется Copilot CLI для запуска и регистрации узла на компьютере Linux.

1. Подготовка узла

Для установки предварительной версии Copilot CLIlinux требуется компьютер Linux и npm или Homebrew. Требования к установке и другие методы установки см. в разделе Установка GitHub Copilot CLI.

  1. На компьютере, который вы хотите использовать, подготовьте рабочую область и установите средства и зависимости, необходимые сеансам агента.

  2. Установите предварительную версию Copilot CLI с помощью npm:

    npm install -g @github/copilot@prerelease
    

    Кроме того, установите его с помощью Homebrew:

    brew install copilot-cli@prerelease
    

2. Регистрация узла

Узел регистрируется в качестве среды, принадлежащей учетной записи, с которой выполняется проверка подлинности.

  1. Войдите в GitHub.com систему и следуйте запросам проверки подлинности:

    copilot login
    
  2. Запустите Copilot CLI , чтобы параметры учетной записи и флаги функций загружались, а затем выйти из интерактивного сеанса:

    copilot
    
  3. Запустите узел среды. Замените HOST-NAME именем, которое будет распознаваться в селекторе среды.

    copilot --environment-host "HOST-NAME"
    

    Команда запускает узел и регистрирует компьютер под выбранным именем. Продолжайте работу узла, чтобы клиенты могли подключиться к нему.

3. Выбор среды

Подключитесь из клиента, поддерживающего выбор зарегистрированных сред.

  1. Войдите в клиент с той же GitHub учетной записью, которую вы использовали для регистрации узла.

  2. Откройте среды и выберите узел по имени, зарегистрированного вами.

    Клиент подключается к работающему узлу, где выполняются сеансы агента.

С использованием GitHub Codespaces

Используйте функцию контейнера разработки для автоматического запуска и регистрации узла при запуске пространства кода. Вам нужен доступ к GitHub Codespaces. Чтобы использовать приведенные ниже команды, также требуется проверка подлинности установки GitHub CLI.

1. Настройка пространства кода

Конфигурация контейнера разработки определяет, как установлен узел.

  1. В репозитории создайте или измените его .devcontainer/devcontainer.json , чтобы добавить функцию узла. Рассмотрим пример.

    {
      "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
      "features": {
        "ghcr.io/github/copilot-host/copilotd:0": {}
      }
    }
    
  2. При необходимости настройте функцию для вашей среды. Используйте :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 и регистрирует пространство кода автоматически при запуске контейнера.

  1. Чтобы создать новое пространство кода, зафиксируйте и отправьте конфигурацию контейнера разработки. Затем создайте пространство кода в этой ветви. Замените OWNER/REPOSITORY владельцем репозитория и именем и BRANCH ветвью, содержащей конфигурацию.

    gh codespace create -r OWNER/REPOSITORY -b BRANCH
    

    Для существующего пространства кода перестройте контейнер. Замените CODESPACE-NAME именем пространства кода.

    gh codespace rebuild -c CODESPACE-NAME
    
  2. Дождитесь запуска контейнера и регистрации узла.

3. Выберите среду пространства кода

Используйте клиент, поддерживающий выбор зарегистрированных сред. Маркер, используемый для входа в клиент, должен включать codespace область.

  1. Войдите в клиент с GitHub учетной записью, владеющей пространством кода.

  2. Откройте среды и выберите пространство кода.

    Если пространство кода остановлено, подключите его и запускается copilotd автоматически.

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

tail -F /workspaces/.copilotd/logs/copilotd.log