Giter Club home page Giter Club logo

mycroft-skills'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"
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

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 Lets the user request playback of any music or video available. Version 1.0
"AVmusic play chopin"
โœ”๏ธ Australian news Play ABC news from Australia
"Play Australian news"
โœ”๏ธ AutoGUI Manipulate your mouse and keyboard with Mycroft
โœ”๏ธ Basic help Get basic Mycroft questions and help answered
"where is the documentation", "how do I install from source"
โœ”๏ธ Caffeine Wiz Provides the caffeine content of various drinks on request.
what's caffeine content of *drink*?
โœ”๏ธ Coin flip Flip a virtual coin
โœ”๏ธ Deutschland Funk Listen to Deutschlandfunk and query schedule
โœ”๏ธ Federal Closings List Federal Government Closings
"are there federal closings?"
โœ”๏ธ Home Assistant Control your devices in home-assistant
"turn on office"
โœ”๏ธ Pandora Play Pandora stations via Pianobar
โœ”๏ธ Ping Pings websites and responds with latency time
โœ”๏ธ Radio RNE Spanish news radio Radio Nacional de Espa?a RNE.
โœ”๏ธ Timer Set a timer on your device
set a timer for 30 minutes
โœ”๏ธ Internet Radio Listen to Internet Radio
internet radio
โœ”๏ธ Number Generator Mycroft will pick a random number
pick a number
โœ”๏ธ Bitcoin price Check the price of bitcoin
what is the bitcoin price?
โœ”๏ธ ESP8266 Communicate with an ESP8266 in the context of home automation.
Turn on the lamp
๐Ÿšง Brain Chain intents and provide some services
๐Ÿšง Calculator Conversation-based calculator.
Do some math
๐Ÿšง DeepDream Add Deepdreaming image converstion to Mycroft
๐Ÿšง Dice roll Roll dice spoken in RPG notation.
๐Ÿšง Facebook Generate posts for Facebook
๐Ÿšง Facebook marketing Work with Facebook Marketing API
๐Ÿšง GPIO example Example of using the GPIO pins on the Raspberry Pi to blink an LED
๐Ÿšง MiLight Lighting control using MiLight
๐Ÿšง Mopidy and BT lights Remote control of BT lights and Mopidy music playback
๐Ÿšง Mosquito speak Allow Mycroft to notify you on events, by speaking text received on a mqtt bus.
๐Ÿšง Objective Register objectives almost the same has an intent would be registered with ObjectiveBuilder class
๐Ÿšง OpenHAB Add Openhab support to Mycroft
๐Ÿšง Read article Scrapes text from online articles and reads them to you.
๐Ÿšง Sentiment analysis Sentiment analysis
๐Ÿšง The Cows Lists Interact with "Remember The Milk" list and task management ecosystem.
"add milk to my grocery list"
๐Ÿšง Wallpaper Download wallpapers from reddit and changes randomly
๐Ÿšง Whats Nearby Search for nearby Places for Mycroft on Plasma (Search For Resturants, Hotels, Parks etc)
"search for nearby bars/pubs/parks/hospitals/etc"
๐Ÿšง Kickstarter Tracker Track the pledge amount of a project on Kickstarter
"track mycroft on kickstarter"
๐Ÿšง Wifi management Various options for interacting with WiFi
โ“ Amarok media player control Player controls for the Amarok Media Player
"amarok play/stop/next/previous music"
โ“ Angry Beanie podcast Query and play Angry Beanie Podcasts
"Get Angry Beanie shows"
โ“ Plasma audio control Audio control for Plasma Desktop
"increase volume to maximum", "decrease microphone to minimum volume"
โ“ Bioinformatics Add Bio-Linux Commands to Mycroft
โ“ Bitcoin Check the price of bitcoin
โ“ CBC news Fetch CBC News Podcast
โ“ Clarifai image recognition Image recognition based on clarifai
"search image url [imagelocation]"
โ“ Clementine player Control your clementine-player localy. A fork from amarok-player.
โ“ Cleverbot Cleverbot API fallback
โ“ Daily Meditation Play your Daily Meditation from the Meditation Podcast
โ“ Diagnostics Diagnostic tools (CPU %age, free space, etc)
โ“ Domoticz Integrate Mycroft with Domoticz
โ“ Drive servos Control Hacked-Servo-Engines to make your Mycroft move around
โ“ Earth orbit pic Earth orbit picture skill
โ“ Feedback Trigger positive feedback intent -> calls feedback method on last active skill
โ“ Fox newsskill Fetch Fox News Podcast
โ“ Google Calendar Check and add google calendar events
โ“ Gmail Get email from your Gmail Inbox
โ“ Google image search Search Google images and display
โ“ Google translate Translate English phrases into other languages
โ“ Hue Control your Phillips Hue lights
โ“ IR Send Control devices via lirc's irsend
โ“ JB podcasts Play podcasts from Jupiter Broadcasting shows
โ“ KDE Kate control Kate Editor control skill
"new document, close document, goto next/previous tabs/views"
โ“ KDE Krunner search Search local KDE desktop for files, images, recent documents, bookmarks
"search this computer for [any keyword]"
โ“ Kodi cadair Kodi playback and search
โ“ Kodi cbenning Control a local or remote Kodi instance
โ“ Kodi k3yb0ardn1nja Play or pause a Kodi video
โ“ Let's talk More salutations
โ“ Lottery Reads Euromillion Lottery Numbers
โ“ Media console control Add media controls that are mapped to console commands
โ“ Metal band Recommend a metal band and gives basic information
โ“ Mopidy Mopidy-based players for local music, Google Music, and Spotify
โ“ Movie recommendation-skill Recomend a movie
โ“ MPD control Control media players that use the MPD protocol to play found local music
โ“ MQTT Control IoT devices (home automation) using MQTT protocol
โ“ Mute skill Mute Mycroft until re-enabled
โ“ NASA picture of the day NASA picture of the day from the NASA API
โ“ Nature Sounds Play relaxing nature sounds recorded at various locations
play [river/thunderstorm/songbird]
โ“ Near Earth orbit Near Earth orbit alert skill via the NASA API
โ“ Photolocation Searches wikimedia for photos of location
โ“ Pickup line Responds with random nerdy pick-up lines
โ“ Plasma activities Integrate Plasma 5 Activities with Mycroft
"show activities / switch activity [name]"
โ“ Plasma Mycroft plasmoid control Control the Mycroft Plasmoid
"show mycroft applet / display skills page"
โ“ Plasma send SMS Send SMS through KDE Plasma
"send a sms"
โ“ Plasma user control Add Plasma User control to Mycroft, allowing switch user, logout, and lock screen
"switch user/logout/lock screen"
โ“ Poetry Read poetry based on Hidden Markov Models
โ“ Proxy scrape Scrape proxies from the internet
โ“ Pushbullet Send messsages and photos using Pushbullet
โ“ Pushetta Add push notifications
โ“ Quodlibet Control Quod Libet music playback
โ“ Random quote Random quotes,random facts about numbers, and your time left to live
โ“ RATP timetables Access schedules for the RATP Network of trains and buses in Paris
โ“ RSS Fetch from RSS feed
โ“ Spaceflight schedule Check when the next space flight launch is scheduled
โ“ Spacelaunch Check when the next space launch is scheduled
โ“ Speedtest Run a speedtest
โ“ Slack Post and listen to Slack messages.
โ“ Sunspot Answer questions on daily sunspots
โ“ Sun Respond with sunrise and set times
โ“ System System controls like shutdown and reboot
โ“ Take picture Take pictures using the Raspberry Pi Camera
โ“ Traffic Commute time from Google distance matrix api
โ“ White House Adventure Play the old text adventure Zork 1
โ“ Unsplash wallpaper-plasma-skill Change KDE Desktop wallpaper by category type from unsplash
"change wallpaper type [nature\abstract\any]"
โ“ WEMO Control WEMO devices with Mycroft
โ“ Wiki fact scraper Scrape random facts from Wikipedia and store locally
โ“ Youtube Search and listen to a Youtube video
โ“ Release test Test a mycroft release
๐Ÿ’€ Enhanced Bitcoin Enhanced bitcoin from api.bitcoinaverage.com

mycroft-skills's People

Contributors

kfezer avatar btotharye avatar forslund avatar tree-ind avatar aiix avatar aatchison avatar augustnmonteiro avatar carstenagerskov avatar nold360 avatar el-tocino avatar kathyreid avatar matthewscholefield avatar normandmickey avatar reginaneon avatar fridayortiz avatar ethanaward avatar christopherrogers1991 avatar mortommy avatar jarbasal avatar eclarity avatar dave-esch avatar sujan4k0 avatar learnedvector avatar mason88 avatar duckwho avatar guilhembn avatar wligtenberg avatar vavrek avatar treussart avatar aussiew avatar

Watchers

James Cloos avatar  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.