Giter Site home page Giter Site logo

fgovers / mycroft-skills-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mycroftai/mycroft-skills

0.0 2.0 0.0 7.78 MB

A repository for sharing and collaboration for third-party Mycroft skills development.

Python 35.77% Shell 2.05% HTML 62.18%

mycroft-skills-1's Introduction

Mycroft Skills Repo

logo

Content

Welcome

The official home of skills for the Mycroft ecosystem. These skills are written by both the MycroftAI team and others within the Community. HTML version of this document

Available Skills

Skill Name Description
"handled phrases"
AIML Fallback AIML skill by JarbasAI
Alarm Alarm
Audio Record Record and Play Audio
"record"
Configuration Update Mycroft configuration
"configuration update"
Date Time Tell the date or time
"what time is it"
Desktop Launcher Open Applications on Desktop
"open firefox"
DuckDuckGo Query DuckDuckGo's Instant Answer API for general questions
"what is frankenstein"
Hello World Hello world and Mycroft manners
"how are you"
IP Check the device's IP Address
"what is your ip address"
Joke Tell jokes
"tell me a joke"
Installer Install skills
"install daily meditation"
"uninstall skill daily meditation"
Mark-1 Demo Demonstration of Mark 1
DEMO from the Mark 1 menu
Naptime Put Mycroft to sleep
"go to sleep"
NPR News Listen to the news from NPR
"what's the latest news"
Pairing Pair Mycroft with home.mycroft.ai
"pair my device"
Personal Learn about Mycroft
"what are you"
Playback Control Control audio subsystem
"play", "pause", "next"
Reminder Reminders to do something
"remind me to turn off the oven in 5 minutes"
Speak Repeat anything
"say open source AI"
Singing Sing a song!
"sing a song"
Stock Stock prices
"what is the stock price of Autodesk"
Stop Stop running skills
"stop"
Unknown Fallback When Mycroft doesn't know an answer or understand a command
"green jelly wood"
Version Checker Find the version of mycroft-core
"check version"
Volume Control Volume
"turn up the volume", "mute audio"
Weather Current Weather and Forecasts
"what is the weather"
WeMo Discover and control WeMo devices
"discover my devices"
Wiki Wikipedia queries
"tell me about AI"
Wink IoT Control lights via a Wink hub
"turn on the lights" "dim the kitchen light"
Platform Patch Patch for official platforms
"platform patch"
Mark 1 settings Control your Mark 1
change eye color to red
Spotify Listen to music from your Spotify Premium account
play discover weekly
Pandora Listen to Pandora stations
play pandora
openHAB Add an AI Voice assistant to your openHAB system
"turn on Diningroom Light" "regulate Main Thermostat to 20 degrees"

How to Submit a Skill

1) Make a Repo

Create the skill in a repo under your own Github user account. You can follow the guide at How To Make a Repo, or use the skiller.sh script.

2) Clone Repo

Clone the mycroft-skills repo to a local directory, How To Clone if you are unfamiliar with the process.

git clone https://github.com/MycroftAI/mycroft-skills.git

3) Generate the README.md

All skills must have a standard README.md. You can use the Meta Editor to create it.

4) Add your Skill as a submodule

Add the your skill to this repo as a submodule. You can type the following in the terminal of within your clone of the mycroft-skills repo.

git submodule add $remote $name-of-your-skill

Where $remote is the git address for your repo (for example "https://github.com/MycroftAI/skill-configuration") and $name-your-skill is the name used to install it via MSM or "Hey Mycroft, install ...". The recommended format for skill names is "publisher-descriptive-name", where 'publisher' is a unique name for you or your organization. For example, "penrod-nautical-speed-translator".

When picking a name keep in mind that the installer will match by whole words between the dashes. So if a user says "install speed translator" it will look for all skills in the repo with the words 'speed' AND 'translator'. That means it will find "penrod-nautical-speed-translator" but would not find "abc-nautical-speeds-translator". Make sure the pieces of the name are 'speakable' to allow verbal installs. That means "fubar-v2timer" would be a bad name since you can't speak "v2timer" as a word. A better name would be "fubar-timer-v2" or "fubar-timer-version-2".

