wingetsilent-installadguardtutorial
A

How to Install AdGuard DNS CLI Silently with winget on Windows

Install AdGuard DNS CLI silently with winget — one-line command for unattended deployments, plus upgrade and uninstall options. Apache-2.0 licensed.

· 3 min read · updated May 29, 2026

Need AdGuard DNS CLI on a server, golden image, or developer workstation without anyone watching the screen? winget's silent install handles it in seconds. Here's the recipe and the gotchas.

Skip to the command

Open Terminal as Administrator and run:

winget install --id AdGuard.AdGuardDNSCLI -e --silent --accept-package-agreements --accept-source-agreements

AdGuard DNS CLI: A lightweight DNS client for AdGuard DNS. It operates as a DNS server that forwards DNS requests to the corresponding upstream resolvers.

Typical install time: 10–60 seconds depending on installer size.

What gets installed

Field Value
Package ID AdGuard.AdGuardDNSCLI
Publisher Adguard Software Limited
Installer type Windows Installer (MSI)
License Apache-2.0
Latest version 0.1.1
Last release 2/12/2026
Minimum OS Windows 10+
Homepage github.com

MSI installers accept /quiet (no UI) and /norestart (skip reboot). winget passes both automatically with --silent.

Per-user install (no admin)

If you don't have admin rights, try per-user scope:

winget install --id AdGuard.AdGuardDNSCLI -e --scope user --silent

If the manifest doesn't have a user-scope installer, winget falls back with an error — in that case you genuinely need admin or use the Access denied fix.

Specify a version

To pin a known-good version (useful for reproducible CI / team standardisation):

winget install --id AdGuard.AdGuardDNSCLI -e --version 0.1.1 --silent

List available versions:

winget show --id AdGuard.AdGuardDNSCLI --versions

Override silent flags

If winget's --silent doesn't fully suppress the installer's UI, pass native flags via --override:

winget install --id AdGuard.AdGuardDNSCLI -e --override "/quiet /norestart"

These are the Windows Installer (MSI)-native silent switches the installer recognises.

Verify after install

winget list --id AdGuard.AdGuardDNSCLI

If the version is shown, the install succeeded.

Upgrade silently

winget upgrade --id AdGuard.AdGuardDNSCLI -e --silent --accept-package-agreements --accept-source-agreements

Or upgrade as part of a bulk weekly cron — see How to update all Windows apps.

Uninstall silently

winget uninstall --id AdGuard.AdGuardDNSCLI --silent --disable-interactivity

Detailed guide: How to uninstall Windows apps with winget.

In a provisioning script

PowerShell snippet for unattended Windows setup:

$apps = @(
  "AdGuard.AdGuardDNSCLI"
  # add more packages here
)

foreach ($id in $apps) {
  winget install --id $id -e --silent `
    --accept-package-agreements --accept-source-agreements
}

Wrap in Task Scheduler for one-shot machine provisioning. See Fresh Windows 11 setup.

Common errors

"AdGuard DNS CLI is already installed" — winget detected the existing install. To force-reinstall over the existing copy:

winget install --id AdGuard.AdGuardDNSCLI -e --silent --force

"Installer hash does not match" — Adguard Software Limited published a new version before the winget manifest updated. Wait ~24 hours or pass --force. See hash mismatch fix.

"Access denied" / 0x80070005 — run Terminal as Administrator. See Access denied fix.

0x80073D02 — package in use — AdGuard DNS CLI is currently running. Close it then retry. See package in use fix.

See also

Continue reading