cd /news/ai-agents/i-tried-using-an-ai-agent-to-set-up-… · home topics ai-agents article
[ARTICLE · art-88133] src=dev.to ↗ pub= topic=ai-agents verified=true sentiment=· neutral

I tried using an AI agent to set up a fresh Windows PC and Reddit was right about Ninite

A developer testing AI agents for Windows PC setup found that GUI-driving agents like OpenClaw struggled with installer checkboxes and modal windows, while scripted tools like Ninite, WinGet, and PowerShell completed 18 app installs before the agent recovered. The developer argues that deterministic tasks are better handled by scripts, reserving AI models for ambiguous planning, and recommends a hybrid approach for efficient setup.

read4 min views1 publishedAug 5, 2026

I tried the obvious nerd experiment on a fresh Windows machine: let an AI agent handle setup.

It looked clever for about two minutes.

Then I watched OpenClaw get stuck on installer checkboxes, on modal windows, and generally do the digital equivalent of forgetting why it walked into the room.

While it was still fighting one installer, I switched tactics:

That combo finished 18 app installs before the agent recovered.

And after reading through this r/openclaw thread, I think the real lesson is bigger than Windows setup:

GUI-driving agents are the wrong abstraction for deterministic work.

If the task is "figure out what this machine needs," use a model.

If the task is "install these 18 things and stop being interesting," use scripts.

I’m not anti-agent.

I’m anti-fragile-automation.

OpenClaw, GPT-5, and Claude are useful when the problem is ambiguous:

They are much less useful when the problem is fully deterministic:

Next

That second category is where WinGet, Ninite, and PowerShell win by being boring.

Boring is good.

This is the same pattern you see in real automations in n8n, Make, Zapier, or custom agent workflows:

That architecture is faster, easier to debug, and usually cheaper.

Here’s the split I’d use again.

Job Best tool
Install common desktop apps fast Ninite
Create a repeatable developer setup WinGet
Apply system config and automation PowerShell
Turn vague requirements into a plan GPT-5 or Claude
Drive random installer UIs Only if you have no better option

Because for the first hour of a clean Windows install, Ninite is still ridiculously efficient.

If you want a bundle like:

Ninite is hard to beat.

You pick the apps, download one installer, run it once, and move on.

No vendor site scavenger hunt.

No adware checkbox archaeology.

No ten-tab install ritual.

That’s why Reddit keeps bringing it up. It solves the obvious problem with very little ceremony.

WinGet wins the moment you care about repeatability.

That means:

A few useful commands:

winget search vscode
winget install --id Microsoft.VisualStudioCode -e
winget install --id Docker.DockerDesktop -e
winget install --id Git.Git -e
winget install --id Python.Python.3.12 -e

Export what’s installed:

winget export -o apps.json

Import later on a new machine:

winget import -i apps.json

That is a much better foundation than hoping an agent can survive every installer UI variation.

This is the workflow I’d recommend to most developers.

Prompt example:

I’m setting up a fresh Windows 11 machine for backend development.
I need Python, Node.js, Docker Desktop, VS Code, Git, Postman, WSL, and Ollama.
Give me:
1. A recommended install order
2. WinGet package IDs where possible
3. PowerShell commands for setup
4. Any dependencies or gotchas

This is where models shine. They can:

Grab the common apps fast.

Use it for the stuff that doesn’t need debate.

Example:

$packages = @(
  "Microsoft.VisualStudioCode",
  "Git.Git",
  "Python.Python.3.12",
  "OpenJS.NodeJS.LTS",
  "Docker.DockerDesktop",
  "Postman.Postman"
)

foreach ($pkg in $packages) {
  winget install --id $pkg -e --accept-package-agreements --accept-source-agreements
}

Example:

wsl --install
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
mkdir $HOME\dev -ErrorAction SilentlyContinue
git config --global init.defaultBranch main
git config --global pull.rebase false

If some weird installer has no package and no silent install option, fine.

That’s where OpenClaw-style control can help.

But that should be the exception, not the architecture.

This is the pattern that scales beyond PC setup.

You can ask GPT-5 or Claude to draft a script like this:

$apps = @(
  "Microsoft.VisualStudioCode",
  "Git.Git",
  "Python.Python.3.12",
  "OpenJS.NodeJS.LTS",
  "Docker.DockerDesktop"
)

foreach ($app in $apps) {
  Write-Host "Installing $app"
  winget install --id $app -e --silent --accept-package-agreements --accept-source-agreements
}

Write-Host "Done"

That’s a much better use of AI than asking it to literally watch the screen and guess where the Next

button moved.

This is not just a Windows post.

It’s the same design decision you make in any serious automation:

Use the model for:

Use deterministic tools for:

That split is what makes agents useful instead of expensive theater.

This is where the PC setup experiment connects directly to production automation.

Once you start using GPT-5 or Claude in loops for:

per-token pricing gets annoying fast.

Not because the models are bad.

Because repetitive operations multiply cost in ways that are hard to predict.

That’s exactly why flat-rate compute is interesting for developers building agents and automations.

If your workflow architecture is "model thinks, script executes," you still want the model available constantly for the parts that need judgment. You just don’t want every retry and planning pass to feel like a billing event.

That’s the appeal of Standard Compute:

That pricing model makes a lot more sense for agent-heavy systems than pretending every workflow can be reduced to a single cheap completion.

Reddit was right about Ninite.

But only for the first layer of the problem.

My take after doing this the dumb way first:

The winning pattern is not "let the agent do everything."

It’s:

That turned out to be the useful lesson from a silly fresh-PC experiment.

The agent only became helpful once I stopped asking it to pretend to be a mouse.

If you’re building setup flows, onboarding scripts, or agent automations, that distinction matters a lot more than the demo does.

── more in #ai-agents 4 stories · sorted by recency
── more on @openclaw 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-tried-using-an-ai-…] indexed:0 read:4min 2026-08-05 ·