The above command should have modified the .gitmodules file and added something similar to the bottom of the file:

+[submodule "NAME-OF-YOUR-SKILL"]
 +	path = YOUR-SKILL-REPO (or any unique path withing the mycroft-skills repo)
 +	url = https://github.com/USERNAME/YOUR-SKILL-REPO.git

For more help, feel free to check out this guide to working with submodules

5) Modify this README.md

Modify the table section below to include the direct link to your repo. Including the break HTML tag and an example phrase or two that trigger your skill:

| :heavy_check_mark:  | [home-assistant](https://github.com/btotharye/mycroft-homeassistant#readme)| Control your devices in home-assistant<br>```turn on office``` |

Chose an appropriate status icon from the list below:

Status:
โœ”๏ธ good working order
๐Ÿšง still being developed and not ready for general use (for reference/collaboration)
โ“ untested (by us)
๐Ÿ’€ Broken, but good for ideas!

6) Submit a PR (Pull Request)

Once you've got your local version of the repo organized properly, submit a PR.

MSM Compliance

To make your skill capable of being installed via MSM (the Mycroft Skill Manager) you can include two additional files.

requirements.txt

A list of all Python modules which must be installed for it to work. These will be installed via the Python PIP utility

requirements.sh

A script to run that will perform any additional steps needed to prepare the system for your skill. This can include package installations.

Status meaning:
โœ”๏ธ good working order
๐Ÿšง still being developed and not ready for general use (for reference/collaboration)
โ“ untested (by us)
๐Ÿ’€ Broken, but good for ideas!

For an example pull request , check out this PR

Community Contributed Skill List

When submitting a skill make sure skill name links to main repo for the skill, we are doing away with wiki pages. Also please include the phrase to trigger on as well for your skill.

Status Skill Name Description
"phrase to trigger"
โœ”๏ธ AVmusic Provides the playback of any music/video requested by the user. No login required.
play some imagine dragons music
โœ”๏ธ CaffeineWiz Request caffeine content of selected drinks
what's the caffeine content of *drink*?
โœ”๏ธ Krunner Search Skill Search KDE Plasma locally for files, applications, documents etc
search this computer for 'Your Filename/Application/Etc'
โœ”๏ธ mycroft-hue Control your Phillips Hue lights
turn on the lights
โœ”๏ธ Homeassistant Control your devices in home-assistant
"turn on office"
โœ”๏ธ Plasma Activities Skill Control KDE Plasma 5 Activities with Mycroftshow/create/switch/remove activity [name]
โœ”๏ธ Today In History Skill Gives a random event from today in historytoday in history
โœ”๏ธ translate-skill Translate phrases into several languages
"translate good morning into japanese"
โœ”๏ธ Zork Play the old school adventure game
and explore the underground empire
โœ”๏ธ Score Reports latest MLB scores
what is the Royals score
โœ”๏ธ Yelp-Finder Looks up restaurants/bars/plaes via Yelp API
"sushi restaurants near me", "comic book stores near by"
โœ”๏ธ person-detector detects persons in front of webcam
how many persons in front of you

mycroft-skills-1's People

Contributors

forslund avatar kfezer avatar btotharye avatar tree-ind avatar reginaneon avatar aiix avatar kathyreid avatar matthewscholefield avatar el-tocino avatar carstenagerskov avatar aatchison avatar augustnmonteiro avatar learnedvector avatar mortommy avatar patilaum avatar nold360 avatar jarbasal avatar fridayortiz avatar gobbenobber avatar deejcunningham avatar christopherrogers1991 avatar normandmickey avatar ethanaward avatar tjoen avatar jcasoft avatar eclarity avatar aussiew avatar dave-esch avatar sujan4k0 avatar mason88 avatar

Watchers

James Cloos avatar Francis Govers avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.