Mycroft Skills Repo
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 1change 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" |
✔️ | CryptoSkill | Delivers cryptocurrency-related functionality for Mycroft."What is the current price of (insert coin name/ticker)" |
✔️ | 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" |
✔️ | Better jokes | Get mycroft to make better jokesbe funny |
✔️ | 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 deviceset a timer for 30 minutes |
✔️ | Internet Radio | Listen to Internet Radiointernet radio |
✔️ | Number Generator | Mycroft will pick a random numberpick a number |
✔️ | Bitcoin price | Check the price of bitcoinwhat 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. |
🚧 | 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 locationsplay [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 |