You can ask Copilot Chat specific questions about your project or general software questions. You can also ask Copilot Chat to write code, fix errors, write tests, and document code.
Use the tabs above to select the environment where you are using Copilot Chat.
Some of the following example prompts use chat participants (preceded by @
), slash commands (preceded by /
), or chat variables (preceded by #
). For more information on keywords in prompts, see Asking GitHub Copilot questions in your IDE.
Ask general software questions
You can ask Copilot Chat general software questions. For example:
tell me about nodejs web server frameworks
how to create an express app
@terminal how to update an npm package
Ask questions about your project
You can ask Copilot Chat questions about your project.
what sorting algorithm does this function use
@workspace how are notifications scheduled
#file:gameReducer.js #file:gameInit.js how are these files related
To give Copilot the correct context, try some of these strategies:
- Highlight relevant lines of code.
- Use chat variables like
#selection
,#file
,#editor
,#codebase
, or#git
. - Use the
@workspace
chat participant.
Write code
You can ask Copilot to write code for you. For example:
write a function to sum all numbers in a list
add error handling to this function
@workspace add form validation, similar to the newsletter page
When Copilot returns a code block, the response includes options to copy the code, or to insert the code at your cursor, into a new file, or into the terminal.
Ask questions about alerts from GitHub Advanced Security features
You can ask Copilot about security alerts in repositories in your organization from GitHub Advanced Security features (code scanning, secret scanning, and Dependabot alerts). For example:
How would I fix this alert?
How many alerts do I have on this pull request?
Which line of code is this code scanning alert referencing?
What library is affected by this Dependabot alert?
Set up a new project
Use the /new
slash command to set up a new project. For example:
/new react app with typescript
/new python django web application
/new node.js express server
Copilot will suggest a directory structure and provide a button to create the suggested files and contents. To preview a suggested file, select the file name in the suggested directory structure.
Use the /newNotebook
slash command to set up a new Jupyter notebook. For example:
/newNotebook retrieve the titanic dataset and use Seaborn to plot the data
Fix, improve, and refactor code
If your active file contains an error, use the /fix
slash command to ask Copilot to fix the error.
You can also make general requests to improve or refactor your code.
how would you improve this code?
translate this code to C#
add error handling to this function
Write tests
Use the /tests
slash command to ask Copilot to write tests for the active file or selected code. For example:
/tests
/tests using the Jest framework
/tests ensure the function rejects an empty list
The /tests
slash command writes tests for existing code. If you prefer to write tests before writing code (test driven development), omit the /tests
command. For example:
Add tests for a JavaScript function that should sum a list of integers
Ask questions about Visual Studio Code
Use the @vscode
chat participant to ask specific questions about Visual Studio Code. For example:
@vscode tell me how to debug a node.js app
@vscode how do I change my Visual Studio Code colors
@vscode how can I change key bindings
Ask questions about the command line
Use the @terminal
chat participant to ask specific questions about the command line. For example:
@terminal find the largest file in the src directory
@terminal #terminalLastCommand
to explain the last command and any errors
Ask general software questions
You can ask Copilot Chat general software questions. For example:
tell me about nodejs web server frameworks
how to create an express app
how to update an npm package
Ask questions about your project
You can ask Copilot Chat questions about your project. To give Copilot the correct context, try some of these strategies:
- Highlight relevant lines of code.
- Open the relevant file.
- Use
#file
to tell Copilot to reference specific files. - Use
#solution
to tell Copilot to reference the active file.
For example:
what sorting algorithm does this function use
#file:gameReducer.js what happens when a new game is requested
Write code
You can ask Copilot to write code for you. For example:
write a function to sum all numbers in a list
add error handling to this function
When Copilot returns a code block, the response includes options to copy the code, insert the code into a new file, or preview the code output.
Ask questions about alerts from GitHub Advanced Security features
You can ask Copilot about security alerts in repositories in your organization from GitHub Advanced Security features (code scanning, secret scanning, and Dependabot alerts). For example:
How would I fix this alert?
How many alerts do I have on this pull request?
Which line of code is this code scanning alert referencing?
What library is affected by this Dependabot alert?
Fix, improve, and refactor code
If your active file contains an error, use the /fix
slash command to ask Copilot to fix the error.
You can also make general requests to improve or refactor your code.
how would you improve this code?
translate this code to C#
add error handling to this function
Write tests
Use the /tests
slash command to ask Copilot to write tests for the active file or selected code. For example:
/tests
/tests using the Jest framework
/tests ensure the function rejects an empty list
The /tests
slash command writes tests for existing code. If you prefer to write tests before writing code (test driven development), omit the /tests
command. For example:
Add tests for a JavaScript function that should sum a list of integers
Ask general software questions
You can ask Copilot Chat general software questions. For example:
tell me about nodejs web server frameworks
how to create an express app
how to update an npm package
Ask questions about your project
You can ask Copilot Chat questions about your project. To give Copilot the correct context, try some of these strategies:
- Highlight relevant lines of code.
- Open the relevant file.
- Add the file as a reference. For information about how to use file references, see Asking GitHub Copilot questions in your IDE.
- Use the
@project
chat participant.
For example:
what sorting algorithm does this function use
how are these files related
(with references to the files in question)@project how are notifications scheduled
Write code
You can ask Copilot to write code for you. For example:
write a function to sum all numbers in a list
add error handling to this function
When Copilot returns a code block, the response includes options to copy the code or to insert the code at your cursor.
Fix, improve, and refactor code
If your active file contains an error, use the /fix
slash command to ask Copilot to fix the error.
You can also make general requests to improve or refactor your code.
how would you improve this code?
translate this code to C#
add error handling to this function
Write tests
Use the /tests
slash command to ask Copilot to write tests for the active file or selected code. For example:
/tests
/tests using the Jest framework
/tests ensure the function rejects an empty list
The /tests
slash command writes tests for existing code. If you prefer to write tests before writing code (test driven development), omit the /tests
command. For example:
Add tests for a JavaScript function that should sum a list of integers
Some of the example prompts require you to be in a specific context on the GitHub website. For more information on how to access those contexts, see Asking Copilot Chat questions in different contexts.
Ask general software questions
You can ask Copilot Chat general software questions. For example:
tell me about nodejs web server frameworks
how to create an express app
what is the best way to update an npm package
Ask questions about a repository
You can ask Copilot Chat questions about a repository. For example:
what is the purpose of this repository?
When was the most recent release?
Where is rate limiting implemented in our API?
What was the last merged PR by USERNAME
Ask questions about a specific file or symbol
You can ask Copilot Chat questions about a specific file or symbol. For example:
what sorting algorithm does this function use
how are these files related
what is the purpose of this function
Ask questions about a knowledge base
You can ask Copilot Chat questions about a knowledge base. For example:
How do I deploy a new application?
What's the process for creating a new REST API?
What are our best practices for logging?
Ask questions about a specific piece of code
You can ask Copilot Chat questions about a specific piece of code. You might ask a question about a whole file, or a specific line. For example:
If you are asking about a whole file, you could enter:
Explain this file.
How could I improve this code?
How can I test this script?
If you are asking about specific lines, you could enter:
Explain the function at the selected lines.
How could I improve this class?
Add error handling to this code.
Write a unit test for this method.
Ask questions about GitHub Advanced Security alerts
You can ask Copilot Chat questions about security alerts in repositories in your organization from GitHub Advanced Security features (code scanning, secret scanning, and Dependabot alerts). For example:
How would I fix this alert?
How many alerts do I have on this pull request?
Which line of code is this code scanning alert referencing?
What library is affected by this Dependabot alert?
Ask Copilot Chat questions in a pull request
You can ask Copilot Chat questions in a pull request. Your question could relate to various elements of the pull request For example:
You might ask for a summary of the changes in the pull request:
Summarize this PR for me.
Summarize the comments in this PR.
Summarize the changes in this PR.
You might ask about the changes in a specific file in the pull request:
What's the purpose of this file?
Why has this module been included?
You might ask about the changes in a specific line in the pull request:
What is "actorData" in this line?
Explain this "do..end" block.
You might ask why a workflow failed:
Tell me why this job failed
Suggest a fix for this error
Ask Copilot Chat questions about a specific issue or discussion
You can ask Copilot Chat questions about a specific issue or discussion. For example:
what is the purpose of this issue?
Ask Copilot Chat questions about a specific commit
You can ask Copilot Chat questions about a specific commit. For example:
what is the purpose of this commit?
what is the expected output of this commit?
what is the best way to test this commit?