Getting the Most Out of GitHub Copilot: A Practical Guide
As GitHub Copilot continues to evolve, staying informed and optimizing your workflow is key. This article compiles answers to frequently asked questions, highlights useful resources, and shares practical advice for making the most of Copilot—whether you're exploring chat modes, managing context, or navigating VS Code integrations.
Leif Henning Larsen (Senior Cloud Solution Architect, Cloud & AI Apps, Customer Success | Microsoft Norway) visited our Front-end Guild yesterday (Wednesday, 24th of September 2025).
Some questions came up that he wanted to address, so how better than in the form of a blog-post on .builders.
Q&A on GitHub Copilot
To get inspiration for different chat modes or ready-made prompt templates, the following repo is a good starting point: github/awesome-copilot
Here you'll find community-contributed instructions, prompts, and configurations to help you make the most of GitHub Copilot.
I also recommend the GitHub Changelog-blog to keep up with updates for Copilot. It’s updated fairly often and is worth following. Note that the link is currently filtered for Copilot, but you can of course change the filter to view other areas of GitHub as well.
Here’s also some information about automatic model selection, which is gradually being introduced in VS Code.
There were also questions about chat history in VS Code. Here’s some info on that:
Copilot Chat in VS Code now stores chat history locally as “Chat Sessions.” The history persists across editor restarts and can be reopened or exported. As of now, there is no published time-based deletion policy — the history remains until manually deleted or you clear VS Code data.
Note that Copilot Chat on github.com follows a different rule: conversations there are automatically deleted after approximately 30 days.
And last but not least, there were questions regarding context limitations in Copilot or its models. Here’s a compiled response:
Copilot has a limited context window. This is measured in tokens, and different models have different token limits. Everything included in a request — system instructions, custom instructions, relevant code, and attachments — shares the same budget. When the limit is reached, Copilot will trim or ignore less relevant content to make room.
Instruction files count toward the limit. Files like .github/copilot-instructions.md and .github/instructions/*.instructions.md are automatically added to the chat/agent context and therefore consume token budget. Keep them short and precise.
Agent mode only fetches what’s needed. Instead of sending the entire codebase, the agent searches for relevant files/snippets (#file, #folder, #codebase) and includes only those in the prompt — only what’s actually included consumes tokens.
Attachments and “Spaces” help, but count when used. You can attach larger text blocks/images and store more context in Copilot Spaces; only the sections the agent refers to in its response consume tokens in that specific request.
Best practices (to get the most out of the context window):
- Keep instructions short and split them using applyTo where appropriate (language/folder).
- Start a new chat per task to avoid long history eating up the budget.
- Explicitly guide context with #file, #folder, #symbol, or #codebase.
- Link to large style guides/policies instead of pasting long texts into instruction files.
In short: Copilot uses a shared, limited context window. The more concise and targeted the context is, the better and more stable the responses will be.