KENZY: Skill Manager

The Skill Manager device acts as the Brain for all collecting, storing, processing, and responding to events. It uses an intent determination routine to translate text into actions/responses. Those actions are then defined by Skills that can be added or created to meet any preference.


Parameter Type Default Description
group str None Device membership group
location str None Location, e.g. "Living Room"
folder.skills str ~/.kenzy/skills Skills folder
folder.temp str /tmp/intent_cache Trained intents storage
wake_words list ["Kenzie", "Kenzy", "Kinsey"] Wake words
timeout.wake float 15 Idle time between wake words
timeout.ask float 10 Wait time after "ask" commands
log_level str info Log level to include in logs

Example YAML file

See Service Settings for options in the service group.

type: kenzy.skillmanager

  log_level:                debug
  location:                 Living Room
  group:                    Primary
  folder.skills:            ~/.kenzy/skills
  folder.temp:              /tmp/intent_cache
    - Kenzy
    - Kenzie
    - Kensey
  timeout.wake:             45
  timeout.ask:              10

  upnp.type:                server
  port:                     9700

Basic Skills List

Name Example Description
HelloSkill "Hello" Simple greeting skill
AboutSkill "How are you?" Provides general information
CheckVersionSkill "What is your version?" Gives the current version
KnockKnockSkill "Knock, Knock" Responds to "Knock, Knock" jokes
PowerDownSkill "Please Power Down" Shutsdown the server
TellDateTimeSkill "What is the date?" Gives the date, time or day of week.
TellJokeSkill "Tell me a joke." Tells a random joke
ThankYouSkill "Thank you" Displays manners
HomeAssistantSkill "Turn on the lights" Interacts with home assistant devices.

Some skills allow for additional configuration. These configurations can be specified under the type: kenzy.skillmanager device using the skill name as its parent.

For example:

type: kenzy.skillmanager

    group:                 My Group
    location:              Family Room

      url:                 http://homeassistant.local:8123
      token:               <long-lived-access-token>

Skills Settings


The HomeAssistantSkill allows for you to specify the following parameters:

Parameter Type Description
url str The complete URL to your HA server
token str A long-lived access token generated from HA
area_aliases dict A dictionary of name/value pairs of Area IDs and friendly names to use
entity_aliases dict A dictionary of name/list pairs of Entity IDs and friendly name alternatives


type: kenzy.skillmanager

      url:                 http://homeassistant.local:8123
      token:               <long-lived-access-token>
        ha_area_id_here:   My First Area
        ha_area2_id_here:  My Second Area
          - My Switch Light
          - My Ceiling Light


The WeatherSkill allows for you to specify the following parameters:

Parameter Type Description
api_key str Current Weather API Key from
lat float Lattitude of location to provide weather update
lon float Longitude of location to provide weather update
units str Default: imperial; Options: metric, imperial, standard (a.k.a. kelvin)


type: kenzy.skillmanager

      api_key:            <api_key_here>
      lat:                43.878708
      lon:                -103.458935
      units:              imperial

Help & Support

Help and additional details is available at