Repository navigation
WatchDog v1.3.0
Pre-releaseWatchDog v1.3.0
Website · Download · Screenshots
The biggest update yet — AI-powered highlight detection, a completely overhauled system tray, recording status indicators, smart per-game recording profiles, and major clip management upgrades.
Testing Release — This version is actively being tested and will receive patches and hotfixes as issues are found. If you encounter any bugs, please open an issue.
What's New Since v1.2.3
AI-Powered Audio Highlight Detection
WatchDog can now detect highlight moments in any game using real-time audio classification — no game-specific integration required.
- YAMNet ONNX model — classifies game audio into events (gunfire, explosions, crowd cheers) using a lightweight neural network running locally on your PC.
- Auto-downloads on first launch — the ~14MB model is fetched from Essentia's CDN automatically. No manual setup needed.
- WASAPI loopback capture — analyzes system audio independently of the OBS recording pipeline. Zero impact on game FPS.
- DirectML GPU acceleration — uses your GPU for inference when available (NVIDIA, AMD, Intel), falls back to CPU (~5-10ms per classification).
- Universal fallback — any game in the 100+ supported database without a dedicated detector (CS2 GSI, Valorant lockfile, OW2 logs) automatically uses AI audio.
- R6 Siege fixed — the broken log-based detector has been replaced with AI audio detection. R6 highlights now work reliably.
- Confidence-based filtering — only clips above a configurable threshold are saved. Adjustable per-game via the Game Profiles tab.
System Tray Overhaul
- Dark-themed context menu — no more white accent strip or blending text. The tray menu now matches the WatchDog dark palette.
- Dynamic status items — the context menu shows the current game name, highlight compatibility, and replay buffer status in real time.
- Color-coded tray icon states — the tray icon shows a colored status dot: gray (idle), green (buffering), red (recording), amber (saving). Icons are generated automatically at startup.
Recording Status Indicators
Three layers of status information at different zoom levels:
- Status bar — a persistent strip at the bottom of the main window showing buffer state, current game, highlight compatibility, encoder info, and storage usage with color-coded indicators.
- Floating mini overlay — an optional always-on-top, semi-transparent overlay visible even in-game. Shows recording state in a single condensed line. Toggle with F11.
- Tray icon — glanceable state via colored status dot (see above).
Smart Game-Launch Recording Profiles
- Genre-tagged game database — all 151+ supported games are classified by genre (FPS, MOBA, Strategy, Racing, etc.) to determine default recording recommendations.
- Game-launch toast — when a new game is detected, a non-blocking toast offers recording mode options (Highlights, Session Recording, or Replay Buffer) based on genre compatibility.
- Applies immediately — your mode selection takes effect on the current session, not just the next launch.
- "Remember for this game" — check the box to save your choice. Next launch is silent.
- Game Profiles settings tab — browse all 151+ games, search by name, configure per-game recording mode, resolution, bitrate, and highlight sensitivity.
- Incompatibility detection — strategy, racing, and sandbox games are flagged as highlight-incompatible with a clear explanation and recommendation.
- Auto-dismiss — if the toast is ignored for 15 seconds, it defaults to Replay Buffer (safe default).
Clip Management Upgrades
- Search & filter — filter clips by text (searches name, game, and tags), highlight type, tag, and duration. Filters are composable (AND logic).
- Batch operations — Ctrl+click to multi-select clips. Batch delete with confirmation dialog and error reporting.
- Clip tagging — add custom tags to clips (e.g., "montage", "funny", "clutch"). Tags are shown on clip cards and can be used as filters. Up to 20 tags per clip.
- Highlight badges — clip thumbnails show color-coded badges for the highlight type (K = Kill, ACE, MK = Multikill, RW = Round Win).
Bug Fixes & Security
- Fixed startup crash — "OBS is not initialized" error when a game was already running at launch (race condition in game detection startup).
- Fixed capture state race —
SaveReplayAsyncnow properly acquires the state lock to prevent concurrent clip saves during shutdown. - Fixed path traversal —
StartsWithcheck on output directory now appends directory separator to prevent prefix confusion. - Fixed argument injection — all
Process.Startcalls useArgumentListinstead of string interpolation. - CS2 GSI authentication — the HTTP listener now validates an auth token on every payload to prevent local spoofing.
- Installer path validation — downloaded update binaries are verified to be within the expected temp directory before execution.
- 64-bit P/Invoke — overlay click-through uses
GetWindowLongPtrW/SetWindowLongPtrWfor correct behavior on x64. - Case-insensitive clip paths — clip storage operations now use
OrdinalIgnoreCasefor Windows filesystem compatibility. - Thread-safe audio detection — volatile
IsRunning, bounded sample buffer, single-inference back-pressure, Interlocked debounce.
How to Install
1. Download
Scroll down to Assets and download WatchDog-Setup.exe.
If you only see "Source code" assets, the automated build is still running — refresh in a few minutes.
2. Run the installer
Double-click WatchDog-Setup.exe. If Windows SmartScreen appears, click More info > Run anyway.
3. Done
Everything is bundled — no .NET SDK or extra downloads needed. The AI audio model (~14MB) downloads automatically on first launch.
Portable: Download WatchDog-win-x64.zip instead, extract anywhere, run WatchDog.App.exe.
Upgrading: Run the new installer — it removes the old version automatically. Settings and clips are preserved. The app also shows an update banner on launch if a newer version is available.
CS2 Users
If upgrading from an older version, update your CS2 GSI config file — the new version requires an auth token:
Copy-Item cfg\gamestate_integration_watchdog.cfg "C:\Program Files (x86)\Steam\steamapps