Note:
The GitHub Command Palette is currently in public beta and is subject to change.
You can navigate, search, and run commands on GitHub with the GitHub Command Palette. The command palette is an on-demand way to show suggestions based on your current context and resources you've used recently. You can open the command palette with a keyboard shortcut from anywhere on GitHub, which saves you time and keeps your hands on the keyboard.
When you open the command palette, the suggestions are optimized to give you easy access from anywhere in a repository, personal account, or organization to top-level pages like the Issues page. If the location you want isn't listed, start entering the name or number for the location to refine the suggestions.
The ability to run commands directly from your keyboard, without navigating through a series of menus, may change the way you use GitHub. For example, you can switch themes with a few keystrokes, making it easy to toggle between themes as your needs change.
Open the command palette using one of the following default keyboard shortcuts:
- Windows and Linux:
Ctrl
+
K
or
Ctrl
+
Alt
+
K
- Mac:
Command
+
K
or
Command
+
Option
+
K
You can customize the keyboard shortcuts you use to open the command palette in the
Accessibility section
of your user settings. For more information, see "
Customizing your GitHub Command Palette keyboard shortcuts
."
When you open the command palette, it shows your location at the top left and uses it as the scope for suggestions (for example, the
octo-org
organization).
Notes:
- If you are editing Markdown text, open the command palette with
Ctrl
+
Alt
+
K
(Windows and Linux) or
Command
+
Option
+
K
(Mac).
- If you are working on a project, a project-specific command palette is displayed instead. For more information, see "
Changing the layout of a view
."
The default keyboard shortcuts used to open the command palette may conflict with your default OS and browser keyboard shortcuts. You have the option to customize your keyboard shortcuts in the
Accessibility section
of your account settings. In the command palette settings, you can customize the keyboard shortcuts for opening the command palette in both search mode and command mode.
You can use the command palette to navigate to any page that you have access to on GitHub.
-
Use
Ctrl
+
K
(Windows/Linux) or
Command
+
K
(Mac) to open the command palette with a scope determined by your current location in the UI.
-
Start typing the path you want to navigate to. The suggestions in the command palette change to match your text.
-
Optionally, narrow, expand, or completely change the scope for suggestions by editing the path in the command palette's text field.
- To narrow the scope within a user or organization account, highlight a repository then use
Tab
to add it to the scope.
- To expand the scope, highlight and remove an item in the scope using the
Backspace
or
delete
key.
- To clear the scope and text box, click
Clear
or use
Ctrl
+
Backspace
(Windows and Linux) or
Command
+
Delete
(Mac).
You can also use keystrokes to narrow your search. For more information, see "
Keystroke functions
."
-
Finish entering the path, or use the arrow keys to highlight the path you want from the list of suggestions.
-
Use
Enter
to jump to your chosen location. Alternatively, use
Ctrl
+
Enter
(Windows and Linux) or
Command
+
Enter
(Mac) to open the location in a new browser tab.
You can use the command palette to search for anything on GitHub.com.
-
Use
Ctrl
+
K
(Windows/Linux) or
Command
+
K
(Mac) to open the command palette with a scope determined by your current location in the UI.
-
Optionally, narrow, expand, or completely change the scope for suggestions by editing the path in the command palette's text field.
- To narrow the scope within a user or organization account, highlight a repository then use
Tab
to add it to the scope.
- To expand the scope, highlight and remove an item in the scope using the
Backspace
or
delete
key.
- To clear the scope and text box, click
Clear
or use
Ctrl
+
Backspace
(Windows and Linux) or
Command
+
Delete
(Mac).
-
Optionally, use keystrokes to find specific types of resource:
- #
Search for issues, pull requests, discussions, and projects
- !
Search for projects
- @
Search for users, organizations, and repositories
- /
Search for files within a repository scope
-
Begin entering your search terms. The command palette will offer you a range of suggested searches based on your search scope.
You can also use the full syntax of GitHub's integrated search within the command palette. For more information, see "
Search on GitHub documentation
."
-
Use the arrow keys to highlight the search result you want and use
Enter
to jump to your chosen location. Alternatively, use
Ctrl
+
Enter
(Windows and Linux) or
Command
+
Enter
(Mac) to open the location in a new browser tab.
You can use the GitHub Command Palette to run commands. For example, you can create a new repository or issue, or change your theme. When you run a command, the location for its action is determined by either the underlying page or the scope shown in the command palette.
- Pull request and issue commands always run on the underlying page.
- Higher-level commands, for example, repository commands, run in the scope shown in the command palette.
For a full list of supported commands, see "
GitHub Command Palette reference
."
-
The default keyboard shortcuts to open the command palette in command mode are
Ctrl
+
Shift
+
K
(Windows and Linux) or
Command
+
Shift
+
K
(Mac). If you already have the command palette open, press
>
to switch to command mode. GitHub suggests commands based on your location.
-
Optionally, narrow, expand, or completely change the scope for suggestions by editing the path in the command palette's text field.
- To narrow the scope within a user or organization account, highlight a repository then use
Tab
to add it to the scope.
- To expand the scope, highlight and remove an item in the scope using the
Backspace
or
delete
key.
- To clear the scope and text box, click
Clear
or use
Ctrl
+
Backspace
(Windows and Linux) or
Command
+
Delete
(Mac).
-
If the command you want is not displayed, check your scope then start entering the command name in the text box.
-
Use the arrow keys to highlight the command you want and use
Enter
to run it.
When the command palette is active, you can use one of the following keyboard shortcuts to close the command palette:
- Search and navigation mode:
Esc
or
Ctrl
+
K
(Windows and Linux)
Command
+
K
(Mac)
- Command mode:
Esc
or
Ctrl
+
Shift
+
K
(Windows and Linux)
Command
+
Shift
+
K
(Mac)
If you have customized the command palette keyboard shortcuts in the Accessibility settings, your customized keyboard shortcuts will be used for both opening and closing the command palette.
These keystrokes are available when the command palette is in navigation and search modes, that is, they are not available in command mode.
Keystroke
| Function
|
---|
>
| Enter command mode. For more information, see "
Running commands from the GitHub Command Palette
."
|
#
| Search for issues, pull requests, discussions, and projects. For more information, see "
Searching with the GitHub Command Palette
."
|
@
| Search for users, organizations, and repositories. For more information, see "
Searching with the GitHub Command Palette
."
|
/
| Search for files within a repository scope or repositories within an organization scope. For more information, see "
Searching with the GitHub Command Palette
."
|
!
| Search just for projects. For more information, see "
Searching with the GitHub Command Palette
."
|
Ctrl
+
C
or
Command
+
C
| Copy the search or navigation URL for the highlighted result to the clipboard.
|
Enter
| Jump to the highlighted result or run the highlighted command.
|
Ctrl
+
Enter
or
Command
+
Enter
| Open the highlighted search or navigation result in a new browser tab.
|
?
| Display help within the command palette.
|
These commands are available from all scopes.
These commands are available only within the scope of an organization.
Command
| Behavior
|
---|
New team
| Create a new team in the current organization. For more information, see "
Creating a team
."
|
Most of these commands are available only on the home page of the repository. If a command is also available on other pages, this is noted in the behavior column.
Command
| Behavior
|
---|
Clone repository: <URL type>
| Copy the URL needed to clone the repository using GitHub CLI, HTTPS, or SSH to the clipboard. For more information, see "
Cloning a repository
."
|
New discussion
| Create a new discussion in the repository. For more information, see "
Quickstart for GitHub Discussions
."
|
New file
| Create a new file from any page in the repository. For more information, see "
Adding a file to a repository
."
|
New issue
| Open a new issue from any page in the repository. For more information, see "
Creating an issue
."
|
Open in github.dev editor
| Open the current repository in the github.dev editor. For more information, see "
The github.dev web-based editor
."
|
These commands are available only when you open the command palette from a file in a repository.
Command
| Behavior
|
---|
Copy permalink
| Create a link to the file that includes the current commit SHA and copy the link to the clipboard. For more information, see "
Getting permanent links to files
."
|
Open in github.dev editor
| Open the currently displayed file in github.dev editor. For more information, see "
The github.dev web-based editor
."
|
These commands are available only when you open the command palette from a discussion. They act on your current page and are not affected by the scope set in the command palette.
Command
| Behavior
|
---|
Delete discussion...
| Permanently delete the discussion. For more information, see "
Managing discussions
."
|
Edit discussion body
| Open the main body of the discussion ready for editing.
|
Subscribe
/
unsubscribe
| Opt in or out of notifications for additions to the discussion. For more information, see "
About notifications
."
|
Transfer discussion...
| Move the discussion to a different repository. For more information, see "
Managing discussions
."
|
These commands are available only when you open the command palette from an issue. They act on your current page and are not affected by the scope set in the command palette.
Command
| Behavior
|
---|
Close
/
reopen issue
| Close or reopen the current issue. For more information, see "
About issues
."
|
Convert issue to discussion...
| Convert the current issue into a discussion. For more information, see "
Moderating discussions
."
|
Delete issue...
| Delete the current issue. For more information, see "
Deleting an issue
."
|
Edit issue body
| Open the main body of the issue ready for editing.
|
Edit issue title
| Open the title of the issue ready for editing.
|
Lock issue
| Limit new comments to users with write access to the repository. For more information, see "
Locking conversations
."
|
Pin
/
unpin issue
| Change whether or not the issue is shown in the pinned issues section for the repository. For more information, see "
Pinning an issue to your repository
."
|
Subscribe
/
unsubscribe
| Opt in or out of notifications for changes to this issue. For more information, see "
About notifications
."
|
Transfer issue...
| Transfer the issue to another repository. For more information, see "
Transferring an issue to another repository
."
|
These commands are available only when you open the command palette from a pull request. They act on your current page and are not affected by the scope set in the command palette.
Command
| Behavior
|
---|
Close
/
reopen pull request
| Close or reopen the current pull request. For more information, see "
About pull requests
."
|
Convert to draft
/
Mark pull request as ready for review
| Change the state of the pull request to show it as ready, or not ready, for review. For more information, see "
Changing the stage of a pull request
."
|
Copy current branch name
| Add the name of the head branch for the pull request to the clipboard.
|
Edit pull request body
| Open the main body of the pull request ready for editing.
|
Edit pull request title
| Open the title of the pull request ready for editing.
|
Subscribe
/
unsubscribe
| Opt in or out of notifications for changes to this pull request. For more information, see "
About notifications
."
|
Update current branch
| Update the head branch of the pull request with changes from the base branch. This is available only for pull requests that target the default branch of the repository. For more information, see "
About branches
."
|