garud ai

GarudAI — User Guide v3.0

User Guide & Installation Manual

AI-Powered Intelligent Surveillance System — Complete Setup & Usage Reference
Version3.0
DateJune 2026
CompanyGarud AI Pvt. Ltd.
ParentVcana Global Pvt. Ltd.
Supportsupport@garudai.com
Websitehttps://garudai.com
Purchasepurchase.garudai.com
1

System Requirements

ComponentMinimumRecommended
OSWindows 10 64-bit (Build 19041+)Windows 11 64-bit
RAM8 GB16 GB or more
Disk Space50 GB free on C: drive100 GB free (H: or separate drive preferred)
GPUNone (CPU-only mode)NVIDIA GPU with driver 470.76+ (CUDA 11+)
CPU4-core (Intel/AMD)8-core or more
NetworkInternet for first-time setupGigabit LAN for multiple cameras
VirtualizationVT-x/AMD-V enabled in BIOSSame
⚠️
Disk Space: GarudAI stores snapshots, recordings and AI models. Allocate at least 50 GB. For long-term storage we recommend moving Docker data to a secondary drive (D:, E:, or H:) — this can be configured in Docker Desktop Settings → Resources → Disk image location.
2

What Gets Installed

GarudAI is self-contained. The installer handles everything automatically — you do not need to manually install Docker, Python, PyTorch, YOLO models or any other dependencies.

ComponentDescriptionSize
Docker DesktopContainer runtime — downloaded & installed automatically~600 MB
WSL2Windows Subsystem for Linux — enabled automatically~100 MB
GarudAI BackendFastAPI server, AI models, YOLO, weapon detection~4 GB
GarudAI FrontendWeb dashboard (served on port 3010)~200 MB
Database (PostgreSQL)Alert/detection data storage~150 MB
Cache (Redis)Real-time task queuing~50 MB
MediaMTXRTSP/WebRTC stream relay~50 MB
MinIOSnapshot & recording object storage~250 MB
Tray AppWindows system tray control panel (GarudAI.exe)~35 MB

Total download during installation: approximately 6–8 GB. Allow 20–40 minutes on a typical internet connection.

3

Installation Guide

Before You Begin

  • Ensure your machine meets the system requirements above
  • You need an active internet connection during installation
  • Administrator (admin) access is required
  • Disable any VPN during installation — it may interfere with Docker
  • Ensure BIOS has Virtualization Technology (VT-x / AMD-V) enabled

Installation Steps

  1. Download the installer GarudAI-Setup-v3.0.exe from garudai.com
  2. Run the installer as Administrator (right-click → Run as administrator)
  3. The installer checks your system requirements (RAM, disk space, OS version)
  4. GPU detection runs automatically — the installer detects NVIDIA GPU and driver version
  5. If WSL2 is not installed, the installer enables it and may require a Windows restart — restart and re-run the installer to continue
  6. If Docker Desktop is not installed, the installer downloads and installs it silently (~15 minutes)
  7. The installer downloads the GarudAI AI components (~5–8 GB) — this is the longest step
  8. All 11 services start automatically. The dashboard opens at http://localhost:3010
  9. The GarudAI tray icon appears in your system tray (bottom-right taskbar)
ℹ️
Windows Restart: If WSL2 is not already enabled, a system restart is required. After restart, simply run the installer again — it will skip steps already completed and continue from where it left off.
💡
GPU Mode: If an NVIDIA GPU with driver 470.76+ is detected, GarudAI automatically runs AI detection on the GPU (significantly faster). Without a GPU, it runs in CPU-only mode — fully functional but slower. You can switch modes anytime in Settings → AI Compute.
4

First Login & Account Setup

Accessing the Dashboard

Open your browser and navigate to http://localhost:3010 — or double-click the tray icon.

Default Administrator Credentials

Usernameadmin PasswordAdmin@12345
🔒
Security: Change the default password immediately. Go to your profile (top-right) → Change Password. The system enforces a strong password policy: minimum 8 characters, maximum 32, must include uppercase, lowercase, number and symbol.

Forgot Your Password?

On the login page, click "Forgot password?" below the Sign In button. Enter your registered email address — you will receive a reset link valid for 1 hour. Click the link in the email and set a new password that meets the password policy.

Password Policy

