Skip to main content

Лучшие практики для GitHub Copilot CLI

Узнайте, как максимально использовать GitHub Copilot CLI.

Введение

GitHub Copilot CLI — это ассистент по программированию ИИ, нативный для терминала, который напрямую переносит агентные возможности в командную строку. Интерфейс командной строки Copilot может работать как чат-бот, отвечая на ваши вопросы, но его настоящая сила заключается в способности работать автономно как ваш партнёр по программированию, позволяя вам делегировать задачи и контролировать их работу.

В этой статье приведены советы по максимальной эффективности Интерфейс командной строки Copilot — от эффективного использования различных команд CLI до управления доступом CLI к файлам. Рассматривайте эти советы как отправную точку, а затем экспериментируйте, чтобы понять, что лучше всего подходит для ваших рабочих процессов.

Примечание.

GitHub Copilot CLI постоянно развивается. Используйте /help команду, чтобы видеть самую актуальную информацию.

1. Настройте окружение

Используйте пользовательские инструкции

Интерфейс командной строки Copilot автоматически читает инструкции из нескольких точек, позволяя задавать стандарты для всей организации и специфичные для репозитория конвенции.

          **Поддерживаемые локации (в порядке обнаружения):**
МестоположениеScope
~/.copilot/copilot-instructions.mdВсе сессии (глобальные)
.github/copilot-instructions.mdРепозиторий
.github/instructions/**/*.instructions.mdРепозиторий (модульный)
          `AGENTS.md` (в корне Git или cwd)            | Репозиторий            |

| Copilot.md GEMINI.md CODEX.md | Репозиторий |

Лучшие практики

Инструкции репозитория всегда имеют приоритет над глобальными инструкциями. Используйте это для соблюдения командных конвенций. Например, это простой .github/copilot-instructions.md файл.

## Build Commands
- `npm run build` - Build the project
- `npm run test` - Run all tests
- `npm run lint:fix` - Fix linting issues

## Code Style
- Use TypeScript strict mode
- Prefer functional components over class components
- Always add JSDoc comments for public APIs

## Workflow
- Run `npm run lint:fix && npm test` after making changes
- Commit messages follow conventional commits format
- Create feature branches from `main`

Совет

Держите инструкции краткими и практичными. Длинные инструкции могут снизить эффективность.

Дополнительные сведения см. в разделе Сведения о настройке ответов GitHub Copilot.

Настройка разрешённых инструментов

Управляйте, какие инструменты Copilot могут запускаться без разрешения. Когда Copilot запрашивает разрешение на действие, вы можете выбрать Разрешить один раз или Всегда разрешить добавить инструмент в список разрешений для этой и будущих сессий.

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

/reset-allowed-tools

Вы также можете заранее настроить разрешённые инструменты через флаги CLI:

copilot --allow-tool 'shell(git:*)' --deny-tool 'shell(git push)'
          **Распространённые шаблоны разрешений:**

* shell(git:*) — Разрешить все команды Git * shell(npm run:*) — Разрешить все npm-скрипты * shell(npm run test:*) — Разрешить команды тестирования npm * write — Разрешить запись файлов

Выберите предпочитаемую модель

Используйте /model выбор из доступных моделей в зависимости от сложности вашей задачи:

