December 11th, 2025
heart2 reactions

Making Windows Terminal awesome with GitHub Copilot CLI

Kayla Cinnamon
Senior Developer Advocate

As someone who lives and breathes in the command line, I love making my terminal feel like home. Windows Terminal is full of personalization options that really allow for a custom experience. Additionally, I can stay within my terminal for my development with GitHub Copilot with the GitHub Copilot CLI. Let’s walk through how you can trick out your terminal with some of my favorite customizations and optimize it for using GitHub Copilot CLI.

What is GitHub Copilot CLI?

copilot banner image

GitHub Copilot CLI gives you the power of GitHub Copilot directly in your terminal, without having to use an IDE. I use it all the time when developing, especially when I’m playing around in a new code base.

When I’m working with a language I’m unfamiliar with, I ask it to help me build the project to make sure everything is set up correctly and I don’t have any build errors. I also ask it how to do certain command line actions I don’t know or can’t remember. For example, I just used it to clear my PowerShell suggestion history because I had some typos I didn’t want it suggesting.

I’ve even used it to help me set up demos. One time I was wanting to show off the rendering speed of Edit and I needed a really large text file, so I told Copilot to create me a really large text file just filled with lorem ipsum. This saved me a ton of time and made for a great demo!

To install GitHub Copilot CLI, you can run the following npm command to install it globally:

npm install -g @github/copilot

Launching the CLI is as simple as typing copilot into your terminal.

Copilot banner always

When you first launch the GitHub Copilot CLI, you’ll see this awesome banner appear at the top:

copilot banner image

I’m a huge fan of the banner animation and I want to see it every time I launch Copilot. This isn’t the default behavior, but I have a couple tricks to be able to see it on every launch of the Copilot CLI:

1. (What I did) Set "banner" to "always" in the GitHub Copilot CLI config.json file. On Windows, this is located at C:\Users\USERNAME\.copilot\config.json. In Windows Subsystem for Linux (WSL), you can find it at ~\.copilot\config.json.

2. Add the --banner flag when launching the CLI:

copilot --banner

Running shell commands

When you’re using the CLI, you’re giving the agent a prompt whenever you enter text. If you want to enter a shell command, you can stay within the Copilot CLI context and just prepend your command with !. This way you don’t have to close out the CLI to enter a command.

shell command 1 image
shell command 2 image

Customizing the terminal

Windows Terminal gives you the ability to customize just about everything and I’ve tricked mine out. Here are some of my favorite customizations:

Creating a GitHub Copilot CLI profile

copilot profile image

Sometimes I want to open a new tab in Terminal directly into the GitHub Copilot CLI. I’ve made this possible by creating a GitHub Copilot profile. I just duplicated my default PowerShell profile and then modified a few settings.

new terminal profile image

I changed the name to GitHub Copilot and updated the icon.

I also set my Starting directory to the folder where I keep my projects.

Then, since I’m using PowerShell, I added -c copilot to the end of the Command line setting. This tells PowerShell to run the Copilot command on launch:

"C:\Program Files\PowerShell\7\pwsh.exe" -c copilot

Opening a profile as a pane

Not necessarily a setting, but I like to use Terminal’s pane functionality if I’m switching between the Copilot CLI and another shell. You can open a new pane by holding Alt and selecting the profile from the dropdown list. If you want to close a pane, you can type Ctrl+Shift+W.

split pane image

Restoring tabs after relaunch

I often like to pick up where I’ve left off when I open up Terminal. To reopen the tabs I had open previously, I set the When Terminal starts setting on the Startup page to Restore window layout and content. This lets me quickly get back into my flow, especially if I need to restart Terminal while developing and I need those same tabs back immediately.

when terminal starts image

Custom background image

All of my profiles have a custom background. You can set a background image for each profile within your terminal, or just set one that will apply to all profiles.

If you want to apply a background image to every profile, modify the Background image path setting under Defaults -> Appearance:

background image image

Retro terminal effects

Another fun customization I use from time to time is the retro terminal effects, which adds glowing text and scan lines. To do this, enable the Retro terminal effects setting under Defaults -> Appearance. If you only want this to apply to one profile, navigate to that profile’s appearance settings and enable it there.

