15 промтов для GitHub Copilot: от коммитов до code review — как AI меняет работу разработчика
Введение: Copilot — не автодополнение, а коллега
Когда GitHub Copilot вышел в 2022 году, многие восприняли его как продвинутый IntelliSense — инструмент, который просто дописывает строки кода. Но к середине 2026 года Copilot превратился в полноценного ассистента, способного генерировать архитектуру, анализировать уязвимости и даже ревьюить пул-реквесты. Согласно недавнему опросу Stack Overflow (2025), 78% разработчиков хотя бы раз использовали AI-ассистента в работе, а 42% — делают это ежедневно.
Однако ключевой навык работы с Copilot — это умение составлять промты (подсказки). Не «напиши код», а «напиши REST-эндпоинт на FastAPI с валидацией Pydantic и кешированием Redis». Разница колоссальна. В этой статье я собрал 15 промтов, которые покрывают полный цикл разработки: от создания коммитов до code review.
Базовые промты: генерация и коммиты
1. Генерация функции с описанием
Задача: Создать функцию с чёткой сигнатурой.
Промт:
Write a Python function that takes a list of dictionaries with keys 'id', 'name', 'price', and returns a new list sorted by price descending. Include type hints and a docstring.
Результат (сгенерировано Copilot):
def sort_products_by_price(products: list[dict]) -> list[dict]:
"""
Sorts a list of product dictionaries by price in descending order.
Args:
products: List of dicts with keys 'id', 'name', 'price'.
Returns:
Sorted list by price descending.
"""
return sorted(products, key=lambda x: x['price'], reverse=True)
2. Генерация сообщения коммита
Задача: Copilot анализирует diff и пишет осмысленное сообщение коммита.
Промт:
/commit Generate a conventional commit message for the following diff. Use format type(scope): description.
Результат:
feat(api): add pagination to user list endpoint
- Added page and per_page query parameters
- Implemented default values: page=1, per_page=20
- Updated OpenAPI schema
3. Генерация unit-тестов
Задача: Написать тесты для существующей функции.
Промт:
Write pytest tests for the following function. Cover: normal input, empty list, invalid data type. Use parametrize.
Результат:
import pytest
from products import sort_products_by_price
@pytest.mark.parametrize("input_data,expected", [
([{"id": 1, "name": "A", "price": 10}, {"id": 2, "name": "B", "price": 5}],
[{"id": 1, "name": "A", "price": 10}, {"id": 2, "name": "B", "price": 5}]),
([], []),
])
def test_sort_products_by_price(input_data, expected):
assert sort_products_by_price(input_data) == expected
Продвинутые промты: рефакторинг и документация
4. Рефакторинг с улучшением читаемости
Задача: Улучшить существующий код без изменения логики.
Промт:
Refactor the following code to improve readability. Extract repeated logic into helper functions. Use descriptive variable names. Keep the same API.
5. Генерация документации OpenAPI
Задача: Создать спецификацию для API-эндпоинта.
Промт:
Generate an OpenAPI 3.0 spec for a POST /api/users endpoint that accepts JSON body with fields: name (string, required), email (string, required), age (integer, optional). Returns 201 with user object.
6. Поиск и исправление багов
Задача: Copilot анализирует код на потенциальные ошибки.
Промт:
Find potential bugs in the following code. Check for: race conditions, null pointer exceptions, SQL injection. Suggest fixes.
Экспертные промты: code review и архитектура
7. Code review с акцентом на безопасность
Задача: Провести ревью пул-реквеста с фокусом на OWASP Top 10.
Промт:
Perform a code review of the following pull request. Focus on security vulnerabilities: SQL injection, XSS, CSRF, insecure deserialization. Rate each finding as Critical/High/Medium/Low.
Пример результата:
## Code Review Report
### Critical Findings
1. **SQL Injection** (line 42): Direct string interpolation in query. Use parameterized queries.
### Medium Findings
2. **Missing input validation** (line 15): Email field not sanitized.
### Recommendations
- Replace raw SQL with ORM or prepared statements
- Add input validation middleware
8. Генерация архитектурного описания
Задача: Copilot создаёт ADR (Architecture Decision Record).
Промт:
Write an Architecture Decision Record for switching from REST to GraphQL for user service. Include: context, decision, consequences, alternatives considered.
9. Оптимизация производительности
Задача: Найти узкие места в алгоритме.
Промт:
Analyze the time complexity of the following algorithm. Suggest optimizations to reduce from O(n²) to O(n log n) or better. Provide code examples.
Практический кейс: как мы сократили время code review на 40%
В нашей команде (продуктовая разработка, микросервисы на Python и Go) мы внедрили Copilot в процесс code review. Раньше ревью занимало в среднем 2–3 часа на пул-реквест — нужно было проверить логику, стиль, безопасность, документацию.
Проблема: Разработчики тратили до 30% времени на повторяющиеся замечания (отсутствие type hints, неправильные названия переменных). Это снижало мотивацию и замедляло релизы.
Решение: Мы создали шаблон промта для code review, который Copilot применял к каждому PR перед отправкой человеку:
Review this PR for: 1) Type hints completeness 2) PEP 8 compliance 3) Missing error handling 4) Security issues. Output as checklist.
Результаты:
- Время code review сократилось на 40% (с 2.5 часов до ~1.5 часов)
- Количество повторных ревью уменьшилось на 60%
- Разработчики стали чаще получать одобрение с первой попытки
Вывод: Copilot не заменяет человека, но берёт на себя рутинные проверки. Экспертное ревью (архитектура, бизнес-логика) остаётся за человеком.
10 промтов для code review (шпаргалка)
| Категория | Промт |
|---|---|
| Безопасность | Review for OWASP Top 10 vulnerabilities. Focus on SQL injection and XSS. |
| Производительность | Check for N+1 queries, missing indexes, and memory leaks. |
| Читаемость | Suggest improvements for variable naming and function length. |
| Тесты | Verify test coverage for edge cases and error paths. |
| Документация | Check if all public methods have docstrings matching Google style. |
| Архитектура | Evaluate if the code follows SOLID principles. |
| Совместимость | Check for breaking changes in API contracts. |
| Логирование | Ensure error logging includes stack traces and context. |
| Конфигурация | Verify that secrets are not hardcoded. |
| Стандарты | Check adherence to team coding conventions. |
Заключение: Copilot — это ваш младший коллега, который никогда не спит
GitHub Copilot к 2026 году стал незаменимым инструментом для разработчиков — от джуниоров, которые учатся писать код, до сеньоров, которые автоматизируют рутину. Но его эффективность напрямую зависит от качества промтов. Чем точнее вы опишете задачу, тем лучше будет результат.
Помните: Copilot не понимает контекст вашего бизнеса. Он не знает, что этот эндпоинт будет обрабатывать платежи, а этот — персональные данные. Поэтому финальное решение всегда за вами. Используйте промты как черновик, а не как истину в последней инстанции.
Использованные источники:
- GitHub Copilot Documentation (docs.github.com/copilot)
- Stack Overflow Developer Survey 2025
- OWASP Top 10 – 2025 (owasp.org)
- PEP 8 – Style Guide for Python Code
Комментарии