Skip to main content

Getting started with prompts for Copilot Chat

Get an overview of ways to use Copilot Chat.

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?