Public/Remove-PCSecret.ps1

function Remove-PCSecret {
    <#
    .SYNOPSIS
        Removes a secret entry from the store.

    .PARAMETER Name
        Service name to remove (e.g., 'openai', 'brave-search').

    .EXAMPLE
        Remove-PCSecret -Name 'old-service'
    #>

    [CmdletBinding(SupportsShouldProcess)]
    param(
        [Parameter(Mandatory, Position = 0)]
        [string]$Name
    )

    $secrets = Read-PCSecretsFile

    if (-not $secrets.ContainsKey($Name)) {
        Write-Warning "Secret '$Name' not found in store."
        return
    }

    if ($PSCmdlet.ShouldProcess($Name, 'Remove secret')) {
        $secrets.Remove($Name)
        Write-PCSecretsFile -Secrets $secrets
        Write-Verbose "Removed secret: $Name"
    }
}