Skip to content

GuardianNode

An alpha/developer-preview safety monitor for families that runs on hardware you own. Local AI helps parents review risk signals from a child's Windows device: screenshots, OCR, vision/text classification, encrypted local evidence, and a parent dashboard.

Windows alpha install Quick Start From Source Known limitations Backend setup Support development

๐Ÿ”’ Private by Design

By default, your child's data stays on hardware you control. Classification runs on local AI (Ollama); external notifications are optional and parent-configured, and retained evidence is encrypted for parent review.

๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง Family First

Built for parents, not IT departments. Pairing uses a 6-digit code and an explicit server URL, and alerts explain what happened and what to do next.

๐Ÿค Trustworthy

No stealth mode, ever. A visible tray icon shows the child when monitoring is on. No raw keystroke capture, no password-field collection, and parent-controlled capture scope.

๐Ÿง  Technical & Modern

Vision LLM reads the screen the way a person would โ€” text and imagery โ€” backed by a deterministic rules engine that works even when the model is down.

๐Ÿ’š Calm & Supportive

Severity-ranked alerts with per-category playbooks. It will miss things and sometimes false-alarm โ€” we say so plainly. It's one tool, not a replacement for parenting.

How it works

Child PC agent โ†’ visible screen screenshots โ†’ your own server โ†’ local AI + rules โ†’ encrypted evidence โ†’ parent dashboard alert

The agent on the child's PC reviews visible screen content from the configured Windows session. Current installer defaults enable visible desktop screenshot capture; policy/config can narrow capture to configured apps. Frames go to your backend โ€” the same PC or another machine in your house โ€” where local models and rules classify risk signals. Retained evidence is stored locally and encrypted for parent review.

Read the full architecture, safety boundaries, and threat model.

What do I need to run it?

The installer checks your hardware and picks the strongest tier it can run:

Tier Hardware What it catches
Full NVIDIA GPU with 16+ GB VRAM Everything, with the most nuance on ambiguous chat
Vision (default) NVIDIA GPU with 12โ€“15 GB VRAM Explicit imagery + grooming/self-harm/scam text + your custom watch phrases
Text-only Any PC with 8 GB RAM, no GPU Text risks only โ€” visual-only content (nudity/gore without text) is not detected

No GPU in the kid's PC? Use the two-machine setup: the child's PC runs only the lightweight agent and a Linux or Windows box with a GPU does the AI work.

Quick Start

Alpha scope: GuardianNode 0.1.0-alpha.1 is a public alpha for technical parents and early evaluators. Windows 11 installers are allowed alpha artifacts when published from the tagged release with checksums. This is not a finished consumer product for ordinary non-technical families, and it must not be exposed directly to the public internet.

Mode Alpha support
Windows 11 all-in-one installer Supported public alpha path for technical parents
Windows 11 server installer Supported public alpha path for parent-owned server PCs
Windows 11 child-only installer Supported public alpha path when paired to a trusted parent server
Source backend on loopback Supported for technical evaluation
Source all-in-one Windows evaluation Supported for technical evaluation
Separated private LAN/VPN deployment Advanced alpha path; explicit opt-in, trusted LAN/VPN/TLS required
Public Internet exposure Unsupported

For Windows, start with Install on one PC or Install a server + child PC. Unsigned alpha installers may trigger SmartScreen or antivirus warnings; verify published SHA-256 checksums before running them.

Quick Start From Source

Start the backend on loopback:

git clone https://github.com/the-vibe-dev/guardiannode.git
cd guardiannode
python -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pip
pip install -e "backend[dev]"
mkdir -p local_config/dev-data
GUARDIANNODE_BIND_HOST=127.0.0.1 \
GUARDIANNODE_BIND_PORT=8787 \
GUARDIANNODE_DATA_DIR=local_config/dev-data \
GUARDIANNODE_ALLOWED_HOSTS=127.0.0.1,localhost,testserver \
GUARDIANNODE_MDNS_ENABLED=false \
GUARDIANNODE_CLASSIFIER_TIER=text_only \
GUARDIANNODE_TEXT_MODEL= \
GUARDIANNODE_VISION_MODEL= \
uvicorn app.main:app --app-dir backend --host 127.0.0.1 --port 8787

In another terminal after the backend starts, print the one-time setup token:

python - <<'PY'
import json
from pathlib import Path

path = Path("local_config/dev-data/keys/setup_token.json")
print(json.loads(path.read_text(encoding="utf-8"))["token"])
PY

For Windows source testing, the equivalent PowerShell command is:

(Get-Content .\local_config\dev-data\keys\setup_token.json | ConvertFrom-Json).token

Build and test the dashboard separately when changing UI code:

cd dashboard
npm ci
npm run typecheck
npm test -- --run
npm run build

Open http://127.0.0.1:8787/setup, paste this one-time token, create the parent account, and write down the recovery code. Do not post the setup token in an issue or chat. See Backend setup for more detail. Do not pipe an unverified network response directly into a privileged shell.

Installer guides: one PC ยท server + child PC ยท troubleshooting

Guides

Honest limits

What this cannot stop โ€” phones, school devices, in-person contact. Read this one first.

For developers

Backend setup ยท Windows agent ยท Dashboard ยท Contributing

Project support

Roadmap ยท Donations. GuardianNode stays local-first, open-source, and subscription-free.

GuardianNode is assistive software

It is not a replacement for parenting, professional support, or emergency services. It will miss things. It will sometimes false-alarm. Use it as one of several tools โ€” and read what it cannot stop.

Privacy ยท Security policy ยท Code of conduct ยท Support development ยท AGPL-3.0 licensed