Control your ApexOS-powered smart home right from Raycast. π
Apex Connect is a Raycast extension for ApexOS. Search, view, and control every entity in your smart home β lights, covers, climate, media players, cameras, and more β without leaving your keyboard.
This extension isn't published on the Raycast Store β install it in developer mode:
git clone https://github.com/AdvaitT17/apexconnect-raycast.git
cd apexconnect-raycast
npm install
npx ray develop
ray develop builds the extension and adds it to Raycast. Once it's running you can close the terminal β the commands stay available in Raycast.
https://user.cloud.apexinfosys.inOpen the Raycast preferences for Apex Connect (or run any Apex Connect command) and set:
| Preference | Description |
|---|---|
| Apex Connect URL | Your instance URL, e.g. https://user.cloud.apexinfosys.in |
| API Token | The long-lived access token from above |
| Internal Apex Connect URL (optional) | Your instance's address on your home network, e.g. http://apexconnect.local:1702 |
| Home Network Detection (optional) | WiFi SSID(s) that identify your home network |
If you set an internal URL, Apex Connect uses it whenever it detects you're on your home network β either because the current WiFi SSID matches one you've listed, or because the internal URL responds to a ping (ping detection can be disabled if it's too slow for your setup).
Example:
https://user.cloud.apexinfosys.inhttp://apexconnect.local:1702MyWifi1, MyWifi2On MyWifi1 or MyWifi2, the internal URL is used. On any other network, it falls back to the Apex Connect URL.
Security note: if your internal URL uses a
.localhostname, it's resolved via mDNS, which isn't authenticated β any device on the same network can answer for it. Use HTTPS with a valid certificate for your internal URL where possible, and avoid combining a.localaddress with Ignore Certificates on networks you don't fully trust.
| Command | Type | Description |
|---|---|---|
| All Entities | view | Get/set states of all entities |
| All Entities with Attributes | view | Query entity attributes |
| Lights | view | Get/set states of lights |
| Switches | view | Get/set states of switches |
| Covers | view | Get/set states of covers |
| Fans | view | Get/set states of fans |
| Climate | view | Get/set states of climate entities |
| Media Players | view | Get/set states of media players |
| Cameras | view | Query cameras |
| Vacuum Cleaners | view | Query vacuum cleaners |
| Sensors | view | Get/set states of sensors |
| Binary Sensors | view | Get/set states of binary sensors |
| Batteries | view | Query batteries |
| Motions | view | Query motion sensors |
| Doors | view | Entities with device class "door" |
| Windows | view | Entities with device class "window" |
| Persons | view | Get/set states of persons |
| Zones | view | Get states about zones |
| Weather | view | Get weather entity states |
| Automations | view | Manage automations |
| Scripts | view | Query scripts |
| Scenes | view | Query scenes |
| Buttons | view | Query buttons |
| Helpers | view | Get/set states of helpers |
| Updates | view | Get/set states of entity updates |
| Assist | view | Conversation with Apex Connect Assist |
| Dashboard | no-view | Open the Apex Connect dashboard |
| Connection Check | view | Check the connection to Apex Connect |
| Notifications Menu | menu-bar | Persistent notifications, low batteries, and updates |
| Weather Menu | menu-bar | Weather entity in the menu bar |
| Media Player Menu | menu-bar | Media players in the menu bar |
| Lights Menu | menu-bar | Lights in the menu bar |
| Covers Menu | menu-bar | Covers in the menu bar |
| Batteries Menu | menu-bar | Batteries in the menu bar |
| Entities Menu | menu-bar | Arbitrary entities in the menu bar |
| Entity Menu 1 / 2 / 3 | menu-bar | A single entity pinned directly to the menu bar |
![]() | ![]() |
![]() | ![]() |