Self-Update¶
The Owlette agent can update itself remotely — no physical access to the machine required.
How It Works¶
The self-update is handled directly by the service's command handler in owlette_service.py:
- Receives the
update_owlettecommand from Firestore - Downloads the new installer to a temp directory
- Stops the Owlette service
- Executes the installer silently (Inno Setup with
/VERYSILENT) - Installer upgrades in place — preserves
config.jsonand credentials - Service restarts automatically (NSSM or installer triggers restart)
- New version connects to Firestore and reports updated
agent_version
Triggering an Update¶
From the Dashboard¶
- Navigate to your machine in the dashboard
- Click the "Update Owlette" button
- Select the target version (or use "latest")
- Confirm the update
The dashboard sends an update_owlette command with the installer URL and target version.
What Gets Preserved¶
| Preserved | Not Preserved |
|---|---|
config.json (process settings, site connection) |
Old agent source code |
| OAuth tokens (encrypted) | Old Python packages |
| Log files | Old NSSM binary |
The installer backs up config.json before upgrading and restores it afterward.
Update Command Payload¶
{
"type": "update_owlette",
"installer_url": "https://firebasestorage.googleapis.com/.../Owlette-Installer-v2.1.8.exe",
"version": "2.1.8",
"timestamp": 1711234567890
}
Version Verification¶
After the update completes:
- The new agent starts and reads its version from
agent/VERSION - Reports
agent_versionin its next heartbeat to Firestore - Dashboard displays the new version in the machine card
- You can verify in the GUI footer or system tray
Troubleshooting Updates¶
Update Stuck¶
If the machine goes offline and doesn't come back:
- Check physically — the machine may need manual intervention
- Check logs at
C:\ProgramData\Owlette\logs\service.log - Restart service manually:
net start OwletteService
Version Didn't Change¶
If the agent reports the same version after update:
- The installer may have failed silently
- Check for Inno Setup log files in the temp directory
- Verify the installer URL was accessible from the target machine
Rollback¶
To rollback to a previous version:
- In the Admin Panel → Installer Management, find the old version
- Set it as "latest"
- Trigger another update to the old version