context-engineering — правило для GitHub Copilot: контекст
Правило для GitHub Copilot: как раскладывать файлы, типы и комментарии, чтобы подсказки попадали в проект, а не в пустоту.
.github/instructions/context-engineering.instructions.mdЧто делает context-engineering
Это инструкция для Copilot, а не код. Она задаёт привычки, от которых зависит, сколько контекста агент видит: описательные пути вместо src/utils/m.ts, рядом лежащие компоненты, тесты и типы, явные аннотации типов вместо вывода, именованные константы вместо магических чисел.
Внутри — шесть разделов. Структура проекта, паттерны кода, работа с Copilot, контекстные подсказки, изменения в нескольких файлах и разбор случаев, когда подсказки уходят не туда. Отдельно советуется файл COPILOT.md с архитектурными решениями и ссылки на существующие файлы как образец.
Правило подключается файлом .github/instructions/context-engineering.instructions.md и действует на весь проект через applyTo: **. Полезно там, где автодополнение выдаёт общее вместо конкретного: чаще всего причина в открытых вкладках и позиции курсора, а не в модели.
Какие задачи решает
- объяснить Copilot границы модуля через index-файлы
- добиться подсказок по типам вместо догадок
- разложить компоненты, тесты и хуки в одну папку
- описать архитектуру в
COPILOT.mdдля агента - провести рефакторинг по одному файлу за раз
Примеры запросов агенту
- Открой файлы авторизации в вкладках и подскажи, что менять в middleware
- Опиши, какие файлы нужны для правки модели User, эндпоинта и тестов
- Следуй тому же паттерну, что в
src/api/users.ts
Как установить context-engineering
Вручную: положить файлы
.github/instructions/context-engineering.instructions.mdПоле applyTo задаёт, к каким файлам применять
Вручную: положить файлы
.claude/rules/context-engineering.mdПоле paths во frontmatter ограничивает файлы: applyTo из источника → paths
AGENTS.md
Codex читает AGENTS.md: вставьте текст правила туда
Вручную: положить файлы
.cursor/rules/context-engineering.mdcВо frontmatter: description, globs, alwaysApply. applyTo из источника → globs, иначе правило само не подключится
Вручную: положить файлы
.devin/rules/context-engineering.mdВручную: положить файлы
.clinerules/context-engineering.mdПо шагам, с командами для каждой платформы: AGENTS.md и CLAUDE.md: что это, кто читает и какой выбрать
Из того же набора732
Весь набор →Похожие
Рядом в теме «Настройка агента: память, контекст, субагенты»
Все правила IDE по теме «Настройка агента: память, контекст, субагенты» →Вопросы о context-engineering
Как установить context-engineering в GitHub Copilot?
Положи файл .github/instructions/context-engineering.instructions.md в репозиторий. Директива applyTo: ** в начале файла включает правило для всего проекта.
Что делает context-engineering?
Описывает, как структурировать код и проект, чтобы Copilot лучше понимал контекст. Пути, типы, имена и комментарии здесь работают как подсказки для модели.
Почему Copilot выдаёт общие ответы?
Правило советует проверить открытые вкладки и позицию курсора: Copilot опирается на них как на сигналы контекста. Если файлы не открыты, добавь ограничения и упомяни фреймворк.
Исходный текст
context-engineering.instructions.md · MIT
--- description: 'Guidelines for structuring code and projects to maximize GitHub Copilot effectiveness through better context management' applyTo: '**' --- # Context Engineering Principles for helping GitHub Copilot understand your codebase and provide better suggestions. ## Project Structure - **Use descriptive file paths**: `src/auth/middleware.ts` > `src/utils/m.ts`. Copilot uses paths to infer intent. - **Colocate related code**: Keep components, tests, types, and hooks together. One search pattern should find everything related. - **Export public APIs from index files**: What's exported is the contract; what's not is internal. This helps Copilot understand boundaries. ## Code Patterns - **Prefer explicit types over inference**: Type annotations are context. `function getUser(id: string): Promise<User>` tells Copilot more than `function getUser(id)`. - **Use semantic names**: `activeAdultUsers` > `x`. Self-documenting code is AI-readable code. - **Define constants**: `MAX_RETRY_ATTEMPTS = 3` > magic number `3`. Named values carry meaning. ## Working with Copilot - **Keep relevant files open in tabs**: Copilot uses open tabs as context signals. Working on auth? Open auth-related files. - **Position cursor intentionally**: Copilot prioritizes code near your cursor. Put cursor where context matters. - **Use Copilot Chat for complex tasks**: Inline completions have minimal context. Chat mode sees more files. ## Context Hints - **Add a COPILOT.md file**: Document architecture decisions, patterns, and conventions Copilot should follow. - **Use strategic comments**: At the top of complex modules, briefly describe the flow or purpose. - **Reference patterns explicitly**: "Follow the same pattern as `src/api/users.ts`" gives Copilot a concrete example. ## Multi-File Changes - **Describe scope first**: Tell Copilot all files involved before asking for changes. "I need to update the User model, API endpoint, and tests." - **Work incrementally**: One file at a time, verifying each change. Don't ask for everything at once. - **Check understanding**: Ask "What files would you need to see?" before complex refactors. ## When Copilot Struggles - **Missing context**: Open the relevant files in tabs, or explicitly paste code snippets. - **Stale suggestions**: Copilot may not see recent changes. Re-open files or restart the session. - **Generic answers**: Be more specific. Add constraints, mention frameworks, reference existing code.
© github · MIT · github/awesome-copilot