How to disable every version of copilot?

I’m yanking this off Reddit for when they delete the thread (happening more frequently!!).  How to get rid of copilot…

Did a bunch of digging today. It looks like you can also disable it via Intune, using a configuration profile. Thanks to https://www.reddit.com/user/maxpowers156/ for posting it.

*EDIT* 9-25 this config policy failed for all my win11 clients. I tried making a win32 app and pushing out the reg change and that is generating errors also, so YMMV. Right now we’re manually using command line to edit the registry.

Here is what I got, still testing this out in our environment:
Custom Template

Name: Disable Windows Copilot OMA-URI: ./User/Vendor/MSFT/Policy/Config/WindowsAI/TurnOffWindowsCopilot Data type: Integer Value: 1 Copilot is only applicable to the Insider Preview build currently: WindowsAI Policy CSP – Windows Client Management | Microsoft Learn

I made a dynamic group that finds windows 11 OSes to target it. will test monday.

 (device.deviceOSVersion -startsWith "10.0.2")

lastly, here is the reg setting if you just want to push out an Intune app, thanks to https://www.reddit.com/user/kheldorn/. I had this work on 1 test machine, and not work on a different one. it’s Fun!

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\WindowsCopilot] "TurnOffWindowsCopilot"=dword:00000001
See https://learn.microsoft.com/en-us/windows/client-management/mdm/policy-csp-windowsai
9
User avatar
level 3

I couldn’t get the CSP to work either. I have Powershell disabled for my users so I patched together a Remediation to apply it to the users HKU instead of HKCU as system. Tested and confirmed working.

Detection:

New-PSDrive HKU Registry HKEY_USERS | out-null
$user = get-wmiobject -Class Win32_Computersystem | select Username;
$sid = (New-Object System.Security.Principal.NTAccount($user.UserName)).Translate([System.Security.Principal.SecurityIdentifier]).value;
$key = "HKU:\$sid\Software\Policies\Microsoft\Windows\WindowsCopilot"
$val = (Get-Item "HKU:\$sid\Software\Policies\Microsoft\Windows\WindowsCopilot");
$off = $val.GetValue("TurnOffWindowsCopilot");

if($off -ne 1)
{
    Write-Host "Not Compliant"
    Exit 1
}
else
{
    Write-Host "Compliant"
    Exit 0
}  

Remediation:

        New-PSDrive HKU Registry HKEY_USERS | out-null
        $user = get-wmiobject -Class Win32_Computersystem | select Username;
        $sid = (New-Object System.Security.Principal.NTAccount($user.UserName)).Translate([System.Security.Principal.SecurityIdentifier]).value;
        New-Item -Path HKU:\$sid\Software\Policies\Microsoft\Windows -Name WindowsCopilot -Force
        $key = "HKU:\$sid\Software\Policies\Microsoft\Windows\WindowsCopilot"
        $val = (Get-Item "HKU:\$sid\Software\Policies\Microsoft\Windows\WindowsCopilot") | out-null
        $reg = Get-Itemproperty -Path $key -Name TurnOffWindowsCopilot -erroraction 'silentlycontinue'
        if(-not($reg))
        	{
        		Write-Host "Registry key didn't exist, creating it now"
                        New-Itemproperty -path $Key -name "TurnOffWindowsCopilot" -value "1"  -PropertyType "dword" | out-null
        		exit 1
        	} 
        else
        	{
         		Write-Host "Registry key changed to 1"
        		Set-ItemProperty  -path $key -name "TurnOffWindowsCopilot" -value "1" | out-null
        		Exit 0  
            	}

 

How to disable every version of copilot?
byu/davidS2525 insysadmin

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>