Skip to main content

Open Voice OS skill manager

Project description

OVOS skills manager

Install skills from any appstore!

The mycroft-skills-manager alternative that is not vendor locked, this means you must use it responsibly!

Do not install random skills, different appstores have different policies!

Keep in mind any skill you install can modify mycroft-core at runtime, and very likely has root access if you are running on a raspberry pi

Supported stores

  • OVOS - this one is really a proof of concept for now, stay tuned!
  • Mycroft Marketplace - the official mycroft skills store, all skills are reviewed by humans!
  • Pling - the official plasma bigscreen skills store, skills are accepted by default and only removed if flagged as malicious
  • Andlo's skill list - not a real appstore, this is a web scrapped automatically generated list of 900+ skills from all over github, there is no review at all, it will catch malicious skills

Install

pip install ovos-skills-manager

Usage

osm provides a few command line utilities, explained below

Install

Install a mycroft skill! Either pass a search query or a github url

(.venv) user@hostname:~$ osm install --help
Usage: osm install [OPTIONS]

Options:
  --skill TEXT                    skill to install
  --branch TEXT                   select skill github branch to use
  --folder TEXT                   path where skill will be installed, default
                                  /opt/mycroft/skills

  --search                        search appstores, otherwise assume it's a
                                  github url

  --appstore [ovos|mycroft|pling|andlo|default|all]
                                  search a specific appstore, default search
                                  appstores enabled in config file

  --method [all|name|url|category|author|tag|description]
                                  match this metadata field when searching
  --fuzzy / --exact               exact or fuzzy matching, default fuzzy
  --thresh INTEGER RANGE          fuzzy matching threshold from 0 (everything
                                  is a match) to 100 (exact match),  default
                                  80

  --no-ignore-case                ignore upper/lower case, default ignore
  --help                          Show this message and exit.

Enable

Enable a new skills store

(.venv) user@hostname:~$ osm enable --help
Usage: osm enable [OPTIONS]

Options:
  --appstore [ovos|mycroft|pling|andlo|all]
                                  enable a specific appstore
  --help                          Show this message and exit.

Disable

Disable a skills store

(.venv) user@hostname:~$ osm disable --help
Usage: osm disable [OPTIONS]

Options:
  --appstore [ovos|mycroft|pling|andlo|all]
                                  disable a specific appstore
  --help                          Show this message and exit.

Sync

Sync skill list for a skills store

Suggestion: set a cronjob for this

(.venv) user@hostname:~$ osm sync --help
Usage: osm sync [OPTIONS]

Options:
  --appstore [ovos|mycroft|pling|andlo|default|all]
                                  sync a specific appstore, default syncs
                                  appstores enabled in config file

  --rebuild                       rebuild skill database, if not set only sync
                                  data for new skills

  --merge                         merge skill data, if not set replaces skill
                                  entries

  --github                        augment skill data from github, by default
                                  only saves data provided directly by the
                                  appstore

  --help                          Show this message and exit.

Priority

Change priority of a skills store, this will affect order of results and have impact in the OSM-skill (coming soon)

(.venv) user@hostname:~$ osm priority --help
Usage: osm priority [OPTIONS]

Options:
  --appstore [ovos|mycroft|pling|andlo]
                                  change priority of a specific appstore
  --priority INTEGER RANGE        appstore priority, from 0 (highest) to 100
                                  (lowest)

  --help                          Show this message and exit.

Print config

print current configuration of osm, config file can be found at ~/.config/OpenVoiceOS/OVOS-SkillsManager.json

(.venv) user@hostname:~$ osm print --help
Usage: osm print [OPTIONS]

Options:
  --appstore [ovos|mycroft|pling|andlo|all|default]
                                  print config of a specific appstore
  --help                          Show this message and exit.

Search

Search skills and print results, searching can be done according any number of criteria, this is useful for discovery

(.venv) user@hostname:~$ osm search --help
Usage: osm search [OPTIONS]

Options:
  --query TEXT                    Search a skill with this query
  --method [all|name|url|category|author|tag|description]
                                  match this metadata field when searching
  --appstore [ovos|mycroft|pling|andlo|default|all]
                                  search a specific appstore, by default
                                  searches appstores enabled in config file

  --fuzzy / --exact               exact or fuzzy matching
  --thresh INTEGER RANGE          fuzzy matching threshold from 0 (everything
                                  is a match) to 100 (exact match)

  --no-ignore-case                ignore upper/lower case
  --help                          Show this message and exit.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ovos-skills-manager-0.0.13.tar.gz (369.1 kB view details)

Uploaded Source

Built Distribution

ovos_skills_manager-0.0.13-py3-none-any.whl (389.3 kB view details)

Uploaded Python 3

File details

Details for the file ovos-skills-manager-0.0.13.tar.gz.

File metadata

  • Download URL: ovos-skills-manager-0.0.13.tar.gz
  • Upload date:
  • Size: 369.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for ovos-skills-manager-0.0.13.tar.gz
Algorithm Hash digest
SHA256 82b79850bdb8896a45e85ac3869e995d51efae9aed306051cc73ea7c74f1c253
MD5 ea793f1eaa66d0c1c274b3fb2849a24e
BLAKE2b-256 c77f0750f22aa828d72ad48ca295f59557109a96b0133b0cbeda56d74a66ca6e

See more details on using hashes here.

File details

Details for the file ovos_skills_manager-0.0.13-py3-none-any.whl.

File metadata

File hashes

Hashes for ovos_skills_manager-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 0b3c2d9ad9af9fbdde1af201aae40b80750abd4885e16b810744fb20bc3062cf
MD5 c12137fddca6941c8214616ffeb5e8f3
BLAKE2b-256 9ae726238626361e4a64417b6123c47ddf5111035e9690d970a33d3f28f1e5f9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page