15 промтов для GitHub Copilot: от коммитов до code review

Введение

GitHub Copilot — это AI-ассистент, который встраивается в IDE и помогает писать код быстрее. Но многие разработчики используют его лишь как автодополнение, упуская более мощные сценарии: генерацию осмысленных коммитов, автоматическое code review, рефакторинг и документирование. Copilot основан на модели OpenAI Codex, обученной на миллионах репозиториев GitHub (источник: GitHub Copilot Docs). В этой подборке — 15 промтов для работы с кодом: от написания коммитов до ревью, с примерами и пояснениями.

Категория 1: Генерация и написание кода

1. Промт: «Напиши функцию на Python для парсинга CSV-файла с обработкой ошибок»
Задача: Сгенерировать готовый фрагмент кода с проверками.
Пример:

def parse_csv(file_path: str) -> list[dict]:
    import csv
    data = []
    try:
        with open(file_path, 'r', encoding='utf-8') as f:
            reader = csv.DictReader(f)
            for row in reader:
                data.append(row)
    except FileNotFoundError:
        print(f'Файл {file_path} не найден')
    except Exception as e:
        print(f'Ошибка чтения: {e}')
    return data

Результат: Copilot генерирует код с type hints и обработкой исключений.

2. Промт: «Создай API-эндпоинт на FastAPI для получения списка пользователей с пагинацией»
Задача: Получить готовый эндпоинт.
Пример:

from fastapi import FastAPI, Query
app = FastAPI()

@app.get('/users/')
async def get_users(page: int = Query(1, ge=1), limit: int = Query(10, le=100)):
    users = [{'id': i, 'name': f'User{i}'} for i in range((page-1)*limit, page*limit)]
    return {'page': page, 'limit': limit, 'users': users}

Вывод: Copilot понимает контекст и добавляет валидацию параметров.

3. Промт: «Напиши тест на Jest для React-компонента Button»
Задача: Сгенерировать unit-тест.
Пример:

import { render, screen, fireEvent } from '@testing-library/react';
import Button from './Button';

test('calls onClick when clicked', () => {
  const handleClick = jest.fn();
  render(<Button onClick={handleClick}>Click</Button>);
  fireEvent.click(screen.getByText('Click'));
  expect(handleClick).toHaveBeenCalledTimes(1);
});

Результат: Тест покрывает базовый сценарий.

Категория 2: Объяснение и документирование кода

4. Промт: «Объясни, что делает этот код: [вставь код]»
Задача: Получить текстовое объяснение.
Пример: Для кода map(lambda x: x**2, range(10)) Copilot ответит: «Создаёт генератор, который возводит числа от 0 до 9 в квадрат».

5. Промт: «Добавь docstring в функцию parse_csv»
Задача: Документировать существующий код.
Пример:

def parse_csv(file_path: str) -> list[dict]:
    """
    Парсит CSV-файл и возвращает список словарей.
    Args:
        file_path (str): Путь к CSV-файлу.
    Returns:
        list[dict]: Данные из файла.
    Raises:
        FileNotFoundError: Если файл не найден.
    """

Результат: Copilot генерирует docstring в формате Google.

6. Промт: «Добавь комментарии к этому SQL-запросу: SELECT * FROM users WHERE age > 18»
Задача: Понять логику запроса.
Пример:

-- Выбрать всех пользователей старше 18 лет
SELECT * FROM users WHERE age > 18;

Вывод: Copilot создаёт краткие пояснения.

Категория 3: Code review и улучшение кода

7. Промт: «Проведи code review этого кода: [вставь код]»
Задача: Получить список проблем.
Пример: Для кода без обработки ошибок Copilot укажет: «Нет try-except, возможна ошибка при открытии файла».

8. Промт: «Найди узкие места в производительности этого цикла: for i in range(len(lst)): print(lst[i])»
Задача: Оптимизировать код.
Результат: Copilot предложит использовать for i in lst.

9. Промт: «Рефактори этот код, чтобы убрать дублирование: [вставь код]»
Задача: Улучшить структуру.
Пример: Copilot объединит повторяющиеся блоки в функцию.

Категория 4: Коммиты и сообщения

10. Промт: «Сгенерируй сообщение коммита для изменений: [diff]»
Задача: Создать осмысленный коммит.
Пример: Для diff с добавлением функции parse_csv Copilot предложит: «feat: add CSV parsing function with error handling».

11. Промт: «Напиши commit message в формате Conventional Commits: исправлен баг с обработкой пустого файла»
Задача: Получить структурированное сообщение.
Результат: «fix: handle empty CSV file and add validation».

12. Промт: «Создай шаблон PR description для нового API-эндпоинта»
Задача: Автоматизировать описание пул-реквеста.
Пример: Copilot генерирует: «## Changes\n- Added /users/ endpoint\n## Testing\n- Run curl http://localhost:8000/users/».

Категория 5: Продвинутые сценарии

13. Промт: «Напиши миграцию Alembic для добавления колонки email в таблицу users»
Задача: Создать миграцию.
Пример:

from alembic import op
import sqlalchemy as sa

def upgrade():
    op.add_column('users', sa.Column('email', sa.String(255), nullable=True))

def downgrade():
    op.drop_column('users', 'email')

Результат: Copilot генерирует функции upgrade/downgrade.

14. Промт: «Создай Dockerfile для Python-приложения с Poetry»
Задача: Получить готовый Dockerfile.
Пример:

FROM python:3.11-slim
WORKDIR /app
COPY pyproject.toml poetry.lock ./
RUN pip install poetry && poetry install --no-dev
COPY . .
CMD ["uvicorn", "main:app", "--host", "0.0.0.0"]

Вывод: Copilot учитывает биндинг и порт.

15. Промт: «Объясни ошибку в этом логе: [лог] и предложи исправление»
Задача: Диагностика.
Пример: Для KeyError Copilot укажет на отсутствие ключа в словаре.

Заключение

Эти 15 промтов покрывают основные сценарии: генерацию кода, ревью, коммиты и отладку. Используйте их в повседневной работе, чтобы ускорить разработку и повысить качество кода. Начните с малого — попробуйте промт для code review в своём проекте. Copilot не заменит разработчика, но сделает его продуктивнее.

← Все статьи

Комментарии

Читайте также

Интеграция I2C-устройств с AI-агентом ASI Biont: мониторинг датчиков и управление через чат

16 июля 2026

Создайте надежную продуктовую стратегию: уроки курса «Управление продуктом и рост» на Asibiont

16 июля 2026

Разрыв в оценке агентов: у Enterprise AI-организаций проблема с реальностью, а не с покрытием — и большинство всё равно запускают в продакшн

16 июля 2026

Как перестать постить «в никуда»: обзор курса Content Strategy — контент-стратегия и контент-маркетинг на Asibiont

16 июля 2026

E-Ink Waveshare + ASI Biont: как подключить дисплей на электронных чернилах к AI-агенту без программирования

16 июля 2026

Как AI-агент ASI Biont автоматизирует DigitalOcean: управление дроплетами, мониторинг и деплоймент без кода

16 июля 2026

AI-агент ASI Biont и CNC станки: автоматизация GRBL/Marlin через диалог в чате

16 июля 2026

Vibe Coding и прорыв Moonshot Kimi 3: как новая модель догоняет Anthropic Opus 4.8

16 июля 2026

Vibe Coding и $300 млн без продукта: как бывший исследователь DeepMind перевернул венчурный рынок

16 июля 2026