retro scanlines image

Customizing your prompt

One of my favorite ways to customize my terminal prompt is with Oh My Posh. Oh My Posh can help add styling and useful information to your prompt header. The thing that makes Oh My Posh great for displaying quick information is its segments functionality.

oh my posh image

Oh My Posh has a variety of segments that can provide additional context for things relating to the CLI, source control, music, and even your own health (plus more). One of my favorites is the Git segment (pictured above) which gives you source control information such as the branch you have checked out, what your diff is, and the state of your changes.

There are also segments for npm and React that display what the currently active version is for each.

When I’m developing, I’m always listening to music. Years ago, I contributed the cinnamon theme so I could have my current Spotify song displayed in my prompt:

omp cinnamon image

If you want to get started using Oh My Posh, here’s how!

Install Oh My Posh

My preferred method for installation through winget and you can run this command in your terminal to kick off the install:

winget install JanDeDobbeleer.OhMyPosh --source winget

More detailed instructions and alternative methods for how to install Oh My Posh can be found here.

Download and install a Nerd Font

In order for the glyphs to appear, you’ll need to download and install a Nerd Font, then set it as your font inside Terminal. My preferred font is Caskaydia Cove, but choose whichever speaks to you.

After downloading the font, extract the files from the zip folder, open them, and install them.

Once the font files are installed, you can set your Nerd Font as your font in Terminal:

font setting image

Applying an Oh My Posh theme

The list of available Oh My Posh themes can be found here. Once you’ve chosen a theme you like, you can follow these detailed instructions for how to enable it in your shell.

To enable your theme in PowerShell so it’s always applied on launch, add the following line to your PowerShell profile (not Terminal’s profile for PowerShell):

oh-my-posh init pwsh --config "THEMENAME" | Invoke-Expression

To open your PowerShell profile file, you can run code $PROFILE or notepad $PROFILE from PowerShell. If this file doesn’t exist, you’ll be prompted to create it.

Adding a GitHub Copilot segment

In Oh My Posh version 28.1.0 and newer, you can add a GitHub Copilot segment to your prompt that displays usage statistics and quota information including premium interactions, inline completions, and chat usage.

omp copilot image

I added this segment to my prompt by creating a custom theme and pointing my PowerShell profile to it. I grabbed a copy of the 1_shell theme from the GitHub repository and added the following object to the right-aligned segments list:

{
    "type": "copilot",
    "template": "   {{ .Premium.Percent.Gauge }} ",
    "cache": {
        "duration": "5m",
        "strategy": "session"
    },
    "properties": {
        "http_timeout": 1000
    }
}

This code block displays the percentage of your premium quota that you’ve used. The docs site goes into more detail with how to style and add more information to this segment.

Lastly, I authenticated using the oh-my-posh auth copilot command to get everything working.

Happy command lining!

Those are just some of my favorite tips and tricks for getting the most out of Windows Terminal with GitHub Copilot CLI. If you have any questions or want to learn more, feel free to reach out on Bluesky (@kaylacinnamon) or X (@cinnamon_msft)!

▶️Go deeper: Scripting the GitHub Copilot CLI

Check out this AI Dev Days session by John Lindquist for even more tips and tricks with the GitHub Copilot CLI!

Author

Kayla Cinnamon
Senior Developer Advocate

Senior Developer Advocate, former PM for Windows Terminal, Microsoft PowerToys, Cascadia Code, and Windows Developer Experiences.

3 comments

Sort by :
  • Image
    Akash 6 hours ago

    Hi ! I am exicted to try out this awesome CLI for sure. I have a question , Does it have any power to analyze image screenshots ? like from the source paths ?

  • Image
    Rudi Larno

    Where does one find that GitHub Copilot Icon?
    Copilot itself could not find it. Only found the black & white one as part of the vs code extension

  • Image
    Linda Berns

    When I picked the fonts: CaskaydiaCove Nerd Font my terminal screen is so blurry it kills my eyes. what a shame