Extension Icon

Apex Connect+

Apex Connect+ remote control. Control your house with Raycast πŸš€
Overview
Apex Connect logo

Apex Connect for Raycast

Control your ApexOS-powered smart home right from Raycast. πŸš€

Released under the MIT license. PRs welcome! macOS only (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.

Features

  • Manage every entity type: lights, switches, covers, fans, climate, media players, cameras, vacuums, scripts, scenes, automations, and more
  • Menu bar widgets for lights, covers, media players, batteries, weather, notifications, and arbitrary entities
  • Real-time state updates over a WebSocket connection
  • Automatic switching between an internal (home network) and external (cloud) URL based on WiFi SSID or reachability
  • Optional deep-linking into the Apex Connect companion app instead of the browser

Requirements

  • Raycast on macOS
  • An ApexOS instance reachable over HTTP(S), plus a long-lived access token

Installation

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.

Setup

Get an access token

  1. Go to your ApexOS instance, e.g. https://user.cloud.apexinfosys.in
  2. Click your profile (next to notifications) in the left sidebar
  3. Scroll down to Long-Lived Access Tokens
  4. Click Create Token and store it somewhere safe β€” Apex Connect won't show it again

Configure the extension

Open the Raycast preferences for Apex Connect (or run any Apex Connect command) and set:

PreferenceDescription
Apex Connect URLYour instance URL, e.g. https://user.cloud.apexinfosys.in
API TokenThe 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

Home network detection

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:

  • Apex Connect URL: https://user.cloud.apexinfosys.in
  • Internal URL: http://apexconnect.local:1702
  • Home WiFi SSIDs: MyWifi1, MyWifi2

On 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 .local hostname, 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 .local address with Ignore Certificates on networks you don't fully trust.

Commands

Full list of commands
CommandTypeDescription
All EntitiesviewGet/set states of all entities
All Entities with AttributesviewQuery entity attributes
LightsviewGet/set states of lights
SwitchesviewGet/set states of switches
CoversviewGet/set states of covers
FansviewGet/set states of fans
ClimateviewGet/set states of climate entities
Media PlayersviewGet/set states of media players
CamerasviewQuery cameras
Vacuum CleanersviewQuery vacuum cleaners
SensorsviewGet/set states of sensors
Binary SensorsviewGet/set states of binary sensors
BatteriesviewQuery batteries
MotionsviewQuery motion sensors
DoorsviewEntities with device class "door"
WindowsviewEntities with device class "window"
PersonsviewGet/set states of persons
ZonesviewGet states about zones
WeatherviewGet weather entity states
AutomationsviewManage automations
ScriptsviewQuery scripts
ScenesviewQuery scenes
ButtonsviewQuery buttons
HelpersviewGet/set states of helpers
UpdatesviewGet/set states of entity updates
AssistviewConversation with Apex Connect Assist
Dashboardno-viewOpen the Apex Connect dashboard
Connection CheckviewCheck the connection to Apex Connect
Notifications Menumenu-barPersistent notifications, low batteries, and updates
Weather Menumenu-barWeather entity in the menu bar
Media Player Menumenu-barMedia players in the menu bar
Lights Menumenu-barLights in the menu bar
Covers Menumenu-barCovers in the menu bar
Batteries Menumenu-barBatteries in the menu bar
Entities Menumenu-barArbitrary entities in the menu bar
Entity Menu 1 / 2 / 3menu-barA single entity pinned directly to the menu bar

Screenshots

All EntitiesLights
Media PlayersCovers

License

MIT