Share this post I was asked by a YouTube user “How did you find those GUIDs within the registry?” So I wrote this post.

The modification of the PROFILES.JSON files is one of the final steps in installing and using Windows Terminal. This file contains the information that allows you to add tabs for terminals you wish to run. Below is a sample section I used to add WSL Ubuntu terminal.
The “guid” item is the first entry. GUID (or UUID), is an acronym for Globally Unique Identifier’ or ‘Universally Unique Identifier. A guid is represented as a 32-character hexadecimal string, such as dcab32b8-e5ec-4f09-af89-44634bc7a04d, and is usually stored in the form of a 128bit integer. It is almost impossible for two numbers generated by the guid to be repeated, making them unique.
{ “guid”: “23596f84-c3ea-4cd8-a7df-550dce37bcd0”, “name”: “UBUNTU! “, “foreground”: “#FF0000”, “background”: “#1CD3A2”, “colorscheme”: “Solarized Dark”, “historySize”: 9001, “snapOnInput”: true, “cursorColor”: “#FFFFFF”, “cursorShape”: “bar”, “commandline”: “ubuntu.exe”, “fontFace”: “Consolas”, “fontSize”: 18, “acrylicOpacity”: 0.75, “useAcrylic”: true, “closeOnExit”: false, “padding”: “0, 0, 0, 0” },123456789101112131415161718{ “guid”: “23596f84-c3ea-4cd8-a7df-550dce37bcd0”, “name”: “UBUNTU! “, “foreground”: “#FF0000”, “background”: “#1CD3A2”, “colorscheme”: “Solarized Dark”, “historySize”: 9001, “snapOnInput”: true, “cursorColor”: “#FFFFFF”, “cursorShape”: “bar”, “commandline”: “ubuntu.exe”, “fontFace”: “Consolas”, “fontSize”: 18, “acrylicOpacity”: 0.75, “useAcrylic”: true, “closeOnExit”: false, “padding”: “0, 0, 0, 0″ ,The guid for each terminal will be different and must be used when adding the code block to the PROFILES.JSON file to allow the Windows Terminal to find the terminal and insert it as a tabbed terminal window.|”, “foreground”,: #FF0000, “background”,:”#1CD3A2″, ‘colorscheme:”Solarized Dark”, ‘historySize: 9001,’snapOnInput: true, ‘cursorColor:#FFFFFFFF”,,1234567891012131415161718 ‘guid” “23596f84-c3ea-4cd8-a7df-550dce37bcdfontFace:”: 0, 0,, 0,, a7df-550dce37bcdfontFace: 0″, 0″, 0, 0, 0, 0, 0″, â€, a7dfontSize”, “name”:, “pa7d”:, “,,,,,,,,,,,,,,,,0,,,,,,,,,,,,,,,} You can use the Registry Editor to quickly search for the guid(s), so you will need to use the FIND or FINDNEXT tools under EDIT.
Below is the location of WSL terminals. The “Publisher” item, in the form of CN=45FBC5C5-8DE5-4E85-AE6A-377002DA7605 is what you want. The highlighted portion of the string will be used, but the CN= will not be included.
Kali:Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel\StateRepository\Cache\PackageFamily\Data\7d
Ubuntu:Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel\StateRepository\Cache\PackageFamily\Data\7e
Below is the location of the PowerShell Core terminal. The “Production” item, in the form of C:\WINDOWS\Installer\69C0AFAD-2B31-4906-BDD3-8016DAAD82BC\PowerShellExe.ico is what you want. The highlighted portion of the string will be used.
PowerShell Core:Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products\DAFA0C9613B26094DB3D0861ADDA28CB
You could also use PowerShell Core guid to locate the PowerShell Core GUID if you wanted to be fancy.
NOTE: The NAME input value must be case sensitive !
Param([parameter(Mandatory=$true)][string]$Name)$path = ‘HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*’Get-ItemProperty -Path $path | Where-Object $_.DisplayName -like “*$name*” | select Displayname, ModifyPath 123456Param([parameter(Mandatory=$true)]