All passwords must meet these requirements:

  • Minimum 8 characters, maximum 32 characters
  • At least one uppercase letter (A–Z)
  • At least one lowercase letter (a–z)
  • At least one number (0–9)
  • At least one symbol (!@#$%^&*...)

The system shows a real-time indicator as you type, showing which requirements are met (green ✓) or not yet met (red ✗).

5

Trial Period & Limitations

GarudAI starts in trial mode automatically. The trial gives you full access to evaluate all core features.

FeatureTrialLicensed
Cameras1 cameraUp to 5 (Y12 plan)
General AI Detection✅ Full✅ Full
Weapon DetectionAdd-on (WD1 — 24h trial key)✅ Included
Alerts & Notifications✅ Full✅ Full
Dashboard & Monitoring✅ Full✅ Full
Local Webcam Support✅ Full✅ Full
Export/Reporting✅ Full✅ Full
⚠️
Weapon Detection Trial: To test weapon detection during trial, purchase a 24-hour WD1 trial add-on (₹599+GST) at purchase.garudai.com. This generates a machine-locked key valid for 24 hours on your specific device.
6

Purchasing a License

Visit purchase.garudai.com or click the "Purchase" link in the GarudAI tray app. Payments are processed securely via PayU with UPI, Net Banking, Cards and Wallets supported.

License Plans

PlanDurationCamerasWeapon DetectionPrice (+ GST)
Quarterly3 monthsUp to 5✅ Included₹11,800
Half-Year6 monthsUp to 5✅ Included₹21,240
Annual12 monthsUp to 5✅ Included₹37,760
WD1 Add-on24 hoursTrial (1)✅ Test only₹599

After successful payment you will receive a product key by email. Keys are machine-locked — they activate on your specific hardware.

7

Activating Your License Key

  1. Click the GarudAI tray icon in your system tray
  2. Select Activate License from the menu
  3. Enter your product key exactly as received (format: GRDI-XXXX-XXXX-XXXX-XXXX)
  4. Click Activate — the system contacts the license server
  5. On success, the tray tooltip shows "Licensed · N days left"
  6. The dashboard footer also shows the license status
ℹ️
Offline Grace Period: If your internet is temporarily unavailable, GarudAI continues working normally for up to 48 hours before requiring re-validation. The system validates automatically when connectivity resumes.
8

Camera Management Updated

Supported Camera Types

TypeConnectionExample
IP Camera (RTSP)RTSP URL over networkrtsp://192.168.1.100:554/stream
HTTP / MJPEGHTTP stream URLhttp://192.168.1.100:8080/video
ONVIF CameraAuto-discovered on networkAny ONVIF-compatible IP camera
Local WebcamBrowser WebRTC (no drivers needed)USB webcam, laptop camera
USB Webcam (FFmpeg)Integer index or device name0, 1, HD User Facing

Adding an IP Camera

  1. Go to Cameras in the left sidebar
  2. Click + Add Camera
  3. Select 📹 IP / RTSP Camera tab
  4. Enter the RTSP URL or use ONVIF Auto-Discovery to scan your network
  5. Click Test Connection — the system connects and reports the resolution
  6. If the camera is 1080p or higher, a sub-stream is automatically detected and configured to prevent performance issues
  7. Enter a camera name and location, then click Add Camera
💡
High-Resolution Cameras: Most modern IP cameras output 2MP–8MP. GarudAI automatically detects the resolution on Test Connection and switches to the sub-stream (lower resolution) for smooth real-time AI processing. You can also set the sub-stream URL manually in the camera edit panel.

Adding a Local Webcam

  1. Click + Add Camera and select the 💻 Local Webcam tab
  2. Your connected webcams are listed automatically
  3. Select your webcam from the dropdown
  4. Click Preview Camera to see the live feed
  5. Click Start Streaming → — the browser publishes the webcam via WebRTC to the local relay server
  6. The camera name defaults to "Local Webcam" — click Add Camera
ℹ️
Webcam Stream Persistence: The webcam stream runs as long as the GarudAI browser tab is open. A "Webcam live" badge in the bottom-right corner confirms the stream is active. The stream automatically reconnects if it drops. For best results, use Chrome or Edge.

Editing a Camera

Click Edit on any camera card to update:

  • Camera name, location
  • Stream URL (changing the URL restarts the stream worker automatically)
  • Sub-stream URL (for high-resolution cameras)
  • Camera type and stream tier (Critical / Main / Overview / Archive)
  • Recording on/off

Camera Detection Settings

Click Settings on any camera card to configure per-camera detection:

SettingDescription
Detection CategoriesEnable/disable Firearms, Sharp Weapons, Vehicles, Humans, Animals, etc.
General ConfidenceMinimum confidence for humans, vehicles, plants. Lower = more detections, higher = fewer false positives.
Firearms ConfidenceSeparate threshold for guns/rifles — raise this to reduce false positives from similar-shaped objects.
Sharp Weapons ConfidenceSeparate threshold for knives/blades — can be set lower since knives need edge detection.
Inference IntervalSeconds between AI scans. Lower = faster response, higher = less CPU usage.
Alert CooldownsMinimum gap between consecutive alerts per severity. Set higher to prevent alert spam.
⚠️
Night Vision Cameras: IR/night-vision cameras produce grayscale images where AI confidence scores are lower. GarudAI automatically detects IR mode. Use YOLOv8L model (AI Models page) for better detection accuracy on night-vision footage. The system uses the person-crop scan technique to detect weapons held at waist level on top-down cameras.

Camera Groups

Group cameras by location or zone. Camera groups allow you to filter alerts and detections by area, set group-level monitoring, and manage zones efficiently. Create groups from the Camera Groups page in the sidebar.

9

AI Detection & Weapon Detection Updated

Detection Categories

CategorySeverityWhat It Detects
Firearms🔴 CriticalHandguns, pistols, rifles, grenades
Sharp Weapons🔴 CriticalKnives, blades, machetes, scissors
Humans🟡 WarningPeople / persons in frame
Vehicles🟡 WarningCars, motorcycles, bicycles, trucks
Animals🟡 WarningDogs, cats, livestock, wildlife
Reptiles🟡 WarningSnakes, lizards, crocodiles
Birds🔵 InfoBirds of any species
Plants🔵 InfoTrees, potted plants, vegetation
Objects🔵 InfoCommon household/street objects

Weapon Detection

GarudAI uses a dedicated weapon AI model (Kaggle YOLOv8, trained specifically on weapon imagery) in addition to the general object detector. Weapon detection runs on every camera frame in GPU mode.

Separate Thresholds for Firearms vs Sharp Weapons

You can set different confidence thresholds for firearms and sharp weapons per camera. This is important because:

  • Firearms: Set higher (50-60%) to prevent long vertical objects (poles, plants) from triggering false alarms
  • Sharp Weapons: Can be set lower (20-30%) since knife shapes are more distinctive and less likely to be confused with other objects

Weapon Detection Tips for Best Results

  • Distance: Best results within 3–5 metres of the camera
  • Orientation: Hold weapon sideways (profile view) — end-on angles reduce confidence significantly
  • Lighting: Works in both daylight and IR night mode. Night vision may reduce confidence by 30–50%; use YOLOv8L for better night accuracy
  • Top-down cameras: GarudAI uses a person-guided crop scan — it detects you first, then scans a larger area around you for weapons

AI Models

Go to AI Models in the sidebar to switch the detection model:

ModelSpeedAccuracyBest For
YOLOv8n (Nano)Very fast (~15ms)GoodLow-end hardware, many cameras
YOLOv8s (Small)Fast (~25ms)BetterBalance of speed and accuracy
YOLOv8m (Medium)Medium (~50ms)HighStandard deployments
YOLOv8l (Large)Slower (~100ms)Very HighNight vision, top-down cameras, critical detection
YOLOv8x (Extra Large)Slow (~200ms+)HighestNot recommended for real-time (causes lag)
💡
Recommended: Use YOLOv8l for systems with an NVIDIA GPU. It provides significantly better detection of persons in challenging conditions (night vision, top-down angles, distance) which improves weapon detection accuracy through person-guided crop scanning.

AI Compute Mode

Go to Settings → AI Compute to switch between modes:

  • GPU Only: Both YOLO and weapon model run on GPU — fastest, best accuracy
  • CPU + GPU Split: YOLO on GPU, weapon model on CPU — conserves GPU memory
  • CPU Only: All inference on CPU — for systems without NVIDIA GPU
10

Alerts & Notifications Updated

Alert Types

TypeTriggerChannels
🔴 CriticalWeapon detected (firearm or sharp weapon)Dashboard, Email, Telegram, Sound alarm
🟡 WarningPerson, vehicle, or animal detectedDashboard, Email, Telegram (if configured)
🔵 InfoPlants, objects, birds detectedDashboard only

Configuring Email Notifications

Go to Settings → Notifications:

  1. Toggle Email Alerts on
  2. Enter your SMTP host (e.g., smtp.gmail.com), port (587 for TLS), username and password
  3. For Gmail, use an App Password (not your regular password) — create one at Google Account → Security → 2-Step Verification → App Passwords
  4. Click Send Test Email to verify
  5. Click Save Notification Settings

Configuring Telegram Notifications

  1. Create a bot via Telegram @BotFather — send /newbot and follow instructions
  2. Copy the bot token (format: 1234567890:AABBCCDDee...)
  3. In Settings → Notifications, paste the Bot Token
  4. Enter your Chat ID (message @userinfobot on Telegram to get yours)
  5. Click Send Test to verify
  6. Save settings

Per-User Notification Preferences

Each user has independent notification settings. As an admin, go to Users, click the notification badges (✉ ✈) on any user row, then click Configure:

  • Enable/disable email and Telegram per user independently
  • Set their alert email address (can differ from account email)
  • Set minimum severity: Critical only, Warning & above, or All alerts
  • Set event type filters (weapon, intrusion, face, plate, etc.)
ℹ️
Telegram Chat IDs are self-service: For security, each user sets their own Telegram Chat ID. After you enable Telegram for a user, they go to Settings → My Notification Preferences → enter their Chat ID from @userinfobot. The ✈ badge turns yellow until the Chat ID is set, then green once configured.

Alert Cooldowns

To prevent notification spam, configure per-camera cooldown periods in Camera Settings:

  • Firearms cooldown: Minimum seconds between consecutive gun alerts (default 5s)
  • Sharp Weapons cooldown: Minimum seconds between consecutive knife alerts (default 3s)
  • Warning cooldown: Minimum seconds between human/vehicle alerts (default 10–60s)

My Notification Preferences (Per-User)

Go to Settings → My Notification Preferences to set your personal preferences:

  • Toggle email alerts on/off for your account
  • Set your personal alert email address
  • Toggle Telegram alerts on/off
  • Enter your personal Telegram Chat ID
  • Set your minimum severity threshold
  • Set which event types you want notifications for
11

User Management & Roles New

User Roles

GarudAI has four user roles with different permission levels:

RoleLevelKey Capabilities
Admin Highest Full access — manage users, system settings, all features
Manager High Full operational access + AI models, cannot manage users or change system settings
Operator Medium Camera management, acknowledge alerts, view detections — cannot delete cameras/alerts or upload AI models
Viewer Read-only View cameras, alerts, detections — cannot change anything
💡
Click Role Permissions on the Users page to see a detailed breakdown of exactly what each role can and cannot do.

Creating a New User

  1. Go to Users in the sidebar
  2. Click + Add User
  3. Enter username, email, and a strong password (must meet password policy)
  4. Select a role (Admin / Manager / Operator / Viewer)
  5. Optionally enable Email and/or Telegram notifications for this user
  6. Set their minimum alert severity and event types for notifications
  7. Click Create User

Editing a User (Admin Only)

Click Edit on any user row to:

  • Change their username or email address
  • Promote or demote their role
  • Activate or suspend their account
  • Reset their password — enter a new password (no current password needed for admin-initiated reset)

User Notification Badges

The Users table shows notification status badges for each user:

  • Green ✉ = Email alerts enabled
  • Grey ✉ = Email alerts disabled
  • Green ✈ = Telegram enabled + Chat ID configured
  • Yellow ✈ = Telegram enabled but user hasn't set their Chat ID yet
12

Settings & Configuration Updated

Global AI & Stream Settings

Go to Settings → Global AI & Stream Settings to configure system-wide defaults that apply to all cameras. Changes take effect immediately without a restart:

SettingDescription
Alert ThrottleDefault minimum gap between warning-level alerts (humans/vehicles). Per-camera settings override this.
Event Clip DurationLength (seconds) of video clips recorded when an alert fires.
Stream Read FPSHow many frames per second the system reads from each camera stream.
Abandoned Object (s)Seconds a stationary object must remain before triggering an abandoned object alert.
Suspicious SpeedPixel movement per frame that triggers a fast-movement/suspicious activity alert.
ℹ️
Per-camera settings always take priority over global settings. Go to each camera's Settings panel to configure camera-specific detection categories, confidence thresholds and cooldowns.

AI Compute Settings

Switch between CPU-only, GPU-only, and split (CPU+GPU) modes. GPU mode delivers 3–10× faster inference. The recommended setting for NVIDIA GPU systems is GPU Only.

13

Storage Manager Updated

Go to Storage Manager in the sidebar to manage disk usage.

Snapshots

Snapshot images captured at detection events. You can:

  • Browse thumbnails with lazy loading
  • Select multiple snapshots for bulk deletion
  • Delete all orphaned files (not linked to any alert)

Recordings

Video clips recorded around detection events. Manage and clean up as needed.

Cascade Delete with Impact Warning

When you delete snapshots or recordings, GarudAI shows an impact analysis before deletion:

  • How many alerts reference these files
  • How many weapon events reference these files
  • How many detection records reference these files

You can confirm to delete all linked records alongside the files, or cancel to keep them.

🗑️
Permanent Action: Cascade deletion removes the files AND their associated alerts, weapon events and detections. This cannot be undone. Always review the impact count before confirming.

Disk Management Tips

  • Move Docker's data location to a secondary drive (D:, E:, H:) in Docker Desktop → Settings → Resources → Disk image location to keep C: free
  • Set appropriate recording and snapshot retention periods in camera settings
  • Run Cleanup Orphans regularly to remove files not linked to any alert
14

Monitoring & System Health

Go to Monitoring to view real-time system performance:

  • CPU, RAM, Disk: Live usage gauges
  • GPU: VRAM usage, utilisation %, temperature (NVIDIA GPU required)
  • Detection Pipeline: Frames processed, inference time, active pipelines
  • Camera Streams: Frames read, reconnect count, stream health per camera
  • Service Status: All 11 Docker services health

Advanced metrics are available via Grafana at http://localhost:3001 (admin / admin). Prometheus metrics are exposed at http://localhost:9090.

15

Troubleshooting

Dashboard not loading (http://localhost:3010)

  • Check that Docker Desktop is running (look for the Docker icon in system tray)
  • Right-click the GarudAI tray icon and select Restart Services
  • Wait 60 seconds for all services to start
  • If still failing, open Docker Desktop and check that all garudai-* containers are running

Camera shows "Offline"

  • Verify the camera is powered on and accessible on your network
  • Test the RTSP URL directly in VLC or another player
  • Check the camera's network firewall/settings allow connections
  • Click Restart on the camera card to force a reconnect
  • For high-resolution cameras, ensure the sub-stream URL is configured (click Edit)

Webcam shows "Offline"

  • Ensure the GarudAI browser tab is open — the webcam stream only runs while the app is active
  • Check that your browser has permission to access the camera (camera icon in address bar)
  • The "Webcam live" badge in the bottom-right confirms the stream is active
  • If badge shows yellow "Webcam connecting…", click it to force reconnect

No weapon detections / missed detections

  • Ensure Firearms and Sharp Weapons categories are enabled in camera settings
  • Check that the AI Detection toggle is ON for the camera
  • Verify the confidence thresholds: Firearms 50-55%, Sharp Weapons 20-25% are typical starting points
  • Hold the weapon clearly visible in a side/profile orientation (not pointing directly at the camera)
  • For night-vision cameras, switch to YOLOv8L model (AI Models page) for better accuracy
  • Weapon detection requires a valid paid license or WD1 trial key

False positive alerts (objects detected as weapons)

  • Increase the Firearms Confidence threshold (50-60%) to filter marginal detections
  • Reduce the number of enabled detection categories to only what you need
  • Check if long vertical objects (poles, plant stems) are in view — they can resemble rifles at low confidence

Too many human/vehicle alerts (spam)

  • Increase Warning Alert Cooldown in camera settings (e.g., 300s = 5 minutes)
  • Increase Warning Scan Interval (e.g., 30s between scans)
  • Disable Humans category if human presence is always expected in the scene

Email notifications not working

  • For Gmail: use an App Password (not your regular password) — generate one in Google Account → Security → App Passwords
  • Verify SMTP settings: host = smtp.gmail.com, port = 587, TLS = enabled
  • Click Send Test Email in Settings → Notifications to diagnose
  • Check that the user's notification preference is set to receive the alert severity level (warning/critical)

Telegram notifications not working

  • The bot must be added to the chat/group where you want alerts
  • Verify the bot token is correct (from @BotFather)
  • Get the Chat ID by messaging @userinfobot on Telegram
  • Ensure user's minimum severity is set to "Critical" or lower

High CPU/RAM usage

  • Reduce the number of active cameras
  • Switch to a smaller AI model (YOLOv8n or YOLOv8s)
  • Increase the Inference Interval per camera (reduces scan frequency)
  • Move Docker's data disk to a faster/separate drive

C: drive filling up

  • Move Docker Desktop's disk image to another drive: Docker Desktop → Settings → Resources → Disk image location
  • Clear Docker build cache: docker builder prune -f
  • Remove orphaned Docker images: docker image prune -f
  • Use Storage Manager to delete old snapshots and recordings
16

License Plans & Pricing

PlanDurationCamerasWeapon DetectionPrice (excl. GST)
Quarterly (Y3)3 monthsUp to 5✅ Included₹11,800
Half-Year (Y6)6 monthsUp to 5✅ Included₹21,240
Annual (Y12)12 monthsUp to 5✅ Included₹37,760
WD1 Trial24 hours1 (trial)✅ Test only₹599

All plans include: unlimited alerts, all detection categories, email & Telegram notifications, user management, storage manager, monitoring, and all future updates during the subscription period.

Purchase at purchase.garudai.com | GST Invoice provided | PayU payment gateway (UPI, Cards, Net Banking, Wallets)

17

Frequently Asked Questions

Can I install GarudAI without a GPU?

Yes. GarudAI runs in CPU-only mode on any Windows 10/11 computer. Detection will be slower (1–3 FPS vs 5–15 FPS with GPU) but fully functional.

Can I use multiple cameras?

Trial mode supports 1 camera. Licensed plans support up to 5 cameras simultaneously. All cameras run AI detection in parallel.

Do I need to install Docker manually?

No. The installer handles everything — Docker Desktop, WSL2, AI models, database, and all services are set up automatically.

What happens if my internet goes down?

GarudAI runs entirely on your local machine. Internet is only needed for license validation (48-hour offline grace period) and initial installation. Cameras, detection, alerts, and storage all work offline.

Can I add a local webcam without FFmpeg?

Yes. Use the Local Webcam tab in Add Camera — it streams directly from your browser using WebRTC with no external tools required. The stream stays active as long as the browser tab is open.

How do I update GarudAI to a new version?

Download and run the latest installer from garudai.com. It detects your existing installation and updates only what has changed. Your data (alerts, settings, recordings) is preserved.

Can viewers receive weapon detection notifications?

Yes. Notification access is independent of role. A Viewer can have email/Telegram notifications enabled for critical weapon alerts, while an Operator might have no notifications. Configure per-user in the Users page.

What is the Manager role?

Manager sits between Admin and Operator. Managers have full operational access (cameras, alerts, AI models, backups, audit logs) but cannot manage users or change global system settings. Ideal for supervisors who manage day-to-day operations without needing full admin access.

Can I reset a user's password as admin?

Yes. Go to Users → click Edit on any user → enter a new password in the "Reset Password" section. No current password is required when resetting as admin.

What cameras are supported?

Any IP camera with an RTSP or HTTP MJPEG stream, ONVIF-compatible cameras (auto-discovered), USB webcams, and browser-based webcams via WebRTC. High-resolution cameras (1080p+) are automatically managed with sub-stream switching.

How do I move storage to free up C: drive space?

Open Docker Desktop → Settings → Resources → Advanced → change the Disk image location to a secondary drive (D:, E:, H:, etc.). Docker Desktop migrates all data automatically. This moves the entire GarudAI storage, database, and recordings to the new location.

Is the system secure?

GarudAI uses JWT authentication with role-based access control (RBAC). The database password and JWT secret are randomly generated during installation and unique per machine. All credentials are stored locally — never transmitted to external servers except for license validation.

How do I get support?

Email: support@garudai.com | Website: https://garudai.com/support

Scroll to Top