МодельЛучше всего дляКомпромиссы
          **Claude Opus 4.5** (по умолчанию) | Сложная архитектура, сложность отладки, тонкий рефакторинг | Большинство способных, но используют [больше премиум-запросов](/copilot/concepts/billing/copilot-requests#model-multipliers) |

| Клод Соннет 4.5 | Ежедневное программирование, большинство рутинных задач | Быстрый, экономичный, хорошо справляется с большинством работ | | Кодекс GPT-5.2 | Генерация кода, обзор кода, простые реализации | Отлично подходит для обзора кода, созданного другими моделями |

          **Recommendations:**

* Opus 4.5 идеально подходит для задач, требующих глубокого мышления, сложного проектирования системы, тонкого расследования ошибок или глубокого понимания контекста. * Переходите на Sonnet 4.5 для рутинных задач, где важна скорость и экономия — он эффективно справляется с основной частью повседневного кодирования. * Используйте Codex для генерации кода с большим объёмом и как второе мнение при обзоре кода, созданного другими моделями.

Вы можете менять модель во время сессии /model по мере изменения сложности задачи.

2. Планируй, прежде чем кодировать

Режим планирования

          **Модели достигают более высоких показателей успеха, если им предоставляется конкретный план.** В режиме планирования Copilot создаст структурированный план реализации до написания кода.

Нажмите вкладку Shift+, чтобы переключиться между нормальным режимом и режимом планирования. В режиме плана все вводные подсказки запускают рабочий процесс плана.

В качестве альтернативы можно использовать /plan команду в обычном режиме, чтобы добиться того же эффекта.

          **Пример запроса (из обычного режима):**
/plan Add OAuth2 authentication with Google and GitHub providers
          **Что происходит:**
  • Copilot анализирует ваш запрос и кодовую базу.
  •         **Задаёт уточняющие вопросы** , чтобы согласовать требования и подход.
    
  • Создает структурированный план реализации с галочками.
  • Сохраняет план в plan.md папке сессии.
  •         **Ждёт вашего одобрения** , прежде чем внедрять.
    

Вы можете нажать Ctrl+y , чтобы просмотреть и отредактировать план в вашем стандартном редакторе файлов Markdown.

          **Пример вывода плана:**
# Implementation Plan: OAuth2 Authentication

## Overview
Add social authentication using OAuth2 with Google and GitHub providers.

## Tasks
- [ ] Install dependencies (passport, passport-google-oauth20, passport-github2)
- [ ] Create authentication routes in `/api/auth`
- [ ] Implement passport strategies for each provider
- [ ] Add session management middleware
- [ ] Create login/logout UI components
- [ ] Add environment variables for OAuth credentials
- [ ] Write integration tests

## Detailed Steps
1. **Dependencies**: Add to package.json...
2. **Routes**: Create `/api/auth/google` and `/api/auth/github`...

Когда использовать режим плана

ScenarioИспользовать режим плана?
Сложные многофайловые изменения
Рефакторинг с множеством точек соприкосновения
Новая реализация функций
Быстрые исправления ошибок
Изменения в одиночном порядке

План исследовать → → код → коммит

Для наилучших результатов при сложных задачах:

  •         **Исследуйте**:
    

    Read the authentication files but don't write code yet

  •         **План**:
    

    /plan Implement password reset flow

  •         **Проверка**.
    

    Проверьте план, предложите модификации

  •         **Реализация**:
    

    Proceed with the plan

  •         **Проверьте**:
    

    Run the tests and fix any failures

  •         **Коммит**:
    

    Commit these changes with a descriptive message

3. Используйте бесконечные сессии

Автоматическое управление контекстным окном

Интерфейс командной строки Copilot содержит бесконечные сессии. Не стоит переживать, что у тебя закончится контекст. Система автоматически управляет контекстом с помощью интеллектуального уплотнения, который резюмирует историю разговора, сохраняя при этом важную информацию.

          **Место хранения сессий:**
~/.copilot/session-state/{session-id}/
├── events.jsonl      # Full session history
├── workspace.yaml    # Metadata
├── plan.md           # Implementation plan (if created)
├── checkpoints/      # Compaction history
└── files/            # Persistent artifacts

Примечание.

Если когда-нибудь нужно вручную активировать уплотнение, используйте /compact. Это редко необходимо, так как система обрабатывает это автоматически.

Команды управления сессиями

Чтобы ознакомиться с информацией о текущей сессии CLI, введите:

/session

Чтобы просмотреть список любых контрольных точек сессий, введите:

/session checkpoints

Примечание.

Контрольная точка создаётся при сжатии контекста сессии и позволяет просматривать сводный контекст, который Copilot создали.

Чтобы увидеть детали конкретного контрольного пункта, введите:

/session checkpoints NUMBER

где NUMBER указывает контрольную точку, которую вы хотите отобразить.

Чтобы просмотреть временные файлы, созданные в ходе текущей сессии — например, артефакты, созданные Copilot, которые не должны сохраняться в репозитории — введите:

/session files

Чтобы просмотреть текущий план (если Copilot сгенерировал его), введите:

/session plan

Лучшая практика: Сосредоточьтесь на сессиях

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

  • Используйте /clear или /new между другими задачами.
  • Это сбрасывает контекст и улучшает качество отклика.
  • Представьте это как начало нового разговора с коллегой.

Команда /context

Визуализируйте текущее использование контекста с помощью /context. На ней показана разбивка:

  • Системные/инструментальные токены
  • Токены истории сообщений
  • Свободное пространство
  • Распределение буферов

4. Эффективно делегировать работу

Команда /delegate

          **Перегрузить работу в облаке с помощью Агент кодирования Copilot.** Это особенно мощно для:
  • Задачи, которые могут выполняться асинхронно.

  • Изменения в других репозиториях.

  • Долгосрочные операции, которых не стоит ждать.

            **Пример запроса:**
    
/delegate Add dark mode support to the settings page
          **Что происходит:**
  • Ваш запрос отправляется на Агент кодирования Copilot.
  • Агент создаёт pull request с этими изменениями.
  • Вы можете продолжать работать локально, пока облачный агент работает.

Когда следует использовать /delegate

Используйте /delegateЛокальная работа
Косвенные задачиОсновные полнометражные работы
обновление документации.Отладка
Рефакторинг отдельных модулейИнтерактивное исследование

5. Общие рабочие процессы

Кодовая адаптация

Используйте Интерфейс командной строки Copilot в качестве партнёра по программированию пары при вступлении в новый проект. Например, вы можете спросить Copilot:

  • How is logging configured in this project?
  • What's the pattern for adding a new API endpoint?
  • Explain the authentication flow
  • Where are the database migrations?

Разработка на основе тестов

Объедините с Интерфейс командной строки Copilot для разработки тестов.

  • Write failing tests for the user registration flow
  •         *Проверьте и одобрите тесты.*
    
  • Now implement code to make all tests pass
  •         *Ознакомьтесь с реализацией.*
    
  • Commit with message "feat: add user registration"

Помощь при повторении кода

  • /review Use Opus 4.5 and Codex 5.2 to review the changes in my current branch against `main`. Focus on potential bugs and security issues.

Операции Git

Copilot excels at Git workflows:

  • What changes went into version `2.3.0`?
  • Create a PR for this branch with a detailed description
  • Rebase this branch against `main`
  • Resolve the merge conflicts in `package.json`

Расследование ошибок

  • The `/api/users` endpoint returns 500 errors intermittently. Search the codebase and logs to identify the root cause.

Рефакторинг

  • /plan Migrate all class components to functional components with hooks

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

            **Вариант 1: Запуск из родительского каталога**
    
# Navigate to a parent directory containing multiple repos
cd ~/projects
copilot

Copilot теперь может одновременно получать доступ и работать со всеми дочерними репозиториями. Это идеально подходит для:

  • Архитектуры микрослужб

  • Скоординированные изменения в связанных репозиториях

  • Рефакторинг общих шаблонов между проектами

            **Вариант 2: использовать `/add-dir` для расширения доступа**
    
# Start in one repo, then add others (requires full paths)
copilot
/add-dir /Users/me/projects/backend-service
/add-dir /Users/me/projects/shared-libs
/add-dir /Users/me/projects/documentation
          **Просмотр и управление разрешёнными каталогами:**
/list-dirs
          **Пример рабочего процесса: согласованные изменения API**
I need to update the user authentication API. The changes span:

- @/Users/me/projects/api-gateway (routing changes)
- @/Users/me/projects/auth-service (core logic)
- @/Users/me/projects/frontend (client updates)

Start by showing me the current auth flow across all three repos.

Эта мультирепозиторная возможность позволяет:

  • Пересечение рефакторов (обновление общего паттерна везде)
  • Изменения в контрактах API с обновлениями клиента
  • Документация, ссылающаяся на несколько кодовых баз
  • Улучшения зависимости через монорепо

Использование изображений для работы с интерфейсом

Copilot может работать с визуальными ссылками. Просто перетаскивайте изображения прямо в вход CLI или используйте ссылки на файлы изображений:

Implement this design: @mockup.png
Match the layout and spacing exactly

Контрольные списки для сложных миграций

Для крупномасштабных изменений:

Run the linter and write all errors to `migration-checklist.md` as a checklist.
Then fix each issue one by one, checking them off as you go.

7. Правила команды

Рекомендуемая настройка репозитория

  •         **Создайте `.github/copilot-instructions.md`** с:
    
    • Команды сборки и тестирования
    • Рекомендации по стилю кода
    • Обязательные проверки перед коммитами
    • Архитектурные решения
  •         **Устанавливать конвенции** для:
    
    • Когда использовать /plan (сложные признаки, рефакторинг)
    • Когда использовать /delegate (косвенная работа)
    • Процессы проверки кода с помощью ИИ
  • Интерфейс командной строки Copilot требует явного одобрения для потенциально разрушительных операций.
  • Изучите все предлагаемые изменения перед принятием.
  • Используйте списки разрешений разумно.
  • Никогда не скрывай секреты. Copilot разработан так, чтобы этого избежать, но всегда проверяйте.

Измерение производительности

Метрики отслеживания, такие как:

  • Время от выпуска до запроса
  • Количество итераций до слияния
  • Циклы обратной связи при проверке кода
  • Улучшение покрытия испытаний

Получение помощи

Из командной строки вы можете показать помощь, используя команду: copilot -h.

Для помощи по различным вопросам заходите:

copilot help TOPIC

где TOPIC может быть один из: config, commands, environment, logging, или permissions.

Внутри CLI

Для помощи внутри CLI запросите:

/help

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

/usage

Чтобы отправить приватную обратную связь на GitHub о Интерфейс командной строки Copilot, вызвать отчёт об ошибке или отправить запрос на функцию, введите:

/feedback

Дополнительные материалы

  •         [AUTOTITLE](/copilot/concepts/agents/about-copilot-cli)
    
  •         [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli)
    
  •         [AUTOTITLE](/copilot/reference/cli-command-reference)
    
  •         [Copilot планы и цены](https://github.com/features/copilot/plans)