hass-agent / HASS.Agent

Unofficial development project for the HASS.Agent platform.
https://hass-agent.io
MIT License
378 stars 11 forks source link

GitHub release (latest by date) license OS - Windows dotnet GitHub all releases GitHub latest Discord

HASS.Agent logo

HASS.Agent

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.


Contents


Why?

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.


Fork?

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!


Functionality

Summary of the core functions:


Screenshots

Notification examples:

image Text-based toast notification 261428315-fa66e0cf-bd41-49d6-956c-864eec4bcc70

WebView example, showing a dashboard when right-clicking the tray icon:

WebView

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:

Quick Actions

You can easily configure a new Quick Action, HASS.Agent will fetch your entities for you:

New Quick Actions

The sensors configuration screen:

Sensors

Adding a new sensor is just as easy:

Sensors

Easily manage the satellite service through HASS.Agent:

Service

You'll be guided through the configuration options during onboarding:

Onboarding


Installation

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.


Help and Documentation

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:

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.


Articles

Original HASS.Agent

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 :)


What it's not

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.


Helping Out

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.


Credits and Licensing

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:

ko-fi "Buy Me A Coffee" paypal

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.


Legacy

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:

v2022.3.8

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.