HASS.Agent is a Windows-based client (companion) application for Home Assistant, developed in .NET 6.
Click here to download the latest installer.
HASS.Agent is completely free, and will always stay that way without restrictions.
Quick note from Sam on the initial idea:
The main reason I built this is that I wanted to receive notifications on my PC, including images, and to quickly perform actions (e.g. to toggle a lamp). There weren't any software-based solutions for this, so I set out to build one myself.
There's no need to explain that we (and the Community overall) like the idea. That's why we're here, to continue the development in the Home Assistant spirit of integrating everything into open source smarthome world.
The original HASS.Agent has been created by Sam.
Unfortunately due to some time constraints, they're not able to provide the constant support and feature updates. That's where we step in - trying to keep HASS.Agent bug free (dreams need to be big right?) and to introduce new features here and there!
Summary of the core functions:
Notifications: receive notifications, show them using Windows builtin toast popups, attach images and receive input from them. Supports actionable notifications: add buttons so you can easily interact with Home Assistant, without having to open anything or ask user for an answer to a question.
Media Player: use HASS.Agent as a mediaplayer device: see and control what's playing and send text-to-speech.
Quick Actions: use a keyboard shortcut to quickly pull up a command interface, through which you can control Home Assistant entities - or, assign a keyboard shortcut to individual Quick Actions for even faster triggering.
Commands: control your PC (or other Windows based device) through Home Assistant using custom- or built-in commands.
Sensors: send your PC's sensors to Home Assistant to monitor every aspect of your device.
WebView: quickly show any website, anywhere - no browser required, for instance a HA dashboard.
Satellite Service: use the service to collect sensordata and execute commands, even when you're not logged in (not all commands/sensors are available for Satellite Service)
All entities are dynamically acquired from your Home Assistant instance.
Commands and sensors are automatically added to your Home Assistant instance via MQTT Integration
Notification examples:
WebView example, showing a dashboard when right-clicking the tray icon:
This is the Quick Action window you'll see when using the hotkey. This window automatically resizes to the amount of buttons you've added:
You can easily configure a new Quick Action, HASS.Agent will fetch your entities for you:
The sensors configuration screen:
Adding a new sensor is just as easy:
Easily manage the satellite service through HASS.Agent:
You'll be guided through the configuration options during onboarding:
Installing HASS.Agent is easy; just download the latest installer, run it and you're done! The installer is signed by us and won't download or do weird stuff - it just places everything where it should, and launches with the right parameter. (optionally installing .NET6)
After installing, the onboarding process will help you get everything configured, step by step. If you want an introduction into HASS.Agent, be sure to read the introduction docs.
Original HASS.Agent documentation is available here - please bear in mind however that it may not represent state of things present in this version.
Click here to download the latest installer
If you want to install manually, there are .zip packages available for every release. Read the manual for more info.
Stuck while installing or using HASS.Agent, need some help integrating the sensors/commands or have a great idea for the next version? There are a few channels through which you can reach out:
Github Tickets: Report bugs, feature requests, ideas, tips, ..
Documentation: Installation, configuration and usage documentation, as well as examples.
Discord: Get help with setting up and using HASS.Agent, report bugs or just talk about whatever.
Home Assistant forum: Bit of everything, with the addition that other HA users can help as well.
Starting from zero, and want to learn what HASS.Agent's about and how to start? Be sure to check the introduction article, and optionally the command basics.
EverythingSmartHome's youtube video is a great guide on the original HASS.Agent version: Control Your Windows PC With Home Assistant!. We recommend having a look at his other videos as well, great stuff!
If you want to help with the development of HASS.Agent, check out the Helping Out section for (translating) info.
Liam Alexander Colman from Home Assistant Guide was kind enough to write an article about HASS.Agent: Integrate Home Assistant with Windows using HASS.Agent. The website's full of useful articles, worth having a look :)
A Linux/macOS client!
This question comes up a lot, understandably. However it's currently focussed on being a Windows-based client. Even though .NET 6 allows for Linux/macOS development, it's not as easy as pressing a button. The interface would have to be redesigned from the ground up, sensors and commands would need multiple codebases for each OS, testing would take way more time, every OS handles notifications differently, etc.
You can use the official companion app for macOS, or IoPC which runs on Linux. Note: We haven't tested either.
The best way to help out is to test as much as you can (or even join the beta program), and report any weird or failing behavior by opening a ticket.
Same goes for sharing ideas for new (or improved) functionality! If you want, you can join on Discord to discuss your ideas.
First and foremost, huge thanks for Sam for creating and maintaining the original HASS.Agent in their spare time! We wouldn't be here withot the spark that pushed them to write the first line of code :heart:
As of now, we do not accept any kind of donation/coffee :)
If you'd like however, you can support creator of original HASS.Agent:
Thanks to the entire team that's developing Home Assistant - such an amazing platform!
The initial development was boosed by sleevezipper's HASS Workstation Service. Thank you for sharing your hard work.
And a big thank you to all other packages:
CoreAudio, HotkeyListener, MQTTnet, Syncfusion, Octokit, Cassia, Grapevine, LibreHardwareMonitor, Newtonsoft.Json, Serilog, CliWrap, HADotNet, Microsoft.Toolkit.Uwp.Notifications, GrpcDotNetNamedPipes, gRPC, ByteSize.
Please consult their individual licensing if you plan to use any of their code.
Everything on the HASS.Agent platform is released under the MIT license.
HASS.Agent is a .NET 6 application. If for some reason you can't install .NET 6, you can use the last .NET Framework 4.8 version:
It's pretty feature complete if you just want commands, sensors, quickactions and notifications.
You'll need to have .NET Framework 4.8 installed on your PC, which you can download here.
If you find any bugs, feel free to create a ticket and I'll try to patch it.