Intelligent PC repair and diagnostics — offline-first.
[v1.5.0] Fixed auto-fix wiping all startup entries, added HTTP ACL scope for Ollama, real browser cache paths, working hibernation toggle, and 20+ stability patches. All features now work as intended.
Most features work offline; optional AI-powered chat via Ollama.
- Ollama HTTP scope — Added
plugins.http.scopetotauri.conf.json; AI chat now works (was 100% dead from missing ACL). - Auto-fix startup script — Fixed
$_shadowing that deleted every HKLM/HKCU startup entry; now creates a backup before removing non-essential items. - Browser cache paths — Fixed 5 cleanup locations using guessed
%LOCALAPPDATA%\<browser>\Cachethat matched no installed browser; now uses real vendor dirs (Chrome, Edge, Brave, Firefox, Vivaldi, Opera). - Hibernation toggle — Fixed
powercfg "/hibernate on"single-arg failure; now uses two args/hibernate+on/off. - Scan deadlock fix —
run_command_streamingnow drains both pipes independently and waits after draining; no more busy-loop or permanent spinner. - Scan phase terminal event — Agent loop now emits final
scan-status "complete"; no longer permanently pinned to"fixing". - PowerShell injection — Added
ps_quote()helper that doubles'in service names/profile names; prevents command injection inmanage_serviceandset_network_profile. toggle_hibernationauto-fixable — Set tofalse; no longer falsely claims it can fix memory.fix_high_memoryhonest —fix_available: false, auto_fixable: false; no longer claims it can fix memory.- Virus-scan branch ordering — Moved
includes('scan for virus')etc. after theincludes('scan')greedy branch; clicking "Virus scan" actually runsStart-MpScan. updateLastChatMessageID-based — Now takes(id, content)instead of positionallen-1; results go to the correct bubble; no more destroying the Welcome message.- Fallback response ordering —
'thanks'before'thank';'goodbye'before'bye'; now reachable. - Disk space
FreeGB === 0warning now correctly fires when disk is completely full. isGeneratingguard now covers all 11 tool branches; typing indicator works during operations.logJobstatus no longer has identical ternary arms; entries are accurate.- Build —
npm run buildsucceeds (TSC 0 errors, Vite production bundle).
spawn_detached— removedstd::mem::forget(child)— no handle leak per callmanage_service/set_network_profile—ps_quote()on name/category parametersfix_high_memory— honest about capabilitycheck_disk_space— guard against missing/zeroSizedivisorOllamaBanner— pull result now honored; no longer forced to"ready"after failed downloadGlobalProgressBar—isScanningno longer permanently true (was hidingactiveTask)SettingsView— dropdownvalue/optionmatching fixed (was corrupting own state)SfcManager— result interpretation now readssfc.exestdout, not exit codeWingetManager—exitCodenow checked; per-package/Update All mutually exclusiveSpeedTest— failed ping no longer rated "Excellent" with 0 ms; progress bar no longer stuckDriverBackup/Restore—"characters no longer passed as literal argv todism/pnputil; wildcard*.infhandledToolkitView— search no longer hides entire System Managers category; deaddangerousbadge removedConsoleLog— index-based keys fixed for shifting 2000-line windowAutomationTree—try/finallywith nocatchfixed; unhandled rejections silencedServiceManager—stoped→stoppedtypo fixed;killProcess/manageServicenow shows feedback on failureUninstallManager— size now labeled MB (was KB, was 100× too large)TitleBar—isMaximizednow synced to window state;minimize/close/maximizerejections handledUpdateBanner—errorstatus now rendered; "Update" button hasdisabledstateOllamaBanner—installOllamanow has try/catch; no more stuck"installing"stateDashboard— metrics poll no longer floodsconsoleLogswith 8 lines × 2 pollersFindingsList—relaunchElevated()now has try/catch; no unhandled rejectionAdminPrompt—privilegeCheckednow respected; no longer flashes before check resolvesSfcManager— elevation warning no longer erased by first scanGlobalProgressBar— animationduration: 0withx: '300%'fixed; bar no longer empty on completionLiveMetrics— duplicate metrics poller removed; no longer doubles backend load + terminal spamConsoleLog—try/finallywith nocatcharoundexecuteFixfixed; no unhandled rejectionSystemPanel— import chain fixed; panel now actually renders in-app (was imported nowhere)
Announced feature set that was partly wired up to UI. 16 of 31 Tauri commands unreachable from UI; many features missing or write-only. See DEAD_COMMANDS.md for full audit.
Most features work offline. These require an internet connection:
| Feature | What it downloads | Why |
|---|---|---|
| Speed Test | Test files from speedtest.tele2.net | Measures real throughput |
| Winget Install | Winget installer from GitHub | Not bundled with Windows 10 |
| Winget Updates | Package updates from winget sources | Updates come from vendors |
| Auto Update Drivers | PSWindowsUpdate module from PowerShell Gallery | Module not bundled |
| External Power Tools | MAS, WinUtil, WinScript, Winhance scripts | Third-party tools (see warning below) |
| Ollama (optional) | LLM model from Ollama registry | ~2 GB download for llama3.2:3b |
The "External Power Tools" category (MAS, WinUtil, WinScript, Winhance) downloads and executes remote scripts with full system access. These are third-party projects not affiliated with PCFixAI. Verify the source before running.
- One-Click System Scan — Parallel disk health, network, CPU, memory, startup programs (~60% faster)
- Auto-Fix Agent — DNS, temp files, network stack, browser caches (now safe; no longer destroys startup)
- Virus Scanner — Windows Defender quick/full scan, threat history, removal
- Event Log Analyzer — BSOD crashes, system errors, smart filtering
- Power Plan Manager — Switch between High Performance, Balanced, Power Saver
- Exportable System Report — HTML report to Desktop
- Health History — Trend tracking over time
- Live System Metrics — Real-time CPU, RAM, Disk I/O, Network
- Chat Assistant — Quick-action buttons + natural language commands
- Optional AI — Ollama + llama3.2:3b (now actually works)
- Restore Points — Windows System Restore before every scan
- Job History — Full audit trail with exit codes
- Privilege Detection — Warns when deep fixes are restricted
- Search Across Toolkit — Real-time search 40+ tools
- Light Theme — Full light theme with proper contrast
- Keyboard Shortcuts —
Ctrl+1-5views,Ctrl+Kdashboard - Toolkit — 40+ system tools across 10 manager tabs
PCFixAI/
├── src-tauri/ # Rust backend (commands, scan, agent loop)
├── src/ # React frontend (components, store, hooks)
│ ├── components/chat/
│ ├── components/dashboard/
│ ├── components/toolkit/
│ ├── components/panel/
│ ├── components/shared/
│ ├── hooks/ # useLocalAI, useTauriEvents, useUpdater
│ ├── store/ # Zustand state management
│ └── styles/ # globals.css (dark + light themes)
├── package.json
└── vite.config.ts
- Rust (via rustup)
- Node.js (v18+ LTS, via nodejs.org)
- Windows 10 or Windows 11
git clone https://github.com/JamesMangao/PCFixAI.git
cd PCFixAI
npm install
npm run tauri:devnpx tsc --noEmit
npm run tauri:build
# Output: src-tauri/target/release/bundle/nsis/- Launch the app — UAC prompts for admin privileges (recommended)
- Dashboard — View health, metrics, run scan
- Assistant — Chat AI or quick-action buttons:
One Click Diagnose— Full parallel scanSpeed up my startup— Clean temp, audit startupFix my internet— Flush DNS, reset Winsock/TCP/IPBoost my PC— Clean caches, activate High Performance planClean up disk space— Remove temp files + browser cachesShow my system specs— OS, CPU, RAM, GPU, arch infoScan for virus— Defender quick scanEvent log— BSOD crashes + system errorsPower plan— View/switch power plans
- Toolkit — 40+ tools across 10 manager tabs
- History — All past jobs with stats
- Settings — Preferences incl. Light Theme
- Keyboard Shortcuts —
Ctrl+1-5views,Ctrl+Kdashboard
winget install Ollama.Ollama
ollama pull llama3.2:3bPCFixAI auto-detects Ollama and shows connection quality (latency, model readiness).
MIT. See LICENSE.
- Tauri — Secure, lightweight desktop framework
- Recharts — Composable charting
- Framer Motion — Production-ready animations
- Lucide — Beautiful, consistent icons