Skip to content

theexperiential/owlette

Repository files navigation

owlette

owlette

ai-powered fleet management for Windows applications

Version License Platform

live app  •  documentation  •  download agent


owlette is a cloud-connected system for monitoring, managing, and deploying software across fleets of Windows machines — from anywhere. a lightweight Python agent runs on each machine as a Windows service, reporting metrics and executing commands. a modern web dashboard gives you real-time visibility and control over your entire fleet, backed by Firebase and Cloud Firestore.

built for teams running digital signage, media servers, kiosks, TouchDesigner installations, and any Windows application that needs to stay running.

owlette dashboard

real-time fleet monitoring and control from the owlette web dashboard

features

real-time monitoring live CPU, memory, disk, GPU, and network metrics. process health tracking with crash detection. remote screenshots and live view. historical metrics with sparkline charts.

remote deployment push software silently to any number of machines. supports NSIS, InnoSetup, MSI, and custom installers. save deployment templates, track progress in real-time, and cancel mid-install.

cortex ai LLM-powered fleet management with natural language. AI executes commands on agents via tool-calling across 3 tiers — from read-only diagnostics to privileged operations. screenshot analysis, autonomous crash investigation, and multi-provider support (Anthropic + OpenAI).

multi-site management organize machines by location, department, or project. role-based access control with site-level permissions. multi-user accounts with admin and user roles.

project distribution sync project files (ZIPs, .toe files, media assets) across your fleet from any URL — Dropbox, Google Drive, your own hosting. zero infrastructure cost. automatic extraction and file verification.

alerts & notifications configurable threshold alerts for system metrics. email notifications with branded templates. webhook integrations for external platforms. activity logging across your entire fleet.

full documentation →

architecture

all communication flows through Cloud Firestore — there is no direct connection between agents and the dashboard. Firestore acts as the message bus.

agents                    cloud                     dashboard
+--------------+     +----------------+     +-----------------+
|  machine a   | --> |                | <-- |                 |
|  machine b   | --> |   Firestore    | --> |  Next.js web    |
|  machine c   | <-- |                |     |  application    |
+--------------+     +----------------+     +-----------------+
                            |
                     +----------------+
                     | Firebase Auth  |
                     +----------------+
  • agent — Python Windows service. monitors processes every 10s, sends heartbeats every 30s, reports metrics every 60s, executes commands, works offline.
  • dashboard — Next.js 16 web app. real-time Firestore listeners, 63+ API endpoints, OpenAPI documentation.
  • firestore — real-time NoSQL database. all data sync, command relay, and state management.
  • cortex ai — LLM chat with tool-calling capabilities relayed through Firestore to agents.

quick start

hosted (fastest)

  1. create an account at owlette.app
  2. create a site to organize your machines
  3. download the agent installer from the dashboard
  4. run the installer on your target Windows machine
  5. a 3-word pairing phrase appears — authorize it from the dashboard or your phone
  6. your machine appears in the dashboard within 30 seconds

self-host

agent (Windows service):

git clone https://github.com/theexperiential/Owlette.git
cd Owlette/agent
pip install -r requirements.txt
cd src && python owlette_gui.py          # configure and authenticate
python owlette_service.py install && python owlette_service.py start

web dashboard:

cd Owlette/web
npm install
cp .env.example .env.local               # configure Firebase credentials
npm run dev                               # http://localhost:3000

full setup guide →

screenshots

owlette dashboard

web dashboard — monitor machines, manage processes, deploy software


owlette agent

Windows agent — system tray application with configuration GUI

tech stack

component technology
dashboard Next.js 16, React 19, TypeScript, Tailwind CSS 4, shadcn/ui
agent Python 3.9+, Windows Service (NSSM), psutil, CustomTkinter
database Cloud Firestore (real-time NoSQL)
auth Firebase Auth, WebAuthn/Passkeys, TOTP 2FA, device code pairing
ai Anthropic + OpenAI via AI SDK, MCP tool-calling
email Resend (branded dark-theme templates)
hosting Railway (web), Firebase (backend)

documentation

full documentation is available at theexperiential.github.io/owlette.

contributing

contributions are welcome! please open an issue or submit a pull request.

guidelines:

  • fork the repo and create a feature branch from dev
  • use conventional commits (feat:, fix:, docs:, etc.)
  • run tests before submitting: cd web && npm test
  • use node scripts/sync-versions.js X.Y.Z for version bumps
  • all PRs merge to dev first, then devmain for production

open an issue →

license

this project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). if you run a modified version of owlette as a network service, you must make your source code available to users of that service.

Packages

 
 
 

Contributors