Copilot Chat
Чат-інтерфейс GitHub Copilot — inline chat, панель чату, slash-команди та контекстні посилання
📎ОФІЦІЙНА ДОКУМЕНТАЦІЯ
Що таке Copilot Chat?
Copilot Chat — це чат-інтерфейс, вбудований у IDE, який дозволяє спілкуватися з AI-моделлю в контексті вашого коду. На відміну від зовнішніх чат-ботів, Copilot Chat розуміє структуру вашого проєкту, відкриті файли та виділений код.
Copilot Chat доступний у VS Code, JetBrains IDE та Visual Studio. Інтерфейс може дещо відрізнятися, але основні функції однакові.
Способи відкрити Chat
Панель чату (Chat Panel)
Окрема панель збоку IDE для тривалих діалогів:
- VS Code:
Ctrl+Alt+I(Windows/Linux) абоCmd+Alt+I(macOS) - Або через Command Palette:
Copilot: Open Chat
Inline Chat
Чат безпосередньо у редакторі, біля коду:
- VS Code:
Ctrl+I(Windows/Linux) абоCmd+I(macOS) - Виділіть код і натисніть шорткат для запитання про конкретний фрагмент
Quick Chat
Швидке вікно для одноразових запитань:
- VS Code:
Ctrl+Shift+I
Chat Participants (@)
Chat Participants — це спеціалізовані контексти, до яких можна звертатися через @:
| Participant | Опис |
|---|---|
@workspace | Весь проєкт — пошук по файлах, розуміння архітектури |
@vscode | Налаштування VS Code, розширення, команди |
@terminal | Контекст терміналу — помилки, вивід команд |
@github | GitHub — issues, PR, repositories |
Приклади використання
@workspace Як організовані роути в цьому проєкті?
@vscode Як змінити налаштування автоформатування для TypeScript?
@terminal Поясни останню помилку в терміналі
@github Покажи відкриті issues з лейблом "bug"
Slash-команди
Slash-команди — це швидкі дії для поширених задач:
| Команда | Опис |
|---|---|
/explain | Пояснити виділений код |
/fix | Виправити помилку у коді |
/tests | Згенерувати тести для коду |
/doc | Додати документацію |
/new | Створити новий файл або проєкт |
/clear | Очистити історію чату |
/search | Пошук по кодовій базі |
Приклади
/explain — що робить ця функція та які edge cases?
/fix — виправ помилку TypeScript у цьому файлі
/tests — створи unit тести для цього класу, використовуючи Jest
/doc — додай JSDoc коментарі до всіх публічних методів
Контекстні посилання (#)
Для надання точного контексту використовуйте #:
| Посилання | Опис |
|---|---|
#file:filename | Конкретний файл |
#selection | Виділений текст |
#editor | Вміст активного редактора |
#codebase | Вся кодова база (індексований пошук) |
#terminalLastCommand | Остання команда з терміналу |
Приклади
Поясни різницю між #file:UserService.ts та #file:AuthService.ts
Зроби рефакторинг #selection згідно з патерном, описаним у #file:ARCHITECTURE.md
Виправ помилку з #terminalLastCommand
Ефективні промпти для Chat
Для пояснення коду
Поясни архітектуру цього проєкту.
Зверни увагу на:
1. Основні патерни
2. Потік даних
3. Залежності між модулями
Для генерації коду
Створи React hook useDebounce з такими вимогами:
- Параметри: value (generic T), delay (number, default 500ms)
- Повертає debounced значення
- Очищає таймер при unmount
- TypeScript generic типи
Для рефакторингу
Рефакторинг цього коду:
- Витягни повторювану логіку в окрему функцію
- Замінити callback hell на async/await
- Додай error handling
- Зберігай зворотну сумісність API
Чим більше контексту ви надаєте через @ та #, тим кращі відповіді дає Copilot Chat. Використовуйте @workspace для питань про архітектуру та #file: для конкретних файлів.
Мультимодальність
Copilot Chat підтримує зображення — можна вставити скриншот і попросити:
Подивись на цей скриншот UI-бага та знайди причину
проблеми з layout у моєму CSS
Наступні кроки
Мультифайлове редагування для більш складних задач
Автономний режим для складних задач