[
  {
    "id": "andlo-ovos-skill-365tomorrows-stories",
    "skill_id": "ovos-skill-365tomorrows-stories.andlo",
    "name": "365tomorrows Stories (provider)",
    "description": "Reads daily CC-licensed flash sci-fi from 365tomorrows.com aloud. Provider for ovos-common-reading-pipeline-plugin - no standalone voice interface.",
    "examples": [
      "Read newest story from 365tomorrows",
      "Read a story from 365tomorrows"
    ],
    "tags": [
      "entertainment",
      "scifi",
      "flashfiction",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-365tomorrows-stories/main/book-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-365tomorrows-stories",
    "package_name": "ovos-skill-365tomorrows-stories",
    "pypi_version": "0.1.8",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-365tomorrows-stories ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "365tomorrows Historier (udbyder)",
        "description": "L\u00e6ser dagligt CC-licenseret science fiction fra 365tomorrows.com h\u00f8jt. Udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "L\u00e6s mig seneste historie fra 365tomorrows"
        ]
      },
      "de-de": {
        "name": "365tomorrows Geschichten (Anbieter)",
        "description": "Liest t\u00e4glich CC-lizenzierte Science-Fiction-Kurzgeschichten von 365tomorrows.com vor. Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von 365tomorrows",
          "Lies mir eine Geschichte von tomorrows"
        ]
      },
      "es-es": {
        "name": "Historias de 365tomorrows (proveedor)",
        "description": "Lee en voz alta ciencia ficci\u00f3n breve con licencia CC de 365tomorrows.com a diario. Proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente.",
        "examples": [
          "Cu\u00e9ntame un cuento de 365tomorrows",
          "L\u00e9eme un cuento de tomorrows"
        ]
      },
      "fr-fr": {
        "name": "Histoires 365tomorrows (fournisseur)",
        "description": "Lit \u00e0 voix haute chaque jour de la science-fiction courte sous licence CC de 365tomorrows.com. Fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome.",
        "examples": [
          "Raconte-moi une histoire de 365tomorrows",
          "Lis-moi une histoire de tomorrows"
        ]
      },
      "it-it": {
        "name": "Racconti 365tomorrows (fornitore)",
        "description": "Legge ad alta voce ogni giorno fantascienza breve con licenza CC da 365tomorrows.com. Fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma.",
        "examples": [
          "Raccontami una storia di 365tomorrows",
          "Leggimi una storia di tomorrows"
        ]
      },
      "nl-nl": {
        "name": "365tomorrows Verhalen (aanbieder)",
        "description": "Leest dagelijks CC-gelicentieerde sciencefiction van 365tomorrows.com hardop voor. Aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface.",
        "examples": [
          "Vertel me een verhaal van 365tomorrows",
          "Lees me een verhaal van tomorrows"
        ]
      },
      "pt-pt": {
        "name": "Hist\u00f3rias 365tomorrows (fornecedor)",
        "description": "L\u00ea em voz alta fic\u00e7\u00e3o cient\u00edfica curta com licen\u00e7a CC da 365tomorrows.com diariamente. Fornecedor para ovos-common-reading-pipeline-plugin. Sem interface de voz aut\u00f3noma.",
        "examples": [
          "Conta-me uma hist\u00f3ria de 365tomorrows",
          "L\u00ea-me uma hist\u00f3ria de tomorrows"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T23:05:13Z",
    "last_updated": "2026-10-01T10:34:06.433563Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-365tomorrows-stories.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:56:21+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:30:17+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.1.8",
          "tested_at": "2026-10-30T08:58:43+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-alerts",
    "skill_id": null,
    "name": "Alerts",
    "description": "A skill to manage alarms, timers, reminders, events and todos and optionally sync them with a CalDAV service.",
    "examples": [
      "Set an alarm for 8 AM.",
      "Start a timer for 30 minutes.",
      "Schedule an appointment for tennis on friday at 2 PM.",
      "Set a daily alarm for 8 AM.",
      "Set an alarm for 8 AM on saturdays.",
      "remind me to take out the trash every Thursday and Sunday at 7 PM.",
      "wake me up at 8 AM with music.",
      "When is my next alarm?",
      "What are my upcoming reminders?",
      "Cancel all alarms.",
      "Cancel all timers.",
      "Cancel all reminders.",
      "What did I miss today?",
      "Did I miss anything?"
    ],
    "tags": [
      "Productivity",
      "Daily",
      "alert",
      "alarm",
      "timer",
      "reminder",
      "schedule"
    ],
    "category": "Productivity",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-alerts/dev/logo.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-alerts",
    "package_name": "ovos-skill-alerts",
    "pypi_version": "0.1.28",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 5,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Alertes",
        "description": "Una habilitat per a gestionar alarmes, temporitzadors, recordatoris, esdeveniments i tasques pendents i, opcionalment, sincronitzar-los amb un servei CalDAV.",
        "examples": [
          "Posa una alarma a les 8 AM.",
          "Inicia un temporitzador de pa durant 30 minuts.",
          "Programa un esdeveniment de tennis per a les 14:00 de divendres amb una durada de 2 hores.",
          "Estableix una alarma di\u00e0ria per a les 8 del mat\u00ed.",
          "Estableix una alarma per a les 8 del mat\u00ed tots els dissabtes.",
          "recorda'm de treure les escombraries cada dijous i diumenge a les 19h.",
          "desperta'm a les 8 del mat\u00ed amb m\u00fasica.",
          "Quan \u00e9s la meva pr\u00f2xima alarma?",
          "Quins s\u00f3n els meus recordatoris?",
          "Cancel\u00b7la totes les alarmes.",
          "Cancel\u00b7la tots els temporitzadors.",
          "Cancel\u00b7la tots els recordatoris.",
          "Qu\u00e8 m'he perdut?",
          "M'he perdut alguna cosa?"
        ]
      },
      "cs-cz": {
        "name": "Upozorn\u011bn\u00ed",
        "description": "Dovednost pro spr\u00e1vu bud\u00edk\u016f, \u010dasova\u010d\u016f, p\u0159ipom\u00ednek, ud\u00e1lost\u00ed a \u00fakol\u016f, voliteln\u011b se synchronizac\u00ed se slu\u017ebou CalDAV.",
        "examples": [
          "Nastav bud\u00edk na 8 r\u00e1no.",
          "Spus\u0165 \u010dasova\u010d na chleba na 30 minut.",
          "Napl\u00e1nuj na p\u00e1tek od 14:00 tenis na dv\u011b hodiny.",
          "Nastav denn\u00ed bud\u00edk na 8 r\u00e1no.",
          "Nastav bud\u00edk na 8 r\u00e1no v sobotu.",
          "P\u0159ipome\u0148 mi vyn\u00e9st ko\u0161 ka\u017ed\u00fd \u010dtvrtek a ned\u011bli v 19:00.",
          "Vzbu\u010f m\u011b v 8 r\u00e1no hudbou.",
          "Kdy m\u00e1m dal\u0161\u00ed bud\u00edk?",
          "Jak\u00e9 m\u00e1m p\u0159ipom\u00ednky?",
          "Zru\u0161 v\u0161echny bud\u00edky.",
          "Zru\u0161 v\u0161echny \u010dasova\u010de.",
          "Zru\u0161 v\u0161echny p\u0159ipom\u00ednky.",
          "Co jsem zme\u0161kal?",
          "Zme\u0161kal jsem n\u011bco?"
        ]
      },
      "da-dk": {
        "name": "Advarsler",
        "description": "En f\u00e6rdighed til at administrere alarmer, timere, p\u00e5mindelser, begivenheder og g\u00f8rem\u00e5l og eventuelt synkronisere dem med en CalDAV-tjeneste.",
        "examples": [
          "Indstil en alarm til kl. 8.",
          "Start en br\u00f8dtimer i 30 minutter.",
          "Planl\u00e6g en tennisbegivenhed til kl. 14.00 p\u00e5 fredag, der str\u00e6kker sig over 2 timer.",
          "Indstil en daglig alarm til kl.",
          "Indstil en alarm til kl. 8 om l\u00f8rdagen.",
          "mindemig om at tage skraldet ud hver torsdag og s\u00f8ndag kl. 19.00.",
          "v\u00e6k mig kl. 8 med musik.",
          "Hvorn\u00e5r er min n\u00e6ste alarm?",
          "Hvad er mine p\u00e5mindelser?",
          "Annuller alle alarmer.",
          "Annuller alle timere.",
          "Annuller alle p\u00e5mindelser.",
          "Hvad gik jeg glip af?",
          "Gik jeg glip af noget?"
        ]
      },
      "de-de": {
        "name": "Benachrichtigungen",
        "description": "Ein Skill zum Verwalten von Alarmen, Timern, Erinnerungen, Ereignissen und Aufgaben und optional zum Synchronisieren dieser mit einem CalDAV-Dienst.",
        "examples": [
          "Stelle den Wecker auf 8 Uhr.",
          "Starte einen Brottimer f\u00fcr 30 Minuten.",
          "Plane f\u00fcr Freitag 14:00 Uhr ein Tennis-Event mit einer Dauer von 2 Stunden.",
          "Stelle t\u00e4glich einen Wecker auf 8 Uhr.",
          "Stelle den Wecker samstags auf 8:00 Uhr.",
          "erinnere mich jeden Donnerstag und Sonntag um 19\u00a0Uhr daran, den M\u00fcll rauszubringen.",
          "weck mich um 8 Uhr mit Musik.",
          "Wann ist mein n\u00e4chster Alarm?",
          "Was sind meine Erinnerungen?",
          "Alle Alarme abbrechen.\nBreche alle Alarme ab",
          "Alle Timer abbrechen.",
          "Alle Erinnerungen abbrechen.",
          "Was habe ich verpasst?",
          "Habe ich etwas verpasst?"
        ]
      },
      "es-co": {
        "name": "Alertas",
        "description": "Una skill para gestionar alarmas, temporizadores, recordatorios, eventos, tareas pendientes y, opcionalmente, sincronizarlos con un servicio CalDAV.",
        "examples": [
          "Pon una alarma a las 8 a.m.",
          "Inicia un temporizador para el pan de 30 minutos.",
          "Programa un evento de tenis para las 14:00 del viernes con una duraci\u00f3n de 2 horas.",
          "Establece una alarma diaria para las 8 de la ma\u00f1ana.",
          "Establece una alarma para las 8 de la ma\u00f1ana todos los s\u00e1bados.",
          "recuerda sacar la basura cada jueves y domingo a las 19h.",
          "despi\u00e9rtame a las 8 de la ma\u00f1ana con m\u00fasica.",
          "\u00bfCu\u00e1ndo es mi pr\u00f3xima alarma?",
          "\u00bfCu\u00e1les son mis recordatorios?",
          "Cancela todas las alarmas.",
          "Cancela todos los temporizadores.",
          "Cancela todos los recordatorios.",
          "\u00bfQu\u00e9 me he perdido?",
          "\u00bfMe he perdido algo?"
        ]
      },
      "es-es": {
        "name": "Alertas",
        "description": "Una skill para gestionar alarmas, temporizadores, recordatorios, eventos, tareas pendientes y, opcionalmente, sincronizarlos con un servicio CalDAV.",
        "examples": [
          "Pon una alarma a las 8 a.m.",
          "Inicia un temporizador para el pan de 30 minutos.",
          "Programa un evento de tenis para las 14:00 del viernes con una duraci\u00f3n de 2 horas.",
          "Establece una alarma diaria para las 8 de la ma\u00f1ana.",
          "Establece una alarma para las 8 de la ma\u00f1ana todos los s\u00e1bados.",
          "recuerda sacar la basura cada jueves y domingo a las 19h.",
          "despi\u00e9rtame a las 8 de la ma\u00f1ana con m\u00fasica.",
          "\u00bfCu\u00e1ndo es mi pr\u00f3xima alarma?",
          "\u00bfCu\u00e1les son mis recordatorios?",
          "Cancela todas las alarmas.",
          "Cancela todos los temporizadores.",
          "Cancela todos los recordatorios.",
          "\u00bfQu\u00e9 me he perdido?",
          "\u00bfMe he perdido algo?"
        ]
      },
      "eu-es": {
        "name": "Alertak",
        "description": "Alarmak, tenporizadoreak, oroigarriak, gertaerak eta zereginak kudeatzeko trebetasuna, eta nahi izanez gero CalDAV zerbitzu batekin sinkronizatzeko.",
        "examples": [
          "Jarri alarma bat goizeko 8etan.",
          "Abiarazi ogiaren tenporizadorea 30 minuturako.",
          "Antolatu tenis gertaera bat ostiralean arratsaldeko 2etan, 2 orduz.",
          "Jarri eguneroko alarma bat goizeko 8etan.",
          "Jarri alarma bat larunbatetan goizeko 8etan.",
          "gogorarazi zaborra ateratzeko ostegun eta igande bakoitzean arratsaldeko 7etan.",
          "esnatu nazazu goizeko 8etan musikarekin.",
          "Noiz da nire hurrengo alarma?",
          "Zein dira nire oroigarriak?",
          "Ezeztatu alarma guztiak.",
          "Ezeztatu tenporizadore guztiak.",
          "Ezeztatu oroigarri guztiak.",
          "Zer galdu dut?",
          "Zerbait galdu al dut?"
        ]
      },
      "fa-ir": {
        "name": "Alerts",
        "description": "A skill to manage alarms, timers, reminders, events and todos and optionally sync them with a CalDAV service.",
        "examples": [
          "Set an alarm for 8 AM.",
          "Start a timer for 30 minutes.",
          "Schedule an appointment for tennis on friday at 2 PM.",
          "Set a daily alarm for 8 AM.",
          "Set an alarm for 8 AM on saturdays.",
          "remind me to take out the trash every Thursday and Sunday at 7 PM.",
          "wake me up at 8 AM with music.",
          "When is my next alarm?",
          "What are my upcoming reminders?",
          "Cancel all alarms.",
          "Cancel all timers.",
          "Cancel all reminders.",
          "What did I miss today?",
          "Did I miss anything?"
        ]
      },
      "fr-fr": {
        "name": "Alertes",
        "description": "G\u00e9rez vos alarmes, minuteurs, rappels, \u00e9v\u00e9nements et listes de t\u00e2ches, avec une synchronisation CalDAV en option.",
        "examples": [
          "R\u00e8gle une alarme \u00e0 8 heures.",
          "Lance un minuteur de 30 minutes pour le pain.",
          "Programme un \u00e9v\u00e9nement de tennis vendredi \u00e0 14 heures pendant 2 heures.",
          "R\u00e8gle une alarme quotidienne \u00e0 8 heures.",
          "R\u00e8gle une alarme \u00e0 8 heures le samedi.",
          "Rappelle-moi de sortir les poubelles tous les jeudis et dimanches \u00e0 19 heures.",
          "R\u00e9veille-moi \u00e0 8 heures avec de la musique.",
          "Quelle est ma prochaine alarme ?",
          "Quels sont mes rappels ?",
          "Annule toutes les alarmes.",
          "Annule tous les minuteurs.",
          "Annule tous les rappels.",
          "Qu'est-ce que j'ai manqu\u00e9 ?",
          "Ai-je manqu\u00e9 quelque chose ?"
        ]
      },
      "gl-es": {
        "name": "Alertas",
        "description": "Unha habilidade para xestionar alarmas, temporizadores, recordatorios, eventos e tarefas pendentes, e opcionalmente sincronizalos cun servizo CalDAV.",
        "examples": [
          "Configura unha alarma para as 8 da ma\u00f1\u00e1.",
          "Inicia un temporizador para o pan de 30 minutos.",
          "Programa un evento de tenis para o venres \u00e1s 14:00 cunha duraci\u00f3n de 2 horas.",
          "Configura unha alarma diaria para as 8 da ma\u00f1\u00e1.",
          "Configura unha alarma para as 8 da ma\u00f1\u00e1 dos s\u00e1bados.",
          "L\u00e9mbrame sacar o lixo todos os xoves e domingos \u00e1s 19:00.",
          "\u00c9spertarme \u00e1s 8 da ma\u00f1\u00e1 con m\u00fasica.",
          "Cando soa a mi\u00f1a pr\u00f3xima alarma?",
          "Cales son os meus recordatorios?",
          "Cancela todas as alarmas.",
          "Cancela todos os temporizadores.",
          "Cancela todos os recordatorios.",
          "Que perd\u00edn?",
          "Perd\u00edn algo?"
        ]
      },
      "hu-hu": {
        "name": "Riaszt\u00e1sok",
        "description": "K\u00e9szs\u00e9g \u00e9breszt\u0151k, id\u0151z\u00edt\u0151k, eml\u00e9keztet\u0151k, esem\u00e9nyek \u00e9s teend\u0151k kezel\u00e9s\u00e9re, ig\u00e9ny szerint CalDAV szolg\u00e1ltat\u00e1ssal szinkroniz\u00e1lva.",
        "examples": [
          "\u00c1ll\u00edts be \u00e9breszt\u0151t reggel 8-ra.",
          "Ind\u00edts keny\u00e9rs\u00fct\u00e9s id\u0151z\u00edt\u0151t 30 percre.",
          "\u00dctemezz egy teniszesem\u00e9nyt p\u00e9ntek 14 \u00f3r\u00e1ra, k\u00e9t \u00f3ra hosszan.",
          "\u00c1ll\u00edts be napi \u00e9breszt\u0151t reggel 8-ra.",
          "\u00c1ll\u00edts be \u00e9breszt\u0151t szombatonk\u00e9nt reggel 8-ra.",
          "eml\u00e9keztess, hogy vigyem ki a szemetet minden cs\u00fct\u00f6rt\u00f6k\u00f6n \u00e9s vas\u00e1rnap 19 \u00f3rakor.",
          "\u00e9bressz fel reggel 8-kor zen\u00e9vel.",
          "Mikor lesz a k\u00f6vetkez\u0151 \u00e9breszt\u0151m?",
          "Milyen eml\u00e9keztet\u0151im vannak?",
          "T\u00f6r\u00f6ld az \u00f6sszes \u00e9breszt\u0151t.",
          "T\u00f6r\u00f6ld az \u00f6sszes id\u0151z\u00edt\u0151t.",
          "T\u00f6r\u00f6ld az \u00f6sszes eml\u00e9keztet\u0151t.",
          "Mir\u0151l maradtam le?",
          "Lemaradtam valamir\u0151l?"
        ]
      },
      "it-it": {
        "name": "Avvisi",
        "description": "Una competenza per gestire allarmi, timer, promemoria, eventi e cose da fare e, facoltativamente, per sincronizzarli con un servizio CalDAV.",
        "examples": [
          "Imposta una sveglia per le 8.",
          "Imposta un timer per la cottura del pane su 30 minuti.",
          "Organizza un evento di tennis della durata di 2 ore per le ore 14 di venerd\u00ec.",
          "Imposta una sveglia giornaliera per le 8.",
          "Imposta la sveglia alle 8 del mattino per ogni sabato.",
          "ricordami di portare fuori la spazzatura ogni gioved\u00ec e domenica alle 19.",
          "svegliami alle 8 del mattino con la musica.",
          "Quando \u00e8 la mia prossima sveglia?",
          "Quali sono i miei promemoria?",
          "Annulla tutti gli allarmi.",
          "Annulla tutti i timer.",
          "Annulla tutti i promemoria.",
          "Cosa mi sono perso?",
          "Mi sono perso qualcosa?"
        ]
      },
      "kab": {
        "name": "Alerts",
        "description": "A skill to manage alarms, timers, reminders, events and todos and optionally sync them with a CalDAV service.",
        "examples": [
          "anwa awitayen yellan",
          "sfe\u1e0d alarma-inu",
          "err alarma-inu ad yili yettwasel",
          "sers priorit\u00e9 n alarma-inu",
          "err alarma-inu ad yales yal yal yiwen",
          "sbedd-iyi-d tadyant tamaynut",
          "xdem-iyi-d tabdart tamaynut",
          "rnu-yi-d asmekti amaynut asmekti",
          "smektay-iyi ad ssiwe\u1e0d aqjun yal \u1e63\u1e63be\u1e25 n ussan n ddurt \u0263ef 7",
          "sader azday",
          "kkes akk tibdiwin-inu",
          "kkes tabdart n twuriwin-inu",
          "anta alarma i s\u025bi\u0263",
          "sken-iyi-d twuriwin-inu",
          "anwi tibdiwin i s\u025bi\u0263",
          "sbe\u025b\u025bed alarma-inu \u0263er sdat",
          "d acu i d-yeqqimen deg timer"
        ]
      },
      "nl-nl": {
        "name": "Herinneringen en meldingen",
        "description": "Een skill om wekkers, timers, herinneringen, agenda-afspraken en taken te plannen en te beheren. En deze eventueel te synchroniseren met een CalDAV-service.",
        "examples": [
          "Zet een wekker om 8 uur 's ochtends.",
          "Zet een timer voor 30 minuten",
          "Plan een tenniswedstrijd van twee uur voor vrijdag om drie uur 's middags.",
          "Stel een dagelijkse wekker in om 8 uur 's ochtends.",
          "Zet op zaterdagen een wekker om 8.00 uur",
          "herinner mij eraan om elke donderdag en zondag om 19.00 uur het vuilnis buiten te zetten.",
          "Maak me om 8 uur 's ochtends wakker met muziek.",
          "Wanneer is mijn volgende wekker?",
          "Wat zijn mijn herinneringen?",
          "Annuleer alle wekkers.",
          "Annuleer alle timers.",
          "Annuleer alle herinneringen.",
          "Wat heb ik gemist?",
          "Heb ik iets gemist?"
        ]
      },
      "pl-pl": {
        "name": "Alerty",
        "description": "Umiej\u0119tno\u015b\u0107 do zarz\u0105dzania alarmami, minutnikami, przypomnieniami, wydarzeniami i listami zada\u0144, opcjonalnie z synchronizacj\u0105 z us\u0142ug\u0105 CalDAV.",
        "examples": [
          "Ustaw alarm na 8 rano.",
          "W\u0142\u0105cz minutnik na chleb na 30 minut.",
          "Zaplanuj wydarzenie tenis na pi\u0105tek na 14:00 na dwie godziny.",
          "Ustaw codzienny alarm na 8 rano.",
          "Ustaw alarm na 8 rano w soboty.",
          "przypominaj mi o wyniesieniu \u015bmieci w ka\u017cdy czwartek i niedziel\u0119 o 19:00.",
          "obud\u017a mnie o 8 rano muzyk\u0105.",
          "Kiedy jest m\u00f3j nast\u0119pny alarm?",
          "Jakie mam przypomnienia?",
          "Anuluj wszystkie alarmy.",
          "Anuluj wszystkie minutniki.",
          "Anuluj wszystkie przypomnienia.",
          "Co mnie omin\u0119\u0142o?",
          "Czy co\u015b mnie omin\u0119\u0142o?"
        ]
      },
      "pt-br": {
        "name": "Alertas",
        "description": "Uma habilidade para gerenciar alarmes, timers, lembretes, eventos e listas de tarefas e, opcionalmente, sincroniz\u00e1-los com um servi\u00e7o CalDAV.",
        "examples": [
          "Coloque um alarme para as 8 da manh\u00e3.",
          "Coloque um timer de 30 minutos.",
          "Agende um evento de t\u00eanis para sexta-feira \u00e0s 14h com dura\u00e7\u00e3o de 2 horas.",
          "Defina um alarme todo dia \u00e0s 8 da manh\u00e3.",
          "Coloque um alarme para as 8 da manh\u00e3 nos s\u00e1bados.",
          "me lembre de levar o lixo para fora toda quinta e domingo \u00e0s 19h.",
          "me acorde \u00e0s 8 da manh\u00e3 com m\u00fasica.",
          "Quando \u00e9 meu alarme pr\u00f3ximo?",
          "Quais s\u00e3o meus lembretes pr\u00f3ximos?",
          "Cancele todos os alarmes.",
          "Cancele todos os timers.",
          "Cancele todos os lembretes.",
          "O que eu perdi hoje?",
          "Perdi alguma coisa?"
        ]
      },
      "pt-pt": {
        "name": "Alertas",
        "description": "Uma habilidade para gerir alarmes, temporizadores, lembretes, eventos e listas de tarefas e, opcionalmente, sincroniz\u00e1-los com um servi\u00e7o CalDAV.",
        "examples": [
          "p\u00f5e um alarme para as 8 da manh\u00e3",
          "p\u00f5e um temporizador de 30 minutos",
          "agenda um compromisso de t\u00e9nis na sexta \u00e0s 14 horas",
          "acorda-me \u00e0s 8 da manh\u00e3",
          "acorda-me com m\u00fasica \u00e0s 8 da manh\u00e3",
          "lembra-me de levar o lixo \u00e0 rua \u00e0s 19 horas",
          "cria um lembrete para a consulta \u00e0s 15 horas",
          "novo alarme",
          "temporizador novo de 10 minutos",
          "lista alarmes",
          "cancelar alarmes",
          "cancelar temporizadores",
          "cancelar lembretes",
          "alertas perdidos"
        ]
      },
      "ru-ru": {
        "name": "\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f",
        "description": "\u041d\u0430\u0432\u044b\u043a \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a\u0430\u043c\u0438, \u0442\u0430\u0439\u043c\u0435\u0440\u0430\u043c\u0438, \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f\u043c\u0438, \u043c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f\u043c\u0438 \u0438 \u0441\u043f\u0438\u0441\u043a\u0430\u043c\u0438 \u0434\u0435\u043b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u043b\u044f \u0438\u0445 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043e \u0441\u043b\u0443\u0436\u0431\u043e\u0439 CalDAV \u043f\u0440\u0438 \u0436\u0435\u043b\u0430\u043d\u0438\u0438.",
        "examples": [
          "\u043f\u043e\u0441\u0442\u0430\u0432\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a \u043d\u0430 8 \u0443\u0442\u0440\u0430",
          "\u043d\u043e\u0432\u044b\u0439 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a \u043d\u0430 8 \u0443\u0442\u0440\u0430",
          "\u043f\u043e\u0441\u0442\u0430\u0432\u044c \u0442\u0430\u0439\u043c\u0435\u0440 \u043d\u0430 30 \u043c\u0438\u043d\u0443\u0442",
          "\u043d\u043e\u0432\u044b\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 \u043d\u0430 10 \u043c\u0438\u043d\u0443\u0442",
          "\u0437\u0430\u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0439 \u0432\u0441\u0442\u0440\u0435\u0447\u0443 \u0432 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 \u0432 14 \u0447\u0430\u0441\u043e\u0432",
          "\u043d\u0430\u043f\u043e\u043c\u043d\u0438 \u043c\u043d\u0435 \u0432\u044b\u043d\u0435\u0441\u0442\u0438 \u043c\u0443\u0441\u043e\u0440 \u0432 19 \u0447\u0430\u0441\u043e\u0432",
          "\u0441\u043e\u0437\u0434\u0430\u0439 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435 \u043e \u0432\u0438\u0437\u0438\u0442\u0435 \u043a \u0432\u0440\u0430\u0447\u0443",
          "\u043a\u0430\u043a\u0438\u0435 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f",
          "\u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f",
          "\u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0430\u0439\u043c\u0435\u0440\u044b",
          "\u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u043c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f",
          "\u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435",
          "\u043a\u0430\u043a\u0438\u0435 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u044f \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b",
          "\u043a\u0430\u043a\u0438\u0435 \u0442\u0430\u0439\u043c\u0435\u0440\u044b \u044f \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b"
        ]
      },
      "sv-se": {
        "name": "Alerts",
        "description": "En f\u00e4rdighet f\u00f6r att hantera larm, timers, p\u00e5minnelser, h\u00e4ndelser och att g\u00f6ra-listor, och att eventuellt synkronisera dem med en CalDAV-tj\u00e4nst.",
        "examples": [
          "S\u00e4tt ett larm till klockan 8.",
          "Starta en timer p\u00e5 30 minuter.",
          "Planera ett m\u00f6te f\u00f6r tennis p\u00e5 fredag klockan 14.",
          "S\u00e4tt ett larm varje dag klockan 8.",
          "S\u00e4tt ett larm till klockan 8 p\u00e5 l\u00f6rdagar.",
          "P\u00e5minn mig om att sl\u00e4nga soporna varje torsdag och s\u00f6ndag klockan 19.",
          "V\u00e4ck mig klockan 8 med musik.",
          "N\u00e4r \u00e4r mitt n\u00e4sta larm?",
          "Vilka \u00e4r mina kommande p\u00e5minnelser?",
          "Avbryt alla mina larm.",
          "Avbryt alla mina timers.",
          "Avbryt alla mina p\u00e5minnelser.",
          "Vilka larm har jag missat?",
          "Har jag missat n\u00e5got?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2023-02-09T21:13:49Z",
    "last_updated": "2025-12-15T00:19:54.660158Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-alerts.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.24",
          "tested_at": "2026-10-14T08:31:48+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.28",
          "tested_at": "2026-10-14T08:30:16+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 52/55 golden",
          "state": "warn",
          "level": 3,
          "version_tested": "0.12.58a1",
          "tested_at": "2026-10-30T08:58:52+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 52,
            "counted": 55
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-andersen-tales",
    "skill_id": "ovos-skill-andersen-tales.andlo",
    "name": "Andersen Tales (provider)",
    "description": "Hans Christian Andersen fairy tales provider for ovos-common-reading-pipeline-plugin. No standalone voice interface.",
    "examples": [
      "Tell me a story from andersen",
      "Tell me the story about the little mermaid",
      "Can you tell me a fairytale from hans christian andersen"
    ],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "andersen",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-andersen-tales/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-andersen-tales",
    "package_name": "ovos-skill-andersen-tales",
    "pypi_version": "0.1.8",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-andersen-tales ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl"
    ],
    "locale_content": {
      "da-dk": {
        "name": "H.C. Andersens Eventyr (udbyder)",
        "description": "H.C. Andersens eventyr, udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "Fort\u00e6l mig en historie fra andersen",
          "Fort\u00e6l mig historien om den lille havfrue"
        ]
      },
      "de-de": {
        "name": "Andersens M\u00e4rchen (Anbieter)",
        "description": "M\u00e4rchen von Hans Christian Andersen, Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von andersen",
          "Lies mir eine Geschichte von hans christian andersen"
        ]
      },
      "es-es": {
        "name": "Cuentos de Andersen (proveedor)",
        "description": "Cuentos de Hans Christian Andersen, proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente.",
        "examples": [
          "Cu\u00e9ntame un cuento de andersen",
          "L\u00e9eme un cuento de hans christian andersen"
        ]
      },
      "fr-fr": {
        "name": "Contes d'Andersen (fournisseur)",
        "description": "Contes de Hans Christian Andersen, fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome.",
        "examples": [
          "Raconte-moi une histoire de andersen",
          "Lis-moi une histoire de hans christian andersen"
        ]
      },
      "it-it": {
        "name": "Fiabe di Andersen (fornitore)",
        "description": "Fiabe di Hans Christian Andersen, fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma.",
        "examples": [
          "Raccontami una storia di andersen",
          "Leggimi una storia di hans christian andersen"
        ]
      },
      "nl-nl": {
        "name": "Andersens Sprookjes (aanbieder)",
        "description": "Sprookjes van Hans Christian Andersen, aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface.",
        "examples": [
          "Vertel me een verhaal van andersen",
          "Lees me een verhaal van hans christian andersen"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T12:16:45Z",
    "last_updated": "2026-10-01T10:33:40.355562Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-andersen-tales.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:58:07+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:31:57+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-30T09:09:45+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-andrew-lang-tales",
    "skill_id": "ovos-skill-andrew-lang-tales.andlo",
    "name": "Andrew Lang Tales (provider)",
    "description": "Andrew Lang's Fairy Books provider for ovos-common-reading-pipeline-plugin. No standalone voice interface.",
    "examples": [
      "Tell me a story from andrew lang",
      "Tell me a fairy tale from the fairy books"
    ],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "gutenberg",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-andrew-lang-tales/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-andrew-lang-tales",
    "package_name": "ovos-skill-andrew-lang-tales",
    "pypi_version": "0.1.9",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-andrew-lang-tales ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T19:20:27Z",
    "last_updated": "2026-10-01T10:33:35.512810Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-andrew-lang-tales.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.9",
          "tested_at": "2026-10-04T10:58:27+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.9",
          "tested_at": "2026-10-04T10:32:12+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.9",
          "tested_at": "2026-10-30T09:09:57+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "smartgic-ansible-playbook-docker-ovos",
    "skill_id": null,
    "name": "ansible-playbook-docker-ovos",
    "description": "Ansible plyabook to build Docker Open Voice OS images and push then on DockerHub",
    "examples": [],
    "tags": [
      "ansible",
      "ansible-playbook",
      "buildx",
      "docker",
      "docker-image",
      "mycroft",
      "mycroft-skill",
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/ansible-playbook-docker-ovos",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "smartgic",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-07T00:32:35Z",
    "last_updated": "2024-10-21T21:01:00Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-application-launcher",
    "skill_id": "ovos-skill-application-launcher.openvoiceos",
    "name": "Application Launcher",
    "description": "Open and close applications on the Linux desktop by voice. This skill works only on Linux desktop environments.",
    "examples": [
      "Open ____",
      "Launch ____",
      "Close ____"
    ],
    "tags": [
      "system"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/spinner.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-application-launcher",
    "package_name": "ovos-skill-application-launcher",
    "pypi_version": "0.5.14",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 5,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-application-launcher"
      },
      {
        "heading": "Configuration via `settings.json`",
        "content": "To customize the behavior of the Application Launcher skill, you can modify the following options in the `settings.json` file:\n\n| Option                   | Type                   | Default Value                             | Description                                                                                                                        |\n|--------------------------|------------------------|-------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|\n| `aliases`                | `Dict[str, List[str]]` | `{\"kcalc\": [\"calculator\"]}`               | Defines application aliases. Use application names from the `.desktop` file as keys and a list of speech-friendl\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "Obre ____",
          "Inicia ____",
          "Tanca ____"
        ]
      },
      "da-dk": {
        "examples": [
          "\u00c5ben ____",
          "Start ____",
          "Luk ____"
        ]
      },
      "de-de": {
        "examples": [
          "\u00d6ffne ____",
          "Starte ____",
          "Schlie\u00dfe ____"
        ]
      },
      "es-co": {
        "examples": [
          "Abrir ____",
          "Iniciar ____",
          "Cerrar ____"
        ]
      },
      "es-es": {
        "examples": [
          "Abrir ____",
          "Iniciar ____",
          "Cerrar ____"
        ]
      },
      "eu-es": {
        "examples": [
          "Ireki ____",
          "Abiarazi ____",
          "Itxi ____"
        ]
      },
      "fa-ir": {
        "examples": [
          "\u0628\u0627\u0632 \u06a9\u0646 ____",
          "\u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646 ____",
          "\u0628\u0628\u0646\u062f ____"
        ]
      },
      "fr-fr": {
        "examples": [
          "Ouvre ____",
          "Lance ____",
          "Ferme ____"
        ]
      },
      "gl-es": {
        "examples": [
          "Abrir ____",
          "(Lanzar|Iniciar) ____",
          "Pechar ____"
        ]
      },
      "it-it": {
        "examples": [
          "Apri ____",
          "Avvia ____",
          "Chiudi ____"
        ]
      },
      "kab": {
        "examples": [
          "Ldi ____",
          "Sekker ____",
          "Mdel ____ "
        ]
      },
      "nl-nl": {
        "examples": [
          "Open ____",
          "Start ____",
          "Sluit ____"
        ]
      },
      "oc-fr": {
        "examples": [
          "Dobr\u00eds ____",
          "Avia ____",
          "Tampa ____"
        ]
      },
      "pl-pl": {
        "name": "Application Launcher",
        "description": "Open and close applications on the Linux desktop by voice. This skill works only on Linux desktop environments.",
        "examples": [
          "Zabij ____",
          "Otw\u00f3rz ____"
        ]
      },
      "pt-br": {
        "examples": [
          "Abrir ____",
          "Iniciar ____",
          "Fechar ____"
        ]
      },
      "pt-pt": {
        "examples": [
          "Abrir ____",
          "Iniciar ____",
          "Fechar ____"
        ]
      },
      "ru-ru": {
        "name": "Application Launcher",
        "description": "Open and close applications on the Linux desktop by voice. This skill works only on Linux desktop environments.",
        "examples": [
          "\u0432\u044b\u0445\u043e\u0434 ____",
          "\u0411\u0435\u0433 ____"
        ]
      },
      "sv-se": {
        "examples": [
          "\u00d6ppna ____",
          "Starta ____",
          "St\u00e4ng ____"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-12-13T22:13:24Z",
    "last_updated": "2025-06-08T21:48:08.498840Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-application-launcher.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.5.13",
          "tested_at": "2026-10-04T10:58:40+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.5.14",
          "tested_at": "2026-10-04T10:32:19+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.13.6a2",
          "tested_at": "2026-10-30T09:10:05+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-architecture",
    "skill_id": null,
    "name": "architecture",
    "description": "Formal architecture specifications for OpenVoiceOS \u2014 the intent template grammar, locale resource formats, and the intent definition model",
    "examples": [],
    "tags": [
      "architecture",
      "intent-recognition",
      "nlu",
      "openvoiceos",
      "ovos",
      "specification",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/architecture",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 4,
    "forks": 3,
    "open_issues": 25,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-21T17:30:05Z",
    "last_updated": "2026-10-29T01:15:31Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "andlo-ovos-skill-arxiv-papers",
    "skill_id": "ovos-skill-arxiv-papers.andlo",
    "name": "arXiv Papers (provider)",
    "description": "Reads arXiv paper abstracts aloud. Provider for ovos-common-reading-pipeline-plugin - no standalone voice interface.",
    "examples": [
      "Read latest paper from arxiv",
      "Read an article from arxiv"
    ],
    "tags": [
      "science",
      "research",
      "arxiv",
      "papers",
      "provider",
      "information"
    ],
    "category": "Information",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-arxiv-papers/main/book-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-arxiv-papers",
    "package_name": "ovos-skill-arxiv-papers",
    "pypi_version": "0.1.7",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-arxiv-papers ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "arXiv Artikler (udbyder)",
        "description": "L\u00e6ser resum\u00e9er af arXiv-artikler h\u00f8jt. Udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "L\u00e6s mig seneste artikel fra arxiv"
        ]
      },
      "de-de": {
        "name": "arXiv Artikel (Anbieter)",
        "description": "Liest arXiv-Artikelzusammenfassungen vor. Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von arxiv",
          "Lies mir eine Geschichte von arxiv"
        ]
      },
      "es-es": {
        "name": "Art\u00edculos de arXiv (proveedor)",
        "description": "Lee en voz alta los res\u00famenes de art\u00edculos de arXiv. Proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente.",
        "examples": [
          "Cu\u00e9ntame un cuento de arxiv",
          "L\u00e9eme un cuento de arxiv"
        ]
      },
      "fr-fr": {
        "name": "Articles arXiv (fournisseur)",
        "description": "Lit \u00e0 voix haute les r\u00e9sum\u00e9s d'articles arXiv. Fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome.",
        "examples": [
          "Raconte-moi une histoire de arxiv",
          "Lis-moi une histoire de arxiv"
        ]
      },
      "it-it": {
        "name": "Articoli arXiv (fornitore)",
        "description": "Legge ad alta voce gli abstract degli articoli arXiv. Fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma.",
        "examples": [
          "Raccontami una storia di arxiv",
          "Leggimi una storia di arxiv"
        ]
      },
      "nl-nl": {
        "name": "arXiv Artikelen (aanbieder)",
        "description": "Leest samenvattingen van arXiv-artikelen hardop voor. Aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface.",
        "examples": [
          "Vertel me een verhaal van arxiv",
          "Lees me een verhaal van arxiv"
        ]
      },
      "pt-pt": {
        "name": "Artigos arXiv (fornecedor)",
        "description": "L\u00ea em voz alta os resumos de artigos arXiv. Fornecedor para ovos-common-reading-pipeline-plugin. Sem interface de voz aut\u00f3noma.",
        "examples": [
          "Conta-me uma hist\u00f3ria de arxiv",
          "L\u00ea-me uma hist\u00f3ria de arxiv"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T18:24:40Z",
    "last_updated": "2026-10-01T10:33:50.282322Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-arxiv-papers.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:59:00+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:32:34+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-30T09:10:13+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-personal",
    "skill_id": "ovos-skill-personal.openvoiceos",
    "name": "Assistant's Background",
    "description": "Learn history and personality of the assistant. Ask about the 'birth' and parentage of the voice assistant and get a taste of the community who is fostering this open source artificial intelligence.",
    "examples": [
      "When were you created?",
      "What are you?",
      "Where were you born?",
      "Who made you?"
    ],
    "tags": [
      "personality",
      "persona"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/smile-wink.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-personal",
    "package_name": "ovos-skill-personal",
    "pypi_version": "0.1.19",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 3,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "year_of_birth",
        "type": "text",
        "label": "Year of Assistant Birth"
      },
      {
        "name": "location_of_birth",
        "type": "text",
        "label": "Location of Assistant Birth"
      },
      {
        "name": "creator",
        "type": "text",
        "label": "Assistant Creator"
      },
      {
        "name": "assistant_name",
        "type": "text",
        "label": "Assistant Name (defaults to wakeword)"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip, or through the OVOS skill store on a running OVOS device.\n\npip install ovos-skill-personal"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Rerefons de l'assistent",
        "description": "Coneixeu la hist\u00f2ria i la personalitat de l'assistent. Pregunteu sobre el \"naixement\" i la filiaci\u00f3 de l'assistent de veu i feu un tast de la comunitat que fomenta aquesta intel\u00b7lig\u00e8ncia artificial de codi obert.",
        "examples": [
          "Quan et van crear?",
          "Qu\u00e8 ets?",
          "On vas n\u00e9ixer?",
          "Qui et va fer?"
        ]
      },
      "da-dk": {
        "name": "Assistents baggrund",
        "description": "L\u00e6r assistentens historie og personlighed. Sp\u00f8rg om stemmeassistentens 'f\u00f8dsel' og for\u00e6ldreskab, og f\u00e5 en smagspr\u00f8ve p\u00e5 det f\u00e6llesskab, der fremmer denne open source kunstige intelligens.",
        "examples": [
          "Hvorn\u00e5r blev du skabt?",
          "Hvad er du?",
          "Hvor er du f\u00f8dt?",
          "Hvem har lavet dig?"
        ]
      },
      "de-de": {
        "name": "Hintergrund des Assistenten",
        "description": "Erfahre mehr \u00fcber die Geschichte und Pers\u00f6nlichkeit des Assistenten. Frage nach der \u201eGeburt\u201c und Herkunft des Sprachassistenten und erhalte einen Einblick in die Community, die diese Open-Source-k\u00fcnstliche Intelligenz f\u00f6rdert.",
        "examples": [
          "Wann wurdest du erschaffen?",
          "Was bist du?",
          "Wo wurdest Du geboren?",
          "Wer hat dich erschaffen?"
        ]
      },
      "es-es": {
        "name": "Origen del asistente",
        "description": "Conoce la historia y la personalidad del asistente. Inf\u00f3rmate acerca de su \u201cnacimiento\u201d y procedencia, y descubre la comunidad que impulsa esta inteligencia artificial de c\u00f3digo abierto.",
        "examples": [
          "\u00bfCu\u00e1ndo fuiste creado?",
          "\u00bfQu\u00e9 eres?",
          "\u00bfD\u00f3nde naciste?",
          "\u00bfQui\u00e9n te cre\u00f3?"
        ]
      },
      "fr-fr": {
        "name": "Origines de l'assistant",
        "description": "D\u00e9couvrez l'histoire et la personnalit\u00e9 de l'assistant. Demandez quand il est n\u00e9, d'o\u00f9 il vient et qui l'a cr\u00e9\u00e9 pour mieux conna\u00eetre la communaut\u00e9 qui fait vivre cette intelligence artificielle open source.",
        "examples": [
          "Quand as-tu \u00e9t\u00e9 cr\u00e9\u00e9 ?",
          "Qu'est-ce que tu es ?",
          "O\u00f9 es-tu n\u00e9 ?",
          "Qui t'a cr\u00e9\u00e9 ?"
        ]
      },
      "gl-es": {
        "name": "Historia do asistente",
        "description": "Co\u00f1ece a historia e a personalidade do asistente. Pregunta sobre o seu \"nacemento\" e orixe, e descubre a comunidade que est\u00e1 a impulsar esta intelixencia artificial de c\u00f3digo aberto.",
        "examples": [
          "Cando te crearon?",
          "Que es ti?",
          "Onde naciches?",
          "Quen te (fixo|creou)?"
        ]
      },
      "kab": {
        "name": "La\u1e63el n umallal",
        "description": "Issin amezruy d \u1e6d\u1e6dbi\u025ba n umallal. Steqsi \u0263ef \u00ab tlalit \u00bb d la\u1e63el n umallal-aa ihedd\u1e5ben, ternu\u1e0d ad tessine\u1e0d tarba\u025bt i t-id-yesnulfan s wudem yeldin i yal yiwen.",
        "examples": [
          "Melmi i k-id-xedmen?",
          "D acu-k?",
          "Anda i d-tlule\u1e0d?",
          "Anwa i k-id-ixedmen?"
        ]
      },
      "nl-nl": {
        "name": "Achtergrond van de assistent",
        "description": "Leer meer over de geschiedenis en persoonlijkheid van de assistent. Vraag naar het \u2018ontstaan\u2019 en de afkomst van de spraakassistent en maak kennis met de gemeenschap die deze open source kunstmatige intelligentie ondersteunt.",
        "examples": [
          "Wanneer ben je gemaakt?",
          "Wat ben jij?",
          "Waar ben je geboren?",
          "Wie heeft je gemaakt?"
        ]
      },
      "pt-br": {
        "name": "Assistant's Background",
        "description": "Aprenda a hist\u00f3ria e a personalidade do assistente. Pergunte sobre o \"nascimento\" e a ascend\u00eancia do assistente de voz e conhe\u00e7a um pouco da comunidade que est\u00e1 fomentando essa intelig\u00eancia artificial de c\u00f3digo aberto.",
        "examples": [
          "Quando voc\u00ea foi criado?",
          "Quem \u00e9 voc\u00ea?",
          "Onde voc\u00ea nasceu?",
          "Quem fez voc\u00ea?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-06-08T15:04:59Z",
    "last_updated": "2025-06-08T21:32:32.357408Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-personal.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.19",
          "tested_at": "2026-10-04T10:59:17+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.19",
          "tested_at": "2026-10-04T10:32:47+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.0a1",
          "tested_at": "2026-10-30T09:10:21+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-audio-recording",
    "skill_id": "ovos-skill-audio-recording.openvoiceos",
    "name": "Audio Recording",
    "description": "Record audio to a file by voice. While a recording runs, the skill turns off the wake word and speech to text. It needs ovos-dinkum-listener.",
    "examples": [
      "begin recording",
      "new recording named {name}",
      "start a recording called {name}",
      "start a new audio recording called {name}",
      "start recording"
    ],
    "tags": [
      "audio"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-audio-recording",
    "package_name": "ovos-skill-audio-recording",
    "pypi_version": "0.2.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "comen\u00e7a l'enregistrament",
          "enregistrament nou amb nom {name}",
          "comen\u00e7a un enregistrament amb nom {name}",
          "comen\u00e7a un nou enregistrament d'\u00e0udio anomenat {name}",
          "inicia l'enregistrament"
        ]
      },
      "da-dk": {
        "examples": [
          "begynd at optage",
          "ny optagelse med navnet {name}",
          "start en optagelse kaldet {name}",
          "start en ny lydoptagelse kaldet {name}",
          "start optagelse"
        ]
      },
      "de-de": {
        "examples": [
          "Aufnahme starten",
          "neue Aufnahme mit dem Namen {name}",
          "starte eine Aufnahme mit dem Namen {name}",
          "Starte eine neue Audioaufnahme mit dem Namen {name}",
          "Aufnahme starten"
        ]
      },
      "es-co": {
        "examples": [
          "comenzar (la grabaci\u00f3n|a grabar)\nempezar (la grabaci\u00f3n|a grabar)",
          "nueva grabaci\u00f3n (llamada|con el nombre) {name}",
          "(Inicia|Empieza) una grabaci\u00f3n (llamada|con el nombre) {name}",
          "(Inicia|Empieza) una nueva grabaci\u00f3n de audio (llamada|con el nombre) {name}",
          "comienza (la grabaci\u00f3n|a grabar)\nempieza (la grabaci\u00f3n|a grabar)"
        ]
      },
      "es-es": {
        "examples": [
          "comenzar (la grabaci\u00f3n|a grabar)\nempezar (la grabaci\u00f3n|a grabar)",
          "nueva grabaci\u00f3n (llamada|con el nombre) {name}",
          "(Inicia|Empieza) una grabaci\u00f3n (llamada|con el nombre) {name}",
          "(Inicia|Empieza) una nueva grabaci\u00f3n de audio (llamada|con el nombre) {name}",
          "comienza (la grabaci\u00f3n|a grabar)\nempieza (la grabaci\u00f3n|a grabar)"
        ]
      },
      "eu-es": {
        "examples": [
          "hasi grabaketa",
          "grabaketa berria izena {name} duena",
          "hasi {name} izeneko grabaketa",
          "hasi {name} izeneko audio grabaketa berria"
        ]
      },
      "fa-ir": {
        "examples": [
          "\u0634\u0631\u0648\u0639 \u0636\u0628\u0637",
          "\u0634\u0631\u0648\u0639 \u0636\u0628\u0637 \u062c\u062f\u06cc\u062f \u0628\u0647 \u0627\u0633\u0645 {name}",
          "\u0634\u0631\u0648\u0639 \u0636\u0628\u0637 \u062c\u062f\u06cc\u062f \u0628\u0647 \u0627\u0633\u0645 {name}",
          "\u0634\u0631\u0648\u0639 \u0636\u0628\u0637 \u0635\u062f\u0627\u06cc \u062c\u062f\u06cc\u062f \u0628\u0647 \u0627\u0633\u0645 {name}",
          "\u0634\u0631\u0648\u0639 \u06a9\u0631\u062f\u0646 \u0636\u0628\u0637"
        ]
      },
      "fr-fr": {
        "examples": [
          "Commence l'enregistrement",
          "Cr\u00e9e un enregistrement nomm\u00e9 {name}",
          "D\u00e9marre un enregistrement appel\u00e9 {name}",
          "D\u00e9marre un nouvel enregistrement audio nomm\u00e9 {name}",
          "Enregistre maintenant"
        ]
      },
      "gl-es": {
        "examples": [
          "comezar a gravar",
          "nova gravaci\u00f3n co nome {name}",
          "comezar unha gravaci\u00f3n chamada {name}",
          "comezar unha nova gravaci\u00f3n de audio chamada {name}",
          "comezar a gravar"
        ]
      },
      "it-it": {
        "examples": [
          "inizia registrazione",
          "nuova registrazione chiamata {name}",
          "avvia una registrazione chiamata {name}",
          "avvia una nuova registrazione audio chiamata {name}",
          "avvia registrazione"
        ]
      },
      "kab": {
        "examples": [
          "bdu asekles",
          "bdu asekles amaynut {name}",
          "bdu asekles amaynut isem-is {name}",
          "bdu asekles a\u0263ectan amaynut isem-is {name}",
          "aha sekles "
        ]
      },
      "nl-nl": {
        "examples": [
          "begin met opnemen",
          "nieuwe opname genaamd {name}",
          "start een opname genaamd {name}",
          "start een nieuwe audio-opname genaamd {name}",
          "start opname"
        ]
      },
      "pl-pl": {
        "name": "Audio Recording",
        "description": "Record audio to a file by voice. While a recording runs, the skill turns off the wake word and speech to text. It needs ovos-dinkum-listener.",
        "examples": [
          "inicjuj nagranie"
        ]
      },
      "pt-br": {
        "examples": [
          "come\u00e7ar grava\u00e7\u00e3o",
          "nova grava\u00e7\u00e3o chamada {name}",
          "iniciar uma grava\u00e7\u00e3o chamada {name}",
          "iniciar uma nova grava\u00e7\u00e3o de \u00e1udio chamada {name}",
          "come\u00e7ar a gravar"
        ]
      },
      "pt-pt": {
        "examples": [
          "come\u00e7ar a grava\u00e7\u00e3o",
          "nova grava\u00e7\u00e3o chamada {name}",
          "come\u00e7ar uma grava\u00e7\u00e3o chamada {name}",
          "come\u00e7ar uma nova grava\u00e7\u00e3o de \u00e1udio chamada {name}",
          "come\u00e7ar a gravar"
        ]
      },
      "ru-ru": {
        "name": "Audio Recording",
        "description": "Record audio to a file by voice. While a recording runs, the skill turns off the wake word and speech to text. It needs ovos-dinkum-listener.",
        "examples": [
          "\u0437\u0430\u043f\u0438\u0441\u0438 \u0437\u0432\u0443\u043a\u0430"
        ]
      },
      "sv-se": {
        "examples": [
          "b\u00f6rja spela in",
          "ny inspelning som heter {name}",
          "starta en inspelning som heter {name}",
          "starta en ny ljudinspelning som heter {name}",
          "starta inspelning"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-01-19T01:56:54Z",
    "last_updated": "2025-06-07T23:20:38.766942Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-audio-recording.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.7",
          "tested_at": "2026-10-04T10:59:39+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.7",
          "tested_at": "2026-10-04T10:33:04+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.7.2a7",
          "tested_at": "2026-10-30T09:10:33+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "RaptorBlingx-AVAROS",
    "skill_id": null,
    "name": "AVAROS",
    "description": "AVAROS is an AI-voice-assistant-driven platform for resource-optimized sustainable manufacturing. It utilizes an OVOS-based conversational layer and Docker-Compose deployment to help engineers optimize energy, material, and carbon performance in real-time.",
    "examples": [],
    "tags": [
      "ai-voice-assistant",
      "carbon-emissions",
      "docker-compose",
      "energy",
      "llm",
      "ovos",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/RaptorBlingx/AVAROS/main/web-ui/frontend/src/assets/logo.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/RaptorBlingx/AVAROS",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "RaptorBlingx",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "First-run configuration",
        "content": "The web wizard guides an operator through:\n\n1. Platform endpoint and authentication\n2. Connection test\n3. Asset registration\n4. Platform resource linking\n5. Metric mapping\n6. Intent activation\n7. Optional PREVENTION configuration\n\nAVAROS remains usable without PREVENTION; anomaly and drift commands are disabled when no PREVENTION endpoint is configured.\nAVAROS is deterministic, advisory, and read-only. It does not control equipment, infer process-parameter causality without a configured model, or judge performance without a configured objective."
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-03T06:02:11Z",
    "last_updated": "2026-10-23T08:23:08Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-awesome-ocp-skills",
    "skill_id": null,
    "name": "awesome-ocp-skills",
    "description": "Media skills for OCP, music, movies, radio, audiobooks and more!",
    "examples": [],
    "tags": [
      "audio",
      "audiobooks",
      "internet-archive",
      "internet-radio",
      "media",
      "movies",
      "music",
      "mycroft",
      "openvoiceos",
      "ovos",
      "podcasts",
      "skill",
      "youtube"
    ],
    "category": "Music",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/awesome-ocp-skills",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-01-12T23:22:20Z",
    "last_updated": "2022-03-15T15:16:45Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-awesome-ovos-plugins",
    "skill_id": null,
    "name": "awesome-ovos-plugins",
    "description": "List of ovos-plugin-manager plugins and projects",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/awesome-ovos-plugins",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 7,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-11-09T16:13:11Z",
    "last_updated": "2023-08-11T23:50:34Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-bandcamp",
    "skill_id": null,
    "name": "Bandcamp Skill",
    "description": null,
    "examples": [
      "play compressorhead",
      "play astronaut problems",
      "play ___ in bandcamp"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-bandcamp/dev/res/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-bandcamp",
    "package_name": "skill-bandcamp",
    "pypi_version": "0.0.8",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 5,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "eu-es",
      "fr-fr",
      "gl-es"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "Comp\u00e9tence Bandcamp",
        "examples": [
          "joue compressorhead",
          "joue astronaut problems",
          "joue ___ sur bandcamp"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2018-04-09T05:39:31Z",
    "last_updated": "2024-12-02T17:48:34.333656Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-bechstein-tales",
    "skill_id": "ovos-skill-bechstein-tales.andlo",
    "name": "Bechstein Tales (provider)",
    "description": "Ludwig Bechstein's German fairy tales provider for ovos-common-reading-pipeline-plugin. German only, no translation.",
    "examples": [],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "bechstein",
      "german",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-bechstein-tales/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-bechstein-tales",
    "package_name": "ovos-skill-bechstein-tales",
    "pypi_version": "0.1.7",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-bechstein-tales ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {
      "de-de": {
        "name": "Bechstein-M\u00e4rchen (Anbieter)",
        "description": "Anbieter f\u00fcr Ludwig Bechsteins deutsche M\u00e4rchen f\u00fcr ovos-common-reading-pipeline-plugin. Nur auf Deutsch, keine \u00dcbersetzung.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von bechstein",
          "Lies mir eine Geschichte von ludwig bechstein"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T21:45:17Z",
    "last_updated": "2026-10-01T10:33:41.710158Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-bechstein-tales.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:55:56+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:30:26+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-30T08:58:55+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-calculator",
    "skill_id": "ovos-skill-calculator.andlo",
    "name": "Calculator",
    "description": "A basic calculator - add, subtract, multiply, divide, percentages, squares, square roots. Fully offline.",
    "examples": [
      "what is 15 times 23",
      "what is the square root of 144",
      "what is 20 percent of 150"
    ],
    "tags": [
      "calculator",
      "math",
      "arithmetic",
      "utility"
    ],
    "category": "Utility",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-calculator/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-calculator",
    "package_name": "ovos-skill-calculator",
    "pypi_version": "0.0.4",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-calculator"
      }
    ],
    "languages": [
      "da-dk",
      "en-us",
      "kab"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Lommeregner",
        "description": "En basal lommeregner - plus, minus, gange, dividere, procent, kvadrat, kvadratrod. Fuldst\u00e6ndig offline.",
        "examples": [
          "hvad er 15 gange 23",
          "hvad er kvadratroden af 144",
          "hvad er 20 procent af 150"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T18:25:07Z",
    "last_updated": "2026-10-01T18:37:27.190396Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-calculator.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 2/16 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:56:15+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 16
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 2/16 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:30:39+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 16
          }
        },
        "alpha": {
          "label": "\u2713 16/16 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-30T08:59:04+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 16,
            "counted": 16
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-camera",
    "skill_id": "ovos-skill-camera.openvoiceos",
    "name": "Camera",
    "description": "Take pictures with a connected webcam by voice.",
    "examples": [
      "take a picture",
      "is the camera working",
      "where are my pictures saved"
    ],
    "tags": [
      "camera",
      "webcam",
      "photo",
      "media"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-camera",
    "package_name": "ovos-skill-camera",
    "pypi_version": "1.0.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "tens c\u00e0mera?",
          "on van les fotos",
          "fes una foto"
        ]
      },
      "da-dk": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "virker kameraet",
          "hvor gemmer du fotoene"
        ]
      },
      "de-de": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "Gibt es eine Kamera",
          "wo finde ich meine Bilder"
        ]
      },
      "es-co": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "\u00bfHay una c\u00e1mara?",
          "donde van las fotos"
        ]
      },
      "es-es": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "\u00bfHay una c\u00e1mara?",
          "donde van las fotos"
        ]
      },
      "eu-es": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "webcam bat badut"
        ]
      },
      "fa-ir": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "\u062f\u0648\u0631\u0628\u06cc\u0646 \u062f\u0627\u0631\u06cc",
          "\u0639\u06a9\u0633\u200c\u0647\u0627 \u06a9\u062c\u0627 \u0645\u06cc\u0631\u0646",
          "\u06cc\u0647 \u0639\u06a9\u0633 \u0628\u06af\u06cc\u0631"
        ]
      },
      "fr-fr": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "as-tu une cam\u00e9ra ?",
          "ou vont les photos",
          "prendre une photo"
        ]
      },
      "gl-es": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "Hai unha c\u00e1mara?",
          "onde van as fotos"
        ]
      },
      "it-it": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "c'e una fotocamera",
          "dove vanno le foto"
        ]
      },
      "kab": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "takami\u1e5bat tella",
          "\u0263er anda tteddunt tiwlafin-iw",
          "sqedec takami\u1e5bat akken ad t\u1e6de\u1e6d\u1e6dfe\u1e0d tawlaft"
        ]
      },
      "nl-nl": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "werkt de camera"
        ]
      },
      "oc-fr": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "ai una cam\u00e8ra web",
          "ont se gardan las f\u00f2tos"
        ]
      },
      "pl-pl": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "jest aparatem",
          "Gdzie zdj\u0119cia id\u0105",
          "zrobi\u0107 zdj\u0119cie"
        ]
      },
      "pt-br": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "voc\u00ea tem uma c\u00e2mera"
        ]
      },
      "pt-pt": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "tem uma c\u00e2mara",
          "onde vao as fotos",
          "tira uma foto"
        ]
      },
      "ru-ru": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "\u044d\u0442\u043e \u043a\u0430\u043c\u0435\u0440\u0430",
          "\u043a\u0443\u0434\u0430 \u0438\u0434\u0443\u0442 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438",
          "\u0421\u0435\u043b\u0444\u0438"
        ]
      },
      "sv-se": {
        "name": "Camera",
        "description": "Take pictures with a connected webcam by voice.",
        "examples": [
          "\u00e4r kameran p\u00e5"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2018-03-27T15:44:21Z",
    "last_updated": "2025-01-24T16:57:37.905723Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-camera.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.4",
          "tested_at": "2026-10-04T10:56:28+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.4",
          "tested_at": "2026-10-04T10:30:46+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.4.0a4",
          "tested_at": "2026-10-30T08:59:15+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-fallback-chatgpt",
    "skill_id": "skill-ovos-fallback-chatgpt.openvoiceos",
    "name": "ChatGPT Fallback Skill",
    "description": "When in doubt, ask ChatGPT",
    "examples": [
      "Explain quantum computing in simple terms",
      "Got any creative ideas for a 10 year old\u2019s birthday?"
    ],
    "tags": [
      "fallback",
      "LLM",
      "query",
      "information"
    ],
    "category": "Information",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-fallback-chatgpt",
    "package_name": "skill-ovos-fallback-chatgpt",
    "pypi_version": "0.1.13",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 22,
    "forks": 18,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Under skill settings (`.config/mycroft/skills/skill-ovos-fallback-chatgpt.openvoiceos/settings.json`) you can tweak some parameters for chatGPT.\n\n| Option          | Value                                                                   | Description                                                                           |\n| --------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |\n| `key`           | `sk-XXXYYYZZZAAABBB123`                                                 | Your `api_key` to access OpenAI API                                                   |\n| `persona`       | `You are a helpful assistant who gives very short but factual answers.` | Give a persona\u2026"
      },
      {
        "heading": "Configurations",
        "content": "The skill utilizes the `~/.config/mycroft/skills/skill-ovos-fallback-chatgpt.openvoiceos/settings.json` file which allows you to configure it.\n\n### Configuration for use with OpenAI **(ChatGPT)**\n\n{\n  \"key\": \"sk-XXXYYYZZZAAABBB123\",\n  \"model\": \"gpt-3.5-turbo\",\n  \"persona\": \"You are a helpful voice assistant with a friendly tone and fun sense of humor. You respond in 40 words or fewer.\",\n  \"enable_memory\": true,\n  \"memory_size\": 15,\n  \"__mycroft_skill_firstrun\": false\n}\n\n### Configuration for use with Local AI\n\nWhen using a local AI server instead of OpenAI, the `api_url` has to redirect to an alternative/local server compatible with OpenAI API. When using local AI, the `key` can be anything, but it has to exist. Read more about it in the OVOS technical manual, page [persona server](https:/\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "eu",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Habilitat de rescat ChatGPT",
        "description": "En cas de dubte, demana a ChatGPT",
        "examples": [
          "Explica la computaci\u00f3 qu\u00e0ntica en termes senzills",
          "Tens alguna idea creativa per a l'aniversari d'un nen de 10 anys?"
        ]
      },
      "da-dk": {
        "name": "ChatGPT Fallback f\u00e6rdighed",
        "description": "Sp\u00f8rg ChatGPT, n\u00e5r du er i tvivl",
        "examples": [
          "Forklar kvanteberegning i enkle vendinger",
          "Har du nogle kreative ideer til en 10-\u00e5rig f\u00f8dselsdag?"
        ]
      },
      "de-de": {
        "name": "ChatGPT Fallback-F\u00e4higkeit",
        "description": "Im Zweifelsfall frage ChatGPT",
        "examples": [
          "Erkl\u00e4re einfach Quantencomputing",
          "Hast Du kreative Ideen f\u00fcr den Geburtstag eines 10-J\u00e4hrigen?"
        ]
      },
      "it-it": {
        "name": "Competenza di ripiego ChatGPT",
        "description": "Se non sai qualcosa puoi sempre chiedere a ChatGPT",
        "examples": [
          "Spiegami quantum computing in parole semplici",
          "Devo preparare la festa di compleanno per un bambino di 10 anni, hai qualche idea da darmi?"
        ]
      },
      "pt-pt": {
        "name": "Habilidade de fallback do ChatGPT",
        "description": "Em caso de d\u00favida, pergunte ao ChatGPT",
        "examples": [
          "Explique a computa\u00e7\u00e3o qu\u00e2ntica em termos simples",
          "Tem alguma ideia criativa para o anivers\u00e1rio de uma crian\u00e7a de 10 anos?"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2023-01-30T17:22:18Z",
    "last_updated": "2025-01-25T19:01:27.922748Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-color-picker",
    "skill_id": "ovos-skill-color-picker.krisgesling",
    "name": "Color Picker",
    "description": "Look up a color by name and hear its hex and RGB values.",
    "examples": [
      "show me the color green"
    ],
    "tags": [
      "system"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/palette.svg",
    "icon_source": "readme",
    "icon_color": "#22A7F0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-color-picker",
    "package_name": "ovos-skill-color-picker",
    "pypi_version": "0.0.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "mostra'm el color verd"
        ]
      },
      "da-dk": {
        "examples": [
          "vis mig farven gr\u00f8n"
        ]
      },
      "de-de": {
        "examples": [
          "zeig mir die Farbe Gr\u00fcn"
        ]
      },
      "es-co": {
        "examples": [
          "Mu\u00e9strame el color verde"
        ]
      },
      "es-es": {
        "examples": [
          "Mu\u00e9strame el color verde"
        ]
      },
      "eu-es": {
        "examples": [
          "erakutsi kolore berdea"
        ]
      },
      "fa-ir": {
        "name": "Color Picker",
        "description": "Look up a color by name and hear its hex and RGB values.",
        "examples": [
          "show me the color green"
        ]
      },
      "fr-fr": {
        "examples": [
          "montre-moi la couleur verte"
        ]
      },
      "gl-es": {
        "examples": [
          "m\u00f3strame a cor verde"
        ]
      },
      "it-it": {
        "examples": [
          "Mostra il colore verde"
        ]
      },
      "kab": {
        "examples": [
          "sken-iyi-d ini adal"
        ]
      },
      "nl-nl": {
        "examples": [
          "laat me de kleur groen zien"
        ]
      },
      "pl-pl": {
        "name": "Color Picker",
        "description": "Look up a color by name and hear its hex and RGB values.",
        "examples": [
          "show me the color green"
        ]
      },
      "pt-br": {
        "examples": [
          "mostre a cor verde"
        ]
      },
      "pt-pt": {
        "examples": [
          "mostra-me a cor verde"
        ]
      },
      "ru-ru": {
        "name": "Color Picker",
        "description": "Look up a color by name and hear its hex and RGB values.",
        "examples": [
          "show me the color green"
        ]
      },
      "sv-se": {
        "examples": [
          "visa mig f\u00e4rgen gr\u00f6n"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-03-15T03:21:44Z",
    "last_updated": "2025-02-28T01:39:28.501868Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-color-picker.krisgesling",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:57:27+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:31:45+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.7.4a1",
          "tested_at": "2026-10-30T08:59:28+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-common-reading-example",
    "skill_id": "ovos-skill-common-reading-example.andlo",
    "name": "Common Reading Example (template)",
    "description": "Template/example provider for ovos-common-reading-pipeline-plugin. Copy and adapt - not meant to be installed for its own content.",
    "examples": [],
    "tags": [
      "template",
      "example",
      "provider",
      "orchestrator"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-common-reading-example/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-common-reading-example",
    "package_name": "ovos-skill-common-reading-example",
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T14:56:13Z",
    "last_updated": "2026-09-30T21:46:35Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-common-reading-pipeline-plugin",
    "skill_id": "ovos-common-reading-pipeline-plugin.andlo",
    "name": "Common Reading Pipeline",
    "description": "A generic reading pipeline: recognizes requests to read stories, articles, reports, horoscopes and more aloud, and routes them to whichever installed provider skill can supply that content. Not tied to any single content type or source.",
    "examples": [
      "Tell me a story",
      "Tell me a story about cinderella",
      "Read me an article about penguins",
      "Tell me a story from grimm",
      "Read a andersen story",
      "Read me a horoscope about leo",
      "Continue reading",
      "Pause"
    ],
    "tags": [
      "entertainment",
      "stories",
      "articles",
      "horoscope",
      "reading",
      "pipeline"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-common-reading-pipeline-plugin/main/book-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-common-reading-pipeline-plugin",
    "package_name": "ovos-common-reading-pipeline-plugin",
    "pypi_version": "0.3.2",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 2,
    "open_issues": 24,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-common-reading-pipeline-plugin\n\nAdd it to your pipeline in `mycroft.conf` in two places: the `-high`\nstage **right after your stop matcher**, and the `-low` stage after\npadatious/adapt, before common query and the fallbacks (see\n[How a request is recognised](#how-a-request-is-recognised)). The\n`-high` stage goes (`stop_high`/`ovos-stop-pipeline-plugin-high`) - roughly\nwhere OCP sits, not before stop. \"Stop\" should always be the most\nreliable, highest-priority command regardless of what skill is active;\nputting anything ahead of it undermines that guarantee for every skill,\nnot just this one. An earlier version of this README recommended\nputting this plugin first - that was wrong, and has been reverted; see\nthe note at the end of this section for why.\n\n**Don't copy-paste a\u2026"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Generisk l\u00e6sepipeline",
        "description": "En generisk l\u00e6sepipeline: genkender anmodninger om at f\u00e5 historier, artikler, rapporter, horoskoper og mere l\u00e6st h\u00f8jt, og videresender dem til det installerede skill, der kan levere indholdet. Ikke bundet til \u00e9n bestemt indholdstype eller kilde.",
        "examples": [
          "Fort\u00e6l mig et eventyr",
          "Fort\u00e6l mig en historie om askepot",
          "L\u00e6s mig en artikel om pingviner",
          "Fort\u00e6l mig en historie fra grimm",
          "Fort\u00e6l mig en grimm-historie",
          "L\u00e6s mig dagens horoskop",
          "Forts\u00e6t",
          "Pause"
        ]
      },
      "de-de": {
        "name": "Allgemeine Vorlese-Pipeline",
        "description": "Eine allgemeine Vorlese-Pipeline: erkennt Anfragen, Geschichten, Artikel und mehr vorzulesen, und leitet sie an das passende installierte Skill weiter.",
        "examples": [
          "Erz\u00e4hl mir ein M\u00e4rchen",
          "Erz\u00e4hl mir eine Geschichte \u00fcber Aschenputtel",
          "Erz\u00e4hl mir eine Geschichte von grimm",
          "Weiter",
          "Pause"
        ]
      },
      "es-es": {
        "name": "Pipeline de lectura gen\u00e9rica",
        "description": "Una pipeline de lectura gen\u00e9rica: reconoce solicitudes para leer cuentos, art\u00edculos y m\u00e1s en voz alta, y las dirige a la skill instalada que pueda ofrecer ese contenido.",
        "examples": [
          "Cu\u00e9ntame un cuento",
          "Cu\u00e9ntame un cuento sobre cenicienta",
          "Cu\u00e9ntame un cuento de grimm",
          "Contin\u00faa",
          "Pausa"
        ]
      },
      "fr-fr": {
        "name": "Pipeline de lecture g\u00e9n\u00e9rique",
        "description": "Une pipeline de lecture g\u00e9n\u00e9rique : reconna\u00eet les demandes de lecture d'histoires, d'articles et plus encore, et les redirige vers le skill install\u00e9 qui peut fournir ce contenu.",
        "examples": [
          "Raconte-moi une histoire",
          "Raconte-moi une histoire sur cendrillon",
          "Raconte-moi une histoire de grimm",
          "Continue",
          "Pause"
        ]
      },
      "it-it": {
        "name": "Pipeline di lettura generica",
        "description": "Una pipeline di lettura generica: riconosce le richieste di leggere storie, articoli e altro ad alta voce, e le indirizza allo skill installato che pu\u00f2 fornire quel contenuto.",
        "examples": [
          "Raccontami una fiaba",
          "Raccontami una storia su cenerentola",
          "Raccontami una storia di grimm",
          "Continua",
          "Pausa"
        ]
      },
      "nl-nl": {
        "name": "Generieke voorleespipeline",
        "description": "Een generieke voorleespipeline: herkent verzoeken om verhalen, artikelen en meer voor te lezen, en stuurt ze door naar de ge\u00efnstalleerde skill die die inhoud kan leveren.",
        "examples": [
          "Vertel me een sprookje",
          "Vertel me een verhaal over assepoester",
          "Vertel me een verhaal van grimm",
          "Ga verder",
          "Pauze"
        ]
      },
      "pt-pt": {
        "name": "Pipeline de leitura gen\u00e9rica",
        "description": "Uma pipeline de leitura gen\u00e9rica: reconhece pedidos para ler hist\u00f3rias, artigos e mais em voz alta, e encaminha-os para a skill instalada que possa fornecer esse conte\u00fado.",
        "examples": [
          "Conta-me uma hist\u00f3ria",
          "Conta-me uma hist\u00f3ria sobre cinderela",
          "Conta-me uma hist\u00f3ria de grimm",
          "Continua",
          "Pausa"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T11:11:43Z",
    "last_updated": "2026-10-01T16:15:14.356584Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-common-reading-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.3.2",
          "tested_at": "2026-10-04T10:57:48+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.2",
          "tested_at": "2026-10-04T10:32:12+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.2",
          "tested_at": "2026-10-30T08:59:43+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-confucius-quotes",
    "skill_id": "ovos-skill-confucius-quotes.openvoiceos",
    "name": "Confucius Quotes",
    "description": "Quotes from Confucius",
    "examples": [
      "Who is Confucius",
      "Quote from Confucius",
      "When was Confucius born",
      "When did Confucius die"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-confucius-quotes/dev/gui/all/logo.jpeg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-confucius-quotes",
    "package_name": "ovos-skill-confucius-quotes",
    "pypi_version": "0.2.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip:\npip install ovos-skill-confucius-quotes"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Cites de Confuci",
        "description": "Cites de Confuci",
        "examples": [
          "Qui \u00e9s Confuci",
          "Cita de Confuci",
          "Quan va n\u00e9ixer Confuci",
          "Quan va morir Confuci"
        ]
      },
      "da-dk": {
        "name": "Confucius citater",
        "description": "Citater fra Confucius",
        "examples": [
          "Hvem er Confucius",
          "Citat fra Confucius",
          "Hvorn\u00e5r blev Confucius f\u00f8dt",
          "Hvorn\u00e5r d\u00f8de Confucius"
        ]
      },
      "de-de": {
        "name": "Konfuzius Zitate",
        "description": "Zitate von Konfuzius",
        "examples": [
          "Wer ist Konfuzius",
          "Zitat von Konfuzius",
          "Wann wurde Konfuzius geboren",
          "Wann starb Konfuzius"
        ]
      },
      "es-co": {
        "name": "Citas de Confucio",
        "description": "Citas de Confucio",
        "examples": [
          "Qui\u00e9n es Confucio",
          "Cita de Confucio",
          "Cu\u00e1ndo naci\u00f3 Confucio",
          "Cu\u00e1ndo muri\u00f3 Confucio"
        ]
      },
      "es-es": {
        "name": "Citas de Confucio",
        "description": "Citas de Confucio",
        "examples": [
          "Qui\u00e9n es Confucio",
          "Cita de Confucio",
          "Cu\u00e1ndo naci\u00f3 Confucio",
          "Cu\u00e1ndo muri\u00f3 Confucio"
        ]
      },
      "eu-es": {
        "name": "Konfuzioren esaldiak",
        "description": "Konfuzioren esaldiak",
        "examples": [
          "Nor da Konfuzio",
          "Konfuzioren esaldi bat",
          "Noiz jaio zen Konfuzio",
          "Noiz hil zen Konfuzio"
        ]
      },
      "fa-ir": {
        "name": "Confucius Quotes",
        "description": "Quotes from Confucius",
        "examples": [
          "Who is Confucius",
          "Quote from Confucius",
          "When was Confucius born",
          "When did Confucius die"
        ]
      },
      "fr-fr": {
        "name": "Citations de Confucius",
        "description": "Des citations de Confucius",
        "examples": [
          "Qui est Confucius",
          "Une citation de Confucius",
          "Quand Confucius est-il n\u00e9",
          "Quand Confucius est-il mort"
        ]
      },
      "gl-es": {
        "name": "Citas de Confucio",
        "description": "Citas de Confucio",
        "examples": [
          "Quen \u00e9 Confucio",
          "Cita de Confucio",
          "Cando naceu Confucio",
          "Cando morreu Confucio"
        ]
      },
      "it-it": {
        "name": "Citazioni di Confucio",
        "description": "Citazioni di Confucio",
        "examples": [
          "Chi \u00e8 Confucio",
          "Citazione di Confucio",
          "Quando nacque Confucio",
          "Quando mor\u00ec Confucio"
        ]
      },
      "kab": {
        "name": "Awalen n Confucius",
        "description": "Awalen n Confucius",
        "examples": [
          "Anwa Confucius",
          "Awal n Confucius",
          "Melmi ilul Confucius",
          "Melmi yemmut Confucius"
        ]
      },
      "nl-nl": {
        "name": "Confucius Citaten",
        "description": "Citaten van Confucius",
        "examples": [
          "Wie is Confucius",
          "Citaat van Confucius",
          "Wanneer werd Confucius geboren",
          "Wanneer stierf Confucius"
        ]
      },
      "pl-pl": {
        "name": "Confucius Quotes",
        "description": "Quotes from Confucius",
        "examples": [
          "co jest konfukcj\u0105 znan\u0105",
          "kiedy konfiskus \u017cy\u0142",
          "cytat konfekcyjny"
        ]
      },
      "pt-br": {
        "name": "Frases de Conf\u00facio",
        "description": "Frases de Conf\u00facio",
        "examples": [
          "Quem \u00e9 Conf\u00facio",
          "Frase de Conf\u00facio",
          "Quando Conf\u00facio nasceu",
          "Quando Conf\u00facio morreu"
        ]
      },
      "pt-pt": {
        "name": "Cita\u00e7\u00f5es de Conf\u00facio",
        "description": "Cita\u00e7\u00f5es de Conf\u00facio",
        "examples": [
          "Quem \u00e9 Conf\u00facio",
          "Diz uma cita\u00e7\u00e3o de Conf\u00facio",
          "Quando nasceu Conf\u00facio",
          "Quando morreu Conf\u00facio"
        ]
      },
      "ru-ru": {
        "name": "Confucius Quotes",
        "description": "Quotes from Confucius",
        "examples": [
          "\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043c\u0443\u0449\u0430\u0435\u0442\u0441\u044f.",
          "\u0434\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f",
          "\u0421\u043c\u0435\u0448\u043d\u0430\u044f \u0446\u0438\u0442\u0430\u0442\u0430"
        ]
      },
      "sv-se": {
        "name": "Konfucius Citat",
        "description": "Citat fr\u00e5n Konfucius",
        "examples": [
          "Vem \u00e4r Konfucius",
          "Citat fr\u00e5n Konfucius",
          "N\u00e4r f\u00f6ddes Konfucius",
          "N\u00e4r dog Konfucius"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-06-09T18:48:28Z",
    "last_updated": "2026-03-09T20:10:38.331235Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-confucius-quotes.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.13",
          "tested_at": "2026-10-04T10:57:51+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.13",
          "tested_at": "2026-10-04T10:32:19+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.8.3a2",
          "tested_at": "2026-10-30T08:59:52+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-cosquin-tales",
    "skill_id": "ovos-skill-cosquin-tales.andlo",
    "name": "Cosquin Tales (provider)",
    "description": "Emmanuel Cosquin's Lorraine folk tales provider for ovos-common-reading-pipeline-plugin. French only, no translation.",
    "examples": [],
    "tags": [
      "entertainment",
      "stories",
      "folklore",
      "cosquin",
      "french",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-cosquin-tales/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-cosquin-tales",
    "package_name": "ovos-skill-cosquin-tales",
    "pypi_version": "0.1.7",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-cosquin-tales ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "Contes de Cosquin (fournisseur)",
        "description": "Fournisseur des contes populaires de Lorraine d'Emmanuel Cosquin pour ovos-common-reading-pipeline-plugin. Uniquement en fran\u00e7ais, sans traduction.",
        "examples": [
          "Raconte-moi une histoire de cosquin",
          "Lis-moi une histoire de lorraine"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T22:16:02Z",
    "last_updated": "2026-10-01T10:34:08.303610Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-cosquin-tales.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:58:12+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-04T10:32:33+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.7",
          "tested_at": "2026-10-30T09:00:04+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "0xjc65eth-cypher-trading-noncustodial",
    "skill_id": null,
    "name": "cypher-trading-noncustodial",
    "description": "\ud83c\udf99\ufe0f Voice-first non-custodial crypto trading assistant. Trade on DEXes by voice. Multi-chain. OVOS + Electron + React + WalletConnect v2. Say 'Hey Cypher' and take control of your DeFi trading.",
    "examples": [],
    "tags": [
      "accessibility",
      "ai-agent",
      "arbitrum",
      "crypto-trading",
      "defi",
      "electron",
      "ethers",
      "multi-chain",
      "non-custodial",
      "open-source",
      "ovos",
      "react",
      "solana",
      "voice-assistant",
      "walletconnect",
      "web3"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/0xjc65eth/cypher-trading-noncustodial",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "0xjc65eth",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "1. Clone & Setup",
        "content": "git clone https://github.com/cypher-trading/cypher-trading-noncustodial.git\ncd cypher-trading-noncustodial\nnpm run setup"
      },
      {
        "heading": "2. Configure Environment",
        "content": "cp .env.example .env"
      },
      {
        "heading": "4. Register the skill in OVOS config",
        "content": "Add to `skills/skills_config.yaml`\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-15T10:07:12Z",
    "last_updated": "2026-05-15T10:38:54Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-date-time",
    "skill_id": "ovos-skill-date-time.openvoiceos",
    "name": "Date and Time",
    "description": "Get the time, date, day of the week",
    "examples": [
      "What time is it?",
      "Tell me the day of the week",
      "How many days are left until July 4th",
      "What date is it?",
      "Do you have the time",
      "What day is Memorial Day 2020?",
      "What time is it in Paris?"
    ],
    "tags": [
      "clock",
      "date",
      "time",
      "query",
      "information"
    ],
    "category": "Information",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/calendar.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-date-time",
    "package_name": "ovos-skill-date-time",
    "pypi_version": "1.1.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 10,
    "open_issues": 10,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "show_time",
        "type": "checkbox",
        "label": "Show digital clock when idle"
      }
    ],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "You can adjust the skill's behavior in the `settings.json` file.\n\nThe skill includes 2 sound files, `\"casio-watch.wav\"` and `\"clock-chime.mp3\"`, to signal when the hour changes.\n\nBelow is an example configuration file with explanations for each option.\n\n{\n    \"play_hour_chime\": true,\n    \"hour_sound\": \"clock-chime.mp3\"\n}\n\n- **`play_hour_chime`**: (boolean) Turns the hourly chime on or off. If `true`, the skill plays an audio chime at the start of every hour. The default is `false`.\n- **`hour_sound`**: (string) Sets the path to the audio file for the hourly chime. By default, it points to `casio-watch.wav` in the `res` folder. You can set it to the path of any audio file you prefer."
      }
    ],
    "languages": [
      "an",
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {
      "an": {
        "name": "Data y hora",
        "description": "Informaci\u00f3n sobre la hora, la calendata y lo d\u00eda d'a semana",
        "examples": [
          "Qu\u00e9 hora ye?",
          "Di-me lo d\u00eda d'a semana",
          "Cu\u00e1ntos d\u00edas faltan pa lo 24 de chunyo?",
          "Que d\u00eda ye?",
          "Di-me la hora",
          "Cu\u00e1n ye lo d\u00eda d'o libro?",
          "Qu\u00e9 hora ye en Par\u00eds?"
        ]
      },
      "ca-es": {
        "name": "Data i hora",
        "description": "Obteniu l'hora, la data, el dia de la setmana",
        "examples": [
          "Quina hora \u00e9s?",
          "Digues-me el dia de la setmana",
          "Quants dies falten per al 24 de juny?",
          "Quina data som?",
          "Mostra'm l'hora",
          "Quin dia \u00e9s el dia del Punt Volat de 2026?",
          "Quina hora \u00e9s a Par\u00eds?"
        ]
      },
      "cs-cz": {
        "name": "Datum a \u010das",
        "description": "Z\u00edskejte \u010das, datum, den v t\u00fddnu",
        "examples": [
          "Kolik je hodin?",
          "\u0158ekni mi, kter\u00fd je den v t\u00fddnu",
          "Kolik dn\u00ed zb\u00fdv\u00e1 do 4. \u010dervence",
          "Jak\u00e9 je datum?",
          "Uka\u017e mi \u010das",
          "Na jak\u00fd den p\u0159ipad\u00e1 Memorial Day 2020?",
          "Kolik je hodin v Pa\u0159\u00ed\u017ei?"
        ]
      },
      "da-dk": {
        "name": "Dato og tid",
        "description": "F\u00e5 tid, dato, ugedag",
        "examples": [
          "Hvad er klokken?",
          "Fort\u00e6l mig ugedagen",
          "Hvor mange dage indtil 4. juli",
          "Hvad er datoen?",
          "Vis mig tiden",
          "Hvilken dag er Memorial Day 2020?",
          "Hvad er klokken i Paris?"
        ]
      },
      "de-de": {
        "name": "Datum und Uhrzeit",
        "description": "Erfrage die Uhrzeit, das Datum, den Wochentag",
        "examples": [
          "Wie sp\u00e4t ist es?",
          "Sag mir den Wochentag",
          "Wie viele Tage bis zum 4. Juli",
          "Welches Datum haben wir?",
          "Zeig mir die Zeit",
          "Welcher Tag ist der Memorial Day 2020?",
          "Wie sp\u00e4t ist es in Paris?"
        ]
      },
      "es-co": {
        "name": "Fecha y hora",
        "description": "Informaci\u00f3n sobre la hora, la fecha y el d\u00eda de la semana",
        "examples": [
          "\u00bfQu\u00e9 hora es?",
          "Dime el d\u00eda de la semana",
          "\u00bfCuantos d\u00edas faltan para el 24 de junio?",
          "\u00bfQue d\u00eda es?",
          "Dime la hora",
          "\u00bfCu\u00e1ndo es el d\u00eda del libro?",
          "\u00bfQu\u00e9 hora es en Par\u00eds?"
        ]
      },
      "es-es": {
        "name": "Fecha y hora",
        "description": "Informaci\u00f3n sobre la hora, la fecha y el d\u00eda de la semana",
        "examples": [
          "\u00bfQu\u00e9 hora es?",
          "Dime el d\u00eda de la semana",
          "\u00bfCuantos d\u00edas faltan para el 24 de junio?",
          "\u00bfQue d\u00eda es?",
          "Dime la hora",
          "\u00bfCu\u00e1ndo es el d\u00eda del libro?",
          "\u00bfQu\u00e9 hora es en Par\u00eds?"
        ]
      },
      "eu-es": {
        "name": "Data eta ordua",
        "description": "Jakin ordua, data, asteko eguna",
        "examples": [
          "Zer ordu da?",
          "Esadazu asteko eguna",
          "Zenbat egun falta dira uztailaren 4a arte",
          "Zein data da?",
          "Erakutsi ordua",
          "Zein egunetan da 2020ko Oroitzapen Eguna?",
          "Zer ordu da Parisen?"
        ]
      },
      "fa-ir": {
        "name": "\u062a\u0627\u0631\u06cc\u062e \u0648 \u0632\u0645\u0627\u0646",
        "description": "\u0641\u0647\u0645\u06cc\u062f\u0646 \u0632\u0645\u0627\u0646\u060c \u062a\u0627\u0631\u06cc\u062e \u0648 \u0631\u0648\u0632 \u0647\u0641\u062a\u0647"
      },
      "fi-fi": {
        "name": "P\u00e4iv\u00e4m\u00e4\u00e4r\u00e4 ja aika",
        "description": "Kerro kellonaika, p\u00e4iv\u00e4m\u00e4\u00e4r\u00e4 ja viikonp\u00e4iv\u00e4",
        "examples": [
          "mik\u00e4 on t\u00e4m\u00e4n p\u00e4iv\u00e4n p\u00e4iv\u00e4m\u00e4\u00e4r\u00e4",
          "Aika, kiitos.",
          "monesko p\u00e4iv\u00e4 t\u00e4n\u00e4\u00e4n on",
          "mik\u00e4 viikonp\u00e4iv\u00e4 t\u00e4n\u00e4\u00e4n on",
          "mik\u00e4 kuukausi nyt on",
          "mik\u00e4 vuosi nyt on",
          "onko t\u00e4m\u00e4 vuosi karkausvuosi",
          "milloin on seuraava karkausvuosi"
        ]
      },
      "fr-fr": {
        "name": "Date et heure",
        "description": "Obtenez l'heure, la date et le jour de la semaine",
        "examples": [
          "Quelle heure est-il?",
          "Dis-moi le jour de la semaine",
          "Combien de jours avant le 14 juillet",
          "Quelle est la date ?",
          "Montre-moi l'heure",
          "Quel jour est la Toussaint 2025 ?",
          "Quelle heure est-il \u00e0 Paris ?"
        ]
      },
      "gl-es": {
        "name": "Data e Hora",
        "description": "Obt\u00e9n a hora, a data, o d\u00eda da semana",
        "examples": [
          "Que hora \u00e9?",
          "Dime o d\u00eda da semana",
          "Cantos d\u00edas faltan para o 4 de xullo",
          "Que d\u00eda \u00e9 hoxe?",
          "Dime que hora \u00e9",
          "Que d\u00eda \u00e9 o martes de entroido de 2025?",
          "Que hora \u00e9 en Par\u00eds?"
        ]
      },
      "hu-hu": {
        "name": "D\u00e1tum \u00e9s id\u0151",
        "description": "Id\u0151, d\u00e1tum \u00e9s a h\u00e9t napj\u00e1nak lek\u00e9rdez\u00e9se."
      },
      "it-it": {
        "name": "Data e ora",
        "description": "Chiedi l'ora, la data, il giorno della settimana",
        "examples": [
          "Che ora \u00e8?",
          "Che giorno \u00e8 oggi",
          "Quanti giorni mancano a 15 maggio",
          "Qual'\u00e8 la data di oggi",
          "Che ore sono?",
          "Che giorno della settimana \u00e8 15 maggio",
          "Dammi l'ora a Parigi"
        ]
      },
      "kab": {
        "name": "Azemz d ssa\u025ba",
        "description": "Awi ssa\u025ba, azemz d wass n ddu\u1e5bt",
        "examples": [
          "D acu-t ssa\u025ba tura?",
          "Ini-yi-d ass n ddu\u1e5bt",
          "Ac\u1e25al n wussan i d-yeqqimen \u0263er 4 yulyu",
          "D acu-t wazemz n wass-a?",
          "Sken-iyi-d ssa\u025ba",
          "Anwa ass i d Yennayer 2027?",
          "D acu-t ssa\u025ba tura di Pari?"
        ]
      },
      "nl-nl": {
        "name": "Datum en tijd",
        "description": "Hoor de tijd, datum en dag van de week",
        "examples": [
          "Hoe laat is het?",
          "Welke dag is het?",
          "Hoeveel dagen tot 4 juli?",
          "Wat is de datum?",
          "Wat is de huidige tijd?",
          "Welke dag is 4 mei?",
          "Hoe laat is het in Parijs?"
        ]
      },
      "pl-pl": {
        "name": "Data i czas",
        "description": "Sprawdzanie godziny, daty i dnia tygodnia.",
        "examples": [
          "Jak\u0105 mamy godzin\u0119?",
          "Jaki dzie\u0144 tygodnia jest dzisiaj?",
          "Jaka jest dzisiejsza data?",
          "Kt\u00f3rego dzisiaj mamy?",
          "Podaj mi godzin\u0119",
          "Ile dni zosta\u0142o do Bo\u017cego Narodzenia?",
          "Aktualna godzina w Warszawie"
        ]
      },
      "pt-br": {
        "name": "Data e hora",
        "description": "Obtenha a hora, a data e o dia da semana",
        "examples": [
          "Que horas s\u00e3o?",
          "Diga-me o dia da semana",
          "Quantos dias faltam para 4 de julho",
          "Qual \u00e9 a data?",
          "Mostre-me as horas",
          "Que dia \u00e9 o Memorial Day de 2020?",
          "Que horas s\u00e3o em Paris?"
        ]
      },
      "pt-pt": {
        "name": "Data e Hora",
        "description": "Obt\u00e9m a hora, a data, o dia da semana",
        "examples": [
          "Que horas s\u00e3o?",
          "Diz-me o dia da semana",
          "Quantos dias faltam para 4 de julho",
          "Qual \u00e9 a data?",
          "Mostra-me a hora",
          "Que dia \u00e9 o Dia Memorial de 2020?",
          "Que horas s\u00e3o em Paris?"
        ]
      },
      "ru-ru": {
        "name": "\u0414\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043c\u044f",
        "description": "\u0412\u0440\u0435\u043c\u044f, \u0434\u0430\u0442\u0430, \u0434\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438"
      },
      "sv-fi": {
        "name": "Datum och tid",
        "description": "F\u00e5 reda p\u00e5 tiden, datumet, veckodagen",
        "examples": [
          "Vad \u00e4r klockan?",
          "S\u00e4g vilken veckodag det \u00e4r",
          "Hur m\u00e5nga dagar \u00e4r det till den 4 juli",
          "Vilket datum \u00e4r det?",
          "Visa mig klockan",
          "Vilken dag \u00e4r minnesdagen 2020?",
          "Vad \u00e4r klockan i Paris?"
        ]
      },
      "sv-se": {
        "name": "Datum och tid",
        "description": "F\u00e5 tiden, datumet, veckodagen",
        "examples": [
          "Vad \u00e4r klockan?",
          "Ber\u00e4tta vilken veckodag det \u00e4r",
          "Hur m\u00e5nga dagar \u00e4r det till den 4 juli",
          "Vad \u00e4r dagens datum?",
          "Visa mig klockan",
          "Vilken dag \u00e4r Memorial Day 2020?",
          "Vad \u00e4r klockan i Paris?"
        ]
      },
      "tr-tr": {
        "name": "Tarih ve Saat",
        "description": "Saati, tarihi ve haftan\u0131n g\u00fcn\u00fcn\u00fc \u00f6\u011frenin."
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2022-03-14T00:48:07Z",
    "last_updated": "2025-07-31T23:27:32.507067Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-date-time.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.4.20",
          "tested_at": "2026-10-14T08:33:18+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads \u00b7 18/20 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "1.1.5",
          "tested_at": "2026-10-14T08:31:44+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 2/5 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "1.12.3a1",
          "tested_at": "2026-11-15T09:52:39+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 2,
            "counted": 5
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-ip",
    "skill_id": "ovos-skill-ip.openvoiceos",
    "name": "Device IP Address",
    "description": "Network connection information",
    "examples": [
      "What's your network address?",
      "What's your IP address?",
      "Tell me your IP address",
      "Tell me your network address",
      "What network are you connected to?"
    ],
    "tags": [
      "IP-address",
      "IPaddress",
      "network-address",
      "network",
      "system"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/info-circle.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-ip",
    "package_name": "ovos-skill-ip",
    "pypi_version": "0.2.8",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 5,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-ip"
      }
    ],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Adre\u00e7a IP del dispositiu",
        "description": "Informaci\u00f3 de connexi\u00f3 de la xarxa",
        "examples": [
          "Quina \u00e9s la teva adre\u00e7a de xarxa?",
          "Quina \u00e9s la teva adre\u00e7a IP?",
          "Digues-me la teva adre\u00e7a IP",
          "Digues-me la teva adre\u00e7a de xarxa",
          "A quina xarxa est\u00e0s connectat?"
        ]
      },
      "cs-cz": {
        "name": "IP adresa za\u0159\u00edzen\u00ed",
        "description": "Informace o s\u00ed\u0165ov\u00e9m p\u0159ipojen\u00ed",
        "examples": [
          "Jak\u00e1 je tvoje s\u00ed\u0165ov\u00e1 adresa?",
          "Jak\u00e1 je tvoje IP adresa?",
          "\u0158ekni mi svou IP adresu",
          "\u0158ekni mi svou s\u00ed\u0165ovou adresu",
          "Ke kter\u00e9 s\u00edti jsi p\u0159ipojen\u00fd?"
        ]
      },
      "da-dk": {
        "name": "Enhedens IP-adresse",
        "description": "Oplysninger om netv\u00e6rksforbindelse",
        "examples": [
          "Hvad er din netv\u00e6rksadresse?",
          "Hvad er din IP-adresse?",
          "Fort\u00e6l mig din IP-adresse",
          "Fort\u00e6l mig din netv\u00e6rksadresse",
          "Hvilket netv\u00e6rk er du tilsluttet?"
        ]
      },
      "de-de": {
        "name": "IP-Adresse des Ger\u00e4ts",
        "description": "Netzwerkverbindungsinformationen",
        "examples": [
          "Wie lautet Deine Netzwerkadresse?",
          "Wie lautet Deine IP-Adresse?",
          "Sag mir deine IP-Adresse",
          "Sag mir deine Netzwerkadresse",
          "Mit welchem Netzwerk bist Du verbunden?"
        ]
      },
      "es-co": {
        "name": "Direcci\u00f3n IP del dispositivo",
        "description": "Informaci\u00f3n de conexi\u00f3n de red",
        "examples": [
          "cu\u00e1l es mi direcci\u00f3n IP",
          "dime mi IP externa",
          "cu\u00e1l es mi direcci\u00f3n IP p\u00fablica"
        ]
      },
      "es-es": {
        "name": "Direcci\u00f3n IP del dispositivo",
        "description": "Informaci\u00f3n de conexi\u00f3n de red",
        "examples": [
          "\u00bfCu\u00e1l es tu direcci\u00f3n de red?",
          "\u00bfCu\u00e1l es tu direcci\u00f3n IP?",
          "Dime tu direcci\u00f3n IP",
          "Dime tu direcci\u00f3n de red",
          "\u00bfA qu\u00e9 red est\u00e1s conectado?"
        ]
      },
      "eu-es": {
        "name": "Gailuaren IP helbidea",
        "description": "Sareko konexioaren informazioa",
        "examples": [
          "Zein da zure sareko helbidea?",
          "Zein da zure IP helbidea?",
          "Esadazu zure IP helbidea",
          "Esadazu zure sareko helbidea",
          "Zein sareri konektatuta zaude?"
        ]
      },
      "fa-ir": {
        "name": "Device IP Address",
        "description": "\u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u062a\u0635\u0627\u0644 \u0634\u0628\u06a9\u0647",
        "examples": [
          "\u0622\u06cc \u067e\u06cc \u0645\u0646 \u0686\u06cc\u0633\u062a",
          "\u0622\u06cc \u067e\u06cc \u0639\u0645\u0648\u0645\u06cc \u0645\u0646 \u0686\u06cc\u0633\u062a",
          "\u0631\u0642\u0645 \u0647\u0627\u06cc \u0622\u062e\u0631 \u0622\u06cc \u067e\u06cc \u0645\u0646 \u0686\u06cc\u0633\u062a"
        ]
      },
      "fr-fr": {
        "name": "Adresse IP de l'appareil",
        "description": "Informations sur la connexion r\u00e9seau.",
        "examples": [
          "Quelle est ton adresse r\u00e9seau ?",
          "Quelle est ton adresse IP ?",
          "Donne-moi ton adresse IP",
          "\u00c0 quel r\u00e9seau es-tu connect\u00e9 ?"
        ]
      },
      "gl-es": {
        "name": "Enderezo IP do dispositivo",
        "description": "Informaci\u00f3n sobre a conexi\u00f3n \u00e1 rede",
        "examples": [
          "Cal \u00e9 o teu enderezo de rede?",
          "Cal \u00e9 o teu enderezo IP?",
          "Dime o teu enderezo IP",
          "Dime o teu enderezo de rede",
          "A que rede est\u00e1s (contectada|conectado)?"
        ]
      },
      "it-it": {
        "name": "Indirizzo IP del dispositivo",
        "description": "Informazioni sulla connessione di rete",
        "examples": [
          "Qual \u00e8 il tuo indirizzo di rete?",
          "Qual \u00e8 il tuo indirizzo IP?",
          "Dimmi il tuo indirizzo IP",
          "Dimmi il tuo indirizzo di rete",
          "A quale rete sei connesso?"
        ]
      },
      "kab": {
        "name": "Tansa IP n Ubenak",
        "description": "Tal\u0263ut \u0263ef tuqqna n u\u1e93e\u1e6d\u1e6da",
        "examples": [
          "D acu-t tansa n u\u1e93e\u1e6d\u1e6da-inek?",
          "D acu-t tansa-k IP?",
          "Ini-yi-d tansa-k IP",
          "Ini-yi-d tansa n u\u1e93e\u1e6d\u1e6da-inek",
          "D acu-t u\u1e93e\u1e6d\u1e6da i deg tellid?"
        ]
      },
      "nl-nl": {
        "name": "IP-adres van het apparaat",
        "description": "Informatie over de netwerkverbinding",
        "examples": [
          "Wat is je netwerkadres?",
          "Wat is je IP-adres?",
          "Vertel me je IP-adres",
          "Vertel me je netwerkadres",
          "Met welk netwerk ben je verbonden?"
        ]
      },
      "oc-fr": {
        "name": "Adre\u00e7a IP de l'aparelh",
        "description": "Informacions sus la connexion de ret",
        "examples": [
          "Quina es la ti\u00e1 adre\u00e7a de ret?",
          "Quina es la ti\u00e1 adre\u00e7a IP?",
          "Digas-me la ti\u00e1 adre\u00e7a IP",
          "Digas-me la ti\u00e1 adre\u00e7a de ret",
          "A quina ret si\u00e1s connectat?"
        ]
      },
      "pl-pl": {
        "name": "Adres IP urz\u0105dzenia",
        "description": "Informacje o po\u0142\u0105czeniu sieciowym",
        "examples": [
          "Jaki jest tw\u00f3j adres sieciowy?",
          "Jaki jest tw\u00f3j adres IP?",
          "Podaj mi sw\u00f3j adres IP",
          "Podaj mi sw\u00f3j adres sieciowy",
          "Do jakiej sieci jeste\u015b pod\u0142\u0105czony?"
        ]
      },
      "pt-br": {
        "name": "Endere\u00e7o IP do Dispositivo",
        "description": "Informa\u00e7\u00f5es de conex\u00e3o de rede",
        "examples": [
          "Qual \u00e9 o seu endere\u00e7o de rede?",
          "Qual \u00e9 o seu endere\u00e7o IP?",
          "Diga-me o seu endere\u00e7o IP",
          "Diga-me o seu endere\u00e7o de rede",
          "A que rede voc\u00ea est\u00e1 conectado?"
        ]
      },
      "pt-pt": {
        "name": "Endere\u00e7o IP do Dispositivo",
        "description": "Informa\u00e7\u00e3o de liga\u00e7\u00e3o de rede",
        "examples": [
          "Qual \u00e9 o teu endere\u00e7o de rede?",
          "Qual \u00e9 o teu endere\u00e7o IP?",
          "Diz-me o teu endere\u00e7o IP",
          "Diz-me o teu endere\u00e7o de rede",
          "A que rede est\u00e1s ligado?"
        ]
      },
      "ru-ru": {
        "name": "Device IP Address",
        "description": "\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a \u0441\u0435\u0442\u0438",
        "examples": [
          "\u043a\u0430\u043a\u043e\u0439 \u0443 \u043c\u0435\u043d\u044f IP \u0430\u0434\u0440\u0435\u0441",
          "\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u043c\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 IP",
          "\u043a\u0430\u043a\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0446\u0438\u0444\u0440\u044b \u043c\u043e\u0435\u0433\u043e IP \u0430\u0434\u0440\u0435\u0441\u0430"
        ]
      },
      "sv-se": {
        "name": "Enhetens IP-adress",
        "description": "Information om n\u00e4tverksanslutning",
        "examples": [
          "Vad \u00e4r din n\u00e4tverksadress?",
          "Vad \u00e4r din IP-adress?",
          "Ber\u00e4tta din IP-adress",
          "Ber\u00e4tta din n\u00e4tverksadress",
          "Vilket n\u00e4tverk \u00e4r du ansluten till?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2023-12-09T16:29:52Z",
    "last_updated": "2025-05-15T17:27:11.308266Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-ip.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.8",
          "tested_at": "2026-10-04T10:55:48+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.8",
          "tested_at": "2026-10-04T10:31:22+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.9.0a6",
          "tested_at": "2026-10-30T08:58:51+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-dictation",
    "skill_id": "ovos-skill-dictation.openvoiceos",
    "name": "Dictation skill",
    "description": "continuously transcribes user speech to text file while enabled",
    "examples": [
      "start dictation",
      "end dictation"
    ],
    "tags": [
      "productivity"
    ],
    "category": "Productivity",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-dictation",
    "package_name": "ovos-skill-dictation",
    "pypi_version": "0.2.21",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 9,
    "forks": 8,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Habilitat de dictat",
        "description": "Mentre est\u00e0 activada, transcriu de forma cont\u00ednua la parla de l'usuari en un fitxer de text",
        "examples": [
          "comen\u00e7a el dictat",
          "finalitza el dictat"
        ]
      },
      "da-dk": {
        "name": "Diktatf\u00e6rdighed",
        "description": "transskriberer l\u00f8bende brugertale til tekstfil, mens den er aktiveret",
        "examples": [
          "start diktat",
          "afslut diktat"
        ]
      },
      "de-de": {
        "name": "Diktier Skill",
        "description": "transkribiert Sprache kontinuierlich in eine Textdatei, solange diese aktiviert ist",
        "examples": [
          "Diktat starten",
          "Diktat beenden"
        ]
      },
      "es-co": {
        "name": "Habilidad de dictado",
        "description": "transcribe de forma continua el habla del usuario a un archivo de texto mientras est\u00e1 activada",
        "examples": [
          "iniciar dictado",
          "terminar dictado"
        ]
      },
      "es-es": {
        "name": "Habilidad de dictado",
        "description": "transcribe de forma continua el habla del usuario a un archivo de texto mientras est\u00e1 activada",
        "examples": [
          "iniciar dictado",
          "terminar dictado"
        ]
      },
      "eu-es": {
        "name": "Diktaketa trebetasuna",
        "description": "aktibatuta dagoen bitartean erabiltzailearen ahotsa etengabe testu fitxategi batera transkribatzen du",
        "examples": [
          "hasi diktaketa",
          "amaitu diktaketa"
        ]
      },
      "fa-ir": {
        "name": "Dictation skill",
        "description": "continuously transcribes user speech to text file while enabled",
        "examples": [
          "\u0634\u0631\u0648\u0639 \u062f\u06cc\u06a9\u062a\u0647",
          "\u062a\u0648\u0642\u0641 \u062f\u06cc\u06a9\u062a\u0647"
        ]
      },
      "fr-fr": {
        "name": "Dict\u00e9e",
        "description": "Transcrit ce que vous dites tant que la dict\u00e9e est active.",
        "examples": [
          "D\u00e9marre la dict\u00e9e",
          "Arr\u00eate la dict\u00e9e"
        ]
      },
      "gl-es": {
        "name": "Habilidade de Ditado",
        "description": "transcribe de xeito continuo a fala da persoa usuaria a un ficheiro de texto en canto est\u00e1 habilitada",
        "examples": [
          "(comeza|comezar|empeza|empezar|inicia|iniciar|encomeza|encomezar|enceta|encetar|principia|principiar) o ditado",
          "(rematar|remata|acabar|acaba|finalizar|finaliza|terminar|termina|conclu\u00edr|concl\u00fae) o ditado"
        ]
      },
      "it-it": {
        "name": "Dictation skill",
        "description": "trascrive continuamente il parlato dell'utente in un file di testo mentre \u00e8 attiva",
        "examples": [
          "avvia dettatura",
          "termina dettatura"
        ]
      },
      "kab": {
        "name": "Tazmert n usel\u0263u",
        "description": "yettaru awal n useqdac \u0263er ufaylu n u\u1e0dris skudmi yermed",
        "examples": [
          "bdu asel\u0263u",
          "se\u1e25bes asel\u0263u"
        ]
      },
      "nl-nl": {
        "name": "Dictaat vaardigheid",
        "description": "transcribeert continu de spraak van de gebruiker naar een tekstbestand zolang het is ingeschakeld",
        "examples": [
          "start dictaat",
          "stop dictaat"
        ]
      },
      "oc-fr": {
        "name": "Abilitat de dictat",
        "description": "Quand es activada, transcriu de contunh la paraula de l'utilizaire dins un fichi\u00e8r de t\u00e8xt",
        "examples": [
          "comen\u00e7a lo dictat",
          "final\u00eds lo dictat"
        ]
      },
      "pl-pl": {
        "name": "Dictation skill",
        "description": "continuously transcribes user speech to text file while enabled",
        "examples": [
          "inicjuj dyktacj\u0119",
          "anuluj dyktacj\u0119"
        ]
      },
      "pt-br": {
        "name": "Skill de ditado",
        "description": "transcreve continuamente a fala do usu\u00e1rio para um arquivo de texto enquanto estiver habilitado",
        "examples": [
          "come\u00e7ar o ditado",
          "fim do ditado"
        ]
      },
      "pt-pt": {
        "name": "Skill de ditado",
        "description": "transcreve continuamente a fala do utilizador para um ficheiro de texto enquanto estiver ativo",
        "examples": [
          "come\u00e7ar o ditado",
          "terminar o ditado"
        ]
      },
      "ru-ru": {
        "name": "Dictation skill",
        "description": "continuously transcribes user speech to text file while enabled",
        "examples": [
          "\u043d\u0430\u0447\u0430\u0442\u044c \u0434\u0438\u043a\u0442\u043e\u0432\u043a\u0443",
          "\u041a\u043e\u043d\u0435\u0446 \u0442\u0435\u043a\u0441\u0442\u0430"
        ]
      },
      "sv-se": {
        "name": "Dikteringsf\u00e4rdighet",
        "description": "transkriberar kontinuerligt anv\u00e4ndarens tal till en textfil medan den \u00e4r aktiverad",
        "examples": [
          "starta diktering",
          "avsluta diktering"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2017-03-05T18:10:49Z",
    "last_updated": "2026-02-27T13:12:27.828536Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-dictation.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.15",
          "tested_at": "2026-10-04T10:56:58+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.19",
          "tested_at": "2026-10-04T10:32:48+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.7.0a6",
          "tested_at": "2026-10-30T08:59:06+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-doublecheck",
    "skill_id": null,
    "name": "doublecheck",
    "description": "Doublecheck: an OVOS skill that asks before running a high-risk request Switchboard held, and runs it only on a clear yes.",
    "examples": [],
    "tags": [
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/doublecheck",
    "package_name": "ovos-skill-doublecheck",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-doublecheck\n\nThen set `\"high_risk\": \"confirm\"` under `intents.switchboard` in `mycroft.conf`.\n\nPython 3.11-3.14. Works with ovos-workshop 0.x (Neon) and current OVOS."
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-14T19:43:58Z",
    "last_updated": "2026-10-15T00:41:27.392061Z",
    "is_new_repo": true,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "ovos-skill-doublecheck.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-15T07:45:20+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-15T07:44:26+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "warn",
          "level": 2,
          "version_tested": "1.0.0",
          "tested_at": "2026-10-30T09:00:18+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "emkay-voice-emkay",
    "skill_id": null,
    "name": "emkay",
    "description": "OpenVoiceOS in your browser \u2013 phone, tablet, TV or a Pi in kiosk mode, with the Mark II face. Nothing to install.",
    "examples": [],
    "tags": [
      "mycroft",
      "openvoiceos",
      "ovos",
      "pyodide",
      "voice-assistant",
      "webassembly"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/emkay-voice/emkay/main/web/icon.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/emkay-voice/emkay",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "emkay-voice",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 0,
    "open_issues": 19,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-11-14T19:56:56Z",
    "last_updated": "2026-11-15T16:15:03Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "0xrushi-EWON-ovos-skills",
    "skill_id": null,
    "name": "EWON-ovos-skills",
    "description": "Introductory Skill so that Skill Authors can see how a Mycroft Skill is put together",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/smile.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/0xrushi/EWON-ovos-skills",
    "package_name": "ovos-skill-MyEwonSkill",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "0xrushi",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-07T15:56:15Z",
    "last_updated": "2023-05-15T04:07:16Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-fairytales",
    "skill_id": "ovos-skill-fairytales.andlo",
    "name": "Fairy Tales",
    "description": "Tells fairy tales by Hans Christian Andersen and the Brothers Grimm.",
    "examples": [
      "tell me a story about Cinderella",
      "read me a fairy tale",
      "continue the story"
    ],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "andersen",
      "grimm"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-fairytales/master/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-fairytales",
    "package_name": "ovos-skill-fairytales",
    "pypi_version": "0.1.0",
    "license": "GPL-3.0",
    "archived": true,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 5,
    "forks": 5,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-fairytales"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Eventyr",
        "description": "Fort\u00e6ller eventyr af H.C. Andersen og Br\u00f8drene Grimm.",
        "examples": [
          "fort\u00e6l historien om Askepot",
          "l\u00e6s et eventyr",
          "forts\u00e6t historien"
        ]
      },
      "de-de": {
        "name": "M\u00e4rchen",
        "description": "Erz\u00e4hlt M\u00e4rchen von H.C. Andersen und den Br\u00fcdern Grimm.",
        "examples": [
          "erz\u00e4hl mir das M\u00e4rchen Aschenputtel",
          "lies mir ein M\u00e4rchen vor",
          "erz\u00e4hl weiter"
        ]
      },
      "es-es": {
        "name": "Cuentos de hadas",
        "description": "Cuenta cuentos de hadas de H.C. Andersen y los Hermanos Grimm.",
        "examples": [
          "cu\u00e9ntame el cuento de Cenicienta",
          "l\u00e9eme un cuento de hadas",
          "contin\u00faa el cuento"
        ]
      },
      "fr-fr": {
        "name": "Contes de f\u00e9es",
        "description": "Raconte des contes de f\u00e9es de H.C. Andersen et des Fr\u00e8res Grimm.",
        "examples": [
          "raconte-moi l'histoire de Cendrillon",
          "lis-moi un conte de f\u00e9es",
          "continue l'histoire"
        ]
      },
      "it-it": {
        "name": "Fiabe",
        "description": "Racconta fiabe di H.C. Andersen e dei Fratelli Grimm.",
        "examples": [
          "raccontami la storia di Cenerentola",
          "leggimi una fiaba",
          "continua la storia"
        ]
      },
      "nl-nl": {
        "name": "Sprookjes",
        "description": "Vertelt sprookjes van H.C. Andersen en de Gebroeders Grimm.",
        "examples": [
          "vertel me het verhaal van Assepoester",
          "lees me een sprookje voor",
          "ga verder met het verhaal"
        ]
      },
      "pt-pt": {
        "name": "Contos de fadas",
        "description": "Conta contos dos Irm\u00e3os Grimm (apenas Grimm neste idioma - sem hist\u00f3rias de Andersen em portugu\u00eas).",
        "examples": [
          "conta-me a hist\u00f3ria da Cinderela",
          "l\u00ea-me um conto",
          "continua a hist\u00f3ria"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2019-02-03T18:26:11Z",
    "last_updated": "2026-07-21T00:32:27.512227Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-fart",
    "skill_id": "ovos-skill-fart.andlo",
    "name": "Fart",
    "description": "Makes your voice assistant fart - on request or at random - and deny everything afterwards. Fully offline.",
    "examples": [
      "fart",
      "did you fart",
      "fart randomly",
      "stop farting"
    ],
    "tags": [
      "fun",
      "humor",
      "entertainment",
      "prank",
      "fart"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-fart/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-fart",
    "package_name": "ovos-skill-fart",
    "pypi_version": "1.0.1",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-fart"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Prut",
        "description": "F\u00e5r din stemmeassistent til at prutte - p\u00e5 kommando eller helt tilf\u00e6ldigt - og ben\u00e6gte alt bagefter. K\u00f8rer helt offline.",
        "examples": [
          "prut",
          "var det dig der pruttede",
          "prut tilf\u00e6ldigt",
          "stop med at prutte"
        ]
      },
      "de-de": {
        "name": "Pups",
        "description": "L\u00e4sst deinen Sprachassistenten pupsen - auf Befehl oder zuf\u00e4llig - und danach alles abstreiten. Komplett offline.",
        "examples": [
          "pups",
          "hast du gepupst",
          "pups zuf\u00e4llig",
          "h\u00f6r auf zu pupsen"
        ]
      },
      "es-es": {
        "name": "Pedo",
        "description": "Hace que tu asistente de voz se tire pedos, cuando se lo pidas o al azar, y que luego lo niegue todo. Funciona sin conexi\u00f3n.",
        "examples": [
          "t\u00edrate un pedo",
          "te has tirado un pedo",
          "t\u00edrate pedos al azar",
          "deja de tirarte pedos"
        ]
      },
      "fr-fr": {
        "name": "Pet",
        "description": "Fait p\u00e9ter ton assistant vocal, sur demande ou au hasard, puis il nie tout. Fonctionne enti\u00e8rement hors ligne.",
        "examples": [
          "p\u00e8te",
          "c'est toi qui as p\u00e9t\u00e9",
          "p\u00e8te au hasard",
          "arr\u00eate de p\u00e9ter"
        ]
      },
      "it-it": {
        "name": "Scoreggia",
        "description": "Fa scoreggiare il tuo assistente vocale, su richiesta o a caso, e poi nega tutto. Funziona completamente offline.",
        "examples": [
          "scoreggia",
          "hai scoreggiato",
          "scoreggia a caso",
          "smetti di scoreggiare"
        ]
      },
      "nl-nl": {
        "name": "Scheet",
        "description": "Laat je spraakassistent scheten laten - op commando of willekeurig - en daarna alles ontkennen. Werkt volledig offline.",
        "examples": [
          "laat een scheet",
          "heb jij een scheet gelaten",
          "laat willekeurig scheten",
          "stop met scheten laten"
        ]
      },
      "pt-pt": {
        "name": "Pum",
        "description": "Faz o teu assistente de voz dar puns, a pedido ou ao acaso, e depois negar tudo. Funciona totalmente offline.",
        "examples": [
          "d\u00e1 um pum",
          "deste um pum",
          "d\u00e1 puns ao acaso",
          "para de dar puns"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2024-03-28T20:54:48Z",
    "last_updated": "2026-10-01T10:10:38.055664Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-fart.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 11/11 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "1.0.1",
          "tested_at": "2026-10-04T10:57:17+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 11,
            "counted": 11
          }
        },
        "testing": {
          "label": "\u2713 11/11 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "1.0.1",
          "tested_at": "2026-10-04T10:33:07+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 11,
            "counted": 11
          }
        },
        "alpha": {
          "label": "\u2713 11/11 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "1.0.1",
          "tested_at": "2026-10-30T09:00:26+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 11,
            "counted": 11
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-boot-finished",
    "skill_id": "ovos-skill-boot-finished.openvoiceos",
    "name": "Finished Booting Skill",
    "description": "The Finished Booting skill provides notifications when OpenVoiceOS has fully started and all core services are ready",
    "examples": [
      "Is the system ready?",
      "Enable ready notifications.",
      "Disable ready notifications."
    ],
    "tags": [
      "diagnostics",
      "information"
    ],
    "category": "Information",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-boot-finished",
    "package_name": "ovos-skill-boot-finished",
    "pypi_version": "0.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Use the `settings.json` file to change the skill behavior.\n\n{\n  \"speak_ready\": true,        // Enables or disables spoken notifications for readiness\n  \"ready_sound\": true,         // Enables or disables sound notifications for readiness\n  \"ready_settings\": [\n    \"skills\",                  // Services to check before notifying readiness\n    \"voice\",\n    \"audio\",\n    \"gui\",\n    \"internet\"\n  ]\n}\n\nThe `ready_settings` option lets you tailor notifications to the role of the device. For example, a server setup can monitor only core services, while a full OVOS device can wait for the GUI and audio stack. You can also add specific skills to this list, so the skill only reports readiness once those skills load.\n\nIf you omit `ready_settings`, the skill waits for `ovos-core` and all installed skills\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Habilitat d'engegada finalitzada",
        "description": "L'habilitat d'engegada acabada proporciona notificacions quan l'OpenVoiceOS s'ha iniciat completament i tots els serveis b\u00e0sics estan preparats",
        "examples": [
          "El sistema est\u00e0 preparat?",
          "Activa les notificacions preparades.",
          "Desactiva les notificacions preparades."
        ]
      },
      "da-dk": {
        "name": "F\u00e6rdig booting f\u00e6rdighed",
        "description": "F\u00e6rdigheden til f\u00e6rdig opstart giver besked, n\u00e5r OpenVoiceOS er fuldt startet, og alle kernetjenester er klar",
        "examples": [
          "Er systemet klar?",
          "Aktiver klarmeddelelser.",
          "Deaktiver klarmeddelelser."
        ]
      },
      "de-de": {
        "name": "Finished Booting Skill",
        "description": "Die Fertig-Boot-Funktion gibt Benachrichtigungen aus, wenn OpenVoiceOS vollst\u00e4ndig gestartet ist und alle Kerndienste bereit sind",
        "examples": [
          "Ist das System bereit?",
          "Aktiviere die Bereitschaftsbenachrichtigungen.",
          "Deaktiviere Bereitschaftsbenachrichtigungen."
        ]
      },
      "es-co": {
        "name": "Habilidad de arranque finalizado",
        "description": "La habilidad de arranque finalizado proporciona notificaciones cuando OpenVoiceOS se ha iniciado por completo y todos los servicios principales est\u00e1n listos",
        "examples": [
          "\u00bfEst\u00e1 listo el sistema?",
          "Habilitar notificaciones de preparaci\u00f3n.",
          "Desactivar notificaciones de preparaci\u00f3n."
        ]
      },
      "es-es": {
        "name": "Habilidad de arranque finalizado",
        "description": "La habilidad de arranque finalizado proporciona notificaciones cuando OpenVoiceOS se ha iniciado por completo y todos los servicios principales est\u00e1n listos",
        "examples": [
          "\u00bfEst\u00e1 listo el sistema?",
          "Habilitar notificaciones de preparaci\u00f3n.",
          "Desactivar notificaciones de preparaci\u00f3n."
        ]
      },
      "eu-es": {
        "name": "Abioa amaituta trebetasuna",
        "description": "Abioa amaituta trebetasunak jakinarazpenak ematen ditu OpenVoiceOS erabat abiarazi denean eta oinarrizko zerbitzu guztiak prest daudenean",
        "examples": [
          "Sistema prest dago?",
          "Gaitu prest dagoela adierazteko jakinarazpena",
          "Desgaitu prest dagoela adierazteko jakinarazpena"
        ]
      },
      "fa-ir": {
        "name": "Finished Booting Skill",
        "description": "The Finished Booting skill provides notifications when OpenVoiceOS has fully started and all core services are ready",
        "examples": [
          "\u0622\u06cc\u0627 \u0622\u0645\u0627\u062f\u0647 \u0647\u0633\u062a\u06cc\u062f",
          "\u0639\u062f\u0645 \u0627\u0645\u06a9\u0627\u0646 \u0634\u0631\u0648\u0639 \u0635\u062f\u0627",
          "\u0627\u0645\u06a9\u0627\u0646 \u0634\u0631\u0648\u0639 \u0635\u062f\u0627"
        ]
      },
      "fr-fr": {
        "name": "D\u00e9marrage termin\u00e9",
        "description": "Vous avertit quand OpenVoiceOS a compl\u00e8tement d\u00e9marr\u00e9 et que les services principaux sont pr\u00eats.",
        "examples": [
          "Est-ce que le syst\u00e8me est pr\u00eat ?",
          "Active les notifications de d\u00e9marrage.",
          "D\u00e9sactive les notifications de d\u00e9marrage."
        ]
      },
      "gl-es": {
        "name": "Habilidade \"Rematado o arranque\"",
        "description": "A habilidade \"Rematado o arranque\" proporciona notificaci\u00f3ns cando OpenVoiceOS acaba de iniciarse por completo e todos os servizos principais est\u00e1n listos",
        "examples": [
          "Est\u00e1 (listo|preparado) o sistema?",
          "Activar (as|) notificaci\u00f3ns de estado.",
          "Desactivar (as|) notificaci\u00f3ns de estado."
        ]
      },
      "it-it": {
        "name": "Competenza Fine di avvio",
        "description": "La competenza Fine di avvio fornisce notifiche quando OpenVoiceOS \u00e8 completamente avviato e tutti i servizi principali sono pronti",
        "examples": [
          "Il sistema \u00e8 pronto?",
          "Abilita le notifiche di \"pronto\".",
          "Disattiva le notifiche di \"pronto\"."
        ]
      },
      "kab": {
        "name": "Asenker yekfa",
        "description": "Askar-agi i\u021b\u021bak-d isallen mi ara yekfu usenker n OpenVoiceOS yerna imukan me\u1e5b\u1e5ba ddan yerna \u021beddun.",
        "examples": [
          "Ma yewjed unagraw?",
          "Rmed il\u0263a n uwjeb.",
          "Sens il\u0263a n uwjeb."
        ]
      },
      "nl-nl": {
        "name": "Ik ben er klaar voor - skill",
        "description": "De \"Ik ben er klaar voor\" skill geeft meldingen wanneer OpenVoiceOS volledig is gestart en alle onderdelen klaar zijn voor gebruik.",
        "examples": [
          "Is het systeem opgestart?",
          "Schakel opstartmelding in.",
          "Schakel opstartmelding uit."
        ]
      },
      "pl-pl": {
        "name": "Finished Booting Skill",
        "description": "The Finished Booting skill provides notifications when OpenVoiceOS has fully started and all core services are ready",
        "examples": [
          "Zaczynasz?",
          "wy\u0142\u0105cz gotowy d\u017awi\u0119k",
          "Uaktywni\u0107 d\u017awi\u0119k gotowy"
        ]
      },
      "pt-br": {
        "name": "Skill de inicializa\u00e7\u00e3o finalizada",
        "description": "A skill de inicializa\u00e7\u00e3o finalizada fornece notifica\u00e7\u00f5es quando OpenVoiceOS reiniciou completamente and todos os servi\u00e7os b\u00e1sicos est\u00e3o prontos",
        "examples": [
          "O sistema est\u00e1 pronto?",
          "Habilitar notifica\u00e7\u00f5es prontas.",
          "Desabilite as notifica\u00e7\u00f5es prontas."
        ]
      },
      "pt-pt": {
        "name": "Skill de Arranque Conclu\u00eddo",
        "description": "A skill de Arranque Conclu\u00eddo avisa quando o OpenVoiceOS terminou de arrancar e todos os servi\u00e7os principais est\u00e3o prontos",
        "examples": [
          "O sistema est\u00e1 pronto?",
          "Ativar as notifica\u00e7\u00f5es de pronto.",
          "Desativar as notifica\u00e7\u00f5es de pronto."
        ]
      },
      "ru-ru": {
        "name": "Finished Booting Skill",
        "description": "The Finished Booting skill provides notifications when OpenVoiceOS has fully started and all core services are ready",
        "examples": [
          "\u0422\u044b \u0433\u043e\u0442\u043e\u0432?",
          "\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u0437\u0432\u0443\u043a",
          "\u043f\u0440\u0438\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u0437\u0432\u0443\u043a"
        ]
      },
      "sv-se": {
        "name": "F\u00e4rdigstartad-skill",
        "description": "F\u00e4rdigstartad-skillen ger meddelanden n\u00e4r OpenVoiceOS har startat helt och alla k\u00e4rntj\u00e4nster \u00e4r redo",
        "examples": [
          "\u00c4r systemet redo?",
          "Aktivera redomeddelanden.",
          "Inaktivera redomeddelanden."
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-01-19T01:32:33Z",
    "last_updated": "2025-05-15T16:46:12.652443Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-boot-finished.openvoiceos",
      "channels": {
        "stable": {
          "label": "needs device",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.5.0",
          "tested_at": "2026-10-04T10:57:45+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "needs device",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.5.0",
          "tested_at": "2026-10-04T10:33:34+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "needs device",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.9.4a1",
          "tested_at": "2026-10-30T09:00:38+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-geography",
    "skill_id": "ovos-skill-geography.andlo",
    "name": "Geography",
    "description": "Geography facts - capitals, continents, borders, area, currency, and language for 194 UN member states. Fully offline.",
    "examples": [
      "what is the capital of France",
      "what continent is Kenya in",
      "what countries border Germany",
      "how big is Brazil",
      "what currency does Japan use",
      "what language do they speak in Egypt",
      "tell me about Afghanistan"
    ],
    "tags": [
      "geography",
      "reference",
      "capitals",
      "countries",
      "information"
    ],
    "category": "Information",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-geography/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-geography",
    "package_name": "ovos-skill-geography",
    "pypi_version": "0.0.5",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-geography"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "kab"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Geografi",
        "description": "Geografiske fakta - hovedst\u00e6der, kontinenter, gr\u00e6nser, areal, valuta og sprog for 194 FN-medlemslande. Fuldst\u00e6ndig offline.",
        "examples": [
          "hvad er hovedstaden i Frankrig",
          "hvilket kontinent er Kenya i",
          "hvilke lande gr\u00e6nser op til Tyskland",
          "hvor stort er Brasilien",
          "hvilken valuta bruger Japan",
          "hvilket sprog taler man i Egypten",
          "fort\u00e6l mig om Afghanistan"
        ]
      },
      "de-de": {
        "name": "Geografie",
        "description": "Geografische Fakten - Hauptst\u00e4dte, Kontinente, Grenzen, Fl\u00e4che, W\u00e4hrung und Sprache f\u00fcr 194 UN-Mitgliedstaaten. Vollst\u00e4ndig offline.",
        "examples": [
          "was ist die hauptstadt von Frankreich",
          "auf welchem kontinent liegt Kenia",
          "welche l\u00e4nder grenzen an Deutschland",
          "wie gro\u00df ist Brasilien",
          "welche w\u00e4hrung hat Japan",
          "welche sprache spricht man in \u00c4gypten",
          "erz\u00e4hl mir etwas \u00fcber Afghanistan"
        ]
      },
      "es-es": {
        "name": "Geograf\u00eda",
        "description": "Datos geogr\u00e1ficos - capitales, continentes, fronteras, \u00e1rea, moneda e idioma de 194 estados miembros de la ONU. Totalmente sin conexi\u00f3n.",
        "examples": [
          "cu\u00e1l es la capital de Francia",
          "en qu\u00e9 continente est\u00e1 Kenia",
          "qu\u00e9 pa\u00edses limitan con Alemania",
          "qu\u00e9 tan grande es Brasil",
          "qu\u00e9 moneda usa Jap\u00f3n",
          "qu\u00e9 idioma se habla en Egipto",
          "h\u00e1blame de Afganist\u00e1n"
        ]
      },
      "fr-fr": {
        "name": "G\u00e9ographie",
        "description": "Faits g\u00e9ographiques - capitales, continents, fronti\u00e8res, superficie, monnaie et langue pour 194 \u00c9tats membres de l'ONU. Enti\u00e8rement hors ligne.",
        "examples": [
          "quelle est la capitale de la France",
          "sur quel continent se trouve le Kenya",
          "quels pays bordent l'Allemagne",
          "quelle est la taille du Br\u00e9sil",
          "quelle monnaie utilise le Japon",
          "quelle langue parle-t-on en \u00c9gypte",
          "parle-moi de l'Afghanistan"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-17T14:27:03Z",
    "last_updated": "2026-10-01T18:37:21.657418Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-geography.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 4/14 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.5",
          "tested_at": "2026-10-04T11:12:57+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 14
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 4/14 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.5",
          "tested_at": "2026-10-04T10:48:48+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 14
          }
        },
        "alpha": {
          "label": "\u2713 14/14 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.5",
          "tested_at": "2026-10-30T09:15:47+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 14,
            "counted": 14
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-geography-practice",
    "skill_id": "ovos-skill-geography-practice.andlo",
    "name": "Geography Practice",
    "description": "Geography practice - quizzes and teach-then-practice for capitals, continents, and country borders across 194 UN member states. Fully offline.",
    "examples": [
      "quiz me on capitals",
      "quiz me on continents",
      "quiz me on country borders",
      "teach me about Europe",
      "quiz me on what you taught me"
    ],
    "tags": [
      "geography",
      "education",
      "capitals",
      "quiz",
      "kids"
    ],
    "category": "Education",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-geography-practice/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-geography-practice",
    "package_name": "ovos-skill-geography-practice",
    "pypi_version": "0.0.6",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-geography-practice"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Geografitr\u00e6ning",
        "description": "Geografitr\u00e6ning - quizzer og undervisning i hovedst\u00e6der, kontinenter og landegr\u00e6nser for 194 FN-medlemslande. Fuldst\u00e6ndig offline.",
        "examples": [
          "quiz mig i hovedst\u00e6der",
          "quiz mig i kontinenter",
          "quiz mig i landegr\u00e6nser",
          "l\u00e6r mig om Europa",
          "quiz mig i det du l\u00e6rte mig"
        ]
      },
      "de-de": {
        "name": "Geografietraining",
        "description": "Geografietraining - Quiz und Lehr-dann-\u00fcben f\u00fcr Hauptst\u00e4dte, Kontinente und Landesgrenzen f\u00fcr 194 UN-Mitgliedstaaten. Vollst\u00e4ndig offline.",
        "examples": [
          "quiz mich zu hauptst\u00e4dten",
          "quiz mich zu kontinenten",
          "quiz mich zu landesgrenzen",
          "bring mir etwas \u00fcber Europa bei",
          "quiz mich zu dem was du mir beigebracht hast"
        ]
      },
      "es-es": {
        "name": "Entrenamiento de geograf\u00eda",
        "description": "Entrenamiento de geograf\u00eda - cuestionarios y aprendizaje de capitales, continentes y fronteras de 194 estados miembros de la ONU. Totalmente sin conexi\u00f3n.",
        "examples": [
          "preg\u00fantame sobre capitales",
          "preg\u00fantame sobre continentes",
          "preg\u00fantame sobre fronteras",
          "ens\u00e9\u00f1ame sobre Europa",
          "preg\u00fantame sobre lo que me ense\u00f1aste"
        ]
      },
      "fr-fr": {
        "name": "Entra\u00eenement de g\u00e9ographie",
        "description": "Entra\u00eenement de g\u00e9ographie - quiz et apprentissage des capitales, continents et fronti\u00e8res de 194 \u00c9tats membres de l'ONU. Enti\u00e8rement hors ligne.",
        "examples": [
          "interroge-moi sur les capitales",
          "interroge-moi sur les continents",
          "interroge-moi sur les fronti\u00e8res",
          "apprends-moi l'Europe",
          "interroge-moi sur ce que tu m'as appris"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:34:38Z",
    "last_updated": "2026-10-01T10:10:21.472667Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-geography-practice.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 8/10 golden",
          "state": "warn",
          "level": 3,
          "version_tested": "0.0.6",
          "tested_at": "2026-10-04T11:13:09+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 8,
            "counted": 10
          }
        },
        "testing": {
          "label": "\u2713 8/10 golden",
          "state": "warn",
          "level": 3,
          "version_tested": "0.0.6",
          "tested_at": "2026-10-04T10:48:58+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 8,
            "counted": 10
          }
        },
        "alpha": {
          "label": "\u2713 12/12 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.6",
          "tested_at": "2026-10-30T09:15:59+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 12,
            "counted": 12
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-geometry",
    "skill_id": "ovos-skill-geometry.andlo",
    "name": "Geometry",
    "description": "Geometry knowledge - shape and term definitions, formulas, and applied calculations for rectangles, squares, triangles, circles, and the Pythagorean theorem. Fully offline.",
    "examples": [
      "what is a rhombus",
      "what is the formula for the area of a circle",
      "what is the area of a rectangle with length 5 and width 3",
      "what is the hypotenuse of a right triangle with legs 3 and 4",
      "what is pythagoras' theorem"
    ],
    "tags": [
      "geometry",
      "reference",
      "math",
      "shapes",
      "information"
    ],
    "category": "Information",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-geometry/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-geometry",
    "package_name": "ovos-skill-geometry",
    "pypi_version": "0.0.4",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-geometry"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Geometri",
        "description": "Geometrisk viden - definitioner af former og begreber, formler, og udregninger for rektangler, kvadrater, trekanter, cirkler og pythagoras' s\u00e6tning. Fuldst\u00e6ndig offline.",
        "examples": [
          "hvad er en rombe",
          "hvad er formlen for arealet af en cirkel",
          "hvad er arealet af et rektangel med l\u00e6ngden 5 og bredden 3",
          "hvad er hypotenusen i en retvinklet trekant med kateterne 3 og 4",
          "hvad er pythagoras' s\u00e6tning"
        ]
      },
      "de-de": {
        "name": "Geometrie",
        "description": "Geometrisches Wissen - Definitionen von Formen und Begriffen, Formeln und Berechnungen f\u00fcr Rechtecke, Quadrate, Dreiecke, Kreise und den Satz des Pythagoras. Vollst\u00e4ndig offline.",
        "examples": [
          "was ist eine Raute",
          "wie lautet die formel f\u00fcr die fl\u00e4che eines kreises",
          "was ist die fl\u00e4che eines rechtecks mit der l\u00e4nge 5 und der breite 3",
          "was ist die hypotenuse eines rechtwinkligen dreiecks mit den katheten 3 und 4",
          "was ist der satz des pythagoras"
        ]
      },
      "es-es": {
        "name": "Geometr\u00eda",
        "description": "Conocimiento de geometr\u00eda - definiciones de formas y t\u00e9rminos, f\u00f3rmulas y c\u00e1lculos para rect\u00e1ngulos, cuadrados, tri\u00e1ngulos, c\u00edrculos y el teorema de Pit\u00e1goras. Totalmente sin conexi\u00f3n.",
        "examples": [
          "qu\u00e9 es un rombo",
          "cu\u00e1l es la f\u00f3rmula para el \u00e1rea de un c\u00edrculo",
          "cu\u00e1l es el \u00e1rea de un rect\u00e1ngulo con largo 5 y ancho 3",
          "cu\u00e1l es la hipotenusa de un tri\u00e1ngulo rect\u00e1ngulo con catetos 3 y 4",
          "cu\u00e1l es el teorema de pit\u00e1goras"
        ]
      },
      "fr-fr": {
        "name": "G\u00e9om\u00e9trie",
        "description": "Connaissances en g\u00e9om\u00e9trie - d\u00e9finitions des formes et termes, formules et calculs pour rectangles, carr\u00e9s, triangles, cercles et le th\u00e9or\u00e8me de Pythagore. Enti\u00e8rement hors ligne.",
        "examples": [
          "qu'est-ce qu'un losange",
          "quelle est la formule pour l'aire d'un cercle",
          "quelle est l'aire d'un rectangle de longueur 5 et de largeur 3",
          "quelle est l'hypot\u00e9nuse d'un triangle rectangle avec des c\u00f4t\u00e9s 3 et 4",
          "quel est le th\u00e9or\u00e8me de pythagore"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-17T16:59:50Z",
    "last_updated": "2026-10-01T10:10:40.067199Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-geometry.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 2/13 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T11:13:20+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 13
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 2/13 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:49:08+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 13
          }
        },
        "alpha": {
          "label": "\u2713 13/13 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-30T09:16:10+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 13,
            "counted": 13
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-geometry-practice",
    "skill_id": "ovos-skill-geometry-practice.andlo",
    "name": "Geometry Practice",
    "description": "Geometry practice - quizzes and teach-then-practice for glossary terms, formulas, and Pythagoras' theorem. Fully offline.",
    "examples": [
      "quiz me on geometry terms",
      "quiz me on area and perimeter",
      "quiz me on pythagoras",
      "teach me about terms",
      "quiz me on what you taught me"
    ],
    "tags": [
      "geometry",
      "education",
      "math",
      "quiz"
    ],
    "category": "Education",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-geometry-practice/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-geometry-practice",
    "package_name": "ovos-skill-geometry-practice",
    "pypi_version": "0.0.4",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-geometry-practice"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Geometritr\u00e6ning",
        "description": "Geometritr\u00e6ning - quizzer og undervisning i begreber, formler og pythagoras' s\u00e6tning. Fuldst\u00e6ndig offline.",
        "examples": [
          "quiz mig i geometribegreber",
          "quiz mig i areal og omkreds",
          "quiz mig i pythagoras",
          "l\u00e6r mig om termer",
          "quiz mig i det du l\u00e6rte mig"
        ]
      },
      "de-de": {
        "name": "Geometrietraining",
        "description": "Geometrietraining - Quiz und Lehr-dann-\u00fcben f\u00fcr Begriffe, Formeln und den Satz des Pythagoras. Vollst\u00e4ndig offline.",
        "examples": [
          "quiz mich zu geometriebegriffen",
          "quiz mich zu fl\u00e4che und umfang",
          "quiz mich zu pythagoras",
          "bring mir etwas \u00fcber begriffe bei",
          "quiz mich zu dem was du mir beigebracht hast"
        ]
      },
      "es-es": {
        "name": "Entrenamiento de geometr\u00eda",
        "description": "Entrenamiento de geometr\u00eda - cuestionarios y aprendizaje de t\u00e9rminos, f\u00f3rmulas y el teorema de Pit\u00e1goras. Totalmente sin conexi\u00f3n.",
        "examples": [
          "preg\u00fantame sobre t\u00e9rminos de geometr\u00eda",
          "preg\u00fantame sobre \u00e1rea y per\u00edmetro",
          "preg\u00fantame sobre pit\u00e1goras",
          "ens\u00e9\u00f1ame sobre t\u00e9rminos",
          "preg\u00fantame sobre lo que me ense\u00f1aste"
        ]
      },
      "fr-fr": {
        "name": "Entra\u00eenement de g\u00e9om\u00e9trie",
        "description": "Entra\u00eenement de g\u00e9om\u00e9trie - quiz et apprentissage des termes, formules et du th\u00e9or\u00e8me de Pythagore. Enti\u00e8rement hors ligne.",
        "examples": [
          "interroge-moi sur les termes de g\u00e9om\u00e9trie",
          "interroge-moi sur l'aire et le p\u00e9rim\u00e8tre",
          "interroge-moi sur pythagore",
          "apprends-moi les termes",
          "interroge-moi sur ce que tu m'as appris"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-17T10:58:37Z",
    "last_updated": "2026-10-01T10:11:01.214457Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-geometry-practice.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 10/12 golden \u00b7 stops",
          "state": "warn",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T11:13:32+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 10,
            "counted": 12
          }
        },
        "testing": {
          "label": "\u2713 10/12 golden \u00b7 stops",
          "state": "warn",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:49:18+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 10,
            "counted": 12
          }
        },
        "alpha": {
          "label": "\u2713 12/12 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.4",
          "tested_at": "2026-10-30T08:58:43+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 12,
            "counted": 12
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-grimm-tales",
    "skill_id": "ovos-skill-grimm-tales.andlo",
    "name": "Grimm Tales (provider)",
    "description": "Brothers Grimm fairy tales provider for ovos-common-reading-pipeline-plugin. No standalone voice interface.",
    "examples": [
      "Tell me a story from grimm",
      "Tell me the story about cinderella",
      "Can you tell me a fairy tale from the brothers grimm"
    ],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "grimm",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-grimm-tales/main/story-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-grimm-tales",
    "package_name": "ovos-skill-grimm-tales",
    "pypi_version": "0.1.8",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-grimm-tales ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Grimm Eventyr (udbyder)",
        "description": "Br\u00f8drene Grimms eventyr, udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "Fort\u00e6l mig en historie fra grimm",
          "Fort\u00e6l mig historien om askepot"
        ]
      },
      "de-de": {
        "name": "Grimm M\u00e4rchen (Anbieter)",
        "description": "M\u00e4rchen der Gebr\u00fcder Grimm, Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von grimm",
          "Lies mir eine Geschichte von grimm"
        ]
      },
      "es-es": {
        "name": "Cuentos de Grimm (proveedor)",
        "description": "Cuentos de los Hermanos Grimm, proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente.",
        "examples": [
          "Cu\u00e9ntame un cuento de grimm",
          "L\u00e9eme un cuento de grimm"
        ]
      },
      "fr-fr": {
        "name": "Contes de Grimm (fournisseur)",
        "description": "Contes des Fr\u00e8res Grimm, fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome.",
        "examples": [
          "Raconte-moi une histoire de grimm",
          "Lis-moi une histoire de grimm"
        ]
      },
      "it-it": {
        "name": "Fiabe di Grimm (fornitore)",
        "description": "Fiabe dei Fratelli Grimm, fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma.",
        "examples": [
          "Raccontami una storia di grimm",
          "Leggimi una storia di grimm"
        ]
      },
      "nl-nl": {
        "name": "Grimm Sprookjes (aanbieder)",
        "description": "Sprookjes van de Gebroeders Grimm, aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface.",
        "examples": [
          "Vertel me een verhaal van grimm",
          "Lees me een verhaal van grimm"
        ]
      },
      "pt-pt": {
        "name": "Contos de Grimm (fornecedor)",
        "description": "Contos dos Irm\u00e3os Grimm, fornecedor para ovos-common-reading-pipeline-plugin. Sem interface de voz aut\u00f3noma.",
        "examples": [
          "Conta-me uma hist\u00f3ria de grimm",
          "L\u00ea-me uma hist\u00f3ria de grimm"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T18:04:14Z",
    "last_updated": "2026-10-01T10:33:33.960038Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-grimm-tales.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/3 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:57:09+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 3
          }
        },
        "testing": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:34:24+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "alpha": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-30T08:58:54+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-ha-neon-hub",
    "skill_id": null,
    "name": "ha-neon-hub",
    "description": "Home Assistant integration for Neon Hub: TTS, STT, and conversation agents via the HANA API",
    "examples": [],
    "tags": [
      "hacs",
      "home-assistant",
      "neon-ai",
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OscillateLabsLLC/ha-neon-hub/main/custom_components/neon_hub/brand/icon.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ha-neon-hub",
    "package_name": "ha-neon-hub",
    "pypi_version": null,
    "license": "BSD-3-Clause",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### HACS (recommended)\n\n1. In HACS, add this repository as a custom repository\n   (category: Integration).\n2. Install **Neon Hub**.\n3. Restart Home Assistant.\n\n### Manual\n\nCopy `custom_components/neon_hub/` into your Home Assistant\n`config/custom_components/` directory and restart Home Assistant."
      },
      {
        "heading": "Configuration",
        "content": "If your hub advertises itself via mDNS (`_neon-hub._tcp`), Home Assistant will\ndiscover it and prompt you to finish setup. Otherwise add it manually:\n**Settings \u2192 Devices & Services \u2192 Add Integration \u2192 Neon Hub**.\n\n| Parameter | Description |\n| --- | --- |\n| Host | Hostname or full address of the HANA API, e.g. `hana.neon-hub.local` |\n| Username | Hub user account for Home Assistant |\n| Password | Password for that account |\n| Verify SSL certificate | Off by default \u2014 Neon Hub ships with a self-signed certificate. Enable if you have installed a real certificate. |\n\n### Options\n\n**Settings \u2192 Devices & Services \u2192 Neon Hub \u2192 Configure**\n\n| Option | Default | Description |\n| --- | --- | --- |\n| LLM backend | `chatgpt` | Which hub LLM endpoint the LLM conversation agent uses (`chatgpt`, `fastch\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-03T02:03:11Z",
    "last_updated": "2026-10-16T00:00:39Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "andlo-ha-ovos-integration",
    "skill_id": null,
    "name": "ha-ovos-integration",
    "description": "A Home Assistant integration exposing shared OVOS config and per-skill settingsmeta.json as HA entities.",
    "examples": [],
    "tags": [
      "home-assistant",
      "openvoiceos",
      "planning",
      "wip"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/ha-ovos-integration/master/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/andlo/ha-ovos-integration",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "1. Install and start the relevant [haos-ovos-addons](https://github.com/andlo/haos-ovos-addons) add-ons first.\n2. Add the **OpenVoiceOS** integration in HA.\n3. On Home Assistant OS / Supervised, each add-on's API URL is filled in automatically by querying Supervisor \u2014 nothing to do here. On a non-Supervisor install (or if an add-on isn't found), fill in the missing URL(s) under the integration's own entities (e.g. `http://<hostname>:8500` for `ovos-skills`).\n4. Use **Add sub-entry** on the integration to add skills, run voice setup, or configure persona."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-04T06:43:42Z",
    "last_updated": "2026-08-30T19:33:37Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ha-ovos-tts",
    "skill_id": null,
    "name": "ha-ovos-tts",
    "description": "A Home Assistant plugin to enable TTS entities that hit ovos-tts-server instances.",
    "examples": [],
    "tags": [
      "hacs",
      "home-assistant",
      "ovos",
      "status-active",
      "tts"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OscillateLabsLLC/ha-ovos-tts/main/custom_components/ovos_tts/icon.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ha-ovos-tts",
    "package_name": "ha-ovos-tts",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### HACS (Recommended)\n\n1. Open HACS in your Home Assistant instance\n2. Click the three dots in the top right corner and select **Custom repositories**\n3. Add `https://github.com/OscillateLabsLLC/ha-ovos-tts` as an **Integration**\n4. Search for \"OVOS TTS Server\" and install it\n5. Restart Home Assistant\n\n### Manual\n\n1. Copy the `custom_components/ovos_tts` directory into your Home Assistant `config/custom_components` directory\n2. Restart Home Assistant"
      },
      {
        "heading": "Configuration",
        "content": "1. Go to **Settings > Devices & Services > Add Integration**\n2. Search for **OVOS TTS Server**\n3. Enter your server details (validated before the entry is created):\n\n| Parameter | Required | Default | Description |\n| --- | --- | --- | --- |\n| Host | Yes | \u2014 | Hostname, IP, or full URL of the server (e.g. `192.168.1.100` or `https://tts.example.com`) |\n| Port | Yes | `9666` | Ignored when the host is an HTTPS URL on port 443 or already contains a port |\n| Voice | No | server default | Default voice passed to the TTS plugin |\n| Language | No | server default | Override the default language; must be one the server supports |\n| Verify SSL certificate | No | on | Disable to allow self-signed certificates |\n\nTo change settings later, use the entry's **Reconfigure** option (\u22ee menu on the integrat\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-26T02:40:17Z",
    "last_updated": "2026-08-02T17:55:18Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-hangup",
    "skill_id": null,
    "name": "hangup",
    "description": "Hangup: an OVOS skill that silently absorbs utterances Switchboard declines, logging each decline and speaking nothing.",
    "examples": [],
    "tags": [
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/hangup",
    "package_name": "ovos-skill-hangup",
    "pypi_version": "1.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-hangup\n\nPython 3.11-3.14. Works with ovos-workshop 0.x (Neon) and current OVOS."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-13T00:32:13Z",
    "last_updated": "2026-11-04T03:26:56.446193Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "ovos-skill-hangup.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:50:01+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:49:12+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "warn",
          "level": 2,
          "version_tested": "1.0.1",
          "tested_at": "2026-11-04T09:49:09+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "andlo-haos-ovos-addons",
    "skill_id": null,
    "name": "haos-ovos-addons",
    "description": "Home Assistant OS (Supervisor) add-ons that bring OpenVoiceOS into Home Assistant's own Assist pipeline \u2014 discoverable and configurable the way HAOS users already expect: Add-on Store, install, fill in a form.",
    "examples": [],
    "tags": [
      "hassio-addons",
      "home-assistant",
      "openvoiceos",
      "wip"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/haos-ovos-addons/master/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/andlo/haos-ovos-addons",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 5,
    "forks": 0,
    "open_issues": 7,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "1. In Home Assistant: **Settings \u2192 Add-ons \u2192 Add-on Store**.\n2. Top right **\u22ee \u2192 Repositories**, paste `https://github.com/andlo/haos-ovos-addons`, **Add**.\n3. The add-ons below now appear in the store. You don't need all of them \u2014 see \"Which add-ons do I actually need?\" below to pick."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-03T19:00:21Z",
    "last_updated": "2026-08-30T19:47:05Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-haos-ovos-skills",
    "skill_id": null,
    "name": "haos-ovos-skills",
    "description": "Deferred: a HAOS Supervisor add-on running full OVOS skills in a single container. Not yet built.",
    "examples": [],
    "tags": [
      "deferred",
      "home-assistant",
      "openvoiceos",
      "wip"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/haos-ovos-skills/master/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/andlo/haos-ovos-skills",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-03T19:01:19Z",
    "last_updated": "2026-08-04T09:53:02Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-audio-binary-protocol",
    "skill_id": null,
    "name": "hivemind-audio-binary-protocol",
    "description": "Audio binary protocol plugin for hivemind-core: enables remote wake word, STT, and TTS via binary audio streaming",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "plugin",
      "protocol",
      "python",
      "stt",
      "tts",
      "wakeword"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-audio-binary-protocol",
    "package_name": "hivemind-audio-binary-protocol",
    "pypi_version": "2.1.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind-audio-binary-protocol\n\nYou also need OVOS STT, TTS, VAD, and WakeWord plugins. Install them as you would in a\nstandard OVOS setup:\n\npip install ovos-stt-plugin-server ovos-tts-plugin-piper ovos-vad-plugin-silero \\\n            ovos-ww-plugin-precise-lite"
      },
      {
        "heading": "Configuration reference",
        "content": "The plugin's config block mirrors the OVOS plugin config convention. Each sub-plugin\n(`stt`, `tts`, `vad`) takes its standard OVOS config:\n\n| Key | Description |\n|---|---|\n| `stt` | STT plugin config. `module` selects the OVOS STT plugin. |\n| `tts` | TTS plugin config. `module` selects the OVOS TTS plugin. |\n| `vad` | VAD plugin config. `module` selects the OVOS VAD plugin. |\n| `wake_word` | WakeWord name (key into `hotwords`). |\n| `hotwords` | Dict of wakeword configurations, keyed by wakeword name. |\n| `utterance_transformers` | List of OVOS utterance transformer plugin names. |\n| `dialog_transformers` | List of OVOS dialog transformer plugin names. |\n| `metadata_transformers` | List of OVOS metadata transformer plugin names. |\n| `audio_transformers` | List of OVOS audio transformer plug\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-24T10:23:15Z",
    "last_updated": "2026-03-04T19:09:21.305984Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-HiveMind-cli",
    "skill_id": null,
    "name": "HiveMind-cli",
    "description": "Terminal client for HiveMind \u2014 type utterances and inspect the bus from the command line, no audio hardware",
    "examples": [],
    "tags": [
      "accessibility",
      "chat",
      "cli",
      "command-line",
      "command-line-interface",
      "hivemind",
      "mycroft",
      "networking",
      "openvoiceos",
      "ovos",
      "remote-cli",
      "terminal",
      "websocket"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-cli",
    "package_name": "HiveMind-cli",
    "pypi_version": "0.4.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 7,
    "forks": 7,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install HiveMind-cli\n\nFrom source:\n\ngit clone https://github.com/JarbasHiveMind/HiveMind-cli\ncd HiveMind-cli\npip install -e .\n\nHiveMind CLI tracks the HiveMind bus-client 2.x stack (`ovos-bus-client>=2.0`).\n`pyproject.toml` is the single source of truth for dependencies. There is no\n`requirements.txt`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-02-01T17:44:34Z",
    "last_updated": "2020-06-10T03:30:50.531861Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-HiveMind-community-docs",
    "skill_id": null,
    "name": "HiveMind-community-docs",
    "description": "Community documentation for the HiveMind distributed voice-assistant mesh",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-community-docs",
    "package_name": null,
    "pypi_version": null,
    "license": "CC0-1.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 3,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-10-13T23:01:38Z",
    "last_updated": "2026-10-11T17:29:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-HiveMind-core",
    "skill_id": null,
    "name": "HiveMind-core",
    "description": "Central HiveMind hub server: connects satellite devices and AI agents to an OVOS instance over an encrypted mesh protocol",
    "examples": [],
    "tags": [
      "hivemind",
      "mesh",
      "openvoiceos",
      "ovos",
      "protocol",
      "python",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-core",
    "package_name": "hivemind-core",
    "pypi_version": "4.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 16,
    "forks": 1,
    "open_issues": 11,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Protocol Configuration",
        "content": "HiveMind Core supports a configuration file. This lets you define server settings without long command-line arguments.\n\n> The configuration file is stored at `~/.config/hivemind-core/server.json`\n\nThe default configuration:\n\n{\n  \"agent_protocol\": {\n    \"module\": \"hivemind-ovos-agent-plugin\",\n    \"hivemind-ovos-agent-plugin\": {\n      \"host\": \"127.0.0.1\",\n      \"port\": 8181\n    }\n  },\n  \"binary_protocol\": {\n    \"module\": null\n  },\n  \"network_protocol\": {\n    \"hivemind-websocket-plugin\": {\n      \"host\": \"0.0.0.0\",\n      \"port\": 5678\n    },\n    \"hivemind-http-plugin\": {\n      \"host\": \"0.0.0.0\",\n      \"port\": 5679\n    }\n  },\n  \"policy\": {\n    \"chain\": [\n      {\"module\": \"hivemind-ovos-agent-policy\"}\n    ]\n  },\n  \"database\": {\n    \"module\": \"hivemind-sqlite-db-plugin\",\n    \"hivemind-sqlite-db-pl\u2026"
      },
      {
        "heading": "Installation",
        "content": "pip install --pre hivemind-core\n\nhivemind-core is published as pre-releases, so pass `--pre`. Without it, pip installs\nthe last stable release, 4.0.0, and its dependencies. That release predates the\nprotocol v3 (Noise) handshake these docs describe and lacks commands such as\n`reset-noise-pin` and `derive-psk`. With uv, the same install is\n`uv pip install --prerelease=allow hivemind-core`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-20T20:28:54Z",
    "last_updated": "2026-01-13T06:01:56.116889Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-docker",
    "skill_id": null,
    "name": "hivemind-docker",
    "description": "Docker/Podman compose setup for running a HiveMind hub or node alongside an OVOS instance",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-docker",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 3,
    "forks": 1,
    "open_issues": 11,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Getting Started",
        "content": "### 1. Clone the Repository\nFirst, grab this repository from GitHub like a honeybee grabbing nectar:\n\ngit clone https://github.com/JarbasHiveMind/hivemind-docker.git\ncd hivemind-docker\n\n### 2. Configure Your Environment\nCopy the documented template and fill in real values (`compose/.env-example` explains every variable):\n\ncp compose/.env-example compose/.env\n\nFeel free to use \"password123\" if you enjoy living dangerously. (Don\u2019t do this. Seriously.)\n\nThere is one compose file per deployment under `compose/`:\n\n| File | Deployment |\n| ---- | ---------- |\n| `docker-compose.yml` | the hub \u2014 `hivemind-listener` + an admin `hivemind-cli` |\n| `docker-compose.satellite.yml` | a voice satellite pointed at a hub, with its own cli |\n| `docker-compose.chatroom.yml` | the Flask chatroom bridge |\n| `doc\u2026"
      },
      {
        "heading": "Configuration",
        "content": "Defaults are defined in `docker-bake.hcl` and `scripts/bake.sh`:\n\n- `REGISTRY` (default `docker.io/smartgic`)\n- `TAG` and `VERSION` (default `alpha`)\n- `LATEST_TAG` (default `latest`, only applied when `TAG=stable`)\n- `CHANNEL` (default `alpha`): which `constraints-<channel>.txt` pins the installs\n- `OVOS_RELEASES_REF` (default `main`): git ref of ovos-releases to take the constraints from\n- `PLATFORMS` (default `linux/amd64,linux/arm64`)\n- `UV_PRERELEASE` (default `allow`): uv prerelease policy (`disallow` outside alpha)\n- `MIRROR_REGISTRY` (default empty; CI uses `ghcr.io/jarbashivemind/hivemind-docker`)\n- `CACHE_REPO`/`CACHE_TO`: GHCR build cache (`hivemind-docker-cache`); leave `CACHE_TO` empty locally\n- `ENSURE_BINFMT` (default `auto`, set `true` to force or `false` to skip)\n- `BUILDE\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-09-10T23:05:41Z",
    "last_updated": "2026-11-12T01:46:12Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-homeassistant",
    "skill_id": null,
    "name": "hivemind-homeassistant",
    "description": "Home Assistant integration for connecting to an OVOS instance via HiveMind for system-level control",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/JarbasHiveMind/hivemind-homeassistant/dev/custom_components/hivemind/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-homeassistant",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### HACS (custom repository)\n\n1. Add `https://github.com/JarbasHiveMind/hivemind-homeassistant` as a custom\n   repository (category *Integration*).\n2. Install **HiveMind**.\n3. Restart Home Assistant.\n\n### Manual\n\n1. Copy the `hivemind` folder into your Home Assistant\n   `custom_components` directory:\n\n   mkdir -p /config/custom_components\n   cp -r custom_components/hivemind /config/custom_components/\n\n2. Restart Home Assistant.\n\n### Prerelease requirement\n\nThis integration depends on prerelease packages. Its dependency closure pulls in\n`poorman-handshake`, whose required version is a prerelease, so the integration\nmust be installed in an environment where prerelease resolution is enabled. A\nstock Home Assistant add flow, or a plain `pip install` that does not enable\nprereleases, fails to r\u2026"
      },
      {
        "heading": "Configuration fields",
        "content": "The config flow asks for these fields when you add the integration:\n\n| Field | Default | Description |\n| --- | --- | --- |\n| `device_type` | `voice_assistant` | Which OVOS capabilities to expose (see below). |\n| `name` | n/a | Friendly name for the device in Home Assistant. |\n| `host` | n/a | HiveMind hub address \u2014 a bare hostname/IP (e.g. `192.168.1.10`) or a `ws://`/`wss://` URL to force the scheme. |\n| `port` | `5678` | HiveMind WebSocket port; a separate field from `host`. |\n| `access_key` | n/a | HiveMind client access key. |\n| `password` | n/a | HiveMind client password. |\n| `site_id` | empty | Optional OVOS site id; leave blank if you have one hub. |\n| `allow_self_signed` | `false` | Accept a self-signed TLS certificate. |\n\n### Device types\n\nThe `device_type` field controls which pl\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-26T18:29:10Z",
    "last_updated": "2026-10-11T01:15:27Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-http-protocol",
    "skill_id": null,
    "name": "hivemind-http-protocol",
    "description": "REST/HTTP network protocol plugin for hivemind-core \u2014 alternative transport for message exchange",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "plugin",
      "protocol",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-http-protocol",
    "package_name": "hivemind-http-protocol",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind-http-protocol"
      },
      {
        "heading": "Configuration reference",
        "content": "| Key | Default | Description |\n|---|---|---|\n| `host` | `0.0.0.0` | Bind address. |\n| `port` | `5679` | Listen port. |\n| `ssl` | `false` | Enable TLS. |\n| `cert_dir` | `$XDG_DATA_HOME/hivemind` | Directory for TLS cert/key files. |\n| `cert_name` | `hivemind` | Base filename for cert and key. |\n| `max_undelivered` | `256` | Frames held per client between polls. The oldest is dropped when the cap is reached. |\n| `undelivered_ttl` | `300` | Seconds a client can stop polling before its held frames are discarded. Keep it at least ten times the poll interval: a later poll finds the queue gone, and under protocol v3 the client must reconnect. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-07T04:05:28Z",
    "last_updated": "2025-01-15T20:38:13.226819Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-HiveMind-matrix-bridge",
    "skill_id": null,
    "name": "HiveMind-matrix-bridge",
    "description": "Matrix bridge for HiveMind: relay messages between a Matrix room and a HiveMind hub",
    "examples": [],
    "tags": [
      "bridge",
      "hivemind",
      "matrix",
      "ovos",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-matrix-bridge",
    "package_name": "HiveMind-matrix-bridge",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install git+https://github.com/JarbasHiveMind/HiveMind-matrix-bridge\n\nOr from a checkout:\n\ngit clone https://github.com/JarbasHiveMind/HiveMind-matrix-bridge\ncd HiveMind-matrix-bridge\npip install .\n\nThis installs the `HiveMind-matrix` console command."
      },
      {
        "heading": "Configuration",
        "content": "`HiveMind-matrix run` options:\n\n| Option | Description | Default |\n| --- | --- | --- |\n| `--botname` | Mention prefix that triggers the bot. If omitted, the bridge answers every message in the room. | none |\n| `--matrixtoken` | Matrix access token for the bot account | none |\n| `--matrixhost` | Matrix homeserver URL | `https://matrix.org` |\n| `--room` | Room alias to join | `#hivemind-bots:matrix.org` |\n| `--key` | HiveMind access key | read from identity file |\n| `--password` | HiveMind password | read from identity file |\n| `--host` | HiveMind host (a `ws://` prefix is added if no scheme) | read from identity file |\n| `--port` | HiveMind port | `5678` |\n\nWhen `--key/--password/--host` are omitted, the bridge reads them from the stored `NodeIdentity`. If none of the three are available, t\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-08-09T00:00:25Z",
    "last_updated": "2025-02-07T14:34:29.307816Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-media-player",
    "skill_id": null,
    "name": "hivemind-media-player",
    "description": "HiveMind satellite that turns any device into a remotely controlled OVOS media player",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "plugin",
      "python",
      "satellite"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-media-player",
    "package_name": "hivemind-player-protocol",
    "pypi_version": "0.1.2a2",
    "license": null,
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind-player-protocol\n\nOptional extras (VLC, MPV backends):\n\npip install \"hivemind-player-protocol[extras]\"\n\nOr from source:\n\ngit clone https://github.com/JarbasHiveMind/hivemind-media-player\ncd hivemind-media-player\npip install -e .\n\n### Dependencies\n\nThe whole stack rides the **`ovos-bus-client` 2.x line** (HiveMind core 4.6.x\nrequires it). That line, and the OVOS components updated to ride it\n(`ovos-audio`, `ovos-media`, `ovos-plugin-manager`, `ovos-workshop`), are currently\npublished as **prereleases**.\n\n`pyproject.toml` pins each dependency to its *prerelease floor* (for example\n`ovos-bus-client>=2.0.0a3`). A plain `pip install` then resolves the right\nversions. **No `--pre` flag is needed.** Do not add `--pre`. The floor pins\nopt into the prereleases, package by packag\u2026"
      },
      {
        "heading": "1. Configure hivemind-core",
        "content": "Edit `~/.config/hivemind-core/server.json` on the player device:\n\n{\n  \"agent_protocol\": {\n    \"module\": \"hivemind-player-agent-plugin\",\n    \"hivemind-player-agent-plugin\": {}\n  }\n}"
      },
      {
        "heading": "2. Configure TTS and playback",
        "content": "Edit `~/.config/mycroft/mycroft.conf` on the same device: `tts` configures\nthe embedded `ovos-audio` (TTS only), `media` configures the embedded\n`ovos-media` playback backends.\n\n{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-server\"\n  },\n  \"media\": {\n    \"preferred_audio_services\": [\"vlc\"],\n    \"audio_players\": {\n      \"vlc\": {\n        \"module\": \"ovos-media-audio-plugin-vlc\",\n        \"aliases\": [\"VLC\"],\n        \"active\": true\n      }\n    }\n  }\n}\n\nSee [docs/configuration.md](docs/configuration.md) for the full reference."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-14T22:56:03Z",
    "last_updated": "2026-09-23T03:12:31.779880Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-mic-satellite",
    "skill_id": null,
    "name": "hivemind-mic-satellite",
    "description": "Lightweight HiveMind microphone satellite \u2014 streams audio to the hive for server-side STT/TTS (ideal for low-power devices)",
    "examples": [],
    "tags": [
      "hivemind",
      "microphone",
      "openvoiceos",
      "ovos",
      "raspberry-pi",
      "satellite",
      "vad",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-mic-satellite",
    "package_name": "hivemind-mic-satellite",
    "pypi_version": "0.7.1",
    "license": null,
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind-mic-satellite\n\nRequires Python 3.10 or later.\n\n---"
      },
      {
        "heading": "Minimal configuration",
        "content": "The satellite shares the standard OpenVoiceOS config file `~/.config/mycroft/mycroft.conf`. At minimum you need a microphone plugin and a VAD plugin:\n\n{\n  \"microphone\": {\n    \"module\": \"ovos-microphone-plugin-alsa\"\n  },\n  \"VAD\": {\n    \"module\": \"ovos-vad-plugin-silero\"\n  }\n}\n\nSee [docs/configuration.md](docs/configuration.md) for all options, plugin selection, and audio device tuning.\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-24T05:30:50Z",
    "last_updated": "2025-07-02T15:25:03.138216Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-mqtt-protocol",
    "skill_id": null,
    "name": "hivemind-mqtt-protocol",
    "description": "MQTT broker-mediated network protocol plugin for hivemind-core \u2014 ideal for IoT/sensor deployments",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "plugin",
      "protocol",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-mqtt-protocol",
    "package_name": "hivemind-mqtt-protocol",
    "pypi_version": "0.3.0a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration keys",
        "content": "| Key | Default | Description |\n|---|---|---|\n| `broker_host` | `localhost` | MQTT broker hostname or IP |\n| `broker_port` | `1883` | Broker port (8883 for TLS) |\n| `broker_username` | none | MQTT broker username for the master |\n| `broker_password` | none | MQTT broker password for the master |\n| `tls` | `false` | Enable TLS |\n| `tls_ca_certs` | none | Path to CA bundle |\n| `tls_certfile` | none | Path to client cert (mTLS) |\n| `tls_keyfile` | none | Path to client key (mTLS) |\n| `topic_prefix` | `hivemind` | Topic namespace prefix |\n| `topic_namespace` | \u2014 | Optional topic namespace, so a broker ACL can grant one listener its own topic tree |\n| `qos` | `1` | Default MQTT QoS for control frames |\n| `idle_timeout` | `300` | Seconds of silence before evicting a peer (0 = off) |\n| `client_id\u2026"
      },
      {
        "heading": "Install",
        "content": "pip install hivemind-mqtt-protocol"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-04T18:25:55Z",
    "last_updated": "2026-11-02T18:52:20.032799Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "JarbasHiveMind-hivemind-ovos-agent-plugin",
    "skill_id": null,
    "name": "hivemind-ovos-agent-plugin",
    "description": "OVOS agent protocol plugin for hivemind-core: bridges HiveMind client messages to the OpenVoiceOS message bus",
    "examples": [],
    "tags": [
      "agent",
      "hivemind",
      "openvoiceos",
      "ovos",
      "plugin",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-ovos-agent-plugin",
    "package_name": "hivemind-ovos-agent-plugin",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 2,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install hivemind-ovos-agent-plugin\n\nOr install it from source:\n\ngit clone https://github.com/JarbasHiveMind/hivemind-ovos-agent-plugin\ncd hivemind-ovos-agent-plugin\npip install -e ."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-18T15:26:42Z",
    "last_updated": "2026-05-18T15:34:44.205339Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-persona-agent-plugin",
    "skill_id": null,
    "name": "hivemind-persona-agent-plugin",
    "description": "ovos-persona (LLM/solver) agent protocol plugin for HiveMind-core \u2014 streaming natural_language_query",
    "examples": [],
    "tags": [
      "agent",
      "hivemind",
      "llm",
      "ovos",
      "persona",
      "plugin",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-persona-agent-plugin",
    "package_name": "hivemind-persona-agent-plugin",
    "pypi_version": "0.0.1",
    "license": null,
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "uv pip install --prerelease=allow hivemind-core hivemind-persona-agent-plugin\n\nThe plugin needs a hivemind-core alpha, so the install allows prereleases. A stable\n`hivemind-core` resolves to 4.0.0, which conflicts with the plugin.\n\nOr from source:\n\ngit clone https://github.com/JarbasHiveMind/hivemind-persona-agent-plugin\ncd hivemind-persona-agent-plugin\nuv pip install --prerelease=allow hivemind-core -e ."
      },
      {
        "heading": "2. Configure hivemind-core",
        "content": "Edit `~/.config/hivemind-core/server.json`:\n\n{\n  \"agent_protocol\": {\n    \"module\": \"hivemind-persona-agent-plugin\",\n    \"hivemind-persona-agent-plugin\": {\n      \"persona\": \"~/.config/ovos_persona/persona.json\"\n    }\n  }\n}\n\nThe `persona` value can be either:\n- a path to a persona JSON file (string, `~` expands), or\n- an inline persona config dict."
      },
      {
        "heading": "Configuration",
        "content": "All keys live under `\"hivemind-persona-agent-plugin\"` in `server.json`.\n\n| Key       | Type           | Required | Description                                          |\n|-----------|----------------|----------|------------------------------------------------------|\n| `persona` | string or dict | yes      | Path to a persona JSON file, or an inline persona config. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-05T18:49:52Z",
    "last_updated": "2026-06-05T20:31:17.123087Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-plugin-manager",
    "skill_id": null,
    "name": "hivemind-plugin-manager",
    "description": "Plugin manager and abstract interfaces for hivemind-core: database, network protocol, and agent protocol backends",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "plugin",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-plugin-manager",
    "package_name": "hivemind-plugin-manager",
    "pypi_version": "0.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install hivemind-plugin-manager"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-28T15:18:52Z",
    "last_updated": "2026-05-18T19:25:54.867366Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-test-harness",
    "skill_id": null,
    "name": "hivemind-test-harness",
    "description": "Central integration test suite for HiveMind: topology, stress, and cross-repo scenarios built on hivescope",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-test-harness",
    "package_name": "hivemind-test-harness",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 9,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install \"hivescope @ git+https://github.com/JarbasHiveMind/hivescope@dev\"\npip install -e \".[dev]\"\n\nFor skill e2e tests (requires a live OVOS installation):\n\npip install -e \".[dev,ovos]\"\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-14T14:57:24Z",
    "last_updated": "2026-10-31T03:32:07Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "JarbasHiveMind-HiveMind-voice-relay",
    "skill_id": null,
    "name": "HiveMind-voice-relay",
    "description": "HiveMind voice relay \u2014 local wake word, remote STT/TTS via the hivemind-audio-binary-protocol plugin",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "protocol",
      "satellite",
      "speech-to-text",
      "text-to-speech",
      "voice-assistant",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-voice-relay",
    "package_name": "HiveMind-voice-relay",
    "pypi_version": "1.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install HiveMind-voice-relay\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "Voice Relay reads `~/.config/mycroft/mycroft.conf` (standard OVOS config).\n\n| Plugin type | Config key | Default | Required |\n|---|---|---|---|\n| Microphone | `microphone.module` | `ovos-microphone-plugin-alsa` | Yes |\n| VAD | `listener.VAD.module` | `ovos-vad-plugin-silero` | Yes |\n| Wake word | `listener.wake_word` | `hey_mycroft` | Yes |\n| G2P | `tts.g2p_module` | n/a | No |\n| Media Playback | `Audio.backends` | n/a | No |\n| OCP Plugins | n/a | n/a | No |\n| Dialog Transformers | n/a | n/a | No (server-side only) |\n| Audio Transformers | `audio_transformers` | n/a | No |\n| Utterance Transformers | `utterance_transformers` | n/a | No |\n| TTS Transformers | `tts_transformers` | n/a | No |\n| STT transport | `stt_transport` | `b64` | No |\n| TTS transport | `tts_transport` | `b64` | No |\n| PH\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-23T15:32:00Z",
    "last_updated": "2024-12-23T03:16:08.409504Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-HiveMind-voice-sat",
    "skill_id": null,
    "name": "HiveMind-voice-sat",
    "description": "OVOS voice satellite for HiveMind \u2014 full on-device voice stack (microphone, VAD, wake word, STT, TTS)",
    "examples": [],
    "tags": [
      "hivemind",
      "mycroft",
      "openvoiceos",
      "ovos",
      "raspberry-pi",
      "satellite",
      "speech-to-text",
      "stt",
      "text-to-speech",
      "vad",
      "voice-assistant",
      "voice-chat",
      "voice-commands",
      "voice-control",
      "voice-recognition",
      "wake-word",
      "wake-word-detection"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/HiveMind-voice-sat",
    "package_name": "HiveMind-voice-sat",
    "pypi_version": "2.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 23,
    "forks": 13,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre HiveMind-voice-sat"
      },
      {
        "heading": "Minimal configuration",
        "content": "The satellite reads `~/.config/mycroft/mycroft.conf` (standard OVOS config).\nOverride STT, TTS, VAD, and wakeword plugins there:\n\n{\n  \"listener\": {\n    \"VAD\": {\n      \"module\": \"ovos-vad-plugin-silero\"\n    },\n    \"wake_word\": \"hey_mycroft\",\n    \"hey_mycroft\": {\n      \"module\": \"ovos-ww-plugin-vosk\"\n    }\n  },\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-server\",\n    \"ovos-stt-plugin-server\": { \"url\": \"https://stt.openvoiceos.org/stt\" }\n  },\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-server\",\n    \"ovos-tts-plugin-server\": { \"host\": \"https://tts.openvoiceos.org\" }\n  }\n}\n\nAll plugin slots are swappable via [ovos-plugin-manager](https://github.com/OpenVoiceOS/ovos-plugin-manager). See [docs/configuration.md](docs/configuration.md) for the full reference."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-02-01T17:38:05Z",
    "last_updated": "2024-11-29T11:45:43.329934Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-websocket-client",
    "skill_id": null,
    "name": "hivemind-websocket-client",
    "description": "Python client library for HiveMind \u2014 encrypted, routed bus client with WebSocket, HTTP, async, and MQTT transports (the library for building satellites)",
    "examples": [],
    "tags": [
      "bus-client",
      "client-library",
      "hivemind",
      "mqtt",
      "openvoiceos",
      "ovos",
      "protocol",
      "python",
      "satellite",
      "voice-assistant",
      "websocket"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/JarbasHiveMind/hivemind-websocket-client/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-websocket-client",
    "package_name": "hivemind_bus_client",
    "pypi_version": "0.4.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 7,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind_bus_client\n\nAsync client (asyncio-native applications):\n\npip install \"hivemind_bus_client[async]\"\n\nVerify:\n\nhivemind-client --help"
      },
      {
        "heading": "2. Configure the satellite",
        "content": "On the satellite machine:\n\nhivemind-client set-identity \\\n  --key   \"your-access-key\" \\\n  --password \"your-password\" \\\n  --host  ws://192.168.1.10 \\\n  --port  5678 \\\n  --siteid living-room\n\nCredentials are saved to `~/.config/hivemind/_identity.json` and are read automatically by the client."
      },
      {
        "heading": "NodeIdentity() without a name still loads the shared ~/.config/hivemind/_identity.json",
        "content": "print(identity.access_key)\nprint(identity.default_master)\n\nidentity.add_trusted_key(\"home-hub\", \"-----BEGIN PUBLIC KEY-----\\n...\")\nidentity.save()\n\nSee [Identity & Credentials](docs/identity.md) for the full field reference.\n\n## CLI"
      },
      {
        "heading": "Forget the pinned key of a master that was reinstalled",
        "content": "hivemind-client forget-server --host 192.168.1.10 --port 5678\n\n## Troubleshooting\n\n**`RuntimeError: NodeIdentity not set`**: Run `hivemind-client set-identity` or pass `key`, `password`, and `host` to the constructor.\n\n**`RuntimeError: timed out waiting for handshake`**: The hub is unreachable or the port is wrong. Verify the hub is running (`hivemind-core listen`) and the firewall allows port 5678. Try `hivemind-client ping` first.\n\n**`got encrypted message, but could not decrypt!`**: The access key or password does not match what was registered on the hub. Re-run `hivemind-core add-client` and update the satellite identity.\n\n**`server Noise static key CHANGED`**: The master is answering with a different encryption key than the one this node pinned. If you reinstalled or restored the mast\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-04-22T18:06:50Z",
    "last_updated": "2025-12-18T08:59:26.331086Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivemind-websocket-protocol",
    "skill_id": null,
    "name": "hivemind-websocket-protocol",
    "description": "WebSocket transport plugin for hivemind-core \u2014 the reference network protocol implementation",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "plugin",
      "protocol",
      "python",
      "websocket"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivemind-websocket-protocol",
    "package_name": "hivemind-websocket-protocol",
    "pypi_version": "0.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivemind-websocket-protocol"
      },
      {
        "heading": "Configuration reference",
        "content": "| Key | Env var | Default | Description |\n|---|---|---|---|\n| `host` | n/a | `0.0.0.0` | Bind address. Falls back to `identity.default_master`. |\n| `port` | n/a | `5678` | Listen port. Falls back to `identity.default_port`. |\n| `ssl` | n/a | `false` | Enable TLS. |\n| `cert_dir` | n/a | `$XDG_DATA_HOME/hivemind` | Directory for TLS cert and key files. |\n| `cert_name` | n/a | `hivemind` | Base filename. It produces `<name>.crt` and `<name>.key`. |\n| `trusted_proxy_cidrs` | `HIVEMIND_TRUSTED_PROXY_CIDRS` | _(none)_ | Comma-separated CIDRs of trusted proxy addresses. |\n| `trusted_client_ip_headers` | `HIVEMIND_TRUSTED_CLIENT_IP_HEADERS` | `x-forwarded-for,x-real-ip` | Ordered list of headers to inspect for real client IP. |\n| `websocket_ping_interval` | `HIVEMIND_WEBSOCKET_PING_INTERVAL` | `30\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-28T15:52:55Z",
    "last_updated": "2025-04-26T18:16:42.842189Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-hivescope",
    "skill_id": null,
    "name": "hivescope",
    "description": "Reusable pytest E2E testing library for HiveMind protocol implementations",
    "examples": [],
    "tags": [
      "hivemind",
      "ovos",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/hivescope",
    "package_name": "hivescope",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install hivescope\n\nWith OVOS skill-level testing (live MiniCroft backend):\n\npip install \"hivescope[ovos]\"\n\nTo track `dev` instead of the last release:\n\npip install \"hivescope @ git+https://github.com/JarbasHiveMind/hivescope@dev\"\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "| Option | Default | Purpose |\n|---|---|---|\n| `use_loopback=True` | `False` | Pass to `add_master()` to use a loopback network transport instead of the default in-process transport |\n| `[ovos]` extra | not installed | Enables `OvoscopeAgentProtocol` backed by a live MiniCroft instance |\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-07T11:16:13Z",
    "last_updated": "2026-05-13T15:19:34.884519Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-holidays",
    "skill_id": "ovos-skill-holidays.andlo",
    "name": "Holidays",
    "description": "Public holidays, Easter, and calendar-date math. Fully offline, computed live via the holidays library.",
    "examples": [
      "is today a holiday",
      "when is christmas",
      "how many days until easter",
      "what day of the week is march 3rd"
    ],
    "tags": [
      "holidays",
      "calendar",
      "date",
      "easter",
      "daily"
    ],
    "category": "Daily",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-holidays/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-holidays",
    "package_name": "ovos-skill-holidays",
    "pypi_version": "0.0.3",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-holidays"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "kab"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Helligdage",
        "description": "Helligdage, p\u00e5ske og datoberegning. Fuldt offline, beregnet direkte via holidays-biblioteket.",
        "examples": [
          "er i dag en helligdag",
          "hvorn\u00e5r er det jul",
          "hvor mange dage er der til p\u00e5ske",
          "hvilken ugedag er 3. marts"
        ]
      },
      "de-de": {
        "name": "Feiertage",
        "description": "Feiertage, Ostern und Datumsberechnung. Vollstandig offline, live berechnet uber die holidays-Bibliothek.",
        "examples": [
          "ist heute ein feiertag",
          "wann ist weihnachten",
          "wie viele tage sind es bis ostern",
          "welcher wochentag ist der 3. m\u00e4rz"
        ]
      },
      "es-es": {
        "name": "D\u00edas festivos",
        "description": "D\u00edas festivos, Pascua y c\u00e1lculo de fechas. Totalmente sin conexi\u00f3n, calculado en vivo mediante la biblioteca holidays.",
        "examples": [
          "es hoy festivo",
          "cu\u00e1ndo es navidad",
          "cu\u00e1ntos d\u00edas faltan para pascua",
          "qu\u00e9 d\u00eda de la semana es el 3 de marzo"
        ]
      },
      "fr-fr": {
        "name": "Jours f\u00e9ri\u00e9s",
        "description": "Jours f\u00e9ri\u00e9s, P\u00e2ques et calcul de dates. Enti\u00e8rement hors ligne, calcul\u00e9 en direct via la biblioth\u00e8que holidays.",
        "examples": [
          "est-ce que c'est f\u00e9ri\u00e9 aujourd'hui",
          "quand est no\u00ebl",
          "combien de jours avant p\u00e2ques",
          "quel jour de la semaine est le 3 mars"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-18T14:52:37Z",
    "last_updated": "2026-09-30T22:02:48.363380Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-holidays.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:57:54+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:35:17+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T08:59:13+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-horoscope-readings",
    "skill_id": "ovos-skill-horoscope-readings.andlo",
    "name": "Horoscope Readings (provider)",
    "description": "Reads daily zodiac horoscopes aloud. Provider for ovos-common-reading-pipeline-plugin - no standalone voice interface.",
    "examples": [
      "Tell me a horoscope about leo",
      "Read me a horoscope about taurus"
    ],
    "tags": [
      "entertainment",
      "horoscope",
      "astrology",
      "zodiac",
      "provider"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-horoscope-readings/main/book-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-horoscope-readings",
    "package_name": "ovos-skill-horoscope-readings",
    "pypi_version": "0.1.5",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-horoscope-readings ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Horoskop (udbyder)",
        "description": "L\u00e6ser dagens stjernetegns-horoskop h\u00f8jt. Udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "L\u00e6s horoskopet for l\u00f8ven",
          "L\u00e6s v\u00e6dderens horoskop"
        ]
      },
      "de-de": {
        "name": "Horoskop (Anbieter)",
        "description": "Liest das t\u00e4gliche Sternzeichen-Horoskop vor. Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle."
      },
      "es-es": {
        "name": "Hor\u00f3scopo (proveedor)",
        "description": "Lee en voz alta el hor\u00f3scopo diario del zod\u00edaco. Proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente."
      },
      "fr-fr": {
        "name": "Horoscope (fournisseur)",
        "description": "Lit \u00e0 voix haute l'horoscope quotidien du zodiaque. Fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome."
      },
      "it-it": {
        "name": "Oroscopo (fornitore)",
        "description": "Legge ad alta voce l'oroscopo zodiacale del giorno. Fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma."
      },
      "nl-nl": {
        "name": "Horoscoop (aanbieder)",
        "description": "Leest de dagelijkse sterrenbeeldhoroscoop hardop voor. Aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface."
      },
      "pt-pt": {
        "name": "Hor\u00f3scopo (fornecedor)",
        "description": "L\u00ea em voz alta o hor\u00f3scopo di\u00e1rio do zod\u00edaco. Fornecedor para ovos-common-reading-pipeline-plugin. Sem interface de voz aut\u00f3noma."
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-22T15:31:53Z",
    "last_updated": "2026-10-01T10:34:03.656014Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-horoscope-readings.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.5",
          "tested_at": "2026-10-04T10:58:07+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 2/2 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.1.5",
          "tested_at": "2026-10-04T10:35:28+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.5",
          "tested_at": "2026-10-30T08:59:26+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "RaptorBlingx-HumanEnerDIA",
    "skill_id": null,
    "name": "HumanEnerDIA",
    "description": "HumanEnerDIA is a comprehensive energy monitoring and analytics platform designed for real-world industrial facilities. It provides ISO 50001-compliant energy performance monitoring, machine learning-powered insights, and voice interface capabilities.",
    "examples": [],
    "tags": [
      "docker-compose",
      "energy-consumption",
      "european-union",
      "fastapi",
      "forecasting",
      "grafana-dashboard",
      "javascript",
      "machine-learning",
      "nodered",
      "ovos",
      "ovos-skills",
      "postgresql",
      "prediction",
      "python",
      "rasa-chatbot"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/RaptorBlingx/HumanEnerDIA/main/analytics/static/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/RaptorBlingx/HumanEnerDIA",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "RaptorBlingx",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "**Option 1: Guided Setup (Recommended)**"
      },
      {
        "heading": "Clone and configure",
        "content": "git clone https://github.com/RaptorBlingx/HumanEnerDIA.git humanergy\ncd humanergy\ncp .env.example .env"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-10-08T11:03:44Z",
    "last_updated": "2026-06-23T08:37:50Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "thalovant-thalovant-skill-interaction-modes",
    "skill_id": "thalovant-skill-interaction-modes",
    "name": "Interaction Modes",
    "description": "Temporary client-scoped modes such as party mode for Thalovant hubs.",
    "examples": [
      "Turn on party mode.",
      "Back to normal.",
      "What mode are we in?"
    ],
    "tags": [
      "mode",
      "party",
      "session"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/thalovant/.github/main/profile/assets/thalovant-logo-light.png",
    "icon_source": "readme",
    "icon_color": null,
    "source": "https://github.com/thalovant/thalovant-skill-interaction-modes",
    "package_name": "thalovant-skill-interaction-modes",
    "pypi_version": "0.1.12",
    "license": "Apache-2.0",
    "archived": false,
    "author": "thalovant",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Open the Thalovant marketplace on your hub and add **Interaction Modes**. Or install it yourself:\n\npip install thalovant-skill-interaction-modes"
      }
    ],
    "languages": [
      "an-es",
      "ar-sa",
      "ast-es",
      "az-az",
      "bg-bg",
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-at",
      "de-ch",
      "de-de",
      "el-gr",
      "en-au",
      "en-ca",
      "en-gb",
      "en-nz",
      "en-us",
      "es-ar",
      "es-co",
      "es-es",
      "es-mx",
      "es-us",
      "et-ee",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-be",
      "fr-ca",
      "fr-ch",
      "fr-fr",
      "gl-es",
      "he-il",
      "hi-in",
      "hr-hr",
      "hu-hu",
      "id-id",
      "it-it",
      "ja-jp",
      "ko-kr",
      "lt-lt",
      "lv-lv",
      "ms-my",
      "nb-no",
      "nl-be",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-ao",
      "pt-br",
      "pt-mz",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sk-sk",
      "sl-si",
      "sv-fi",
      "sv-se",
      "sw-ke",
      "th-th",
      "tr-tr",
      "uk-ua",
      "vi-vn",
      "zh-cn",
      "zh-sg",
      "zh-tw"
    ],
    "locale_content": {
      "an-es": {
        "name": "Modos d'interacci\u00f3n",
        "description": "Encienda u desactiva los modos temporals de client per voz."
      },
      "ar-sa": {
        "name": "\u0623\u0633\u0627\u0644\u064a\u0628 \u0627\u0644\u062a\u0641\u0627\u0639\u0644",
        "description": "\u0642\u0645 \u0628\u062a\u0634\u063a\u064a\u0644 \u0623\u0648 \u0625\u064a\u0642\u0627\u0641 \u0623\u0648\u0636\u0627\u0639 \u0627\u0644\u0639\u0645\u064a\u0644 \u0627\u0644\u0645\u0624\u0642\u062a \u0628\u0635\u0648\u062a"
      },
      "ast-es": {
        "name": "Los modos d'interacci\u00f3n",
        "description": "Enviar o desconectar los modos temporales del cliente por voz."
      },
      "az-az": {
        "name": "\u018flaq\u0259 Modlar\u0131",
        "description": "M\u00fcv\u0259qq\u0259ti m\u00fc\u015ft\u0259ri rejimini s\u0259sl\u0259 a\u00e7\u0131n v\u0259 ya s\u00f6nd\u00fcr\u00fcn."
      },
      "bg-bg": {
        "name": "\u041c\u043e\u0434\u0438 \u043d\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435",
        "description": "\u0412\u043a\u043b\u044e\u0447\u0435\u0442\u0435 \u0438\u043b\u0438 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u0442\u0435 \u0440\u0435\u0436\u0438\u043c\u0430 \u043d\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442 \u0447\u0440\u0435\u0437 \u0433\u043b\u0430\u0441."
      },
      "ca-es": {
        "name": "Modes d'interacci\u00f3",
        "description": "Activar o desactivar els m\u00f2dols de client temporal per veu."
      },
      "cs-cz": {
        "name": "Mody interakce",
        "description": "Vypn\u011bte nebo vypn\u011bte do\u010dasn\u00e9 re\u017eimy klienta hlasem."
      },
      "da-dk": {
        "name": "Interaktionsmodus",
        "description": "T\u00e6nd eller sluk midlertidige klienttilstande med tale."
      },
      "de-at": {
        "name": "Interaktionsweisen",
        "description": "Schalten Sie die tempor\u00e4ren Client-Modus per Stimme ein oder aus."
      },
      "de-ch": {
        "name": "Interaktionsweisen",
        "description": "Schalten Sie die tempor\u00e4ren Client-Modus per Stimme ein oder aus."
      },
      "de-de": {
        "name": "Interaktionsweisen",
        "description": "Schalten Sie die tempor\u00e4ren Client-Modus per Stimme ein oder aus."
      },
      "el-gr": {
        "name": "\u03a4\u03cd\u03c0\u03bf\u03b9 \u03b1\u03bb\u03bb\u03b7\u03bb\u03b5\u03c0\u03af\u03b4\u03c1\u03b1\u03c3\u03b7\u03c2",
        "description": "\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03ae \u03b1\u03c0\u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b9\u03c2 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b5\u03c2 \u03c0\u03c1\u03bf\u03c3\u03c9\u03c1\u03b9\u03bd\u03ce\u03bd \u03c0\u03b5\u03bb\u03b1\u03c4\u03ce\u03bd \u03bc\u03b5 \u03c6\u03c9\u03bd\u03ae."
      },
      "es-ar": {
        "name": "Modos de interacci\u00f3n",
        "description": "Encienda o desactiva los modos temporales de cliente por voz."
      },
      "es-co": {
        "name": "Modos de interacci\u00f3n",
        "description": "Encienda o desactiva los modos temporales de cliente por voz."
      },
      "es-es": {
        "name": "Modos de interacci\u00f3n",
        "description": "Encienda o desactiva los modos temporales de cliente por voz."
      },
      "es-mx": {
        "name": "Modos de interacci\u00f3n",
        "description": "Encienda o desactiva los modos temporales de cliente por voz."
      },
      "es-us": {
        "name": "Modos de interacci\u00f3n",
        "description": "Encienda o desactiva los modos temporales de cliente por voz."
      },
      "et-ee": {
        "name": "Interaktsiooniviisid",
        "description": "L\u00fclita ajutine kliendi re\u017eiim h\u00e4\u00e4lega sisse v\u00f5i v\u00e4lja."
      },
      "eu-es": {
        "name": "Elkarrekintza Modua",
        "description": "Aldi baterako bezero modua ahots bidez aktibatu edo itzali."
      },
      "fa-ir": {
        "name": "\u0631\u0648\u0634 \u0647\u0627\u06cc \u062a\u0639\u0627\u0645\u0644",
        "description": "\u062d\u0627\u0644\u062a \u0645\u0648\u0642\u062a \u0645\u0634\u062a\u0631\u06cc \u0631\u0627 \u0628\u0627 \u0635\u062f\u0627 \u0641\u0639\u0627\u0644 \u06cc\u0627 \u062e\u0627\u0645\u0648\u0634 \u06a9\u0646\u06cc\u062f."
      },
      "fi-fi": {
        "name": "Yhteisty\u00f6muodot",
        "description": "K\u00e4ynnist\u00e4 tai sammuttaa v\u00e4liaikainen asiakastulku \u00e4\u00e4nell\u00e4."
      },
      "fr-be": {
        "name": "Interaction Modes",
        "description": "Active ou desactive les modes temporaires du client par la voix."
      },
      "fr-ca": {
        "name": "Interaction Modes",
        "description": "Active ou desactive les modes temporaires du client par la voix."
      },
      "fr-ch": {
        "name": "Interaction Modes",
        "description": "Active ou desactive les modes temporaires du client par la voix."
      },
      "fr-fr": {
        "name": "Interaction Modes",
        "description": "Active ou desactive les modes temporaires du client par la voix."
      },
      "gl-es": {
        "name": "Modos de interacci\u00f3n",
        "description": "Activa ou desactiva os modos de cliente temporal por voz."
      },
      "he-il": {
        "name": "\u05d0\u05de\u05e6\u05e2\u05d9 \u05d0\u05d9\u05e0\u05d8\u05e8\u05d0\u05e7\u05e6\u05d9\u05d4",
        "description": "\u05ea\u05e4\u05e2\u05d9\u05dc \u05d0\u05d5 \u05ea\u05db\u05d1\u05d4 \u05d0\u05ea \u05de\u05e6\u05d1 \u05d4\u05dc\u05e7\u05d5\u05d7 \u05d4\u05d6\u05de\u05e0\u05d9 \u05d1\u05d0\u05de\u05e6\u05e2\u05d5\u05ea \u05e7\u05d5\u05dc."
      },
      "hi-in": {
        "name": "\u092c\u093e\u0924\u091a\u0940\u0924 \u0915\u0947 \u0924\u0930\u0940\u0915\u0947",
        "description": "\u0905\u0938\u094d\u0925\u093e\u092f\u0940 \u0915\u094d\u0932\u093e\u0907\u0902\u091f \u092e\u094b\u0921 \u0915\u094b \u0906\u0935\u093e\u091c \u0926\u094d\u0935\u093e\u0930\u093e \u091a\u093e\u0932\u0942 \u092f\u093e \u092c\u0902\u0926 \u0915\u0930\u0947\u0902\u0964"
      },
      "hr-hr": {
        "name": "Moda interakcije",
        "description": "Ukloni ili isklju\u010di privremeni re\u017eimi klijenta glasom."
      },
      "hu-hu": {
        "name": "Interakt\u00edv m\u00f3dok",
        "description": "A hangon kereszt\u00fcl kapcsolja vagy kapcsolja be a \u00e1tmeneti \u00fcgyf\u00e9l m\u00f3dokat."
      },
      "id-id": {
        "name": "Modus Interaksi",
        "description": "Pindahkan mode klien sementara ke atau mati dengan suara."
      },
      "it-it": {
        "name": "Modalit\u00e0 di interazione",
        "description": "Accendere o disattivare le modalit\u00e0 temporanee del cliente per voce."
      },
      "ja-jp": {
        "name": "\u76f8\u4e92\u4f5c\u7528\u65b9\u5f0f",
        "description": "\u81e8\u6642\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30e2\u30fc\u30c9\u3092\u97f3\u58f0\u3067\u30aa\u30f3\u307e\u305f\u306f\u30aa\u30d5\u306b\u3057\u307e\u3059"
      },
      "ko-kr": {
        "name": "\uc0c1\ud638 \uc791\uc6a9 \ubc29\uc2dd",
        "description": "\uc74c\uc131\uc73c\ub85c \uc77c\uc2dc\uc801\uc778 \ud074\ub77c\uc774\uc5b8\ud2b8 \ubaa8\ub4dc\ub97c \ucf1c\uac70\ub098 \ub044\uc138\uc694."
      },
      "lt-lt": {
        "name": "Veiksm\u0173 b\u016bdai",
        "description": "\u012ejungti arba i\u0161jungti laikinojo kliento re\u017eimus balso b\u016bdu."
      },
      "lv-lv": {
        "name": "Interakcijas veidi",
        "description": "Atkl\u0101jiet vai izsl\u0113gjiet pagaidu klienta re\u017e\u012bmus ar balsi."
      },
      "ms-my": {
        "name": "Mod interaksi",
        "description": "Matikan atau matikan mod pelanggan sementara melalui suara."
      },
      "nb-no": {
        "name": "Interaksjonsmoder",
        "description": "Sl\u00e5 p\u00e5 eller av med stemme."
      },
      "nl-be": {
        "name": "Interactie-modus",
        "description": "Doe de tijdelijke cli\u00ebntmodus via stem aan of uit."
      },
      "nl-nl": {
        "name": "Interactie-modus",
        "description": "Doe de tijdelijke cli\u00ebntmodus via stem aan of uit."
      },
      "oc-fr": {
        "name": "Mods d'interaccion",
        "description": "Activar o desactivar los m\u00f2des de client temporari per vocala."
      },
      "pl-pl": {
        "name": "Mody interakcji",
        "description": "W\u0142\u0105cz lub wy\u0142\u0105cz tryby czasowego klienta g\u0142osowo."
      },
      "pt-ao": {
        "name": "Modos de intera\u00e7\u00e3o",
        "description": "Ativar ou desativar os modos de cliente tempor\u00e1rio por voz."
      },
      "pt-br": {
        "name": "Modos de intera\u00e7\u00e3o",
        "description": "Ativar ou desativar os modos de cliente tempor\u00e1rio por voz."
      },
      "pt-mz": {
        "name": "Modos de intera\u00e7\u00e3o",
        "description": "Ativar ou desativar os modos de cliente tempor\u00e1rio por voz."
      },
      "pt-pt": {
        "name": "Modos de intera\u00e7\u00e3o",
        "description": "Ativar ou desativar os modos de cliente tempor\u00e1rio por voz."
      },
      "ro-ro": {
        "name": "Moduri de interac\u021biune",
        "description": "Ac\u0163iona\u0163i sau dezactiva\u0163i modul client temporar prin voce."
      },
      "ru-ru": {
        "name": "\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f",
        "description": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0438\u043b\u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043f\u043e \u0433\u043e\u043b\u043e\u0441\u0443."
      },
      "sk-sk": {
        "name": "Mody interakcie",
        "description": "Vypnite alebo vypnite do\u010dasn\u00e9 re\u017eimy klienta hlasom."
      },
      "sl-si": {
        "name": "Re\u0161itve za interakcijo",
        "description": "Za\u010dasni na\u010dini klijenta vklju\u010dite ali izklopite glasovno."
      },
      "sv-fi": {
        "name": "Interaktionsmodi",
        "description": "St\u00e4ll p\u00e5 eller av med r\u00f6st."
      },
      "sv-se": {
        "name": "Interaktionsmodi",
        "description": "St\u00e4ll p\u00e5 eller av med r\u00f6st."
      },
      "sw-ke": {
        "name": "Njia za Maingiliano",
        "description": "Weka au uache njia za mtumiaji wa muda kwa sauti."
      },
      "th-th": {
        "name": "\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e01\u0e32\u0e23\u0e1b\u0e0f\u0e34\u0e2a\u0e31\u0e21\u0e1e\u0e31\u0e19\u0e18\u0e4c",
        "description": "\u0e40\u0e1b\u0e34\u0e14\u0e2b\u0e23\u0e37\u0e2d\u0e1b\u0e34\u0e14\u0e42\u0e2b\u0e21\u0e14\u0e25\u0e39\u0e01\u0e04\u0e49\u0e32\u0e0a\u0e31\u0e48\u0e27\u0e04\u0e23\u0e32\u0e27\u0e14\u0e49\u0e27\u0e22\u0e40\u0e2a\u0e35\u0e22\u0e07"
      },
      "tr-tr": {
        "name": "Etkinlik Modlar\u0131",
        "description": "Ge\u00e7ici istemci modlar\u0131n\u0131 sesle a\u00e7\u0131n veya kapat\u0131n."
      },
      "uk-ua": {
        "name": "\u041c\u043e\u0434\u0438 \u0432\u0437\u0430\u0454\u043c\u043e\u0434\u0456\u0457",
        "description": "\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u0430\u0431\u043e \u0432\u0438\u043a\u043b\u044e\u0447\u0438\u0442\u0438 \u0440\u0435\u0436\u0438\u043c \u0442\u0438\u043c\u0447\u0430\u0441\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u0456\u0454\u043d\u0442\u0430 \u0433\u043e\u043b\u043e\u0441\u043e\u043c."
      },
      "vi-vn": {
        "name": "C\u00e1c ph\u01b0\u01a1ng th\u1ee9c t\u01b0\u01a1ng t\u00e1c",
        "description": "\u0110\u1ed9ng th\u00e1i kh\u00e1ch h\u00e0ng t\u1ea1m th\u1eddi b\u1eadt ho\u1eb7c t\u1eaft b\u1eb1ng gi\u1ecdng n\u00f3i."
      },
      "zh-cn": {
        "name": "\u4e92\u52a8\u65b9\u5f0f",
        "description": "\u901a\u8fc7\u8bed\u97f3\u542f\u52a8\u6216\u5173\u95ed\u4e34\u65f6\u5ba2\u6237\u7aef\u6a21\u5f0f."
      },
      "zh-sg": {
        "name": "\u4e92\u52a8\u65b9\u5f0f",
        "description": "\u901a\u8fc7\u8bed\u97f3\u542f\u52a8\u6216\u5173\u95ed\u4e34\u65f6\u5ba2\u6237\u7aef\u6a21\u5f0f."
      },
      "zh-tw": {
        "name": "\u4e92\u52d5\u65b9\u5f0f",
        "description": "\u901a\u904e\u8a9e\u97f3\u555f\u52d5\u6216\u95dc\u9589\u81e8\u6642\u5ba2\u6236\u7aef\u6a21\u5f0f."
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-26T13:21:29Z",
    "last_updated": "2026-11-10T18:20:52.876175Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "thalovant-skill-interaction-modes",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-11T09:51:04+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-11T09:50:42+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-11T09:50:52+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "SiC-Gamelab-interactive-stories-ovos",
    "skill_id": null,
    "name": "interactive-stories-ovos",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/SiC-Gamelab/interactive-stories-ovos",
    "package_name": null,
    "pypi_version": null,
    "license": "CC0-1.0",
    "archived": false,
    "author": "SiC-Gamelab",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-02-24T08:40:54Z",
    "last_updated": "2025-02-24T09:26:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-intercom",
    "skill_id": "ovos-skill-intercom.andlo",
    "name": "Intercom",
    "description": "LAN intercom - send a spoken message to a named OVOS device on the same local network. Fully offline, no internet needed. Speak-only, never executes commands on the receiving device.",
    "examples": [
      "set intercom name to living room",
      "set intercom code to four seven two nine",
      "send a message to the bedroom",
      "send a message to the bedroom saying dinner is ready"
    ],
    "tags": [
      "intercom",
      "multi-device",
      "messaging",
      "lan",
      "home"
    ],
    "category": "Home",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-intercom/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-intercom",
    "package_name": "ovos-skill-intercom",
    "pypi_version": "0.0.7",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "lan",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "Each device needs a **name** and a shared household **code**, set by\nvoice on that specific device:\n\"set intercom name to living room\"\n\"set intercom code to four seven two nine\"\n\nEvery device that should participate says the **same code** - not a\nseparate secret per pair of devices. Say it once per device; any two\ndevices with matching codes can message each other.\n\nThe name and code can also be set in the skill's settings\n(`intercom_name`, `intercom_code` in its `settings.json`, or a\nsettings UI). A new name is advertised as soon as the settings are\nsaved - no restart needed."
      },
      {
        "heading": "Install",
        "content": "pip install ovos-skill-intercom"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "kab"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Intercom",
        "description": "LAN-intercom - send en talt besked til en navngiven OVOS-enhed p\u00e5 samme lokale netv\u00e6rk. Fuldt offline, ingen internetforbindelse n\u00f8dvendig. Kun tale, udf\u00f8rer aldrig kommandoer p\u00e5 modtager-enheden.",
        "examples": [
          "s\u00e6t intercom-navn til stuen",
          "s\u00e6t intercom-kode til fire syv to ni",
          "send en besked til sovev\u00e6relset",
          "send en besked til sovev\u00e6relset og sig maden er klar"
        ]
      },
      "de-de": {
        "name": "Intercom",
        "description": "LAN-Intercom - sendet eine gesprochene Nachricht an ein benanntes OVOS-Ger\u00e4t im selben lokalen Netzwerk. Vollst\u00e4ndig offline, keine Internetverbindung erforderlich. Nur Sprache, f\u00fchrt niemals Befehle auf dem Empf\u00e4ngerger\u00e4t aus.",
        "examples": [
          "setze intercom-namen auf wohnzimmer",
          "setze intercom-code auf vier sieben zwei neun",
          "sende eine nachricht an schlafzimmer",
          "sende eine nachricht an das schlafzimmer und sag das essen ist fertig"
        ]
      },
      "es-es": {
        "name": "Intercomunicador",
        "description": "Intercomunicador LAN - env\u00eda un mensaje hablado a un dispositivo OVOS nombrado en la misma red local. Totalmente sin conexi\u00f3n, no requiere internet. Solo habla, nunca ejecuta comandos en el dispositivo receptor.",
        "examples": [
          "establece el nombre de intercomunicador en sal\u00f3n",
          "establece el c\u00f3digo de intercomunicador en cuatro siete dos nueve",
          "env\u00eda un mensaje a dormitorio",
          "env\u00eda un mensaje a la habitaci\u00f3n diciendo la cena est\u00e1 lista"
        ]
      },
      "fr-fr": {
        "name": "Intercom",
        "description": "Intercom LAN - envoie un message parl\u00e9 \u00e0 un appareil OVOS nomm\u00e9 sur le m\u00eame r\u00e9seau local. Enti\u00e8rement hors ligne, aucune connexion internet requise. Parle uniquement, n'ex\u00e9cute jamais de commandes sur l'appareil r\u00e9cepteur.",
        "examples": [
          "d\u00e9finis le nom intercom \u00e0 salon",
          "d\u00e9finis le code intercom \u00e0 quatre sept deux neuf",
          "envoie un message \u00e0 chambre",
          "envoie un message \u00e0 la chambre disant le d\u00eener est pr\u00eat"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-18T14:51:17Z",
    "last_updated": "2026-10-01T18:37:47.198820Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-intercom.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 1/9 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:58:19+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 1,
            "counted": 9
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 1/9 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:35:42+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 1,
            "counted": 9
          }
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 7/9 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-30T08:59:51+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 7,
            "counted": 9
          }
        }
      }
    }
  },
  {
    "id": "aka0kuro-ovos-skill-invidious",
    "skill_id": null,
    "name": "Invidious Skill",
    "description": null,
    "examples": [
      "play Ant\u00f3nio Varia\u00e7\u00f5es",
      "search for music videos",
      "find tutorial videos",
      "search invidious for cooking recipes",
      "play latest music",
      "find educational content",
      "play spanish music",
      "search for tutorials in english",
      "find cooking recipes",
      "play flamenco",
      "play sevillanas",
      "search for documentaries in english"
    ],
    "tags": [
      "invidious",
      "youtube alternative",
      "video search",
      "music",
      "privacy",
      "common play",
      "english",
      "localization"
    ],
    "category": "Music",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/aka0kuro/ovos-skill-invidious",
    "package_name": "skill-invidious",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "aka0kuro",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### Manual Installation\n\n1. Clone this repository\n2. Install dependencies: `pip install -r requirements.txt`\n3. Copy to your OVOS skills directory\n4. Restart OVOS"
      },
      {
        "heading": "Configuration",
        "content": "You can add queries to the skill configuration that will be pre-fetched when the skill loads.\n\nThis populates the featured_media entries + provides fast matching against cached entries.\n\n{    \n\"featured\":  [\"zz top\", \"ai covers\", \"frank sinatra\", \"tutorial python\", \"spanish music\", \"flamenco\"]\n}"
      }
    ],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "it-it"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-08-04T22:33:18Z",
    "last_updated": "2025-08-11T14:02:11Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-iss-location",
    "skill_id": "ovos-skill-iss-location.openvoiceos",
    "name": "ISS Tracker",
    "description": "Track the location of the ISS",
    "examples": [
      "Where is the ISS",
      "Who is on board of the space station?",
      "When is the ISS passing over",
      "Tell me about the IS",
      "how many persons on board of the space station"
    ],
    "tags": [
      "Trivia",
      "space"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-iss-location/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-iss-location",
    "package_name": "ovos-skill-iss-location",
    "pypi_version": "0.2.16",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Seguiment de l'estaci\u00f3 espacial internacional (ISS Tracker)",
        "description": "Seguiment de la ubicaci\u00f3 de l'EEI",
        "examples": [
          "On \u00e9s l'EEI",
          "Qui hi ha a bord de l'estaci\u00f3 espacial?",
          "Quan passa l'EEI per sobre?",
          "Parla'm de l'EEI",
          "Quantes persones hi ha a bord de l'estaci\u00f3 espacial?"
        ]
      },
      "da-dk": {
        "name": "ISS Tracker",
        "description": "Spor placeringen af \u200b\u200bISS",
        "examples": [
          "Hvor er ISS",
          "Hvem er om bord p\u00e5 rumstationen?",
          "Hvorn\u00e5r passerer ISS",
          "Fort\u00e6l mig om IS",
          "hvor mange personer om bord p\u00e5 rumstationen"
        ]
      },
      "de-de": {
        "name": "ISS Tracker",
        "description": "Verfolge den Standort der ISS",
        "examples": [
          "Wo ist die ISS",
          "Wer ist an Bord der Raumstation?",
          "Wann fliegt die ISS \u00fcber",
          "Erz\u00e4hl mir vom ISS",
          "wie viele Personen sind an Bord der Raumstation"
        ]
      },
      "es-co": {
        "name": "Rastreador de la (ISS|EEI)",
        "description": "Sigue la ubicaci\u00f3n de la EEI",
        "examples": [
          "\u00bfD\u00f3nde est\u00e1 la EEI?",
          "cuantos astronautas hay en la ISS",
          "Cu\u00e1ndo estar\u00e1 la EEI por encima de nosotros"
        ]
      },
      "es-es": {
        "name": "Rastreador de la (ISS|EEI)",
        "description": "Sigue la ubicaci\u00f3n de la (ISS|EEI)",
        "examples": [
          "\u00bfD\u00f3nde est\u00e1 la (ISS|EEI)?",
          "\u00bfQui\u00e9n est\u00e1 a bordo de la estaci\u00f3n espacial?",
          "\u00bfCu\u00e1ndo pasar\u00e1 la (EEI|ISS) por encima?",
          "H\u00e1blame de la (ISS|EEI)",
          "\u00bfCu\u00e1ntas personas hay a bordo de la estaci\u00f3n espacial?"
        ]
      },
      "eu-es": {
        "name": "ISS jarraipena",
        "description": "Jarraitu ISSaren kokapena",
        "examples": [
          "Non dago ISSa",
          "Nor dago espazio-estazioan?",
          "Noiz igaroko da ISSa",
          "Kontatu iezadazu ISSari buruz",
          "zenbat pertsona daude espazio-estazioan"
        ]
      },
      "fa-ir": {
        "name": "ISS Tracker",
        "description": "\u0645\u0648\u0642\u0639\u06cc\u062a ISS \u0631\u0627 \u0631\u062f\u06cc\u0627\u0628\u06cc \u06a9\u0646\u06cc\u062f",
        "examples": [
          "ISS \u06a9\u062c\u0627\u0633\u062a",
          "\u0686\u0647 \u06a9\u0633\u0627\u0646\u06cc \u062f\u0631 \u0627\u06cc\u0633\u062a\u06af\u0627\u0647 \u0641\u0636\u0627\u06cc\u06cc \u0647\u0633\u062a\u0646\u062f",
          "\u0686\u0646\u062f \u0646\u0641\u0631 \u062f\u0631 ISS \u0647\u0633\u062a\u0646\u062f"
        ]
      },
      "fr-fr": {
        "name": "Suivi de l'ISS",
        "description": "Suivre la position de l'ISS",
        "examples": [
          "O\u00f9 est l'ISS",
          "Qui est \u00e0 bord de la station spatiale",
          "Quand l'ISS passera au-dessus de moi",
          "Parle-moi de l'ISS",
          "Combien de personnes sont \u00e0 bord de la station spatiale"
        ]
      },
      "gl-es": {
        "name": "Rastrexador da EEI",
        "description": "Rastrexa a localizaci\u00f3n da EEI",
        "examples": [
          "Onde est\u00e1 a EEI?",
          "Quen est\u00e1 a bordo da estaci\u00f3n espacial?",
          "Cando pasa a EEI?",
          "F\u00e1lame da EEI",
          "cantas persoas est\u00e1n a bordo da estaci\u00f3n espacial"
        ]
      },
      "it-it": {
        "name": "ISS Tracker",
        "description": "Traccia la posizione della ISS",
        "examples": [
          "Dov'\u00e8 la ISS",
          "Chi c'\u00e8 a bordo della stazione spaziale?",
          "Quando passa la ISS",
          "Parlami della ISS",
          "quante persone ci sono a bordo della stazione spaziale"
        ]
      },
      "kab": {
        "name": "A\u1e0dfar n ISS",
        "description": "\u1e0cfer amkan n ISS",
        "examples": [
          "Anda tella ISS",
          "Anwa yellan deg tzeqqa n wallal?",
          "Melmi ara d-t\u025beddi ISS",
          "Ini-yi \u0263ef ISS",
          "ac\u1e25al n medden deg tzeqqa n wallal"
        ]
      },
      "nl-nl": {
        "name": "ISS Tracker",
        "description": "Volg de locatie van het ISS",
        "examples": [
          "Waar is het ISS",
          "Wie is er aan boord van het ruimtestation?",
          "Wanneer vliegt het ISS voorbij",
          "Vertel me over het ISS",
          "hoeveel personen aan boord van het ruimtestation"
        ]
      },
      "oc-fr": {
        "name": "Seguiment de l'estacion espaciala internacionala",
        "description": "S\u00e8gue la posicion de l'estacion espaciala internacionala",
        "examples": [
          "Ont es l'E E I",
          "Qual es a b\u00f2rd de l'estacion espaciala?",
          "Quand passar\u00e0 l'E E I dess\u00fas",
          "Parla-me de l'E E I",
          "quantas personas i a a b\u00f2rd de l'estacion espaciala"
        ]
      },
      "pl-pl": {
        "name": "ISS Tracker",
        "description": "\u015aledzi po\u0142o\u017cenie ISS",
        "examples": [
          "gdzie jest ISS",
          "kto jest na pok\u0142adzie ISS",
          "ile os\u00f3b jest na pok\u0142adzie stacji kosmicznej"
        ]
      },
      "pt-br": {
        "name": "Rastreador da ISS",
        "description": "Acompanhe a localiza\u00e7\u00e3o da ISS",
        "examples": [
          "Onde est\u00e1 a ISS",
          "Quem est\u00e1 a bordo da esta\u00e7\u00e3o espacial?",
          "Quando a ISS vai passar",
          "Me conte sobre a ISS",
          "quantas pessoas a bordo da esta\u00e7\u00e3o espacial"
        ]
      },
      "pt-pt": {
        "name": "Rastreador da ISS",
        "description": "Segue a localiza\u00e7\u00e3o da Esta\u00e7\u00e3o Espacial Internacional",
        "examples": [
          "Onde est\u00e1 a ISS",
          "Quem est\u00e1 a bordo da esta\u00e7\u00e3o espacial?",
          "Quando passa a ISS por aqui",
          "Fala-me sobre a ISS",
          "quantas pessoas est\u00e3o a bordo da esta\u00e7\u00e3o espacial"
        ]
      },
      "ru-ru": {
        "name": "ISS Tracker",
        "description": "\u041e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u041c\u041a\u0421",
        "examples": [
          "\u0433\u0434\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u041c\u041a\u0421",
          "\u043a\u0442\u043e \u043d\u0430 \u0431\u043e\u0440\u0442\u0443 \u041c\u041a\u0421",
          "\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u044e\u0434\u0435\u0439 \u043d\u0430 \u0431\u043e\u0440\u0442\u0443 \u043a\u043e\u0441\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0438"
        ]
      },
      "sv-se": {
        "name": "ISS Tracker",
        "description": "F\u00f6lj ISS position",
        "examples": [
          "Var \u00e4r ISS",
          "Vem \u00e4r ombord p\u00e5 rymdstationen?",
          "N\u00e4r passerar ISS",
          "Ber\u00e4tta om ISS",
          "hur m\u00e5nga personer ombord p\u00e5 rymdstationen"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-06-26T03:33:52Z",
    "last_updated": "2025-06-08T23:17:58.537971Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-iss-location.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.16",
          "tested_at": "2026-10-04T10:58:32+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.16",
          "tested_at": "2026-10-04T10:35:53+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 1/1 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.8.0a2",
          "tested_at": "2026-10-30T09:00:03+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 1,
            "counted": 1
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-fuster-quotes",
    "skill_id": "ovos-skill-joan-fuster.openvoiceos",
    "name": "Joan Fuster quotes",
    "description": "The Fuster quote of the day",
    "examples": [
      "Digue\u2019m un aforisme del Fuster",
      "The Fuster quote of the day.",
      "Fuster's quote of the day.",
      "Tell me a quote from Joan Fuster."
    ],
    "tags": [
      "daily",
      "entertainment"
    ],
    "category": "Daily",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-fuster-quotes",
    "package_name": "ovos-skill-fuster-quotes",
    "pypi_version": "0.0.4",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install this skill with pip:\n\npip install ovos-skill-fuster-quotes"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Cites de Joan Fuster",
        "description": "La cita del dia de Fuster",
        "examples": [
          "Digue\u2019m un aforisme del Fuster",
          "Qu\u00e8 diria Joan Fuster, aqu\u00ed?",
          "Qu\u00e8 diu en Fuster?",
          "Algun pensament fusteri\u00e0?",
          "Digues-me alguna cosa fusteriana",
          "Vull sentir un aforisme fusteri\u00e0",
          "Necessito alguna idea fusteriana",
          "Qu\u00e8 pensen els fusterians?",
          "La frase del Fuster del dia"
        ]
      },
      "da-dk": {
        "name": "Joan Fuster citater",
        "description": "Dagens Fuster-citat",
        "examples": [
          "Sig mig en aforisme af Fuster",
          "Dagens Fuster-citat.",
          "Fusters citat i dag.",
          "Fort\u00e6l mig et citat af Joan Fuster."
        ]
      },
      "de-de": {
        "name": "Joan-Fuster-Zitate",
        "description": "Das Fuster-Zitat des Tages",
        "examples": [
          "Sag mir einen Aphorismus von Fuster",
          "Das Joan-Fuster-Zitat des Tages.",
          "Fusters Zitat des Tages.",
          "Sag mir ein Zitat von Joan Fuster."
        ]
      },
      "es-co": {
        "name": "Citas de Joan Fuster",
        "description": "La cita del d\u00eda de Fuster",
        "examples": [
          "Dime un aforismo de Fuster",
          "La cita de Joan Fuster del d\u00eda.",
          "Dame una frase de Fuster.",
          "Dime una cita de Joan Fuster."
        ]
      },
      "es-es": {
        "name": "Citas de Joan Fuster",
        "description": "La cita del d\u00eda de Fuster",
        "examples": [
          "Dime un aforismo de Fuster",
          "La cita de Joan Fuster del d\u00eda.",
          "Dame una frase de Fuster.",
          "Dime una cita de Joan Fuster."
        ]
      },
      "eu-es": {
        "name": "Joan Fusterren esaldiak",
        "description": "Fusterren eguneko esaldia",
        "examples": [
          "Esan Fusterren aforismo bat",
          "Joan Fusterren eguneko esaldia.",
          "Eman Fusterren esaldi bat.",
          "Esan Joan Fusterren esaldi bat."
        ]
      },
      "fa-ir": {
        "name": "Joan Fuster quotes",
        "description": "The Fuster quote of the day",
        "examples": [
          "\u0627\u0641\u06a9\u0627\u0631 \u0641\u0633\u062a\u0631\u06cc",
          "\u0646\u0648\u06cc\u0633\u0646\u062f\u0647 \u0641\u0627\u0633\u0631 \u06a9\u06cc\u0633\u062a\u061f",
          "\u0686\u0647 \u0633\u0627\u0644\u06cc \u0632\u0646\u062f\u0647 \u0628\u0648\u062f"
        ]
      },
      "fr-fr": {
        "name": "Citations de Joan Fuster",
        "description": "La citation du jour de Joan Fuster",
        "examples": [
          "Donne-moi une citation de Joan Fuster",
          "Quelle est la citation du jour de Joan Fuster ?",
          "Qui \u00e9tait Joan Fuster ?"
        ]
      },
      "gl-es": {
        "name": "Citas de Joan Fuster",
        "description": "A cita do d\u00eda de Fuster",
        "examples": [
          "Dime un aforismo de Fuster",
          "A cita de Joan Fuster do d\u00eda.",
          "D\u00e1me unha frase de Fuster.",
          "Dime unha cita de Joan Fuster."
        ]
      },
      "it-it": {
        "name": "Citazioni di Joan Fuster",
        "description": "La citazione del giorno di Fuster",
        "examples": [
          "Dimmi un aforisma di Fuster",
          "La citazione di Joan Fuster del giorno.",
          "Dammi una frase di Fuster.",
          "Dimmi una citazione di Joan Fuster."
        ]
      },
      "kab": {
        "name": "Awalen n Yuwan Fuster",
        "description": "Awal n wass n Fuster",
        "examples": [
          "examples[0]: Ini-yi-d anzi n Fuster",
          "examples[1]: Awal n wass n Fuster.",
          "examples[2]: Awal n wass n Yuwan Fuster.",
          "examples[3]: Ini-yi-d awal n Yuwan Fuster."
        ]
      },
      "nl-nl": {
        "name": "Citaten van Joan Fuster",
        "description": "Het Fuster-citaat van de dag",
        "examples": [
          "Zeg me een aforisme van Fuster",
          "Het Joan Fuster-citaat van de dag.",
          "Geef me een uitspraak van Fuster.",
          "Zeg me een citaat van Joan Fuster."
        ]
      },
      "pl-pl": {
        "name": "Joan Fuster quotes",
        "description": "The Fuster quote of the day",
        "examples": [
          "Co m\u00f3wi Fuster",
          "Kt\u00f3ry jest Fuster",
          "kiedy by\u0142 \u017cywy"
        ]
      },
      "pt-br": {
        "name": "Cita\u00e7\u00f5es de Joan Fuster",
        "description": "A cita\u00e7\u00e3o do dia de Fuster",
        "examples": [
          "Me diz um aforismo de Fuster",
          "A cita\u00e7\u00e3o de Joan Fuster do dia.",
          "Me d\u00e1 uma frase de Fuster.",
          "Me diz uma cita\u00e7\u00e3o de Joan Fuster."
        ]
      },
      "pt-pt": {
        "name": "Cita\u00e7\u00f5es de Joan Fuster",
        "description": "A cita\u00e7\u00e3o do dia de Fuster",
        "examples": [
          "Diz-me um aforismo de Fuster",
          "A cita\u00e7\u00e3o de Joan Fuster do dia.",
          "D\u00e1-me uma frase de Fuster.",
          "Diz-me uma cita\u00e7\u00e3o de Joan Fuster."
        ]
      },
      "ru-ru": {
        "name": "Joan Fuster quotes",
        "description": "The Fuster quote of the day",
        "examples": [
          "\u0427\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u0424\u0443\u0441\u0442\u0435\u0440",
          "\u041a\u0442\u043e \u0442\u0430\u043a\u043e\u0439 \u0424\u0443\u0441\u0442\u0435\u0440?",
          "\u0444\u0443\u0441\u0442\u0435\u0440 \u0436\u0438\u0432\u043e\u0439."
        ]
      },
      "sv-se": {
        "name": "Joan Fuster-citat",
        "description": "Dagens Fuster-citat",
        "examples": [
          "S\u00e4g mig en aforism av Fuster",
          "Dagens Fuster-citat.",
          "Fusters citat idag.",
          "Ber\u00e4tta ett citat av Joan Fuster."
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-12-19T01:20:43Z",
    "last_updated": "2025-03-06T15:43:48.143289Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-fuster-quotes.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:58:57+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:36:37+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.5a4",
          "tested_at": "2026-10-30T08:58:53+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-icanhazdadjokes",
    "skill_id": "ovos-skill-icanhazdadjokes.openvoiceos",
    "name": "Jokes",
    "description": "Brighten your day with dad humor. Laughter is not guaranteed, but eye rolls are likely.",
    "examples": [
      "Tell me a joke.",
      "Say a joke.",
      "Do you know any jokes?",
      "Can you tell jokes?",
      "Make me laugh.",
      "Tell me a joke about dentists.",
      "Do you know any Chuck Norris jokes?"
    ],
    "tags": [
      "Entertainment",
      "joke",
      "jokes",
      "humor",
      "humour",
      "funny"
    ],
    "category": "Entertainment",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-icanhazdadjokes",
    "package_name": "ovos-skill-icanhazdadjokes",
    "pypi_version": "0.3.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 4,
    "forks": 7,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "lt-lt",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Acudits",
        "description": "Il\u00b7lumina el teu dia amb l'humor del pare. El riure no est\u00e0 assegurat, per\u00f2 \u00e9s probable que rodolis els ulls.",
        "examples": [
          "Explica'm un acudit.",
          "Digues una broma.",
          "Saps cap acudit?",
          "Pots explicar acudits?",
          "Fes-me riure.",
          "Explica'm un acudit sobre dentistes.",
          "Coneixes algun acudit de Chuck Norris?"
        ]
      },
      "cs-cz": {
        "name": "Vtipy",
        "description": "Rozjasni si den tat\u00ednkovsk\u00fdm humorem. Sm\u00edch nen\u00ed zaru\u010den, ale koulen\u00ed o\u010dima ano.",
        "examples": [
          "\u0158ekni mi vtip.",
          "Pov\u011bz vtip.",
          "Zn\u00e1\u0161 n\u011bjak\u00e9 vtipy?",
          "Um\u00ed\u0161 vypr\u00e1v\u011bt vtipy?",
          "Rozesm\u011bj m\u011b.",
          "\u0158ekni mi vtip o zuba\u0159\u00edch.",
          "Zn\u00e1\u0161 n\u011bjak\u00e9 vtipy o Chucku Norrisovi?"
        ]
      },
      "da-dk": {
        "name": "Jokes",
        "description": "G\u00f8r din dag glad med farhumor. Latter er ikke garanteret, men \u00f8jenruller er sandsynlige.",
        "examples": [
          "Fort\u00e6l mig en vittighed.",
          "Sig en joke.",
          "Kender du nogle vittigheder?",
          "Kan du fort\u00e6lle vittigheder?",
          "F\u00e5 mig til at grine.",
          "Fort\u00e6l mig en vittighed om tandl\u00e6ger.",
          "Kender du nogen Chuck Norris-jokes?"
        ]
      },
      "de-de": {
        "name": "Witze",
        "description": "Versch\u00f6nere Deinen Tag mit Humor. Lachen ist nicht garantiert, aber Augenrollen ist wahrscheinlich.",
        "examples": [
          "Erz\u00e4hl mir einen Witz.",
          "Erz\u00e4hl einen Witz.",
          "Kennst du irgendwelche Witze?",
          "Kannst du Witze erz\u00e4hlen?",
          "Bring mich zum Lachen.",
          "Erz\u00e4hl mir einen Witz \u00fcber Zahn\u00e4rzte.",
          "Kennst Du Witze \u00fcber Chuck Norris?"
        ]
      },
      "es-co": {
        "name": "Chistes",
        "description": "Alegra tu d\u00eda con humor de padre. No se garantizan risas, pero es probable que pongas los ojos en blanco.",
        "examples": [
          "cu\u00e9ntame un chiste",
          "sabes alg\u00fan chiste",
          "cu\u00e9ntame un chiste sobre dentistas"
        ]
      },
      "es-es": {
        "name": "Chistes",
        "description": "Alegra tu d\u00eda con humor de padre. No se garantizan risas, pero es probable que pongas los ojos en blanco.",
        "examples": [
          "Cu\u00e9ntame un chiste.",
          "Di un chiste.",
          "\u00bfConoces alg\u00fan chiste?",
          "\u00bfPuedes contar chistes?",
          "Hazme re\u00edr.",
          "Cu\u00e9ntame un chiste sobre dentistas.",
          "\u00bfConoces alg\u00fan chiste de Chuck Norris?"
        ]
      },
      "eu-es": {
        "name": "Txisteak",
        "description": "Argitu zure eguna aitaren umorearekin. Barrerik ez da bermatzen, baina begiak biratzea bai da ohikoa.",
        "examples": [
          "Kontatu iezadazu txiste bat.",
          "Esan txiste bat.",
          "Ba al dakizu txisterik?",
          "Txisteak konta ditzakezu?",
          "Egidazu barre.",
          "Kontatu iezadazu dentisten inguruko txiste bat.",
          "Ba al dakizu Chuck Norrisen txisterik?"
        ]
      },
      "fa-ir": {
        "name": "Jokes",
        "description": "\u0631\u0648\u0632\u062a\u0627\u0646 \u0631\u0627 \u0628\u0627 \u062c\u0648\u06a9 \u0647\u0627\u06cc \u0628\u0627\u0628\u0627\u06cc\u06cc \u0634\u0627\u062f \u06a9\u0646\u06cc\u062f. \u062e\u0646\u062f\u0647 \u062a\u0636\u0645\u06cc\u0646\u06cc \u0646\u06cc\u0633\u062a\u060c \u0627\u0645\u0627 \u0627\u062d\u062a\u0645\u0627\u0644\u0627 \u0686\u0634\u0645 \u0647\u0627\u06cc\u062a\u0627\u0646 \u0631\u0627 \u0645\u06cc \u0686\u0631\u062e\u0627\u0646\u06cc\u062f.",
        "examples": [
          "\u06cc\u06a9 \u062c\u0648\u06a9 \u0628\u06af\u0648",
          "\u062c\u0648\u06a9 \u0628\u0644\u062f\u06cc",
          "\u06cc\u06a9 \u062c\u0648\u06a9 \u062f\u0631\u0628\u0627\u0631\u0647 \u062f\u0646\u062f\u0627\u0646\u067e\u0632\u0634\u06a9 \u0647\u0627 \u0628\u06af\u0648"
        ]
      },
      "fr-fr": {
        "name": "Blagues",
        "description": "Raconte des blagues g\u00e9n\u00e9rales, des blagues de papa, des calembours, des blagues de d\u00e9veloppeur et plus encore.",
        "examples": [
          "Raconte-moi une blague",
          "Raconte-moi une blague de papa",
          "Raconte-moi une blague de d\u00e9veloppeur",
          "Raconte-moi une blague sur Chuck Norris"
        ]
      },
      "gl-es": {
        "name": "Chistes",
        "description": "Alegra o teu d\u00eda con humor de pai. Non se garanten as risas, pero \u00e9 probable que xires os ollos.",
        "examples": [
          "C\u00f3ntame un chiste.",
          "Di un chiste.",
          "Co\u00f1eces alg\u00fan chiste?",
          "Podes contar chistes?",
          "Faime rir.",
          "C\u00f3ntame un chiste sobre dentistas.",
          "Co\u00f1eces alg\u00fan chiste de Chuck Norris?"
        ]
      },
      "hu-hu": {
        "name": "Viccek",
        "description": "Der\u00edtsd fel a napod pap\u00e1s humorral. A nevet\u00e9s nem garant\u00e1lt, de a szemforgat\u00e1s val\u00f3sz\u00edn\u0171.",
        "examples": [
          "Mondj egy viccet.",
          "Mes\u00e9lj egy viccet.",
          "Tudsz valami viccet?",
          "Tudsz viccet mes\u00e9lni?",
          "Nevettess meg.",
          "Mondj egy viccet a fogorvosokr\u00f3l.",
          "Tudsz Chuck Norris viccet?"
        ]
      },
      "it-it": {
        "name": "Barzellette",
        "description": "Rallegra la tua giornata con l'umorismo da pap\u00e0. La risata non \u00e8 garantita, ma gli occhi al cielo sono probabili.",
        "examples": [
          "Raccontami una barzelletta.",
          "Dimmi una battuta.",
          "Conosci qualche barzelletta?",
          "Sai raccontare barzellette?",
          "Fammi ridere.",
          "Raccontami una barzelletta sui dentisti.",
          "Conosci qualche barzelletta su Chuck Norris?"
        ]
      },
      "kab": {
        "name": "Ccetla",
        "description": "Sfe\u1e5b\u1e25 ass-ik s ccetla n baba. Ur nettwakel ara ad te\u1e0dse\u1e0d, maca yezmer ad tes\u025beddi\u1e0d allen-ik.",
        "examples": [
          "Ini-yi ccetla.",
          "Awi-d ccetla.",
          "Tes\u025bi\u1e0d ccetla?",
          "Tzemre\u1e0d ad d-tawi\u1e0d ccetla?",
          "Se\u1e25su-yi.",
          "Ini-yi ccetla \u0263ef yimjuhad n tu\u0263mas.",
          "Tes\u025bi\u1e0d ccetla n Chuck Norris?"
        ]
      },
      "lt-lt": {
        "name": "Jokes",
        "description": "Prad\u017eiuginkite savo dien\u0105 t\u0117\u010dio humoru. Juokas negarantuotas, bet aki\u0173 vartymas \u2013 tik\u0117tinas."
      },
      "nl-nl": {
        "name": "Grappen",
        "description": "Maak je dag vrolijker met papa-humor. Lachen is niet gegarandeerd, maar ogen rollen is waarschijnlijk.",
        "examples": [
          "Vertel me een grap.",
          "Zeg een grap.",
          "Ken je grappen?",
          "Kun je grappen vertellen?",
          "Maak me aan het lachen.",
          "Vertel me een grap over tandartsen.",
          "Ken je Chuck Norris-grappen?"
        ]
      },
      "pl-pl": {
        "name": "\u017barty",
        "description": "Rozja\u015bnij sobie dzie\u0144 tacierzy\u0144skim humorem. \u015amiech nie jest gwarantowany, ale przewracanie oczami jak najbardziej.",
        "examples": [
          "Opowiedz mi \u017cart.",
          "Powiedz \u017cart.",
          "Znasz jakie\u015b \u017carty?",
          "Umiesz opowiada\u0107 \u017carty?",
          "Roz\u015bmiesz mnie.",
          "Opowiedz mi \u017cart o dentystach.",
          "Znasz jakie\u015b \u017carty o Chucku Norrisie?"
        ]
      },
      "pt-br": {
        "name": "Piadas",
        "description": "Alegre o seu dia com humor de pai. Rir n\u00e3o \u00e9 garantido, mas revirar os olhos \u00e9 bem prov\u00e1vel.",
        "examples": [
          "Me conte uma piada.",
          "Fale uma piada.",
          "Voc\u00ea conhece alguma piada?",
          "Voc\u00ea consegue contar piadas?",
          "Me fa\u00e7a rir.",
          "Me conte uma piada sobre dentistas.",
          "Voc\u00ea conhece piadas do Chuck Norris?"
        ]
      },
      "pt-pt": {
        "name": "Piadas",
        "description": "Ilumine o seu dia com humor de pai. O riso n\u00e3o \u00e9 garantido, mas \u00e9 prov\u00e1vel que revire os olhos.",
        "examples": [
          "Conte-me uma piada.",
          "Diga uma piada.",
          "Conhece alguma piada?",
          "Pode contar piadas?",
          "Fa\u00e7a-me rir.",
          "Conte-me uma piada sobre dentistas.",
          "Conhece alguma piada de Chuck Norris?"
        ]
      },
      "ru-ru": {
        "name": "\u0428\u0443\u0442\u043a\u0438",
        "description": "\u0421\u043a\u0440\u0430\u0441\u044c \u0441\u0432\u043e\u0439 \u0434\u0435\u043d\u044c \u043f\u0430\u043f\u0438\u043d\u044b\u043c \u044e\u043c\u043e\u0440\u043e\u043c. \u0421\u043c\u0435\u0445 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d, \u043d\u043e \u0437\u0430\u043a\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0433\u043b\u0430\u0437 \u0432\u0435\u0441\u044c\u043c\u0430 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e.",
        "examples": [
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0448\u0443\u0442\u043a\u0443.",
          "\u0421\u043a\u0430\u0436\u0438 \u0448\u0443\u0442\u043a\u0443.",
          "\u0417\u043d\u0430\u0435\u0448\u044c \u043a\u0430\u043a\u0438\u0435-\u043d\u0438\u0431\u0443\u0434\u044c \u0448\u0443\u0442\u043a\u0438?",
          "\u041c\u043e\u0436\u0435\u0448\u044c \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u0448\u0443\u0442\u043a\u0443?",
          "\u0420\u0430\u0441\u0441\u043c\u0435\u0448\u0438 \u043c\u0435\u043d\u044f.",
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0448\u0443\u0442\u043a\u0443 \u043f\u0440\u043e \u0441\u0442\u043e\u043c\u0430\u0442\u043e\u043b\u043e\u0433\u043e\u0432.",
          "\u0417\u043d\u0430\u0435\u0448\u044c \u0448\u0443\u0442\u043a\u0438 \u043f\u0440\u043e \u0427\u0430\u043a\u0430 \u041d\u043e\u0440\u0440\u0438\u0441\u0430?"
        ]
      },
      "sv-se": {
        "name": "Sk\u00e4mt",
        "description": "G\u00f6r din dag gladare med pappask\u00e4mt. Skratt garanteras inte, men suckar \u00e4r troliga.",
        "examples": [
          "Ber\u00e4tta ett sk\u00e4mt.",
          "S\u00e4g ett sk\u00e4mt.",
          "Kan du n\u00e5gra sk\u00e4mt?",
          "Kan du ber\u00e4tta sk\u00e4mt?",
          "F\u00e5 mig att skratta.",
          "Ber\u00e4tta ett sk\u00e4mt om tandl\u00e4kare.",
          "Kan du n\u00e5gra Chuck Norris-sk\u00e4mt?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-12-05T17:42:52Z",
    "last_updated": "2025-06-08T23:18:44.122053Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-icanhazdadjokes.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.7",
          "tested_at": "2026-10-04T10:59:08+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.7",
          "tested_at": "2026-10-04T10:36:46+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.27.0a1",
          "tested_at": "2026-10-30T08:59:08+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-local-media",
    "skill_id": "ovos-skill-local-media.openvoiceos",
    "name": "Local Media",
    "description": "Local Media File Browser For Open Voice OS",
    "examples": [
      "start file browser app",
      "show my usb drive",
      "show my file browser",
      "show file browser drive",
      "open usb browser",
      "show usb browser",
      "open usb drive",
      "show usb",
      "show my usb",
      "open my file browser drive",
      "open file browser drive",
      "open file browser app",
      "show usb drive",
      "start file browser",
      "show file browser",
      "show file browser app",
      "open my file browser",
      "open usb browser app",
      "start usb browser",
      "open file browser",
      "show usb browser app",
      "open my usb",
      "open my usb drive",
      "show my file browser drive",
      "open usb",
      "start usb browser app"
    ],
    "tags": [
      "usb",
      "local",
      "Daily",
      "browser",
      "filebrowser",
      "manager",
      "file"
    ],
    "category": "Daily",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/svgs/solid/folder-open.svg",
    "icon_source": "readme",
    "icon_color": "#55dffe",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-local-media",
    "package_name": "ovos-skill-local-media",
    "pypi_version": "0.2.12",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 5,
    "open_issues": 16,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install this skill through the OVOS skill installer, or add it to your OVOS\ninstance as any other `ovos.plugin.skill` entry point."
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Local Media",
        "description": "Navegador de fitxers multim\u00e8dia locals per a Open Voice OS",
        "examples": [
          "inicia aplicaci\u00f3 de navegador de fitxers",
          "mostra la unitat usb",
          "mostra el navegador de fitxers",
          "mostra la unitat del navegador de fitxers",
          "obre el navegador usb",
          "mostra el navegador usb",
          "obre la unitat usb",
          "mostra l'usb",
          "mostra l'usb",
          "obre la unitat del navegador de fitxers",
          "obre la unitat del navegador de fitxers",
          "obre l'aplicaci\u00f3 del navegador de fitxers",
          "mostra la unitat usb",
          "inicia el navegador de fitxers",
          "mostra el navegador de fitxers",
          "mostra l'aplicaci\u00f3 del navegador de fitxers",
          "obre el navegador de fitxers",
          "obre l'aplicaci\u00f3 del navegador usb",
          "inicia el navegador usb",
          "obre el navegador de fitxers",
          "mostra l'aplicaci\u00f3 del navegador usb",
          "obre el meu usb",
          "obre la meva unitat usb",
          "mostra la unitat del navegador de fitxers",
          "obre l'usb",
          "inicia l'aplicaci\u00f3 del navegador usb"
        ]
      },
      "da-dk": {
        "name": "Lokale medier",
        "description": "Lokal mediefilbrowser til Open Voice OS",
        "examples": [
          "start filbrowser-appen",
          "vis mit usb-drev",
          "vis min filbrowser",
          "vis filbrowserdrev",
          "\u00e5bne usb browser",
          "vis usb browser",
          "\u00e5ben usb-drev",
          "vis usb",
          "vis min usb",
          "\u00e5ben mit fildrev",
          "\u00e5ben filbrowserdrev",
          "\u00e5ben filbrowser-app",
          "vis usb-drev",
          "start filbrowseren",
          "vis filbrowser",
          "vis filbrowser-app",
          "\u00e5ben min filbrowser",
          "\u00e5ben usb browser app",
          "start usb browser",
          "\u00e5ben filbrowseren",
          "vis usb browser app",
          "\u00e5bne min usb",
          "\u00e5bne mit usb-drev",
          "vis mit filbrowserdrev",
          "\u00e5ben usb",
          "start usb browser app"
        ]
      },
      "de-de": {
        "name": "Local Media",
        "description": "Lokaler Mediendateibrowser f\u00fcr Open Voice OS",
        "examples": [
          "Dateibrowser-App starten",
          "zeige mein USB-Laufwerk",
          "meinen Dateibrowser anzeigen",
          "Dateibrowser-Laufwerk anzeigen",
          "USB-Browser \u00f6ffnen",
          "USB-Browser anzeigen",
          "USB-Laufwerk \u00f6ffnen",
          "USB anzeigen",
          "zeig mein USB Ger\u00e4t",
          "\u00f6ffne mein Dateibrowser-Laufwerk",
          "Dateibrowser-Laufwerk \u00f6ffnen",
          "Dateibrowser-App \u00f6ffnen",
          "USB-Laufwerk anzeigen",
          "Dateibrowser starten",
          "Dateibrowser anzeigen",
          "Dateibrowser-App anzeigen",
          "\u00f6ffne meinen Dateibrowser",
          "\u00d6ffnen Sie die USB-Browser-App",
          "USB-Browser starten",
          "Dateibrowser \u00f6ffnen",
          "USB-Browser-App anzeigen",
          "\u00f6ffne meinen USB",
          "\u00f6ffne mein USB-Laufwerk",
          "zeige mein Dateibrowser-Laufwerk",
          "USB \u00f6ffnen",
          "USB-Browser-App starten"
        ]
      },
      "fr-fr": {
        "name": "M\u00e9dias locaux",
        "description": "Parcourez vos fichiers audio et vid\u00e9o locaux avec l'explorateur multim\u00e9dia d'OpenVoiceOS.",
        "examples": [
          "Ouvre l'explorateur de fichiers.",
          "Affiche ma cl\u00e9 USB.",
          "Lance le navigateur USB.",
          "Ouvre mon explorateur de fichiers."
        ]
      },
      "gl-es": {
        "name": "Medios locais",
        "description": "Explorador de ficheiros locais para Open Voice OS",
        "examples": [
          "iniciar a aplicaci\u00f3n de explorador de ficheiros",
          "amosar a mi\u00f1a unidade USB",
          "amosar o meu explorador de ficheiros",
          "amosar a unidade do explorador de ficheiros",
          "abrir o explorador USB",
          "amosar o explorador USB",
          "abrir a unidade USB",
          "amosar USB",
          "amosar o meu USB",
          "abrir a mi\u00f1a unidade do explorador de ficheiros",
          "abrir a unidade do explorador de ficheiros",
          "abrir a aplicaci\u00f3n de explorador de ficheiros",
          "amosar a unidade USB",
          "iniciar o explorador de ficheiros",
          "amosar o explorador de ficheiros",
          "amosar a aplicaci\u00f3n de explorador de ficheiros",
          "abrir o meu explorador de ficheiros",
          "abrir a aplicaci\u00f3n de explorador USB",
          "iniciar o explorador USB",
          "abrir o explorador de ficheiros",
          "amosar a aplicaci\u00f3n de explorador USB",
          "abrir o meu USB",
          "abrir a mi\u00f1a unidade USB",
          "amosar a mi\u00f1a unidade do explorador de ficheiros",
          "abrir USB",
          "iniciar a aplicaci\u00f3n de explorador USB"
        ]
      },
      "it-it": {
        "name": "Media locali",
        "description": "Esplora i tuoi file audio e video locali con il navigatore multimediale di OpenVoiceOS.",
        "examples": [
          "Apri l'esploratore di file.",
          "Mostra la mia chiavetta USB.",
          "Avvia il browser USB.",
          "Apri il mio esploratore di file."
        ]
      },
      "kab": {
        "name": "Imidyaten idiganen",
        "description": "Iminig n yifuyla n imidyaten idiganen i Open Voice OS",
        "examples": [
          "examples[0]: ssel\u1e25u asnas n yiminig n yifuyla",
          "examples[1]: ssken-d ame\u0263\u1e5bi-inu usb",
          "examples[2]: ssken-d iminig-inu n yifuyla",
          "examples[3]: ssken-d ame\u0263\u1e5bi n yiminig n yifuyla",
          "examples[4]: ldi iminig n usb",
          "examples[5]: ssken-d iminig n usb",
          "examples[6]: ldi ame\u0263\u1e5bi usb",
          "examples[7]: ssken-d usb",
          "examples[8]: ssken-d usb-inu",
          "examples[9]: ldi ame\u0263\u1e5bi n yiminig-inu n yifuyla",
          "examples[10]: ldi ame\u0263\u1e5bi n yiminig n yifuyla",
          "examples[11]: ldi asnas n yiminig n yifuyla",
          "examples[12]: ssken-d ame\u0263\u1e5bi usb",
          "examples[13]: ssel\u1e25u iminig n yifuyla",
          "examples[14]: ssken-d iminig n yifuyla",
          "examples[15]: ssken-d asnas n yiminig n yifuyla",
          "examples[16]: ldi iminig-inu n yifuyla",
          "examples[17]: ldi asnas n yiminig n usb",
          "examples[18]: ssel\u1e25u iminig n usb",
          "examples[19]: ldi iminig n yifuyla",
          "examples[20]: ssken-d asnas n yiminig n usb",
          "examples[21]: ldi usb-inu",
          "examples[22]: ldi anadday-inu usb",
          "examples[23]: ssken-d ame\u0263\u1e5bi n yiminig-inu n yifuyla",
          "examples[24]: ldi usb",
          "examples[25]: ssel\u1e25u asnas n yiminig n usb"
        ]
      },
      "pt-br": {
        "name": "M\u00eddia local",
        "description": "Navegador de arquivos de m\u00eddia local para Open Voice OS",
        "examples": [
          "inicie aplicativo navegador de arquivos",
          "mostre meu pendrive",
          "mostre meu gerenciador de arquivos",
          "mostre unidade do gerenciador de arquivos",
          "abra o navegador usb",
          "mostre navegador usb",
          "abra unidade USB",
          "mostre usb",
          "mostre meu usb",
          "abra meu navegador de arquivos",
          "abra unidade do navegador de arquivos",
          "abra aplicativo navegador de arquivos",
          "mostrar unidade USB",
          "iniciar o navegador de arquivos",
          "mostrar navegador de arquivos",
          "mostrar aplicativo do navegador de arquivos",
          "abrir meu navegador de arquivos",
          "abra o aplicativo do navegador USB",
          "iniciar navegador usb",
          "abrir navegador de arquivos",
          "mostrar aplicativo de navegador USB",
          "abrir meu usb",
          "abrir meu pendrive",
          "mostrar minha unidade do navegador de arquivos",
          "usb aberto",
          "iniciar aplicativo de navegador USB"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-16T17:48:52Z",
    "last_updated": "2025-06-08T21:55:38.909391Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-mark1-ctrl",
    "skill_id": "ovos-skill-mark1-ctrl.openvoiceos",
    "name": "Mark 1 Enclosure Control",
    "description": "Control the Mycroft Mark 1 enclosure by voice.",
    "examples": [
      "blink",
      "set the eye brightness to 50 percent",
      "make your eyes go crazy",
      "set a custom eye color",
      "make your eyes red",
      "do the listening animation",
      "look down",
      "look left",
      "look left and right",
      "look right",
      "look up",
      "look up and down",
      "narrow your eyes",
      "reset your mark 1",
      "can you smile",
      "spin your eyes around",
      "do the thinking animation"
    ],
    "tags": [
      "mark1",
      "enclosure",
      "eyes",
      "system"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-mark1-ctrl",
    "package_name": "ovos-skill-mark1-ctrl",
    "pypi_version": "0.0.1",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-mark1-ctrl"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "pots parpellejar",
          "atenua al 20 per cent",
          "puc posar un color d'ulls personalitzat",
          "fes l'animaci\u00f3 d'escolta",
          "mira a terra",
          "pots mirar a l'esquerra",
          "mira d'esquerra a dreta",
          "pots mirar a la dreta",
          "mira al sostre",
          "mira avall i amunt",
          "pots reiniciar-te",
          "pots somriure",
          "fes l'animaci\u00f3 de gir",
          "fes l'animaci\u00f3 de pensar"
        ]
      },
      "da-dk": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "kan du blinke",
          "lysne det op",
          "jeg vil selv v\u00e6lge en \u00f8jenfarve",
          "lad som om du lytter",
          "kan du kigge ned",
          "kan du kigge til venstre",
          "kig fra venstre mod h\u00f8jre",
          "kan du kigge til h\u00f8jre",
          "kan du kigge op",
          "kig ned og op",
          "knib \u00f8jnene lidt sammen",
          "nulstil dit ansigt",
          "kan du smile",
          "start snurreanimationen",
          "lad som om du t\u00e6nker"
        ]
      },
      "de-de": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "blinzle f\u00fcr mich",
          "etwas heller",
          "nimm eine eigene Farbe f\u00fcr deine Augen",
          "starte die Zuh\u00f6r-Animation",
          "schau auf den Boden",
          "bitte schau nach links",
          "schau von links nach rechts",
          "bitte schau nach rechts",
          "schau an die Decke",
          "schau von oben nach unten",
          "mach die Augen ein bisschen schmal",
          "setz dein Gesicht zur\u00fcck",
          "kannst du l\u00e4cheln",
          "starte die Dreh-Animation",
          "starte die Nachdenk-Animation"
        ]
      },
      "el-gr": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "\u03b1\u03bd\u03bf\u03b9\u03b3\u03cc\u03ba\u03bb\u03b5\u03b9\u03c3\u03b5 \u03c4\u03bf \u03bc\u03ac\u03c4\u03b9 \u03c0\u03c1\u03bf\u03c2 \u03c4\u03b1 \u03b4\u03b5\u03be\u03b9\u03ac",
          "\u03c6\u03ce\u03c4\u03b9\u03c3\u03ad \u03c4\u03bf"
        ]
      },
      "es-co": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "puedes parpadear",
          "sube el brillo",
          "pon tus ojos del color que yo elija",
          "activa la cara de escucha",
          "mira al suelo",
          "mira hacia tu izquierda",
          "mira a un lado y a otro",
          "mira hacia tu derecha",
          "mira al techo",
          "mira abajo y arriba",
          "entrecierra los ojos",
          "reinicia tu cara",
          "puedes sonre\u00edr",
          "haz la animaci\u00f3n de giro",
          "activa la cara de pensar"
        ]
      },
      "es-es": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "puedes parpadear",
          "sube el brillo",
          "pon tus ojos del color que yo elija",
          "activa la cara de escucha",
          "mira al suelo",
          "mira hacia tu izquierda",
          "mira a un lado y a otro",
          "mira hacia tu derecha",
          "mira al techo",
          "mira abajo y arriba",
          "entrecierra los ojos",
          "reinicia tu cara",
          "puedes sonre\u00edr",
          "haz la animaci\u00f3n de giro",
          "activa la cara de pensar"
        ]
      },
      "eu-es": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "kliskatu begiak",
          "distira gehitu",
          "egin begi eroak",
          "ezarri nahi dudan begi kolorea",
          "jarri begiak gris",
          "jarri entzuteko aurpegia",
          "jaitsi begiak",
          "begiratu ezkerrera",
          "begiratu ezkerretik eskuinera",
          "begiratu eskuinera",
          "igo begiak",
          "begiratu goitik behera",
          "estutu begiak",
          "utzi dena lehen bezala",
          "jarri aurpegi alaia",
          "biratu begiak",
          "jarri pentsatzeko aurpegia"
        ]
      },
      "fa-ir": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "\u0628\u0647 \u0645\u0646 \u0628\u0644\u06cc\u06a9 \u0628\u062f\u0647",
          "\u062f\u06cc\u0645 \u0686\u0634\u0645",
          "\u062a\u063a\u06cc\u06cc\u0631 \u0631\u0646\u06af \u0686\u0634\u0645",
          "\u0631\u0646\u06af \u0686\u0634\u0645 \u0647\u0627",
          "\u062a\u0638\u0627\u0647\u0631 \u0628\u0647 \u06af\u0648\u0634 \u062f\u0627\u062f\u0646",
          "\u0646\u06af\u0627\u0647 \u0631\u0627\u0633\u062a \u0648 \u0686\u067e",
          "\u0628\u0627\u0644\u0627 \u0648 \u067e\u0627\u06cc\u06cc\u0646 \u0646\u06af\u0627\u0647 \u06a9\u0646\u06cc\u062f",
          "\u06a9\u0645\u06cc \u0628\u0631\u0627\u06cc \u0645\u0646 \u062e\u0633\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f",
          "\u0628\u0627\u0632\u06af\u0634\u062a \u0628\u0647 \u0635\u0641\u062d\u0647 \u0646\u0645\u0627\u06cc\u0634 \u067e\u06cc\u0634 \u0641\u0631\u0636 \u062e\u0648\u062f \u0631\u0627",
          "\u0631\u0648\u06cc \u0686\u0647\u0631\u0647 \u0627\u06cc \u0644\u0628\u062e\u0646\u062f \u0628\u0632\u0646\u06cc\u062f",
          "\u062a\u0638\u0627\u0647\u0631 \u0628\u0647 \u0641\u06a9\u0631 \u06a9\u0631\u062f\u0646"
        ]
      },
      "fr-fr": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "fais-moi un clignement",
          "r\u00e9duit un peu",
          "mets tes yeux dans la couleur que je choisis",
          "fais comme si tu \u00e9coutais",
          "regarde par terre",
          "regarde sur ta gauche",
          "regarde de gauche \u00e0 droite",
          "regarde sur ta droite",
          "regarde le plafond",
          "regarde de haut en bas",
          "plisse un peu les yeux",
          "r\u00e9initialise ton visage",
          "peux-tu sourire",
          "lance l'animation de rotation",
          "active le visage de r\u00e9flexion"
        ]
      },
      "gl-es": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "podes pestanexar",
          "aumenta o brillo",
          "pon os teus ollos da cor que eu escolla",
          "activa a cara de escoita",
          "mira ao chan",
          "podes mirar \u00e1 esquerda",
          "mira dun lado ao outro",
          "podes mirar \u00e1 dereita",
          "mira ao teito",
          "mira abaixo e arriba",
          "entrecerra os ollos",
          "podes reiniciarte",
          "podes sorrir",
          "fai a animaci\u00f3n de xiro",
          "activa a cara de pensar"
        ]
      },
      "it-it": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "sbatti l'occhio a destra",
          "abbassalo un p\u00f2",
          "metti i tuoi occhi del colore che scelgo io",
          "fai finta di ascoltare",
          "guarda per terra",
          "puoi guardare a sinistra",
          "guarda da sinistra a destra",
          "puoi guardare a destra",
          "guarda il soffitto",
          "guarda dall'alto in basso",
          "stringi un po' gli occhi",
          "puoi reimpostarti",
          "puoi sorridere",
          "avvia l'animazione della rotazione",
          "fai finta di pensare"
        ]
      },
      "kab": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "se\u0263me\u1e0d allen",
          "rnu tafeggagt",
          "xdem allen imhewwlen",
          "b\u0263i\u0263 yini n wallen udmawan",
          "b\u0263i\u0263 allen kaki",
          "b\u0263i\u0263 udem n usflid",
          "\u1e63ubb allen",
          "wali \u0263er uzelma\u1e0d",
          "wali \u0263er sin idisan",
          "wali \u0263er uyeffus",
          "refd allen",
          "wali ddaw d nnig",
          "seddi allen-ik",
          "e\u01e7\u01e7 kullec am zik",
          "sken-d tadmert",
          "zzi allen",
          "b\u0263i\u0263 udem n uxemmem"
        ]
      },
      "nl-nl": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "kun je knipperen",
          "verhelder",
          "ik wil zelf een oogkleur kiezen",
          "doe alsof je luistert",
          "kijk naar de vloer",
          "kijk naar je linkerkant",
          "kijk van links naar rechts",
          "kijk naar je rechterkant",
          "kijk naar het plafond",
          "kijk omlaag en omhoog",
          "knijp je ogen een beetje dicht",
          "zet je gezicht terug",
          "kun je lachen",
          "start de draaianimatie",
          "doe alsof je nadenkt"
        ]
      },
      "oc-fr": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "parpelleja",
          "atenua un pauc los u\u00e8lhs",
          "v\u00f2li una color d'u\u00e8lhs personalizada",
          "met cara d'escotar",
          "garda cap aval",
          "garda cap a l'esqu\u00e8rra",
          "garda d'esqu\u00e8rra a drecha",
          "garda cap a la drecha",
          "garda cap amont",
          "garda amont e aval",
          "p\u00f2des te re\u00efniciar",
          "p\u00f2des sorire",
          "fai l'animacion de torn",
          "met cara de pensar"
        ]
      },
      "pl-pl": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "Daj mi mrugn\u0105\u0107",
          "dolne oko",
          "zmiana koloru oczu",
          "zmiana koloru oka",
          "Udawaj, \u017ce s\u0142uchasz",
          "Ogl\u0105daj w lewo i w prawo",
          "Patrz w g\u00f3r\u0119 i w d\u00f3\u0142",
          "Wr\u00f3\u0107 do domy\u015blnego wygl\u0105du",
          "wykonuj animacj\u0119 u\u015bmiechu",
          "wykona\u0107 animacj\u0119 p\u0119tania",
          "Udawaj, \u017ce my\u015bl\u0119"
        ]
      },
      "pt-br": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "voc\u00ea consegue piscar",
          "aumente o brilho",
          "deixe seus olhos da cor que eu escolher",
          "ative a cara de escuta",
          "olhe para o ch\u00e3o",
          "vire o olhar para a esquerda",
          "olhe de um lado para o outro",
          "vire o olhar para a direita",
          "olhe para o teto",
          "olhe de cima a baixo",
          "aperte os olhos",
          "reinicie a sua cara",
          "me d\u00e1 um sorriso",
          "fa\u00e7a a anima\u00e7\u00e3o de rodopio",
          "ative a cara de pensar"
        ]
      },
      "pt-pt": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "consegues piscar",
          "aumente o brilho",
          "p\u00f5e os teus olhos da cor que eu escolher",
          "ativa a cara de escuta",
          "olha para o ch\u00e3o",
          "vira o olhar para a esquerda",
          "olha de um lado ao outro",
          "vira o olhar para a direita",
          "olha para o teto",
          "olha de cima a baixo",
          "semicerra os olhos",
          "reinicia a tua cara",
          "consegues sorrir",
          "faz a anima\u00e7\u00e3o de rodopio",
          "ativa a cara de pensar"
        ]
      },
      "ru-ru": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "\u043c\u043e\u0440\u0433\u043d\u0438 \u043d\u0430\u043b\u0435\u0432\u043e",
          "\u0441\u0434\u0435\u043b\u0430\u0439 \u044f\u0440\u0447\u0435",
          "\u043f\u043e\u043c\u0435\u043d\u044f\u0439 \u0446\u0432\u0435\u0442 \u0433\u043b\u0430\u0437"
        ]
      },
      "sv-se": {
        "name": "Mark 1 Enclosure Control",
        "description": "Control the Mycroft Mark 1 enclosure by voice.",
        "examples": [
          "kan du blinka",
          "bli ljusare",
          "l\u00e5t mig v\u00e4lja en egen \u00f6gonf\u00e4rg",
          "l\u00e5tsas att du lyssnar",
          "titta g\u00e4rna ned\u00e5t",
          "titta g\u00e4rna \u00e5t v\u00e4nster",
          "titta fr\u00e5n v\u00e4nster till h\u00f6ger",
          "titta g\u00e4rna \u00e5t h\u00f6ger",
          "titta g\u00e4rna upp\u00e5t",
          "titta ner och upp",
          "kisa lite med \u00f6gonen",
          "\u00e5terst\u00e4ll ditt ansikte",
          "kan du le",
          "starta snurranimationen",
          "l\u00e5tsas att du t\u00e4nker"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2018-04-09T21:39:14Z",
    "last_updated": "2026-04-04T04:32:02.377027Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-mark1-ctrl.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't load",
          "state": "fail",
          "level": 1,
          "version_tested": "0.0.1",
          "tested_at": "2026-10-04T10:59:23+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't load",
          "state": "fail",
          "level": 1,
          "version_tested": "0.0.1",
          "tested_at": "2026-10-04T10:37:04+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't load",
          "state": "fail",
          "level": 1,
          "version_tested": "0.0.1",
          "tested_at": "2026-10-30T08:59:21+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "jeffehobbs-mark2-fip-radio",
    "skill_id": null,
    "name": "mark2-fip-radio",
    "description": "Turn a Mycroft Mark II into a FIP internet radio (now-playing screen, LED volume ring, quiet fan) on stock Raspberry Pi OS \u2014 no custom image.",
    "examples": [],
    "tags": [
      "fip",
      "internet-radio",
      "mark-ii",
      "mycroft",
      "openvoiceos",
      "radio-france",
      "raspberry-pi",
      "sj201"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/jeffehobbs/mark2-fip-radio",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "jeffehobbs",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "On the Mark II (or over SSH):\n\ngit clone https://github.com/jeffehobbs/mark2-fip-radio\ncd mark2-fip-radio\nsudo ./install.sh\nsudo reboot\n\nAfter the reboot it comes up playing FIP with the now-playing screen. To remove\neverything: `sudo ./uninstall.sh`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-16T18:59:53Z",
    "last_updated": "2026-08-31T19:46:51Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-markovonnx",
    "skill_id": null,
    "name": "markovonnx",
    "description": "Markov chains and Hidden Markov Models with ONNX export and Kneser-Ney smoothing.",
    "examples": [],
    "tags": [
      "hmm",
      "hmm-viterbi-algorithm",
      "markov",
      "markov-chain",
      "markov-model",
      "onnx",
      "openvoiceos",
      "vibe-coded",
      "viterbi"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/markovonnx",
    "package_name": "markovonnx",
    "pypi_version": "1.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "TigreGotico",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install markovonnx              # core (numpy, onnx, onnxruntime)\npip install markovonnx[ovos]        # + OVOS voice assistant plugins\npip install markovonnx[bpe]         # + BPE tokenizer support\npip install markovonnx[quantize]    # + INT8 quantization"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-19T14:05:00Z",
    "last_updated": "2026-05-21T16:02:23.876062Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-math-practice",
    "skill_id": "ovos-skill-math-practice.andlo",
    "name": "Math Practice",
    "description": "Math practice for kids - counting, times table recitation, and interactive quizzes across addition, subtraction, multiplication, division, and percentages. Fully offline.",
    "examples": [
      "count to ten",
      "say the 5 times table",
      "quiz me on the 3 times table",
      "quiz me on percentages",
      "quiz me on hard addition",
      "quiz me on mixed operators",
      "quiz me on estimation",
      "quiz me on decimal addition",
      "give me a full math quiz"
    ],
    "tags": [
      "math",
      "education",
      "times tables",
      "quiz",
      "kids"
    ],
    "category": "Education",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-math-practice/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-math-practice",
    "package_name": "ovos-skill-math-practice",
    "pypi_version": "0.0.8",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-math-practice"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Regnetr\u00e6ning",
        "description": "Regnetr\u00e6ning til b\u00f8rn - t\u00e6lle, tabel-recitation, og interaktive quizzer i plus, minus, gange, division og procent. Fuldst\u00e6ndig offline.",
        "examples": [
          "t\u00e6l til ti",
          "sig 5 tabellen",
          "quiz mig i 3 tabellen",
          "quiz mig i procent",
          "quiz mig i sv\u00e6r division",
          "quiz mig i blandede regnearter",
          "quiz mig i estimering",
          "quiz mig i decimaltal i addition",
          "quiz mig i det hele"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T18:31:58Z",
    "last_updated": "2026-10-01T10:10:37.028605Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-math-practice.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 21/33 golden",
          "state": "warn",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.8",
          "tested_at": "2026-10-04T11:01:06+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 21,
            "counted": 33
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 24/33 golden",
          "state": "warn",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.8",
          "tested_at": "2026-10-04T10:38:19+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 24,
            "counted": 33
          }
        },
        "alpha": {
          "label": "\u2713 32/33 golden",
          "state": "warn",
          "level": 3,
          "version_tested": "0.0.8",
          "tested_at": "2026-10-30T08:59:28+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 32,
            "counted": 33
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-metronome",
    "skill_id": "ovos-skill-metronome.andlo",
    "name": "Metronome",
    "description": "A metronome - set a tempo in BPM and get an audible click track with an accented downbeat. Fully deterministic and offline: generated click tones, not recordings.",
    "examples": [
      "set a metronome to 120 bpm",
      "start a metronome",
      "stop the metronome"
    ],
    "tags": [
      "music",
      "metronome",
      "tempo",
      "practice"
    ],
    "category": "Music",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-metronome/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-metronome",
    "package_name": "ovos-skill-metronome",
    "pypi_version": "0.0.5",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-metronome"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Metronom",
        "description": "En metronom - s\u00e6t et tempo i bpm og f\u00e5 et h\u00f8rbart klik med accent p\u00e5 hvert fjerde slag. Fuldst\u00e6ndig deterministisk og offline: genererede kliktoner, ikke optagelser.",
        "examples": [
          "s\u00e6t en metronom til 120 bpm",
          "start en metronom",
          "stop metronomen"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:13Z",
    "last_updated": "2026-10-02T10:20:23.682364Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-metronome.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 5/5 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.5",
          "tested_at": "2026-10-04T11:01:19+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 5,
            "counted": 5
          }
        },
        "testing": {
          "label": "\u2713 4/5 golden \u00b7 stops",
          "state": "warn",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.5",
          "tested_at": "2026-10-04T10:38:25+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 5
          }
        },
        "alpha": {
          "label": "\u2713 4/5 golden \u00b7 stops",
          "state": "warn",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.0.5",
          "tested_at": "2026-10-30T08:59:37+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 5
          }
        }
      }
    }
  },
  {
    "id": "smartgic-MMM-ovos-wakeword",
    "skill_id": null,
    "name": "MMM-ovos-wakeword",
    "description": "MagicMirror module for Open Voice OS wakeword detection.",
    "examples": [],
    "tags": [
      "magicmirror",
      "magicmirror2",
      "module",
      "mycroft",
      "mycroft-skill",
      "mycroftai",
      "openvoiceos",
      "ovos",
      "wakeword"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/MMM-ovos-wakeword",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "smartgic",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 6,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Clone this repository into `~/MagicMirror/modules` _(replace with your path)_ directory.\n\ncd ~/MagicMirror/modules\ngit clone https://github.com/smartgic/MMM-ovos-wakeword.git\n\nThen update the MagicMirror configuration file `~/MagicMirror/config/config.js` _(replace with your path)_.\n\n{\n    module: \"MMM-ovos-wakeword\",\n    position: \"lower_third\",\n    config: {\n      title: \"Open Voice OS\",\n      apiKey: \"en323q9WBNMK3Q04WIPNEAsdfhesammhp44\",\n      maxMessages: 1,\n      opacity: 0.5\n    }\n}"
      },
      {
        "heading": "Configuration",
        "content": "In order to reach the `/ovos` route on your MagicMirror, you need to allow the remote connection for a specific IP address or for a network range in your MagicMirror by changing the `~/MagicMirror/config/config.js` _(replace with your path)_.\n\nipWhitelist: ['127.0.0.1', '::ffff:127.0.0.1', '::1', '::ffff:192.168.1.1/24'];\n\nThe example above will allows all the connection from `192.168.1.0/24` network to perform remote connections.\n\n| Option        | Default         | Description                                                              |\n| ------------- | --------------- | ------------------------------------------------------------------------ |\n| `maxMessages` | `5`             | How many messages should be displayed on the screen.                     |\n| `image`       | `wakeword.png\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-04-01T20:19:20Z",
    "last_updated": "2024-03-19T12:47:47Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-morse-code",
    "skill_id": "ovos-skill-morse-code.andlo",
    "name": "Morse Code",
    "description": "Encodes text to Morse code, played as generated audible beeps. Fully offline, nothing recorded.",
    "examples": [
      "how do you say SOS in morse code",
      "play hello world in morse"
    ],
    "tags": [
      "morse code",
      "novelty",
      "ham radio"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-morse-code/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-morse-code",
    "package_name": "ovos-skill-morse-code",
    "pypi_version": "0.0.3",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-morse-code"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Morsekode",
        "description": "Koder tekst til morsekode, afspillet som genererede h\u00f8rbare bip. Fuldst\u00e6ndig offline, ingen optagelser.",
        "examples": [
          "hvordan siger man SOS p\u00e5 morse",
          "spil hello world p\u00e5 morse"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:18Z",
    "last_updated": "2026-10-01T10:10:50.602539Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-morse-code.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:01:33+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "testing": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:38:31+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "alpha": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T08:59:47+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-moviemaster",
    "skill_id": "skill-moviemaster.openvoiceos",
    "name": "Movie Master",
    "description": "Find information about movies, actors, and production details. Easily find information about a movie with your voice.",
    "examples": [
      "What is the movie _______ about?",
      "Tell me about the movie _______",
      "Who plays in the movie _______?",
      "What genres does the flick _______ belong to?",
      "Give me a synopsis of the movie _______.",
      "When was the movie _______ made?",
      "Describe the film _______",
      "What are popular movies playing now?",
      "What films do you recommend like _______?",
      "How long is the movie _______?",
      "What are the highest rated movies out?"
    ],
    "tags": [
      "TMDB",
      "Movies",
      "Actors",
      "entertainment"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-moviemaster/dev/PrimaryLogo_Green.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-moviemaster",
    "package_name": "ovos-skill-moviemaster",
    "pypi_version": "0.0.12",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Install the skill with pip:\n\npip install git+https://github.com/OpenVoiceOS/ovos-skill-moviemaster\n\n### After installation\n\nAsk a question about a movie, for example \"Tell me about the movie Monty Python and the Holy Grail\".\n\nThis skill requires your own free TMDb API key \u2014 it does not ship with one:\n\n1. Sign up for a free account [at TMDb](https://www.themoviedb.org/account/signup).\n2. Get an API key [from your TMDb account settings](https://www.themoviedb.org/settings/api). TMDb issues a v3 key and a v4 key. This skill uses the v3 key.\n3. Enter the v3 key in your [skill settings file](https://openvoiceos.github.io/community-docs/082-ht_skills_config/) under `apiv3`.\n\nWithout a configured key, the skill will speak an error instead of answering movie questions."
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Movie Master",
        "description": "Cerca informaci\u00f3 sobre pel\u00b7l\u00edcules, actors i detalls de producci\u00f3. Trobeu f\u00e0cilment informaci\u00f3 sobre una pel\u00b7l\u00edcula amb la veu.",
        "examples": [
          "De qu\u00e8 tracta la pel\u00b7l\u00edcula _______?",
          "Explica'm coses de la pel\u00b7l\u00edcula _______",
          "Qui surt a la pel\u00b7l\u00edcula _______?",
          "A quins g\u00e8neres pertany la pel\u00b7l\u00edcula _______?",
          "Busca informaci\u00f3 sobre la pel\u00b7l\u00edcula _______.",
          "Quan es va fer la pel\u00b7l\u00edcula _______?",
          "Tens informaci\u00f3 sobre la pel\u00b7l\u00edcula _______?",
          "Quines pel\u00b7l\u00edcules populars hi ha ara en cartellera?",
          "Quines pel\u00b7l\u00edcules com _______  recomanes?",
          "Quant dura la pel\u00b7l\u00edcula _______?",
          "Quines s\u00f3n les pel\u00b7l\u00edcules amb millor puntuaci\u00f3?"
        ]
      },
      "da-dk": {
        "name": "Movie Master",
        "description": "Find oplysninger om film, skuespillere og produktionsdetaljer. Find nemt information om en film med din stemme.",
        "examples": [
          "Hvad handler filmen _______ om?",
          "Fort\u00e6l mig om filmen _______",
          "Hvem spiller i filmen _______?",
          "Hvilke genrer h\u00f8rer filmen _______ til?",
          "Se efter information om filmen _______.",
          "Hvorn\u00e5r blev filmen _______ lavet?",
          "Har du info om filmen _______?",
          "Hvilke popul\u00e6re film afspilles nu?",
          "Hvilke film anbefaler du som _______?",
          "Hvor lang er filmen _______?",
          "Hvad er de h\u00f8jest vurderede film ude?"
        ]
      },
      "de-de": {
        "name": "Movie Master",
        "description": "Finde Informationen zu Filmen, Schauspielern und Produktionsdetails. Finde ganz einfach mit Deiner Stimme Informationen zu einem Film.",
        "examples": [
          "Worum geht es in dem Film _______?",
          "Erz\u00e4hl mir von dem Film _______",
          "Wer spielt in dem Film _______ mit?",
          "Zu welchem Genre geh\u00f6rt der Streifen _______?",
          "Suche nach Informationen zum Film _______.",
          "Wann wurde der Film _______ gedreht?",
          "Hast Du Informationen zum Film _______?",
          "Welche beliebten Filme laufen derzeit?",
          "Welche Filme wie _______ empfiehlst Du?",
          "Wie lang ist der Film _______?",
          "Welche Filme haben die h\u00f6chsten Bewertungen?"
        ]
      },
      "es-co": {
        "name": "Maestro de pel\u00edculas",
        "description": "Encuentra informaci\u00f3n sobre pel\u00edculas, actores y detalles de producci\u00f3n. Encuentra f\u00e1cilmente informaci\u00f3n sobre una pel\u00edcula con tu voz."
      },
      "es-es": {
        "name": "Maestro de pel\u00edculas",
        "description": "Encuentra informaci\u00f3n sobre pel\u00edculas, actores y detalles de producci\u00f3n. Encuentra f\u00e1cilmente informaci\u00f3n sobre una pel\u00edcula con tu voz."
      },
      "eu-es": {
        "name": "Filmaren maisua",
        "description": "Bilatu filmei, aktoreei eta ekoizpen-xehetasunei buruzko informazioa. Ahotsa duen film bati buruzko informazioa erraz aurki dezakezu."
      },
      "fa-ir": {
        "name": "Movie Master",
        "description": "Find information about movies, actors, and production details. Easily find information about a movie with your voice.",
        "examples": [
          "\u0644\u06cc\u0633\u062a \u0639\u0645\u0644 \u0633\u0631\u06cc",
          "\u0686\u0647 \u06a9\u0633\u06cc \u062f\u0631 \u0641\u06cc\u0644\u0645 _______",
          "\u0641\u06cc\u0644\u0645 \u0686\u06cc\u0633\u062a _______ \u062f\u0631\u0628\u0627\u0631\u0647",
          "\u0646\u0645\u0627\u06cc\u0634 \u0639\u0645\u0644 \u0641\u0644\u06cc\u06a9\u0633",
          "\u0641\u06cc\u0644\u0645 \u0686\u0647 \u0646\u0648\u0639\u06cc \u0627\u0633\u062a _______",
          "\u0644\u06cc\u0633\u062a \u0641\u06cc\u0644\u0645 \u0647\u0627\u06cc \u0645\u062d\u0628\u0648\u0628",
          "\u0641\u06cc\u0644\u0645 \u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f _______",
          "\u0637\u0648\u0644 \u0641\u06cc\u0644\u0645 \u0686\u0642\u062f\u0631 \u0627\u0633\u062a _______",
          "\u0644\u06cc\u0633\u062a \u0641\u06cc\u0644\u0645 \u0647\u0627\u06cc \u0628\u0631\u062a\u0631",
          "\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0641\u0644\u06a9 _______ \u0622\u0632\u0627\u062f\u06cc"
        ]
      },
      "fr-fr": {
        "name": "Movie Master",
        "description": "Trouvez des informations sur les films, les acteurs et la production. Demandez un synopsis, la distribution, la dur\u00e9e ou l'ann\u00e9e de sortie \u00e0 la voix.",
        "examples": [
          "De quoi parle le film _______ ?",
          "Raconte-moi le film _______.",
          "Qui joue dans le film _______ ?",
          "\u00c0 quels genres appartient le film _______ ?",
          "Donne-moi des informations sur le film _______.",
          "Quand le film _______ est-il sorti ?",
          "As-tu des informations sur le film _______ ?",
          "Quels sont les films populaires du moment ?",
          "Quels films recommandes-tu comme _______ ?",
          "Combien de temps dure le film _______ ?",
          "Quels sont les films les mieux not\u00e9s du moment ?"
        ]
      },
      "gl-es": {
        "name": "Movie Master",
        "description": "Busca informaci\u00f3n sobre filmes, actores, actrices e detalles de produci\u00f3n. Consigue informaci\u00f3n sobre unha pel\u00edcula coa t\u00faa voz facilmente.",
        "examples": [
          "(Sobre|De) que (trata|vai) (a pel\u00edcula|a peli|o filme) _______?",
          "F\u00e1lame (da pel\u00edcula|da peli|do filme) _______",
          "Quen (act\u00faa|aparece) (na pel\u00edcula|na peli|no filme) _______?",
          "A que x\u00e9nero pertence (a pel\u00edcula|a peli|o filme) _______?",
          "(Busca|Buscar|Procura|Procurar|Atopa|Atopar|Consigue|Conseguir) (info|informaci\u00f3n) (sobre a|sobre o|da|do) (pel\u00edcula|peli|filme) _______.",
          "(Cando se fixo|De cando \u00e9) (a pel\u00edcula|a peli|o filme) _______?",
          "Tes (info|informaci\u00f3n) (sobre a|sobre o|da|do) (pel\u00edcula|peli|filme) _______?",
          "Que (pel\u00edculas|pelis|filmes) (populares|co\u00f1ecidas) (se botan|se est\u00e1n botando|se est\u00e1n a botar|se po\u00f1en|se est\u00e1n po\u00f1endo|se est\u00e1n a po\u00f1er|se pon|se est\u00e1n pondo|se est\u00e1n a p\u00f3r|se ven|se poden ver|se miran|se poden mirar|se reproducen|se est\u00e1n reproducindo|se est\u00e1n a reproducir) agora mesmo?",
          "Que (pel\u00edculas|pelis|filmes) recomendas (coma|como|do estilo de|do tipo de|en plan) _______?",
          "Canto dura (a pel\u00edcula|a peli|o filme) _______?",
          "Cales son (as pel\u00edculas|as pelis|os filmes) (con mellor valoraci\u00f3n|con maior valoraci\u00f3n|con m\u00e1is puntuaci\u00f3n|con m\u00e1is valoraci\u00f3n|con mellor puntuaci\u00f3n|con maior puntuaci\u00f3n|mellor valoradas|mellor valorados|mellor puntuadas|mellor puntuados|m\u00e1is puntuadas|m\u00e1is puntuados)?"
        ]
      },
      "it-it": {
        "name": "Movie Master",
        "description": "Trova informazioni su film, attori e dettagli di produzione. Trova facilmente informazioni su un film con la voce.",
        "examples": [
          "Di cosa parla il film _______?",
          "Parlami del film _______",
          "Chi recita nel film _______?",
          "A quali generi appartiene il film _______?",
          "Cerca informazioni sul film _______.",
          "Quando \u00e8 stato girato il film _______?",
          "Hai informazioni sul film _______?",
          "Quali film popolari sono al cinema ora?",
          "Quali film mi consigli simili a _______?",
          "Quanto dura il film _______?",
          "Quali sono i film pi\u00f9 votati usciti?"
        ]
      },
      "nl-nl": {
        "name": "Movie Master",
        "description": "Vind informatie over films, acteurs en productiedetails. Zoek eenvoudig met je stem informatie over een film op.",
        "examples": [
          "Waar gaat de film _______ over?",
          "Vertel me over de film _______",
          "Wie speelt er in de film _______?",
          "Tot welke genres behoort de film _______?",
          "Zoek informatie over de film _______.",
          "Wanneer is de film _______ gemaakt?",
          "Heb je informatie over de film _______?",
          "Welke films zijn nu populair?",
          "Welke films raad je aan die op _______ lijken?",
          "Hoe lang is de film _______?",
          "Welke films hebben de hoogste beoordelingen?"
        ]
      },
      "pl-pl": {
        "name": "Movie Master",
        "description": "Find information about movies, actors, and production details. Easily find information about a movie with your voice.",
        "examples": [
          "lista dzia\u0142anie",
          "kt\u00f3ry gra w filmie _______",
          "opis filmu _______",
          "poka\u017c filmy dzia\u0142anie",
          "Co to za flic? _______",
          "poka\u017c popularne filmy",
          "lista film\u00f3w jak _______",
          "Ile czasu ma film _______",
          "lista top film\u00f3w",
          "Kiedy by\u0142 film _______ uwolnione"
        ]
      },
      "pt-br": {
        "name": "Movie Master",
        "description": "Encontre informa\u00e7\u00f5es sobre filmes, atores e detalhes de produ\u00e7\u00e3o. Descubra facilmente informa\u00e7\u00f5es sobre um filme usando a voz.",
        "examples": [
          "Sobre o que \u00e9 o filme _______?",
          "Me fale sobre o filme _______",
          "Quem atua no filme _______?",
          "A quais g\u00eaneros pertence o filme _______?",
          "Procure informa\u00e7\u00f5es sobre o filme _______.",
          "Quando o filme _______ foi feito?",
          "Voc\u00ea tem informa\u00e7\u00f5es sobre o filme _______?",
          "Quais s\u00e3o os filmes populares em cartaz agora?",
          "Quais filmes voc\u00ea recomenda parecidos com _______?",
          "Quanto tempo dura o filme _______?",
          "Quais s\u00e3o os filmes mais bem avaliados?"
        ]
      },
      "pt-pt": {
        "name": "Movie Master",
        "description": "Encontra informa\u00e7\u00e3o sobre filmes, atores e detalhes de produ\u00e7\u00e3o. Procura facilmente informa\u00e7\u00e3o sobre um filme com a tua voz.",
        "examples": [
          "sobre o que \u00e9 o filme _______?",
          "descreve o filme _______",
          "quem atua no filme _______?",
          "a que g\u00e9neros pertence o filme _______?",
          "quanto tempo dura o filme _______?",
          "em que ano foi o filme _______ feito?",
          "quando estreou o filme _______?",
          "recomenda filmes semelhantes a _______",
          "procura por filmes populares em cartaz agora",
          "quais s\u00e3o os filmes mais bem classificados?",
          "encontra filmes de fic\u00e7\u00e3o cient\u00edfica"
        ]
      },
      "ru-ru": {
        "name": "Movie Master",
        "description": "Find information about movies, actors, and production details. Easily find information about a movie with your voice.",
        "examples": [
          "\u0448\u043e\u0443 \u041f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0448\u043e\u0443",
          "\u041a\u0442\u043e \u0437\u0432\u0451\u0437\u0434\u044b \u0432 \u0444\u0438\u043b\u044c\u043c\u0435? _______",
          "\u043e\u043f\u0438\u0448\u0438\u0442\u0435 \u0444\u0438\u043b\u044c\u043c _______",
          "\u0448\u043e\u0443 \u041f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0444\u0438\u043b\u044c\u043c\u044b",
          "\u0427\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u0444\u043b\u0438\u043a? _______",
          "\u041f\u043e\u0438\u0441\u043a \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0444\u0438\u043b\u044c\u043c\u043e\u0432",
          "\u0421\u043d\u0438\u043c\u0430\u0439 \u0444\u0438\u043b\u044c\u043c\u044b, \u043a\u0430\u043a _______",
          "\u0414\u043b\u0438\u043d\u0430 \u0444\u0438\u043b\u044c\u043c\u0430 _______",
          "\u0414\u0430\u0439\u0442\u0435 \u043c\u043d\u0435 \u043b\u0443\u0447\u0448\u0438\u0435 \u0444\u0438\u043b\u044c\u043c\u044b.",
          "\u041a\u043e\u0433\u0434\u0430 \u0444\u0438\u043b\u044c\u043c _______ \u0412\u044b\u0445\u043e\u0434\u0438."
        ]
      },
      "sv-se": {
        "name": "Movie Master",
        "description": "Hitta information om filmer, sk\u00e5despelare och produktionsdetaljer. Hitta enkelt information om en film med r\u00f6sten.",
        "examples": [
          "Vad handlar filmen _______ om?",
          "Ber\u00e4tta om filmen _______",
          "Vem medverkar i filmen _______?",
          "Vilka genrer tillh\u00f6r filmen _______?",
          "S\u00f6k information om filmen _______.",
          "N\u00e4r gjordes filmen _______?",
          "Har du information om filmen _______?",
          "Vilka popul\u00e4ra filmer g\u00e5r p\u00e5 bio nu?",
          "Vilka filmer rekommenderar du som liknar _______?",
          "Hur l\u00e5ng \u00e4r filmen _______?",
          "Vilka \u00e4r de h\u00f6gst rankade filmerna just nu?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2023-12-16T13:07:08Z",
    "last_updated": "2025-06-08T23:21:30.100946Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-moviemaster.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.12",
          "tested_at": "2026-10-04T11:01:46+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.12",
          "tested_at": "2026-10-04T10:38:37+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 96/96 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.7.4a1",
          "tested_at": "2026-10-30T08:59:56+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 96,
            "counted": 96
          }
        }
      }
    }
  },
  {
    "id": "trueflint-mqtt-ovos-bridge",
    "skill_id": null,
    "name": "mqtt-ovos-bridge",
    "description": "Make your Open Voice OS an MQTT device",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/trueflint/mqtt-ovos-bridge",
    "package_name": "mqtt-ovos-bridge",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "trueflint",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### 1. Clone the repository\n\ngit clone https://github.com/trueflint/mqtt-ovos-bridge.git\ncd mqtt-ovos-bridge\n\n### 2. Create your configuration file\n\nmkdir -p ~/.config/mqtt-ovos-bridge\ncp config.example.json ~/.config/mqtt-ovos-bridge/config.json\n\nEdit `~/.config/mqtt-ovos-bridge/config.json` and fill in your MQTT broker's address and credentials:\n\n{\n  \"mqtt\": {\n    \"host\": \"192.168.1.x\",\n    \"port\": 1883,\n    \"username\": \"your_mqtt_username\",\n    \"password\": \"your_mqtt_password\"\n  }\n}\n\nIf your broker does not require authentication, you can leave `username` and `password` as empty strings or omit them.\n\n### 3. Install\n\nmake install\n\nThis installs the Python package, registers a systemd user service, and starts it. If a config file already exists at the path above it will not be overwritte\u2026"
      },
      {
        "heading": "Uninstalling",
        "content": "make uninstall\n\nThis stops and removes the systemd service and uninstalls the Python package. Your config file in `~/.config/mqtt-ovos-bridge/` is left in place."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-09T15:40:08Z",
    "last_updated": "2026-05-09T15:50:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-music-assistant",
    "skill_id": null,
    "name": "Music Assistant",
    "description": null,
    "examples": [
      "play soma fm radio",
      "play secret agent",
      "play metal detector"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-music-assistant",
    "package_name": "ovos-skill-music-assistant",
    "pypi_version": "0.2.0a1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": true,
    "settings_fields": [
      {
        "name": "url",
        "type": "text",
        "label": "Music Assistant server address"
      },
      {
        "name": "token",
        "type": "text",
        "label": "Music Assistant API token"
      }
    ],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "Check which player stack you run before installing anything. On the classic\n`ovos-audio`/OCP stack, this skill does the catalog search and hands playback\nto [ovos-media-plugin-mass](https://github.com/OpenVoiceOS/ovos-media-plugin-mass);\ninstall both together. On the newer `ovos-media` stack, this skill is replaced\nentirely at flag day by\n[ovos-media-provider-mass](https://github.com/OpenVoiceOS/ovos-media-provider-mass),\nwhich does catalog search and playback on its own \u2014 do not install this skill\nthere.\n\nFor the classic stack:\n\npip install ovos-skill-music-assistant ovos-media-plugin-mass\n\nSet your Music Assistant server URL in this skill's settings \u2014 the\n`url` field in `settings.json`, reachable through the OVOS control panel\nunder this skill's settings page:\n\n{ \"url\": \"http://192.168.1\u2026"
      }
    ],
    "languages": [
      "en-us",
      "eu-es",
      "gl-es"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-07T22:37:54Z",
    "last_updated": "2026-09-02T18:40:44.756410Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-mycroft-classic-listener",
    "skill_id": null,
    "name": "mycroft-classic-listener",
    "description": "simpler alternative to ovos-listener, historical reference to classic mycroft-core implementation for the mark1 device",
    "examples": [],
    "tags": [
      "archived",
      "mycroft",
      "openvoiceos",
      "pyaudio",
      "speech-recognition",
      "unmaintained",
      "wake-words"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/mycroft-classic-listener",
    "package_name": "mycroft-classic-listener",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "uv pip install -e ."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-08T18:50:37Z",
    "last_updated": "2025-02-05T20:46:44.596239Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "jumper047-mycroft-mqtt-adapter",
    "skill_id": null,
    "name": "mycroft-mqtt-adapter",
    "description": "Skill for Mycroft Voice Assistant to be controlled via MQTT protocol",
    "examples": [],
    "tags": [
      "mycroft",
      "mycroft-skill",
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/jumper047/mycroft-mqtt-adapter",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "jumper047",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Go to [[https://account.mycroft.ai/skills]], find Installer skill, paste url https://github.com/jumper047/mycroft-mqtt-adapter into \"Skill URL\" field and press \"Save\". As alternate way you can connect to your Mycroft instance via ssh and enter `mycroft-skill install https://github.com/jumper047/mycroft-mqtt-adapter`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-06-19T08:13:27Z",
    "last_updated": "2022-08-01T23:13:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-naptime",
    "skill_id": "ovos-skill-naptime.openvoiceos",
    "name": "Naptime",
    "description": "Put the assistant to sleep when you don't want to be disturbed.",
    "examples": [
      "Go to sleep",
      "Nap time",
      "Wake up"
    ],
    "tags": [
      "nap",
      "naptime",
      "sleep",
      "do-not-disturb"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/bed.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-naptime",
    "package_name": "ovos-skill-naptime",
    "pypi_version": "0.3.15",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "The skill uses the `~/.config/mycroft/skills/ovos-skill-naptime.openvoiceos/settings.json` file. Set `mute` to `true` to mute the audio when the assistant goes to sleep.\n\n{\n  \"mute\": false\n}"
      }
    ],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Migdiada",
        "description": "Poseu a dormir l'assistent quan vulgueu que no us molestin.",
        "examples": [
          "Anem a dormir",
          "Hora de la migdiada",
          "Desperta"
        ]
      },
      "cs-cz": {
        "name": "\u0160lof\u00edk",
        "description": "Usp\u00ed asistenta, kdy\u017e nechce\u0161 b\u00fdt ru\u0161en.",
        "examples": [
          "Jdi sp\u00e1t",
          "Za\u010dni \u0161lof\u00edka",
          "Probu\u010f se"
        ]
      },
      "da-dk": {
        "name": "Naptime",
        "description": "L\u00e6g assistenten til at sove, n\u00e5r du ikke vil forstyrres.",
        "examples": [
          "G\u00e5 i seng",
          "Tid til en lur",
          "V\u00e5gn op"
        ]
      },
      "de-de": {
        "name": "Mittagsschlaf",
        "description": "Versetze den Assistenten in den Ruhezustand, wenn Du nicht gest\u00f6rt werden m\u00f6chtest",
        "examples": [
          "Geh schlafen",
          "Mittagsschlaf",
          "Wach auf"
        ]
      },
      "el-gr": {
        "name": "\u03a5\u03c0\u03bd\u03ac\u03ba\u03bf\u03c2",
        "description": "\u0392\u03ac\u03b6\u03b5\u03b9 \u03c4\u03bf\u03bd \u03b2\u03bf\u03b7\u03b8\u03cc \u03b3\u03b9\u03b1 \u03cd\u03c0\u03bd\u03bf \u03cc\u03c4\u03b1\u03bd \u03b4\u03b5\u03bd \u03b8\u03ad\u03bb\u03b5\u03b9\u03c2 \u03bd\u03b1 \u03c3\u03b5 \u03b5\u03bd\u03bf\u03c7\u03bb\u03bf\u03cd\u03bd.",
        "examples": [
          "\u03a0\u03ae\u03b3\u03b1\u03b9\u03bd\u03b5 \u03b3\u03b9\u03b1 \u03cd\u03c0\u03bd\u03bf",
          "\u039e\u03b5\u03ba\u03af\u03bd\u03b1 \u03c4\u03bf\u03bd \u03c5\u03c0\u03bd\u03ac\u03ba\u03bf",
          "\u039e\u03cd\u03c0\u03bd\u03b1"
        ]
      },
      "es-co": {
        "name": "Hora de la siesta",
        "description": "Pon el asistente a dormir cuando no quieras que te molesten.",
        "examples": [
          "Ve a dormir",
          "Hora de la siesta",
          "Despierta"
        ]
      },
      "es-es": {
        "name": "Hora de la siesta",
        "description": "Pon el asistente a dormir cuando no quieras que te molesten.",
        "examples": [
          "Ve a dormir",
          "Hora de la siesta",
          "Despierta"
        ]
      },
      "eu-es": {
        "name": "Kuluska",
        "description": "Jarri laguntzailea lo, ez zaituztenean molestatu nahi.",
        "examples": [
          "Joan lotara",
          "Siesta-denbora",
          "Esnatu"
        ]
      },
      "fa-ir": {
        "name": "\u0686\u0631\u062a",
        "description": "\u062f\u0633\u062a\u06cc\u0627\u0631 \u0631\u0627 \u0645\u06cc\u200c\u062e\u0648\u0627\u0628\u0627\u0646\u062f \u0648\u0642\u062a\u06cc \u0646\u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc \u0645\u0632\u0627\u062d\u0645\u062a \u0634\u0648\u062f.",
        "examples": [
          "\u0628\u0631\u0648 \u0628\u062e\u0648\u0627\u0628",
          "\u06cc\u06a9 \u0686\u0631\u062a \u0628\u0632\u0646",
          "\u0628\u06cc\u062f\u0627\u0631 \u0634\u0648"
        ]
      },
      "fr-fr": {
        "name": "Sieste",
        "description": "Met l'assistant en veille quand vous ne voulez pas \u00eatre d\u00e9rang\u00e9.",
        "examples": [
          "Va te coucher",
          "C'est l'heure de la sieste",
          "R\u00e9veille-toi"
        ]
      },
      "gl-es": {
        "name": "Sesta",
        "description": "Pon o asistente a durmir cando non queiras que te moleste.",
        "examples": [
          "Imos durmir",
          "Hora da sesta",
          "Esperta"
        ]
      },
      "hu-hu": {
        "name": "Szundi",
        "description": "Elalszik az asszisztens, amikor nem akarod, hogy zavarjanak.",
        "examples": [
          "Menj aludni",
          "Kezdj el szundik\u00e1lni",
          "\u00c9bredj fel"
        ]
      },
      "it-it": {
        "name": "Naptime",
        "description": "Metti l'assistente a dormire quando non vuoi essere disturbato.",
        "examples": [
          "Vai a dormire",
          "Ora della nanna",
          "Svegliati"
        ]
      },
      "kab": {
        "name": "Akud n \u1e6d\u1e6des",
        "description": "Sers am\u025biwen \u0263er \u1e6d\u1e6des ticki ur teb\u0263i\u1e0d ara ad k-yeqleq.",
        "examples": [
          "Ru\u1e25 ad \u1e6d\u1e6dse\u0263",
          "Akud n \u1e6d\u1e6des",
          "Ekker"
        ]
      },
      "nl-nl": {
        "name": "Naptijd",
        "description": "Laat de assistent slapen als je niet gestoord wilt worden.",
        "examples": [
          "ga slapen",
          "laten we een dutje doen",
          "word wakker"
        ]
      },
      "oc-fr": {
        "name": "Si\u00e8sta",
        "description": "Met\u00e8tz l'assistent a dormir quand vol\u00e8tz pas \u00e8sser desrengat.",
        "examples": [
          "Vai dormir",
          "Ora de la si\u00e8sta",
          "Desvelha-te"
        ]
      },
      "pl-pl": {
        "name": "Drzemka",
        "description": "Usypia asystenta, gdy nie chcesz by\u0107 przeszkadzany.",
        "examples": [
          "Id\u017a spa\u0107",
          "Zacznij drzemk\u0119",
          "Obud\u017a si\u0119"
        ]
      },
      "pt-br": {
        "name": "Soneca",
        "description": "Coloque o assistente para dormir quando voc\u00ea n\u00e3o quiser ser incomodado.",
        "examples": [
          "V\u00e1 dormir",
          "Hora da soneca",
          "Acorde"
        ]
      },
      "pt-pt": {
        "name": "Soneca",
        "description": "P\u00f5e o assistente a dormir quando n\u00e3o quiseres ser incomodado.",
        "examples": [
          "vai dormir",
          "hora da sesta",
          "acorda"
        ]
      },
      "ro-ro": {
        "name": "Somnule\u021b",
        "description": "Adoarme asistentul atunci c\u00e2nd nu vrei s\u0103 fii deranjat.",
        "examples": [
          "Du-te la culcare",
          "\u00cencepe un pui de somn",
          "Treze\u0219te-te"
        ]
      },
      "ru-ru": {
        "name": "\u0422\u0438\u0445\u0438\u0439 \u0447\u0430\u0441",
        "description": "\u0423\u0441\u044b\u043f\u043b\u044f\u0435\u0442 \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0430, \u043a\u043e\u0433\u0434\u0430 \u0442\u044b \u043d\u0435 \u0445\u043e\u0447\u0435\u0448\u044c, \u0447\u0442\u043e\u0431\u044b \u0442\u0435\u0431\u044f \u0431\u0435\u0441\u043f\u043e\u043a\u043e\u0438\u043b\u0438.",
        "examples": [
          "\u0418\u0434\u0438 \u0441\u043f\u0430\u0442\u044c",
          "\u041d\u0430\u0447\u043d\u0438 \u0434\u0440\u0435\u043c\u0430\u0442\u044c",
          "\u041f\u0440\u043e\u0441\u043d\u0438\u0441\u044c"
        ]
      },
      "sv-se": {
        "name": "Naptime",
        "description": "S\u00e4tter assistenten att sova n\u00e4r du inte vill bli st\u00f6rd.",
        "examples": [
          "G\u00e5 och l\u00e4gg dig",
          "Det \u00e4r dags att sova",
          "Vakna"
        ]
      },
      "tr-tr": {
        "name": "\u015eekerleme",
        "description": "Rahats\u0131z edilmek istemedi\u011finde asistan\u0131 uyutur.",
        "examples": [
          "Uyumaya git",
          "Kestirmeye ba\u015fla",
          "Uyan"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-09-06T12:46:20Z",
    "last_updated": "2025-06-08T21:48:46.994625Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-naptime.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.15",
          "tested_at": "2026-10-14T08:36:32+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.15",
          "tested_at": "2026-10-14T08:38:25+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.12.2a3",
          "tested_at": "2026-10-30T09:00:34+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-nato-alphabet",
    "skill_id": "ovos-skill-nato-alphabet.andlo",
    "name": "NATO Alphabet",
    "description": "Spells a word using the NATO/ICAO phonetic alphabet - Alfa, Bravo, Charlie. Fully offline, pure lookup table.",
    "examples": [
      "spell Andreas using the nato alphabet",
      "how do you spell hello phonetically"
    ],
    "tags": [
      "spelling",
      "nato",
      "phonetic alphabet",
      "utility"
    ],
    "category": "Utility",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-nato-alphabet/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-nato-alphabet",
    "package_name": "ovos-skill-nato-alphabet",
    "pypi_version": "0.0.3",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-nato-alphabet"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "NATO Alfabetet",
        "description": "Staver et ord med det NATO/ICAO fonetiske alfabet - Alfa, Bravo, Charlie. Fuldst\u00e6ndig offline, ren opslagstabel.",
        "examples": [
          "stav Andreas med nato alfabetet",
          "hvordan staver man hej fonetisk"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:21Z",
    "last_updated": "2026-10-01T10:11:03.211380Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-nato-alphabet.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:03:54+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "testing": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:40:22+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "alpha": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T08:58:58+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        }
      }
    }
  },
  {
    "id": "mikejgray-neon-homeassistant-skill",
    "skill_id": "neon_homeassistant_skill.mikejgray",
    "name": "neon-homeassistant-skill",
    "description": "neon-homeassistant-skill",
    "examples": [
      "What is the status of the living room light?",
      "Turn on the kitchen light",
      "Change light bedside lamp to blue"
    ],
    "tags": [
      "ovos",
      "neon",
      "home",
      "assistant",
      "phal",
      "voice",
      "interface",
      "skill",
      "plugin"
    ],
    "category": "Home",
    "icon": "https://www.home-assistant.io/images/home-assistant-logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/mikejgray/neon-homeassistant-skill",
    "package_name": "neon-homeassistant-skill",
    "pypi_version": "0.0.24",
    "license": "Apache-2.0",
    "archived": false,
    "author": "mikejgray",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 8,
    "forks": 4,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation on Neon",
        "content": "\\***\\*Note\\*\\***: This skill and the required PHAL plugin come pre-installed on Neon images for the Mycroft Mark II and Neon's published Docker images. These instructions are for custom development builds or creating your own Neon instance from scratch.\n\nInstall ovos-PHAL-plugin-homeassistant [per their documentation](https://github.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant)\n\nThen, you can `pip install neon-homeassistant-skill`, or handle the installation from the `~/.config/neon/neon.yaml` file if you prefer:\n\nskills:\n  default_skills:\n    # Jokes skill included because it cannot be pip installed to the image\n    - https://github.com/JarbasSkills/skill-icanhazdadjokes/tree/dev\n    - neon-homeassistant-skill # Optionally with a version, such as neon-homeassistant-skill==0.0.10\n\n### Au\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-01-23T04:50:44Z",
    "last_updated": "2025-01-29T02:26:15.220908Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "neon_homeassistant_skill.mikejgray",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.24",
          "tested_at": "2026-10-04T11:04:07+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.24",
          "tested_at": "2026-10-04T10:40:28+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.24",
          "tested_at": "2026-10-30T08:59:09+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-neon-phal-plugin-notifications",
    "skill_id": null,
    "name": "neon-phal-plugin-notifications",
    "description": "Notification Manager PHAL plugin for Neon/OVOS (ovos.notification.api.*)",
    "examples": [],
    "tags": [
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/neon-phal-plugin-notifications",
    "package_name": "neon-phal-plugin-notifications",
    "pypi_version": "0.1.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "All keys live under the plugin's PHAL section. Every key is optional.\n\nPHAL:\n  neon-phal-plugin-notifications:\n    store: json                      # persistence adapter; only \"json\" ships\n    store_path: null                 # override the JSON file path (default:\n                                     # $XDG_DATA_HOME/neon/neon-phal-plugin-notifications/notifications.json)\n    allow_global:                    # skill_ids permitted to use scope=GLOBAL\n      - skill-alerts.neongeckocom\n    allow_non_removable:             # skill_ids permitted to set removable_by_user=false\n      - skill-alerts.neongeckocom\n    rate_limit: 30                   # accepted `set` requests per producer per window\n    rate_window_seconds: 3600\n    consumers_allowed_to_dismiss: [] # empty/absent = every consumer m\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-22T16:00:57Z",
    "last_updated": "2026-09-06T01:18:24.666386Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "NeonGeckoCom-skill-about",
    "skill_id": "skill-about.neongeckocom=skill_about:AboutSkill",
    "name": "neon-skill-about",
    "description": "This skill provides information about Neon. You can ask about licensing and your Neon installation. This skill also provides formatted examples for installed skills.",
    "examples": [
      "Tell me my license.",
      "Tell me my skills.",
      "What can you do?"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://0000.us/klatchat/app/files/neon_images/icons/neon_skill.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-about",
    "package_name": "neon-skill-about",
    "pypi_version": "1.0.4",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-03T22:29:21Z",
    "last_updated": "2026-07-27T23:34:15.801499Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-about.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:04:23+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:40:36+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:25+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-alerts",
    "skill_id": "skill-alerts.neongeckocom=skill_alerts:AlertSkill",
    "name": "neon-skill-alerts",
    "description": "The skill provides functionality to create alarms, timers and reminders, remove them by name, time, or type, and ask for what is active. You may also silence all alerts and ask for a summary of what was missed if you were away, your device was off, or you had quiet hours enabled. Alarms and reminders may be set to recur daily or weekly. An active alert may be snoozed for a specified amount of time while it is active. Any alerts that are not acknowledged will be added to a list of missed alerts that may be read and cleared when requested. Other modules may integrate with the alerts skill by listening for `neon.alert_expired` events. This event will be emitted when a scheduled alert expires and will include any context associated with the event creation. If the event was created with `mq` context, the mq connector module will forward the expired alert for the client module to handle and the alert will be marked `active` until the client module emits a `neon.acknowledge_alert` Message with the `alert_id` and `missed` data, i.e.: ``` Message(\"neon.acknowledge_alert\", {\"alert_id\": <alert_id>, \"missed\": False}, <context>) ```",
    "examples": [
      "Set an alarm for 8 AM.",
      "When is my next alarm?",
      "Cancel my 8 AM alarm.",
      "Set a 5 minute timer.",
      "How much time is left?",
      "Remind me to go home at 6.",
      "Remind me to take out the trash every thursday at 7 PM.",
      "What are my reminders?",
      "Cancel all alarms.",
      "Cancel all timers.",
      "Cancel all reminders.",
      "Go to sleep.",
      "Start quiet hours.",
      "Stop.",
      "Snooze.",
      "Snooze for 1 minute.",
      "Wake up.",
      "What did I miss?",
      "Did I miss anything?"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/NeonGeckoCom/skill-alerts/dev/logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-alerts",
    "package_name": "neon-skill-alerts",
    "pypi_version": "3.1.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 5,
    "forks": 14,
    "open_issues": 14,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-03T22:36:13Z",
    "last_updated": "2026-06-26T00:42:25.163866Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-alerts.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:17+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:27+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:30+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-caffeinewiz",
    "skill_id": "skill-caffeinewiz.neongeckocom=neon_skill_caffeinewiz:CaffeineWizSkill",
    "name": "neon-skill-caffeinewiz",
    "description": "The skill provides the functionality to inform the user of the caffeine content of the requested drink (Multiple drinks in a row are possible) by collecting the required information from two data sources: 1.  [http://caffeinewiz.com/](http://caffeinewiz.com/) - the main source of information for the drink\u2019s database 2.  [https://www.caffeineinformer.com/the-caffeine-database](https://www.caffeineinformer.com/the-caffeine-database) - secondary source for any non-duplicate drinks CaffeineWiz uses [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/) to pull the tables from the websites above, then strips the html tags, and later formats the results into the comprehensive list. That object is pickled for the future use. The skill will check for updates periodically. You can modify that time period by changing `TIME_TO_CHECK` parameter on top of the file in the init.",
    "examples": [
      "Tell me the caffeine content of Pepsi.",
      "How much caffeine is in Starbucks Blonde?",
      "Tell me the caffeine content of Rocket Chocolate."
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/NeonGeckoCom/skill-caffeinewiz/dev/logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-caffeinewiz",
    "package_name": "neon-skill-caffeinewiz",
    "pypi_version": "3.0.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2017-10-11T00:44:52Z",
    "last_updated": "2026-06-30T22:43:48.030742Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-caffeinewiz.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:20+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:29+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:34+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-communication",
    "skill_id": "skill-communication.neongeckocom=skill_communication:CommunicationSkill",
    "name": "neon-skill-communication",
    "description": "This handles requests to send messages and place calls by communicating with all call and message handling skills and selecting the appropriate one to handle a request.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://0000.us/klatchat/app/files/neon_images/icons/neon_skill.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-communication",
    "package_name": "neon-skill-communication",
    "pypi_version": "0.2.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-03T22:42:52Z",
    "last_updated": "2025-08-12T01:37:15.045598Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-communication.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:22+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:31+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:38+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-core_ready",
    "skill_id": "skill-core_ready.neongeckocom=skill_core_ready:CoreReadySkill",
    "name": "neon-skill-core_ready",
    "description": "When Neon is started or restarted, this skill will speak a notification to the user. This speech can be enabled/disabled by intent.",
    "examples": [
      "Enable ready notifications.",
      "Disable load speech."
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/NeonGeckoCom/skill-core_ready/dev/logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-core_ready",
    "package_name": "neon-skill-core_ready",
    "pypi_version": "0.3.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 5,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-11-17T23:21:23Z",
    "last_updated": "2026-07-27T23:58:00.310763Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-core_ready.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:24+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:33+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:42+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-data_controls",
    "skill_id": "skill-data_controls.neongeckocom=skill_data_controls:DataControlsSkill",
    "name": "neon-skill-data_controls",
    "description": "Manage saved transcriptions and other user-generated media.",
    "examples": [
      "Clear my user transcriptions.",
      "Erase all pictures.",
      "Delete my profile."
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://0000.us/klatchat/app/files/neon_images/icons/neon_skill.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-data_controls",
    "package_name": "neon-skill-data_controls",
    "pypi_version": "2.1.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-02-08T23:00:39Z",
    "last_updated": "2026-07-02T01:03:37.105517Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-data_controls.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:26+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:35+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:46+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-messaging",
    "skill_id": "skill-messaging.neongeckocom=skill_messaging:MessagingSkill",
    "name": "neon-skill-messaging",
    "description": "This handles SMS, phone call, and email requests.",
    "examples": [
      "call Daniel",
      "call 555-555-5555",
      "Send a text message to Daniel that says hello",
      "Send an email to demo@neongecko.com with the subject Test Email"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://0000.us/klatchat/app/files/neon_images/icons/neon_skill.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-messaging",
    "package_name": "neon-skill-messaging",
    "pypi_version": "0.0.1",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-04T00:12:09Z",
    "last_updated": "2022-07-27T21:11:32.665871Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-messaging.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:28+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:37+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:58:56+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-speed_test",
    "skill_id": "skill-speed_test.neongeckocom=neon_skill_speed_test:SpeedTestSkill",
    "name": "neon-skill-speed_test",
    "description": "This skill uses speedtest.net to check your internet speed",
    "examples": [
      "Run a speed test.",
      "How fast is my internet?"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://0000.us/klatchat/app/files/neon_images/icons/neon_skill.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-speed_test",
    "package_name": "neon-skill-speed_test",
    "pypi_version": "2.0.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-04T00:21:27Z",
    "last_updated": "2026-07-01T02:27:54.776116Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-speed_test.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:33+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:44+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:05+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-support_helper",
    "skill_id": "skill-support_helper.neongeckocom=skill_support_helper:SupportSkill",
    "name": "neon-skill-support_helper",
    "description": "The skill provides the functionality to get core module status information and message information, including user profile information, sent to the user via email.",
    "examples": [
      "Create a troubleshooting package.",
      "Create a support ticket."
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/life-ring.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-support_helper",
    "package_name": "neon-skill-support_helper",
    "pypi_version": "1.3.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-08-04T00:23:24Z",
    "last_updated": "2026-07-02T00:39:56.098661Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-support_helper.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:03:36+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:43:46+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:10+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "NeonGeckoCom-skill-update",
    "skill_id": "skill-update.neongeckocom=skill_update:UpdateSkill",
    "name": "neon-skill-update",
    "description": "The update skill provides intents for the user to manage device updates, including core packages, skills, configuration, and creation of new boot media. ### Software Updates This skill can be used to check for software updates and to start the update process on supported devices. For most devices, updates will take 10-30 minutes, and you will not be able to use your device while it is updating. ### Configuration Updates For supported distributions, this skill allows getting updated default configuration. This can be useful for resetting skills configuration to the latest default, or for troubleshooting after making manual configuration changes. ### Create New Media For supported distributions, this skill is able to create a new boot drive from a clean image, similar to what would be distributed with a new device. This involves downloading a new image and then writing it to an available storage device. This is a multi-step process. 1. An operating system image is downloaded. Depending on internet connection    speeds, this generally takes about 15-20 minutes. 2. After user confirmation, this image is written to a non-boot drive connected    to the device. **All existing on the new boot drive is lost**. This generally    takes about 30-45 minutes. 3. After this is complete, the device is shut down so the user may unplug the old    drive and boot the new one.",
    "examples": [
      "Check for updates.",
      "Do you have any updates?",
      "Update my default configuration.",
      "Create a new boot drive.",
      "Switch to beta releases.",
      "Change to stable updates."
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/NeonGeckoCom/skill-update/dev/logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/skill-update",
    "package_name": "neon-skill-update",
    "pypi_version": "3.1.2",
    "license": "NOASSERTION",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 2,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration Updates",
        "content": "For supported distributions, this skill allows getting updated default configuration.\nThis can be useful for resetting skills configuration to the latest default, or for\ntroubleshooting after making manual configuration changes."
      }
    ],
    "languages": [
      "en-us",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-08T22:47:42Z",
    "last_updated": "2025-03-18T00:27:09.004829Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-update.neongeckocom",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:06:00+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:44:18+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:14+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-network-scanner",
    "skill_id": "ovos-skill-network-scanner.andlo",
    "name": "Network Scanner",
    "description": "Discovers devices on your own local network via mDNS/Bonjour plus a ping+ARP+MAC-vendor sweep. Fully offline, no root required.",
    "examples": [
      "scan the network",
      "can you see my Sony TV",
      "is my printer on the network"
    ],
    "tags": [
      "network",
      "scanner",
      "mdns",
      "discovery",
      "lan",
      "utility"
    ],
    "category": "Utility",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-network-scanner/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-network-scanner",
    "package_name": "ovos-skill-network-scanner",
    "pypi_version": "0.0.2",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "lan",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-network-scanner"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Netv\u00e6rksscanner",
        "description": "Finder enheder p\u00e5 dit eget lokale netv\u00e6rk via mDNS/Bonjour samt et ping+ARP+MAC-vendor-sweep. Fuldst\u00e6ndig offline, ingen root n\u00f8dvendig.",
        "examples": [
          "scan netv\u00e6rket",
          "kan du se min Sony TV",
          "er min printer p\u00e5 netv\u00e6rket"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T18:56:47Z",
    "last_updated": "2026-10-01T10:10:48.508492Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-network-scanner.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 4/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.2",
          "tested_at": "2026-10-04T11:06:03+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 6
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 4/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.2",
          "tested_at": "2026-10-04T10:44:20+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 6
          }
        },
        "alpha": {
          "label": "\u2713 6/6 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.2",
          "tested_at": "2026-10-30T08:59:18+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 6,
            "counted": 6
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-news",
    "skill_id": "ovos-skill-news.openvoiceos",
    "name": "News Streams",
    "description": "News streams from around the globe.",
    "examples": [
      "play the news",
      "play npr news",
      "play euronews",
      "play catalan news",
      "play portuguese news",
      "play news in spanish"
    ],
    "tags": [
      "news",
      "information"
    ],
    "category": "News",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-news/dev/res/icon/news.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-news",
    "package_name": "ovos-skill-news",
    "pypi_version": "0.4.6",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 9,
    "open_issues": 13,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Classic Core Installation",
        "content": "If you are using this skill with mycroft classic core, you have to [disable the official skill](https://mycroft-ai.gitbook.io/docs/skill-development/faq#how-do-i-disable-a-skill) because they are incompatible\n\nTo play https streams properly you also need to install vlc\n\nsudo apt-get install vlc\n\nand make it the default it in your .conf\n\n  \"Audio\": {\n    \"backends\": {\n      \"local\": {\n        \"active\": false\n      },\n      \"vlc\": {\n        \"active\": true\n      }\n    },\n    \"default-backend\": \"vlc\"\n  },"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "pt-pt"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Canals de not\u00edcies",
        "description": "Canals de not\u00edcies d'arreu del m\u00f3n.",
        "examples": [
          "posa les not\u00edcies",
          "posa npr news",
          "posa euronews",
          "posa not\u00edcies en catal\u00e0",
          "posa not\u00edcies en portugu\u00e8s",
          "posta not\u00edcies en castell\u00e0"
        ]
      },
      "da-dk": {
        "name": "Nyhedsstr\u00f8mme",
        "description": "Nyheder fra hele kloden.",
        "examples": [
          "afspil nyhederne",
          "spil npr nyheder",
          "spil euronews",
          "afspil catalanske nyheder",
          "afspil portugisiske nyheder",
          "afspil nyheder p\u00e5 spansk"
        ]
      },
      "de-de": {
        "name": "Nachrichten Streams",
        "description": "Nachrichten-Streams aus der ganzen Welt.",
        "examples": [
          "Nachrichten abspielen\nspiele die Nachrichten ",
          "NPR Nachrichten abspielen\nspiele NPR Nachrichten",
          "euronews abspielen\nspiele euronews ",
          "spiele katalanische Nachrichten",
          "portugiesische Nachrichten abspielen",
          "Nachrichten auf Spanisch abspielen"
        ]
      },
      "es-es": {
        "name": "Canales de noticias",
        "description": "Canales de noticias del mundo entero.",
        "examples": [
          "pon las noticias",
          "pon npr news",
          "pon euronews",
          "pon noticias en espa\u00f1ol",
          "pon noticias en catal\u00e1n",
          "pon noticias en ingl\u00e9s"
        ]
      },
      "fr-fr": {
        "name": "Flux d'actualit\u00e9s",
        "description": "Des flux d'actualit\u00e9s du monde entier.",
        "examples": [
          "Joue les actualit\u00e9s",
          "Joue les actualit\u00e9s de NPR",
          "Joue Euronews",
          "Joue les actualit\u00e9s catalanes",
          "Joue les actualit\u00e9s portugaises",
          "Joue les actualit\u00e9s en espagnol"
        ]
      },
      "gl-es": {
        "name": "Canles de Noticias",
        "description": "Canles de noticias de todo o mundo.",
        "examples": [
          "pon as noticias",
          "pon as noticias da npr",
          "pon euronews",
          "pon as noticias catal\u00e1s",
          "pon as noticias portuguesas",
          "pon noticias en espa\u00f1ol"
        ]
      },
      "it-it": {
        "name": "Riproduttore di notizie",
        "description": "Riproduttore di flussi radio da tutto il mondo",
        "examples": [
          "metti il giornale radio",
          "metti npr news",
          "metti euronews",
          "metti il radiogiornale italiano",
          "metti il giornale radio portoghese",
          "metti il radiogiornale spagnolo"
        ]
      },
      "pt-pt": {
        "name": "Not\u00edcias",
        "description": "Not\u00edcias de todo o mundo.",
        "examples": [
          "reproduza as not\u00edcias",
          "reproduzir not\u00edcias da NPR",
          "reproduzir euronews",
          "reproduzir not\u00edcias catal\u00e3s",
          "reproduzir not\u00edcias portuguesas",
          "reproduzir not\u00edcias em espanhol"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-03-14T15:16:53Z",
    "last_updated": "2026-03-04T19:29:58.104307Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-number-facts",
    "skill_id": "ovos-skill-number-facts.openvoiceos",
    "name": "Numbers",
    "description": "Facts about numbers",
    "examples": [
      "math fact about number 7",
      "fact about number 666",
      "random number trivia"
    ],
    "tags": [
      "Trivia"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-number-facts",
    "package_name": "ovos-skill-number-facts",
    "pypi_version": "0.1.12",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-number-facts"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Nombres",
        "description": "Fets sobre els nombres",
        "examples": [
          "un fet matem\u00e0tic sobre el nombre 7",
          "fet sobre el nombre 666",
          "preguntes alet\u00f2ries de nombres"
        ]
      },
      "da-dk": {
        "name": "Numbers",
        "description": "Fakta om tal",
        "examples": [
          "matematisk fakta om nummer 7",
          "fakta om nummer 666",
          "trivia tilf\u00e6ldigt tal"
        ]
      },
      "de-de": {
        "name": "Zahlen",
        "description": "Fakten \u00fcber Zahlen",
        "examples": [
          "mathematischer Fakt \u00fcber die Zahl 7",
          "Fakt \u00fcber die Zahl 666",
          "Wissenswertes \u00fcber Zufallszahlen"
        ]
      },
      "es-co": {
        "name": "N\u00fameros",
        "description": "Datos sobre n\u00fameros",
        "examples": [
          "Dato matem\u00e1tico sobre el n\u00famero 7",
          "Dato curioso sobre el n\u00famero 666",
          "curiosidades sobre n\u00fameros aleatorios"
        ]
      },
      "es-es": {
        "name": "N\u00fameros",
        "description": "Datos sobre n\u00fameros",
        "examples": [
          "Dato matem\u00e1tico sobre el n\u00famero 7",
          "Dato curioso sobre el n\u00famero 666",
          "curiosidades sobre n\u00fameros aleatorios"
        ]
      },
      "eu-es": {
        "name": "Zenbakiak",
        "description": "Zenbakiei buruzko gertaerak",
        "examples": [
          "7 zenbakiari buruzko gertaera matematikoa",
          "666 zenbakiari buruzko gertaera",
          "ausazko zenbaki bati buruzko kuriositatea"
        ]
      },
      "fa-ir": {
        "name": "Numbers",
        "description": "Facts about numbers",
        "examples": [
          "\u062d\u0642\u0627\u06cc\u0642 \u0631\u06cc\u0627\u0636\u06cc",
          "\u062a\u0639\u062f\u0627\u062f \u062d\u0642\u0627\u06cc\u0642"
        ]
      },
      "fr-fr": {
        "name": "Nombres",
        "description": "Des faits et anecdotes sur les nombres",
        "examples": [
          "un fait math\u00e9matique sur le nombre 7",
          "une anecdote sur le nombre 666",
          "une trivia al\u00e9atoire sur un nombre"
        ]
      },
      "gl-es": {
        "name": "N\u00fameros",
        "description": "Curiosidades sobre n\u00fameros",
        "examples": [
          "dato matem\u00e1tico sobre o n\u00famero 7",
          "dato sobre o n\u00famero 666",
          "trivia sobre n\u00fameros aleatorios"
        ]
      },
      "it-it": {
        "name": "Numeri",
        "description": "Curiosit\u00e0 sui numeri",
        "examples": [
          "fatto matematico sul numero 7",
          "fatto sul numero 666",
          "curiosit\u00e0 a caso sui numeri"
        ]
      },
      "kab": {
        "name": "Im\u1e0danen",
        "description": "Tiqsi\u1e0din \u0263ef yim\u1e0danen",
        "examples": [
          "taqsi\u1e6d \u0263ef um\u1e0dan 666",
          "taqsi\u1e6d n yim\u1e0danen"
        ]
      },
      "nl-nl": {
        "name": "Getallen",
        "description": "Weetjes over getallen",
        "examples": [
          "wiskundig feit over het getal 7",
          "feit over het getal 666",
          "willekeurig weetje over getallen"
        ]
      },
      "oc-fr": {
        "name": "Nombres",
        "description": "Fachs suls nombres",
        "examples": [
          "un fach matematic sul nombre 7",
          "fach sul nombre 666",
          "curiositat de nombres a l'azard"
        ]
      },
      "pl-pl": {
        "name": "Numbers",
        "description": "Facts about numbers",
        "examples": [
          "fakt matematyki",
          "fakt liczby"
        ]
      },
      "pt-br": {
        "name": "N\u00fameros",
        "description": "Curiosidades sobre n\u00fameros",
        "examples": [
          "fato matem\u00e1tico sobre o n\u00famero 7",
          "fato sobre o n\u00famero 666",
          "curiosidade aleat\u00f3ria sobre n\u00fameros"
        ]
      },
      "pt-pt": {
        "name": "N\u00fameros",
        "description": "Factos sobre n\u00fameros",
        "examples": [
          "facto matem\u00e1tico sobre o n\u00famero 7",
          "facto sobre o n\u00famero 666",
          "curiosidades sobre os n\u00fameros aleat\u00f3rios"
        ]
      },
      "ru-ru": {
        "name": "Numbers",
        "description": "Facts about numbers",
        "examples": [
          "\u0424\u0430\u043a\u0442 \u043e \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0435",
          "\u0447\u0438\u0441\u043b\u043e"
        ]
      },
      "sv-se": {
        "name": "Nummer",
        "description": "Fakta om nummer",
        "examples": [
          "matematiskt fakta om numret 7",
          "fakta om numret 666",
          "slumpm\u00e4ssig kuriosa om nummer"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2018-04-01T02:23:14Z",
    "last_updated": "2025-06-08T23:13:39.080812Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-number-facts.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.12",
          "tested_at": "2026-10-04T11:06:19+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.12",
          "tested_at": "2026-10-04T10:44:29+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.6.2a3",
          "tested_at": "2026-11-02T09:56:35+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-ocp-mac-visualizer",
    "skill_id": null,
    "name": "ocp-mac-visualizer",
    "description": "A web-based music visualizer for OpenVoiceOS (OVOS), specifically ovos-mac",
    "examples": [],
    "tags": [
      "ovos",
      "status-poc"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ocp-mac-visualizer",
    "package_name": "ocp-mac-visualizer",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-21T03:29:09Z",
    "last_updated": "2026-11-04T03:19:35Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "putnik-OpenVoiceOS-russian",
    "skill_id": null,
    "name": "OpenVoiceOS-russian",
    "description": "Instructions for running OpenVoiceOS (ex-Mycroft) with Russian locale and plans for further improvement.",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/putnik/OpenVoiceOS-russian",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "putnik",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 50,
    "forks": 5,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-24T17:25:59Z",
    "last_updated": "2023-10-08T21:01:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "ohealthy-ovos",
    "skill_id": null,
    "name": "ovos",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/ohealthy/ovos/main/static/logo-ov.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/ohealthy/ovos",
    "package_name": "open-webui",
    "pypi_version": "0.13.3",
    "license": "NOASSERTION",
    "archived": false,
    "author": "ohealthy",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-11T18:00:20Z",
    "last_updated": "2026-11-08T23:54:52.859937Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "andlo-ovos-skill-ovosblog",
    "skill_id": "ovos-skill-ovosblog.andlo",
    "name": "OVOS Blog (provider)",
    "description": "Reads the OpenVoiceOS blog aloud. Provider for ovos-common-reading-pipeline-plugin - no standalone voice interface.",
    "examples": [
      "Read latest post from ovosblog",
      "Read newest post from the openvoiceos blog"
    ],
    "tags": [
      "news",
      "blog",
      "openvoiceos",
      "rss",
      "provider"
    ],
    "category": "News",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-ovosblog/main/world-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-ovosblog",
    "package_name": "ovos-skill-ovosblog",
    "pypi_version": "0.1.8",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": "ovos-common-reading-pipeline-plugin",
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-ovosblog ovos-common-reading-pipeline-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "kab",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "OVOS Blog (udbyder)",
        "description": "L\u00e6ser OpenVoiceOS-bloggen h\u00f8jt. Udbyder til ovos-common-reading-pipeline-plugin. Ingen selvst\u00e6ndig stemmegr\u00e6nseflade.",
        "examples": [
          "L\u00e6s mig seneste artikel fra ovosblog"
        ]
      },
      "de-de": {
        "name": "OVOS Blog (Anbieter)",
        "description": "Liest den OpenVoiceOS-Blog vor. Anbieter f\u00fcr ovos-common-reading-pipeline-plugin. Keine eigenst\u00e4ndige Sprachschnittstelle.",
        "examples": [
          "Erz\u00e4hl mir eine Geschichte von ovos blog",
          "Lies mir eine Geschichte von ovos blog"
        ]
      },
      "es-es": {
        "name": "OVOS Blog (proveedor)",
        "description": "Lee en voz alta el blog de OpenVoiceOS. Proveedor para ovos-common-reading-pipeline-plugin. Sin interfaz de voz independiente.",
        "examples": [
          "Cu\u00e9ntame un cuento de ovos blog",
          "L\u00e9eme un cuento de ovos blog"
        ]
      },
      "fr-fr": {
        "name": "OVOS Blog (fournisseur)",
        "description": "Lit le blog OpenVoiceOS \u00e0 voix haute. Fournisseur pour ovos-common-reading-pipeline-plugin. Pas d'interface vocale autonome.",
        "examples": [
          "Raconte-moi une histoire de ovos blog",
          "Lis-moi une histoire de ovos blog"
        ]
      },
      "it-it": {
        "name": "OVOS Blog (fornitore)",
        "description": "Legge ad alta voce il blog di OpenVoiceOS. Fornitore per ovos-common-reading-pipeline-plugin. Nessuna interfaccia vocale autonoma.",
        "examples": [
          "Raccontami una storia di ovos blog",
          "Leggimi una storia di ovos blog"
        ]
      },
      "nl-nl": {
        "name": "OVOS Blog (aanbieder)",
        "description": "Leest de OpenVoiceOS-blog hardop voor. Aanbieder voor ovos-common-reading-pipeline-plugin. Geen zelfstandige spraakinterface.",
        "examples": [
          "Vertel me een verhaal van ovos blog",
          "Lees me een verhaal van ovos blog"
        ]
      },
      "pt-pt": {
        "name": "OVOS Blog (fornecedor)",
        "description": "L\u00ea o blog da OpenVoiceOS em voz alta. Fornecedor para ovos-common-reading-pipeline-plugin. Sem interface de voz aut\u00f3noma.",
        "examples": [
          "Conta-me uma hist\u00f3ria de ovos blog",
          "L\u00ea-me uma hist\u00f3ria de ovos blog"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T13:53:14Z",
    "last_updated": "2026-10-01T18:38:22.005180Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-ovosblog.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/2 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T11:07:33+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 2
          }
        },
        "testing": {
          "label": "\u2713 2/2 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.1.8",
          "tested_at": "2026-10-04T10:45:20+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        },
        "alpha": {
          "label": "\u2713 2/2 golden \u00b7 stops",
          "state": "pass",
          "level": 3,
          "stop": "stops",
          "version_tested": "0.1.8",
          "tested_at": "2026-10-30T08:59:48+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-adapt-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-adapt-pipeline-plugin",
    "description": "Adapt Intent Parser",
    "examples": [],
    "tags": [
      "openvoiceos",
      "pipeline",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-adapt-pipeline-plugin",
    "package_name": "ovos_adapt_parser",
    "pypi_version": "1.0.9",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-adapt-parser"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-09T16:11:17Z",
    "last_updated": "2025-11-05T01:13:49.539426Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-adapt-domain-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "1.0.9",
          "tested_at": "2026-10-04T11:08:16+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.9",
          "tested_at": "2026-10-04T10:45:45+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.6.8a1",
          "tested_at": "2026-10-30T08:59:57+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-agentic-loop",
    "skill_id": null,
    "name": "ovos-agentic-loop",
    "description": "Agent-loop `ChatEngine` plugins for OVOS. This package implements seven agentic reasoning patterns: ReAct, Plan-and-Execute, Reflexion, Self-Ask, Chain-of-Thought, CRITIC, and Tree-of-Thoughts. It also ships five built-in toolboxes, SKILL.md integration, and AGENTS.md context management. All components ship as standard OPM plugins.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-agentic-loop",
    "package_name": "ovos-agentic-loop",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Toolbox Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-agentic-loop"
      },
      {
        "heading": "Persona JSON (all-in-one config)",
        "content": "{\n  \"name\": \"MyAgent\",\n  \"solvers\": [\"ovos-react-loop\"],\n  \"ovos-react-loop\": {\n    \"brain\": \"ovos-chat-openai-plugin\",\n    \"ovos-chat-openai-plugin\": {\n      \"api_url\": \"http://localhost:11434/v1\",\n      \"allow_system_prompts\": true\n    },\n    \"toolboxes\": [\"ovos-math-tools\", \"ovos-web-search-tools\", \"ovos-clock-tools\"],\n    \"max_iterations\": 10\n  }\n}\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-18T17:09:43Z",
    "last_updated": "2026-03-18T17:50:53.763778Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "smartgic-ovos-api",
    "skill_id": null,
    "name": "ovos-api",
    "description": "Expose a secure REST API on top of Open Voice OS to perform actions on your instance without to SSH into it.",
    "examples": [],
    "tags": [
      "api",
      "docker",
      "docker-compose",
      "fastapi",
      "json",
      "jwt",
      "jwt-authentication",
      "mycroft",
      "openapi",
      "openvoiceos",
      "ovos",
      "postman",
      "python",
      "python3",
      "rest",
      "rest-api"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/ovos-api",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "smartgic",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 8,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "_Python `virtualenv` is always a good practice to keep a clean environment but it is not a mandatory step._\n\ngit clone https://github.com/smartgic/ovos-api.git\ncd ovos-api\nmkdir ~/virtualenvs\npython -m venv ~/virtualenvs/ovos-api\n. ~/virtualenvs/ovos-api/bin/activate\npip install -r requirements.txt"
      },
      {
        "heading": "Configuration",
        "content": "Before starting to use the API, some configurations must be applied to the `.env` file.\n\nSECRET=\"\"\nWS_HOST=\"10.12.50.20\"\nWS_PORT=\"8181\"\nAPI_KEY=\"\"\nUSERS_DB=\"/users.json\"\n\n| Variable   | Explaination                                                            |\n| ---------- | ----------------------------------------------------------------------- |\n| `SECRET`   | Random string used to generate the JWT token                            |\n| `WS_HOST`  | IP address or hostname of the OVOS messages bus                         |\n| `WS_PORT`  | TCP Port of the OVOS messages bus                                       |\n| `API_KEY`  | Key used between the API and the `skill-rest-api` skill to authenticate |\n| `USERS_DB` | File where users are declared with their status and encrypted password  |\n\nThe `\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-31T00:23:46Z",
    "last_updated": "2024-05-31T01:58:16Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-audio",
    "skill_id": null,
    "name": "ovos-audio",
    "description": "OpenVoiceOS audio output daemon",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-audio",
    "package_name": "ovos-audio",
    "pypi_version": "1.2.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 9,
    "open_issues": 22,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-audio[extras]\n\nThe `extras` group installs this package with the default plugins. Without it, you must install and configure TTS modules yourself, as described below.\n\n_________"
      },
      {
        "heading": "Configuration",
        "content": "`ovos-audio` reads its settings from `mycroft.conf`.\n\n{\n\n  // Text to Speech parameters\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-server\",\n    \"fallback_module\": \"ovos-tts-plugin-mimic\",\n    \"ovos-tts-plugin-mimic\": {\n        \"voice\": \"ap\"\n    }\n  },\n\n  // File locations of sounds to play for system events\n  \"sounds\": {\n    \"start_listening\": \"snd/start_listening.wav\",\n    \"end_listening\": \"snd/end_listening.wav\",\n    \"acknowledge\": \"snd/acknowledge.mp3\",\n    \"error\": \"snd/error.mp3\"\n  },\n\n  // Mechanism used to play WAV audio files\n  \"play_wav_cmdline\": \"paplay %1 --stream-name=mycroft-voice\",\n\n  // Mechanism used to play MP3 audio files\n  \"play_mp3_cmdline\": \"mpg123 %1\",\n\n  // Mechanism used to play OGG audio files\n  \"play_ogg_cmdline\": \"ogg123 -q %1\"\n}\n_________"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-01T14:43:41Z",
    "last_updated": "2026-03-11T17:10:05.188945Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "NeonJarbas-ovos-audio-plugin-simple",
    "skill_id": null,
    "name": "ovos-audio-plugin-simple",
    "description": "simple plugin for ovos-media",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/NeonJarbas/ovos-audio-plugin-simple",
    "package_name": "ovos-media-plugin-simple",
    "pypi_version": "0.1.0a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "NeonJarbas",
    "tier": 2,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-simple`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    // keys are the strings defined in \"audio_players\"\n    \"preferred_audio_services\": [\"mplayer\", \"vlc\", \"simple\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // simple player uses a slave simple instance to handle uris\n        \"simple\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-simple\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n            \"aliases\": [\"Simple Player\", \"Command line\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-08-05T12:02:12Z",
    "last_updated": "2026-06-25T16:51:21.178336Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-audio-transformer-plugin-ggwave",
    "skill_id": null,
    "name": "ovos-audio-transformer-plugin-ggwave",
    "description": "data over sound plugin",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin",
      "transformers"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-audio-transformer-plugin-ggwave",
    "package_name": "ovos-audio-transformer-plugin-ggwave",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 4,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-audio-transformer-plugin-ggwave\n\n> ggwave [fails to install on Python 3.11](https://github.com/ggerganov/ggwave/issues/89). Use the wheel from [whl.smartgic.io](https://whl.smartgic.io/) instead, then the plugin install works."
      },
      {
        "heading": "WiFi setup",
        "content": "Emit a message that sets the WiFi SSID:\n\n`SSID:123456`\n\nAfter the SSID is set, emit a message that sets the WiFi password:\n\n`PSWD:123456`\n\nIf the password is empty, the plugin treats the network as open:\n\n`PSWD:`\n\nOnce the password is received, the plugin sends a bus message for [ovos-PHAL-plugin-network-manager](https://github.com/OpenVoiceOS/ovos-PHAL-plugin-network-manager) to handle."
      },
      {
        "heading": "Install a GitHub skill",
        "content": "Install a skill from a GitHub URL:\n\n`GHS:https://github.com/OpenVoiceOS/skill-ovos-icanhazdadjokes`"
      },
      {
        "heading": "Install a Python package",
        "content": "Install any package from PyPI:\n\n`PIP:skill-wikipedia-for-humans`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-09-13T20:56:58Z",
    "last_updated": "2025-06-16T22:49:35.954419Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-audio-transformer-plugin-speechbrain-langdetect",
    "skill_id": null,
    "name": "ovos-audio-transformer-plugin-speechbrain-langdetect",
    "description": "speech language detection plugin",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin",
      "transformers"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-audio-transformer-plugin-speechbrain-langdetect",
    "package_name": "ovos-audio-transformer-plugin-speechbrain-langdetect",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-audio-transformer-plugin-speechbrain-langdetect"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-04T15:42:18Z",
    "last_updated": "2026-01-09T06:21:49.743518Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-backend-client",
    "skill_id": null,
    "name": "ovos-backend-client",
    "description": "client library for interaction with all compatible ovos-core backend services",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-backend-client",
    "package_name": "ovos-backend-client",
    "pypi_version": "1.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 4,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-16T17:58:18Z",
    "last_updated": "2024-11-11T18:05:43.384459Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-backend-manager",
    "skill_id": null,
    "name": "ovos-backend-manager",
    "description": "A simple web UI for personal backend, powered by PyWebIO",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-backend-manager",
    "package_name": "ovos-backend-manager",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 4,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-backend-manager`\n\nor from source\n\n`pip install git+https://github.com/OpenVoiceOS/ovos-backend-manager`"
      },
      {
        "heading": "Configuration",
        "content": "edit `~/.config/mycroft/ovos_backend_manager.conf`\n\n{\n    \"server\": {\n        \"url\": \"http://XXX.XXX.XXX.XX:6712\",\n        \"version\": \"v1\",\n        \"admin_key\": \"XXXX\"\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-09-19T21:47:04Z",
    "last_updated": "2023-06-12T17:29:02Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "builderjer-ovos-backend-ui",
    "skill_id": null,
    "name": "ovos-backend-ui",
    "description": "UI in Flask for OVOS backend",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/builderjer/ovos-backend-ui",
    "package_name": "ovos-backend-ui",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "builderjer",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-10-16T22:07:42Z",
    "last_updated": "2023-11-25T20:27:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-bidirectional-translation-plugin",
    "skill_id": null,
    "name": "ovos-bidirectional-translation-plugin",
    "description": "This package holds two OVOS plugins: a `UtteranceTransformer` and a `DialogTransformer`. Together they let OVOS understand and answer in any language, even one the installed skills do not support directly.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-bidirectional-translation-plugin",
    "package_name": "ovos-bidirectional-translation-plugin",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-bidirectional-translation-plugin"
      },
      {
        "heading": "Configuration",
        "content": "{\n  \"utterance_transformers\": {\n    \"ovos-utterance-translation-plugin\": {\n      \"bidirectional\": true,\n      \"verify_lang\": false,\n      \"ignore_invalid_langs\": true,\n      \"translate_secondary_langs\": false\n    }\n  },\n  \"dialog_transformers\": {\n    \"ovos-dialog-translation-plugin\": {}\n  }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-10-10T20:18:20Z",
    "last_updated": "2024-11-21T07:43:39.226664Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-binary-shop",
    "skill_id": null,
    "name": "ovos-binary-shop",
    "description": "Wheels and pre-compiled binaries for usage with ovos plugins / images",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-binary-shop",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-29T18:21:31Z",
    "last_updated": "2023-05-14T19:54:03Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-blogs",
    "skill_id": null,
    "name": "ovos-blogs",
    "description": "ovos blog site built with Next.js using the Starter Blog template",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-blogs/master/public/logo.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-blogs",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 5,
    "open_issues": 38,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-22T18:14:53Z",
    "last_updated": "2026-10-28T01:05:53Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-buildroot",
    "skill_id": null,
    "name": "ovos-buildroot",
    "description": "Open Voice Operating System - Buildroot edition is a minimalistic linux OS bringing the OVOS voice assistant to embbeded, low-spec headless and/or small (touch)screen devices.",
    "examples": [],
    "tags": [
      "ai",
      "artificial-intelligence",
      "buildroot",
      "hacktoberfest",
      "linux",
      "mycroft",
      "mycroftai",
      "open-source",
      "opensource",
      "openvoiceos",
      "ovos",
      "personal-assistant",
      "raspberry-pi",
      "raspberry-pi-3",
      "rpi",
      "rpi3",
      "voice-as-an-interface",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-buildroot",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 284,
    "forks": 37,
    "open_issues": 16,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2018-10-30T15:25:53Z",
    "last_updated": "2026-10-03T20:00:20Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-bus-client",
    "skill_id": null,
    "name": "ovos-bus-client",
    "description": "messagebus client for the OVOS ecosystem",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-bus-client",
    "package_name": "ovos-bus-client",
    "pypi_version": "1.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 7,
    "open_issues": 23,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-bus-client"
      },
      {
        "heading": "Configuration",
        "content": "`MessageBusClient` reads the `websocket` block of your OVOS config (loaded by `ovos-config`) \u2014 defaults to `ws://127.0.0.1:8181/core`. Override at construction:\n\nMessageBusClient(host='127.0.0.1', port=8181)\n\nDo **not** change `host` to anything routable. See the security callout above."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-11-18T15:51:27Z",
    "last_updated": "2026-03-02T20:48:46.413197Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-busmon",
    "skill_id": null,
    "name": "ovos-busmon",
    "description": "A DevTools-style live log for the OpenVoiceOS messagebus.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-busmon",
    "package_name": "ovos-busmon",
    "pypi_version": "0.1.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-busmon\n\nOr from source:\n\ngit clone https://github.com/OpenVoiceOS/ovos-busmon\ncd ovos-busmon\npip install -e .[dev]"
      },
      {
        "heading": "Configuration",
        "content": "Set every option through environment variables, or through a `.env` file:\n\n| Variable | Default | Description |\n|---|---|---|\n| `OVOS_BUS_HOST` | `localhost` | OVOS messagebus host |\n| `OVOS_BUS_PORT` | `8181` | OVOS messagebus port |\n| `BUSMON_HOST` | `127.0.0.1` | Address to bind the HTTP service |\n| `BUSMON_PORT` | `8005` | Port to bind the HTTP service |\n| `BUSMON_TOKEN` | (empty) | Shared-secret token. When set, the API needs it |\n| `BUSMON_USERNAME` | (empty) | HTTP Basic auth username |\n| `BUSMON_PASSWORD` | (empty) | HTTP Basic auth password |\n| `BUFFER_SIZE` | `2000` | Ring buffer capacity (messages) |\n\nAuthentication is off until you set `BUSMON_TOKEN`, or `BUSMON_USERNAME` and\n`BUSMON_PASSWORD`. There are no default credentials."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-15T00:23:51Z",
    "last_updated": "2026-07-23T19:34:33.541104Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-chromadb-embeddings-plugin",
    "skill_id": null,
    "name": "ovos-chromadb-embeddings-plugin",
    "description": "ChromaDB-backed `EmbeddingsDB` vector store plugin for OpenVoiceOS.",
    "examples": [],
    "tags": [
      "chromadb",
      "embeddings",
      "openvoiceos",
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-chromadb-embeddings-plugin",
    "package_name": "ovos-chromadb-embeddings-plugin",
    "pypi_version": "0.0.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Embeddings Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-chromadb-embeddings-plugin"
      },
      {
        "heading": "Configuration",
        "content": "Pass a `config` dict to `ChromaEmbeddingsDB(config=...)` or set it in your OVOS\nconfiguration under the plugin key.\n\n| Key | Type | Default | Description |\n|---|---|---|---|\n| `path` | `str` | `\"./chromadb_storage\"` | Local persistence directory (PersistentClient mode). |\n| `host` | `str` | none | Remote ChromaDB server host. When set, uses HttpClient instead of PersistentClient. |\n| `port` | `int` | `8000` | Port for the remote ChromaDB server (HttpClient mode only). |\n| `default_collection_name` | `str` | `\"embeddings\"` | Name of the collection created/used on init. |\n| `hnsw:space` | `str` | `\"cosine\"` | Distance metric for HNSW index. Accepted: `\"cosine\"`, `\"l2\"`, `\"ip\"`. Set via collection metadata. |\n\n### Local (persistent) mode\n\ndb = ChromaEmbeddingsDB(config={\"path\": \"/var/lib/ovos\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-19T22:57:49Z",
    "last_updated": "2024-10-25T22:14:27.453164Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-classifiers",
    "skill_id": null,
    "name": "ovos-classifiers",
    "description": "WIP - open during construction, **pre-alpha**",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-classifiers",
    "package_name": "ovos-classifiers",
    "pypi_version": "0.0.0a59",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "G2P Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 6,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-26T18:42:06Z",
    "last_updated": "2024-08-05T15:58:25.154795Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-ovos-claude-plugin",
    "skill_id": null,
    "name": "ovos-claude-plugin",
    "description": "Anthropic Claude integration for OpenVoiceOS, the open-source voice assistant platform.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/ovos-claude-plugin",
    "package_name": "ovos-claude-plugin",
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "TigreGotico",
    "tier": 2,
    "component_type": "Yesno Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-claude-plugin\n\nTo summon Claude by name via voice, also install the Claude persona:\n\npip install ovos-claude-persona\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "Add this to `~/.config/mycroft/mycroft.conf`:\n\n{\n  \"ovos-chat-claude-plugin\": {\n    \"api_key\": \"sk-ant-...\",\n    \"model\": \"claude-haiku-4-5-20251001\",\n    \"max_tokens\": 200,\n    \"system_prompt\": \"You are a helpful voice assistant. Be concise.\"\n  }\n}\n\nThe `api_key` field is optional if the `ANTHROPIC_API_KEY` environment variable is set.\n\n### Model selection\n\n| Model | Use case |\n|---|---|\n| `claude-haiku-4-5-20251001` | Real-time voice, fast and cheap (**default**) |\n| `claude-sonnet-4-6` | General purpose, more capable |\n| `claude-opus-4-6` | Heavy reasoning, slowest, most capable |\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-09T18:45:36Z",
    "last_updated": "2026-08-31T12:58:43Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-cli-client",
    "skill_id": null,
    "name": "ovos-cli-client",
    "description": "mycroft-core cli client extracted into a standalone component",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-cli-client",
    "package_name": "ovos-cli-client",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_cli_client"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-22T15:12:30Z",
    "last_updated": "2022-03-22T15:10:52.095989Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-color-parser",
    "skill_id": null,
    "name": "ovos-color-parser",
    "description": "Turn natural-language color descriptions into color objects, and color objects back into",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-color-parser",
    "package_name": "ovos_color_parser",
    "pypi_version": "0.11.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-color-parser"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-11-07T01:47:23Z",
    "last_updated": "2026-09-03T18:13:29.644949Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "evok3dx-OVOS-Commands",
    "skill_id": null,
    "name": "OVOS-Commands",
    "description": "Jarvis lets you control your Linux desktop by voice. Standard commands run",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/evok3dx/OVOS-Commands",
    "package_name": "ovos-skill-jarvis-dispatcher",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "evok3dx",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Before you install",
        "content": "- Use **Linux Mint 22.x, X11 and x86_64**, with a working microphone and speakers.\n  Mint 22.3 is the tested desktop target. See [Requirements and stack](#requirements-and-stack).\n- Setup prepares its own **Python 3.11.16** when needed. System Python stays\n  unchanged. See [Python setup](docs/07-installer-updates.md#preparing-python)\n  if you already have an OVOS environment using another Python version.\n- Keep at least **8 GiB free** for installation and rollback, plus room for\n  voice and AI models. Check the filesystem holding Ollama's model storage;\n  free space in your home directory may not cover those downloads.\n- Install and start **Ollama** using its [Linux setup guide](https://docs.ollama.com/linux).\n  Jarvis reuses an existing installation; it does not install Ollama.\n- Internet\u2026"
      },
      {
        "heading": "Install Jarvis",
        "content": "Download the archive and matching `.sha256` from\n[Releases](https://github.com/evok3dx/OVOS-Commands/releases/latest):\n\nversion=4.9.0\nsha256sum --check \"ovos-commands-$version.tar.gz.sha256\"\ntar -xzf \"ovos-commands-$version.tar.gz\"\ncd \"ovos-commands-$version\"\nbash scripts/install.sh\n\nSetup checks prerequisites, installs OVOS and offers network isolation.\nIsolation is recommended and needs administrator approval. Existing isolation\nchoices are preserved. Reading and dictation use optional Speech Note.\n\nFor a read-only preflight, run `bash scripts/install.sh --check`.\nFor Jarvis **4.5 or later**, update through **Updates** in the Control Centre.\nSee the [installation and upgrade guide](docs/07-installer-updates.md) for details.\n\nflowchart TD\n  A[\"Fresh install or update\"] --> B[\"Check system\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-09-09T00:38:09Z",
    "last_updated": "2026-10-26T20:06:54Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-common-query-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-common-query-pipeline-plugin",
    "description": "The OVOS Common Query Framework answers questions. It gathers answers from several skills and picks the best one.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "pipeline",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-common-query-pipeline-plugin",
    "package_name": "ovos_common_query_pipeline_plugin",
    "pypi_version": "1.1.9",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "This plugin ships with [ovos-core](https://github.com/OpenVoiceOS/ovos-core) by default. You do not need to install it explicitly.\n\npip install ovos-common-query-pipeline-plugin"
      },
      {
        "heading": "Configuration",
        "content": "### Reranker (optional)\n\nRerankers, also called MultipleChoiceSolvers, are optional. Install one explicitly to rank and select the most relevant response from multiple common query skills (for example, Wolfram Alpha or Wikipedia).\n\nThis example configures a reranker:\n\n\"intents\": {\n    \"common_query\": {\n        \"min_self_confidence\": 0.5,\n        \"min_reranker_score\": 0.5,\n        \"reranker\": \"ovos-flashrank-reranker-plugin\",\n        \"ovos-flashrank-reranker-plugin\": {\n          \"model\": \"ms-marco-TinyBERT-L-2-v2\"\n        }\n    }\n}\n\nNotes:\n- A reranker plugin is optional. Install it explicitly for the framework to use it.\n- The example uses [ovos-flashrank-reranker-plugin](https://github.com/OpenVoiceOS/ovos-flashrank-reranker-plugin) with the `ms-marco-TinyBERT-L-2-v2` model. Other plugins\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-10-14T21:01:48Z",
    "last_updated": "2025-11-05T00:31:05.944564Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-common-query-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "1.1.7",
          "tested_at": "2026-10-04T11:08:19+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.9",
          "tested_at": "2026-10-04T10:45:50+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.20a1",
          "tested_at": "2026-10-30T08:58:31+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-config",
    "skill_id": null,
    "name": "ovos-config",
    "description": "OVOS configuration manager library",
    "examples": [],
    "tags": [
      "core",
      "framework",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-config",
    "package_name": "ovos-config",
    "pypi_version": "2.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 14,
    "open_issues": 17,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "OVOS-config",
        "content": "helper package to interact with the OVOS configuration\n\n## Configuration stack\n\nOVOS merges several configuration files into a single configuration. They are\nloaded in the following order, with later layers overriding earlier ones:\n\n| Layer | Path | Written by |\n|-------|------|------------|\n| `DefaultConfig` | bundled `mycroft.conf` | OVOS (read only) |\n| `DistributionConfig` | `/usr/share/mycroft/mycroft.conf` | distribution/image maintainers (read only) |\n| `SystemConfig` | `/etc/mycroft/mycroft.conf` | system administrators (read only) |\n| `AssistantConfig` | `~/.config/mycroft/runtime.conf` | OVOS itself, at runtime |\n| `UserConfig` | `~/.config/mycroft/mycroft.conf` | the user |\n\nSo the effective priority is `user > assistant > system > distribution > default`.\n\n`AssistantConfig` (`r\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-06-25T12:51:25Z",
    "last_updated": "2025-06-18T01:32:00.769778Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-control-panel",
    "skill_id": null,
    "name": "ovos-control-panel",
    "description": "Unified local web UI for OpenVoiceOS devices",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-control-panel/dev/ovos_webui/static/icon-512.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-control-panel",
    "package_name": "ovos-control-panel",
    "pypi_version": "0.0.1a54",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "The panel follows the OVOS **alpha** channel. It is built on the ovos-config 3.x\nconfiguration layers, which only alpha has for now. Install it on an alpha device:\n\npip install --pre ovos-control-panel\n\nOn a stable or testing device, pip either picks an old pre-release or wants to\nupgrade core OVOS packages to alphas. Wait until alpha becomes testing."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-10T17:37:33Z",
    "last_updated": "2026-10-22T16:03:41.879279Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-core",
    "skill_id": null,
    "name": "ovos-core",
    "description": "OpenVoiceOS Core, the FOSS Artificial Intelligence platform. ",
    "examples": [],
    "tags": [
      "core",
      "framework",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-core",
    "package_name": "ovos-core",
    "pypi_version": "2.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 300,
    "forks": 31,
    "open_issues": 15,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installing OVOS",
        "content": "If you have an existing system, use the [ovos-installer](https://github.com/OpenVoiceOS/ovos-installer) to install OVOS and its dependencies in one step.\n\nFor Raspberry Pi users, the [RaspOVOS](https://github.com/OpenVoiceOS/RaspOVOS) image runs in headless mode (no GUI) and targets Raspberry Pi 3B or higher.\n\nFor embedded systems, [ovos-buildroot](https://github.com/OpenVoiceOS/ovos-buildroot) builds a custom Linux distribution for minimal setups.\n\nMore detailed documentation is available in the [ovos-technical-manual](https://openvoiceos.github.io/ovos-technical-manual) and in [`docs/`](docs/index.md). See [docs/prerelease-quirks.md](docs/prerelease-quirks.md) for what changed since the last stable release.\n\nDevelopers can install `ovos-core` standalone:\n\npip install ovos-core\n\nThis incl\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "kab-dz",
      "nl-be",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2021-02-18T13:27:04Z",
    "last_updated": "2025-11-05T00:57:01.408074Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-converse-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "1.3.1",
          "tested_at": "2026-10-14T08:36:53+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.1.1",
          "tested_at": "2026-10-14T08:38:46+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "3.7.5a1",
          "tested_at": "2026-10-30T08:58:36+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-coreferee-plugin",
    "skill_id": null,
    "name": "ovos-coreferee-plugin",
    "description": "OVOS plugin for coreference resolution and semantic triple extraction. It rewrites text so pronouns point to their referents. For example, it turns \"call Mom. tell her to buy eggs\" into \"call Mom. tell Mom to buy eggs\". This helps intent parsers and knowledge-graph builders that read the resolved text. The plugin also extracts subject-verb-object triples from text.",
    "examples": [],
    "tags": [
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-coreferee-plugin",
    "package_name": "ovos-coreferee-plugin",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Triples Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-coreferee-plugin\n\nThe plugin downloads the spaCy model `en_core_web_trf` on first use. This model needs `en_core_web_lg` as a companion. Both models download automatically."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-05T18:21:58Z",
    "last_updated": "2026-09-25T05:27:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-date-parser",
    "skill_id": null,
    "name": "ovos-date-parser",
    "description": "Multilingual parsing, extraction, and formatting of human date, time, and",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-date-parser",
    "package_name": "ovos-date-parser",
    "pypi_version": "0.29.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 8,
    "open_issues": 12,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-date-parser"
      }
    ],
    "languages": [
      "de",
      "es",
      "fr",
      "it",
      "kab",
      "pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-11-07T01:05:06Z",
    "last_updated": "2026-07-21T12:30:09.910817Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ddg-plugin",
    "skill_id": null,
    "name": "ovos-ddg-plugin",
    "description": "DuckDuckGo Instant Answers plugin for OpenVoiceOS.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ddg-plugin",
    "package_name": "ovos-ddg-plugin",
    "pypi_version": "1.1.7a1",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Toolbox Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-ddg-plugin\n\n> **Legacy users:** the old `ovos-ddg-solver-plugin` package remains on PyPI. New code should import from `ovos_ddg_plugin`.\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "All keys are optional and read from the OVOS plugin config block for `ovos-ddg-plugin`:\n\n| Key | Default | Description |\n|-----|---------|-------------|\n| `keyword_extractor` | `\"ovos-rake-keyword-extractor\"` | OPM keyword extractor plugin used when a direct query returns no result. The default is provided by the `RAKEkeywords` package, which this plugin installs. |\n\n---"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2025-11-22T20:45:33Z",
    "last_updated": "2026-11-03T22:40:59.663741Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "builderjer-ovos-diagnostics",
    "skill_id": null,
    "name": "ovos-diagnostics",
    "description": "The OVOS Diagnostics Tool is a command-line interface (CLI) utility designed to manage and diagnose various plugins used in the Open Voice OS (OVOS) ecosystem. It provides functionalities to list, recommend, and manage plugins across different categories such as audio, skills, GUI, language, listener, and platform-specific plugins.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/builderjer/ovos-diagnostics",
    "package_name": "ovos-diagnostics",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "builderjer",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Listing Installed TTS Plugins",
        "content": "To list all available TTS plugins, you can use the following command:\n\novos-diagnostics audio scan-tts\nexample output\nList of TTS Plugins\n 0 - ovos-tts-plugin-mimic3\n 1 - ovos-tts-plugin-beepspeak\n 2 - ovos-tts-plugin-dummy\n 3 - ovos-tts-plugin-SAM\n 4 - ovos-tts-plugin-polly\n 5 - ovos_tts_plugin_espeakng\n 6 - ovos-tts-plugin-piper\n 7 - ovos-tts-plugin-pico\n 8 - ovos-tts-plugin-edge-tts\n 9 - ovos-tts-plugin-azure\n 10 - ovos-tts-plugin-server\n 11 - ovos-tts-plugin-marytts\n 12 - neon-tts-plugin-larynx-server\n 13 - ovos-tts-plugin-mimic\n 14 - ovos-tts-plugin-google-tx\n\n> NOTE: if a plugin is installed but doesnt show up here, then ovos-plugin-manager is failing to load it"
      },
      {
        "heading": "Recommending an STT Configuration",
        "content": "To get recommendations for the best STT configuration based on your platform, use:\n\novos-diagnostics listener recommend-stt\n\nexample output\nAvailable plugins:\n - ovos-stt-plugin-dummy\n - ovos-stt-plugin-azure\n - ovos-stt-plugin-vosk\n - ovos-stt-plugin-vosk-streaming\n - ovos-stt-plugin-chromium\n - ovos-stt-plugin-fasterwhisper\n - ovos-stt-plugin-server\nOFFLINE RECOMMENDATION: ovos-stt-plugin-fasterwhisper - multilingual, GPU allows fast inference\nONLINE RECOMMENDATION: ovos-stt-plugin-server - multilingual, variable performance, self hosted, community maintained public  (fasterwhisper)\nSTT RECOMMENDATION: ovos-stt-plugin-fasterwhisper - recommended offline plugin\nFALLBACK STT RECOMMENDATION: None - already offline, no need to reach out to the internet!"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-28T12:04:44Z",
    "last_updated": "2024-07-28T12:35:47Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-dialog-normalizer-plugin",
    "skill_id": null,
    "name": "ovos-dialog-normalizer-plugin",
    "description": "A dialog transformer plugin for OpenVoiceOS (OVOS).",
    "examples": [],
    "tags": [
      "dialog",
      "ilenia",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-dialog-normalizer-plugin",
    "package_name": "ovos-dialog-normalizer-plugin",
    "pypi_version": "0.0.1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-dialog-normalizer-plugin"
      },
      {
        "heading": "Configuration",
        "content": "Add an entry under `\"dialog_transformers\"` in your `mycroft.conf` to enable the plugin.\n\n\"dialog_transformers\": {\n    \"ovos-dialog-normalizer-plugin\": {}\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-02-27T12:53:27Z",
    "last_updated": "2025-02-27T12:54:59.479992Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-dinkum-listener",
    "skill_id": null,
    "name": "ovos-dinkum-listener",
    "description": "ovos-listener based on the voice loop from mycroft-dinkum",
    "examples": [],
    "tags": [
      "audio",
      "listener",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-dinkum-listener",
    "package_name": "ovos-dinkum-listener",
    "pypi_version": "0.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 10,
    "forks": 8,
    "open_issues": 21,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-dinkum-listener[extras]` to install this package and the default plugins.\n\nWithout `extras` you will also need to manually install, and possibly configure STT, WW, and VAD modules as described below."
      },
      {
        "heading": "Configuration",
        "content": "you can set the Wakeword, VAD, STT and Microphone plugins\n\neg, to run under MacOS you should use https://github.com/OpenVoiceOS/ovos-microphone-plugin-sounddevice\n\nnon exhaustive list of config options\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-server\",\n    \"fallback_module\": \"\",\n    \"ovos-stt-plugin-server\": {\"url\": \"https://stt.openvoiceos.com/stt\"}\n  },\n  \"listener\": {\n    // NOTE, multiple hotwords are supported, these fields define the main wake_word,\n    // this is equivalent to setting \"active\": true in the \"hotwords\" section\n    // see \"hotwords\" section at https://github.com/OpenVoiceOS/ovos-config/blob/dev/ovos_config/mycroft.conf\n    \"wake_word\": \"hey_mycroft\",\n    \"stand_up_word\": \"wake_up\",\n    \"microphone\": {\n      \"module\": \"ovos-microphone-plugin-alsa\"\n    },\n    // If ena\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-09T00:00:23Z",
    "last_updated": "2025-11-05T18:10:28.073510Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-docker",
    "skill_id": null,
    "name": "ovos-docker",
    "description": "Open Voice OS container images and docker-compose.yml files for x86_64 and aarch64 CPU architectures.",
    "examples": [],
    "tags": [
      "docker",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-docker",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 64,
    "forks": 21,
    "open_issues": 6,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "`docker-bake.hcl` and `scripts/bake.sh` define the defaults:\n\n- `REGISTRY` (default `docker.io/smartgic`)\n- `MIRROR_REGISTRY` (default empty; CI uses `ghcr.io/openvoiceos/ovos-docker`): a second registry each image is also pushed to\n- `TAG` and `VERSION` (default `alpha`)\n- `LATEST_TAG` (default `latest`; applied only when `TAG=stable`)\n- `CHANNEL` (default `alpha`): selects the constraints file\n- `OVOS_RELEASES_REF` (default `main`): the git ref of [ovos-releases](https://github.com/OpenVoiceOS/ovos-releases) that supplies `constraints-${CHANNEL}.txt`. Give a commit SHA for a reproducible build.\n- `CACHE_REPO` (default `ghcr.io/openvoiceos/ovos-docker-cache`): the registry build cache, readable without login\n- `CACHE_TO` (default off): set `max` to also export the build cache. CI does thi\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-07T17:20:53Z",
    "last_updated": "2026-11-12T23:34:44Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "BurakTaskk-ovos-docker-2",
    "skill_id": null,
    "name": "ovos-docker-2",
    "description": "\ufeff# Genel Bilgi (OVOS)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/BurakTaskk/ovos-docker-2",
    "package_name": "ovos-core",
    "pypi_version": "2.1.1",
    "license": null,
    "archived": false,
    "author": "BurakTaskk",
    "tier": 2,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-be",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-19T11:50:58Z",
    "last_updated": "2025-11-05T00:57:01.408074Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "BurakTaskk-ovos-docker-3",
    "skill_id": null,
    "name": "ovos-docker-3",
    "description": "\ufeff# OVOS Weather Assistant - Terminal CLI",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/BurakTaskk/ovos-docker-3",
    "package_name": "ovos-core",
    "pypi_version": "2.1.1",
    "license": null,
    "archived": false,
    "author": "BurakTaskk",
    "tier": 2,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-be",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-20T18:23:15Z",
    "last_updated": "2025-11-05T00:57:01.408074Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-docker-stt",
    "skill_id": null,
    "name": "ovos-docker-stt",
    "description": "Open Voice OS Speech-to-Text (STT) container images and docker-compose.yml file for x86_64 CPU architecture.",
    "examples": [],
    "tags": [
      "docker",
      "openvoiceos",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-docker-stt",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 20,
    "forks": 3,
    "open_issues": 7,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configure the STT plugins",
        "content": "The `~/ovos/config/mycroft.conf` configuration file configures the STT plugin. Adapt the sample below to fit your setup.\n\n{\n  \"logs\": {\n    \"path\": \"stdout\"\n  },\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-fasterwhisper\",\n    \"ovos-stt-plugin-fasterwhisper\": {\n        \"model\": \"whisper-large-v3-turbo\",\n        \"compute_type\": \"float16\",\n        \"use_cuda\": true,\n        \"cpu_thread\": 8\n    },\n    \"ovos-stt-plugin-vosk-streaming\": {\n        \"model\": \"https://alphacephei.com/vosk/models/vosk-model-en-us-0.42-gigaspeech.zip\",\n        \"verbose\": false\n    },\n    \"ovos-stt-plugin-vosk\": {\n        \"model\": \"http://alphacephei.com/vosk/models/vosk-model-small-en-us-0.15.zip\",\n        \"verbose\": false\n    },\n    \"ovos-stt-plugin-deepgram\": {\n      \"key\": \"GET A KEY FROM DEEPGRAM WEBSITE :)\"\n    },\u2026"
      },
      {
        "heading": "Configure the voice assistant",
        "content": "Once the STT servers are running, configure the voice assistant to reference them. Add the section below to your `~/ovos/config/mycroft.conf` configuration file.\n\n{\n  \"stt\": {\n      \"module\": \"ovos-stt-plugin-server\",\n      \"fallback_module\": \"ovos-stt-plugin-vosk\",\n      \"ovos-stt-plugin-server\": {\n        \"urls\": [\n          \"http://192.168.1.227:8080/stt\",\n          \"http://192.168.1.227:8081/stt\",\n          \"http://192.168.1.227:8082/stt\",\n          \"http://192.168.1.227:8083/stt\",\n          \"http://192.168.1.227:8084/stt\",\n          \"http://192.168.1.227:8085/stt\",\n          \"https://stt.openvoiceos.org/stt\"\n        ]\n      }\n  }\n}\n\nThis configuration sets `ovos-stt-plugin-server` as the default STT plugin. The plugin holds a list of six STT servers. If one is down, the plugin tries t\u2026"
      },
      {
        "heading": "Validate configuration",
        "content": "Use the `jq` command to check that the `mycroft.conf` configuration file is valid JSON.\n\ncat ~/ovos/config/mycroft.conf | jq"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-31T02:30:07Z",
    "last_updated": "2026-11-09T00:21:01Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-docker-tts",
    "skill_id": null,
    "name": "ovos-docker-tts",
    "description": "Open Voice OS TTS Docker images",
    "examples": [],
    "tags": [
      "docker",
      "openvoiceos",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-docker-tts",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 2,
    "open_issues": 5,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "This repository has no Python package and no install step. It only builds OCI images.\n\nBuild the base image first, then an engine image:\n\ndocker build -t smartgic/ovos-tts-server-base:alpha base/\ndocker build --build-arg TAG=alpha -t smartgic/ovos-tts-server-piper:alpha piper/\n\nCUDA variants use `Dockerfile.cuda` and build on `smartgic/ovos-tts-server-base-cuda`. CUDA images exist for `base`, `piper`, and `phoonnx`.\n\nImages publish to the Docker Hub `smartgic/` namespace. The image labels still point back to this repository as the source."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-06-24T15:44:23Z",
    "last_updated": "2026-10-06T18:23:20Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-docker-tx",
    "skill_id": null,
    "name": "ovos-docker-tx",
    "description": "Docker image definitions for Open Voice OS translation (tx) microservices. Each image runs `ovos-translate-server` over HTTP and serves translation and language detection through a specific engine plugin.",
    "examples": [],
    "tags": [
      "docker",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-docker-tx",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "This repo has no Python package. It only ships Dockerfiles and a build script. Build the images locally:\n\ndocker build -f base/Dockerfile -t smartgic/ovos-tx-server-base:alpha ./base\ndocker build -f nllb/Dockerfile -t smartgic/ovos-tx-server-nllb:alpha ./nllb\ndocker build -f google/Dockerfile -t smartgic/ovos-tx-server-google:alpha ./google\n\nThe engine images (`nllb`, `google`) build `FROM smartgic/ovos-tx-server-base:${TAG}`, so build the base image first, or pull it, before you build an engine image. Pass `--build-arg ALPHA=true` to install pre-release or git-based dependencies instead of the released packages."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-08-21T22:04:19Z",
    "last_updated": "2026-09-01T17:20:26Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-docs-viewer",
    "skill_id": null,
    "name": "ovos-docs-viewer",
    "description": "terminal docs viewer",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-docs-viewer",
    "package_name": "ovos-docs-viewer",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 2,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-docs-viewer"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-11-12T03:30:00Z",
    "last_updated": "2024-11-28T13:23:43.580209Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-document-chunkers",
    "skill_id": null,
    "name": "ovos-document-chunkers",
    "description": "Document Chunkers is a Python library that splits raw documents into sentences or paragraphs. Use it to prepare text for natural language processing (NLP) tasks. The library reads plain text, Markdown, HTML, PDF, DOC, and DOCX input.",
    "examples": [],
    "tags": [
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-document-chunkers",
    "package_name": "ovos-document-chunkers",
    "pypi_version": "0.1.1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-document-chunkers"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-24T15:16:57Z",
    "last_updated": "2025-07-13T17:55:37.337077Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-eot-plugin-cuelight",
    "skill_id": null,
    "name": "ovos-eot-plugin-cuelight",
    "description": "CueLight end-of-turn plugin for OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-eot-plugin-cuelight",
    "package_name": "ovos-eot-plugin-cuelight",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "End Of Turn Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "This plugin needs the `cuelight` package from the upstream project, which is\nnot on PyPI yet:\n\npip install git+https://github.com/sshah03/CueLight\npip install ovos-eot-plugin-cuelight\n\nThe model weights download from Hugging Face the first time the plugin loads\nthem, into the shared Hugging Face cache."
      },
      {
        "heading": "Configuration",
        "content": "Add an `end_of_turn` block to the `listener` section of `mycroft.conf`:\n\n{\n  \"listener\": {\n    \"end_of_turn\": {\n      \"module\": \"ovos-eot-plugin-cuelight\",\n      \"ovos-eot-plugin-cuelight\": {\n        \"model\": \"cuelight-nano\",\n        \"preset\": \"snappy\"\n      }\n    }\n  }\n}\n\n| Key | Type | Default | Description |\n|---|---|---|---|\n| `model` | `str` | `cuelight-nano` | `cuelight-nano`, `cuelight-base`, or a local folder |\n| `preset` | `str` | `snappy` | `snappy` responds sooner. `careful` interrupts less |\n\nWhen the config sets `threshold`, `min_silence_s`, or `timeout_s`, the plugin\nbuilds a custom `EndpointPolicy` and ignores `preset`.\n\n| Key | Type | Default | Description |\n|---|---|---|---|\n| `threshold` | `float` | - | p_end above which the turn may end |\n| `min_silence_s` | `float` | -\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-14T19:01:58Z",
    "last_updated": "2026-10-15T14:37:09Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "tophcodes-ovos-flake",
    "skill_id": null,
    "name": "ovos-flake",
    "description": "NixOS flake for OpenVoiceOS. Work in progress!",
    "examples": [],
    "tags": [
      "flake",
      "nix",
      "nix-flake",
      "nixos",
      "open-voice-os",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/tophcodes/ovos-flake",
    "package_name": null,
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "tophcodes",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Add this flake to your configuration:\n\n{\n  inputs = {\n    nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n    home-manager.url = \"github:nix-community/home-manager\";\n    ovos.url = \"github:tophcodes/ovos-flake\";\n  };\n\n  outputs = { nixpkgs, home-manager, ovos, ... }: {\n    nixosConfigurations.yourhost = nixpkgs.lib.nixosSystem {\n      modules = [\n        ovos.nixosModules.default\n        home-manager.nixosModules.home-manager\n        {\n          home-manager.users.youruser = {\n            imports = [ ovos.homeManagerModules.default ];\n          };\n        }\n        ./configuration.nix\n      ];\n    };\n  };\n}"
      },
      {
        "heading": "Basic Configuration",
        "content": "**NixOS (message bus):**\n{\n  services.ovos = {\n    enable = true;  # Starts messagebus on port 8181\n  };\n}\n\n**Home Manager (TTS/STT services):**\n{\n  services.ovos.audio = {\n    enable = true;  # TTS with Piper\n  };\n}"
      },
      {
        "heading": "Home Manager - audio service reads this from system config",
        "content": "services.ovos.audio.enable = true;\n\n## Configuration Options\n\n### NixOS Module (System)\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `enable` | bool | `false` | Enable OVOS messagebus |\n| `host` | string | `\"0.0.0.0\"` | Host to bind messagebus to |\n| `port` | port | `8181` | Messagebus WebSocket port |\n| `speech.backend` | string | `\"piper\"` | TTS backend |\n| `speech.voice` | string | `\"en_US-lessac-medium\"` | Piper voice |\n| `location.timezone` | string | `\"America/Chicago\"` | Timezone |\n\n### Home Manager Module (User Services)\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `audio.enable` | bool | `false` | Enable TTS audio service |\n| `audio.logLevel` | enum | `\"INFO\"` | Log level |\n| `messagebusHost` | str\u2026"
      },
      {
        "heading": "Development Setup",
        "content": "**NixOS:**\n{\n  services.ovos = {\n    enable = true;\n    host = \"127.0.0.1\";  # Local only\n    logLevel = \"DEBUG\";\n  };\n}\n\n**Home Manager:**\n{\n  services.ovos.audio = {\n    enable = true;\n    logLevel = \"DEBUG\";\n  };\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-22T11:20:23Z",
    "last_updated": "2025-12-23T15:08:35Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-flashrank-reranker-plugin",
    "skill_id": null,
    "name": "ovos-flashrank-reranker-plugin",
    "description": "This plugin adds FlashRank-based reranking to the Open Voice OS (OVOS) platform. It picks the best answer to a question from a list of candidate answers. It can also extract the most relevant sentence from a text passage. It uses the FlashRank library to score and rank candidates by relevance to the query.",
    "examples": [],
    "tags": [
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-flashrank-reranker-plugin",
    "package_name": "ovos-flashrank-reranker-plugin",
    "pypi_version": "0.0.0",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Solver Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-flashrank-reranker-plugin"
      },
      {
        "heading": "Configuration",
        "content": "The `common_query` framework in OVOS uses a `MultipleChoiceSolver` to pick the best answer from several skill responses. Set this plugin as the reranker:\n\n\"common_query\": {\n  \"reranker\": \"ovos-flashrank-reranker-plugin\",\n  \"ignore_skill_scores\": true,\n  \"ovos-flashrank-reranker-plugin\": {\"model\": \"ms-marco-TinyBERT-L-2-v2\"}\n}\n\n> NOTE: On a Raspberry Pi, this adds up to 1 second of extra latency to the common query pipeline.\n\n### Available models\n\nThe default model is `ms-marco-MultiBERT-L-12`, because it supports many languages.\n\n| Model name | Description |\n|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-21T20:12:20Z",
    "last_updated": "2024-10-25T22:16:20.826810Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-gguf-embeddings-plugin",
    "skill_id": null,
    "name": "ovos-gguf-embeddings-plugin",
    "description": "DEPRECATED \u2014 folded into OpenVoiceOS/ovos-gguf-plugin (keeps plugin name 'ovos-gguf-embeddings-plugin'). Install ovos-gguf-plugin.",
    "examples": [],
    "tags": [
      "embeddings",
      "gguf",
      "openvoiceos",
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gguf-embeddings-plugin",
    "package_name": "ovos-gguf-embeddings-plugin",
    "pypi_version": "0.0.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Text Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-20T00:04:43Z",
    "last_updated": "2024-10-25T22:21:30.306311Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-gguf-plugin",
    "skill_id": null,
    "name": "ovos-gguf-plugin",
    "description": "A unified GGUF wrapper for OpenVoiceOS. It covers chat, summarization, dialog rewriting, translation, language detection, and text embeddings, all backed by quantized GGUF models through `llama-cpp-python`.",
    "examples": [],
    "tags": [
      "gguf",
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gguf-plugin",
    "package_name": "ovos-gguf-plugin",
    "pypi_version": "1.2.8a1",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Summarizer Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-gguf-plugin\n\nFor GPU inference, rebuild `llama-cpp-python` with CUDA support first:\n\nCMAKE_ARGS=\"-DGGML_CUDA=on\" FORCE_CMAKE=1 pip install llama-cpp-python --force-reinstall --no-cache-dir"
      },
      {
        "heading": "Configuration",
        "content": "All wrappers share the same config keys:\n\n| Key | Default | Description |\n|---|---|---|\n| `model` | required | Local `.gguf` path, HuggingFace repo id, or friendly name (embeddings) |\n| `remote_filename` | `*Q4_K_M.gguf` | Glob for selecting the file from a HF repo |\n| `n_gpu_layers` | `0` | GPU layers to offload (`-1` = all) |\n| `chat_format` | `None` | llama.cpp chat format (auto-detected for most models) |\n| `verbose` | `True` | llama.cpp verbosity |\n| `max_tokens` | `512` | Maximum tokens to generate |\n| `system_prompt` | locale default | Override the system prompt |\n| `end_markers` | `END_MARKERS` tuple | Text markers to strip from token stream (chat template artifacts) |\n\nSee [`docs/configuration.md`](docs/configuration.md) for the full reference, including per-wrapper options and GP\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-07-20T23:33:09Z",
    "last_updated": "2026-10-22T19:08:50.690153Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-gguf-translate-plugin",
    "skill_id": null,
    "name": "ovos-gguf-translate-plugin",
    "description": "DEPRECATED \u2014 superseded by OpenVoiceOS/ovos-gguf-plugin (translate wrapper). Install ovos-gguf-plugin.",
    "examples": [],
    "tags": [
      "deprecated",
      "gguf",
      "openvoiceos",
      "plugin",
      "tigregotico",
      "translation"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gguf-translate-plugin",
    "package_name": "ovos_gguf_translate",
    "pypi_version": "0.0.1",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-05T23:36:05Z",
    "last_updated": "2024-10-25T20:31:31.694653Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-good-manners-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-good-manners-pipeline-plugin",
    "description": "OVOS pipeline plugin that listens to how you ask: compliments good manners and reprimands foul language, without getting in the way of the answer",
    "examples": [],
    "tags": [
      "hivemind",
      "manners",
      "openvoiceos",
      "ovos",
      "pipeline",
      "plugin",
      "politeness",
      "profanity",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-good-manners-pipeline-plugin",
    "package_name": "ovos-good-manners-pipeline-plugin",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 4,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-good-manners-pipeline-plugin"
      },
      {
        "heading": "Configuration",
        "content": "Put the plugin **first** in the pipeline in `mycroft.conf`, followed by your normal pipeline:\n\n{\n  \"intents\": {\n    \"pipeline\": [\n      \"ovos-good-manners-pipeline-plugin\",\n      \"stop_high\",\n      \"converse\",\n      \"...\"\n    ],\n    \"ovos-good-manners-pipeline-plugin\": {\n      \"polite_threshold\": 4,\n      \"polite_timeout\": 10,\n      \"max_delay\": 20\n    }\n  }\n}\n\n| Setting | Default | Meaning |\n|---|---|---|\n| `polite_threshold` | `4` | polite requests in a row before you get a compliment |\n| `polite_timeout` | `10` | minutes without a polite request before the streak starts over |\n| `max_delay` | `20` | seconds after the utterance after which a comeback is dropped instead of said late |\n\nSince the pipeline is chosen per session, a HiveMind client can enable or disable the plugin through its\u2026"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "God opf\u00f8rsel",
        "description": "Lytter til hvordan du sp\u00f8rger, ikke kun hvad du sp\u00f8rger om: roser god opf\u00f8rsel og irettes\u00e6tter grimt sprog, efter at dit sp\u00f8rgsm\u00e5l er besvaret som normalt. Et pipeline-plugin, der aldrig st\u00e5r i vejen for svaret.",
        "examples": [
          "Hvad er klokken, v\u00e6r s\u00f8d at sige det",
          "Vil du v\u00e6re s\u00f8d at fort\u00e6lle en vittighed",
          "Hvis du ikke har noget imod det, hvordan er vejret?"
        ]
      },
      "de-de": {
        "name": "Gute Manieren",
        "description": "Achtet darauf, wie du fragst, nicht nur was du fragst: lobt gute Manieren und tadelt Schimpfw\u00f6rter, nachdem deine Anfrage wie gewohnt beantwortet wurde. Ein Pipeline-Plugin, das der Antwort nie im Weg steht.",
        "examples": [
          "Wie sp\u00e4t ist es, bitte?",
          "Erz\u00e4hl mir bitte einen Witz",
          "Wenn es dir nichts ausmacht, wie ist das Wetter?"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2019-01-10T03:26:14Z",
    "last_updated": "2026-10-03T12:01:36.600168Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-good-manners-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:08:26+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.2",
          "tested_at": "2026-10-04T10:46:00+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.2",
          "tested_at": "2026-10-30T08:58:42+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-google-translate-plugin",
    "skill_id": null,
    "name": "ovos-google-translate-plugin",
    "description": "This plugin is an OVOS language plugin for OpenVoiceOS. It provides text translation and language detection through Google Translate, without an API key.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-google-translate-plugin",
    "package_name": "ovos-google-translate-plugin",
    "pypi_version": "0.0.4a3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Translate Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-google-translate-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-23T22:19:46Z",
    "last_updated": "2026-09-26T11:49:39.477146Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-gui",
    "skill_id": null,
    "name": "ovos-gui",
    "description": "ovos-core metapackage for gui daemon",
    "examples": [],
    "tags": [
      "gui",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gui",
    "package_name": "ovos-gui",
    "pypi_version": "1.3.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 5,
    "open_issues": 19,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Configure the service under `mycroft.conf`.\n\n{\n  \"gui\": {\n    // Override: SYSTEM (set by specific enclosures)\n    // Uncomment or add \"idle_display_skill\" to set the initial homescreen\n    // \"idle_display_skill\": \"skill-ovos-homescreen.openvoiceos\",\n\n    // Extensions are plugins that add GUI platform support for specific devices.\n    // For example, set extension to \"ovos-gui-plugin-shell-companion\" if you use ovos-shell.\n    \"extension\": \"generic\",\n\n    // The default generic extension can provide homescreen functionality if enabled.\n    \"generic\": {\n        \"homescreen_supported\": false\n    },\n\n    // Optionally set a default QT version for connected clients that do not report one.\n    // NOTE: currently only QT5 clients exist\n    \"default_qt_version\": 5\n  },\n\n  // The GUI messagebus\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-01T14:45:06Z",
    "last_updated": "2025-11-05T00:55:11.010832Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-gui-api-client",
    "skill_id": null,
    "name": "ovos-gui-api-client",
    "description": "A template defines **what kind of information** is being presented, not how it looks.",
    "examples": [],
    "tags": [
      "gui",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gui-api-client",
    "package_name": "ovos-gui-api-client",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-05T16:19:02Z",
    "last_updated": "2026-06-25T14:21:51.226852Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-gui-plugin-shell-companion",
    "skill_id": null,
    "name": "ovos-gui-plugin-shell-companion",
    "description": "provides various bus APIs that integrate with ovos-shell",
    "examples": [],
    "tags": [
      "gui",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-gui-plugin-shell-companion",
    "package_name": "ovos_gui_plugin_shell_companion",
    "pypi_version": "1.0.6",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Gui Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 4,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-13T17:59:07Z",
    "last_updated": "2025-11-05T00:42:11.369526Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-gui-plugin-visage",
    "skill_id": null,
    "name": "ovos-gui-plugin-visage",
    "description": "OVOS-GUI-1 render adapter (opm.gui_adapter) that streams GUI templates to ovos-gui-visage clients",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-gui-plugin-visage",
    "package_name": "ovos-gui-plugin-visage",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Gui Adapter Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "The adapter needs the `gui` branch of `ovos-plugin-manager`. Install that branch first:\n\npip install \"git+https://github.com/OpenVoiceOS/ovos-plugin-manager@gui\"\npip install \"git+https://github.com/OscillateLabsLLC/ovos-gui-plugin-visage\"\n\nThe plugin registers in the entry-point group `opm.gui_adapter` with the name\n`ovos-gui-plugin-visage`. `ovos-gui` loads all installed adapters when it starts."
      },
      {
        "heading": "Configure",
        "content": "Put this block in `mycroft.conf`. All keys are optional. The values below are the defaults.\n\n{\n  \"gui\": {\n    \"adapters\": {\n      \"ovos-gui-plugin-visage\": {\n        \"host\": \"127.0.0.1\",\n        \"port\": 18182,\n        \"path\": \"/gui1\",\n        \"hello_timeout\": 5,\n        \"max_backlog\": 256\n      }\n    }\n  }\n}\n\n| Key | Meaning |\n|---|---|\n| `host` | Address that the websocket server listens on. Use `0.0.0.0` for clients on other hosts. |\n| `port` | TCP port of the websocket server. |\n| `path` | URL path of the endpoint. The server refuses other paths with HTTP 404. |\n| `hello_timeout` | Seconds that a client has to send `hello`. After this time, the server closes the socket. |\n| `max_backlog` | Number of frames that can wait for one client. If a client is slower, the server closes it with co\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-24T17:35:07Z",
    "last_updated": "2026-10-27T22:57:14Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OscillateLabsLLC-ovos-gui-visage",
    "skill_id": null,
    "name": "ovos-gui-visage",
    "description": "Modern GUI client for OpenVoiceOS, based on the style of the 2018 Mycroft Mark II Kickstarter concept video",
    "examples": [],
    "tags": [
      "flutter",
      "macos",
      "openvoiceos",
      "ovos",
      "status-active",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OscillateLabsLLC/ovos-gui-visage/main/web/favicon.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-gui-visage",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 3,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Visage runs on the machine where OVOS runs. It needs OVOS's GUI service as well, which is a one-time\nsetup (next section).\n\n**macOS 12 or later**, with Homebrew:\n\nbrew install --cask oscillatelabsllc/tap/ovos-gui-visage\n\nThe cask installs `OVOS Visage.app` in `/Applications`. Without Homebrew, download\n`ovos-gui-visage-<version>-macos.zip` from the\n[releases](https://github.com/OscillateLabsLLC/ovos-gui-visage/releases), unzip it and move the\napp to `/Applications`. The app is signed with a Developer ID and notarised, so it opens without\nany security prompt. `docs/PACKAGING.md` describes how a release is built.\n\n**Debian 12, Raspberry Pi OS Bookworm or Ubuntu 24.04** (amd64 or arm64): download\n`ovos-gui-visage_<version>_<arch>.deb` for your machine from the\n[releases](https://github.com/Os\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-19T00:30:07Z",
    "last_updated": "2026-10-27T23:14:34Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-hardware-helpers",
    "skill_id": null,
    "name": "ovos-hardware-helpers",
    "description": "`ovos-hardware-helpers` defines the abstract base classes that OVOS (OpenVoiceOS) PHAL plugins implement for LEDs, fans, and switches. It also provides a set of ready-to-use LED animation classes. It replaces the hardware interfaces previously in ovos-plugin-manager and uses ovos-color-parser to handle colors.",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-hardware-helpers",
    "package_name": "ovos_hardware_helpers",
    "pypi_version": "1.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_hardware_helpers"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-15T01:28:49Z",
    "last_updated": "2026-03-12T00:05:53.890106Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "timonvanhasselt-ovos-hello-world-braille",
    "skill_id": null,
    "name": "ovos-hello-world-braille",
    "description": "`sudo apt-get install brltty`",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-hello-world-braille",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-06-10T09:55:58Z",
    "last_updated": "2024-07-16T07:51:08Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-ovos-hierarchical-knn-pipeline",
    "skill_id": null,
    "name": "ovos-hierarchical-knn-pipeline",
    "description": "OVOS Hierarchical KNN pipeline for intent matching",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/femelo/ovos-hierarchical-knn-pipeline",
    "package_name": "ovos_hierarchical_knn_pipeline",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "femelo",
    "tier": 2,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "\ud83d\udce6 Installation",
        "content": "You can install the plugin via `pip`:\n\npip install ovos-hierarchical-knn-pipeline\n\n---"
      },
      {
        "heading": "\u2699\ufe0f Configuration",
        "content": "Add the following to your `mycroft.conf`. When `index_dir` is omitted the default pre-built index is downloaded automatically from HuggingFace on first run:\n\n{\n  \"intents\": {\n    \"pipeline\": [\n      \"ovos-hierarchical-knn-pipeline-high\",\n      \"adapt-high\",\n      \"padatious-high\",\n      \"ovos-hierarchical-knn-pipeline-medium\",\n      \"adapt-medium\",\n      \"padatious-medium\",\n      \"ovos-hierarchical-knn-pipeline-low\",\n      \"adapt-low\",\n      \"padatious-low\",\n      \"fallback-low\"\n    ],\n    \"ovos_hierarchical_knn_pipeline\": {\n      \"conf_high\": 0.7,\n      \"conf_medium\": 0.5,\n      \"conf_low\": 0.15,\n      \"ignore_intents\": []\n    }\n  }\n}\n\nTo use a local copy (faster startup, no internet required):\n\n{\n  \"intents\": {\n    \"ovos_hierarchical_knn_pipeline\": {\n      \"index_dir\": \"/path/to/local/in\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-11T07:55:37Z",
    "last_updated": "2026-05-13T16:59:21.702710Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-ovos-hivemind-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-hivemind-pipeline-plugin",
    "description": "OVOS intent pipeline plugin: forwards unmatched utterances to a smarter HiveMind hub for processing",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "plugin",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/ovos-hivemind-pipeline-plugin",
    "package_name": "ovos-hivemind-pipeline-plugin",
    "pypi_version": "0.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-hivemind-pipeline-plugin"
      },
      {
        "heading": "Configuration",
        "content": "All keys are under `\"ovos-hivemind-pipeline-plugin\"` in `mycroft.conf`.\n\n| Key               | Type    | Default      | Description |\n|-------------------|---------|--------------|-------------|\n| `name`            | string  | `\"Hive Mind\"` | Name spoken in the confirmation dialog. |\n| `confirmation`    | bool    | `true`       | Speak a confirmation before sending the utterance to HiveMind. |\n| `slave_mode`      | bool    | `false`      | Share the local OVOS bus with the hub for passive monitoring and bidirectional message injection. |\n| `allow_selfsigned`| bool    | `false`      | Accept self-signed TLS certificates on the HiveMind connection. |"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fa-ir",
      "fr-fr",
      "nl-nl",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2025-06-11T12:42:43Z",
    "last_updated": "2025-06-11T16:02:45.712076Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-hivemind-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:06:04+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "needs config",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:45:23+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "needs config",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T08:58:49+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-hivemind-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-hivemind-pipeline-plugin",
    "description": "This plugin is an intent pipeline for OVOS (Open Voice OS). When the local skills cannot match an utterance, the plugin sends the utterance to a HiveMind server for processing.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "pipeline",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-hivemind-pipeline-plugin",
    "package_name": "ovos-hivemind-pipeline-plugin",
    "pypi_version": "0.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-hivemind-pipeline-plugin`"
      },
      {
        "heading": "Configuration",
        "content": "Under `mycroft.conf` you can set the parameters for the HiveMind Pipeline.\n\n> Learn more about intent pipelines and how to configure them in the [ovos-technical-manual](https://openvoiceos.github.io/ovos-technical-manual/pipelines_overview/)\n\n{\n  \"intents\": {\n    \"pipeline\": [\n      \"...\",\n      \"ovos-hivemind-pipeline-plugin\",\n      \"...\"\n    ],\n    \"ovos-hivemind-pipeline-plugin\": {\n      \"name\": \"Hive Mind\",\n      \"confirmation\": true,\n      \"slave_mode\": false,\n      \"allow_selfsigned\": false\n    }\n  }\n}\n\n| Option             | Value       | Description                                                                                                              |\n|--------------------|-------------|-----------------------------------------------------------------------------------------\u2026"
      },
      {
        "heading": "HiveMind Setup",
        "content": "Register the client in the HiveMind server.\n$ hivemind-core add-client\nCredentials added to database!\n\nNode ID: 2\nFriendly Name: HiveMind-Node-2\nAccess Key: 5a9e580a2773a262cbb23fe9759881ff\nPassword: 9b247ca66c7cd2b6388ad49ca504279d\nEncryption Key: 4185240103de0770\nWARNING: Encryption Key is deprecated, only use if your client does not support password\n\nSet the identity file on the satellite device, where ovos-core runs.\n$ hivemind-client set-identity --key 5a9e580a2773a262cbb23fe9759881ff --password 9b247ca66c7cd2b6388ad49ca504279d --host 0.0.0.0 --port 5678 --siteid test\nidentity saved: /home/miro/.config/hivemind/_identity.json\n\nCheck the identity file.\n$ cat ~/.config/hivemind/_identity.json\n{\n    \"password\": \"9b247ca66c7cd2b6388ad49ca504279d\",\n    \"access_key\": \"5a9e580a2773a262cbb23f\u2026"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-15T23:39:04Z",
    "last_updated": "2025-06-11T16:02:45.712076Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-i2c-detection",
    "skill_id": null,
    "name": "ovos-i2c-detection",
    "description": "A small repo containing auto-detection scripts for i2c devices",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-i2c-detection",
    "package_name": "ovos_i2c_detection",
    "pypi_version": "0.0.5",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-i2c-detection"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-06-01T21:46:32Z",
    "last_updated": "2025-01-11T18:24:10.372888Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-i2csound",
    "skill_id": null,
    "name": "ovos-i2csound",
    "description": "Script for i2c HAT detection",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-i2csound",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "The install script works on apt-based systems only.\n\n1. Clone this repository: `git clone https://github.com/OpenVoiceOS/ovos-i2csound`\n2. Change into the `ovos-i2csound` directory: `cd ovos-i2csound`\n3. Run the install script: `sudo ./install.sh`\n4. Reboot for the changes to take effect.\n\n### What the install script does\n\nThe `install.sh` script installs `ovos-i2csound`. It checks for the required apt packages and installs any that are missing. It then copies the rest of the scripts to the required directories on the host system. After installation, you can delete this directory.\n\n### Manual install\n\nInstead of running `install.sh`, you can place these files by hand and reboot:\n\n| File | Target |\n| --- | --- |\n| `i2c.conf` | `/etc/modules-load.d/i2c.conf` |\n| `bcm2835-alsa.conf` | `/etc/m\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-12-20T23:12:10Z",
    "last_updated": "2026-09-28T09:48:58Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-installer",
    "skill_id": null,
    "name": "ovos-installer",
    "description": "Open Voice OS and/or HiveMind installer using Ansible with an intuitive and easy Text-based User Interface",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-installer",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 330,
    "forks": 60,
    "open_issues": 6,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Open Voice OS Installer",
        "content": "**Your own voice assistant, on your own hardware.** Open source,\nprivacy-focused, and yours to change \u2014 on a Raspberry Pi, a Linux box, or a Mac.\n\n[![Installs reported](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Ftelemetry.smartgic.io%2Fovos-installer%2Fdashboard-summary%2F%3Finclude_records%3Dfalse&query=%24.meta.record_count&label=installs%20reported&color=2a78d6&style=flat-square)](https://telemetry.smartgic.io/ovos-installer/dashboard/)\n[![Distributions](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Ftelemetry.smartgic.io%2Fovos-installer%2Fdashboard-summary%2F%3Finclude_records%3Dfalse&query=%24.aggregates.os.length&label=distributions&color=1baf7a&style=flat-square)](https://telemetry.smartgic.io/ovos-installer/dashboard/)\n[![Countries](https://img.shield\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-11-07T20:31:20Z",
    "last_updated": "2026-11-12T12:50:07Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-jarvis-plugin",
    "skill_id": null,
    "name": "ovos-jarvis-plugin",
    "description": "`ovos-jarvis-plugin` is an OVOS persona solver plugin that forwards utterances to a Jarvis AI agent exposed through an n8n webhook.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-jarvis-plugin",
    "package_name": "ovos_jarvis_plugin",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Persona",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install git+https://github.com/MenneBos/ovos-jarvis-plugin.git"
      },
      {
        "heading": "Persona configuration",
        "content": "Create `~/.config/ovos_persona/jarvis.json`:\n\n{\n  \"name\": \"Jarvis\",\n  \"solvers\": [\n    \"ovos-solver-jarvis-plugin\"\n  ],\n  \"ovos-solver-jarvis-plugin\": {\n    \"webhook_url\": \"http://127.0.0.1:5677/webhook/3eb829d2-c64c-479e-a0e2-ed6f7d1aa052\",\n    \"timeout\": 10\n  }\n}\n\n### n8n webhook note\n\n- `/webhook-test/` is meant for n8n workflow testing\n- `/webhook/` is the production endpoint used when your workflow is active"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-04-16T18:59:28Z",
    "last_updated": "2026-04-17T09:59:23Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-klondike-mercantile",
    "skill_id": null,
    "name": "ovos-klondike-mercantile",
    "description": "A global, automatically-discovered directory of OVOS skills, plugins, addons and tools across all of GitHub - cross-referenced against PyPI, GitHub releases, the official OVOS Skill Store, and OVOS Localize.",
    "examples": [],
    "tags": [
      "directory",
      "mycroft",
      "openvoiceos",
      "ovos",
      "skill-store",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-klondike-mercantile",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Descriptions and setup notes, from the README when needed",
        "content": "If neither `skill.json` nor GitHub's own repo \"About\" field has a\ndescription, the repo's own README is used as a fallback - common\nspecifically for PHAL plugins, which often have a real, substantial\nREADME but an empty About field.\n\nSeparately, and for **every** entry regardless of whether a\ndescription already exists, the README is also scanned for headings\nmatching install/setup/config/getting-started - repo-specific steps\nbeyond a generic `pip install X` (editing `mycroft.conf`, enabling a\nsystemd service, setting an API key, etc). A repo can have more than\none matching section; all are shown, unmodified, on the detail page."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-18T20:54:26Z",
    "last_updated": "2026-11-14T18:02:26Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-landing-page",
    "skill_id": null,
    "name": "ovos-landing-page",
    "description": "OpenVoiceOS is a community-driven, open-source voice AI platform for creating custom voice-controlled \u200binterfaces across devices with NLP, a customizable UI, and a focus on privacy and security",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-landing-page/main/public/images/logo.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-landing-page",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 6,
    "forks": 4,
    "open_issues": 18,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-06-04T15:01:45Z",
    "last_updated": "2026-11-12T10:17:10Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-lang-detector-classics-plugin",
    "skill_id": null,
    "name": "ovos-lang-detector-classics-plugin",
    "description": "This package provides OVOS language-detection plugins for four classic algorithms:",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-lang-detector-classics-plugin",
    "package_name": "ovos-lang-detector-classics-plugin",
    "pypi_version": "0.0.2a4",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Detect Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Add this to `mycroft.conf`:\n\n  \"language\": {\n    \"detection_module\": \"ovos-lang-detector-plugin-voter\",\n    \n    \"ovos-lang-detector-plugin-voter\": {\n        \"weights\": {\n            \"ovos-lang-detector-plugin-cld3\": 0.8,\n            \"ovos-lang-detector-plugin-cld2\": 0.8,\n            \"ovos-lang-detector-plugin-lingua-podre\": 1.0,\n            \"ovos-lang-detector-plugin-langdetect\": 1.0,\n            \"ovos-lang-detector-plugin-fastlang\": 1.0,\n        }\n    }\n    \n  },"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-23T04:54:57Z",
    "last_updated": "2026-09-26T14:28:42.140725Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-lang-detector-fasttext-plugin",
    "skill_id": null,
    "name": "ovos-lang-detector-fasttext-plugin",
    "description": "This plugin identifies the language of a text with the fasttext-language-identification model. Facebook AI Research trained this model as a companion to NLLB. The plugin downloads the model from the Hugging Face Hub on first use.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-lang-detector-fasttext-plugin",
    "package_name": "ovos-lang-detector-fasttext-plugin",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Detect Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-lang-detector-fasttext-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-24T04:52:16Z",
    "last_updated": "2026-03-04T16:49:13.321562Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-lang-parser",
    "skill_id": null,
    "name": "ovos-lang-parser",
    "description": "Map spoken and written **language names** to standard **IETF/BCP-47 language codes**, and",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-lang-parser",
    "package_name": "ovos-lang-parser",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-lang-parser"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-11-07T01:48:38Z",
    "last_updated": "2025-03-06T11:03:48.200847Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-legacy-mycroft-gui-plugin",
    "skill_id": null,
    "name": "ovos-legacy-mycroft-gui-plugin",
    "description": "This plugin is a GUI adapter for OpenVoiceOS. It translates the OVOS template API (the `SYSTEM_*` page templates) into the mycroft-gui Qt WebSocket protocol. Existing Qt5 and Qt6 GUI clients, such as mycroft-gui-qt6, can then show skill output without any QML from the skill itself. Skills do not ship QML files. This plugin renders every page from its own bundled `ui/*.qml` files.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-legacy-mycroft-gui-plugin",
    "package_name": "ovos-legacy-mycroft-gui-plugin",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Gui Adapter Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-legacy-mycroft-gui-plugin\n\nThe plugin registers under the `opm.gui_adapter` entry point:\n\n[project.entry-points.\"opm.gui_adapter\"]\novos-legacy-mycroft-gui = \"ovos_legacy_mycroft_gui:LegacyMycoftGuiPlugin\"\n\n[ovos-plugin-manager](https://github.com/OpenVoiceOS/ovos-plugin-manager) finds and loads it through this entry point. You do not call the plugin directly."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-12T03:21:01Z",
    "last_updated": "2026-09-24T18:06:41Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-lingua-franca",
    "skill_id": null,
    "name": "ovos-lingua-franca",
    "description": "Mycroft's multilingual text parsing and formatting library",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-lingua-franca",
    "package_name": "ovos-lingua-franca",
    "pypi_version": "0.4.7",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 6,
    "forks": 5,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Getting Started",
        "content": "### Loading a language\n\nBefore using Lingua Franca's other functions, you'll need to load one or more languages into memory, using part or all of a\nBCP-47 language code:"
      },
      {
        "heading": "1. Setup a local copy of the project",
        "content": "1. [Fork the project](https://help.github.com/articles/fork-a-repo/) to create your own copy.\n\n2. Clone the repository and change into that directory\n\ngit clone https://github.com/your-username/lingua-franca/\ncd lingua-franca\n\n3. Setup a lightweight virtual environment (venv) for the project. This creates an isolated environment that can have it's own independent set of installed Python packages.\n\npython3 -m venv .venv\nsource .venv/bin/activate\n\n  To exit the venv you can run `deactivate` or close the terminal window.\n\n4. Install the package and it's dependencies\n\npip install wheel\npython -m pip install .\npip install pytest\npython setup.py install\n\n5. To check that everything is installed correctly, let's run the existing test-suite.\n\npytest"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-01-18T21:00:14Z",
    "last_updated": "2023-04-05T10:54:23.399538Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-listener",
    "skill_id": null,
    "name": "ovos-listener",
    "description": "ovos-core metapackage for speech daemon",
    "examples": [],
    "tags": [
      "audio",
      "deprecated",
      "listener",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-listener",
    "package_name": "ovos-listener",
    "pypi_version": "0.0.3",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "under mycroft.conf\n\n{\n\n  // Speech to Text parameters\n  // Override: REMOTE\n  \"stt\": {\n    // select a STT plugin as described in the respective readme\n    \"module\": \"ovos-stt-plugin-server\",\n    \"fallback_module\": \"\",\n    // the default instance is hosted by a OpenVoiceOS member\n    // it is a google proxy equivalent to mycroft selene\n    \"ovos-stt-plugin-server\": {\"url\": \"https://stt.openvoiceos.com/stt\"}\n  },\n  \n  // Hotword configurations\n  \"hotwords\": {\n    \"hey_mycroft\": {\n        \"module\": \"ovos-ww-plugin-precise-lite\",\n        \"model\": \"https://github.com/OpenVoiceOS/precise-lite-models/raw/master/wakewords/en/hey_mycroft.tflite\",\n        \"expected_duration\": 3,\n        \"trigger_level\": 3,\n        \"sensitivity\": 0.5,\n        \"listen\": true,\n        \"fallback_ww\": \"hey_mycroft_preci\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-01T14:47:01Z",
    "last_updated": "2024-09-02T16:05:45.095833Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-localize",
    "skill_id": null,
    "name": "ovos-localize",
    "description": "GitHub-native localization platform for OpenVoiceOS skills and plugins",
    "examples": [],
    "tags": [
      "datasets",
      "intent-classification",
      "language-support",
      "languages",
      "localize",
      "openvoiceos",
      "serverless",
      "skills",
      "translate",
      "translation",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-localize/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-localize",
    "package_name": "ovos-localize",
    "pypi_version": "0.1.0a36",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 8,
    "forks": 4,
    "open_issues": 64,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-localize"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-18T01:39:28Z",
    "last_updated": "2026-10-15T17:37:44.538363Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-m2v-pipeline",
    "skill_id": null,
    "name": "ovos-m2v-pipeline",
    "description": "An intent-matching pipeline plugin for OpenVoiceOS,",
    "examples": [],
    "tags": [
      "framework",
      "intent",
      "openvoiceos",
      "pipeline",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-m2v-pipeline",
    "package_name": "ovos_m2v_pipeline",
    "pypi_version": "0.0.9",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Text Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 5,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "uv pip install --prerelease=allow ovos-m2v-pipeline"
      },
      {
        "heading": "Configure",
        "content": "{\n  \"intents\": {\n    \"ovos-m2v-pipeline\": {\n      \"model\": \"OpenVoiceOS/ovos-m2v-intents-multilingual\"\n    },\n    \"pipeline\": [\n      \"ovos-padacioso-pipeline-plugin-high\",\n      \"ovos-m2v-pipeline-high\",\n      \"ovos-m2v-prototype-pipeline-medium\"\n    ]\n  }\n}\n\n`intents.pipeline` replaces the whole pipeline list, not only its m2v\nentries; see [the pipeline order](docs/ovos_pipeline.md#place-padacioso-before-the-classifier)\nfor where the other plugins a deployment installs belong in it.\n\n`ovos-padacioso-pipeline-plugin-high` runs first: a frozen classifier only\nanswers with a label it was trained on, so an exact template line of a\nskill it never saw is claimed earlier, and correctly, by an exact matcher.\nSee [the pipeline order](docs/ovos_pipeline.md#place-padacioso-before-the-classifier)\nfo\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-05-08T05:12:04Z",
    "last_updated": "2026-03-04T03:17:36.005766Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ma-player",
    "skill_id": null,
    "name": "ovos-ma-player",
    "description": "OpenVoiceOS OCP player provider for Music Assistant",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ma-player",
    "package_name": "ovos-ma-player",
    "pypi_version": "0.1.1a3",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": "Music",
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "### From PyPI (standard)\n\npip install ovos-ma-player\n\nMusic Assistant discovers the plugin automatically via the `music_assistant.provider`\nentry-point group (key `ovos_player`, declared in `pyproject.toml`). No manual registration is\nneeded. After installation, restart MA and the provider appears in the UI under\n**Settings > Players > Add Provider > OpenVoiceOS (OCP)**.\n\n### Inside a Python virtual environment\n\nIf MA runs in a venv (common for standalone installs):\n\nsource /path/to/ma-venv/bin/activate\npip install ovos-ma-player"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Type | Default | Required | Description |\n|---|---|---|---|---|\n| `host` | string | `localhost` | no | Hostname or IP of the machine running OVOS. Must be reachable from MA. |\n| `port` | integer | `8181` | no | OVOS messagebus WebSocket port. Change only if you have a non-standard OVOS setup. |\n\n### What MA stores internally\n\nMA stores provider configuration as JSON in its database. The section for this provider looks\nlike this:\n\n{\n  \"type\": \"player\",\n  \"domain\": \"ovos_player\",\n  \"values\": {\n    \"host\": \"192.168.1.50\",\n    \"port\": 8181\n  }\n}\n\nYou do not edit this file directly; use the MA UI. It is shown here so you understand what each\nfield means and where it ends up.\n\n### What happens if configuration is wrong\n\n- **Wrong host or port:** The provider raises `ProviderUnavailableEr\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-04-29T00:00:30Z",
    "last_updated": "2026-09-03T12:50:59.660850Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-mac",
    "skill_id": null,
    "name": "ovos-mac",
    "description": "MVP of running OpenVoiceOS (OVOS) on a Mac with Apple Silicon",
    "examples": [],
    "tags": [
      "status-poc"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-mac",
    "package_name": "ovos-mac",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "brew install poetry # If you don't have it",
        "content": "poetry install --without padatious # Or just poetry install if you want Padatious\npoetry shell\n./startup.sh\n\n## Installing Padatious\n\nFirst, build fann from source following the [instructions on their repo](https://github.com/FutureLinkCorporation/fann2). Then run:\n\npoetry shell\nLIBRARY_PATH=/usr/local/lib poetry install --with padatious\n\n## Adding skills\n\nOVOS skills are just Python packages, so you can simply run `poetry add my-skill` to add a skill to your environment. You can also clone a skill repo and add it to your environment with `poetry add /path/to/my-skill`. Finally, you can also add a skill from a git repo with `poetry add git+https://my-skill/repo.git`.\n\nOnce the skill is installed, stop your `startup.sh` script and start it again. Sometimes the skill will load without even r\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-03-23T18:29:39Z",
    "last_updated": "2026-03-05T17:30:41Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-mac-control",
    "skill_id": null,
    "name": "ovos-mac-control",
    "description": "Fast on/off control, a menubar switch, and upgrade-safe config for a native OVOS install on macOS",
    "examples": [],
    "tags": [
      "macos",
      "ovos",
      "status-poc"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-mac-control",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "brew trust --formula oscillatelabsllc/tap/ovos-mac-control\nbrew install oscillatelabsllc/tap/ovos-mac-control\n\nHomebrew requires the trust step for formulae from third-party taps.\n\nOr from a checkout:\n\nln -sf \"$PWD/bin/ovosctl\" ~/.local/bin/ovosctl\n\n`~/.local/bin` must be on your `PATH`."
      },
      {
        "heading": "Keeping hand-made config across upgrades",
        "content": "The installer rewrites `~/.config/mycroft/mycroft.conf` from its wizard answers\non every run, so anything added by hand (PHAL plugin entries, a G2P plugin, a\ndifferent TTS voice) silently disappears. Put those sections in\n`~/.config/mycroft/mycroft.conf.overlay.json` instead. `ovosctl upgrade` merges\nthe overlay back automatically after a successful run, and `ovosctl conf`\ntells you at any time whether the live file has drifted from it.\n\nThe merge is a deep merge: objects combine key by key, anything else in the\noverlay (lists included) replaces the installer's value. `apply` backs up the\nlive file first as `mycroft.conf.pre-overlay.<timestamp>` and is a no-op when\nnothing has drifted. `bin/ovos-conf-merge` is the tool underneath, plain\nPython 3 with no dependencies, and takes `--conf PATH\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-11-08T22:49:27Z",
    "last_updated": "2026-11-09T01:47:25Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-mark1-utils",
    "skill_id": null,
    "name": "ovos-mark1-utils",
    "description": "This library controls the faceplate and eyes of the Mycroft Mark 1 hardware enclosure. It sends commands over the OVOS messagebus and gives you pixel-by-pixel control of the 32x8 mouth display and the eye ring.",
    "examples": [],
    "tags": [
      "mark-1",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-mark1-utils",
    "package_name": "ovos-mark1-utils",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-mark1-utils"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-12-28T19:01:34Z",
    "last_updated": "2024-09-09T22:51:29.553207Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-markov-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-markov-pipeline-plugin",
    "description": "OVOS intent pipeline plugin using Markov chain perplexity ensemble",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-markov-pipeline-plugin",
    "package_name": "ovos-markov-pipeline-plugin",
    "pypi_version": "0.5.2a2",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-markov-pipeline-plugin\n\nOptional stemming support (recommended for non-English use):\n\npip install ovos-markov-pipeline-plugin[stem]"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-19T23:04:37Z",
    "last_updated": "2026-09-18T01:16:33.375881Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-mcp-toolbox",
    "skill_id": null,
    "name": "ovos-mcp-toolbox",
    "description": "WIP - MCP bridge toolbox for ovos-agentic-loop. ",
    "examples": [],
    "tags": [
      "openvpniceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-mcp-toolbox",
    "package_name": "ovos-mcp-toolbox",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "andlo",
    "tier": 2,
    "component_type": "Toolbox Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Config shape",
        "content": "{\n  \"ovos-mcp-tools\": {\n    \"servers\": [\n      {\n        \"name\": \"ha\",\n        \"transport\": \"http\",\n        \"url\": \"http://192.168.65.186/api/mcp\",\n        \"token\": \"...\"\n      },\n      {\n        \"name\": \"dc\",\n        \"transport\": \"stdio\",\n        \"command\": \"npx\",\n        \"args\": [\"-y\", \"@wonderwhy-er/desktop-commander\"]\n      }\n    ],\n    \"policy\": {\n      \"ha__default_confirm\": true,\n      \"ha__always_confirm\": \"HassBroadcast\",\n      \"ha__never_confirm\": \"GetDateTime,GetLiveContext\"\n    },\n    \"scaffold_path\": \"/home/andlo/.local/state/ovos-mcp-toolbox/policy_scaffold.json\"\n  }\n}\n\n`transport: \"stdio\"` is accepted but not implemented yet - see status\ntable. `scaffold_path` should point outside the repo directory (a\ngenerated scaffold file contains real device/entity names from\nwhatever M\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-20T15:56:25Z",
    "last_updated": "2026-08-20T20:07:21Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media",
    "skill_id": null,
    "name": "ovos-media",
    "description": "> **Warning:** this is pre-release software. It is under active development, is",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media",
    "package_name": "ovos-media",
    "pypi_version": "2.4.5a2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 4,
    "open_issues": 11,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media\n\nInstall at least one playback backend (audio is the minimum to hear anything):\n\npip install ovos-media-plugin-vlc        # or -mplayer / -simple / -spotify / -chromecast\n\n### Enable it\n\n`ovos-media` runs alongside `ovos-audio` (which keeps handling TTS). Turn off the\nlegacy audio service and run the daemon:\n\n// mycroft.conf\n{\n  \"enable_old_audioservice\": false\n}\n\novos-media          # start the daemon\n\nAsk OVOS to play something and the OCP pipeline routes the request here.\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "All configuration lives under the `\"media\"` key in `mycroft.conf`. The essentials:\n\n{\n  \"media\": {\n    // MPRIS / D-Bus integration; OCP is a desktop MPRIS player by default,\n    // a machine with no session bus logs one warning and keeps running\n    \"enable_mpris\": true,\n    // let MPRIS pause/stop other media players on the system\n    \"manage_external_players\": false,\n\n    // order of preference per playback type; the first backend that can\n    // handle the URI wins. Users may also name a backend in the utterance.\n    \"preferred_audio_services\": [\"vlc\", \"mplayer\", \"cli\"],\n    \"preferred_video_services\": [\"vlc\"],\n\n    // every installed backend plugin loads automatically; declare an entry\n    // here to customise its name/aliases/config, control its load order, or\n    // disable it with\u2026"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-01-09T00:18:26Z",
    "last_updated": "2026-10-28T11:44:47.055198Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-media-classifier",
    "skill_id": null,
    "name": "ovos-media-classifier",
    "description": "Pluggable media-type command/intent classification for OCP \u2014 mediavocab-enforcing, content-filtering, OPM-discoverable",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-classifier",
    "package_name": "ovos-media-classifier",
    "pypi_version": "0.2.1a2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Classifier Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2026-06-23T16:53:26Z",
    "last_updated": "2026-10-01T18:41:58.778534Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-chromecast",
    "skill_id": null,
    "name": "ovos-media-plugin-chromecast",
    "description": "This plugin adds Chromecast support to ovos-audio and ovos-media.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-chromecast",
    "package_name": "ovos_media_plugin_chromecast",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "lan",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-plugin-chromecast"
      },
      {
        "heading": "Configuration",
        "content": "Run the `ovos-chromecast-autoconfigure` command to configure your Chromecast devices automatically.\n\n$ ovos-chromecast-autoconfigure\nThis script will auto configure chromecast devices under your mycroft.conf\nMake sure your devices are turned on and connected to the same Wifi as you, otherwise discovery will fail\n\nScanning...\n    - Found Chromecast: Bedroom TV - 192.168.1.17:8009\n\nFound devices: ['Bedroom TV']\n\nmycroft.conf updated!"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-06T19:20:28Z",
    "last_updated": "2025-11-05T01:07:37.933719Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-cli",
    "skill_id": null,
    "name": "ovos-media-plugin-cli",
    "description": "Generic CLI-command playback plugin for ovos-media (and the legacy ovos-audio service)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-cli",
    "package_name": "ovos-media-plugin-cli",
    "pypi_version": "0.0.6a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-plugin-cli\n\nInstall `sox` too. It gives the widest format and URL coverage when the\nplugin auto-detects a player."
      },
      {
        "heading": "Configuration",
        "content": "New `ovos-media`:\n\n{\n  \"media\": {\n    \"preferred_audio_services\": [\"mplayer\", \"vlc\", \"cli\"],\n    \"audio_players\": {\n      \"cli\": {\n        \"module\": \"ovos-media-audio-plugin-cli\",\n        \"aliases\": [\"Command line\", \"CLI Player\"],\n        \"active\": true,\n        \"command\": \"mpv --no-terminal\"\n      }\n    }\n  }\n}\n\nOmit `command` to auto-detect. Legacy `ovos-audio`:\n\n{\n  \"Audio\": {\n    \"backends\": {\n      \"cli\": { \"type\": \"cli\", \"active\": true, \"command\": \"mpv --no-terminal\" }\n    }\n  }\n}\n\n### Keys\n\n| Key | Type | Default | Description |\n|-----|------|---------|-------------|\n| `command` (alias `play_cmd`) | str | _auto-detect_ | CLI player command. The plugin appends the URI as the last argument. |\n| `active` | bool | `true` | Enable or disable this backend instance. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-25T17:01:29Z",
    "last_updated": "2026-09-09T00:16:59.109955Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-ffplay",
    "skill_id": null,
    "name": "ovos-media-plugin-ffplay",
    "description": "This plugin adds ffplay as an audio backend for ovos-audio and ovos-media. It plays media through the `ffplay` command from FFmpeg.",
    "examples": [],
    "tags": [
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-ffplay",
    "package_name": "ovos-media-plugin-ffplay",
    "pypi_version": "0.0.5a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-ffplay`"
      },
      {
        "heading": "Configuration",
        "content": "Edit your `mycroft.conf` file to expose the ffplay backend.\n\n{\n  \"Audio\": {\n    \"backends\": {\n      \"ffplay\": {\n        \"type\": \"ovos_ffplay\",\n        \"active\": true\n      }\n    }\n  }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-28T18:41:30Z",
    "last_updated": "2026-09-02T18:39:56.245406Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-mass",
    "skill_id": null,
    "name": "ovos-media-plugin-mass",
    "description": "Music Assistant **playback backend** for OVOS. It controls",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-mass",
    "package_name": "ovos-media-plugin-mass",
    "pypi_version": "0.1.1a2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-plugin-mass"
      },
      {
        "heading": "Configuration",
        "content": "The easiest way is the bundled `ovos-mass-autoconfigure` command, which scans your\nserver and writes both the legacy and `ovos-media` player entries into\n`mycroft.conf`:\n\n$ ovos-mass-autoconfigure\nThis script will auto configure Music Assistant devices under your mycroft.conf\nMake sure your Music Assistant server is accessible from this device\nPlease enter your Music Assistant server url: http://192.168.1.100:8095\n\nScanning...\n    - Found player: HomeLabRenderer - dlna:uuid:4b778a71-0499-485a-a5a4-88140603fba9\n\nmycroft.conf updated!\n\nWhen more than one player is found, it lists them and prompts for the\ndefault (the only player written to the legacy `Audio` backends and marked\n`active: true` on the `ovos-media` side \u2014 every other discovered player is\nwritten with `active: false`):\n\n$ ovos-m\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-07T16:44:17Z",
    "last_updated": "2026-09-26T14:23:34.133972Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-mplayer",
    "skill_id": null,
    "name": "ovos-media-plugin-mplayer",
    "description": "OVOS audio backend plugin",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-mplayer",
    "package_name": "ovos-media-plugin-mplayer",
    "pypi_version": "0.2.2a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Run this command to install the plugin.\n\npip install ovos-media-plugin-mplayer"
      },
      {
        "heading": "Configuration",
        "content": "This plugin supports either audio or video playback, not both at the same time. If you enable both, the plugin loads but plays each stream twice.\n\nAdd the plugin to the `media` section of your OVOS configuration. Set `mplayer` in `preferred_audio_services` or `preferred_video_services` to select it.\n\n{\n \"media\": {\n\n    // keys are the strings defined in \"audio_players\"\n    \"preferred_audio_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // keys are the strings defined in \"video_players\"\n    \"preferred_video_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // mplayer player uses a slave mplayer instance to handle uris\n        \"mplayer\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-mplayer\",\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-08-06T13:37:47Z",
    "last_updated": "2026-09-28T17:09:10.402880Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-mpv",
    "skill_id": null,
    "name": "ovos-media-plugin-mpv",
    "description": "`ovos-media-plugin-mpv` is an audio and video playback plugin for OpenVoiceOS (OVOS). It drives the mpv media player through `python-mpv-jsonipc` and exposes it as a playback backend for ovos-media and the legacy `ovos-audio` service.",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-mpv",
    "package_name": "ovos-media-plugin-mpv",
    "pypi_version": "1.0.2a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the plugin with pip:\n\npip install ovos-media-plugin-mpv\n\nThe plugin needs the `mpv` media player installed and available on the system."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-17T21:47:35Z",
    "last_updated": "2026-09-02T18:40:49.368370Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-qt5",
    "skill_id": null,
    "name": "ovos-media-plugin-qt5",
    "description": "default GUI implementation for OCP framework",
    "examples": [],
    "tags": [
      "deprecated",
      "gui",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-qt5",
    "package_name": "ovos-media-plugin-qt5",
    "pypi_version": "0.1.0a2",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-qt5`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    // keys are the strings defined in \"audio_players\"\n    \"preferred_audio_services\": [\"qt5\", \"mplayer\", \"qt5\", \"cli\"],\n\n    // keys are the strings defined in \"video_players\"\n    \"preferred_video_services\": [\"qt5\", \"mplayer\", \"qt5\", \"cli\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // qt5 player uses a headless qt5 instance to handle uris\n        \"qt5\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-qt5\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n             \"aliases\": [\"QT5\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    },\n\n    // PlaybackType.VIDEO handlers\n    \"video_players\": {\n        // qt5 playe\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-08T15:51:01Z",
    "last_updated": "2024-01-30T20:39:57.846529Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-spotify",
    "skill_id": null,
    "name": "ovos-media-plugin-spotify",
    "description": "This is a Spotify plugin for ovos-audio and ovos-media. It lets OVOS start playback on Spotify.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "spotify"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-spotify",
    "package_name": "ovos_media_plugin_spotify",
    "pypi_version": "0.2.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Audio Plugin",
    "type_group": "Plugin",
    "stars": 5,
    "forks": 6,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-spotify`"
      },
      {
        "heading": "Configuration",
        "content": "Edit your `mycroft.conf` and add the Spotify players you want to expose.\n\n> NOTE: If you want to make the OVOS device itself a Spotify player, use [spotifyd](https://github.com/Spotifyd/spotifyd).\n\nThe easiest way to configure this is the `ovos-spotify-autoconfigure` command.\n\n$ ovos-spotify-autoconfigure\nThis script will auto configure ALL spotify devices under your mycroft.conf\n        \n        SPOTIFY PREMIUM is required!\n        \n        If you have not yet authenticated your spotify account, run 'ovos-spotify-oauth' first!\n        \nFound device: OpenVoiceOS-TV\n\nmycroft.conf updated!"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-19T21:08:24Z",
    "last_updated": "2025-11-05T01:22:05.263016Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-plugin-vlc",
    "skill_id": null,
    "name": "ovos-media-plugin-vlc",
    "description": "vlc plugin for ovos-media",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-plugin-vlc",
    "package_name": "ovos-media-plugin-vlc",
    "pypi_version": "0.2.1a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-vlc`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    // keys are the strings defined in \"audio_players\"\n    \"preferred_audio_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // keys are the strings defined in \"video_players\"\n    \"preferred_video_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // vlc player uses a headless vlc instance to handle uris\n        \"vlc\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-vlc\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n             \"aliases\": [\"VLC\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    },\n\n    // PlaybackType.VIDEO handlers\n    \"video_players\": {\n        // vlc playe\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-10T02:13:20Z",
    "last_updated": "2026-09-02T18:39:11.210608Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "NeonGeckoCom-ovos-media-plugin-webbrowser",
    "skill_id": null,
    "name": "ovos-media-plugin-webbrowser",
    "description": "webbrowser plugin for ovos-media",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/ovos-media-plugin-webbrowser",
    "package_name": "ovos-media-plugin-webbrowser",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 2,
    "component_type": "Web Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-webbrowser`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    \"preferred_web_services\": [\"webbrowser\"],\n\n    // PlaybackType.WEBVIEW handlers\n    \"web_players\": {\n        // webbrowser-open to handle uris\n        \"webbrowser\": {\n            // the plugin name\n            \"module\": \"ovos-media-web-plugin-webbrowser\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n            \"aliases\": [\"Browser\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-08T19:18:52Z",
    "last_updated": "2024-02-08T19:19:34Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "NeonGeckoCom-ovos-media-plugin-xdg",
    "skill_id": null,
    "name": "ovos-media-plugin-xdg",
    "description": "plugin for ovos-media",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/NeonGeckoCom/ovos-media-plugin-xdg",
    "package_name": "ovos-media-plugin-xdg",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "NeonGeckoCom",
    "tier": 2,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-xdg`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    \"preferred_audio_services\": [\"vlc\", \"xdg\"],\n    \"preferred_video_services\": [\"xdg\"],\n    \"preferred_web_services\": [\"webbrowser\", \"xdg\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // xdg-open to handle uris\n        \"xdg\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-xdg\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n            \"aliases\": [\"System\", \"Desktop\", \"OS\", \"XDG Open\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    },    \n    \"video_players\": {\n        // xdg-open to handle uris\n        \"xdg\": {\n            // the plugin name\n            \"module\": \"ovos-media-video-plugin-xdg\",\n\n            // u\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-08T19:01:03Z",
    "last_updated": "2024-02-08T19:31:09Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-bandcamp",
    "skill_id": null,
    "name": "ovos-media-provider-bandcamp",
    "description": "OVOS MediaProvider plugin for Bandcamp (replaces ovos-skill-bandcamp)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-bandcamp",
    "package_name": "ovos-media-provider-bandcamp",
    "pypi_version": "0.0.1a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-bandcamp\n\nThe plugin registers under the `opm.media.provider` entry-point group as `bandcamp`. The OCP pipeline loads it in-process. There is nothing to configure.\n\n### Configuration\n\n| Key | Default | Description |\n| --- | --- | --- |\n| `max_pages` | `1` | Number of Bandcamp search-result pages to walk per query. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T22:52:36Z",
    "last_updated": "2026-08-15T03:29:26.955975Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-local",
    "skill_id": null,
    "name": "ovos-media-provider-local",
    "description": "OVOS MediaProvider plugin for a local file-system media library (replaces ovos-skill-local-media)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-local",
    "package_name": "ovos-media-provider-local",
    "pypi_version": "0.0.1a5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-local"
      },
      {
        "heading": "Configure",
        "content": "Per-provider settings live under `media_providers` in `mycroft.conf`, keyed\nby the provider's entry-point name:\n\n{\n  \"media_providers\": {\n    \"local\": {\n      \"paths\": [\"~/Music\", \"~/Videos\", \"/mnt/media\"],\n      \"max_results\": 10,\n      \"min_confidence\": 0.3\n    }\n  }\n}\n\n| Key | Default | Description |\n|---|---|---|\n| `paths` | `$XDG_MUSIC_DIR`/`~/Music`, `$XDG_VIDEOS_DIR`/`~/Videos` | Directories scanned recursively for media files. |\n| `max_results` | `10` | Maximum number of matching files returned per search. |\n| `min_confidence` | `0.3` | Files scoring below this are dropped from the results. |\n\nSet `\"enabled\": false` to disable without uninstalling."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-13T18:47:32Z",
    "last_updated": "2026-09-02T18:40:52.274749Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-mass",
    "skill_id": null,
    "name": "ovos-media-provider-mass",
    "description": "OVOS **MediaProvider** plugin for Music Assistant.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-mass",
    "package_name": "ovos-media-provider-mass",
    "pypi_version": "0.0.1a6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-mass\n\nThe `opm.media.provider` plugin type is available in `ovos-plugin-manager` 2.11.6a1 and later."
      },
      {
        "heading": "Configure",
        "content": "Per-provider settings live under `media_providers` in `mycroft.conf`, keyed by\nthe provider's entry-point name:\n\n{\n  \"media_providers\": {\n    \"music_assistant\": {\n      \"url\": \"http://192.168.1.100:8095\",\n      \"token\": \"your-mass-api-token\",\n      \"max_results\": 10\n    }\n  }\n}\n\n`url` is required (the provider reports itself unavailable without it). `token`\nis required by Music Assistant 2.11+ (create one in the MA web UI under\nSettings \u2192 Users); older, unauthenticated servers keep working without it. Set\n`\"enabled\": false` to disable without uninstalling."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-23T17:15:35Z",
    "last_updated": "2026-09-16T19:22:54.454872Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-news",
    "skill_id": null,
    "name": "ovos-media-provider-news",
    "description": "This is an OVOS **MediaProvider** plugin for broadcast news feeds. It replaces the",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-news",
    "package_name": "ovos-media-provider-news",
    "pypi_version": "0.0.1a7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-news"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `default_feed` | *(per-language default)* | Feed name to boost as the user's preferred station. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-25T22:45:39Z",
    "last_updated": "2026-10-01T21:22:28.504456Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-pyradios",
    "skill_id": null,
    "name": "ovos-media-provider-pyradios",
    "description": "OVOS MediaProvider plugin for radio-browser/pyradios (replaces ovos-skill-pyradios)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-pyradios",
    "package_name": "ovos-media-provider-pyradios",
    "pypi_version": "0.0.1a5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-pyradios"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `max_results` | `10` | Maximum number of stations returned per search. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T23:10:58Z",
    "last_updated": "2026-09-16T19:22:22.035668Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-somafm",
    "skill_id": null,
    "name": "ovos-media-provider-somafm",
    "description": "OVOS MediaProvider plugin for SomaFM (replaces ovos-skill-somafm)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-somafm",
    "package_name": "ovos-media-provider-somafm",
    "pypi_version": "0.0.1a5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-somafm"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `max_results` | `10` | Maximum number of matching channels returned per search. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T23:10:07Z",
    "last_updated": "2026-09-02T18:40:18.050674Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-soundcloud",
    "skill_id": null,
    "name": "ovos-media-provider-soundcloud",
    "description": "OVOS MediaProvider plugin for SoundCloud (replaces ovos-skill-soundcloud)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-soundcloud",
    "package_name": "ovos-media-provider-soundcloud",
    "pypi_version": "0.0.1a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-soundcloud"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `max_results` | `10` | Maximum number of results returned per search. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T23:12:12Z",
    "last_updated": "2026-08-13T18:40:03.719750Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-spotify",
    "skill_id": null,
    "name": "ovos-media-provider-spotify",
    "description": "This is an OVOS **MediaProvider** plugin for Spotify. It replaces the search half of the deprecated OCP search skill `ovos-skill-spotify`.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-spotify",
    "package_name": "ovos-media-provider-spotify",
    "pypi_version": "0.0.1a6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-spotify\n\nThe plugin registers itself through the `opm.media.provider` entry point, so OCP picks it up automatically after install.\n\n[project.entry-points.\"opm.media.provider\"]\nspotify = \"ovos_media_provider_spotify:SpotifyMediaProvider\""
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `max_tracks` | `25` | Maximum tracks returned per matched album/artist. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-25T22:45:16Z",
    "last_updated": "2026-09-26T14:27:53.628760Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-tunein",
    "skill_id": null,
    "name": "ovos-media-provider-tunein",
    "description": "OVOS MediaProvider plugin for TuneIn (replaces ovos-skill-tunein)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-tunein",
    "package_name": "ovos-media-provider-tunein",
    "pypi_version": "0.0.1a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-tunein\n\nThe plugin is registered under the `opm.media.provider` entry-point group as\n`tunein`. The OCP pipeline loads it in-process. There is nothing to configure.\n\n### Configuration\n\n| Key | Default | Description |\n| --- | --- | --- |\n| `enrich` | `false` | Issue a per-station `Describe.ashx` call to populate genre, language, country, call-sign and slogan. Off by default to keep search cheap. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T23:10:00Z",
    "last_updated": "2026-08-31T13:57:06.168923Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-media-provider-youtube",
    "skill_id": null,
    "name": "ovos-media-provider-youtube",
    "description": "OVOS MediaProvider plugin for YouTube (replaces ovos-skill-youtube)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-media-provider-youtube",
    "package_name": "ovos-media-provider-youtube",
    "pypi_version": "0.0.1a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Provider Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-media-provider-youtube"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `max_results` | `10` | Maximum number of results returned per search. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T22:52:52Z",
    "last_updated": "2026-08-31T13:57:18.488076Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-memory-plugins",
    "skill_id": null,
    "name": "ovos-memory-plugins",
    "description": "OVOS OPM memory plugins: long-term summarization and RAG via OpenAI-compatible endpoints",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-memory-plugins",
    "package_name": "ovos-memory-plugins",
    "pypi_version": "1.2.3a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Memory Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-memory-plugins"
      },
      {
        "heading": "Step 1: remember the last few turns (no setup)",
        "content": "The simplest memory: a sliding window of recent turns. No models, no endpoints.\n\n{\n  \"name\": \"MyAssistant\",\n  \"handlers\": [\"ovos-chat-openai-plugin\"],\n  \"ovos-chat-openai-plugin\": {\n    \"api_url\": \"http://localhost:8080/v1\",\n    \"allow_system_prompts\": true\n  },\n  \"memory_module\": \"ovos-memory-plugin-recency\",\n  \"ovos-memory-plugin-recency\": {\n    \"max_history\": 10,\n    \"system_prompt\": \"You are a helpful assistant.\"\n  }\n}\n\nThe assistant can now handle \"and what about tomorrow?\" because the previous\nturns are still in context. That is all most short conversations need."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-10T14:57:42Z",
    "last_updated": "2026-10-21T10:42:14.053784Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-messagebus",
    "skill_id": null,
    "name": "ovos-messagebus",
    "description": "ovos-core bus daemon",
    "examples": [],
    "tags": [
      "core",
      "framework",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-messagebus",
    "package_name": "ovos-messagebus",
    "pypi_version": "0.0.10",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 3,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-messagebus"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-01T14:45:41Z",
    "last_updated": "2025-03-19T13:41:58.251600Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-messagebus-chat-plugin",
    "skill_id": null,
    "name": "ovos-messagebus-chat-plugin",
    "description": "OVOS ChatEngine plugin (opm.agents.chat) that proxies turns through the OVOS messagebus",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-messagebus-chat-plugin",
    "package_name": "ovos-messagebus-chat-plugin",
    "pypi_version": "0.1.3a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Chat Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-messagebus-chat-plugin"
      },
      {
        "heading": "Configuration",
        "content": "| Key            | Type | Default                     | Notes                                                                    |\n|----------------|------|-----------------------------|--------------------------------------------------------------------------|\n| `autoconnect`  | bool | `False`                     | Open an internal `MessageBusClient` on init.                              |\n| `host`         | str  | `127.0.0.1`                 | OVOS messagebus host (only used with `autoconnect`).                      |\n| `port`         | int  | `8181`                      | OVOS messagebus port (only used with `autoconnect`).                      |\n| `timeout`      | int  | `30`                        | Per-utterance wait, refreshed on every `speak` to allow multi-speak.       |\n| `source\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-18T16:19:42Z",
    "last_updated": "2026-08-31T12:35:13.223217Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-microphone-plugin-alsa",
    "skill_id": null,
    "name": "ovos-microphone-plugin-alsa",
    "description": "This plugin captures audio from an ALSA device for OpenVoiceOS (OVOS). It",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-microphone-plugin-alsa",
    "package_name": "ovos_microphone_plugin_alsa",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Microphone Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-microphone-plugin-alsa"
      },
      {
        "heading": "Configuration",
        "content": "Add this block to your `mycroft.conf`, or merge it with your existing\n`listener` section.\n\n\"listener\": {\n    \"microphone\": {\n        \"module\": \"ovos-microphone-plugin-alsa\",\n        \"device\": \"pulse\",                  # name/alias of the device; default = \"default\"\n        \"period_size\": 1024,                # frames per period; default = 1024\n        \"timeout\": 5.0,                     # blocks x seconds and raises the Empty exception if no item was available within that time; default = 5.0\n        \"multiplier\": 1.0,                  # Increase/decrease loudness of audio; default = 1.0\n        \"audio_retries\": 0,                 # Number of times to retry listening; default = 0\n        \"audio_retry_delay\": 0.0            # Seconds to wait between retries; default = 0.0\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-17T19:04:47Z",
    "last_updated": "2025-11-04T15:15:40.957188Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-microphone-plugin-files",
    "skill_id": null,
    "name": "ovos-microphone-plugin-files",
    "description": "OVOS Microphone Files plugin.",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-microphone-plugin-files",
    "package_name": "ovos-microphone-plugin-files",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Microphone Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-microphone-plugin-files"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-06-09T21:52:34Z",
    "last_updated": "2025-12-17T01:41:39.614510Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-microphone-plugin-pyaudio",
    "skill_id": null,
    "name": "ovos-microphone-plugin-pyaudio",
    "description": "`ovos-microphone-plugin-pyaudio` is a microphone plugin for OpenVoiceOS (OVOS). It captures audio through PyAudio (PortAudio) and does not depend on `speech_recognition`. The plugin maps `sample_width` to the matching PyAudio format and supports int8, int16, int24, int32, and float32 capture.",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-microphone-plugin-pyaudio",
    "package_name": "ovos-microphone-plugin-pyaudio",
    "pypi_version": "0.0.0a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Microphone Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-microphone-plugin-pyaudio\n\nThe plugin needs the `libportaudio2` system library on Linux, macOS, and Windows."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-17T19:18:03Z",
    "last_updated": "2026-07-31T22:25:54.796462Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-microphone-plugin-sounddevice",
    "skill_id": null,
    "name": "ovos-microphone-plugin-sounddevice",
    "description": "This plugin lets OpenVoiceOS (OVOS) capture microphone audio through python-sounddevice.",
    "examples": [],
    "tags": [
      "audio",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-microphone-plugin-sounddevice",
    "package_name": "ovos_microphone_plugin_sounddevice",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Microphone Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 3,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-microphone-plugin-sounddevice"
      },
      {
        "heading": "Configuration",
        "content": "The listener defaults to the `ovos-microphone-plugin-alsa` plugin. To use this plugin instead, update the `mycroft.conf` configuration file:\n\n{\n  \"listener\": {\n    \"microphone\": {\n      \"module\": \"ovos-microphone-plugin-sounddevice\",\n      \"ovos-microphone-plugin-sounddevice\": {}\n    }\n  }\n}\n\n### macOS recommended settings (clear capture)\n\n{\n  \"listener\": {\n    \"microphone\": {\n      \"module\": \"ovos-microphone-plugin-sounddevice\",\n      \"ovos-microphone-plugin-sounddevice\": {\n        \"device\": \"Built-in Microphone\",\n        \"latency\": \"low\",\n        \"multiplier\": 1.0,\n        \"blocksize\": 1024,\n        \"queue_maxsize\": 8,\n        \"use_coreaudio_settings\": true,\n        \"coreaudio_conversion_quality\": \"max\",\n        \"coreaudio_change_device_parameters\": false,\n        \"coreaudio_fail_if_conv\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-26T16:59:54Z",
    "last_updated": "2025-11-04T17:32:46.591362Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "raincystar-oss-OVOS-Monitor-v1",
    "skill_id": null,
    "name": "OVOS-Monitor-v1",
    "description": "\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u041e\u0412\u041e\u0421",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/raincystar-oss/OVOS-Monitor-v1",
    "package_name": "ovos-monitor",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "raincystar-oss",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-20T16:25:32Z",
    "last_updated": "2026-05-20T19:21:11Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-ovos-MoS",
    "skill_id": null,
    "name": "ovos-MoS",
    "description": "Using OpenVoiceOS solver plugins, we implement three",
    "examples": [],
    "tags": [
      "framework",
      "openvoiceos",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/ovos-MoS",
    "package_name": "ovos-MoS",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "TigreGotico",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 7,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-19T20:24:44Z",
    "last_updated": "2026-10-11T12:20:14Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-number-parser",
    "skill_id": null,
    "name": "ovos-number-parser",
    "description": "Convert numbers between digits and spoken words, in **40 languages**, with one",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-number-parser",
    "package_name": "ovos-number-parser",
    "pypi_version": "0.19.13",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 5,
    "open_issues": 14,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-number-parser"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-11-06T21:07:15Z",
    "last_updated": "2026-08-13T16:19:32.364255Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-audio-plugin",
    "skill_id": null,
    "name": "ovos-ocp-audio-plugin",
    "description": "OVOS Common Play (OCP) is a voice media player packaged as a mycroft audio plugin. OCP handles voice integration and playback, and it also integrates with external players through MPRIS.",
    "examples": [],
    "tags": [
      "audio",
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-audio-plugin",
    "package_name": "ovos_plugin_common_play",
    "pypi_version": "1.3.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 4,
    "forks": 10,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Add this to `mycroft.conf`:\n\n{\n  \"Audio\": {\n    \"backends\": {\n      \"local\": {\n        \"type\": \"ovos_common_play\",\n        \"active\": true\n      },\n      \"simple\": {\n        \"type\": \"ovos_audio_simple\",\n        \"active\": true\n      }\n    },\n    \"default-backend\": \"local\"\n  }\n}"
      }
    ],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "hu-hu",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-07-22T21:24:31Z",
    "last_updated": "2026-03-04T17:17:05.717803Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-bandcamp-plugin",
    "skill_id": null,
    "name": "ovos-ocp-bandcamp-plugin",
    "description": "This plugin lets OVOS Common Play (OCP) play Bandcamp URLs. It extracts the real stream URL at playback time.",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-bandcamp-plugin",
    "package_name": "ovos-ocp-bandcamp-plugin",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-bandcamp-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-28T09:04:26Z",
    "last_updated": "2024-09-11T03:30:34.013629Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-files-plugin",
    "skill_id": null,
    "name": "ovos-ocp-files-plugin",
    "description": "A library for reading and, in the future, writing audio metadata. https://audio-metadata.readthedocs.io/",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-files-plugin",
    "package_name": "ovos-ocp-files-plugin",
    "pypi_version": "0.13.1",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-files-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-29T01:08:00Z",
    "last_updated": "2024-09-11T03:31:25.312705Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-m3u-plugin",
    "skill_id": null,
    "name": "ovos-ocp-m3u-plugin",
    "description": "This plugin is a stream extractor for OVOS Common Play (OCP). It lets OCP play `.m3u` and `.pls` playlist URLs. OCP media players cannot read these playlist formats directly, so the plugin fetches the playlist and returns the first playable stream URL inside it.",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-m3u-plugin",
    "package_name": "ovos-ocp-m3u-plugin",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-m3u-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-28T08:38:16Z",
    "last_updated": "2024-09-11T03:31:21.585321Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-ovos-ocp-ma-provider",
    "skill_id": null,
    "name": "ovos-ocp-ma-provider",
    "description": "OVOS OCP skills as a Music Assistant music provider",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/ovos-ocp-ma-provider",
    "package_name": "ovos-ocp-ma-provider",
    "pypi_version": "0.1.1a3",
    "license": null,
    "archived": false,
    "author": "TigreGotico",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install it as a Music Assistant provider plugin with [music-assistant-plugin-manager](https://github.com/TigreGotico/music-assistant-plugin-manager), not with a bare `pip install`:\n\nmusic-assistant-community install ovos-ocp-ma-provider\n\nThe plugin manager installs the package into the Music Assistant server's own environment and registers it under the `music_assistant.provider` entry point, which a manual `pip install` into an unrelated environment will not do.\n\nThis package needs Python 3.11 or later, and a Music Assistant instance with a reachable OVOS messagebus."
      },
      {
        "heading": "Configuration",
        "content": "| Setting | Default | Description |\n| --- | --- | --- |\n| OVOS messagebus host | `localhost` | Hostname or IP of the OVOS messagebus. Must be reachable from Music Assistant. |\n| OVOS messagebus port | `8181` | Port of the OVOS messagebus. |\n| OCP search timeout (seconds) | `10` | How long the provider waits for OCP skills to respond. Skills can extend this through the OCP protocol. |\n| Minimum match confidence | `50` | OCP results below this score are discarded. Uses OCP's own 0-100 `match_confidence` scale. |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-04-29T11:01:45Z",
    "last_updated": "2026-09-03T12:49:19.763081Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-news-plugin",
    "skill_id": null,
    "name": "ovos-ocp-news-plugin",
    "description": "This plugin lets OCP play news feeds from several providers. It resolves a news request to the real stream URL and hands it to OCP for playback.",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-news-plugin",
    "package_name": "ovos_ocp_news_plugin",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-news-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-29T01:25:08Z",
    "last_updated": "2025-11-05T00:47:14.225647Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-ocp-pipeline-plugin",
    "description": "The OCP (Open Common Play) pipeline plugin turns media utterances into playback actions in OVOS. Utterances such as \"play metallica\", \"put on some movie\", \"pause\", or \"next\" pass through this plugin as an intent pipeline stage. On a match, the plugin searches registered media skills over the message bus and drives playback through the OCP API.",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "pipeline",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-pipeline-plugin",
    "package_name": "ovos_ocp_pipeline_plugin",
    "pypi_version": "1.1.18",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 10,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-pipeline-plugin"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-10-14T03:10:31Z",
    "last_updated": "2025-11-05T00:41:36.237265Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-ocp-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "1.1.14",
          "tested_at": "2026-10-04T11:06:15+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.18",
          "tested_at": "2026-10-04T10:45:34+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.5.8a1",
          "tested_at": "2026-10-30T08:58:55+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-rss-plugin",
    "skill_id": null,
    "name": "ovos-ocp-rss-plugin",
    "description": "This plugin lets OCP play RSS feeds. It reads a feed URL, finds the first entry with an audio link, and returns that link as a playable stream.",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-rss-plugin",
    "package_name": "ovos_ocp_rss_plugin",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-rss-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-28T08:33:29Z",
    "last_updated": "2025-11-05T00:32:33.781782Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ocp-youtube-plugin",
    "skill_id": null,
    "name": "ovos-ocp-youtube-plugin",
    "description": "This plugin lets OVOS Common Play (OCP) play YouTube URLs. It extracts a",
    "examples": [],
    "tags": [
      "media",
      "ocp",
      "openvoiceos",
      "plugin",
      "youtube"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ocp-youtube-plugin",
    "package_name": "ovos_ocp_youtube_plugin",
    "pypi_version": "0.0.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "OCP Media Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ocp-youtube-plugin\n\nThe plugin registers itself as an OCP stream extractor through the\n`opm.ocp.extractor` entry point. OCP loads it automatically once it is\ninstalled. No extra setup is needed."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-28T08:19:14Z",
    "last_updated": "2025-11-05T00:50:35.161895Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-ollama-dialog-transformer-plugin",
    "skill_id": null,
    "name": "ovos-ollama-dialog-transformer-plugin",
    "description": "Dialog transformer for OVOS, designed to return responses from Ollama. By default it will make all your OVOS responses sarcastic.",
    "examples": [],
    "tags": [
      "status-poc"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-ollama-dialog-transformer-plugin",
    "package_name": "ovos-ollama-dialog-transformer-plugin",
    "pypi_version": "1.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "To enable the Ollama Dialog Transformer Plugin, add the following to your `mycroft.conf` (typically found at `~/.config/mycroft/mycroft.conf`):\n\n\"dialog_transformers\": {\n    \"ovos-ollama-dialog-transformer-plugin\": {\n        \"prompt\": \"Please revise this text in 30 words or less as if it were spoken by a sarcastic AI. You are not an AI, you are revising text as if you were an AI. Don't mention anything about rewriting text, or your training, and don't use emoji. The dialog to rewrite is as follows:\",\n        \"model\": \"llama3.2\",\n        \"timeout\": 10,\n        \"stream\": false,\n        \"ollama_base_url\": \"http://localhost:11434\"\n    }\n}\n\nNote that these are all default values, so a minimal configuration would be:\n\n\"dialog_transformers\": {\n    \"ovos-ollama-dialog-transformer-plugin\": {}\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-02-24T14:29:39Z",
    "last_updated": "2026-11-04T03:26:30.146248Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-openai-plugin",
    "skill_id": null,
    "name": "ovos-openai-plugin",
    "description": "This package uses the OpenAI Chat Completions API to",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/ovos-openai-plugin",
    "package_name": "ovos_openai_plugin",
    "pypi_version": "2.0.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Translate Plugin",
    "type_group": "Plugin",
    "stars": 9,
    "forks": 8,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-openai-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-04T23:18:15Z",
    "last_updated": "2025-11-05T01:05:20.363229Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "Collins1738-ovos-openclaw-skill",
    "skill_id": null,
    "name": "ovos-openclaw-skill",
    "description": "An installable OVOS skill that sends voice requests to a local OpenClaw",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/Collins1738/ovos-openclaw-skill",
    "package_name": "ovos-openclaw-skill",
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "Collins1738",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install and configure",
        "content": "python3.11 -m pip install ."
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-05T17:07:27Z",
    "last_updated": "2026-10-26T20:47:32Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-opendata-server",
    "skill_id": null,
    "name": "ovos-opendata-server",
    "description": "A small FastAPI service that turns opt-in telemetry from OVOS voice devices into",
    "examples": [],
    "tags": [
      "ilenia",
      "openvoiceos",
      "server"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-opendata-server",
    "package_name": "ovos-opendata-server",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "All configuration is via environment variables (`.env.example` provided):\n\n| Variable | Required | Default | Description |\n|----------|----------|---------|-------------|\n| `DATABASE_URL` | No | `sqlite:///./ovos_opendata.db` | Database DSN. Defaults to a local SQLite file for easy local/dev use \u2014 **production deployments should set this to a PostgreSQL DSN**. |\n| `MAX_AUDIO_SIZE_MB` | No | `10` | Audio upload size cap in MB |\n| `API_KEY` | No | unset | If set, intake endpoints also require a matching `X-API-Key` header |\n| `RATE_LIMIT` | No | `60/minute` | Per-IP rate limit applied to intake endpoints |\n| `DASHBOARD_CACHE_TTL` | No | `60` | Seconds the `/dashboard/stats` aggregation is cached |\n\nSettings are loaded via `app/config.py` (pydantic-settings), which also reads a\n`.env` file if\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-07T22:47:46Z",
    "last_updated": "2026-10-27T01:02:49Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-org-website",
    "skill_id": null,
    "name": "ovos-org-website",
    "description": "Test repo for ovos webpage",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-org-website",
    "package_name": "ovos-org-website",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-org-website"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-18T16:24:57Z",
    "last_updated": "2026-09-01T17:20:40Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-padatious-pipeline-plugin",
    "skill_id": null,
    "name": "ovos-padatious-pipeline-plugin",
    "description": "A neural network intent parser",
    "examples": [],
    "tags": [
      "openvoiceos",
      "pipeline",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-padatious-pipeline-plugin",
    "package_name": "ovos_padatious",
    "pypi_version": "1.4.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installing",
        "content": "Padatious is pure Python (numpy). It needs no native libraries or compilers.\n\nInstall from PyPI:\n\npip install ovos-padatious-pipeline-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-09T16:12:45Z",
    "last_updated": "2025-11-05T00:39:45.219521Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-padatious-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "1.4.3",
          "tested_at": "2026-10-04T11:06:18+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.4.3",
          "tested_at": "2026-10-04T10:45:39+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.3.2a1",
          "tested_at": "2026-10-30T08:59:02+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-persona",
    "skill_id": null,
    "name": "ovos-persona",
    "description": "Persona service",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-persona",
    "package_name": "ovos-persona",
    "pypi_version": "0.7.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 8,
    "forks": 6,
    "open_issues": 15,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install --pre ovos-persona\n\n---"
      },
      {
        "heading": "Pipeline Configuration",
        "content": "Where you place `\"ovos-persona-pipeline-plugin-high\"` in the pipeline decides whether the active persona gets full control of an utterance, or only handles it after high-confidence skills fail to match. `\"ovos-persona-pipeline-plugin-low\"` handles utterances as a fallback even when no persona is explicitly active, replacing [OpenVoiceOS/ovos-skill-fallback-chatgpt](https://github.com/OpenVoiceOS/ovos-skill-fallback-chatgpt).\n\nSee the [OVOS technical manual: Persona Pipeline](https://openvoiceos.github.io/beta-technical-manual/persona-pipeline/) for the pipeline configuration strategies and example `mycroft.conf` snippets.\n\n---"
      }
    ],
    "languages": [
      "ca",
      "ca-es",
      "da",
      "da-dk",
      "de",
      "de-de",
      "en-us",
      "es",
      "es-es",
      "fr",
      "fr-fr",
      "gl",
      "gl-es",
      "it-it",
      "nl",
      "nl-nl",
      "pt",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2023-03-25T05:15:52Z",
    "last_updated": "2026-01-23T10:59:47.267314Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-persona-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "not supported",
          "state": "unsupported",
          "level": 1,
          "version_tested": "0.6.24",
          "tested_at": "2026-10-04T11:15:55+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.7.1",
          "tested_at": "2026-10-04T10:56:04+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.9.0a36",
          "tested_at": "2026-11-04T09:49:16+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-persona-server",
    "skill_id": null,
    "name": "ovos-persona-server",
    "description": "A single HTTP server that exposes one or more OVOS `Persona`s as **eight concurrent API surfaces** \u2014 so any LLM client (OpenAI SDK, LangChain, Ollama tools, Anthropic SDK, Google Gemini SDK, Cohere SDK, HuggingFace TGI client, AWS Bedrock client, or any A2A agent) can talk to your OVOS persona without changes.",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-persona-server",
    "package_name": "ovos-persona-server",
    "pypi_version": "0.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 2,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Persona Config Examples",
        "content": "### LLM persona (OpenAI-compatible backend)\n\n{\n  \"name\": \"gpt-persona\",\n  \"handlers\": [\"ovos-chat-openai-plugin\"],\n  \"ovos-chat-openai-plugin\": {\n    \"api_key\": \"sk-...\",\n    \"model\": \"gpt-4o-mini\"\n  }\n}\n\n### Knowledge-base + LLM fallback\n\n{\n  \"name\": \"smart-assistant\",\n  \"handlers\": [\n    \"ovos-wikipedia-plugin\",\n    \"ovos-ddg-plugin\",\n    \"ovos-wordnet-plugin\",\n    \"ovos-chat-openai-plugin\",\n    \"ovos-solver-failure-plugin\"\n  ],\n  \"ovos-chat-openai-plugin\": {\n    \"api_key\": \"sk-...\",\n    \"model\": \"gpt-4o-mini\"\n  }\n}\n\n### Rivescript chatbot (no GPU, no API key)\n\n{\n  \"name\": \"rivescript-bot\",\n  \"handlers\": [\n    \"ovos-solver-rivescript-plugin\",\n    \"ovos-solver-failure-plugin\"\n  ]\n}\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-09-24T21:19:18Z",
    "last_updated": "2025-11-08T23:21:43.884507Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-personal-backend",
    "skill_id": null,
    "name": "ovos-personal-backend",
    "description": "personal backend - self-hosted backend to manage multiple OVOS devices",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-personal-backend",
    "package_name": "ovos-local-backend",
    "pypi_version": "0.1.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 83,
    "forks": 25,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "from pip\n\npip install ovos-local-backend"
      },
      {
        "heading": "Configuration",
        "content": "configure backend by editing/creating ```~/.config/ovos_backend/ovos_backend.conf```\n\n\n{\n  \"lang\": \"en-us\",\n  \"date_format\": \"DMY\",\n  \"system_unit\": \"metric\",\n  \"time_format\": \"full\",\n  \"location\": {\n    \"city\": {\"...\": \"...\"},\n    \"coordinate\": {\"...\": \"...\"},\n    \"timezone\": {\"...\": \"...\"}\n  },\n\n  \"stt_servers\": [\"https://stt.openvoiceos.org/stt\"],\n\n  \"server\": {\n    \"admin_key\": \"leave empty to DISABLE admin api\",\n    \"port\": 6712,\n    \"database\": \"sqlite:////home/user/.local/share/ovos_backend.db\",\n    \"skip_auth\": false,\n    \"geolocate\": true,\n    \"override_location\": false,\n    \"version\": \"v1\"\n  },\n\n  \"listener\": {\n     \"record_utterances\": false,\n     \"record_wakewords\": false\n  },\n\n  \"microservices\": {\n    \"wolfram_key\": \"$KEY\",\n    \"owm_key\": \"$KEY\",\n    \"email\": {\n       \"recipie\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2018-01-10T00:37:17Z",
    "last_updated": "2022-10-10T20:40:40.893275Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL",
    "skill_id": null,
    "name": "ovos-PHAL",
    "description": "ovos-PHAL is the Plugin-based Hardware Abstraction Layer for OpenVoiceOS. It runs as a service that loads PHAL plugins based on the environment, either from known configuration or from device fingerprinting. Each plugin connects a specific piece of hardware or a specific system feature to the OVOS messagebus.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL",
    "package_name": "ovos_PHAL",
    "pypi_version": "0.2.12",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 5,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_PHAL\n\nExtra plugin sets install with the package:\n\npip install ovos_PHAL[linux]   # alsa, system, network-manager, wallpaper-manager\npip install ovos_PHAL[mac]     # ovos-phal-plugin-mac\npip install ovos_PHAL[mk1]     # ovos-PHAL-plugin-mk1\npip install ovos_PHAL[mk2]     # ovos-PHAL-plugin-hotkeys\npip install ovos_PHAL[mk2dev]  # ovos-PHAL-plugin-mk2-fan-control\npip install ovos_PHAL[extras]  # ipgeo, connectivity-events, oauth"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-11-06T17:28:10Z",
    "last_updated": "2026-03-01T15:37:35.568380Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "smartgic-ovos-phal-plugin-aiy-v2",
    "skill_id": null,
    "name": "ovos-phal-plugin-aiy-v2",
    "description": "Open Voice OS plugin for Google AIY Voice Kit V2",
    "examples": [],
    "tags": [
      "aiy",
      "aiy-voice",
      "aiy-voice-kit",
      "aiy-voice-kit-v2",
      "button",
      "google",
      "gpio",
      "led",
      "openvoiceos",
      "ovos",
      "phal",
      "plugin",
      "pwm",
      "wakeword",
      "wakeword-activation"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/ovos-phal-plugin-aiy-v2",
    "package_name": "ovos-phal-plugin-aiy-v2",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "smartgic",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-phal-plugin-aiy-v2"
      },
      {
        "heading": "Configuration",
        "content": "The plugin configuration file is `~/.config/OpenVoiceOS/ovos-phal-plugin-aiy-v2.json`.\n\n| Option          | Value                | Description                                                   |\n| --------------- | -------------------- | ------------------------------------------------------------- |\n| `color`         | `green`              | Define the color of the LED                                   |\n| `wakeword_only` | `false`              | Turn on the LED only during the wakeword detection            |\n| `pulse`         | `true`               | Make the LED pulse                                            |\n| `button_event`  | `mycroft.mic.listen` | Which event to send to message bus when the button is pressed |\n\n### Example\n\nConfiguration sample of `~/.config/OpenVoiceOS/ovos-phal\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-03T01:59:53Z",
    "last_updated": "2024-02-03T02:35:13.011599Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-alsa",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-alsa",
    "description": "controls system volume with alsa",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-alsa",
    "package_name": "ovos_PHAL_plugin_alsa",
    "pypi_version": "0.1.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-alsa\n\nor from source:\n\npip install git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-alsa\n\nself.bus.on(\"mycroft.volume.get\", self.handle_volume_request)\nself.bus.on(\"mycroft.volume.set\", self.handle_volume_change)\nself.bus.on(\"mycroft.volume.mute\", self.handle_mute_request)\nself.bus.on(\"mycroft.volume.unmute\", self.handle_unmute_request)\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-16T14:49:28Z",
    "last_updated": "2026-01-23T23:52:24.052066Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-app-launcher",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-app-launcher",
    "description": "PHAL plugin: desktop application launcher OS actions over the OVOS messagebus",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-app-launcher",
    "package_name": "ovos-PHAL-plugin-app-launcher",
    "pypi_version": "0.0.1a4",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Add to `ovos.conf` under the `PHAL` section or plugin settings:\n\n{\n  \"ovos-phal-plugin-app-launcher\": {\n    \"skip_categories\": [\"Settings\", \"ConsoleOnly\", \"Building\"],\n    \"skip_keywords\": [],\n    \"target_categories\": [],\n    \"target_keywords\": [],\n    \"blacklist\": [],\n    \"aliases\": {\"kcalc\": [\"calculator\"]},\n    \"user_commands\": {},\n    \"require_icon\": true,\n    \"require_categories\": true,\n    \"match_threshold\": 0.85,\n    \"terminate_all\": false,\n    \"disable_window_manager\": false\n  }\n}\n\n| Key | Type | Default | Description |\n|---|---|---|---|\n| `skip_categories` | list[str] | `[\"Settings\",\"ConsoleOnly\",\"Building\"]` | Desktop categories to exclude |\n| `skip_keywords` | list[str] | `[]` | Desktop keywords to exclude |\n| `target_categories` | list[str] | `[]` | Only include apps in these c\u2026"
      },
      {
        "heading": "Installation",
        "content": "pip install ovos-PHAL-plugin-app-launcher"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-10T19:14:00Z",
    "last_updated": "2026-08-31T15:35:18.209478Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-balena-wifi",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-balena-wifi",
    "description": "this plugin provides a balena interface for the wifi setup and is part of a larger collection of Wifi client plugins",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-balena-wifi",
    "package_name": "ovos-PHAL-plugin-balena-wifi",
    "pypi_version": "1.2.2",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "PHAL plugin - Balena Wifi Setup-",
        "content": "this plugin provides a balena interface for the wifi setup and is part of a larger collection of Wifi client plugins\n\nBalena creates a hotspot you can connect to and set your credentials, this is the default option for devices without a GUI\n\nthis plugin replaces the old [skill-balena-wifi-setup](https://github.com/OpenVoiceOS/skill-balena-wifi-setup)"
      },
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-balena-wifi`"
      },
      {
        "heading": "Configuration",
        "content": "You can change a few parameters to customize the setup assets, you can change some Hotspot details, dialogs and GUI strings\n\n{\n  \"ssid\": \"OVOS\",\n  \"portal\": \"start dot openvoiceos dot com\",\n  \"device_name\": \"OVOS Device\",\n  \"image_connect_ap\":  \"1_phone_connect-to-ap.png\",\n  \"image_choose_wifi\":  \"3_phone_choose-wifi.png\"\n}"
      }
    ],
    "languages": [
      "ca-es",
      "da",
      "de",
      "en-us",
      "pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-14T19:56:17Z",
    "last_updated": "2025-06-10T21:19:25.561855Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-brightness-control-rpi",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-brightness-control-rpi",
    "description": "This repository is no longer maintained by OpenVoiceOS, use https://github.com/OpenVoiceOS/ovos-gui-plugin-shell-companion instead",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin",
      "raspberry-pi"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-brightness-control-rpi",
    "package_name": "ovos-PHAL-plugin-brightness-control-rpi",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-brightness-control-rpi`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-16T17:40:03Z",
    "last_updated": "2022-11-17T00:44:04.625475Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-ovos-PHAL-plugin-brightness-control-rpi",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-brightness-control-rpi",
    "description": "This plugin provides a brightness control interface for the Raspberry PI, it supports DSI and **HDMI screens",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/LibreVoiceAssistant/ovos-PHAL-plugin-brightness-control-rpi",
    "package_name": "ovos-PHAL-plugin-brightness-control-rpi",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-brightness-control-rpi`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-04-06T10:28:38Z",
    "last_updated": "2022-11-17T00:44:04.625475Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-camera",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-camera",
    "description": "This plugin gives OVOS access to a camera. It uses OpenCV on most systems and libcamera on Raspberry Pi. The plugin can take snapshots, serve a video stream over HTTP, and respond to camera commands sent over the message bus.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-camera",
    "package_name": "ovos-PHAL-plugin-camera",
    "pypi_version": "0.2.1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "1. Install the plugin:\n\n   pip install ovos-phal-plugin-camera\n\n2. Add the plugin to your OVOS PHAL configuration:\n\n   {\n       \"PHAL\": {\n           \"ovos-phal-plugin-camera\": {\n               \"video_source\": 0,\n               \"start_open\": false,\n               \"serve_mjpeg\": false,\n               \"mjpeg_host\": \"0.0.0.0\",\n               \"mjpeg_port\": 5000\n           }\n       }\n   }\n\n### Additional Steps for Raspberry Pi Users\n\nOn Raspberry Pi, the Picamera2 library needs the `libcamera` package. Raspberry Pi OS installs `libcamera` system-wide, so a Python virtual environment (venv) needs extra setup to reach it.\n\nThese examples use the default venv location from ovos-installer, `~/.venvs/ovos`. Adjust the path if your setup differs.\n\n#### Steps to Enable `libcamera` in Your Virtual Envir\u2026"
      },
      {
        "heading": "Configuration Options",
        "content": "| Option         | Type   | Default   | Description                                           |\n| -------------- | ------ | --------- | ----------------------------------------------------- |\n| `video_source` | `int`  | `0`       | Index of the video source to use for the camera.      |\n| `start_open`   | `bool` | `false`   | Whether to open the camera at plugin startup.         |\n| `serve_mjpeg`  | `bool` | `false`   | Whether to start an MJPEG server for video streaming. |\n| `mjpeg_port`   | `int`  | `5000`    | Port for the MJPEG server.                            |\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-06T18:53:45Z",
    "last_updated": "2025-06-13T03:38:14.338800Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-color-scheme-manager",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-color-scheme-manager",
    "description": "OVOS Shell ColorScheme Manager Plugin for OVOS PHAL",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-color-scheme-manager",
    "package_name": "ovos-PHAL-plugin-color-scheme-manager",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-color-scheme-manager`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-16T17:39:53Z",
    "last_updated": "2022-11-17T00:44:24.588782Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-configuration-provider",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-configuration-provider",
    "description": "PHAL plugin to provide configuration in displayable GUI format",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-configuration-provider",
    "package_name": "ovos-PHAL-plugin-configuration-provider",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "DEPRECATED - OVOS PHAL CONFIGURATION PROVIDER",
        "content": "This repository is no longer maintained by OpenVoiceOS, use https://github.com/OpenVoiceOS/ovos-gui-plugin-shell-companion instead\n\n___________________________\n\n\nThe Configuration Provider plugin provides an interface to generate GUI compatible configuration sections for mycroft advanced configuration"
      },
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-configuration-provider`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-16T17:39:30Z",
    "last_updated": "2022-11-17T00:44:55.666551Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-ovos-PHAL-plugin-configuration-provider",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-configuration-provider",
    "description": "PHAL plugin to provide configuration in displayable GUI format",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/LibreVoiceAssistant/ovos-PHAL-plugin-configuration-provider",
    "package_name": "ovos-PHAL-plugin-configuration-provider",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-configuration-provider`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-07-15T09:19:57Z",
    "last_updated": "2022-11-17T00:44:55.666551Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-connectivity-events",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-connectivity-events",
    "description": "This is a PHAL plugin for OVOS. It watches network and internet connectivity and publishes the result on the messagebus, so skills, the GUI, and the enclosure can react to going online or offline without probing the network themselves.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-connectivity-events",
    "package_name": "ovos_phal_plugin_connectivity_events",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-connectivity-events"
      },
      {
        "heading": "Configuration",
        "content": "The plugin reads its settings from the PHAL configuration section:\n\n{\n  \"check_interval\": 60,\n  \"disable_scheduled_checks\": false\n}\n\n- `check_interval`: seconds between automatic checks. Default: 60.\n- `disable_scheduled_checks`: if true, the plugin does not poll on a timer. It still responds to `ovos.PHAL.internet_check`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-02T21:38:38Z",
    "last_updated": "2025-11-05T00:39:54.319866Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-dashboard",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-dashboard",
    "description": "Dashboard PHAL plugin to handle Dashboard operations",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-dashboard",
    "package_name": "ovos-PHAL-plugin-dashboard",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-dashboard`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-16T17:39:07Z",
    "last_updated": "2022-03-15T09:29:03.108820Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-ovos-PHAL-plugin-dashboard",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-dashboard",
    "description": "Dashboard PHAL plugin to handle Dashboard operations",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/LibreVoiceAssistant/ovos-PHAL-plugin-dashboard",
    "package_name": "ovos-PHAL-plugin-dashboard",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-dashboard`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-15T09:10:48Z",
    "last_updated": "2022-03-15T09:29:03.108820Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-display-manager-ipc",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-display-manager-ipc",
    "description": "Legacy implementation for mark1 faceplate, introduces yet another definition of \"active skill\"",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-display-manager-ipc",
    "package_name": "ovos-phal-display-manager-ipc",
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-02T21:18:18Z",
    "last_updated": "2022-03-14T19:58:20Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-dotstar",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-dotstar",
    "description": "PHAL plugin for dotstar type LED's",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-dotstar",
    "package_name": "ovos-PHAL-plugin-dotstar",
    "pypi_version": "0.0.1",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-dotstar"
      },
      {
        "heading": "Custom configuration",
        "content": "You can configure colors and animations in `~/.config/mycroft/mycroft.conf`.\n\n{\n    \"PHAL\": {\n        \"ovos-PHAL-plugin-dotstar\": {\n            \"main_color\": \"Mycroft blue\",\n            \"background_color\": \"OVOS red\",\n            \"listen_animation\": \"breath\",\n            \"talking_animation\": \"blink\"\n        }\n    }\n}\n\n`main_color` -> str:\n    rgb value -> \"32, 195, 63\"\n    name -> \"blue\"\n    hex value -> \"#22A7F0\"\n\n`background_color` -> str:\n    rgb value -> \"32, 195, 63\"\n    name -> \"red\"\n    hex value -> \"#FF1A1A\"\n\n`listen_animation` -> str, one of:\n    'breathe'\n    'chase'\n    'fill'\n    'refill'\n    'bounce'\n    'blink'\n    'alternating'\n\n`talking_animation` -> str, one of:\n    'breathe'\n    'chase'\n    'fill'\n    'refill'\n    'bounce'\n    'blink'\n    'alternating'"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-15T12:15:54Z",
    "last_updated": "2024-09-03T00:30:47.100957Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-gpsd",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-gpsd",
    "description": "",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-gpsd",
    "package_name": "ovos-phal-plugin-gpsd",
    "pypi_version": "0.0.2a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-18T13:30:23Z",
    "last_updated": "2026-06-16T22:53:05.854045Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "AIIX-ovos-PHAL-plugin-gui-network-client",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-gui-network-client",
    "description": "A GUI Network Client For PHAL",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/AIIX/ovos-PHAL-plugin-gui-network-client",
    "package_name": "ovos-PHAL-plugin-gui-network-client",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "AIIX",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-gui-network-client`"
      }
    ],
    "languages": [
      "ca-es",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-25T09:50:26Z",
    "last_updated": "2022-11-17T00:52:34.100048Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-gui-network-client",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-gui-network-client",
    "description": "A GUI Network Client For PHAL",
    "examples": [],
    "tags": [
      "deprecated",
      "gui",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-gui-network-client",
    "package_name": "ovos-PHAL-plugin-gui-network-client",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-gui-network-client`"
      }
    ],
    "languages": [
      "ca-es",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-19T15:34:48Z",
    "last_updated": "2022-11-17T00:52:34.100048Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-homeassistant",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-homeassistant",
    "description": "HomeAssistant PHAL Plugin for OpenVoice OS",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "home-assistant",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant/dev/res/icon/ovos-phal-homeassistant.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant",
    "package_name": "ovos-PHAL-plugin-homeassistant",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 12,
    "forks": 2,
    "open_issues": 11,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Plugin Support Two Installation Methods:\n\n1. Install from Github URL\n\nNote: PIP install from URL will not install the .desktop file and icon if installing to a venv or virtual environment, so you need to manually install them to the system or user directory.\n\nNote: PIP install will attempt to install the .desktop file and icon to the system directory, or user directory if the system directory is not writable. If this is not a virtual environemnt.\n\npip install git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant\n\n2. Manual Install from Git Clone\n\ngit clone https://github.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant\ncd ovos-PHAL-plugin-homeassistant\ncp -r res/desktop/ovos-phal-homeassistant.desktop ~/.local/share/applications/\ncp -r res/icon/ovos-phal-homeassistant.png ~/.loca\u2026"
      },
      {
        "heading": "Configuration (Instance Setup)",
        "content": "Plugin Supports Two Configuration Methods:\n\n1. Using the GUI\n\n   - Install the plugin\n   - Open the application from the homescreen menu\n   - Click the \"Connect Instance\" button\n   - Enter the URL of the Home Assistant Instance\n   - Enter the Long-Lived Access Token (API KEY)\n   - Press the \"Confirm\" button\n\n2. Manually Editing the Config File\n   - Add the following to the config file:\n        \"PHAL\": {\n            \"ovos-PHAL-plugin-homeassistant\": {\n                \"host\": \"https://someurl.toinstance\",\n                \"api_key\": \"api key from the instance\"\n            }\n        }\n\nThe config also takes some optional properties:\n\n`brightness_increment` - the amount to increment/decrement the brightness of a light when the brightness up/down commands are sent. The default value is 10 and re\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-03T00:33:09Z",
    "last_updated": "2025-03-15T14:05:41.175959Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "AIIX-ovos-PHAL-plugin-homeassistant",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-homeassistant",
    "description": "HomeAssistant PHAL Plugin for OpenVoice OS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/AIIX/ovos-PHAL-plugin-homeassistant/master/res/icon/ovos-phal-homeassistant.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/AIIX/ovos-PHAL-plugin-homeassistant",
    "package_name": "ovos-PHAL-plugin-homeassistant",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "AIIX",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 6,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Plugin Support Two Installation Methods:\n1. Install from Github URL\n\nNote: PIP install from URL will not install the .desktop file and icon if installing to a venv or virtual environment, so you need to manually install them to the system or user directory.\n\nNote: PIP install will attempt to install the .desktop file and icon to the system directory, or user directory if the system directory is not writable. If this is not a virtual environemnt.\n\npip install git+https://github.com/AIIX/ovos-PHAL-plugin-homeassistant\n\n2. Manual Install from Git Clone\ngit clone https://github.com/AIIX/ovos-PHAL-plugin-homeassistant\ncd ovos-PHAL-plugin-homeassistant\ncp -r res/desktop/ovos-phal-homeassistant.desktop ~/.local/share/applications/\ncp -r res/icon/ovos-phal-homeassistant.png ~/.local/share/icons/\np\u2026"
      },
      {
        "heading": "Configuration (Instance Setup)",
        "content": "Plugin Supports Two Configuration Methods:\n1. Using the GUI\n   - Install the plugin\n   - Open the application from the homescreen menu\n   - Click the \"Connect Instance\" button\n   - Enter the URL of the Home Assistant Instance\n   - Enter the Long-Lived Access Token (API KEY)\n   - Press the \"Confirm\" button \n\n2. Manually Editing the Config File\n   - Add the following to the config file:\n        \"PHAL\": {\n            \"ovos-PHAL-plugin-homeassistant\": {\n                \"host\": \"https://someurl.toinstance\",\n                \"api_key\": \"api key from the instance\"\n            }\n        }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-11-18T08:17:46Z",
    "last_updated": "2025-03-15T14:05:41.175959Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-hotkeys",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-hotkeys",
    "description": "map key presses to OVOS bus events",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-hotkeys",
    "package_name": "ovos-PHAL-plugin-hotkeys",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 5,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Add your user to the `tty` and `input` groups.\n\n`sudo usermod -a -G tty,input $USER`\n\nYou can find more information in [this issue](https://github.com/boppreh/keyboard/issues/312).\n\nThen install the plugin.\n\n`pip install ovos-PHAL-plugin-hotkeys`"
      },
      {
        "heading": "Configuration",
        "content": "Add a bus message and a key combo under `\"key_down\"` or `\"key_up\"`.\n\nUse `\"key_down\"` to react when a key is pressed. Use `\"key_up\"` to react when a key is released.\n\nHere is a complete example based on events from a generic G20 USB remote.\n\n \"PHAL\": {\n    \"ovos-PHAL-plugin-hotkeys\": {\n        \"debug\": false,\n        \"key_down\": {\n            \"mycroft.mic.listen\": 582,\n            \"mycroft.mic.mute.toggle\": 190,\n            \"mycroft.mic.mute\": \"shift+m\",\n            \"mycroft.mic.unmute\": \"shift+u\",\n            \"mycroft.volume.increase\": 115,\n            \"mycroft.volume.decrease\": 114,\n            \"mycroft.volume.mute.toggle\": 113,\n            \"mycroft.volume.mute\": \"ctrl+shift+m\",\n            \"mycroft.volume.unmute\": \"ctrl+shift+u\",\n            \"homescreen.manager.show_active\": 144,\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-08-02T12:16:59Z",
    "last_updated": "2024-09-10T00:19:29.435964Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-ipgeo",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-ipgeo",
    "description": "This plugin sets the default location for OpenVoiceOS based on the IP address of the device. It queries ip-api.com and stores the result in the local configuration.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-ipgeo",
    "package_name": "ovos_phal_plugin_ipgeo",
    "pypi_version": "0.1.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-phal-plugin-ipgeo"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-18T13:33:57Z",
    "last_updated": "2025-11-05T01:00:17.275302Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-phal-plugin-mac",
    "skill_id": null,
    "name": "ovos-phal-plugin-mac",
    "description": "OVOS System and Volume event support for Mac OS",
    "examples": [],
    "tags": [
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-phal-plugin-mac",
    "package_name": "ovos-phal-plugin-mac",
    "pypi_version": "0.2.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 5,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install PHAL-plugin-mac`\n\nRequires associated skill for volume-based voice commands:\n\n- skill-ovos-volume"
      },
      {
        "heading": "Config",
        "content": "This plugin is not an Admin plugin, but in order for most of the system level commands to work, the user must be in the sudoers file. This can be done by running the following command in the terminal:\n\n`sudo vim /private/etc/sudoers.d/<username>`\nReplace <username> with the username of the user running the OVOS instance.\n\nThen add the following lines to the file:\n\n<username> ALL=(ALL) NOPASSWD: /usr/sbin/systemsetup\n<username> ALL=(ALL) NOPASSWD: /usr/sbin/shutdown\n<username> ALL=(ALL) NOPASSWD: /usr/bin/sntp\n<username> ALL=(ALL) NOPASSWD: /usr/bin/defaults\n\nBe sure to replace `<username>` with the username of the user running the OVOS instance.\n\n**NOTE:** Do this at your own risk. This is a security risk and should only be done if you understand the implications."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-19T02:35:16Z",
    "last_updated": "2026-11-04T03:27:59.062166Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "matthewdva-ovos-phal-plugin-media-led",
    "skill_id": null,
    "name": "ovos-phal-plugin-media-led",
    "description": "A light _(LED)_ indicator when Open Voice OS is playing media.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/matthewdva/ovos-phal-plugin-media-led",
    "package_name": "ovos-phal-plugin-media-led",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "matthewdva",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-phal-plugin-media-led"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-06T18:17:45Z",
    "last_updated": "2025-09-22T12:48:15Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-mk1",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-mk1",
    "description": "This is a PHAL (Platform Hardware Abstraction Layer) plugin for OpenVoiceOS. It controls the Mark 1 hardware: the eye and mouth faceplate, and the pins on the back of the device.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-mk1",
    "package_name": "ovos-PHAL-plugin-mk1",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 4,
    "open_issues": 12,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-mk1"
      },
      {
        "heading": "Configuration",
        "content": "On Mark 1 hardware the plugin loads with no configuration at all. To enable it\nelsewhere, or to change the serial port, add a block under the plugin's\nentry-point name:\n\n\"PHAL\": {\n  \"ovos-phal-mk1\": {\n    \"enabled\": true,\n    \"port\": \"/dev/ttyAMA0\",\n    \"rate\": 9600,\n    \"timeout\": 5.0\n  }\n}\n\n`port` accepts any pyserial URL, so `\"socket://127.0.0.1:5555\"` points the\nplugin at a virtual faceplate such as\n[ovos-virtual-mark1](https://github.com/OscillateLabsLLC/ovos-virtual-mark1).\nThe older `ovos-PHAL-plugin-mk1` key is still read as a fallback."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-11-06T18:03:37Z",
    "last_updated": "2024-10-23T11:45:14.294513Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-mk2",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-mk2",
    "description": "replaced by generic plugins for individual functionality, do not install!",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-mk2",
    "package_name": "ovos-PHAL-plugin-mk2",
    "pypi_version": "0.0.1a4",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-17T01:31:46Z",
    "last_updated": "2022-10-28T17:00:09.869455Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-mk2-v6-fan-control",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-mk2-v6-fan-control",
    "description": "This is an OVOS PHAL plugin. It controls the fan on the Mark2 dev kit hardware.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-mk2-v6-fan-control",
    "package_name": "ovos-PHAL-plugin-mk2-fan-control",
    "pypi_version": "0.0.1",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-mk2-fan-control"
      },
      {
        "heading": "Configuration",
        "content": "You can set the temperature at which the fan turns on.\n\n{\n    \"PHAL\": {\n        \"ovos-PHAL-plugin-mk2-v6-fan-control\": {\n            \"max_fanless_temp\": 60.0,\n            \"max_fan_temp\": 80.0\n        }\n    }\n}\n\n* `max_fanless_temp` \u2014 the temperature at which the fan turns on.\n* `max_fan_temp` \u2014 the temperature at which the fan runs at 100%."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-28T11:46:05Z",
    "last_updated": "2024-09-09T23:55:37.061760Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "smartgic-ovos-phal-plugin-mm-wakeword",
    "skill_id": null,
    "name": "ovos-phal-plugin-mm-wakeword",
    "description": "Display image and message on MagicMirror\u00b2 when Open Voice OS wake word is detected.",
    "examples": [],
    "tags": [
      "magicmirror",
      "magicmirror2",
      "mycroft",
      "mycroft-skill",
      "mycroftai",
      "openvoiceos",
      "ovos",
      "raspberry-pi",
      "smartmirror",
      "wakeword"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/ovos-phal-plugin-mm-wakeword",
    "package_name": "ovos-phal-plugin-mm-wakeword",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "smartgic",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-phal-plugin-mm-wakeword"
      },
      {
        "heading": "Configuration",
        "content": "The plugin configuration file is `~/.config/OpenVoiceOS/ovos-phal-plugin-mm-wakeword.json`.\n\n| Option    | Value                    | Description                           |\n| --------- | ------------------------ | ------------------------------------- |\n| `url`     | `http://localhost:8080`  | MagicMirror\u00b2 URL                      |\n| `key`     | `N/A`                    | MagicMirror\u00b2 API key                  |\n| `message` | `Listening...`           | Message displayed when triggered      |\n| `timeout` | `10`                     | HTTP request timeout in seconds       |\n| `verify`  | `false`                  | Verify SSL certificate                |\n\n### Example\n\nConfiguration sample of `~/.config/OpenVoiceOS/ovos-phal-plugin-mm-wakeword.json`.\n\n{\n  \"url\": \"http://mm.home.lan\",\n  \"key\":\u2026"
      },
      {
        "heading": "MagicMirror\u00b2 Configuration",
        "content": "In order to reach the `/ovos` route on your MagicMirror\u00b2, you need to allow remote connections for a specific IP address or for a network range.\n\nPlease have a look here: https://github.com/smartgic/MMM-ovos-wakeword"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-04-04T22:37:55Z",
    "last_updated": "2026-06-25T03:14:25Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-PHAL-plugin-netpolicy",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-netpolicy",
    "description": "Per-service network policy for OpenVoiceOS (PHAL admin plugin) \u2014 including enforced Tor routing. Design stage.",
    "examples": [],
    "tags": [
      "nftables",
      "openvoiceos",
      "ovos",
      "ovos-plugin",
      "privacy",
      "tor"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-PHAL-plugin-netpolicy",
    "package_name": "ovos-PHAL-plugin-netpolicy",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "andlo",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Planned configuration",
        "content": "{\n  \"PHAL\": {\n    \"admin\": {\n      \"ovos-PHAL-plugin-netpolicy\": {\n        \"enabled\": true,\n        \"fail_closed\": true,\n        \"routes\": {\n          \"ovos-core.service\": \"tor\",\n          \"ovos-dinkum-listener.service\": \"direct\",\n          \"ovos-audio.service\": \"direct\",\n          \"ovos-phal.service\": \"direct\"\n        },\n        \"lan_allow\": [\"127.0.0.0/8\", \"192.168.0.0/16\", \"10.0.0.0/8\"],\n        \"direct_allow\": [],\n        \"block_ipv6\": true,\n        \"tor\": {\n          \"binary\": \"tor\",\n          \"install_tor\": false,\n          \"trans_port\": 9040,\n          \"dns_port\": 5353,\n          \"control_port\": 9051\n        }\n      }\n    }\n  }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-30T22:31:53Z",
    "last_updated": "2026-10-30T22:31:59Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-network-manager",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-network-manager",
    "description": "NetworkManager plugin for PHAL",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-network-manager",
    "package_name": "ovos-PHAL-plugin-network-manager",
    "pypi_version": "1.3.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-network-manager"
      },
      {
        "heading": "Config",
        "content": "This plugin is an admin plugin. It needs to run as root and to be enabled in `mycroft.conf`.\n\n{\n\"PHAL\": {\n    \"admin\": {\n        \"ovos-PHAL-plugin-network-manager\": {\"enabled\": true}\n    }\n}\n}\n\nIf you omit this config, the plugin runs as the regular user. In that case, set the [polkit policy](https://github.com/OpenVoiceOS/ovos-buildroot/blob/5c7af8b05892206846ae06adb3478f1df620bf6b/buildroot-external/rootfs-overlay/base/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules) to allow `nmcli` without sudo."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-26T06:22:30Z",
    "last_updated": "2026-03-01T15:43:52.419788Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-ovos-PHAL-plugin-notification-widgets",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-notification-widgets",
    "description": "Notifications and Widgets PHAL plugin",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/LibreVoiceAssistant/ovos-PHAL-plugin-notification-widgets",
    "package_name": "ovos-PHAL-plugin-notification-widgets",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-notification-widgets`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-12T01:38:15Z",
    "last_updated": "2022-11-16T23:42:25.090449Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-oauth",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-oauth",
    "description": "This is a PHAL (hardware abstraction layer) plugin for OpenVoiceOS. It manages OAuth 2.0 authentication for skills. A skill registers an OAuth app with the plugin, and the plugin runs the OAuth flow and returns an access token.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-oauth",
    "package_name": "ovos-PHAL-plugin-oauth",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-oauth"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-05T02:54:36Z",
    "last_updated": "2024-11-20T11:58:55.695249Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-pulseaudio",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-pulseaudio",
    "description": "This is a PHAL (Platform/Hardware Abstraction Layer) plugin for OpenVoiceOS. It controls system volume through PulseAudio. The plugin loads only when it finds `pulseaudio` on the system, so it does not interfere with devices that use a different audio server.",
    "examples": [],
    "tags": [
      "audio",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-pulseaudio",
    "package_name": "ovos-PHAL-plugin-pulseaudio",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-pulseaudio"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-24T20:08:16Z",
    "last_updated": "2026-06-20T22:34:09.778833Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-system",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-system",
    "description": "This PHAL plugin gives OpenVoiceOS commands to control the host system. It handles NTP sync, SSH, reboot, shutdown, factory reset, and language configuration through bus events. The plugin does not yet define a dbus interface.",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-system",
    "package_name": "ovos_PHAL_plugin_system",
    "pypi_version": "1.3.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-system"
      },
      {
        "heading": "Config",
        "content": "This plugin can run as an admin plugin. An admin plugin runs as root. To enable it, add this to `mycroft.conf`:\n\n{\n\"PHAL\": {\n    \"admin\": {\n        \"ovos-PHAL-plugin-system\": {\"enabled\": true}\n    }\n}\n}\n\nIf you omit this config, the plugin runs as the regular user. In that case, you need a polkit policy that allows `systemctl` without `sudo`. This policy is not yet implemented."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-14T14:03:04Z",
    "last_updated": "2025-11-05T00:48:35.337188Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-termux",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-termux",
    "description": "A PHAL plugin that controls system volume, vibration, and the camera on Termux. It runs as part of the Platform/Hardware Abstraction Layer in OpenVoiceOS.",
    "examples": [],
    "tags": [
      "android",
      "hardware",
      "mobile",
      "openvoiceos",
      "phal",
      "plugin",
      "termux"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-termux",
    "package_name": "ovos-PHAL-plugin-termux",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-plugin-termux"
      },
      {
        "heading": "Config",
        "content": "\"PHAL\": {\n    \"ovos-PHAL-plugin-termux\": {\n      \"stream\": \"music\",\n      \"camera_id\": 0,\n      \"vibrate_on_record_start\": false,\n      \"vibrate_on_record_end\": false,\n      \"vibrate_on_sleep\": false,\n      \"vibrate_on_error\": true\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-06T18:53:48Z",
    "last_updated": "2026-07-30T20:27:26Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-tools",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-tools",
    "description": "PHAL service provider exposing OVOS tool plugins over the messagebus",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-tools",
    "package_name": "ovos-PHAL-plugin-tools",
    "pypi_version": "0.0.4a1",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-PHAL-plugin-tools\n\nEnable in your OVOS config (`mycroft.conf`):\n\n{\n  \"PHAL\": {\n    \"ovos-phal-plugin-tools\": {\n      \"enabled\": true\n    }\n  }\n}\n\nInstall one or more toolbox plugins (entry-point group `opm.agents.toolbox`).\nThe service discovers them automatically at startup. Send\n`ovos.tools.reload` if you install plugins while OVOS is already running.\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-10T04:39:33Z",
    "last_updated": "2026-10-20T19:42:48.107046Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-wallpaper-manager",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-wallpaper-manager",
    "description": "Central wallpaper management interface for homescreens and other desktops",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-wallpaper-manager",
    "package_name": "ovos_PHAL_plugin_wallpaper_manager",
    "pypi_version": "0.2.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-wallpaper-manager`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-17T07:36:17Z",
    "last_updated": "2025-11-05T01:07:32.581257Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-ovos-PHAL-plugin-wallpaper-manager",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-wallpaper-manager",
    "description": "Central wallpaper management interface for homescreens and other desktops",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/LibreVoiceAssistant/ovos-PHAL-plugin-wallpaper-manager",
    "package_name": "ovos-PHAL-plugin-wallpaper-manager",
    "pypi_version": "0.2.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-wallpaper-manager`"
      },
      {
        "heading": "Provider Configuration API",
        "content": "The wallpaper management interface provides functionality for configuring wallpaper providers through the GUI interface, this is the event providers must listen for:\n\nNote: Currently only string configuration options are supported.\n\n``` python\n    # {provider_name}.get.wallpaper.config\n    # type: Request\n    # description: Request the wallpaper management interface to configure a wallpaper provider\n\non receiving the above event, the wallpaper provider must respond with the following event:\n\n``` python\n    # ovos.wallpaper.manager.provider.config\n    # type: Response\n    # description: Response to the wallpaper provider configuration request\n    # data required:\n        # provider_name = typically the self.skill_id of the skill that provides the wallpaper provider\n        # config = a dict\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-22T08:51:25Z",
    "last_updated": "2025-11-05T01:07:32.581257Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-plugin-wifi-setup",
    "skill_id": null,
    "name": "ovos-PHAL-plugin-wifi-setup",
    "description": "Central Wifi Setup Plugin for PHAL",
    "examples": [],
    "tags": [
      "deprecated",
      "hardware",
      "openvoiceos",
      "phal",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-plugin-wifi-setup",
    "package_name": "ovos-PHAL-plugin-wifi-setup",
    "pypi_version": "1.1.8",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "OVOS PHAL PLUGIN WIFI SETUP",
        "content": "> **DEPRECATION WARNING**: this reposittory was used in the original mycroft mark2 images and is no longer needed or maintained\n\n------------\n\nThis PHAL plugin provides a central networking clients management interface.\n\n### What is the Networking Client Management Interface ?\nThe network client management interface provides functionality and is responsible for handling registeration, deregisteration, activation and deactivation of supported network client phal plugins.\n\n#### What is a network client PHAL Plugin ?\nA networking client PHAL plugin is a networking provider that is responsible for talking to the designated networking system and handles all connectivity related events that range from connecting to networks, editing existing networks and deactivation of networks. Each client can\u2026"
      },
      {
        "heading": "Install",
        "content": "`pip install ovos-PHAL-plugin-wifi-setup`"
      },
      {
        "heading": "Client Setup Failure",
        "content": "Network client are responsible for letting this central network client interface know when they are unable to configure or complete the user action and result in total failure, specially instances where they might not be able to restart their own client setup mode after multiple attempts.\n\n``` python"
      },
      {
        "heading": "description: Inform the wifi plugin that the client setup completely failed",
        "content": "In response to complete failure this central network client management interface will deactivate the failing client\n``` python"
      },
      {
        "heading": "description: Inform the central network client management system that further setup is not needed",
        "content": "##### Start and Display the select client interface from external button such as drop down menu\nRequest generated by the GUI interface when \"wifi setup\" button has been clicked on screen, can come from drop down menu or any other button action on screen:\n``` python"
      },
      {
        "heading": "description: Inform the wifi clients to stop the setup event completely and clean up",
        "content": "``` python"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-26T13:10:35Z",
    "last_updated": "2024-12-10T14:20:40.863609Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "smartgic-ovos-phal-plugin-ww-led",
    "skill_id": null,
    "name": "ovos-phal-plugin-ww-led",
    "description": "A light indicator when Open Voice OS is listening and/or speaking.",
    "examples": [],
    "tags": [
      "gpio",
      "led",
      "openvoiceos",
      "ovos",
      "phal",
      "plugin",
      "pulsing",
      "pwm",
      "wakeword",
      "wakeword-activation"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/ovos-phal-plugin-ww-led",
    "package_name": "ovos-phal-plugin-ww-led",
    "pypi_version": "1.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "smartgic",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-phal-plugin-ww-led"
      },
      {
        "heading": "Configuration",
        "content": "The plugin configuration file is `~/.config/OpenVoiceOS/ovos-phal-plugin-ww-led.json`.\n\n| Option          | Value   | Description                                        |\n| --------------- | ------- | -------------------------------------------------- |\n| `gpio_pin`      | `N/A`   | GPIO PIN where the LED is connected                |\n| `wakeword_only` | `false` | Turn on the LED only during the wakeword detection |\n| `pulse`         | `true`  | Make the LED pulse                                 |\n\n### Example\n\nConfiguration sample of `~/.config/OpenVoiceOS/ovos-phal-plugin-ww-led.json`.\n\n{\n  \"gpio_pin\": 25,\n  \"wakeword_only\": false,\n  \"pulse\": true\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-01-04T14:56:25Z",
    "last_updated": "2024-01-24T21:33:17.488164Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-PHAL-sensors",
    "skill_id": null,
    "name": "ovos-PHAL-sensors",
    "description": "expose your OVOS device under HomeAssistant",
    "examples": [],
    "tags": [
      "hardware",
      "openvoiceos",
      "phal"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-PHAL-sensors",
    "package_name": "ovos-PHAL-sensors",
    "pypi_version": "0.1.1a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-PHAL-sensors\n\nThat is all the bus output needs. Optional integrations and hardware sensors pull\nextra packages \u2014 install only the ones you use:\n\npip install ovos-PHAL-sensors[ha]          # Home Assistant REST logger (requests)\npip install ovos-PHAL-sensors[mqtt]        # Home Assistant MQTT discovery (ha-mqtt-discoverable)\npip install ovos-PHAL-sensors[pulse]       # PulseAudio sensors (pulsectl)\npip install ovos-PHAL-sensors[bluetooth]   # Bluetooth presence sensors (pybluez2)\npip install ovos-PHAL-sensors[screen]      # screen brightness (screen-brightness-control)\npip install ovos-PHAL-sensors[extras]      # everything above\n\nA sensor whose extra is not installed is simply skipped; the bus output keeps working."
      },
      {
        "heading": "Config",
        "content": "{\n  \"PHAL\": {\n    \"ovos-PHAL-sensors\": {\n      \"name\": \"my_phal_device\",\n      \"time_between_checks\": 15,\n      \"screen_sensors\": true,\n      \"battery_sensors\": true,\n      \"cpu_sensors\": true,\n      \"memory_sensors\": true,\n      \"network_sensors\": true,\n      \"fan_sensors\": true,\n      \"os_sensors\": true,\n      \"apps_sensors\": true,\n      \"pulseaudio_sensors\": true,\n      \"bluetooth_sensors\": true,\n      \"disable_bus\": false,\n      \"disable_ha\": false,\n      \"disable_filelog\": true,\n      \"mqtt_config\": {\"host\":  \"192.168.1.8\", \"port\": 1883},\n      \"ha_host\": \"http://192.168.1.8:8123\",\n      \"ha_token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiI2NGZmODYxY2M3ZDE0ZDZmODQ5...\"\n    }\n  }\n}\n\n- `name`: the device name the sensors belong to\n- `time_between_checks`: time to wait between se\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-10-27T16:19:01Z",
    "last_updated": "2026-09-16T16:53:50.858438Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-plugin-arena",
    "skill_id": null,
    "name": "ovos-plugin-arena",
    "description": "*Which plugin should I use?* This arena answers with data.",
    "examples": [],
    "tags": [
      "plugin",
      "tigregotico"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-plugin-arena/dev/frontend-static/public/favicon.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-plugin-arena",
    "package_name": "ovos-plugin-arena",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 12,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-06T11:10:29Z",
    "last_updated": "2026-11-12T01:59:42Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-plugin-linguonnx",
    "skill_id": null,
    "name": "ovos-plugin-linguonnx",
    "description": "OVOS language detection and translation plugins backed by linguonnx (ONNX, offline)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-plugin-linguonnx",
    "package_name": "ovos-plugin-linguonnx",
    "pypi_version": "0.3.3a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Detect Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-plugin-linguonnx\n\nModels download from HuggingFace on first use and are cached under\n`~/.cache/linguonnx/models/<model_id>/`. Constructing either plugin does not\ntrigger a download; the first real call does. On a server, prefetch instead \u2014\nsee [Prefetching](docs/translation.md#prefetching)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-02T10:55:28Z",
    "last_updated": "2026-09-26T01:03:47.023635Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-plugin-manager",
    "skill_id": null,
    "name": "ovos-plugin-manager",
    "description": "plugin manager for OpenVoiceOS , STT/TTS/Wakewords that can be used anywhere",
    "examples": [],
    "tags": [
      "core",
      "framework",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-plugin-manager",
    "package_name": "ovos-plugin-manager",
    "pypi_version": "2.2.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 14,
    "forks": 14,
    "open_issues": 41,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-plugin-manager\n\nMedia provider plugins need an extra dependency. Install it with:\n\npip install ovos-plugin-manager[media]"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-14T01:33:04Z",
    "last_updated": "2026-01-28T22:36:22.628403Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "putnik-ovos-plugin-silero",
    "skill_id": null,
    "name": "ovos-plugin-silero",
    "description": "Silero STT/TTS plugin for Mycroft",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/putnik/ovos-plugin-silero",
    "package_name": "ovos-tts-plugin-silero",
    "pypi_version": "0.3.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "putnik",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-tts-plugin-silero`"
      },
      {
        "heading": "Configuration",
        "content": "### Basic\n\nWill be used default model for your language and a first available voice for that model.\nDefault sample rate is 24000.\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-silero\"\n  }\n\n### Advanced\nSee [models and voices in Silero Models repository](https://github.com/snakers4/silero-models#models-and-speakers)\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-silero\",\n    \"ovos-tts-plugin-silero\": {\n      \"model\": \"v4_ru\",\n      \"voice\": \"xenia\",\n      \"sample_rate\": 24000\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-11-13T07:28:54Z",
    "last_updated": "2023-10-01T09:37:40.733734Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-pydantic-models",
    "skill_id": null,
    "name": "ovos-pydantic-models",
    "description": "Full index of all valid OpenVoiceOS bus messages + pydantic models for validation",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-pydantic-models",
    "package_name": "ovos-pydantic-models",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-pydantic-models"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-10-20T00:20:17Z",
    "last_updated": "2026-03-10T01:35:48.521841Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-ovos-pyhtmx-gui-metapackage",
    "skill_id": null,
    "name": "ovos-pyhtmx-gui-metapackage",
    "description": "Metapackage for setting up a development environment for the PyHTMX GUI client",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/femelo/ovos-pyhtmx-gui-metapackage",
    "package_name": "ovos-pyhtmx-gui-metapackage",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "femelo",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "To install this metapackage and all its dependencies, you can use pip:\n\npip install .\n\nThis will install the following packages from their respective GitHub branches:\n\n- `ovos-gui@add-pyhtmx-system-pages`\n- `ovos-audio@add-audio-duration`\n- `ovos-dinkum-listener@add-audio-duration`\n- `ovos-skill-homescreen@add-pyhtmx-gui-resources`\n- `ovos-plugin-common-play@add-pyhtmx-resources`\n- `ovos-skill-date-time@add-pyhtmx-time-page`\n- `ovos-skill-weather@add-units-to-weather-params`\n- `ovos-pyhtmx-gui-client@main`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-02-02T20:09:11Z",
    "last_updated": "2026-02-09T18:01:17Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-qdrant-embeddings-plugin",
    "skill_id": null,
    "name": "ovos-qdrant-embeddings-plugin",
    "description": "Qdrant-backed `EmbeddingsDB` vector store plugin for OpenVoiceOS.",
    "examples": [],
    "tags": [
      "embeddings",
      "openvoiceos",
      "plugin",
      "qdrant",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-qdrant-embeddings-plugin",
    "package_name": "ovos-qdrant-embeddings-plugin",
    "pypi_version": "0.0.1a14",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Embeddings Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-qdrant-embeddings-plugin"
      },
      {
        "heading": "Configuration",
        "content": "| Key | Default | Description |\n|-----|---------|-------------|\n| `vector_size` | **required** | Dimension of the embedding vectors. Must match your embedding model. |\n| `distance_metric` | `\"cosine\"` | Similarity function: `\"cosine\"`, `\"euclidean\"`, or `\"dot\"`. |\n| `default_collection_name` | `\"embeddings\"` | Collection created on startup and used when no collection is specified. |\n| `host` | none | Remote Qdrant host (activates HTTP client mode). |\n| `port` | `6333` | HTTP port for remote client. |\n| `grpc_port` | `6334` | gRPC port for remote client. |\n| `api_key` | none | API key for Qdrant Cloud or authenticated remote instances. |\n| `path` | none | Filesystem path for local persistent storage (activates file-backed mode). |\n\n### Three client modes\n\n**In-memory** (development or CI):\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-07-17T23:17:04Z",
    "last_updated": "2026-11-03T16:26:31.605683Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "reklis-ovos-remote-music-service",
    "skill_id": null,
    "name": "ovos-remote-music-service",
    "description": "Control OVOS (Open Voice OS) music playback with YouTube Music integration via REST API or MCP (Model Context Protocol).",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/reklis/ovos-remote-music-service",
    "package_name": "ovos-remote-music-service",
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "reklis",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "uv sync"
      },
      {
        "heading": "OVOS Device Setup",
        "content": "Ensure your OVOS device has the YouTube plugin installed:\n\npip install ovos-ocp-youtube-plugin"
      },
      {
        "heading": "Configuration",
        "content": "Environment variables:\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `OVOS_HOST` | `127.0.0.1` | OVOS message bus host |\n| `OVOS_PORT` | `8181` | OVOS message bus port |\n| `FLASK_HOST` | `0.0.0.0` | REST API listen address |\n| `FLASK_PORT` | `5000` | REST API listen port |\n| `MCP_HOST` | `0.0.0.0` | MCP server listen address |\n| `MCP_PORT` | `5001` | MCP server listen port |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-20T15:07:56Z",
    "last_updated": "2025-12-21T18:08:54Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-routing-judge",
    "skill_id": null,
    "name": "ovos-routing-judge",
    "description": "Who took an utterance, and was it the right skill? One routing judge for OVOS golden-utterance tests",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos",
      "testing"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-routing-judge",
    "package_name": "ovos-routing-judge",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-02T10:44:45Z",
    "last_updated": "2026-10-03T09:11:45.261851Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-rust-messagebus",
    "skill_id": null,
    "name": "ovos-rust-messagebus",
    "description": "OVOS Message Bus implementation in Rust",
    "examples": [],
    "tags": [
      "hacktoberfest",
      "neon",
      "openvoiceos",
      "ovos",
      "status-active",
      "voiceassistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-rust-messagebus",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 4,
    "forks": 4,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Since there is no Rust port of ovos-utils, configuration is done via environment variables and/or a configuration file.\n\n### Using a Configuration File\n\nThe most backwards-compatible option is to set the `OVOS_BUS_CONFIG_FILE` environment variable:\n\nOVOS_BUS_CONFIG_FILE=/home/ovos/.config/mycroft/mycroft.conf /usr/local/bin/ovos_messagebus"
      },
      {
        "heading": "Additional Configuration",
        "content": "Any other settings must be configured in `mycroft.conf` or a similar OVOS-compatible configuration file."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-20T18:14:21Z",
    "last_updated": "2026-10-16T02:03:18Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "timonvanhasselt-ovos-selfiecamera-mac-skill",
    "skill_id": null,
    "name": "ovos-selfiecamera-mac-skill",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-selfiecamera-mac-skill",
    "package_name": "ovos-selfiecamera-mac-skill",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-02-05T08:49:17Z",
    "last_updated": "2026-02-05T08:50:01Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-shell",
    "skill_id": null,
    "name": "ovos-shell",
    "description": "======================",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-shell",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "First clone the repo\ngit clone https://github.com/OpenVoiceOS/ovos-shell\ncd ovos-shell\n\nThen either install with the provided script\n./dev_setup.sh\n\nor Manually\necho \"Building OVOS-Shell\"\nif [[ ! -d build-testing ]] ; then\n  mkdir build-testing\nfi\ncd build-testing\ncmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release   -DKDE_INSTALL_LIBDIR=lib -DKDE_INSTALL_USE_QT_SYS_PATHS=ON\nmake -j4\nsudo make install\n\necho \"Installing Lottie-QML\"\ncd $TOP\nif [[ ! -d lottie-qml ]] ; then\n    git clone https://github.com/kbroulik/lottie-qml\n    cd lottie-qml\n    mkdir build\nelse\n    cd lottie-qml\n    git pull\nfi\n\ncd build\ncmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release   -DKDE_INSTALL_LIBDIR=lib -DKDE_INSTALL_USE_QT_SYS_PATHS=ON\nmake\nsudo make install"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-08T14:45:23Z",
    "last_updated": "2024-09-18T02:59:25Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-simple-listener",
    "skill_id": null,
    "name": "ovos-simple-listener",
    "description": "`ovos-simple-listener` is a lightweight alternative to `ovos-dinkum-listener`. It handles wake word detection, voice activity detection (VAD), and speech-to-text (STT) transcription for the Open Voice OS (OVOS) framework.",
    "examples": [],
    "tags": [
      "audio",
      "library",
      "listener",
      "openvoiceos",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-simple-listener",
    "package_name": "ovos-simple-listener",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Install `ovos-simple-listener` with pip:\n\npip install ovos-simple-listener"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-24T08:07:38Z",
    "last_updated": "2026-01-23T15:23:02.100424Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-simple-listener-old",
    "skill_id": null,
    "name": "ovos-simple-listener-old",
    "description": "This is a fork with the intent to add bluetooth audio recording.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-simple-listener-old",
    "package_name": "ovos-simple-listener",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "To use `ovos-simple-listener`, clone this repository and install the necessary dependencies. You can do this using pip:\n\npip install ovos-simple-listener"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-21T17:21:13Z",
    "last_updated": "2026-01-23T15:23:02.100424Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "timonvanhasselt-ovos-skill-blackstories",
    "skill_id": null,
    "name": "ovos-skill-blackstories",
    "description": "An OpenVoiceOS  prototype skill of Black Riddles. You are playing against/with AI, but you can play with the whole family or friends.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-skill-blackstories",
    "package_name": "ovos-skill-blackstories",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-24T15:00:09Z",
    "last_updated": "2025-06-24T18:52:42Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-browser",
    "skill_id": null,
    "name": "ovos-skill-browser",
    "description": "Work-in-progress self-hosted web browser for OpenVoiceOS skills (fork of OVOS-skills-store).",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill-store",
      "wip"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-browser/master/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-browser",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-03T19:00:56Z",
    "last_updated": "2026-08-04T08:38:58Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "strugee-ovos-skill-ci-test",
    "skill_id": null,
    "name": "ovos-skill-ci-test",
    "description": "Information about your skill",
    "examples": [
      "Hello world",
      "How are you?",
      "Thank you"
    ],
    "tags": [
      "ovos skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/strugee/ovos-skill-ci-test",
    "package_name": "projen-mycroft-example",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "strugee",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-08-06T21:33:14Z",
    "last_updated": "2023-08-06T21:49:26Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-cmd",
    "skill_id": null,
    "name": "ovos-skill-cmd",
    "description": "A simple OVOS skill for launching shell scripts and system commands",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-cmd",
    "package_name": "ovos-skill-cmd",
    "pypi_version": "0.2.11",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 6,
    "forks": 5,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-cmd"
      },
      {
        "heading": "Configuration",
        "content": "Configure the skill in `settings.json`. Map a spoken phrase to a script or command under `alias`. For example:\n\n{\n  \"alias\": {\n    \"generate report\": \"/home/forslund/scripts/generate_report.sh\"\n  }\n}\n\nWith this setting, the phrase \"run script generate report\" makes the skill execute `/home/forslund/scripts/generate_report.sh`.\n\n### user\n\nSet `user` to run commands under a specific user's privileges:\n\n{\n  \"user\": \"ovos\"\n}\n\n### shell\n\nSet `shell` to control whether commands run through a shell. It defaults to `true`:\n\n{\n  \"shell\": false\n}\n\n### Full example\n\n{\n  \"user\": \"ovos\",\n  \"alias\": {\n    \"generate report\": \"/home/forslund/scripts/generate_report.sh\",\n    \"update system\": \"sudo apt update && sudo apt upgrade -y\",\n    \"reboot device\": \"sudo reboot\"\n  },\n  \"shell\": true\n}"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "executa l'ordre ___",
          "executa l'script ___"
        ]
      },
      "da-dk": {
        "examples": [
          "start kommando ___",
          "k\u00f8r script ___"
        ]
      },
      "de-de": {
        "examples": [
          "Starte Befehl ___",
          "Skript ausf\u00fchren ___"
        ]
      },
      "es-co": {
        "examples": [
          "comando de lanzamiento ___",
          "ejecutar script ___"
        ]
      },
      "es-es": {
        "examples": [
          "comando de lanzamiento ___",
          "ejecutar script ___"
        ]
      },
      "fa-ir": {
        "name": "Cmd",
        "description": "Run shell commands and scripts by voice. A command runs immediately, without a confirmation step.",
        "examples": [
          "launch command ___",
          "run script ___"
        ]
      },
      "fr-fr": {
        "examples": [
          "lance la commande ___",
          "ex\u00e9cute le script ___"
        ]
      },
      "gl-es": {
        "examples": [
          "iniciar comando ___",
          "executar script ___"
        ]
      },
      "it-it": {
        "examples": [
          "avvia comando ___",
          "esegui script ___"
        ]
      },
      "kab": {
        "examples": [
          "sekker askript ___",
          "sekker askript ___"
        ]
      },
      "nl-nl": {
        "examples": [
          "start commando ___",
          "voer script ___ uit"
        ]
      },
      "oc-fr": {
        "examples": [
          "executa l'\u00f2rdre ___",
          "executa l'script ___"
        ]
      },
      "pl-pl": {
        "name": "Cmd",
        "description": "Run shell commands and scripts by voice. A command runs immediately, without a confirmation step.",
        "examples": [
          "launch command ___",
          "run script ___"
        ]
      },
      "pt-br": {
        "examples": [
          "executar comando ___",
          "rodar script ___"
        ]
      },
      "pt-pt": {
        "examples": [
          "executar comando ___",
          "execute o script ___"
        ]
      },
      "ru-ru": {
        "name": "Cmd",
        "description": "Run shell commands and scripts by voice. A command runs immediately, without a confirmation step.",
        "examples": [
          "launch command ___",
          "run script ___"
        ]
      },
      "sv-se": {
        "examples": [
          "starta kommandot ___",
          "k\u00f6r skriptet ___"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-03-06T17:55:00Z",
    "last_updated": "2025-06-08T23:17:55.153335Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-cmd.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.11",
          "tested_at": "2026-10-04T11:06:21+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.11",
          "tested_at": "2026-10-04T10:45:43+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 8/8 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.9.0a4",
          "tested_at": "2026-10-30T08:59:08+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 8,
            "counted": 8
          }
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-ovos-skill-config-tool",
    "skill_id": null,
    "name": "ovos-skill-config-tool",
    "description": "Skill configuration UI for OpenVoiceOS/Neon.AI",
    "examples": [],
    "tags": [
      "status-active"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OscillateLabsLLC/ovos-skill-config-tool/main/ovos_skill_config/static/logo.svg",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-skill-config-tool",
    "package_name": "ovos-skill-config-tool",
    "pypi_version": "1.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 6,
    "forks": 3,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "OVOS Skill Config Tool",
        "content": "[![Status: Active](https://img.shields.io/badge/status-active-brightgreen)](https://github.com/OscillateLabsLLC/.github/blob/main/SUPPORT_STATUS.md)\n\nA modern web interface for configuring OpenVoiceOS and Neon AI skills, built with FastAPI, server-rendered Jinja2 templates, and htmx.\n\n## Features\n\n- Clean, intuitive UI for managing voice assistant skills\n- Support for skill-specific configuration settings\n- Dark mode support\n- Skill grouping and organization\n- Basic Authentication for security\n\n## Screenshots\n\n![OVOS Skill Config Interface](skills-interface.webp)\n\n## Technology Stack\n\n- **Backend**: FastAPI with server-rendered Jinja2 templates\n- **Frontend interactivity**: [htmx](https://htmx.org) (vendored, no CDN) plus a small vanilla JS helper\n- **Styling**: Hand-written CSS with dark\u2026"
      },
      {
        "heading": "official ovos-installer method.",
        "content": "python -m venv .venv\nsource .venv/bin/activate  # On Windows use `.venv\\Scripts\\activate`"
      },
      {
        "heading": "Install the tool",
        "content": "pip install ovos-skill-config-tool\n\n#### Running\n\nOnce installed, run the tool from your terminal (ensure your virtual environment is active if you used one):\n\novos-skill-config-tool\n\nThe application will be available at `http://0.0.0.0:8000` by default, which means every\ndevice on your network can reach it. Set `CONFIG_HOST=127.0.0.1` to allow only the machine\nit runs on, and `CONFIG_PORT` to change the port.\n\n#### Authentication (Pip Install)\n\nBy default, the application uses Basic Authentication with the credentials:\n\n- **Username**: `ovos`\n- **Password**: `ovos`\n\nYou can override these by setting environment variables _before_ running the application:\n\n- `OVOS_CONFIG_USERNAME`: Sets the username.\n- `OVOS_CONFIG_PASSWORD`: Sets the password.\n\nExample:\n\nexport OVOS_CONFIG_USERNAME=myuser\u2026"
      },
      {
        "heading": "Configuration File (`config.json`)",
        "content": "The UI behavior and logo configuration are controlled by a `config.json` file located within the container at `/app/static/config.json`. Create your own `config.json` file locally with the following structure:\n\n{\n  \"logo\": {\n    \"type\": \"image\", // \"image\" or \"text\"\n    \"src\": \"/my-logo.png\", // Path to the logo file *relative to /app/static* inside the container\n    \"alt\": \"My Custom Logo\", // Alt text for accessibility\n    \"width\": 32, // Optional, defaults to 32\n    \"height\": 32, // Optional, defaults to 32\n    \"text\": \"OVOS\" // Text to display if type is \"text\"\n  }\n  // Add other future configuration options here\n}\n\n**Important:** The `src` path for the logo should be relative to the static root (`/app/static`) within the container."
      },
      {
        "heading": "Developer Installation",
        "content": "1. Clone the repository:\n\ngit clone https://github.com/OscillateLabsLLC/ovos-skill-config-tool.git\ncd ovos-skill-config-tool\n\n2. Install dependencies:\n\nuv sync"
      },
      {
        "heading": "or: pip install .",
        "content": "## Development\n\nThis project uses [just](https://github.com/casey/just) as a command runner. Common commands:"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-21T00:51:14Z",
    "last_updated": "2026-11-09T01:44:05.101822Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "andlo-ovos-skill-count",
    "skill_id": null,
    "name": "ovos-skill-count",
    "description": "Archived - continued as OpenVoiceOS/ovos-skill-count",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/rocket.svg",
    "icon_source": "readme",
    "icon_color": "#DB4040",
    "source": "https://github.com/andlo/ovos-skill-count",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": true,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 12,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2018-10-05T19:13:32Z",
    "last_updated": "2026-09-27T09:12:44Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-count",
    "skill_id": null,
    "name": "ovos-skill-count",
    "description": "CountSkill is a skill for Open Voice OS (OVOS). It counts aloud from 1 to a number the user gives, or counts without a limit until stopped. It supports cardinal and ordinal formats and works offline, using ovos-number-parser to extract and pronounce numbers.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-count",
    "package_name": "ovos-skill-count",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-count"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2025-06-15T22:30:35Z",
    "last_updated": "2025-06-15T23:21:29.596074Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-count.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.2",
          "tested_at": "2026-10-04T11:07:11+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.2",
          "tested_at": "2026-10-04T10:46:20+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.6.2a3",
          "tested_at": "2026-10-30T08:59:18+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-ddg",
    "skill_id": null,
    "name": "ovos-skill-ddg",
    "description": "duck duck go skill",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-ddg/dev/ovos_skill_ddg/gui/all/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-ddg",
    "package_name": "ovos-skill-ddg",
    "pypi_version": "0.3.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-ddg"
      }
    ],
    "languages": [
      "ar-xa",
      "bg-bg",
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "et-ee",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fil-ph",
      "fr-fr",
      "gl-es",
      "he-il",
      "hr-hr",
      "hu-hu",
      "id-id",
      "it-it",
      "ja-jp",
      "kab",
      "ko-kr",
      "lt-lt",
      "lv-lv",
      "ms-my",
      "nb-no",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sk-sk",
      "sl-si",
      "sv-se",
      "th-th",
      "tr-tr",
      "uk-ua",
      "vi-vn",
      "zh-cn"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2020-12-09T06:10:40Z",
    "last_updated": "2026-04-21T22:51:13.132567Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-ddg.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.6",
          "tested_at": "2026-10-04T11:07:27+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.6",
          "tested_at": "2026-10-04T10:46:29+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.6.0a4",
          "tested_at": "2026-10-30T08:58:43+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "trueflint-ovos-skill-display-control",
    "skill_id": null,
    "name": "ovos-skill-display-control",
    "description": "Control your Open Voice OS display with your voice, and have it wake when you speak the wake word",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/smile.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/trueflint/ovos-skill-display-control",
    "package_name": "ovos-skill-display-control",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "trueflint",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-09T16:04:11Z",
    "last_updated": "2026-08-10T03:37:45Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-skill-esp32sat",
    "skill_id": null,
    "name": "ovos-skill-esp32sat",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-esp32sat",
    "package_name": "ovos-skill-esp32sat",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-10-11T15:11:58Z",
    "last_updated": "2025-10-12T20:01:00Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-ovos-skill-fallback-hivemind",
    "skill_id": null,
    "name": "ovos-skill-fallback-hivemind",
    "description": "When in doubt, ask a smarter OVOS install",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/ovos-skill-fallback-hivemind",
    "package_name": "ovos-skill-fallback-hivemind",
    "pypi_version": "0.0.0a10",
    "license": "Apache-2.0",
    "archived": true,
    "author": "JarbasHiveMind",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Under skill settings (`~/.config/mycroft/skills/skill-ovos-fallback-hivemind.openvoiceos/settings.json`) you can tweak some parameters for HiveMind Skill.\n\n{\n  \"name\": \"HiveMind\",\n  \"confirmation\": true,\n  \"slave_mode\": false,\n  \"allow_selfsigned\": false\n}\n\n| Option             | Value      | Description                                                                                                                                    |\n|--------------------|------------|------------------------------------------------------------------------------------------------------------------------------------------------|\n| `name`             | `HiveMind` | Name to give to the HiveMind AI assistant in the confirmation dialog                                                                           |\u2026"
      },
      {
        "heading": "HiveMind Setup",
        "content": "You need to register the skill in the HiveMind server\n$ hivemind-core add-client\nCredentials added to database!\n\nNode ID: 2\nFriendly Name: HiveMind-Node-2\nAccess Key: 5a9e580a2773a262cbb23fe9759881ff\nPassword: 9b247ca66c7cd2b6388ad49ca504279d\nEncryption Key: 4185240103de0770\nWARNING: Encryption Key is deprecated, only use if your client does not support password\n\nAnd then set the identity file in the satellite device (where the skill will run)\n$ hivemind-client set-identity --key 5a9e580a2773a262cbb23fe9759881ff --password 9b247ca66c7cd2b6388ad49ca504279d --host 0.0.0.0 --port 5678 --siteid test\nidentity saved: /home/miro/.config/hivemind/_identity.json\n\ncheck the created identity file if you like\n$ cat ~/.config/hivemind/_identity.json\n{\n    \"password\": \"9b247ca66c7cd2b6388ad49ca504279d\",\u2026"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-19T22:48:58Z",
    "last_updated": "2024-05-21T13:52:57.890315Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-fallback-unknown",
    "skill_id": null,
    "name": "ovos-skill-fallback-unknown",
    "description": "OpenVoiceOS official Unknown Fallback Skill - used if no Intent is matched to an Utterance",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/question.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-fallback-unknown",
    "package_name": "ovos-skill-fallback-unknown",
    "pypi_version": "0.1.9",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2021-12-08T18:28:54Z",
    "last_updated": "2025-06-09T20:23:40.872154Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-fallback-unknown.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.6",
          "tested_at": "2026-10-04T11:08:03+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.9",
          "tested_at": "2026-10-04T10:47:00+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.2a1",
          "tested_at": "2026-10-30T08:58:54+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "CSULB-CECS-Senior-Design-ovos-skill-gas",
    "skill_id": null,
    "name": "ovos-skill-gas",
    "description": "Get the PPM value from MQ-2 Sensor using Adafruit's ADS1015 breakout module",
    "examples": [
      "read sensor",
      "gas level",
      "Get gas level",
      "read the gas sensor",
      "What is the gas level?",
      "What is the gas level in the room?",
      "Am I in danger of gas poisoning?"
    ],
    "tags": [
      "ovos skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/CSULB-CECS-Senior-Design/ovos-skill-gas",
    "package_name": "ovos-skill-gas",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "CSULB-CECS-Senior-Design",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-13T21:55:30Z",
    "last_updated": "2024-04-27T06:55:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-ggwave",
    "skill_id": null,
    "name": "ovos-skill-ggwave",
    "description": "voice interface to control ggwave plugin",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-ggwave",
    "package_name": "ovos-skill-ggwave",
    "pypi_version": "0.3.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`ovos-skill-ggwave` is an OVOS skill. Install it with `pip`:\n\npip install ovos-skill-ggwave"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Habilitat GGWave",
        "description": "Interf\u00edcie de veu per al connector ggwave.",
        "examples": [
          "inicia ggwave",
          "permet dades d'\u00e0udio",
          "desactiva els codis d'\u00e0udio"
        ]
      },
      "da-dk": {
        "name": "GGGWave Skill",
        "description": "Stemmegr\u00e6nseflade til ggwave plugin.",
        "examples": [
          "start ggwave",
          "tillad lyddata",
          "deaktiver lydkoder"
        ]
      },
      "de-de": {
        "name": "GGWave Skill",
        "description": "Sprachschnittstelle f\u00fcr das ggwave-Plugin.",
        "examples": [
          "starte ggwave",
          "Audiodaten zulassen",
          "Audiocodes deaktivieren"
        ]
      },
      "es-co": {
        "name": "Habilidad GGWave",
        "description": "Interfaz de voz para el plugin GGWave",
        "examples": [
          "iniciar ggwave",
          "permitir datos de audio",
          "desactivar c\u00f3digos de audio"
        ]
      },
      "es-es": {
        "name": "Habilidad GGWave",
        "description": "Interfaz de voz para el plugin GGWave",
        "examples": [
          "Iniciar GGWave",
          "permitir datos de audio",
          "Deshabilitar c\u00f3digos de audio"
        ]
      },
      "eu-es": {
        "name": "GGWave gaitasuna",
        "description": "Ahots-interfazea ggwave pluginarentzat.",
        "examples": [
          "hasi ggwave",
          "onartu audio data",
          "desgaitu audio codes"
        ]
      },
      "fa-ir": {
        "name": "GGWave Skill",
        "description": "\u0631\u0627\u0628\u0637 \u0635\u0648\u062a\u06cc \u0628\u0631\u0627\u06cc \u0627\u0641\u0632\u0648\u0646\u0647 ggwave",
        "examples": [
          "\u0634\u0631\u0648\u0639 ggwave",
          "\u06a9\u062f \u0635\u0648\u062a\u06cc \u0631\u0648\u0634\u0646",
          "\u06a9\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\u06cc \u0631\u0627 \u062e\u0627\u0645\u0648\u0634 \u06a9\u0646\u06cc\u062f"
        ]
      },
      "fr-fr": {
        "name": "GGWave",
        "description": "Permet d'\u00e9changer des donn\u00e9es audio avec ggwave.",
        "examples": [
          "D\u00e9marre ggwave",
          "Autorise les donn\u00e9es audio",
          "D\u00e9sactive les codes audio"
        ]
      },
      "gl-es": {
        "name": "Habilidade GGWave",
        "description": "Interface de voz para o complemento ggwave.",
        "examples": [
          "iniciar ggwave",
          "permitir datos de audio",
          "desactivar c\u00f3digos de audio"
        ]
      },
      "it-it": {
        "name": "Skill GGWave",
        "description": "Interfaccia vocale per il plugin ggwave.",
        "examples": [
          "avvia dati audio",
          "attiva dati audio",
          "disattiva codici audio"
        ]
      },
      "kab": {
        "name": "Tazmert GGWave",
        "description": "Ugar n umeslay i uzegrir ggwave.",
        "examples": [
          "senker ggwave",
          "qbel isefka n umeslay",
          "sens tingalin n umeslay"
        ]
      },
      "nl-nl": {
        "name": "GGWave vaardigheid",
        "description": "Spraakinterface voor de ggwave plugin.",
        "examples": [
          "start ggwave",
          "sta audiogegevens toe",
          "schakel audiocodes uit"
        ]
      },
      "pl-pl": {
        "name": "GGWave Skill",
        "description": "Interfejs g\u0142osowy dla wtyczki ggwave.",
        "examples": [
          "rozpocznij ggwave",
          "kody audio w\u0142\u0105czone",
          "wy\u0142\u0105cz ggwave"
        ]
      },
      "pt-br": {
        "name": "Skill GGWave",
        "description": "Interface de voz para o plugin ggwave.",
        "examples": [
          "inicie ggwave",
          "permita dados de \u00e1udio",
          "desabilite c\u00f3digos de \u00e1udio"
        ]
      },
      "pt-pt": {
        "name": "Skill GGWave",
        "description": "Interface de voz para o plugin ggwave.",
        "examples": [
          "inicia ggwave",
          "permite dados de \u00e1udio",
          "desativa c\u00f3digos de \u00e1udio"
        ]
      },
      "ru-ru": {
        "name": "GGWave Skill",
        "description": "\u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u0430 ggwave.",
        "examples": [
          "\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c ggwave",
          "\u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0432\u0443\u043a\u043e\u0432\u043e\u0439 \u043a\u043e\u0434",
          "\u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0443\u0434\u0438\u043e\u0434\u0430\u043d\u043d\u044b\u0435"
        ]
      },
      "sv-se": {
        "name": "GGWave-f\u00e4rdighet",
        "description": "R\u00f6stgr\u00e4nssnitt f\u00f6r ggwave-pluginet.",
        "examples": [
          "starta ggwave",
          "till\u00e5t ljuddata",
          "inaktivera ljudkoder"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-03-17T21:53:27Z",
    "last_updated": "2024-11-19T21:23:54.261567Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-ggwave.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.4",
          "tested_at": "2026-10-04T11:07:22+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:45:37+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:00+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "trueflint-ovos-skill-goodnight",
    "skill_id": null,
    "name": "ovos-skill-goodnight",
    "description": "An OpenVoiceOS skill that connects to Home Assistant and controls a \"daytime mode\" input_boolean when you tell it good morning or good night",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/trueflint/ovos-skill-goodnight",
    "package_name": "ovos-skill-goodnight",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "trueflint",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-goodnight\n\nOr via `ovos-pip`:\n\novos-pip install ovos-skill-goodnight"
      },
      {
        "heading": "Configuration",
        "content": "Edit your skill settings file (typically `~/.config/mycroft/skills/ovos-skill-goodnight.tjlee/settings.json`) and set the following:\n\n{\n    \"hass_url\": \"http://homeassistant.local:8123\",\n    \"hass_api_token\": \"your-long-lived-access-token\",\n    \"hass_entity_id\": \"input_boolean.daytime_mode\"\n}\n\n| Setting | Default | Description |\n|---|---|---|\n| `hass_url` | `http://homeassistant.local:8123` | Base URL of your Home Assistant instance |\n| `hass_api_token` | *(required)* | Long-lived access token from your HA profile |\n| `hass_entity_id` | `input_boolean.daytime_mode` | The `input_boolean` entity to control |\n\n### Getting a Home Assistant Token\n\n1. In Home Assistant, go to your profile (bottom-left avatar)\n2. Scroll to **Long-Lived Access Tokens**\n3. Click **Create Token**, give it a name, an\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-09T16:22:23Z",
    "last_updated": "2026-06-05T02:13:23Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-skill-gui1-demo",
    "skill_id": null,
    "name": "ovos-skill-gui1-demo",
    "description": "An OVOS skill that shows every OVOS-GUI-1 template and surface, for render-backend conformance runs",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-skill-gui1-demo",
    "package_name": "ovos-skill-gui1-demo",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "The skill needs `ovos-workshop` and `ovos-bus-client`. The command below installs it into the isolated GUI-1 venv:\n\njust install          # uv pip install --python ~/.venvs/ovos-gui1/bin/python --no-deps -e .\n\nRestart the skills service after you install. ovos-core does not import a package that was installed after it started.\n\nSkill id: `ovos-skill-gui1-demo.oscillatelabs`. Entry point group: `opm.skill`."
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-27T22:51:11Z",
    "last_updated": "2026-10-27T22:51:15Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-skill-hello-world",
    "skill_id": null,
    "name": "ovos-skill-hello-world",
    "description": "OpenVoiceOS Hello World Skill - use this basic Skill to see how OpenVoiceOS Skills work. ",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/smile.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-hello-world",
    "package_name": "ovos-skill-hello-world",
    "pypi_version": "0.2.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 6,
    "forks": 8,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-hello-world"
      }
    ],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Hola m\u00f3n",
        "description": "Habilitat introduct\u00f2ria perqu\u00e8 els autors d'habilitats puguin veure com \u00e9s una habilitat d'OVOS",
        "examples": [
          "Hola m\u00f3n",
          "Gr\u00e0cies",
          "Com est\u00e0s?"
        ]
      },
      "cs-cz": {
        "name": "Ahoj sv\u011bte",
        "description": "\u00davodn\u00ed dovednost, d\u00edky kter\u00e9 auto\u0159i dovednost\u00ed vid\u00ed, jak je OVOS dovednost sestavena",
        "examples": [
          "Ahoj sv\u011bte",
          "D\u011bkuji",
          "Jak se m\u00e1\u0161?"
        ]
      },
      "da-dk": {
        "name": "Hello World",
        "description": "Introduktionsf\u00e6rdighed, s\u00e5 f\u00e6rdighedsforfattere kan se, hvordan en OVOS-f\u00e6rdighed er sat sammen",
        "examples": [
          "Hej verden",
          "Tak",
          "Hvordan har du det?"
        ]
      },
      "de-de": {
        "name": "Hello World",
        "description": "Einf\u00fchrungs-Skill, damit Skill-Autoren sehen k\u00f6nnen, wie ein OVOS-Skill zusammengestellt wird",
        "examples": [
          "Hello world",
          "Danke",
          "Wie geht es dir?"
        ]
      },
      "el-gr": {
        "name": "\u0393\u03b5\u03b9\u03b1 \u03c3\u03bf\u03c5 \u03ba\u03cc\u03c3\u03bc\u03b5",
        "description": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03b9\u03ba\u03ae \u03b4\u03b5\u03be\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 \u03ce\u03c3\u03c4\u03b5 \u03bf\u03b9 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03bf\u03af \u03b4\u03b5\u03be\u03b9\u03bf\u03c4\u03ae\u03c4\u03c9\u03bd \u03bd\u03b1 \u03b4\u03bf\u03c5\u03bd \u03c0\u03ce\u03c2 \u03c3\u03c5\u03bd\u03c4\u03af\u03b8\u03b5\u03c4\u03b1\u03b9 \u03bc\u03b9\u03b1 \u03b4\u03b5\u03be\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 OVOS",
        "examples": [
          "\u0393\u03b5\u03b9\u03b1 \u03c3\u03bf\u03c5 \u03ba\u03cc\u03c3\u03bc\u03b5",
          "\u0395\u03c5\u03c7\u03b1\u03c1\u03b9\u03c3\u03c4\u03ce",
          "\u03a0\u03ce\u03c2 \u03b5\u03af\u03c3\u03b1\u03b9;"
        ]
      },
      "es-co": {
        "name": "Hello World",
        "description": "Habilidad de muestra para que los autores de habilidades puedan ver c\u00f3mo se crea una habilidad OVOS",
        "examples": [
          "hola mundo",
          "gracias",
          "c\u00f3mo est\u00e1s"
        ]
      },
      "es-es": {
        "name": "Hello World",
        "description": "Habilidad de muestra para que los autores de habilidades puedan ver c\u00f3mo se crea una habilidad OVOS",
        "examples": [
          "Hola Mundo",
          "Gracias",
          "\u00bfC\u00f3mo est\u00e1s?"
        ]
      },
      "eu-es": {
        "name": "Kaixo mundua",
        "description": "Sarrerako trebetasuna, trebetasunen egileek OVOS trebetasun bat nola egiten den ikus dezaten",
        "examples": [
          "Kaixo mundua",
          "Eskerrik asko",
          "Zer moduz zaude?"
        ]
      },
      "fa-ir": {
        "name": "\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627",
        "description": "\u06cc\u06a9 \u0645\u0647\u0627\u0631\u062a \u0646\u0645\u0648\u0646\u0647 \u062a\u0627 \u062a\u0648\u0633\u0639\u0647\u200c\u062f\u0647\u0646\u062f\u0647\u200c\u0647\u0627 \u0628\u0641\u0647\u0645\u0646\u062f \u06cc\u06a9 \u0645\u0647\u0627\u0631\u062a OVOS \u0631\u0627 \u0633\u0631\u0647\u0645 \u06a9\u0646\u0646\u062f",
        "examples": [
          "\u0633\u0644\u0627\u0645 \u062f\u0646\u06cc\u0627",
          "\u0645\u0645\u0646\u0648\u0646",
          "\u0686\u0637\u0648\u0631\u06cc\u061f"
        ]
      },
      "fr-fr": {
        "name": "Bonjour le monde",
        "description": "Exemple d'introduction qui montre comment une skill OVOS est construite.",
        "examples": [
          "Bonjour le monde",
          "Merci bonjour le monde",
          "Bonjour le monde, comment vas-tu ?"
        ]
      },
      "gl-es": {
        "name": "Ola Mundo",
        "description": "Habilidade introdutiva para que as persoas programadoras de habilidades poidan ver como se monta unha habilidade OVOS",
        "examples": [
          "Ola mundo",
          "Grazas",
          "Como est\u00e1s?"
        ]
      },
      "hu-hu": {
        "name": "Hell\u00f3 vil\u00e1g",
        "description": "Bevezet\u0151 k\u00e9pess\u00e9g, hogy a k\u00e9pess\u00e9gfejleszt\u0151k l\u00e1ss\u00e1k, hogyan \u00e9p\u00fcl fel egy OVOS k\u00e9pess\u00e9g",
        "examples": [
          "Hell\u00f3 vil\u00e1g",
          "K\u00f6sz\u00f6n\u00f6m",
          "Hogy vagy?"
        ]
      },
      "it-it": {
        "name": "Ciao mondo",
        "description": "Skill introduttiva che mostra agli autori come \u00e8 fatta una skill OVOS",
        "examples": [
          "Ciao mondo",
          "Grazie",
          "Come stai?"
        ]
      },
      "kab": {
        "name": "Azul ay ama\u1e0dal",
        "description": "Tazmert n usentem i wid ara yebnun tizmirin OVOS akken ad walin amek i tettwabna",
        "examples": [
          "Azul ay ama\u1e0dal",
          "Tanemmirt",
          "Amek i tettili\u1e0d?"
        ]
      },
      "nl-nl": {
        "name": "Hallo wereld",
        "description": "Voorbeeld skill om ontwikkelaars te laten zien hoe een OVOS-skill ontwikkeld kan worden",
        "examples": [
          "Hallo wereld",
          "Bedankt",
          "Hoe is het met je?"
        ]
      },
      "oc-fr": {
        "name": "Adieu mond",
        "description": "Abiletat d'introduccion per que los autors d'abiletats vejan coss\u00ed es bastida una abiletat OVOS",
        "examples": [
          "Adieu mond",
          "Merc\u00e9s",
          "Coss\u00ed va?"
        ]
      },
      "pl-pl": {
        "name": "Witaj \u015bwiecie",
        "description": "Wprowadzaj\u0105ca umiej\u0119tno\u015b\u0107, dzi\u0119ki kt\u00f3rej autorzy umiej\u0119tno\u015bci widz\u0105, jak jest zbudowana umiej\u0119tno\u015b\u0107 OVOS",
        "examples": [
          "Witaj \u015bwiecie",
          "Dzi\u0119kuj\u0119",
          "Jak si\u0119 masz?"
        ]
      },
      "pt-br": {
        "name": "Ol\u00e1 Mundo",
        "description": "Skill introdut\u00f3ria para que os autores de skills possam ver como uma skill do OVOS \u00e9 elaborada",
        "examples": [
          "Ol\u00e1 mundo",
          "Obrigado",
          "Como vai voc\u00ea?"
        ]
      },
      "pt-pt": {
        "name": "Ol\u00e1 mundo",
        "description": "Habilidade introdut\u00f3ria para que os autores de habilidades vejam como se constr\u00f3i uma habilidade OVOS",
        "examples": [
          "Ol\u00e1 mundo",
          "Obrigado",
          "Como est\u00e1s?"
        ]
      },
      "ro-ro": {
        "name": "Salut lume",
        "description": "Abilitate introductiv\u0103 pentru ca autorii de abilit\u0103\u021bi s\u0103 vad\u0103 cum este alc\u0103tuit\u0103 o abilitate OVOS",
        "examples": [
          "Salut lume",
          "Mul\u021bumesc",
          "Ce mai faci?"
        ]
      },
      "ru-ru": {
        "name": "\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0438\u0440",
        "description": "\u0412\u0432\u043e\u0434\u043d\u044b\u0439 \u043d\u0430\u0432\u044b\u043a, \u0447\u0442\u043e\u0431\u044b \u0430\u0432\u0442\u043e\u0440\u044b \u043d\u0430\u0432\u044b\u043a\u043e\u0432 \u043c\u043e\u0433\u043b\u0438 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u043d\u0430\u0432\u044b\u043a OVOS",
        "examples": [
          "\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0438\u0440",
          "\u0421\u043f\u0430\u0441\u0438\u0431\u043e",
          "\u041a\u0430\u043a \u0434\u0435\u043b\u0430?"
        ]
      },
      "sv-se": {
        "name": "Hall\u00e5 v\u00e4rlden",
        "description": "Introduktionsf\u00e4rdighet s\u00e5 att f\u00e4rdighetsutvecklare kan se hur en OVOS-f\u00e4rdighet \u00e4r uppbyggd",
        "examples": [
          "Hall\u00e5 v\u00e4rlden",
          "Tack",
          "Hur m\u00e5r du?"
        ]
      },
      "tr-tr": {
        "name": "Merhaba d\u00fcnya",
        "description": "Beceri yazarlar\u0131n\u0131n bir OVOS becerisinin nas\u0131l bir araya geldi\u011fini g\u00f6rmesi i\u00e7in giri\u015f becerisi",
        "examples": [
          "Merhaba d\u00fcnya",
          "Te\u015fekk\u00fcr ederim",
          "Nas\u0131ls\u0131n?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-11-03T17:20:24Z",
    "last_updated": "2025-05-15T17:00:06.872548Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-hello-world.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.1",
          "tested_at": "2026-10-04T11:08:22+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.1",
          "tested_at": "2026-10-04T10:45:38+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 4/4 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.6.0a2",
          "tested_at": "2026-10-30T08:59:04+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 4,
            "counted": 4
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-homescreen",
    "skill_id": null,
    "name": "ovos-skill-homescreen",
    "description": "Provides the resting screen for OVOS",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-homescreen",
    "package_name": "ovos_skill_homescreen",
    "pypi_version": "3.0.3",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 10,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "### Settings\n\nConfigure the home screen with the standard [skill settings mechanism](https://openvoiceos.github.io/community-docs/115-ht_config_homescreen/).\n\nSample `settings.json` file with all options:\n\n{\n  \"weather_skill\": \"skill-weather.openvoiceos\",\n  \"datetime_skill\": \"skill-date-time.mycroftai\",\n  \"examples_skill\": \"ovos-skills-info.openvoiceos\",\n  \"wallpaper\": \"default.jpg\",\n  \"persistent_menu_hint\": true,\n  \"examples_enabled\": false,\n  \"randomize_examples\": true,\n  \"examples_prefix\": false\n}\n\n* `weather_skill`: the skill that shows the weather. Defaults to `skill-ovos-weather.openvoiceos`.\n* `datetime_skill`: the skill that shows the date and time. Defaults to `skill-ovos-date-time.openvoiceos`.\n* `examples_skill`: the skill that provides the displayed examples. Defaults to the `\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-06T13:45:51Z",
    "last_updated": "2025-06-08T23:07:14.408661Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-skill-homeyflowtrigger-web",
    "skill_id": null,
    "name": "ovos-skill-homeyflowtrigger-web",
    "description": "OVOS-skill die **Homey-flows start met een spraakopdracht**. Dit is de variant met een **ingebouwde",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/MenneBos/ovos-skill-homeyflowtrigger-web/main/homeyflow/web/static/img/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-homeyflowtrigger-web",
    "package_name": "ovos-skill-homeyflowtrigger-web",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installatie (Docker)",
        "content": "1. Maak de map voor je gegevens en zet je Homey-gegevens in `config/config.json`\n   (voorbeeld: `config.example.json`). Een API-key maak je in Homey onder *Instellingen \u2192 API-sleutels*.\n\n   {\n     \"homey\": { \"address\": \"http://192.168.1.50\", \"token\": \"<API-key>\" },\n     \"web\": { \"host\": \"0.0.0.0\", \"port\": 8200, \"allowed_hosts\": [] },\n     \"language\": \"nl-nl\",\n     \"training\": { \"mode\": \"live\", \"timeout\": 120 }\n   }\n\n   Adres en token kunnen ook via `HOMEYFLOW_HOMEY_ADDRESS` en `HOMEYFLOW_HOMEY_TOKEN`.\n   `language` moet overeenkomen met de taal waarin OVOS luistert (standaard `nl-nl`).\n\n2. Kopieer `.env.example` naar `.env` en vul het Docker-netwerk en de OVOS-config in.\n   Het voorbeeld in `docker-compose.yml` gaat uit van een extern netwerk (`OVOS_NETWORK`) en dezelfde\n   OVOS-configmap\u2026"
      }
    ],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-15T20:24:10Z",
    "last_updated": "2026-10-15T22:29:08Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "MenneBos-ovos-skill-HomeyWebhook",
    "skill_id": null,
    "name": "ovos-skill-HomeyWebhook",
    "description": "This skill is used to trigger flows on the homey using Webhooks.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-HomeyWebhook",
    "package_name": "ovos-skill-HomeyWebhook",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-22T23:22:04Z",
    "last_updated": "2025-05-30T14:21:28Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "Meminn-ovos-skill-http-demo",
    "skill_id": null,
    "name": "ovos-skill-http-demo",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/Meminn/ovos-skill-http-demo",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "Meminn",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-11-05T05:53:42Z",
    "last_updated": "2025-11-06T14:44:18Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-language-practice",
    "skill_id": null,
    "name": "ovos-skill-language-practice",
    "description": "Design doc: a language-practice skill idea, with a real technical investigation into what OVOS currently supports for multi-language speaking/listening",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-language-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:21:28Z",
    "last_updated": "2026-08-16T20:02:59Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-laugh",
    "skill_id": "ovos-skill-laugh.openvoiceos=ovos_skill_laugh:LaughSkill",
    "name": "ovos-skill-laugh",
    "description": "Laugh randomly or when requested.",
    "examples": [
      "Laugh like Alexa",
      "can you laugh"
    ],
    "tags": [
      "ovos",
      "skill",
      "voice",
      "assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-laugh/dev/res/icon/laugh_icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-laugh",
    "package_name": "ovos-skill-laugh",
    "pypi_version": "1.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 7,
    "forks": 9,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "gender",
        "type": "text",
        "label": "gender"
      },
      {
        "name": "haunted",
        "type": "text",
        "label": "true or false"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-laugh"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-es",
      "es-lm",
      "eu",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pt-br",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "description": "Riu aleat\u00f2riament o quan se li demana",
        "examples": [
          "riu com l'Alexa",
          "pots riure?"
        ]
      },
      "fr-fr": {
        "description": "Demandez \u00e0 votre assistant vocal de rire sur commande ou de mani\u00e8re al\u00e9atoire.",
        "examples": [
          "Ris comme Alexa",
          "Peux-tu rire ?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2018-03-09T16:28:33Z",
    "last_updated": "2026-08-19T00:36:48.032732Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-laugh.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.3",
          "tested_at": "2026-10-04T11:09:35+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.0",
          "tested_at": "2026-10-04T10:47:03+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 14/17 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "2.0.0a7",
          "tested_at": "2026-10-30T08:59:14+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "MenneBos-ovos-skill-light",
    "skill_id": null,
    "name": "ovos-skill-light",
    "description": "Issue 1: bij toggle gaat ie wel aan maar niet uit",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-light",
    "package_name": "ovos-skill-light",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-01T22:27:37Z",
    "last_updated": "2025-04-08T18:57:24Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "reklis-ovos-skill-mcp",
    "skill_id": null,
    "name": "ovos-skill-mcp",
    "description": "ovos skill fastmcp server",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/reklis/ovos-skill-mcp",
    "package_name": "ovos-skill-mcp",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "reklis",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-mcp\n\nOr install from source:\n\ngit clone https://github.com/OpenVoiceOS/ovos-skill-mcp.git\ncd ovos-skill-mcp\npip install -e ."
      },
      {
        "heading": "Setup Development Environment",
        "content": "git clone https://github.com/OpenVoiceOS/ovos-skill-mcp.git\ncd ovos-skill-mcp\npip install -e \".[dev]\""
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-08T19:32:25Z",
    "last_updated": "2026-01-08T19:56:31Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-morse-practice",
    "skill_id": null,
    "name": "ovos-skill-morse-practice",
    "description": "Design doc: a morse-code quiz skill idea, built as a dependency on ovos-skill-morse-code rather than duplicating its logic",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-morse-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:42:57Z",
    "last_updated": "2026-08-16T19:59:23Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "mike99mac-ovos-skill-mpc-mike99mac",
    "skill_id": null,
    "name": "ovos-skill-mpc-mike99mac",
    "description": "Mycroft music playing skill for mpc/mpd",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/mike99mac/ovos-skill-mpc-mike99mac",
    "package_name": "ovos-skill-mpc-mike99mac",
    "pypi_version": null,
    "license": "WTFPL",
    "archived": false,
    "author": "mike99mac",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-21T18:37:37Z",
    "last_updated": "2023-03-04T18:22:43Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-foxess-cloud",
    "skill_id": null,
    "name": "ovos-skill-my-foxess-cloud",
    "description": "OVOS skill to fetch data from FoxESS cloud from H3 inverter series users.",
    "examples": [],
    "tags": [
      "foxess",
      "openvoiceos",
      "ovos",
      "ovos-skills",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JoergZ2/ovos-skill-my-foxess-cloud",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "You have to edit settings.json of the skill. You will find it in your config folder in ```~/.config/mycroft/skills/ovos-skill-my-foxess-cloud.joergz2/settings.json``` It looks like:\n{\n    \"__mycroft_skill_firstrun\": false,\n    \"api_key\": \"12345678-9876-3541...\",\n    \"device_sn\": \"60SH......\",\n    \"time_zone\": \"Europe/Berlin\",\n    \"lang_specifics\": {\n        \"decimal_char\": \",\"\n    }\n}"
      }
    ],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-24T10:17:52Z",
    "last_updated": "2026-09-28T11:26:49Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-mpd",
    "skill_id": null,
    "name": "ovos-skill-my-mpd",
    "description": "Skill to control several MPD servers ",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JoergZ2/ovos-skill-my-mpd",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "JoergZ2",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-03-26T14:45:13Z",
    "last_updated": "2024-03-26T15:42:03Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-mpd-player",
    "skill_id": null,
    "name": "ovos-skill-my-mpd-player",
    "description": "OVOS skill to control MPD instances",
    "examples": [],
    "tags": [
      "mpd-client",
      "mpdclient",
      "openvoiceos",
      "ovos",
      "ovos-skills",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/list.svg",
    "icon_source": "readme",
    "icon_color": "#22A7F0",
    "source": "https://github.com/JoergZ2/ovos-skill-my-mpd-player",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "In virtualenv: ```pip install git+https://github.com/JoergZ2/ovos-skill-my-mpd-player```\n\nIn Docker container ovos_core from host ```docker exec ovos_core pip install git+https://github.com/JoergZ2/ovos-skill-my-mpd-player``` \n\nor with a Docker management environment using the internal console with the command line from virtualenv."
      },
      {
        "heading": "Configuration",
        "content": "At least there are three sections or main keys to configure the skill: \"radios\", \"translations\" and \"stations\". The first key is a stamdard OVOS key.\n\"radios\" contains as much sub-keys as there are MPD instances to control. Each radio key has the (spoken) name as main key and IP address and an optional key for a non standard port. If port is left empty standard port 6600 is used.\n\"translations\" is neede to translate some key words for database research from your language into MPD terms. See the example below. Keys (left) are my language, right MPD terms.\n\"stations\" is a key which is filled witcgh an dictionary of (spoken) station names and a position number from playlist. Note that the first position is 0 and not 1. You can use different names for the same postion if the station is known u\u2026"
      }
    ],
    "languages": [
      "de-de"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-05T15:47:45Z",
    "last_updated": "2026-09-29T09:23:34Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-samsungctl",
    "skill_id": null,
    "name": "ovos-skill-my-samsungctl",
    "description": "Skill for controlling of some Samsung TVs",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos",
      "ovos-skills",
      "samsungctl",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#22A7F0",
    "source": "https://github.com/JoergZ2/ovos-skill-my-samsungctl",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Skill configuration (settings.json)",
        "content": "* \"tv\": IP of your Samsung TV\n* \"port\": 55000 (default)\n* \"placement\": Room  (optional)\n* \"method\": legacy (for greatest compatibility)\n* \"rc_name\": (virtual) Name of voice RC\n* \"description\": Description (optional)\n* \"translations\" Language localization of cursor control and confirming selection or escaping a menu\n\nLocalization: Write the words without spaces after the comma, for example, in German: links,rechts,nach oben,nach unten,nehmen,verlassen. The spaces between 'nach' and 'oben' is ok. Today there is a localization for German only."
      }
    ],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-05T11:10:31Z",
    "last_updated": "2025-06-06T11:45:03Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-sqlite",
    "skill_id": null,
    "name": "ovos-skill-my-sqlite",
    "description": "OVOS skill filling and using a small and simple SQLite database",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos",
      "ovos-skills",
      "sqlite3",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/tools.svg",
    "icon_source": "readme",
    "icon_color": "#22A7F0",
    "source": "https://github.com/JoergZ2/ovos-skill-my-sqlite",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "Before using the first time you have to edit file settings.json. you find it under ```~/.config/mycroft/skills/ovos-skill-my-sqlite.joergz2```. Please add the absolute path to database folder and a name for database file:\n{\n    \"__mycroft_skill_firstrun\": false,\n    \"db_path\": \"/absolute/path/to/database_folder/\",\n    \"db_filename_01\": \"tools.db\",\n    \"db_filename_02\": \"\"\n}"
      }
    ],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-05T15:49:30Z",
    "last_updated": "2025-12-30T08:29:00Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos-skill-my-tasmota-mqtt",
    "skill_id": null,
    "name": "ovos-skill-my-tasmota-mqtt",
    "description": "OVOS skill controlling IoT devices with Tasmota firmware by MQTT",
    "examples": [],
    "tags": [
      "mqtt",
      "openvoiceos",
      "ovos",
      "ovos-skills",
      "tasmota",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JoergZ2/ovos-skill-my-tasmota-mqtt",
    "package_name": "ovos-skill-my-tasmota-mqtt",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration/setup",
        "content": "### Basic settings\nIt's a clean JSON file. Be carefully. It does not forgive mistakes and delets all!\n{\n    \"__mycroft_skill_firstrun\": false,\n    \"protocol\": \"mqtt\",\n    \"user\": \"admin\",\n    \"password\": \"joker\",\n    \"mqtthost\": \"IP.OF.MQTT.HOST\",\n    \"mqttport\": 1883,\n    \"tasmota_mqtt_modus\": \"homeassistant\",\n    \"capitalization\": true,\n    ...\n}\nLine 1: standard from OVOS\nLine 2: choose \"mqtt\" or \"http\" (actually not implemented)\nLine 3 and line 4: standard user and password for using web interface, change if necessessary - only fpr http communication (actually not installed)\nLine 5: Ip of MQTT host\nLine 6: MQTT port\nLine 7: Choice between the %prefix%/%topic%/ (\"default\") or %topic%/%prefix%/ (\"homeassistant\")\nLine 8: if using MQTT names beginning with capitals use 'true' else 'false'"
      },
      {
        "heading": "Configuration/Setup",
        "content": "### MQTT-Settings\n* IP des MQTT-Brokers eingeben\n* Portnummer des MQTT-Brokers eingeben (1883 ist vorbelegt)\n\n### Tasmota FullTopicSyntax\n* Auswahl zwischen dem Typ %prefix%/%topic%/ (vorbelegt) oder %topic%/%prefix%/ (Homeassstant bzw. setoption19 Typ)\n\n### Capitalization\nFalls die Topics mit einem Gro\u00dfbuchstaben anfangen, dann diese Checkbox w\u00e4hlen. Es werden dann ALLE Topics (= devices, = Ger\u00e4te) mit einem f\u00fchrenden Gro\u00dfbuchstaben erzeugt. Das bedeutet gleichzeitig, dass kein weiterer Gro\u00dfbuchstabe z. B. wie TH10/TH16 oder POW NICHT vorkommen darf.\n\nDies bezieht sich allerdings auch auf die Schreibweise der auszuwertenden Sensordaten (Datei SensorKeywords.voc) \n\nWeitere Hinweise im Wiki"
      }
    ],
    "languages": [
      "de-de",
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-05T15:51:34Z",
    "last_updated": "2026-09-26T10:29:59Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-nameday",
    "skill_id": null,
    "name": "ovos-skill-nameday",
    "description": "Design doc: name-day (navnedag) skill for OVOS - multi-locale, not Danish-specific",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-nameday",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-18T14:52:09Z",
    "last_updated": "2026-08-18T15:04:52Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-nato-practice",
    "skill_id": null,
    "name": "ovos-skill-nato-practice",
    "description": "Design doc: a NATO phonetic alphabet quiz skill idea, built as a dependency on ovos-skill-nato-alphabet rather than duplicating its logic",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-nato-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:43:07Z",
    "last_updated": "2026-08-16T19:59:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-note-practice",
    "skill_id": null,
    "name": "ovos-skill-note-practice",
    "description": "Design doc: a musical note-recognition quiz skill idea, built as a dependency on ovos-skill-tuning-fork rather than duplicating its logic",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-note-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:43:19Z",
    "last_updated": "2026-08-16T19:59:20Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "realliljennie-a11y-ovos-skill-nursery-mode",
    "skill_id": null,
    "name": "ovos-skill-nursery-mode",
    "description": "Nursery Mode skill for Open Voice OS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/realliljennie-a11y/ovos-skill-nursery-mode",
    "package_name": "ovos-skill-nursery-mode",
    "pypi_version": null,
    "license": "OFL-1.1",
    "archived": false,
    "author": "realliljennie-a11y",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-08T05:14:22Z",
    "last_updated": "2026-05-09T01:55:08Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-skill-ObsidianAddNote",
    "skill_id": null,
    "name": "ovos-skill-ObsidianAddNote",
    "description": "An OVOS skill using OVOS-persona ",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-ObsidianAddNote",
    "package_name": "ovos-skill-ObsidianAddNote",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-08-30T13:40:16Z",
    "last_updated": "2025-09-07T10:05:25Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "jaredcobb-ovos-skill-openai",
    "skill_id": null,
    "name": "ovos-skill-openai",
    "description": "An OVOS fallback skill for interacting with the OpenAI API",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/jaredcobb/ovos-skill-openai",
    "package_name": "ovos-skill-openai",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "jaredcobb",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "To install the `ovos-skill-openai` skill, run the following command:\n\npip3 install git+https://github.com/jaredcobb/ovos-skill-openai.git"
      },
      {
        "heading": "Configuration",
        "content": "The `settings.json` configuration file may contain the following properties. Only `api_key` is required:\n\n- `api_key`: Your OpenAI API key [REQUIRED]\n- `model`: The OpenAI GPT model you wish to use (default is \"gpt-3.5-turbo\")\n- `system_prompt`: The system prompt for initiating conversations with the GPT model. This is how you give the model some personality. We have a basic default.\n- `wait_timeout`: The maximum amount of time OVOS should wait while speaking dialog to you. Some ChatGPT responses may take a while to finish.\n- `audio_files`: An array of audio files (one or many) to shuffle and play while we wait for the OpenAI response. The `gpt-4` model is particularly slow at times. This gives the user some feedback that it's processing. Must be an absolute path to a file on the device. A\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-10-29T18:55:21Z",
    "last_updated": "2023-12-17T22:46:54Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-skill-openhab",
    "skill_id": "ovos-skill-openhab.mikejgray=ovos_skill_openhab:openHABSkill",
    "name": "ovos-skill-openhab",
    "description": "This skill adds [openHAB](http://www.openhab.org/) support to [OVOS](https://openvoiceos.org). The skill takes advantage of the openHAB REST API, so it works both with the v1.x and v2.x of openHAB. In order to make openHAB Items accessible to OVOS/Neon, they need to be [tagged](https://www.openhab.org/addons/integrations/homekit/). Device names recognized by OVOS/Neon are matched against openHAB Item Labels. The above examples would all work with the following set of openHAB Item definitons: ```java Color DiningroomLight \"Diningroom Light\" <light> (gKitchen) [ \"Lighting\" ] {channel=\"hue:0200:1:bloom1:color\"} Color KitchenLight \"Kitchen Light\" <light> (gKitchen) [ \"Lighting\" ] {channel=\"hue:0200:1:bloom1:color\"} Switch GoodNight \"Good Night\"\t[ \"Switchable\" ] Number MqttID1Temperature \"Bedroom Temperature\" <temperature> [ \"CurrentTemperature\" ] {mqtt=\"<[mosquitto:mysensors/SI/1/1/1/0/0:state:default]\"} Number MqttID1Humidity \"Bedroom Humidity\" [ \"CurrentHumidity\" ] {mqtt=\"<[mosquitto:mysensors/SI/1/0/1/0/1:state:default]\"} Group gThermostat \"Main Thermostat\" [ \"gMainThermostat\" ] Number MainThermostatCurrentTemp \"Main Thermostat Current Temperature\" (gMainThermostat) [ \"CurrentTemperature\" ] Number MainThermostatTargetTemperature \"Main Thermostat Target Temperature\" (gMainThermostat) [ \"TargetTemperature\" ] String MainThermostatHeatingCoolingMode \"Main Thermostat Heating/Cooling Mode\" (gMainThermostat) [ \"homekit:HeatingCoolingMode\" ] ``` If items are modified in openHAB, a refresh in OVOS/Neon is needed by the command: - *\"Hey Mycroft/Neon, refresh openhab items\"* If you've forgotten what items have been identified, you can ask OVOS/Neon: - *\"Hey Mycroft/Neon, list openhab items\"*",
    "examples": [
      "Hey Mycroft/Neon, turn on Diningroom Light",
      "Hey Mycroft/Neon, switch off Kitchen Light",
      "Hey Mycroft/Neon, put on Good Night",
      "Hey Mycroft/Neon, what is Good Night status?",
      "Hey Mycroft/Neon, what is the status of Good Night?",
      "Hey Mycroft/Neon, set Diningroom to 50 percent",
      "Hey Mycroft/Neon, dim Kitchen",
      "Hey Mycroft/Neon, bright Kitchen",
      "Hey Mycroft/Neon, dim Kitchen by 20 percent",
      "Hey Mycroft/Neon, what's Bedroom temperature?",
      "Hey Mycroft/Neon, tell me the temperature of Bedroom",
      "Hey Mycroft/Neon, what's the Bedroom humidity?",
      "Hey Mycroft/Neon, I'd like to know the humidity of Bedroom",
      "Hey Mycroft/Neon, adjust Main Thermostat to 21 degrees",
      "Hey Mycroft/Neon, regulate Main Thermostat to 20 degrees",
      "Hey Mycroft/Neon, decrease Main Thermostat by 2 degrees",
      "Hey Mycroft/Neon, increase Main Thermostat by 1 degrees",
      "Hey Mycroft/Neon, what is Main Thermostat is regulated to?",
      "Hey Mycroft/Neon, how the Main Thermostat tuned to?"
    ],
    "tags": [
      "ovos",
      "skill",
      "voice",
      "assistant"
    ],
    "category": "Other",
    "icon": "https://www.openhab.org/openhab-logo-square.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-skill-openhab",
    "package_name": "ovos-skill-openhab",
    "pypi_version": null,
    "license": "EPL-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "In OVOS and Neon, skill installation occurs via pip. To install the openHAB skill, run the following command:\n\npip install git+https://github.com/mikejgray/ovos-skill-openhab\n\nIn Neon, skill installation must happen in `~/.config/neon/neon.yaml` to persist:\n\nskills:\n  default_skills:\n    - git+https://github.com/mikejgray/ovos-skill-openhab\n\nIf `skills.default_skills` doesn't exist, add it. If it does, you only need to add the last line.\n\nIf you're running Neon, please note you will also need to blacklist the Home Assistant skill as it shares some intents with this skill: \n \nskills: \n  blacklisted_skills: \n    - neon_homeassistant_skill.mikejgray \n\nAfter installation, the skill needs to be configured. In Neon, the path is `~/.config/neon/skills/ovos-skill-openhab.mikejgray/settings.json`.\u2026"
      }
    ],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "it-it"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-03T02:21:32Z",
    "last_updated": "2026-03-17T04:01:27Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "Dante1975X-ovos-skill-openhab1",
    "skill_id": "ovos-skill-openhab.mikejgray=ovos_skill_openhab:openHABSkill",
    "name": "ovos-skill-openhab",
    "description": "This skill adds [openHAB](http://www.openhab.org/) support to [OVOS](https://openvoiceos.org). The skill takes advantage of the openHAB REST API, so it works both with the v1.x and v2.x of openHAB. In order to make openHAB Items accessible to OVOS/Neon, they need to be [tagged](https://www.openhab.org/addons/integrations/homekit/). Device names recognized by OVOS/Neon are matched against openHAB Item Labels. The above examples would all work with the following set of openHAB Item definitons: ```java Color DiningroomLight \"Diningroom Light\" <light> (gKitchen) [ \"Lighting\" ] {channel=\"hue:0200:1:bloom1:color\"} Color KitchenLight \"Kitchen Light\" <light> (gKitchen) [ \"Lighting\" ] {channel=\"hue:0200:1:bloom1:color\"} Switch GoodNight \"Good Night\"\t[ \"Switchable\" ] Number MqttID1Temperature \"Bedroom Temperature\" <temperature> [ \"CurrentTemperature\" ] {mqtt=\"<[mosquitto:mysensors/SI/1/1/1/0/0:state:default]\"} Number MqttID1Humidity \"Bedroom Humidity\" [ \"CurrentHumidity\" ] {mqtt=\"<[mosquitto:mysensors/SI/1/0/1/0/1:state:default]\"} Group gThermostat \"Main Thermostat\" [ \"gMainThermostat\" ] Number MainThermostatCurrentTemp \"Main Thermostat Current Temperature\" (gMainThermostat) [ \"CurrentTemperature\" ] Number MainThermostatTargetTemperature \"Main Thermostat Target Temperature\" (gMainThermostat) [ \"TargetTemperature\" ] String MainThermostatHeatingCoolingMode \"Main Thermostat Heating/Cooling Mode\" (gMainThermostat) [ \"homekit:HeatingCoolingMode\" ] ``` If items are modified in openHAB, a refresh in OVOS/Neon is needed by the command: - *\"Hey Mycroft/Neon, refresh openhab items\"* If you've forgotten what items have been identified, you can ask OVOS/Neon: - *\"Hey Mycroft/Neon, list openhab items\"*",
    "examples": [
      "Hey Mycroft/Neon, turn on Diningroom Light",
      "Hey Mycroft/Neon, switch off Kitchen Light",
      "Hey Mycroft/Neon, put on Good Night",
      "Hey Mycroft/Neon, what is Good Night status?",
      "Hey Mycroft/Neon, what is the status of Good Night?",
      "Hey Mycroft/Neon, set Diningroom to 50 percent",
      "Hey Mycroft/Neon, dim Kitchen",
      "Hey Mycroft/Neon, bright Kitchen",
      "Hey Mycroft/Neon, dim Kitchen by 20 percent",
      "Hey Mycroft/Neon, what's Bedroom temperature?",
      "Hey Mycroft/Neon, tell me the temperature of Bedroom",
      "Hey Mycroft/Neon, what's the Bedroom humidity?",
      "Hey Mycroft/Neon, I'd like to know the humidity of Bedroom",
      "Hey Mycroft/Neon, adjust Main Thermostat to 21 degrees",
      "Hey Mycroft/Neon, regulate Main Thermostat to 20 degrees",
      "Hey Mycroft/Neon, decrease Main Thermostat by 2 degrees",
      "Hey Mycroft/Neon, increase Main Thermostat by 1 degrees",
      "Hey Mycroft/Neon, what is Main Thermostat is regulated to?",
      "Hey Mycroft/Neon, how the Main Thermostat tuned to?"
    ],
    "tags": [
      "ovos",
      "skill",
      "voice",
      "assistant"
    ],
    "category": "Other",
    "icon": "https://www.openhab.org/openhab-logo-square.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/Dante1975X/ovos-skill-openhab1",
    "package_name": "ovos-skill-openhab",
    "pypi_version": null,
    "license": "EPL-2.0",
    "archived": false,
    "author": "Dante1975X",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "In OVOS and Neon, skill installation occurs via pip. To install the openHAB skill, run the following command:\n\npip install git+https://github.com/mikejgray/ovos-skill-openhab\n\nIn Neon, skill installation must happen in `~/.config/neon/neon.yaml` to persist:\n\nskills:\n  default_skills:\n    - git+https://github.com/mikejgray/ovos-skill-openhab\n\nIf `skills.default_skills` doesn't exist, add it. If it does, you only need to add the last line.\n\nIf you're running Neon, please note you will also need to blacklist the Home Assistant skill as it shares some intents with this skill: \n \nskills: \n  blacklisted_skills: \n    - neon_homeassistant_skill.mikejgray \n\nAfter installation, the skill needs to be configured. In Neon, the path is `~/.config/neon/skills/ovos-skill-openhab.mikejgray/settings.json`.\u2026"
      }
    ],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "it-it"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-14T11:07:50Z",
    "last_updated": "2025-12-21T12:57:45Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-openvscode",
    "skill_id": null,
    "name": "ovos-skill-openvscode",
    "description": "Run VS Code on your Mycroft device and access it in a browser.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-openvscode",
    "package_name": "ovos-skill-openvscode",
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "How to install",
        "content": "The skill isnt yet in the mycroft market.\n\npip install https://github.com/andlo/ovos-skill-openvscode.git\n\nThis will install the skill, and first thing the skil does, is installing OpenVScode-server. During this installation\nit will download precompiled package and extract it. \n\nThe skille should install and work on any arm and x86 platform running OVOS \n\nAfter installation, there should be a log info saying \"OpenVSCode-server installed OK\" and OVOS should tell \nyou by voice that he has installed the skill.\nYou can then open a web-browser and go to http://<device>:<port>/?tkn=<token> where <device> is the hostname of the\ndevice, port is the portnumber (standard 3000) and token is accestoken (standard 1234).\n\nExample:\nhttp://ovso.local:3000/?tkn=1234\n\nThere are some settings that kan be set\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-28T23:01:11Z",
    "last_updated": "2024-03-30T22:31:08Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-pokepedia",
    "skill_id": null,
    "name": "ovos-skill-pokepedia",
    "description": "OVOS Pok\u00e9mon Battle Assistant \u2014 child-friendly voice queries against PokeAPI (en-US/es-ES/fr-FR/it-IT). Fork of denix's original on Codeberg.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-pokepedia",
    "package_name": "ovos-skill-pokepedia",
    "pypi_version": "0.1.4",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-pokepedia"
      },
      {
        "heading": "Install the skill and test dependencies",
        "content": "pip install -e '.[test]'"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk contra muk",
          "pokemon muk",
          "moviments de muk",
          "quin tipus \u00e9s el pokemon muk"
        ]
      },
      "da-dk": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "pokemon muk",
          "angrebsliste for muk",
          "hvilken type er pokemonen muk"
        ]
      },
      "de-de": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk gegen muk",
          "pokemon muk",
          "welcher typ ist das pokemon muk"
        ]
      },
      "es-co": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk vs muk",
          "pokemon muk"
        ]
      },
      "es-es": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk vs muk",
          "pokemon muk"
        ]
      },
      "eu-es": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "konparatu muk eta muk",
          "pokemon muk",
          "mukren erasoak",
          "zein motakoa da muk pokemona"
        ]
      },
      "fa-ir": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk vs muk",
          "\u067e\u0648\u06a9\u062f\u06a9\u0633 muk",
          "\u062d\u0631\u06a9\u062a \u0627\u0632 muk",
          "\u0646\u0648\u0639 \u067e\u0648\u06a9\u0645\u0648\u0646 muk"
        ]
      },
      "fr-fr": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "abo vs abo",
          "pok\u00e9mon abo"
        ]
      },
      "gl-es": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk contra muk",
          "pokemon muk",
          "movementos de muk",
          "que tipo \u00e9 o pokemon muk"
        ]
      },
      "it-it": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk vs muk",
          "pokemon muk"
        ]
      },
      "kab": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk mgal muk",
          "pokemon muk",
          "ti\u0263awsiwin n muk",
          "pokemon muk d anaw acu-t"
        ]
      },
      "nl-nl": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk tegen muk",
          "pokemon muk",
          "aanvallen van muk",
          "welk type is de pokemon muk"
        ]
      },
      "pl-pl": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk ws muk",
          "pokedex muk",
          "ruchy muk",
          "rodzaj pokemon muk"
        ]
      },
      "pt-br": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk contra muk",
          "pokemon muk",
          "golpes de muk",
          "que tipo \u00e9 o pokemon muk"
        ]
      },
      "pt-pt": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk vs muk",
          "pokemon muk"
        ]
      },
      "ru-ru": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk \u043f\u0440\u043e\u0442\u0438\u0432 muk",
          "\u043f\u043e\u043a\u0435\u043c\u043e\u043d muk",
          "\u0414\u0432\u0438\u0433\u0430\u0439\u0441\u044f. muk",
          "\u0442\u0438\u043f \u043f\u043e\u043a\u0435\u043c\u043e\u043d\u0430 muk"
        ]
      },
      "sv-se": {
        "name": "Pokepedia",
        "description": "Answer questions about Pokemon and compare two of them by type advantage.",
        "examples": [
          "muk mot muk",
          "pokemon muk",
          "vilken typ \u00e4r pokemonen muk"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2026-05-12T15:30:53Z",
    "last_updated": "2026-05-12T18:23:26.079186Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-pokepedia.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't load",
          "state": "fail",
          "level": 1,
          "version_tested": "0.1.4",
          "tested_at": "2026-10-04T11:09:59+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.4",
          "tested_at": "2026-10-04T10:47:19+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T09:01:03+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-randomness",
    "skill_id": "skill-ovos-randomness.openvoiceos=skill_ovos_randomness:RandomnessSkill",
    "name": "ovos-skill-randomness",
    "description": "A skill for all kinds of chance - make a choice, roll a die, flip a coin, pick between two choices, etc. Accepts a single property: `die_limit`, which is the maximum number of dice that can be rolled at once. The default is 16. `~/.config/mycroft/skills/skill-randomness.openvoiceos/settings.json` ```json {   \"die_limit\": 16 } ```",
    "examples": [
      "Flip a coin",
      "Tell me my future",
      "Help me decide something",
      "Pick a number between 1 and 100",
      "Roll a die",
      "Roll 1 d 20",
      "Roll 6 d 8",
      "Roll a 20 sided die",
      "Roll 5 dice",
      "Roll 6, 8 sided dice"
    ],
    "tags": [
      "ovos",
      "skill",
      "voice",
      "assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-randomness",
    "package_name": "ovos-skill-randomness",
    "pypi_version": "1.1.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "die_limit",
        "type": "number",
        "label": "Max number of dice to roll at once"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-randomness"
      },
      {
        "heading": "Configuration",
        "content": "The skill accepts one property, `die_limit`. This property sets the maximum number of dice you can roll at once. The default is 16.\n\nSet it in `~/.config/mycroft/skills/skill-randomness.openvoiceos/settings.json`:\n\n{\n  \"die_limit\": 16\n}"
      }
    ],
    "languages": [
      "da-dk",
      "en-us",
      "eu-es",
      "fr-fr",
      "gl-es",
      "kab",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-02-09T03:28:09Z",
    "last_updated": "2026-08-19T00:31:58.581157Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-ovos-randomness.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.2",
          "tested_at": "2026-10-04T11:10:15+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.0",
          "tested_at": "2026-10-04T10:47:30+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.0.2a8",
          "tested_at": "2026-10-30T09:01:06+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-sampler",
    "skill_id": null,
    "name": "ovos-skill-sampler",
    "description": "Design doc: a live-looping sampler skill idea, investigated and concluded not buildable on OVOS today - documented for the reasoning, not as a roadmap",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-sampler",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T20:53:28Z",
    "last_updated": "2026-08-16T20:53:30Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-science-practice",
    "skill_id": null,
    "name": "ovos-skill-science-practice",
    "description": "Design doc: a science-facts and quiz skill idea, with offline data sourcing investigated (periodic table, solar system, physical constants)",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-science-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:34:27Z",
    "last_updated": "2026-08-16T19:59:16Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-skill-skyradio",
    "skill_id": null,
    "name": "ovos-skill-skyradio",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-skyradio",
    "package_name": "ovos-skill-skyradio",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "nl-nl"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-01T22:28:06Z",
    "last_updated": "2025-03-22T00:15:10Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "CSULB-CECS-Senior-Design-ovos-skill-sms",
    "skill_id": null,
    "name": "ovos-skill-sms",
    "description": "Mycroft will text one phone number a predifined text when asked. This skill is used in conjunction with [Waveshare's SIM7600X HAT](https://www.waveshare.com/sim7600a-h-4g-hat.htm). Essentially, when OVOS recognizes an intent, the skill will create a SIM7600X object and call its send message function with a predefined string. ### Demo https://youtu.be/Me-3pXEmSA8",
    "examples": [],
    "tags": [
      "ovos skill sms texting"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/CSULB-CECS-Senior-Design/ovos-skill-sms",
    "package_name": "ovos-skill-sms",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "CSULB-CECS-Senior-Design",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-03-10T19:52:09Z",
    "last_updated": "2024-04-30T04:15:02Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-spelling-practice",
    "skill_id": null,
    "name": "ovos-skill-spelling-practice",
    "description": "Design doc: a spelling recitation and quiz skill idea - surfaces a real open question about whether STT can reliably hear individually-spoken letters",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-spelling-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:52:39Z",
    "last_updated": "2026-08-16T19:59:24Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-spotify",
    "skill_id": null,
    "name": "ovos-skill-spotify",
    "description": "[DEPRECATED \u2014 ARCHIVED] Replaced by the MediaProvider plugin 'ovos-media-provider-spotify' (pip install ovos-media-provider-spotify), configured under intents.ovos-ocp-pipeline-plugin.media_providers \u2014 no longer installed as a skill.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill",
      "spotify"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-spotify",
    "package_name": "ovos-skill-spotify",
    "pypi_version": "0.1.10",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 4,
    "forks": 2,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "Install and configure the companion plugin [ovos-media-plugin-spotify](https://github.com/OpenVoiceOS/ovos-media-plugin-spotify)\n\n`pip install ovos-media-plugin-spotify`\n\nthis skill only handles the voice search, plugin is needed to handle playback of spotify uris provided by this skill"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-07-15T13:38:36Z",
    "last_updated": "2025-06-13T05:51:41.269105Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "MenneBos-ovos-skill-spotifypl",
    "skill_id": null,
    "name": "ovos-skill-spotifypl",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MenneBos/ovos-skill-spotifypl",
    "package_name": "ovos-skill-spotifypl",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "MenneBos",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-01T22:28:35Z",
    "last_updated": "2025-03-08T00:14:04Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-ovos-skill-stability-ai",
    "skill_id": null,
    "name": "ovos-skill-stability-ai",
    "description": "A skill for OpenVoiceOS to generate AI images via Stability AI",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/femelo/ovos-skill-stability-ai",
    "package_name": "ovos-skill-stability-ai",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "femelo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 7,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Under skill settings you can tweak some parameters for Stability AI API.\n\n| Option          | Value                                                                  | Description                                                   |\n| --------------- | ---------------------------------------------------------------------- | ---------------------------------------                       |\n| `api_key`       | `your-stability-ai-api-key`                                            | Your `API key` to query Stability AI                          |\n| `model`         | `sdxl_v1.0`                                                            | Model (`sdxl_v1.0`, `sd_v1.6`, `sd_beta`)                     |\n| `style_preset`  | `fantasy-art`                                                          | Style\u2026"
      },
      {
        "heading": "Configuration file",
        "content": "The skill utilizes the `~/.config/mycroft/skills/ovos-skill-stability-ai.femelo/settings.json` file which allows you to configure it.\n\n### Configuration for the skill\n\n{\n  \"api_key\": \"{your-stability-ai-api-key}\",\n  \"model\": \"sdxl_v1.0\",\n  \"style_preset\": \"fantasy-art\",\n  \"__mycroft_skill_firstrun\": false\n}"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-06-01T01:56:20Z",
    "last_updated": "2026-02-10T19:23:09Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-trivia-quiz",
    "skill_id": null,
    "name": "ovos-skill-trivia-quiz",
    "description": "Design doc: a general-knowledge trivia quiz/game skill idea - hybrid offline/online architecture following ovos-skill-sound-like's own precedent",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-trivia-quiz",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:49:22Z",
    "last_updated": "2026-08-16T19:49:27Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-unit-practice",
    "skill_id": null,
    "name": "ovos-skill-unit-practice",
    "description": "Design doc: a unit-conversion quiz skill idea, built as a dependency on ovos-skill-convert rather than duplicating its logic",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-unit-practice",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T19:43:30Z",
    "last_updated": "2026-08-16T19:59:19Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "greennosedmule-ovos-skill-waggle",
    "skill_id": null,
    "name": "ovos-skill-waggle",
    "description": "Phone actions for OpenVoiceOS over HiveMind: the Waggle protocol, library and hub plugin",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/greennosedmule/ovos-skill-waggle",
    "package_name": "ovos-skill-waggle",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "greennosedmule",
    "tier": 2,
    "component_type": "Toolbox Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install on a hub",
        "content": "Needs ovos-core 3.x (the OVOS alphas; tested with 3.7.4a1). Install the package into ovos-core's environment, which registers the `opm.pipeline` plugin `ovos-waggle-pipeline-plugin` and the `opm.agents.toolbox` plugin `ovos-waggle-tools`, and add its stage to `intents.pipeline` in `mycroft.conf`, right after the converse stage:\n\n\"pipeline\": [\"\u2026\", \"ovos-converse-pipeline-plugin\", \"ovos-waggle-pipeline-plugin-high\", \"\u2026\"]\n\nEach phone's HiveMind client must be allowed to send the Waggle message types:\n\nhivemind-core allow-msg waggle.capabilities <id>\nhivemind-core allow-msg waggle.intent.response <id>\nhivemind-core allow-msg waggle.query.response <id>\n\nThe stage only answers phones that have announced Waggle capabilities, so other satellites keep using the hub's own skills. Their capabilities\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-07T05:55:07Z",
    "last_updated": "2026-10-18T03:39:58Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "JoergZ2-ovos-skill-wakeup",
    "skill_id": null,
    "name": "ovos-skill-wakeup",
    "description": "Make nothing but answers to a wake up call",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JoergZ2/ovos-skill-wakeup",
    "package_name": "ovos-skill-wakeup",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "nl-nl",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Rerefons de l'assistent",
        "description": "Coneixeu la hist\u00f2ria i la personalitat de l'assistent. Pregunteu sobre el \"naixement\" i la filiaci\u00f3 de l'assistent de veu i feu un tast de la comunitat que fomenta aquesta intel\u00b7lig\u00e8ncia artificial de codi obert.",
        "examples": [
          "Quan et van crear?",
          "Qu\u00e8 ets?",
          "On vas n\u00e9ixer?",
          "Qui et va fer?"
        ]
      },
      "da-dk": {
        "name": "Assistents baggrund",
        "description": "L\u00e6r assistentens historie og personlighed. Sp\u00f8rg om stemmeassistentens 'f\u00f8dsel' og for\u00e6ldreskab, og f\u00e5 en smagspr\u00f8ve p\u00e5 det f\u00e6llesskab, der fremmer denne open source kunstige intelligens.",
        "examples": [
          "Hvorn\u00e5r blev du skabt?",
          "Hvad er du?",
          "Hvor er du f\u00f8dt?",
          "Hvem har lavet dig?"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-22T08:34:01Z",
    "last_updated": "2025-01-22T09:31:11Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-web-terminal",
    "skill_id": null,
    "name": "ovos-skill-web-terminal",
    "description": "Start a web terminal and/or a web CLI client on a OVOS device",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/terminal.svg",
    "icon_source": "readme",
    "icon_color": "#2C3E50",
    "source": "https://github.com/andlo/ovos-skill-web-terminal",
    "package_name": null,
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-01-02T12:42:23Z",
    "last_updated": "2024-04-05T18:30:33Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-wikipedia",
    "skill_id": null,
    "name": "ovos-skill-wikipedia",
    "description": "wikipedia skill for OpenVoiceOS",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-wikipedia/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-wikipedia",
    "package_name": "ovos-skill-wikipedia",
    "pypi_version": "0.8.13",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 10,
    "forks": 13,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-wikipedia\n\n---"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Viquip\u00e8dia",
        "description": "Consulteu la Viquip\u00e8dia per a obtenir respostes a totes les vostres preguntes. Obteniu nom\u00e9s un resum o demaneu m\u00e9s informaci\u00f3 per a obtenir informaci\u00f3 detallada.",
        "examples": [
          "Parla'm d'Elon Musk",
          "Parla'm dels fesols",
          "Consulta la Viquip\u00e8dia sobre fesols",
          "Parla'm del Pembroke Welsh Corgi",
          "Cerca sobre xocolata",
          "M\u00e9s informaci\u00f3",
          "Digues-me m\u00e9s",
          "Busca a la wikipedia qui era Joan Maragall",
          "Busca informaci\u00f3 sobre el Barri Vell de Banyoles",
          "Qu\u00e8 saps del Canig\u00f3?"
        ]
      },
      "da-dk": {
        "name": "Wikipedia",
        "description": "Sp\u00f8rg Wikipedia for at f\u00e5 svar p\u00e5 alle dine sp\u00f8rgsm\u00e5l. F\u00e5 blot et resum\u00e9, eller bed om mere for at f\u00e5 dybdeg\u00e5ende information.",
        "examples": [
          "Fort\u00e6l mig om Elon Musk",
          "Fort\u00e6l mig om b\u00f8nner",
          "Tjek Wikipedia for b\u00f8nner",
          "Fort\u00e6l mig om Pembroke Welsh Corgi",
          "S\u00f8g efter chokolade",
          "Mere information",
          "Fort\u00e6l mig mere"
        ]
      },
      "de-de": {
        "name": "Wikipedia",
        "description": "Suche in Wikipedia nach Antworten auf all Deine Fragen. Erhalte nur eine Zusammenfassung oder frage nach weiteren Informationen, um tiefer gehende Informationen zu erhalten.",
        "examples": [
          "Erz\u00e4hl mir von Elon Musk",
          "Erz\u00e4hl mir von Bohnen",
          "Checke Wikipedia zu Bohnen",
          "Erz\u00e4hle mir etwas \u00fcber den Pembroke Welsh Corgi",
          "Suche nach Schokolade",
          "Weitere Informationen",
          "Erz\u00e4hl mir mehr"
        ]
      },
      "es-co": {
        "name": "Wikipedia",
        "description": "Consulta la Wikipedia para obtener respuestas a tus preguntas. Pide un resumen o m\u00e1s informaci\u00f3n para tener m\u00e1s detalles.",
        "examples": [
          "Busca detalles de las habichuelas en la wikipedia",
          "Busca wikipedia para Elon Musk",
          "abre wiki al azar"
        ]
      },
      "es-es": {
        "name": "Wikipedia",
        "description": "Consulta la Wikipedia para obtener respuestas a tus preguntas. Pide un resumen o m\u00e1s informaci\u00f3n para tener m\u00e1s detalles.",
        "examples": [
          "H\u00e1blame de Elon Musk",
          "H\u00e1blamde de las habichuelas",
          "Consulta la Wikipedia sobre las habichuelas",
          "Expl\u00edcame sobre el Pembroke Welsh Corgi",
          "Busca sobre el chocolate",
          "M\u00e1s informaci\u00f3n",
          "Cu\u00e9ntame m\u00e1s"
        ]
      },
      "eu-es": {
        "name": "Wikipedia",
        "description": "Galdetu Wikipediari zure galdera guztien erantzunak. Lortu laburpen bat soilik, edo eskatu gehiago informazio sakonagoa jasotzeko.",
        "examples": [
          "Kontatu iezadazu Elon Musken inguruan",
          "Kontatu iezadazu babarrunen inguruan",
          "Begiratu Wikipedian babarrunei buruz",
          "Kontatu iezadazu Pembroke Welsh Corgi arrazari buruz",
          "Bilatu txokolatea",
          "Informazio gehiago",
          "Kontatu gehiago"
        ]
      },
      "fa-ir": {
        "name": "Wikipedia",
        "description": "\u0627\u0632 \u0648\u06cc\u06a9\u06cc\u200c\u067e\u062f\u06cc\u0627 \u0628\u0631\u0627\u06cc \u067e\u0627\u0633\u062e \u0628\u0647 \u0647\u0645\u0647 \u067e\u0631\u0633\u0634\u200c\u0647\u0627\u06cc \u062e\u0648\u062f \u0628\u067e\u0631\u0633\u06cc\u062f. \u0641\u0642\u0637 \u06cc\u06a9 \u062e\u0644\u0627\u0635\u0647 \u0628\u06af\u06cc\u0631\u06cc\u062f\u060c \u06cc\u0627 \u0628\u0631\u0627\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0628\u06cc\u0634\u062a\u0631 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u0646\u06cc\u062f.",
        "examples": [
          "\u0648\u06cc\u06a9\u06cc\u067e\u062f\u06cc\u0627 \u0631\u0627 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u062f \u0644\u0648\u0628\u06cc\u0627",
          "\u0628\u0647 \u0645\u0646 \u0628\u06af\u0648\u06cc\u06cc\u062f \u062f\u0631\u0628\u0627\u0631\u0647 \u0627\u06cc\u0644\u0627\u0646 \u0645\u0627\u0633\u06a9 \u062f\u0631 \u0648\u06cc\u06a9\u06cc\u067e\u062f\u06cc\u0627",
          "\u0648\u06cc\u06a9\u06cc\u067e\u062f\u06cc\u0627 \u062a\u0635\u0627\u062f\u0641\u06cc"
        ]
      },
      "fr-fr": {
        "name": "Wikip\u00e9dia",
        "description": "Interrogez Wikip\u00e9dia pour obtenir un r\u00e9sum\u00e9 ou plus de d\u00e9tails sur un sujet.",
        "examples": [
          "Qui est Elon Musk sur Wikip\u00e9dia ?",
          "Cherche les haricots sur Wikip\u00e9dia",
          "Parle-moi du Welsh Corgi Pembroke sur Wikip\u00e9dia",
          "Cherche le chocolat sur Wikip\u00e9dia",
          "Ouvre une page Wikip\u00e9dia au hasard",
          "Qui est Marie Curie sur Wikip\u00e9dia ?",
          "Cherche Ada Lovelace sur Wikip\u00e9dia"
        ]
      },
      "gl-es": {
        "name": "Wikipedia",
        "description": "Consulta na Wikipedia para obter respostas a todas as t\u00faas preguntas. Obt\u00e9n s\u00f3 un resumo ou solicita informaci\u00f3n m\u00e1is detallada.",
        "examples": [
          "F\u00e1lame de Elon Musk",
          "F\u00e1lame dos feix\u00f3ns",
          "Consulta a entrada na Wikipedia sobre os feix\u00f3ns",
          "F\u00e1lame do Pembroke Welsh Corgi",
          "Busca \"chocolate\"",
          "M\u00e1is informaci\u00f3n",
          "C\u00f3ntame m\u00e1is"
        ]
      },
      "it-it": {
        "name": "Wikipedia",
        "description": "Interroga Wikipedia per rispondere a tutte le tue domande. Ottieni solo un riassunto, oppure chiedi maggiori dettagli per informazioni approfondite.",
        "examples": [
          "Parlami di Elon Musk",
          "Parlami dei fagioli",
          "Cerca fagioli su Wikipedia",
          "Parlami del Pembroke Welsh Corgi",
          "Cerca cioccolato",
          "Maggiori informazioni",
          "Dimmi di pi\u00f9"
        ]
      },
      "kab": {
        "name": "Wikipidya",
        "description": "Steqsi Wikipedia akken ad tafe\u1e0d tiririyin i yesteqsiyen-ik me\u1e5b\u1e5ba. Awi-d kan agzul, ne\u0263 suter ugar akken ad tafe\u1e0d tal\u0263ut talqayant.",
        "examples": [
          "Ini-yi-d kra \u0263ef Elon Musk",
          "Ini-yi-d kra \u0263ef yibawen",
          "Nadi deg Wikipedia \u0263ef yibawen",
          "Ini-yi-d kra \u0263ef Pembroke Welsh Corgi",
          "Nadi \u0263ef ccakula",
          "Ugar n tel\u0263ut",
          "Ini-yi-d ugar"
        ]
      },
      "nl-nl": {
        "name": "Wikipedia",
        "description": "Vraag Wikipedia om antwoorden op al je vragen. Krijg een samenvatting, of vraag om meer voor diepgaande informatie.",
        "examples": [
          "Vertel me over Elon Musk",
          "Vertel me over bonen",
          "Zoek bonen op in Wikipedia",
          "Vertel me over de Pembroke Welsh Corgi",
          "Zoek naar chocolade",
          "Meer informatie",
          "Vertel me meer"
        ]
      },
      "pl-pl": {
        "name": "Wikipedia",
        "description": "Zapytaj Wikipedi\u0119 o odpowiedzi na wszystkie swoje pytania. Uzyskaj samo streszczenie albo popro\u015b o wi\u0119cej, aby dowiedzie\u0107 si\u0119 szczeg\u00f3\u0142\u00f3w.",
        "examples": [
          "Opowiedz mi o Elonie Musku",
          "Opowiedz mi o fasoli",
          "Sprawd\u017a w Wikipedii fasol\u0119",
          "Opowiedz mi o corgi walijskim pembroke",
          "Wyszukaj czekolad\u0119",
          "Wi\u0119cej informacji",
          "Powiedz mi wi\u0119cej"
        ]
      },
      "pt-br": {
        "name": "Wikip\u00e9dia",
        "description": "Consulte a Wikip\u00e9dia para obter respostas para todas as suas perguntas. Obtenha apenas um resumo ou pe\u00e7a mais informa\u00e7\u00f5es para obter informa\u00e7\u00f5es mais detalhadas.",
        "examples": [
          "Fale-me sobre Elon Musk",
          "Conte-me sobre o feij\u00e3o",
          "Busque por feij\u00f5es na Wikip\u00e9dia",
          "Conte-me sobre o Pembroke Welsh Corgi",
          "Procure por chocolate",
          "Mais informa\u00e7\u00f5es",
          "Conte-me mais"
        ]
      },
      "pt-pt": {
        "name": "Wikipedia",
        "description": "Consulta a Wikipedia para obteres respostas a todas as tuas perguntas. Recebe um resumo, ou pede mais para obteres informa\u00e7\u00e3o aprofundada.",
        "examples": [
          "Fala-me sobre o Elon Musk",
          "Fala-me sobre feij\u00f5es",
          "Procura feij\u00f5es na Wikipedia",
          "Fala-me sobre o Pembroke Welsh Corgi",
          "Procura por chocolate",
          "Mais informa\u00e7\u00e3o",
          "Diz-me mais"
        ]
      },
      "ru-ru": {
        "name": "\u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u044f",
        "description": "\u0418\u0449\u0438 \u043e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u0432\u0441\u0435 \u0441\u0432\u043e\u0438 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0432 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438. \u041f\u043e\u043b\u0443\u0447\u0438 \u043a\u0440\u0430\u0442\u043a\u0443\u044e \u0441\u0432\u043e\u0434\u043a\u0443 \u0438\u043b\u0438 \u043f\u043e\u043f\u0440\u043e\u0441\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439.",
        "examples": [
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u043e\u0431 \u0418\u043b\u043e\u043d\u0435 \u041c\u0430\u0441\u043a\u0435",
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u043e \u0444\u0430\u0441\u043e\u043b\u0438",
          "\u041f\u0440\u043e\u0432\u0435\u0440\u044c \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u044e \u043f\u0440\u043e \u0444\u0430\u0441\u043e\u043b\u044c",
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u043e \u0432\u0435\u043b\u044c\u0448-\u043a\u043e\u0440\u0433\u0438 \u043f\u0435\u043c\u0431\u0440\u043e\u043a",
          "\u041d\u0430\u0439\u0434\u0438 \u0448\u043e\u043a\u043e\u043b\u0430\u0434",
          "\u0411\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438",
          "\u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435"
        ]
      },
      "sv-se": {
        "name": "Wikipedia",
        "description": "Fr\u00e5ga Wikipedia om svar p\u00e5 alla dina fr\u00e5gor. F\u00e5 bara en sammanfattning, eller be om mer f\u00f6r f\u00f6rdjupad information.",
        "examples": [
          "Ber\u00e4tta om Elon Musk",
          "Ber\u00e4tta om b\u00f6nor",
          "Kolla Wikipedia efter b\u00f6nor",
          "Ber\u00e4tta om Pembroke Welsh Corgi",
          "S\u00f6k efter choklad",
          "Mer information",
          "Ber\u00e4tta mer"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-12-05T16:12:35Z",
    "last_updated": "2025-06-08T22:32:49.328946Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-wikipedia.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.8.13",
          "tested_at": "2026-10-04T11:10:30+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.8.13",
          "tested_at": "2026-10-04T10:47:37+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 11/11 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.19.1a1",
          "tested_at": "2026-10-30T09:01:15+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 11,
            "counted": 11
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-wolfie",
    "skill_id": null,
    "name": "ovos-skill-wolfie",
    "description": "wolfram alpha spoken answers skill",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-wolfie/dev/gui/all/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-wolfie",
    "package_name": "ovos-skill-wolfie",
    "pypi_version": "0.5.8",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 5,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": true,
    "settings_fields": [
      {
        "name": "use_selene",
        "type": "checkbox",
        "label": "use mycroft backend proxy"
      },
      {
        "name": "appid",
        "type": "text",
        "label": "your api key, if not using proxy"
      }
    ],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-wolfie\n\nAn [API key](https://products.wolframalpha.com/api/) is required. Configure it in the skill settings:\n\n{\n  \"appid\": \"YOUR-WOLFRAM-API-KEY\"\n}\n\n---"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Wolfram Alpha",
        "description": "Useu Wolfram Alpha per a preguntes de coneixement general.",
        "examples": [
          "pregunta al llop quina \u00e9s la velocitat de la llum",
          "Quina al\u00e7ada t\u00e9 l'Everest?",
          "Quan es va estrenar The Rocky Horror Picture Show?",
          "Quin \u00e9s el nom real de Madonna?",
          "Quant \u00e9s 18 per 4?",
          "Quantes polzades t\u00e9 un metre?"
        ]
      },
      "da-dk": {
        "name": "Wolfram Alpha",
        "description": "Brug Wolfram Alpha til generelle videnssp\u00f8rgsm\u00e5l.",
        "examples": [
          "sp\u00f8rg ulven, hvad lysets hastighed er",
          "Hvor h\u00f8jt er Mount Everest?",
          "Hvorn\u00e5r blev The Rocky Horror Picture Show udgivet?",
          "Hvad er Madonnas rigtige navn?",
          "Hvad er 18 gange 4?",
          "Hvor mange tommer i en meter?"
        ]
      },
      "de-de": {
        "name": "Wolfram Alpha",
        "description": "Verwende Wolfram Alpha f\u00fcr Fragen zum Allgemeinwissen.",
        "examples": [
          "frage den Wolf wie hoch die Lichtgeschwindigkeit ist",
          "Wie hoch ist der Mount Everest?",
          "Wann kam die Rocky Horror Picture Show in die Kinos?",
          "Wie ist Madonnas richtiger Name?",
          "Was ist 18 mal 4?",
          "Wie viele Zoll sind ein Meter?"
        ]
      },
      "es-co": {
        "name": "Wolfram Alpha",
        "description": "Utilice Wolfram Alpha para preguntas de cultura general.",
        "examples": [
          "preg\u00fantale al lobo cu\u00e1l es la velocidad de la luz",
          "\u00bfqu\u00e9 dice Wolfram sobre el Monte Everest?"
        ]
      },
      "es-es": {
        "name": "Wolfram Alpha",
        "description": "Utilice Wolfram Alpha para preguntas de cultura general.",
        "examples": [
          "Preg\u00fantale al lobo cu\u00e1l es la velocidad de la luz",
          "\u00bfQu\u00e9 altura tiene el Monte Everest?",
          "\u00bfCu\u00e1ndo se estren\u00f3 The Rocky Horror Picture Show?",
          "\u00bfCu\u00e1l es el verdadero nombre de Madonna?",
          "\u00bfCu\u00e1nto es 18 por 4?",
          "\u00bfCu\u00e1ntas pulgadas hay en un metro?"
        ]
      },
      "eu-es": {
        "name": "Wolfram Alpha",
        "description": "Erabili Wolfram Alpha kultura orokorreko galderetarako.",
        "examples": [
          "galdetu otsoari zein den argiaren abiadura",
          "Zein da Everest mendiaren garaiera?",
          "Noiz estreinatu zen The Rocky Horror Picture Show?",
          "Zein da Madonnaren benetako izena?",
          "Zenbat da 18 bider 4?",
          "Zenbat hazbete ditu metro batek?"
        ]
      },
      "fa-ir": {
        "name": "Wolfram Alpha",
        "description": "\u0627\u0632 Wolfram Alpha \u0628\u0631\u0627\u06cc \u0633\u0648\u0627\u0644\u0627\u062a \u062f\u0627\u0646\u0634 \u0639\u0645\u0648\u0645\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.",
        "examples": [
          "\u0627\u0632 \u06af\u0631\u06af \u0628\u067e\u0631\u0633 \u0633\u0631\u0639\u062a \u0646\u0648\u0631 \u0686\u0642\u062f\u0631 \u0627\u0633\u062a",
          "\u0648\u0644\u0641\u0631\u0627\u0645 \u062f\u0631\u0628\u0627\u0631\u0647 \u06a9\u0648\u0647 \u0627\u0648\u0631\u0633\u062a \u0686\u0647 \u0645\u06cc \u06af\u0648\u06cc\u062f"
        ]
      },
      "fr-fr": {
        "name": "Wolfram Alpha",
        "description": "Posez vos questions \u00e0 Wolfram Alpha pour les calculs, les conversions et les questions factuelles.",
        "examples": [
          "Demande \u00e0 Wolfram Alpha quelle est la vitesse de la lumi\u00e8re",
          "Quelle est la hauteur du mont Everest ?",
          "Quand Rocky Horror Picture Show est-il sorti ?",
          "Quel est le vrai nom de Madonna ?",
          "Combien font 18 fois 4 ?",
          "Combien de pouces y a-t-il dans un m\u00e8tre ?"
        ]
      },
      "gl-es": {
        "name": "Wolfram Alpha",
        "description": "Usa Wolfram Alpha para preguntas de co\u00f1ecemento xeral.",
        "examples": [
          "preg\u00fantalle ao lobo cal \u00e9 a velocidade da luz",
          "Canto mide o Monte Everest?",
          "Cando se estreou The Rocky Horror Picture Show?",
          "Cal \u00e9 o nome real de Madonna?",
          "Canto \u00e9 18 por 4?",
          "Cantas polgadas hai nun metro?"
        ]
      },
      "it-it": {
        "name": "Wolfram Alpha",
        "description": "Usa Wolfram Alpha per domande di cultura generale.",
        "examples": [
          "chiedi al lupo qual \u00e8 la velocit\u00e0 della luce",
          "Quanto \u00e8 alto il Monte Everest?",
          "Quando \u00e8 uscito The Rocky Horror Picture Show?",
          "Qual \u00e8 il vero nome di Madonna?",
          "Quanto fa 18 per 4?",
          "Quanti pollici ci sono in un metro?"
        ]
      },
      "kab": {
        "name": "Wolfram Alpha",
        "description": "Seqdec Wolfram Alpha i tigawin n tmusni tamatut.",
        "examples": [
          "steqsi awtul acu-t urar n tafat",
          "D ac\u1e25al ay ye\u025blay u\u1e0dar n Everest?",
          "Melmi i d-yeffe\u0263 The Rocky Horror Picture Show?",
          "D acu-t isem n Madonna n tidet?",
          "D ac\u1e25al 18 s 4?",
          "D ac\u1e25al n yinces deg umitr?"
        ]
      },
      "nl-nl": {
        "name": "Wolfram Alpha",
        "description": "Gebruik Wolfram Alpha voor algemene kennisvragen.",
        "examples": [
          "vraag de wolf wat de snelheid van het licht is",
          "Hoe hoog is de Mount Everest?",
          "Wanneer kwam The Rocky Horror Picture Show uit?",
          "Wat is Madonna's echte naam?",
          "Wat is 18 keer 4?",
          "Hoeveel inches in een meter?"
        ]
      },
      "pl-pl": {
        "name": "Wolfram Alpha",
        "description": "U\u017cyj Wolfram Alpha do pyta\u0144 z wiedzy og\u00f3lnej.",
        "examples": [
          "zapytaj wilka o pr\u0119dko\u015b\u0107 \u015bwiat\u0142a",
          "co wolfram m\u00f3wi o Mount Everest"
        ]
      },
      "pt-br": {
        "name": "Wolfram Alpha",
        "description": "Use o Wolfram Alpha para perguntas gerais de conhecimento.",
        "examples": [
          "pergunte ao lobo qual \u00e9 a velocidade da luz",
          "Qual \u00e9 a altura do Monte Everest?",
          "Quando o The Rocky Horror Picture Show foi lan\u00e7ado?",
          "Qual \u00e9 o nome verdadeiro da Madonna?",
          "Quanto \u00e9 18 vezes 4?",
          "Quantas polegadas tem um metro?"
        ]
      },
      "pt-pt": {
        "name": "Wolfram Alpha",
        "description": "Usa o Wolfram Alpha para perguntas de conhecimento geral.",
        "examples": [
          "pergunta ao lobo qual \u00e9 a velocidade da luz",
          "Qual \u00e9 a altura do Monte Evereste?",
          "Quando foi lan\u00e7ado o The Rocky Horror Picture Show?",
          "Qual \u00e9 o verdadeiro nome da Madonna?",
          "Quanto \u00e9 18 vezes 4?",
          "Quantas polegadas tem um metro?"
        ]
      },
      "ru-ru": {
        "name": "Wolfram Alpha",
        "description": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 Wolfram Alpha \u0434\u043b\u044f \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u043d\u0430 \u043e\u0431\u0449\u0438\u0435 \u0437\u043d\u0430\u043d\u0438\u044f.",
        "examples": [
          "\u0441\u043f\u0440\u043e\u0441\u0438 \u0432\u043e\u043b\u043a\u0430 \u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u0432\u0435\u0442\u0430",
          "\u0447\u0442\u043e \u0432\u043e\u043b\u044c\u0444\u0440\u0430\u043c \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u0433\u043e\u0440\u0435 \u042d\u0432\u0435\u0440\u0435\u0441\u0442"
        ]
      },
      "sv-se": {
        "name": "Wolfram Alpha",
        "description": "Anv\u00e4nd Wolfram Alpha f\u00f6r allm\u00e4nna kunskapsfr\u00e5gor.",
        "examples": [
          "fr\u00e5ga vargen vad ljusets hastighet \u00e4r",
          "Hur h\u00f6gt \u00e4r Mount Everest?",
          "N\u00e4r sl\u00e4pptes The Rocky Horror Picture Show?",
          "Vad \u00e4r Madonnas riktiga namn?",
          "Vad \u00e4r 18 g\u00e5nger 4?",
          "Hur m\u00e5nga tum \u00e4r en meter?"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-12-08T10:42:07Z",
    "last_updated": "2025-06-08T22:33:04.764467Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-wolfie.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.5.8",
          "tested_at": "2026-10-04T11:10:52+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.5.8",
          "tested_at": "2026-10-04T10:47:56+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.13.0a2",
          "tested_at": "2026-10-30T08:58:53+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-wordnet",
    "skill_id": null,
    "name": "ovos-skill-wordnet",
    "description": "wordnet skill",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-wordnet",
    "package_name": "ovos-skill-wordnet",
    "pypi_version": "0.2.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-skill-wordnet\n\nNo API key is required. WordNet data downloads automatically on first use (about 30-60 MB for English) and stays cached locally. When no native gloss is available, the system translation plugin translates non-English definitions.\n\n---"
      }
    ],
    "languages": [
      "ar-xx",
      "bg-bg",
      "ca-es",
      "cmn-cn",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-fr",
      "gl-es",
      "he-il",
      "hr-hr",
      "id-id",
      "is-is",
      "it-it",
      "ja-jp",
      "kab",
      "lt-lt",
      "nb-no",
      "nl-nl",
      "nn-no",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sk-sk",
      "sl-si",
      "sv-se",
      "th-th",
      "zsm-my"
    ],
    "locale_content": {
      "ar-xx": {
        "name": "\u0645\u0647\u0627\u0631\u0629 \u0648\u0648\u0631\u062f\u0646\u062a",
        "description": "\u0627\u0633\u062a\u062e\u062f\u0645 \u0648\u0648\u0631\u062f\u0646\u062a \u0644\u0644\u0625\u062c\u0627\u0628\u0629 \u0639\u0644\u0649 \u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0642\u0627\u0645\u0648\u0633.",
        "examples": [
          "\u0627\u0628\u062d\u062b \u0641\u064a \u0648\u0648\u0631\u062f\u0646\u062a \u0639\u0646 ...",
          "\u0627\u0633\u0623\u0644 \u0648\u0648\u0631\u062f\u0646\u062a \u0639\u0646 ..."
        ]
      },
      "bg-bg": {
        "name": "\u0423\u043c\u0435\u043d\u0438\u0435 \u0423\u044a\u0440\u0434\u043d\u0435\u0442",
        "description": "\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u0423\u044a\u0440\u0434\u043d\u0435\u0442 \u0437\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0438 \u043d\u0430 \u0440\u0435\u0447\u043d\u0438\u043a\u043e\u0432\u0438 \u0432\u044a\u043f\u0440\u043e\u0441\u0438.",
        "examples": [
          "\u0442\u044a\u0440\u0441\u0438 \u0432 \u0443\u044a\u0440\u0434\u043d\u0435\u0442 ...",
          "\u043f\u0438\u0442\u0430\u0439 \u0443\u044a\u0440\u0434\u043d\u0435\u0442 \u0437\u0430 ..."
        ]
      },
      "ca-es": {
        "name": "Habilitat de Wordnet",
        "description": "Usa Wordnet per a respondre q\u00fcestions relacionades amb diccioanris.",
        "examples": [
          "quina \u00e9s la definici\u00f3 de ...",
          "quin \u00e9s l'ant\u00f2nim de..."
        ]
      },
      "cmn-cn": {
        "name": "WordNet \u6280\u80fd",
        "description": "\u4f7f\u7528 WordNet \u56de\u7b54\u8bcd\u5178\u7c7b\u95ee\u9898\u3002",
        "examples": [
          "\u5728WordNet\u4e2d\u641c\u7d22...",
          "\u95eeWordNet\u5173\u4e8e..."
        ]
      },
      "da-dk": {
        "name": "Wordnet f\u00e6rdighed",
        "description": "Brug Wordnet til at besvare ordbogslignende sp\u00f8rgsm\u00e5l.",
        "examples": [
          "hvad er definitionen p\u00e5...",
          "hvad er antonymet til..."
        ]
      },
      "de-de": {
        "name": "Wordnet Skill",
        "description": "Verwende Wordnet, um w\u00f6rterbuch\u00e4hnliche Fragen zu beantworten.",
        "examples": [
          "was ist die Definition von ...",
          "was ist das Antonym von ..."
        ]
      },
      "el-gr": {
        "name": "\u0394\u03b5\u03be\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 Wordnet",
        "description": "\u03a7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b5\u03af \u03c4\u03bf Wordnet \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03b1\u03c0\u03b1\u03bd\u03c4\u03ae\u03c3\u03b5\u03b9 \u03c3\u03b5 \u03b5\u03c1\u03c9\u03c4\u03ae\u03c3\u03b5\u03b9\u03c2 \u03c4\u03cd\u03c0\u03bf\u03c5 \u03bb\u03b5\u03be\u03b9\u03ba\u03bf\u03cd.",
        "examples": [
          "\u03c0\u03bf\u03b9\u03bf\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03bf \u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03c4\u03bf\u03c5 ...",
          "\u03c0\u03bf\u03b9\u03bf \u03b5\u03af\u03bd\u03b1\u03b9 \u03c4\u03bf \u03b1\u03bd\u03c4\u03ce\u03bd\u03c5\u03bc\u03bf \u03c4\u03bf\u03c5 ..."
        ]
      },
      "es-co": {
        "name": "Wordnet Skill",
        "description": "Utiliza Wordnet para responder preguntas tipo diccionario.",
        "examples": [
          "Busca perro en WordNet",
          "\u00bfQu\u00e9 dice WordNet sobre casa?",
          "Pregunta a WordNet sobre feliz"
        ]
      },
      "es-es": {
        "name": "Wordnet Skill",
        "description": "Utiliza Wordnet para responder preguntas tipo diccionario.",
        "examples": [
          "\u00bfCu\u00e1l es la definici\u00f3n de...?",
          "\u00bfCu\u00e1l es el ant\u00f3nimo de...?"
        ]
      },
      "eu-es": {
        "name": "Wordnet trebetasuna",
        "description": "Erabili Wordnet hiztegi motako galderak erantzuteko.",
        "examples": [
          "zein da ... hitzaren definizioa",
          "zein da ... hitzaren antonimoa"
        ]
      },
      "fa-ir": {
        "name": "Wordnet Skill",
        "description": "\u0627\u0632 Wordnet \u0628\u0631\u0627\u06cc \u067e\u0627\u0633\u062e \u0628\u0647 \u067e\u0631\u0633\u0634 \u0647\u0627\u06cc \u0641\u0631\u0647\u0646\u06af \u0644\u063a\u062a\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.",
        "examples": [
          "\u0645\u0639\u0646\u06cc \u062e\u0627\u0646\u0647 \u0686\u06cc\u0633\u062a",
          "\u0645\u062a\u0631\u0627\u062f\u0641 \u0634\u0627\u062f \u0686\u06cc\u0633\u062a",
          "\u0645\u062a\u0636\u0627\u062f \u0628\u0632\u0631\u06af"
        ]
      },
      "fi-fi": {
        "name": "WordNet-taito",
        "description": "K\u00e4yt\u00e4 WordNeti\u00e4 sanakirjakysymyksiin vastaamiseen.",
        "examples": [
          "hae WordNetist\u00e4 ...",
          "kysy WordNetilt\u00e4 ..."
        ]
      },
      "fr-fr": {
        "name": "WordNet",
        "description": "Utilisez WordNet pour r\u00e9pondre \u00e0 des questions de type dictionnaire.",
        "examples": [
          "Quelle est la d\u00e9finition de _______ ?",
          "Quel est l'antonyme de _______ ?"
        ]
      },
      "gl-es": {
        "name": "Habilidade Wordnet",
        "description": "Usa Wordnet para responder preguntas de tipo dicionario.",
        "examples": [
          "cal \u00e9 a definici\u00f3n de...",
          "cal \u00e9 o ant\u00f3nimo de..."
        ]
      },
      "he-il": {
        "name": "\u05de\u05d9\u05d5\u05de\u05e0\u05d5\u05ea WordNet",
        "description": "\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1-WordNet \u05db\u05d3\u05d9 \u05dc\u05e2\u05e0\u05d5\u05ea \u05e2\u05dc \u05e9\u05d0\u05dc\u05d5\u05ea \u05de\u05d9\u05dc\u05d5\u05e0\u05d9\u05d5\u05ea.",
        "examples": [
          "\u05d7\u05e4\u05e9 \u05d1-WordNet ...",
          "\u05e9\u05d0\u05dc \u05d0\u05ea WordNet \u05e2\u05dc ..."
        ]
      },
      "hr-hr": {
        "name": "WordNet vje\u0161tina",
        "description": "Koristi WordNet za odgovore na rje\u010dni\u010dka pitanja.",
        "examples": [
          "pretra\u017ei WordNet za ...",
          "pitaj WordNet o ..."
        ]
      },
      "id-id": {
        "name": "Keterampilan WordNet",
        "description": "Gunakan WordNet untuk menjawab pertanyaan kamus.",
        "examples": [
          "cari di WordNet ...",
          "tanya WordNet tentang ..."
        ]
      },
      "is-is": {
        "name": "WordNet f\u00e6rni",
        "description": "Nota\u00f0u WordNet til a\u00f0 svara or\u00f0ab\u00f3karspurningum.",
        "examples": [
          "leita \u00ed WordNet a\u00f0 ...",
          "spyrja WordNet um ..."
        ]
      },
      "it-it": {
        "name": "Wordnet Skill",
        "description": "Usa Wordnet per rispondere a domande di tipo dizionario.",
        "examples": [
          "qual \u00e8 la definizione di ...",
          "qual \u00e8 il contrario di ..."
        ]
      },
      "ja-jp": {
        "name": "WordNet \u30b9\u30ad\u30eb",
        "description": "WordNet \u3092\u4f7f\u3063\u3066\u8f9e\u66f8\u306e\u3088\u3046\u306a\u8cea\u554f\u306b\u7b54\u3048\u307e\u3059\u3002",
        "examples": [
          "WordNet\u3067...\u3092\u691c\u7d22\u3057\u3066",
          "WordNet\u306b...\u306b\u3064\u3044\u3066\u805e\u3044\u3066"
        ]
      },
      "kab": {
        "name": "Askill n Wordnet",
        "description": "Seqdec Wordnet i tririt \u0263ef isteqsiyen am wid n umawal.",
        "examples": [
          "d acu-t usefru n ...",
          "d acu-t awal amgarad n ..."
        ]
      },
      "lt-lt": {
        "name": "WordNet \u012fg\u016bdis",
        "description": "Naudokite WordNet atsakyti \u012f \u017eodyno klausimus.",
        "examples": [
          "ie\u0161koti WordNet ...",
          "klausk WordNet apie ..."
        ]
      },
      "nb-no": {
        "name": "WordNet-ferdighet",
        "description": "Bruk WordNet til \u00e5 svare p\u00e5 ordboksp\u00f8rsm\u00e5l.",
        "examples": [
          "s\u00f8k i WordNet etter ...",
          "sp\u00f8r WordNet om ..."
        ]
      },
      "nl-nl": {
        "name": "Wordnet Skill",
        "description": "Gebruik Wordnet om woordenboekachtige vragen te beantwoorden.",
        "examples": [
          "wat is de definitie van ...",
          "wat is het tegenovergestelde van ..."
        ]
      },
      "nn-no": {
        "name": "WordNet-ferdigheit",
        "description": "Bruk WordNet til \u00e5 svara p\u00e5 ordboksp\u00f8rsm\u00e5l.",
        "examples": [
          "s\u00f8k i WordNet etter ...",
          "sp\u00f8r WordNet om ..."
        ]
      },
      "pl-pl": {
        "name": "Umiej\u0119tno\u015b\u0107 Wordnet",
        "description": "U\u017cywa Wordnet do odpowiadania na pytania w stylu s\u0142ownikowym.",
        "examples": [
          "jaka jest definicja ...",
          "jaki jest antonim ..."
        ]
      },
      "pt-br": {
        "name": "Skill Wordnet",
        "description": "Usa o Wordnet para responder perguntas de dicion\u00e1rio.",
        "examples": [
          "qual \u00e9 a defini\u00e7\u00e3o de ...",
          "qual \u00e9 o ant\u00f4nimo de ..."
        ]
      },
      "pt-pt": {
        "name": "Skill Wordnet",
        "description": "Usa a Wordnet para responder a perguntas de dicion\u00e1rio.",
        "examples": [
          "qual \u00e9 a defini\u00e7\u00e3o de ...",
          "qual \u00e9 o ant\u00f3nimo de ..."
        ]
      },
      "ro-ro": {
        "name": "Abilitate Wordnet",
        "description": "Folose\u0219te Wordnet pentru a r\u0103spunde la \u00eentreb\u0103ri de tip dic\u021bionar.",
        "examples": [
          "care este defini\u021bia pentru ...",
          "care este antonimul pentru ..."
        ]
      },
      "ru-ru": {
        "name": "Wordnet Skill",
        "description": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 Wordnet \u0434\u043b\u044f \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043d\u0430 \u0441\u043b\u043e\u0432\u0430\u0440\u043d\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b.",
        "examples": [
          "\u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0441\u043b\u043e\u0432\u043e \u0434\u043e\u043c",
          "\u043a\u0430\u043a\u043e\u0439 \u0441\u0438\u043d\u043e\u043d\u0438\u043c \u043a \u0440\u0430\u0434\u043e\u0441\u0442\u044c",
          "\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0448\u043a\u0430"
        ]
      },
      "sk-sk": {
        "name": "Schopnos\u0165 WordNet",
        "description": "Pou\u017eite WordNet na odpovedanie na slovn\u00edkov\u00e9 ot\u00e1zky.",
        "examples": [
          "h\u013eadaj v WordNet ...",
          "op\u00fdtaj sa WordNet na ..."
        ]
      },
      "sl-si": {
        "name": "Zmo\u017enost WordNet",
        "description": "Uporabi WordNet za odgovore na slovarska vpra\u0161anja.",
        "examples": [
          "i\u0161\u010di v WordNet ...",
          "vpra\u0161aj WordNet o ..."
        ]
      },
      "sv-se": {
        "name": "Wordnet Skill",
        "description": "Anv\u00e4nd Wordnet f\u00f6r att svara p\u00e5 ordboksliknande fr\u00e5gor.",
        "examples": [
          "vad \u00e4r definitionen av ...",
          "vad \u00e4r motsatsen till ..."
        ]
      },
      "th-th": {
        "name": "\u0e2a\u0e01\u0e34\u0e25 WordNet",
        "description": "\u0e43\u0e0a\u0e49 WordNet \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e15\u0e2d\u0e1a\u0e04\u0e33\u0e16\u0e32\u0e21\u0e41\u0e1a\u0e1a\u0e1e\u0e08\u0e19\u0e32\u0e19\u0e38\u0e01\u0e23\u0e21",
        "examples": [
          "\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e43\u0e19 WordNet ...",
          "\u0e16\u0e32\u0e21 WordNet \u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a ..."
        ]
      },
      "zsm-my": {
        "name": "Kemahiran WordNet",
        "description": "Guna WordNet untuk menjawab pertanyaan kamus.",
        "examples": [
          "cari dalam WordNet ...",
          "tanya WordNet tentang ..."
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-02-19T21:04:45Z",
    "last_updated": "2025-11-05T00:46:07.599718Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-wordnet.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.6",
          "tested_at": "2026-10-04T11:11:13+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2717 doesn't load",
          "state": "fail",
          "level": 1,
          "version_tested": "0.2.6",
          "tested_at": "2026-10-04T10:48:08+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 5/5 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.14.2a1",
          "tested_at": "2026-10-30T08:59:11+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 5,
            "counted": 5
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-youtube",
    "skill_id": null,
    "name": "ovos-skill-youtube",
    "description": "[DEPRECATED \u2014 ARCHIVED] Replaced by the MediaProvider plugin 'ovos-media-provider-youtube' (pip install ovos-media-provider-youtube), configured under intents.ovos-ocp-pipeline-plugin.media_providers \u2014 no longer installed as a skill.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "skill",
      "youtube"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-youtube",
    "package_name": "skill-simple-youtube",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 5,
    "forks": 7,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2017-01-11T20:23:54Z",
    "last_updated": "2024-10-15T03:08:07.963599Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skills",
    "skill_id": null,
    "name": "ovos-skills",
    "description": "ovos-core metapackage for skills daemon",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skills",
    "package_name": "ovos-skills",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-12-01T14:46:26Z",
    "last_updated": "2023-01-10T15:30:19Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skills-info",
    "skill_id": null,
    "name": "ovos-skills-info",
    "description": "Skill information parser support skill",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skills-info",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-08T19:46:43Z",
    "last_updated": "2022-10-31T10:59:51Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-BM25-plugin",
    "skill_id": null,
    "name": "ovos-solver-BM25-plugin",
    "description": "This is an OVOS (OpenVoiceOS) plugin. It retrieves answers from a corpus of documents with the BM25 algorithm.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-solver-BM25-plugin",
    "package_name": "ovos-solver-bm25-plugin",
    "pypi_version": "0.1.0",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Solver Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "$ pip install ovos-solver-bm25-plugin\n\n---\n\n### ReRanking\n\nReranking refines a list of candidate answers by their relevance to a query. Use it when several candidate responses exist and you need to pick the best one.\n\n![reranker diagram](https://github.com/user-attachments/assets/61c5034b-e54f-434a-8cbf-e967154af983)\n\nThe solver ranks the candidates by their similarity to the query and selects the best match.\n\nfrom ovos_bm25_solver import BM25MultipleChoiceSolver\n\nsolver = BM25MultipleChoiceSolver()\na = solver.rerank(\"what is the speed of light\", [\n    \"very fast\", \"10m/s\", \"the speed of light is C\"\n])\nprint(a)"
      },
      {
        "heading": "Initialize BM25QACorpusSolver with config",
        "content": "config = {\n    \"lang\": \"en-us\",\n    \"min_conf\": 0.4,\n    \"n_answer\": 1\n}\nsolver = BM25QACorpusSolver(config)\nsolver.load_corpus(corpus)\n\nquery = \"is there life on mars?\"\nanswer = solver.get_spoken_answer(query)\nprint(\"Query:\", query)\nprint(\"Answer:\", answer)"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-19T19:10:47Z",
    "last_updated": "2025-11-22T17:37:52.228982Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-failure-plugin",
    "skill_id": null,
    "name": "ovos-solver-failure-plugin",
    "description": "A chat engine plugin for OpenVoiceOS personas that never answers the question. It always returns a canned line, so it works as the last link of a persona chain when every other handler declines. Registered as `ovos-solver-failure-plugin` in the `opm.agents.chat` entry-point group.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/ovos-solver-failure-plugin",
    "package_name": "ovos_solver_failure_plugin",
    "pypi_version": "0.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Chat Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-solver-failure-plugin"
      }
    ],
    "languages": [
      "da-dk",
      "en-us",
      "fr-fr",
      "kab",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2023-02-04T23:16:53Z",
    "last_updated": "2025-11-05T01:12:54.626869Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JarbasHiveMind-ovos-solver-hivemind-plugin",
    "skill_id": null,
    "name": "ovos-solver-hivemind-plugin",
    "description": "OVOS solver plugin that exposes a HiveMind connection as a question-answering backend",
    "examples": [],
    "tags": [
      "hivemind",
      "openvoiceos",
      "ovos",
      "plugin",
      "python"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/ovos-solver-hivemind-plugin",
    "package_name": "ovos-solver-hivemind-plugin",
    "pypi_version": "0.0.3",
    "license": null,
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Solver Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-solver-hivemind-plugin"
      },
      {
        "heading": "Configuration",
        "content": "| Key           | Type   | Default                    | Description |\n|---------------|--------|----------------------------|-------------|\n| `autoconnect` | bool   | `false`                    | Connect to HiveMind automatically at construction time. |\n| `useragent`   | string | `\"ovos-hivemind-solver\"`   | User-agent string sent to the hub. |\n| `site_id`     | string | value from identity file   | Site ID for the HiveMind connection. |\n| `lang`        | string | `\"en-us\"`                  | Default language when none is in context. |\n\nConnection credentials (host, port, key, password) come from the identity file set\nwith `hivemind-client set-identity`. They cannot be passed inline."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-19T21:32:32Z",
    "last_updated": "2025-02-06T23:17:57.831888Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-plugin-aiml",
    "skill_id": null,
    "name": "ovos-solver-plugin-aiml",
    "description": "An OVOS question solver plugin that answers with an AIML chatbot. It uses the Alice chatbot brain to hold open-ended conversation. It answers utterances that no other skill or solver handles, so most utterances get some response.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/ovos-solver-plugin-aiml",
    "package_name": "ovos-solver-aiml-plugin",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Chat Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-solver-aiml-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-04T22:01:38Z",
    "last_updated": "2025-06-08T18:28:59.681386Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-ovos-solver-plugin-gemini-chat",
    "skill_id": null,
    "name": "ovos-solver-plugin-gemini-chat",
    "description": "Ask Gemini with OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/femelo/ovos-solver-plugin-gemini-chat",
    "package_name": "ovos-solver-plugin-gemini-chat",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "femelo",
    "tier": 2,
    "component_type": "Persona",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 2,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "python3 -m pip install ovos-solver-plugin-gemini-chat"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-26T13:49:05Z",
    "last_updated": "2025-10-06T16:32:18Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-ovos-solver-plugin-hugchat-persona",
    "skill_id": null,
    "name": "ovos-solver-plugin-hugchat-persona",
    "description": "Talk to HuggingChat through OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/femelo/ovos-solver-plugin-hugchat-persona",
    "package_name": "ovos-solver-hugchat-persona-plugin",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "femelo",
    "tier": 2,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "This plugin can be configured as follows\n\n{\n    \"email\": 'your_hf_email',\n    \"password\": 'your_hf_password',\n    \"initial_prompt\": \"You are a helpful assistant.\"\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-22T22:20:04Z",
    "last_updated": "2024-11-14T10:09:53Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-plugin-llamacpp",
    "skill_id": null,
    "name": "ovos-solver-plugin-llamacpp",
    "description": "Give OpenVoiceOS some sass with LLaMA model in pure C/C++",
    "examples": [],
    "tags": [
      "deprecated",
      "plugin",
      "solver",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-solver-plugin-llamacpp",
    "package_name": "ovos-solver-llamacpp-plugin",
    "pypi_version": "0.0.0a1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-21T07:49:27Z",
    "last_updated": "2023-03-25T03:41:45.524277Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-plugin-rivescript",
    "skill_id": null,
    "name": "ovos-solver-plugin-rivescript",
    "description": "This plugin is a question solver that answers with a Rivescript chatbot. It uses the Alice chatbot brain to answer phrases that no other skill handles, so almost every input gets some response. Answers can be casual and a bit sassy.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/robot.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/ovos-solver-plugin-rivescript",
    "package_name": "ovos-solver-rivescript-plugin",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Chat Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-04T22:01:52Z",
    "last_updated": "2025-06-08T18:28:28.109089Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-solver-YesNo-plugin",
    "skill_id": null,
    "name": "ovos-solver-YesNo-plugin",
    "description": "A simple tool to indicate whether a user answered \"yes\" or \"no\" to a yes/no prompt.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "solver"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-solver-YesNo-plugin",
    "package_name": "ovos-solver-yes-no-plugin",
    "pypi_version": "0.2.8",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 4,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "\ud83d\udce5 Install",
        "content": "pip install ovos-solver-yes-no-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-19T18:08:15Z",
    "last_updated": "2024-12-26T16:04:53.303139Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-spec-tools",
    "skill_id": null,
    "name": "ovos-spec-tools",
    "description": "Reference implementation of the OVOS formal specifications \u2014 sentence template expander, locale resource loader, dialog renderer, language matching, and a locale linter",
    "examples": [],
    "tags": [
      "i18n",
      "intent-parser",
      "linter",
      "nlu",
      "openvoiceos",
      "ovos",
      "python",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-spec-tools",
    "package_name": "ovos-spec-tools",
    "pypi_version": "1.17.1a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-spec-tools            # core\npip install ovos-spec-tools[langcodes] # adds the smart language fallback\n\nRequires Python 3.11+."
      }
    ],
    "languages": [
      "en-us",
      "kab"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2026-05-22T10:53:04Z",
    "last_updated": "2026-11-03T19:50:31.289281Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OscillateLabsLLC-ovos-speech-servers",
    "skill_id": null,
    "name": "ovos-speech-servers",
    "description": "Tested Docker and venv recipes for self-hosted OVOS/Neon STT and TTS servers",
    "examples": [],
    "tags": [
      "neon",
      "openvoiceos",
      "ovos",
      "status-active",
      "stt",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-speech-servers",
    "package_name": null,
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-11-06T04:19:19Z",
    "last_updated": "2026-11-06T04:23:19Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-start",
    "skill_id": null,
    "name": "ovos-start",
    "description": "Web setup wizard for OpenVoiceOS, with device preparation and live installation progress.",
    "examples": [],
    "tags": [
      "github-pages",
      "installation",
      "openvoiceos",
      "ovos",
      "setup-wizard",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-start",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-09T02:14:13Z",
    "last_updated": "2026-10-13T00:38:55Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-start-launcher",
    "skill_id": null,
    "name": "ovos-start-launcher",
    "description": "Command-line launcher for installations started with OVOS Start.",
    "examples": [],
    "tags": [
      "installer",
      "openvoiceos",
      "ovos",
      "shell",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-start-launcher",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Check your setup",
        "content": "After installation or a restart, run:\n\nsh \"$HOME/.config/ovos-installer/check-setup.sh\"\n\nThis checks services and helps you test your speaker and microphone."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-07T13:01:02Z",
    "last_updated": "2026-11-02T03:56:56Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "timonvanhasselt-ovos-stt-plugin-apple",
    "skill_id": null,
    "name": "ovos-stt-plugin-apple",
    "description": "An OVOS speech-to-text plugin for **macOS** that uses",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-stt-plugin-apple",
    "package_name": "ovos-stt-plugin-apple",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "or from a local clone: pip install .",
        "content": "ovos-stt-apple-build        # optional: the helper is also installed on first use\n\nThe helper is installed by downloading the prebuilt binary for your Mac\n(`arm64` for Apple Silicon, `x86_64` for Intel) from the GitHub release that\nmatches the plugin version. The SHA256 checksum is verified. If the download\nfails, the plugin compiles the bundled Swift source instead (needs Xcode\ncommand line tools). It is installed to:\n\n~/Library/Application Support/ovos_stt_apple/apple-stt-helper\n\nOptions of `ovos-stt-apple-build`:\n\n| Flag | Meaning |\n|---|---|\n| `--download` | only download the release binary |\n| `--compile` | only compile from source (useful after a macOS update, or to audit what you run) |\n| `--force` | replace an existing helper |\n| `--dest PATH` | install somewhere else (then set `he\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-11-09T14:54:28Z",
    "last_updated": "2026-11-09T15:28:40Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-azure",
    "skill_id": null,
    "name": "ovos-stt-plugin-azure",
    "description": "OVOS STT plugin for Microsoft Azure AI Speech. It sends audio to the Azure speech-to-text REST API and returns the recognized text.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-azure",
    "package_name": "ovos_stt_plugin_azure",
    "pypi_version": "0.0.0a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-azure"
      },
      {
        "heading": "Configuration",
        "content": "Add this plugin to the `stt` section of your OVOS configuration.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-azure\",\n    \"ovos-stt-plugin-azure\": {\n      \"key\": \"xxx\",\n      \"region\": \"westeurope\",\n      \"profanity\": \"raw\"\n    }\n  }\n\n- `key`: key for the Azure AI Speech API.\n- `region`: location or region of your Azure speech service.\n- `profanity`: profanity filter setting. Valid values are `raw`, `masked`, or `removed`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-08-04T14:59:25Z",
    "last_updated": "2026-08-01T00:46:17.696875Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-chromium",
    "skill_id": null,
    "name": "ovos-stt-plugin-chromium",
    "description": "A stt plugin for OpenVoiceOS using the google chrome browser api",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-chromium",
    "package_name": "ovos-stt-plugin-chromium",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-chromium"
      },
      {
        "heading": "Configuration",
        "content": "By default, the plugin uses the global language set in your OVOS configuration.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-chromium\"\n  }\n\n### Advanced configuration\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-chromium\",\n    \"ovos-stt-plugin-chromium\": {\n        \"lang\": \"en-US\",\n        \"pfilter\": false,\n        \"debug\": false\n    }\n  }\n\n- `lang` \u2014 overrides the global language. Use a code from the supported languages list.\n- `pfilter` \u2014 profanity filter. When `true`, the plugin censors profanity, showing only the first character and replacing the rest with asterisks, for example `f***`.\n- `debug` \u2014 when `true`, logs the confidence score and alternative transcriptions."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-04T12:43:57Z",
    "last_updated": "2022-09-29T17:25:18.561924Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-citrinet",
    "skill_id": null,
    "name": "ovos-stt-plugin-citrinet",
    "description": "> **\u26a0\ufe0f This plugin is archived.** Use",
    "examples": [],
    "tags": [
      "citrinet",
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-citrinet",
    "package_name": "ovos-stt-plugin-citrinet",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "By default this plugin installs the full pytorch package. To avoid the extra dependencies, install the CPU-only version of pytorch **before** you install the plugin.\n\n`pip install torch==2.6.0+cpu --index-url https://download.pytorch.org/whl/cpu`\n\nIf you skip this step, pip installs the full pytorch package together with the plugin.\n\n`pip install ovos-stt-plugin-citrinet`"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-citrinet\",\n    \"ovos-stt-plugin-citrinet\": {\n      \"lang\": \"ca\"\n    }\n  }\n\n### Models\n\nThe table shows the self-reported WER score from each model page. A lower score means better accuracy.\n\n| Model                                         | CV10  | CV11  | CV12   | LibriSpeech (clean) |  \n|-----------------------------------------------|-------|-------|--------|---------------------| \n| `projecte-aina/stt-ca-citrinet-512`           |       | 6.684 |        |                     |  \n| `neongeckocom/stt_ca_citrinet_512_gamma_0_25` |       |       | 8.065  |                     |  \n| `neongeckocom/stt_es_citrinet_512_gamma_0_25` |       |       | 9.549  |                     |   \n| `neongeckocom/stt_pt_citrinet_512_gamma_0_25` |       |       | 6.033  |\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-19T13:49:14Z",
    "last_updated": "2026-01-08T03:58:47.518646Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-coreml",
    "skill_id": null,
    "name": "ovos-stt-plugin-coreml",
    "description": "OVOS Speech-to-Text (STT) plugin that runs speech recognition models natively on Apple devices using CoreML",
    "examples": [],
    "tags": [
      "coreml",
      "macos",
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-coreml",
    "package_name": "ovos-stt-plugin-coreml",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "### Prerequisites\n\n- Python 3.10+\n- macOS 13.0+ (CoreML MLProgram / iOS 17 target)\n- Xcode command-line tools (only needed for `.mlmodelc` compilation)\n\n### From PyPI\n\npip install ovos-stt-plugin-coreml\n\n### Optional: ANE/GPU dispatch via PyObjC\n\npip install pyobjc-core pyobjc-framework-CoreML\n\nWhen installed, models are compiled to `.mlmodelc` and loaded via the native CoreML ObjC framework for full\nANE/GPU dispatch. Without PyObjC, coremltools loads `.mlpackage` directly (CPU-biased).\n\n### Optional: HuggingFace auto-download\n\npip install huggingface-hub\n\nRequired for `repo_id` auto-download and zero-config mode.\n\n### From Source\n\ngit clone https://github.com/TigreGotico/ovos-stt-plugin-coreml\ncd ovos-stt-plugin-coreml\npip install -e ."
      },
      {
        "heading": "Zero-config (auto-selects best int8 model for your language)",
        "content": "{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-coreml\",\n    \"ovos-stt-plugin-coreml\": {}\n  }\n}\n\nThe plugin reads `lang` from your OVOS config and picks the best published int8 model automatically:\n\n| Language(s) | Default model |\n|---|---|\n| `en-*` | `parakeet-tdt-ctc-110m-coreml-int8` (smallest/fastest English) |\n| `da-*` | `parakeet-rnnt-110m-da-coreml-int8` |\n| `nl-*` | `parakeet-tdt-0.6b-dutch-coreml-int8` |\n| `et-*` | `parakeet-tdt-0.6b-estonian-coreml-int8` |\n| `pl-*` | `parakeet-tdt-0.6b-polish-coreml-int8` |\n| `pt-*` | `parakeet-tdt-0.6b-portuguese-coreml-int8` |\n| `sl-*` | `parakeet-tdt-0.6b-slovenian-coreml-int8` |\n| `ja-*` | `parakeet-tdt-ctc-0.6b-ja-coreml-int8` |\n| `vi-*` | `parakeet-ctc-0.6b-vi-coreml-int8` |\n| `de/fr/es/it/cs/bg/el/fi/hr/hu/lt/lv/mt/ro/ru/sk/sv/uk-*` | `parakee\u2026"
      },
      {
        "heading": "Configuration",
        "content": "### Full config reference\n\n| Key                          | Default                     | Description                                             |\n|------------------------------|-----------------------------|---------------------------------------------------------|\n| `repo_id`                    | none                        | HF repo id. Auto-downloads when `metadata` is absent.  |\n| `metadata`                   | **required** (or `repo_id`) | Path to `metadata.json` produced by the export script   |\n| `model_type`                 | auto                        | `\"ctc\"` or `\"tdt\"`, overrides auto-detection            |\n| `compute_units`              | `\"all\"`                     | `\"all\"` \u00b7 `\"cpu_only\"` \u00b7 `\"cpu_and_gpu\"` \u00b7 `\"cpu_and_ne\"` |\n| `vocab`                      | `<metadata_di\u2026"
      },
      {
        "heading": "Zero-config \u2014 auto-selects int8 model for the configured language",
        "content": "stt = CoremlSTT(config={})"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-02-27T00:49:20Z",
    "last_updated": "2026-10-11T11:16:49Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "Collins1738-ovos-stt-plugin-elevenlabs",
    "skill_id": null,
    "name": "ovos-stt-plugin-elevenlabs",
    "description": "Use ElevenLabs Scribe v2 as an OpenVoiceOS speech-to-text provider. OVOS captures",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/Collins1738/ovos-stt-plugin-elevenlabs",
    "package_name": "ovos-stt-plugin-elevenlabs",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "Collins1738",
    "tier": 2,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-elevenlabs\n\nFor local development:\n\npip install -e '.[test]'"
      },
      {
        "heading": "Configure OVOS",
        "content": "Keep local Whisper as the fallback so network or provider failures do not stop\nvoice input:\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-elevenlabs\",\n    \"fallback_module\": \"ovos-stt-plugin-whispercpp\",\n    \"ovos-stt-plugin-elevenlabs\": {\n      \"model\": \"scribe_v2\",\n      \"no_verbatim\": true,\n      \"timeout\": 30\n    },\n    \"ovos-stt-plugin-whispercpp\": {\n      \"model\": \"small.en\"\n    }\n  }\n}\n\n`no_verbatim=true` removes filler words, false starts, and non-speech sounds.\nOptional `keyterms` can improve uncommon-name recognition but currently add a\n20% surcharge to ElevenLabs transcription charges."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-06T23:03:53Z",
    "last_updated": "2026-10-06T23:06:38Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-fasterwhisper",
    "skill_id": null,
    "name": "ovos-stt-plugin-fasterwhisper",
    "description": "FasterWhisper for OpenVoiceOS",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "whisper"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-fasterwhisper",
    "package_name": "ovos-stt-plugin-fasterwhisper",
    "pypi_version": "0.4.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 5,
    "forks": 5,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-fasterwhisper"
      },
      {
        "heading": "Configuration",
        "content": "This example configures the `large-v3` model to run on GPU:\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-fasterwhisper\",\n    \"ovos-stt-plugin-fasterwhisper\": {\n        \"model\": \"large-v3\",\n        \"use_cuda\": true,\n        \"compute_type\": \"float16\",\n        \"beam_size\": 5,\n        \"cpu_threads\": 4\n    }\n  }\n\nThis example uses Faster Whisper for language detection. It works only with `ovos-dinkum-listener`.\n\n  \"listener\": {\n    \"audio_transformers\": {\n        \"ovos-audio-transformer-plugin-fasterwhisper\": {\n            \"model\": \"small\"\n        }\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-29T16:47:08Z",
    "last_updated": "2026-01-08T04:12:14.564303Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-fasterwhisper-zuazo",
    "skill_id": null,
    "name": "ovos-stt-plugin-fasterwhisper-zuazo",
    "description": "FasterWhisper fine tuned models by Xabier de Zuazo for all the iberian peninsula languages, `pt`, `es`, `gl`, `ca`, `eu`",
    "examples": [],
    "tags": [
      "deprecated",
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "whisper"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-fasterwhisper-zuazo",
    "package_name": "ovos-stt-plugin-fasterwhisper-zuazo",
    "pypi_version": "0.1.4",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-fasterwhisper-zuazo`"
      },
      {
        "heading": "Configuration",
        "content": "to use small model locally\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-fasterwhisper-zuazo\",\n    \"ovos-stt-plugin-fasterwhisper-zuazo\": {\n        \"model\": \"small\"\n    }\n  }\n\nto use Large model with GPU\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-fasterwhisper-zuazo\",\n    \"ovos-stt-plugin-fasterwhisper-zuazo\": {\n        \"model\": \"large\",\n        \"use_cuda\": true,\n        \"compute_type\": \"float16\",\n        \"beam_size\": 5,\n        \"cpu_threads\": 4\n    }\n  }\n\nbest model is automatically selected based on language unless specified, valid config options are `tiny`,`base`,`small`,`medium`,`large`\n\n> you can also select `large-v1`, `large-v2` or `large-v3` explicitly, but `v3` is only available for `pt`,`ca`,`eu`\n\n### Models\n\n\n#### Portuguese\n\nself reported WER score from model pages\n\n| Model\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-15T14:42:33Z",
    "last_updated": "2025-06-17T23:46:17.380693Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-HiTZ",
    "skill_id": null,
    "name": "ovos-stt-plugin-HiTZ",
    "description": "> **This repository is archived. No further updates will be made.**",
    "examples": [],
    "tags": [
      "basque",
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-HiTZ",
    "package_name": "ovos-stt-plugin-HiTZ",
    "pypi_version": "0.1.0",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-10T07:55:06Z",
    "last_updated": "2024-10-10T07:57:28.776498Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-mms",
    "skill_id": null,
    "name": "ovos-stt-plugin-mms",
    "description": "> **This repository is archived. No further updates will be made.**",
    "examples": [],
    "tags": [
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-mms",
    "package_name": "ovos-stt-plugin-mms",
    "pypi_version": "0.2.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-13T17:40:26Z",
    "last_updated": "2024-09-29T16:45:30.662132Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-MyNorthAI",
    "skill_id": null,
    "name": "ovos-stt-plugin-MyNorthAI",
    "description": "",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-MyNorthAI",
    "package_name": "ovos-stt-plugin-MyNorthAI",
    "pypi_version": "0.1.0",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-04T02:50:37Z",
    "last_updated": "2025-01-15T21:47:15.294807Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "timonvanhasselt-ovos-stt-plugin-needle",
    "skill_id": null,
    "name": "ovos-stt-plugin-needle",
    "description": "An offline, privacy-respecting Speech-to-Text plugin for Open Voice OS (OVOS) powered by Needle and the **Whistle** model.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-stt-plugin-needle",
    "package_name": "ovos-stt-plugin-needle",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 2,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-stt-plugin-needle"
      },
      {
        "heading": "Configuration",
        "content": "Add the following configuration to your OVOS STT settings:\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-needle\"\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-06T13:45:36Z",
    "last_updated": "2026-10-06T15:33:46Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-nemo",
    "skill_id": null,
    "name": "ovos-stt-plugin-nemo",
    "description": "This is an OpenVoiceOS speech-to-text (STT) plugin for Nemo. A GPU is **strongly recommended**.",
    "examples": [],
    "tags": [
      "ilenia",
      "nemo",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-nemo",
    "package_name": "ovos-stt-plugin-nemo",
    "pypi_version": "0.2.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-nemo`"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-nemo\",\n    \"ovos-stt-plugin-nemo\": {\n        \"model\": \"stt_eu_conformer_ctc_large\",\n        \"use_cuda\": false\n    }\n  }\n\nThe `\"model\"` value can be a full path or URL to a `.nemo` file, or a pretrained model ID (see the list below).\n\nIf you do not set `\"model\"`, the plugin selects a model automatically based on the configured language.\n\n### Models\n\nSupported languages: `'en', 'es', 'ca', 'fr', 'de', 'pl', 'it', 'ru', 'zh', 'nl', 'uk', 'pt', 'eu', 'eo', 'be', 'hr', 'rw', 'fa', 'ua'`\n\nPre-trained models come from:\n- [Nvidia](https://ngc.nvidia.com/catalog/models/nvidia:nemospeechmodels)\n- [HiTZ](https://huggingface.co/HiTZ/stt_eu_conformer_ctc_large) (Basque)\n- [AINA](https://huggingface.co/projecte-aina/stt-ca-citrinet-512) (Catalan)\n- [NeonGeckoCom](\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-12T12:40:03Z",
    "last_updated": "2025-06-08T18:39:37.923764Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-nos",
    "skill_id": null,
    "name": "ovos-stt-plugin-nos",
    "description": "> **This repository is archived. No further updates will be made.**",
    "examples": [],
    "tags": [
      "ilenia",
      "openvoiceos",
      "plugin",
      "portuguese",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-nos",
    "package_name": "ovos-stt-plugin-nos",
    "pypi_version": "0.2.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-28T17:31:49Z",
    "last_updated": "2024-09-29T16:45:42.502799Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-onnx-asr",
    "skill_id": null,
    "name": "ovos-stt-plugin-onnx-asr",
    "description": "An OpenVoiceOS Speech-to-Text plugin backed by the lightweight onnx-asr library. This plugin runs offline and supports high-performance models like Nvidia Canary, Parakeet, and OpenAI Whisper via ONNX Runtime.",
    "examples": [],
    "tags": [
      "onnx",
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-onnx-asr",
    "package_name": "ovos-stt-plugin-onnx-asr",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 5,
    "forks": 0,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "To install the plugin, use `pip`. You also need to ensure the backend dependencies are installed.\n\npip install ovos-stt-plugin-onnx-asr\n\nTo run this plugin as a standalone server in a container, see\n[docs/docker.md](docs/docker.md) and [docs/deployment.md](docs/deployment.md).\nFor which model families load and how, see [docs/models.md](docs/models.md)."
      },
      {
        "heading": "Configuration",
        "content": "Configure the plugin in your `mycroft.conf` or user config.\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-onnx-asr\",\n    \"ovos-stt-plugin-onnx-asr\": {\n      \"model\": \"nemo-canary-1b-v2\",\n      \"quantization\": \"int8\"\n    }\n  }\n}\n\n\n### Per-language model resolution\n\nThe plugin ships a built-in best-model-per-language registry (`defaults.LANG_DEFAULTS`, ~90 languages \u2014 dedicated fine-tunes from the [OpenVoiceOS/stt-asr-onnx](https://huggingface.co/collections/OpenVoiceOS/stt-asr-onnx) collection, with parakeet-tdt-0.6b-v3 and whisper-base as multilingual coverage). Whisper ONNX exports are supported like any other model. The model for a request's language resolves in this order, trying the full BCP-47 tag before the nearest usable tag at each level:\n\n1. `lang2model` in the plugin config\n2. `ON\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-31T18:16:25Z",
    "last_updated": "2026-01-31T18:18:34.239003Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-pocketsphinx",
    "skill_id": null,
    "name": "ovos-stt-plugin-pocketsphinx",
    "description": "pocketsphinx STT plugin for mycroft",
    "examples": [],
    "tags": [
      "asr",
      "automatic-speech-recognition",
      "maintainer-wanted",
      "pocketsphinx",
      "speech-recognition",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-pocketsphinx",
    "package_name": "ovos-stt-plugin-pocketsphinx",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-pocketsphinx`"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-pocketsphinx\"\n  }\n \n\n### Advanced configuration\n\nIf you do not want to use the default english model (included) you configure this plugin to use a different one\n\n[Iberian Languages](https://github.com/JarbasIberianLanguageResources/iberian-sphinx) models can be found here, [SourceForge](https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/) also has models for other languages\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-pocketsphinx\",\n    \"ovos-stt-plugin-pocketsphinx\": {\n      \"acoustic-model\": \"path/to/hmm/folder\",\n      \"language-model\": \"path/to/lm/file.lm\",\n      \"pronounciation-dictionary\": \"path/to/phonemes/file.dict\"\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-03T03:12:57Z",
    "last_updated": "2021-09-01T03:36:54.674785Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-projectAINA-remote",
    "skill_id": null,
    "name": "ovos-stt-plugin-projectAINA-remote",
    "description": "OpenVoiceOS plugin for STT models hosted by ProjectAINA",
    "examples": [],
    "tags": [
      "catalan",
      "deprecated",
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-projectAINA-remote",
    "package_name": "ovos-stt-plugin-projectAINA-remote",
    "pypi_version": "0.0.2",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-projectAINA`"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-projectAINA-remote\",\n    \"ovos-stt-plugin-projectAINA-remote\": {\n        \"hf_token\": \"hf_UrseOhaTKIPknBz......\"\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-11-20T17:33:45Z",
    "last_updated": "2024-11-21T09:51:19.313256Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-rover",
    "skill_id": null,
    "name": "ovos-stt-plugin-rover",
    "description": "This plugin is a meta-STT engine for OVOS. It runs several STT backends in parallel and combines their output with the ROVER (Recognizer Output Voting Error Reduction) algorithm. The result is a single, more accurate transcript, at the cost of running more than one STT engine per utterance.",
    "examples": [],
    "tags": [
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-rover",
    "package_name": "ovos-stt-plugin-rover",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-stt-plugin-rover\n\nInstall the backend STT plugins you want to aggregate as well."
      },
      {
        "heading": "Configuration example",
        "content": "Add this to your `mycroft.conf`:\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-rover\",\n    \"ovos-stt-plugin-rover\": {\n        \"timeout\": 12,\n        \"workers\": 4,\n        \"backends\": [\n          {\n            \"module\": \"ovos-stt-plugin-whisper\",\n            \"config\": {\n              \"model\": \"small.en\"\n            }\n          },\n          {\n            \"module\": \"ovos-stt-plugin-vosk\",\n            \"config\": {\n              \"model\": \"vosk-model-en-us\"\n            }\n          },\n          {\n            \"module\": \"ovos-stt-plugin-xxx\",\n            \"config\": {\n              \"model\": \"...\"\n            }\n          }\n        ]\n    }\n  }\n}\n\n### Fields\n\n| Key        | Meaning                                        |\n| ---------- | ----------------------------------------------- |\n| `timeout`  | Tota\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-02-03T12:53:09Z",
    "last_updated": "2026-02-03T17:07:03.434630Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-selene",
    "skill_id": null,
    "name": "ovos-stt-plugin-selene",
    "description": "STT plugin to use selene backend services",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-selene",
    "package_name": "ovos-stt-plugin-selene",
    "pypi_version": "0.0.3",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-selene`"
      },
      {
        "heading": "Configuration",
        "content": "By default the global language used by mycroft-core will be used\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-selene\"\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-08-25T23:02:54Z",
    "last_updated": "2023-03-13T18:46:38.869707Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-sherpa-onnx",
    "skill_id": null,
    "name": "ovos-stt-plugin-sherpa-onnx",
    "description": "An OpenVoiceOS Speech-to-Text plugin that uses Sherpa-ONNX, the Kaldi-based speech recognition toolkit from k2-fsa. The plugin runs fully offline and supports Transducer, Whisper, Moonshine, Paraformer, and several CTC model architectures.",
    "examples": [],
    "tags": [
      "onnx",
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-sherpa-onnx",
    "package_name": "ovos-stt-plugin-sherpa-onnx",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-sherpa-onnx"
      },
      {
        "heading": "Configuration",
        "content": "Add the following to your `mycroft.conf`. The configuration keys depend on the `model_type` you choose.\n\n### Basic usage (Transducer)\n\nThis is the standard configuration for Zipformer and Conformer transducer models.\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-sherpa-onnx\",\n    \"ovos-stt-plugin-sherpa-onnx\": {\n      \"model\": \"sherpa-onnx-zipformer-en-libriheavy-20230830-large-punct-case\",\n      \"model_type\": \"transducer\",\n      \"encoder\": \"encoder-epoch-16-avg-2.int8.onnx\",\n      \"decoder\": \"decoder-epoch-16-avg-2.int8.onnx\",\n      \"joiner\": \"joiner-epoch-16-avg-2.int8.onnx\",\n      \"tokens\": \"tokens.txt\"\n    }\n  }\n}\n\n### Supported model types and examples\n\nThe plugin supports many architectures. Below are configuration examples for the most common ones.\n\n#### Whisper\n\n{\n  \"model\": \"sherpa\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-31T21:24:09Z",
    "last_updated": "2026-01-31T21:27:01.008902Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-vosk",
    "skill_id": null,
    "name": "ovos-stt-plugin-vosk",
    "description": "vosk STT plugin for mycroft",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-vosk",
    "package_name": "ovos-stt-plugin-vosk",
    "pypi_version": "0.2.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 15,
    "forks": 8,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-vosk`\n\nGet official models from [alphacephei](https://alphacephei.com/vosk/models)."
      },
      {
        "heading": "Configuration",
        "content": "Give the plugin a Kaldi model. Point `model` at a local folder or a direct download URL.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-vosk\",\n    \"ovos-stt-plugin-vosk\": {\n        \"model\": \"/path/to/unzipped/model/folder\"\n    }\n  }\n\n### Advanced configuration\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-vosk-streaming\",\n    \"ovos-stt-plugin-vosk-streaming\": {\n        \"model\": \"http://alphacephei.com/vosk/models/vosk-model-small-en-us-0.15.zip\",\n        \"verbose\": true\n    },\n    \"ovos-stt-plugin-vosk\": {\n        \"model\": \"http://alphacephei.com/vosk/models/vosk-model-small-en-us-0.15.zip\"\n    }\n  }\n\n`ovos-stt-plugin-vosk` runs regular STT. Transcription happens after recording finishes.\n\n`ovos-stt-plugin-vosk-streaming` runs streaming STT. Transcription happens in real time.\n\n`verbose` prints p\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-03T04:21:47Z",
    "last_updated": "2026-01-09T09:03:40.931146Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-wav2vec2",
    "skill_id": null,
    "name": "ovos-stt-plugin-wav2vec2",
    "description": "This is an OVOS speech-to-text (STT) plugin for Wav2Vec2 models. It loads a Wav2Vec2 model from Hugging Face and transcribes audio with it. If you do not set a model, the plugin picks one for you based on the language.",
    "examples": [],
    "tags": [
      "ilenia",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "wav2vec2"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-wav2vec2",
    "package_name": "ovos_stt_plugin_wav2vec",
    "pypi_version": "0.3.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-wav2vec"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-wav2vec\",\n    \"ovos-stt-plugin-wav2vec\": {\n        \"model\": \"proxectonos/Nos_ASR-wav2vec2-large-xlsr-53-gl-with-lm\"\n    }\n  }\n\n`model` can be any [compatible Wav2Vec2 model](https://huggingface.co/models?pipeline_tag=automatic-speech-recognition&sort=likes&search=%2Fwav2vec2) from Hugging Face. If you do not set it, the plugin picks a model based on `lang`.\n\n### Models\n\nIf your language is not in the list below, use `\"facebook/mms-1b-all\"` as the model. In that case, use the dedicated [ovos-stt-plugin-mms](https://github.com/OpenVoiceOS/ovos-stt-plugin-mms) plugin instead.\n\nSupported languages: `ab`, `ar`, `as`, `ba`, `bas`, `bg`, `bn`, `br`, `ca`, `cnh`, `cv`, `cy`,\n`cz`, `da`, `de`, `el`, `en`, `eo`, `es`, `fa`, `fi`, `fr`, `ga`, `gl`, `gn`, `ha`,\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-12T16:40:44Z",
    "last_updated": "2024-09-29T16:29:26.085394Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-whisper",
    "skill_id": null,
    "name": "ovos-stt-plugin-whisper",
    "description": "This is an OpenVoiceOS STT plugin for Whisper. It uses the `transformers` library to run the model.",
    "examples": [],
    "tags": [
      "plugin",
      "speech-to-text",
      "stt",
      "tigregotico",
      "whisper"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-whisper",
    "package_name": "ovos-stt-plugin-whisper",
    "pypi_version": "0.1.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-whisper`"
      },
      {
        "heading": "Configuration",
        "content": "This example uses the large model with a GPU.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-whisper\",\n    \"ovos-stt-plugin-whisper\": {\n        \"model\": \"openai/whisper-large-v3\",\n        \"use_cuda\": true\n    }\n  }\n\nYou can also pass the full path to a local model, or any Hugging Face `repo_id`, for example `\"projecte-aina/whisper-large-v3-ca-3catparla\"`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-29T04:45:05Z",
    "last_updated": "2025-07-30T15:07:49.984221Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-whisper-lm",
    "skill_id": null,
    "name": "ovos-stt-plugin-whisper-lm",
    "description": "This is an OpenVoiceOS STT plugin. It combines Whisper-LM-transformers, KenLM, and large language models with Whisper ASR models from the Hugging Face library.",
    "examples": [],
    "tags": [
      "ilenia",
      "llm",
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "whisper"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-whisper-lm",
    "package_name": "ovos-stt-plugin-whisper-lm",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-stt-plugin-whisper-lm`\n\n> \u26a0\ufe0f Only **python <=3.11** is supported by some of the dependencies."
      },
      {
        "heading": "Configuration",
        "content": "The example below uses the [HiTZ Basque KenLM model](https://huggingface.co/HiTZ/whisper-lm-ngrams). Adjust `lm_alpha`, `lm_beta`, and the other parameters to get the best results with your own models.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-whisper-lm\",\n    \"ovos-stt-plugin-whisper-lm\": {\n        \"model\": \"zuazo/whisper-medium-eu\",\n        \"lm_repo\": \"HiTZ/whisper-lm-ngrams\",\n        \"lm_model\": \"5gram-eu.bin\",\n        \"lm_alpha\": 0.33582369,\n        \"lm_beta\": 0.68825565,\n        \"use_cuda\": true\n    }\n  }\n> \ud83d\udca1 Set `lm_repo` only if you want to specify a specific filename in `lm_model`.\n\nTo use a large language model instead of an n-gram model:\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-whisper-lm\",\n    \"ovos-stt-plugin-whisper-lm\": {\n        \"model\": \"zuazo/whisper-medium-eu\",\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-08T11:00:54Z",
    "last_updated": "2025-06-08T18:32:55.688926Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-plugin-whispercpp",
    "skill_id": null,
    "name": "ovos-stt-plugin-whispercpp",
    "description": "This is an OpenVoiceOS speech-to-text (STT) plugin for whisper.cpp, a C/C++ port of OpenAI's Whisper automatic speech recognition model.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt",
      "whisper"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-plugin-whispercpp",
    "package_name": "ovos-stt-plugin-whispercpp",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 6,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-whispercpp"
      },
      {
        "heading": "Configuration",
        "content": "The available models are `tiny.en`, `tiny`, `base.en`, `base`, `small.en`, `small`, `medium.en`, `medium`, and `large`.\n\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-whispercpp\",\n    \"ovos-stt-plugin-whispercpp\": {\n        \"model\": \"tiny\"\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-10-24T22:07:07Z",
    "last_updated": "2026-02-01T01:58:59.224020Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "FormigTeen-ovos-stt-plugin-wit",
    "skill_id": null,
    "name": "ovos-stt-plugin-wit",
    "description": "OpenVoiceOS companion plugin for OpenVoiceOS STT Server",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/FormigTeen/ovos-stt-plugin-wit",
    "package_name": "ovos-stt-plugin-wit",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "FormigTeen",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install git+https://github.com/FormigTeen/ovos-stt-plugin-wit"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-wit\",\n    \"ovos-stt-plugin-wit\": {\n        \"key\": \"YOUR-KEY-HERE\"\n    }\n }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-08-04T22:02:36Z",
    "last_updated": "2024-06-07T00:45:28Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-server",
    "skill_id": null,
    "name": "ovos-stt-server",
    "description": "Turn any OVOS STT plugin into an HTTP microservice for speech-to-text and",
    "examples": [],
    "tags": [
      "openvoiceos",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-server",
    "package_name": "ovos-stt-http-server",
    "pypi_version": "0.1.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 9,
    "forks": 5,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-stt-http-server\n\nThe server only hosts plugins. Install at least one STT plugin alongside it:\n\npip install --pre ovos-stt-plugin-fasterwhisper\n\nOptional extras:\n\n| Extra | Installs | Enables |\n|-------|----------|---------|\n| `mcp` | `pip install --pre \"ovos-stt-http-server[mcp]\"` | embedded [MCP](docs/ai-agents.md) server at `/mcp` (requires `--mcp` flag) |\n| `audio` | `pip install --pre \"ovos-stt-http-server[audio]\"` | non-WAV audio decoding (`pydub`) for the vendor-compat routers |"
      },
      {
        "heading": "Configuration",
        "content": "The STT plugin is configured exactly as it would be inside an assistant, under\n`mycroft.conf`:\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-deepgram\",\n    \"ovos-stt-plugin-deepgram\": {\"key\": \"xxxxx\"}\n  }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-04-12T13:22:41Z",
    "last_updated": "2025-03-15T01:36:28.728203Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-stt-server-plugin",
    "skill_id": null,
    "name": "ovos-stt-server-plugin",
    "description": "OpenVoiceOS companion plugin for OpenVoiceOS STT Server",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "speech-to-text",
      "stt"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-stt-server-plugin",
    "package_name": "ovos_stt_plugin_server",
    "pypi_version": "0.1.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "STT Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 6,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-server"
      },
      {
        "heading": "Configuration",
        "content": "\"stt\": {\n    \"module\": \"ovos-stt-plugin-server\",\n    \"ovos-stt-plugin-server\": {\n      \"urls\": [\"https://0.0.0.0:8080/stt\"],\n      \"verify_ssl\": true\n    },\n }\n\nfor audio language detection\n\n  \"listener\": {\n    \"audio_transformers\": {\n        \"ovos-audio-lang-server-plugin\": {\n          \"urls\": [\"https://0.0.0.0:8080/lang_detect\"],\n          \"verify_ssl\": true\n        }\n    }\n  }\n\n### Security warning\n\nPlease note that while you can set `verify_ssl` to `false` to disable SSL\nverification, this is not recommended and should only be used for testing\npurposes. Consider using a private CA or certificates signed using\n[Let's Encrypt](https://letsencrypt.org/) instead."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-04-12T13:39:20Z",
    "last_updated": "2025-11-04T18:10:00.841219Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "ser-ovos-stt-whispercppserver-plugin",
    "skill_id": null,
    "name": "ovos-stt-whispercppserver-plugin",
    "description": "ovos stt plugin for whisper.cpp server",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/ser/ovos-stt-whispercppserver-plugin",
    "package_name": "ovos-stt-plugin-whispercppserver",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "ser",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-stt-plugin-whispercppserver"
      },
      {
        "heading": "Configuration",
        "content": "`~/.config/mycroft/mycroft.conf`\n\n{\n  \"stt\": {\n    \"module\": \"ovos-stt-plugin-whispercppserver\",\n    \"ovos-stt-plugin-whispercppserver\": {\n      \"server\": \"http://192.168.41.49:8910/inference\"\n      \"temperature\": \"0.0\"\n      \"temperature_inc\": \"0.2\"\n      \"timeout\": 120\n    }\n  }\n}\n\n`server`: MANDATORY! your whisper.cpp inference path instance URI\n\n`temperature`: Decoding temperature (default: 0.0)\n\n`temperature_inc`: Temperature increment (default: 0.2)\n\n`timeout`: timeout of inference request (default: 120 seconds)"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-27T03:42:53Z",
    "last_updated": "2025-06-27T08:47:00.448205Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-systemd",
    "skill_id": null,
    "name": "ovos-systemd",
    "description": "Systemd service files for the Mycroft A.I. software stack",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-systemd",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 10,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-03-27T10:14:53Z",
    "last_updated": "2026-09-10T16:38:13Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-technical-manual",
    "skill_id": null,
    "name": "ovos-technical-manual",
    "description": "developer oriented documentation",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-technical-manual",
    "package_name": null,
    "pypi_version": null,
    "license": "CC0-1.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 8,
    "forks": 10,
    "open_issues": 7,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-20T03:38:29Z",
    "last_updated": "2026-09-13T21:53:51Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tool-adapters",
    "skill_id": null,
    "name": "ovos-tool-adapters",
    "description": "Bridges **MCP** (Model Context Protocol) and **UTCP** (Universal Tool Calling Protocol) servers into the OVOS agentic loop as standard `ToolBox` plugins.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tool-adapters",
    "package_name": "ovos-tool-adapters",
    "pypi_version": "0.1.2",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Toolbox Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-tool-adapters[mcp]    # MCP support\npip install --pre ovos-tool-adapters[utcp]   # UTCP support\npip install --pre ovos-tool-adapters[mcp,utcp]"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-18T18:34:01Z",
    "last_updated": "2026-07-24T00:01:46.222977Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tools",
    "skill_id": null,
    "name": "ovos-tools",
    "description": "helper bash utils for raspOVOS and other linux systems",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tools",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-06T01:20:46Z",
    "last_updated": "2026-08-01T13:21:57Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-transcription-validator-plugin",
    "skill_id": null,
    "name": "ovos-transcription-validator-plugin",
    "description": "This plugin is a utterance transformer for OVOS. It uses an OpenAI-compatible large language model (LLM) to check speech-to-text (STT) transcriptions before your voice assistant processes them.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-transcription-validator-plugin",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 1,
    "open_issues": 12,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-transcription-validator-plugin\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "Add the plugin to the `utterance_transformers` section of your `mycroft.conf`.\n\nBy default, the plugin uses `https://llama.smartgic.io/v1` with the `qwen2.5:7b` model and a placeholder API key `sk-xxxx`.\n\n{\n  \"utterance_transformers\": {\n    \"ovos-transcription-validator-plugin\": {\n      \"api_url\": \"https://llama.smartgic.io/v1\",\n      \"api_key\": \"sk-xxxx\",\n      \"model\": \"qwen2.5:7b\",\n      \"prompt_template_system\": \"/path/to/system_template.txt\",\n      \"prompt_template_user\": \"/path/to/user_template.txt\",\n      \"error_sound\": true,\n      \"mode\": \"ignore\"\n    }\n  }\n}\n\n---\n\n### Available Settings\n\n| Key                     | Description                                                                                             | Default Value                 |\n|:------------------------|:--\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pt-br",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-14T14:22:06Z",
    "last_updated": "2026-11-07T16:10:30Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-translate-plugin-deepl",
    "skill_id": null,
    "name": "ovos-translate-plugin-deepl",
    "description": "Language Plugin for DeepL language detection and translation",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-translate-plugin-deepl",
    "package_name": "ovos_translate_plugin_deepl",
    "pypi_version": "0.0.0",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "add this to one of the configuration files (eg ~./config/mycroft/mycroft.conf)",
        "content": "\"language\": {\n    \"detection_module\": \"deepl_detection_plug\",\n    \"translation_module\": \"deepl_translate_plug\",\n    \"internal\": <lang>,                                # default target lang being used unless passed as arg\n    \"deepl_detection_plug\": {\n        \"api_key\": \"<API_KEY>\"\n    },\n    \"deepl_translate_plug\": {\n        \"api_key\": \"<API_KEY>\"\n    }\n}\n\n\n### General\n\nUsing this module standalone, the API key has to be passed\n\n\n**Translation**\nfrom ovos_translate_plugin_deepl import DeepLTranslator\n\ntranslator = DeepLTranslator({\"api_key\": <API_KEY>})\ntranslator.translate(\"hallo zusammen\", \"en-us\")  # auto detect source lang"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-26T21:59:16Z",
    "last_updated": "2023-05-01T19:21:33.022220Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-translate-plugin-nllb",
    "skill_id": null,
    "name": "ovos-translate-plugin-nllb",
    "description": "No Language Left Behind",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-translate-plugin-nllb",
    "package_name": "ovos-translate-plugin-nllb",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Translate Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the plugin with pip:\n\npip install ovos-translate-plugin-nllb"
      },
      {
        "heading": "Advanced Configuration",
        "content": "### HuggingFace Integration\n\nTo use a model hosted on the HuggingFace Hub, set the `model` parameter to the HuggingFace model ID. `NLLB200Translator` downloads and loads the model from HuggingFace.\n\n### Additional Parameters\n\n- `beam_size`: the beam size used for translation. A larger value trades speed for translation quality.\n- `device`: the device to run on, either `cpu` or `cuda` (GPU).\n\nfrom ovos_translate_plugin_nllb import NLLB200Translator\ntx = NLLB200Translator(config={\n    \"model\": \"nllb-200_600M_int8\",\n    \"beam_size\": 5,\n    \"device\": \"cuda\"\n})"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-06-07T21:54:26Z",
    "last_updated": "2025-12-14T23:38:03.354940Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-translate-server",
    "skill_id": null,
    "name": "ovos-translate-server",
    "description": "Turn any OVOS language plugin into an HTTP microservice for translation and",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-translate-server",
    "package_name": "ovos-translate-server",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-translate-server\n\nThe server only hosts plugins. Install at least one translation plugin, and\noptionally a dedicated language-detection plugin, alongside it:\n\npip install --pre ovos-translate-plugin-nllb              # translation\npip install --pre ovos-lang-detector-classics-plugin langdetect  # detection (optional)\n\nOptional extras:\n\n| Extra | Installs | Enables |\n|-------|----------|---------|\n| `mcp` | `pip install --pre \"ovos-translate-server[mcp]\"` + `--mcp` flag | embedded MCP server at `/mcp`, see [docs/ai-agents.md](docs/ai-agents.md) |\n| `lang-names` | `pip install --pre \"ovos-translate-server[lang-names]\"` | human-readable language names in vendor `languages` responses |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-02T15:01:39Z",
    "last_updated": "2025-01-16T03:14:48.890184Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-translate-server-plugin",
    "skill_id": null,
    "name": "ovos-translate-server-plugin",
    "description": "An OVOS plugin for language detection and translation. It sends requests to ovos-translate-server and returns the result. The server does the work. This plugin is the client.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-translate-server-plugin",
    "package_name": "ovos-translate-server-plugin",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Translate Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-translate-server-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-08-21T23:45:54Z",
    "last_updated": "2025-11-05T01:10:08.794851Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-translations",
    "skill_id": null,
    "name": "ovos-translations",
    "description": "url: https://github.com/JarbasAl/ovos-translations",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-translations",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-be",
      "nl-nl",
      "pt-pt",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-04-18T05:55:07Z",
    "last_updated": "2024-05-14T21:08:01Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-ahotts",
    "skill_id": null,
    "name": "ovos-tts-plugin-ahotts",
    "description": "An OVOS text-to-speech plugin for AhoTTS. It generates",
    "examples": [],
    "tags": [
      "ilenia",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-ahotts",
    "package_name": "ovos-tts-plugin-ahotts",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-ahotts"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-ahotts\",\n    \"ovos-tts-plugin-ahotts\": {\n        \"lang\": \"eu\"\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-15T13:02:19Z",
    "last_updated": "2025-06-08T18:38:05.015639Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-tts-plugin-audio8",
    "skill_id": null,
    "name": "ovos-tts-plugin-audio8",
    "description": "OVOS TTS plugin for Audio8 TTS 0.6B: one-shot voice cloning, faster than real time on CUDA and Apple Silicon",
    "examples": [],
    "tags": [
      "ovos",
      "status-poc",
      "tts",
      "voice-cloning"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-tts-plugin-audio8",
    "package_name": "ovos-tts-plugin-audio8",
    "pypi_version": "0.2.0",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-audio8"
      },
      {
        "heading": "Configure",
        "content": "\"tts\": {\n  \"module\": \"ovos-tts-plugin-audio8\",\n  \"ovos-tts-plugin-audio8\": {\n    \"voice\": \"seven\",\n    \"voices\": {\n      \"seven\": {\n        \"reference_audio\": \"/home/ovos/voices/regeneration_cycle.wav\",\n        \"reference_text\": \"Oh six hundred hours, regeneration cycle complete.\"\n      }\n    }\n  }\n}\n\nThe defaults select the fastest settings for your hardware. You must set only `voice` and `voices`.\n\n| Key | Default | Meaning |\n| :--- | :--- | :--- |\n| `voice` | none | Name of an entry in `voices`. If you do not set it, the model uses its own default voice. |\n| `voices` | `{}` | Map of voice name to `reference_audio` and `reference_text`. |\n| `device` | `auto` | `cuda`, `mps` or `cpu`. `auto` selects CUDA, then MPS, then CPU. |\n| `decoder` | `auto` | `cuda_graph`, `compile`, `eager` or `mo\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-29T16:34:30Z",
    "last_updated": "2026-10-29T20:30:14.453128Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-azure",
    "skill_id": null,
    "name": "ovos-tts-plugin-azure",
    "description": "OpenVoiceOS Text-to-speech plugin for the Azure Cognitive Services",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-azure",
    "package_name": "ovos_tts_plugin_azure",
    "pypi_version": "0.1.2a2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-plugin-azure"
      },
      {
        "heading": "Configuration",
        "content": "The `api_key` field is mandatory. Other fields default as shown below.\n\n\"tts\": {\n    \"module\": \"ovos-tts-plugin-azure\",\n    \"ovos-tts-plugin-azure\": {\n        \"api_key\": \"insert_your_key_here\",\n        \"voice\": \"en-US-JennyNeural\",\n        \"region\": \"westus\"\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-06-07T13:24:07Z",
    "last_updated": "2026-08-01T13:48:59.836622Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-beepspeak",
    "skill_id": null,
    "name": "ovos-tts-plugin-beepspeak",
    "description": "experiment adding new r2d2 tts engine for mycroft",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-beepspeak",
    "package_name": "ovos-tts-plugin-beepspeak",
    "pypi_version": "0.1.1a1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 3,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-beepspeak"
      },
      {
        "heading": "Configuration",
        "content": "Add this to your OVOS TTS configuration:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-beepspeak\",\n    \"ovos-tts-plugin-beepspeak\": {\n      \"time_step\": 0.1\n    }\n }\n\n`time_step` sets the length of the silence between beeps, in seconds. Valid values range\nfrom 0.1 to 0.7. The plugin clamps out-of-range values to the nearest limit."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2018-01-26T08:57:30Z",
    "last_updated": "2026-09-27T23:54:54.717329Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-coqui",
    "skill_id": null,
    "name": "ovos-tts-plugin-coqui",
    "description": "This is an OVOS TTS plugin for Coqui TTS.",
    "examples": [],
    "tags": [
      "coqui",
      "ilenia",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-coqui",
    "package_name": "ovos-tts-plugin-coqui",
    "pypi_version": "0.2.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 1,
    "open_issues": 13,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-coqui"
      },
      {
        "heading": "Configuration",
        "content": "### ovos-tts-plugin-coqui\n\nIf `\"model\"` is not set, the plugin selects a model automatically based on language.\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-coqui\",\n    \"ovos-tts-plugin-coqui\": {}\n  }\n\nYou can also set a specific model ID to use a pretrained model (see the full list\nbelow). Some models accept a `\"voice\"` (often called a \"speaker\" in the model).\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-coqui\",\n    \"ovos-tts-plugin-coqui\": {\n      \"model\": \"tts_models/en/vctk/XXX\",\n      \"voice\": \"p232\"\n    }\n  }\n\nYou can also set a model from a local path, with an optional vocoder if the model\narchitecture needs one.\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-coqui\",\n    \"ovos-tts-plugin-coqui\": {\n      \"model\": \"full/path/to/model.ckpt\",\n      \"model_config\": \"full/path/to/model_config.jso\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-13T04:15:06Z",
    "last_updated": "2024-09-15T21:03:45.631775Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-cotovia",
    "skill_id": null,
    "name": "ovos-tts-plugin-cotovia",
    "description": "galician tts plugin for OVOS",
    "examples": [],
    "tags": [
      "galician",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-cotovia",
    "package_name": "ovos-tts-plugin-cotovia",
    "pypi_version": "0.4.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 1,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the plugin.\n\npip install ovos-tts-plugin-cotovia\n\nThen download and install [Cotovia](https://sourceforge.net/projects/cotovia/files/Debian%20packages/).\n\n### Debian\n\nTo run Cotovia, install these packages:\n\n    cotovia_0.5_amd64.deb          --- Cotovia executable\n    cotovia-lang-gl_0.5_all.deb    --- Galician linguistic data\n    cotovia-lang-es_0.5_all.deb    --- Spanish linguistic data\n\nAlso install at least one voice:\n\n    cotovia-voice-iago_0.5_all.deb\n    cotovia-voice-sabela-large_0.5_all.deb\n    cotovia-voice-sabela_0.5_all.deb\n\n### Arch\n\nArch Linux users can find packages converted with `debtap` on the\n[releases page](https://github.com/OpenVoiceOS/ovos-tts-plugin-cotovia/releases/tag/0.4.1).\n\nsudo pacman -U /home/miro/Transfer\u00eancias/cotovia-0.5-1-x86_64.pkg.tar.zst\nsudo\u2026"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-cotovia\",\n    \"ovos-tts-plugin-cotovia\": {\n      \"voice\": \"iago\"\n    }\n  }\n\n### Advanced config\n\nYou can set these additional parameters:\n\n- `lang`: `gl` for Galician or `es` for Spanish.\n- `voice`: `iago` or `sabela`.\n- `pitch_scale_factor`: changes pitch (default `100`).\n- `time_scale_factor`: changes speed (default `100`).\n- `bin`: path to the executable (default `/usr/bin/cotovia`).\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-cotovia\",\n    \"ovos-tts-plugin-cotovia\": {\n      \"voice\": \"sabela\",\n      \"lang\": \"es\",\n      \"pitch_scale_factor\": 80,\n      \"time_scale_factor\": 80,\n      \"bin\": \"/usr/bin/cotovia\"\n    }\n  }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-01T23:17:15Z",
    "last_updated": "2025-06-08T18:36:54.429503Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-cotovia-remote",
    "skill_id": null,
    "name": "ovos-tts-plugin-cotovia-remote",
    "description": "OVOS TTS Remote plugin for Cotovia TTS demo server",
    "examples": [],
    "tags": [
      "deprecated",
      "galician",
      "ilenia",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-cotovia-remote",
    "package_name": "ovos-tts-plugin-cotovia-remote",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Then install the plugin\n\n`pip install ovos-tts-plugin-cotovia-remote`"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-cotovia-remote\",\n    \"ovos-tts-plugin-cotovia-remote\": {\n      \"voice\": \"iago\"\n    }\n  }\n \n\nvalid voices are `sabela`, `iago`, `david`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-03T15:55:51Z",
    "last_updated": "2024-12-03T15:57:53.968575Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-edge-tts",
    "skill_id": null,
    "name": "ovos-tts-plugin-edge-tts",
    "description": "OpenVoiceOS Text-to-speech plugin with Edge TTS",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-edge-tts",
    "package_name": "ovos-tts-plugin-edge-tts",
    "pypi_version": "0.2.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-plugin-edge-tts"
      },
      {
        "heading": "Configuration",
        "content": "Add the plugin to your user config file (`~/.config/mycroft/mycroft.conf`):\n\n\"tts\": {\n    \"module\": \"ovos-tts-plugin-edge-tts\",\n    \"ovos-tts-plugin-edge-tts\": {\n        \"voice\": \"en-US-AriaNeural\",\n        // =100% speed; use \"+50%\" for 150%, or \"+100%\" for 200% speech rate etc for adjusting speed\n        \"rate\": \"+0%\"\n    }\n}\n\nSee the [list of voices available in Edge TTS](https://gist.github.com/BettyJJ/17cbaa1de96235a7f5773b8690a20462).\n\nMany of the newer multilingual voices (from March 2024) also work with this plugin. For\nexample: `\"voice\": \"en-US-EmmaMultilingualNeural\"`."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-02-11T14:27:29Z",
    "last_updated": "2025-06-17T23:23:21.485808Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "FormigTeen-ovos-tts-plugin-elevenlabs",
    "skill_id": null,
    "name": "ovos-tts-plugin-elevenlabs",
    "description": "OpenVoiceOS companion plugin for OpenVoiceOS TTS Server",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/FormigTeen/ovos-tts-plugin-elevenlabs",
    "package_name": "ovos-tts-plugin-elevenlabs",
    "pypi_version": "0.1.0",
    "license": null,
    "archived": false,
    "author": "FormigTeen",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install git+https://github.com/FormigTeen/ovos-tts-plugin-elevenlabs.git"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-elevenlabs\",\n    \"ovos-tts-plugin-elevenlabs\": {\n        \"token\": \"YOUR-TOKEN-HERE\",\n        \"model\": \"eleven_multilingual_v1\",\n        \"id\": \"your-voice-id\",\n        \"stability\": 0.5,\n        \"similarity_boost\": 0,\n        \"style\": 0.2\n    }\n }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-07-31T19:52:52Z",
    "last_updated": "2025-12-16T22:26:55.858505Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "jaredcobb-ovos-tts-plugin-elevenlabs",
    "skill_id": null,
    "name": "ovos-tts-plugin-elevenlabs",
    "description": "ElevenLabs TTS plugin for OVOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/jaredcobb/ovos-tts-plugin-elevenlabs",
    "package_name": "ovos-tts-plugin-elevenlabs",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "jaredcobb",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-04T20:17:19Z",
    "last_updated": "2025-12-16T22:26:55.858505Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "reklis-ovos-tts-plugin-elevenlabs",
    "skill_id": null,
    "name": "ovos-tts-plugin-elevenlabs",
    "description": "An OVOS TTS plugin that uses ElevenLabs as the text-to-speech backend.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/reklis/ovos-tts-plugin-elevenlabs",
    "package_name": "ovos-tts-plugin-elevenlabs",
    "pypi_version": "0.1.0",
    "license": "MIT",
    "archived": false,
    "author": "reklis",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-plugin-elevenlabs"
      },
      {
        "heading": "Configuration",
        "content": "Add the following to your OVOS configuration (`~/.config/mycroft/mycroft.conf`):\n\n{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-elevenlabs\",\n    \"ovos-tts-plugin-elevenlabs\": {\n      \"api_key\": \"your-elevenlabs-api-key\",\n      \"voice_id\": \"21m00Tcm4TlvDq8ikWAM\"\n    }\n  }\n}"
      },
      {
        "heading": "Configuration Options",
        "content": "| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `api_key` | string | **required** | Your ElevenLabs API key |\n| `voice_id` | string | `21m00Tcm4TlvDq8ikWAM` | The voice ID to use (default is \"Rachel\") |\n| `model_id` | string | `eleven_monolingual_v1` | The model to use for synthesis |\n| `stability` | float | `0.5` | Voice stability (0.0 to 1.0) |\n| `similarity_boost` | float | `0.5` | Similarity boost (0.0 to 1.0) |\n| `style` | float | `0.0` | Style exaggeration (0.0 to 1.0) |\n| `use_speaker_boost` | bool | `true` | Enable speaker boost |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-16T21:43:36Z",
    "last_updated": "2025-12-16T22:26:55.858505Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-espeakNG",
    "skill_id": null,
    "name": "ovos-tts-plugin-espeakNG",
    "description": "espeakNG plugin",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-espeakNG",
    "package_name": "ovos-tts-plugin-espeakng",
    "pypi_version": "0.0.2",
    "license": "GPL-3.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 2,
    "open_issues": 12,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_tts_plugin_espeakng\n\nThe plugin needs the `espeak-ng` executable. Install it with:\n\napt-get install espeak-ng"
      },
      {
        "heading": "Configuration",
        "content": "Add this block to your OVOS configuration to select the plugin and a voice:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-espeakng\",\n    \"ovos-tts-plugin-espeakng\": {\n      \"voice\": \"m1\"\n    }\n }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-22T01:10:44Z",
    "last_updated": "2021-09-02T02:32:02.788927Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-google-tx",
    "skill_id": null,
    "name": "ovos-tts-plugin-google-tx",
    "description": "google translate tts plugin for OVOS / mycroft",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-google-tx",
    "package_name": "ovos-tts-plugin-google-tx",
    "pypi_version": "1.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-google-tx"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-google-tx\"\n  }\n\n### Extra options\n\nYou can override the language. Otherwise the plugin uses the system\nlanguage.\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-google-tx\",\n    \"ovos-tts-plugin-google-tx\": {\n      \"slow\": false,\n      \"lang\": \"fr\",\n      \"tld\": \"ca\"\n    }\n  }\n\nSet the `tld` option to [force an accent](https://gtts.readthedocs.io/en/latest/module.html#localized-accents).\nThis option also helps when a network blocks `google.com` but allows a\nlocal or different Google host.\n\nThe plugin recognizes the following regional accents and dialects, and\npicks the matching `tld` for each:"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-07-07T16:39:59Z",
    "last_updated": "2025-06-08T18:30:24.699986Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-tts-plugin-kokoro",
    "skill_id": null,
    "name": "ovos-tts-plugin-kokoro",
    "description": "OVOS TTS plugin for Kokoro \u2014 82M parameter multilingual TTS by hexgrad",
    "examples": [],
    "tags": [
      "kokoro",
      "neon",
      "ovos",
      "status-active",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-tts-plugin-kokoro",
    "package_name": "ovos-tts-plugin-kokoro",
    "pypi_version": "0.4.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-kokoro\n\n`espeak-ng` is required for the underlying G2P stack:"
      },
      {
        "heading": "Configuration",
        "content": "{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-kokoro\",\n    \"ovos-tts-plugin-kokoro\": {\n      \"voice\": \"af_bella\"\n    }\n  }\n}\n\n### Voice options\n\nKokoro ships 56 built-in voices across 9 languages. The voice id encodes language + gender:\n\n| Prefix | Language             | Examples                                    |\n| ------ | -------------------- | ------------------------------------------- |\n| `af_`  | American English (F) | `af_bella`, `af_heart`, `af_nicole`         |\n| `am_`  | American English (M) | `am_michael`, `am_onyx`, `am_eric`          |\n| `bf_`  | British English (F)  | `bf_alice`, `bf_emma`, `bf_lily`            |\n| `bm_`  | British English (M)  | `bm_george`, `bm_fable`, `bm_daniel`        |\n| `jf_` / `jm_` | Japanese      | `jf_alpha`, `jm_kumo` *(needs `[ja]` extra)* |\n| `\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-03T01:45:15Z",
    "last_updated": "2026-10-10T02:09:16.795507Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "aka0kuro-ovos-tts-plugin-lingva",
    "skill_id": null,
    "name": "ovos-tts-plugin-lingva",
    "description": "OVOS TTS plugin for Lingva.ml",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/aka0kuro/ovos-tts-plugin-lingva",
    "package_name": "ovos-tts-plugin-lingva",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "aka0kuro",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install git+https://github.com/aka0kuro/ovos-tts-plugin-lingva.git"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-lingva\"\n  }\n \n\n### Extra options\n\nYou can configure the Lingva instance and language settings:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-lingva\",\n    \"ovos-tts-plugin-lingva\": {\n      \"lingva_instance\": \"https://lingva.ml\",\n      \"lang\": \"en\"\n    }\n\n### Supported Languages\n\nThe plugin supports a wide range of languages including:\n\n- **English**: en, en-US, en-GB, en-AU, en-CA, en-IN, en-IE, en-ZA, en-NG\n- **Spanish**: es, es-ES, es-US, es-MX\n- **French**: fr, fr-FR, fr-CA\n- **Portuguese**: pt, pt-PT, pt-BR\n- **German**: de, de-DE, de-AT, de-CH\n- **Italian**: it, it-IT\n- **Dutch**: nl, nl-NL, nl-BE\n- **Russian**: ru, ru-RU\n- **Japanese**: ja, ja-JP\n- **Korean**: ko, ko-KR\n- **Chinese**: zh, zh-CN, zh-TW\n- **Arabic**: ar, ar-SA\n- **Hindi**: hi, hi-IN\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-08-09T20:54:13Z",
    "last_updated": "2025-08-10T18:26:33Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-lux",
    "skill_id": null,
    "name": "ovos-tts-plugin-lux",
    "description": "A LuxTTS plugin for the OpenVoiceOS voice assistant platform. LuxTTS is a",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-lux",
    "package_name": "ovos-tts-plugin-lux",
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-plugin-lux"
      },
      {
        "heading": "Configuration",
        "content": "The plugin needs a reference audio file for voice cloning. Add this to\n`mycroft.conf`:\n\n{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-lux\",\n    \"ovos-tts-plugin-lux\": {\n      \"prompt_audio\": \"/path/to/reference.wav\",\n      \"device\": \"cuda\",  # or \"cpu\" or \"mps\"\n      \"model_path\": \"YatharthS/LuxTTS\",\n      \"rms\": 0.01,\n      \"num_steps\": 4,\n      \"t_shift\": 0.9,\n      \"speed\": 1.0,\n      \"return_smooth\": false,\n      \"ref_duration\": 5\n    }\n  }\n}\n\n| Parameter | Type | Default | Description |\n|-----------|------|---------|-------------|\n| `model_path` | str | \"YatharthS/LuxTTS\" | HuggingFace model path |\n| `device` | str | \"cuda\" | Device to use (cuda/cpu/mps) |\n| `threads` | int | 4 | Number of threads for CPU |\n| `prompt_audio` | str | None | Path to reference audio file (required) |\n| `rms\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-12T22:28:39Z",
    "last_updated": "2026-08-10T17:43:50Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-marytts",
    "skill_id": null,
    "name": "ovos-tts-plugin-marytts",
    "description": "This is a text-to-speech (TTS) plugin for OpenVoiceOS that connects to a MaryTTS server. The plugin sends text to the MaryTTS server and returns the audio it gets back. You must install and run MaryTTS separately, on the same machine or on a different one.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-marytts",
    "package_name": "ovos_tts_plugin_marytts",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 2,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "$ pip install ovos-tts-plugin-marytts"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-marytts\",\n    \"ovos-tts-plugin-marytts\": {\n      \"url\": \"http://0.0.0.0:59125\",\n      \"voice\": \"cmu-slt-hsmm\"\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-23T08:34:19Z",
    "last_updated": "2026-01-23T21:56:40.238965Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-matxa-multispeaker-cat",
    "skill_id": null,
    "name": "ovos-tts-plugin-matxa-multispeaker-cat",
    "description": "> **This repository is archived. No further updates will be made.**",
    "examples": [],
    "tags": [
      "catalan",
      "ilenia",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-matxa-multispeaker-cat",
    "package_name": "ovos-tts-plugin-matxa-multispeaker-cat",
    "pypi_version": "0.0.1a5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install phoonnx\n\n`espeak-ng` with Catalan support is required (same as before). Depending on your distro you may need to compile from source \u2014 see the [espeak-ng Catalan PR](https://github.com/espeak-ng/espeak-ng/pull/1681).\n\nAlternatively, use `OpenVoiceOS/matxa-cat-central-graphemes-v2` which requires no espeak-ng."
      },
      {
        "heading": "Configuration mapping",
        "content": "**Before:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-matxa-multispeaker-cat\",\n  \"ovos-tts-plugin-matxa-multispeaker-cat\": {\n    \"voice\": \"valencia/gina\"\n  }\n}\n\n**After:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"voice\": \"OpenVoiceOS/matxa-cat-multispeaker-vocos-2stage\",\n    \"speaker_id\": 7\n  }\n}\n\n### Auto-select by language\n\nSet your OVOS language to `ca`, `ca-ba`, `ca-va`, or `ca-nw` and leave `voice` unset \u2014 phoonnx will select the appropriate Matxa dialect variant automatically."
      }
    ],
    "languages": [
      "ca-es"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-31T21:44:08Z",
    "last_updated": "2024-07-31T22:08:32.083982Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-mimic",
    "skill_id": null,
    "name": "ovos-tts-plugin-mimic",
    "description": "This plugin connects Mimic 1 to OpenVoiceOS through",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic",
    "package_name": "ovos-tts-plugin-mimic",
    "pypi_version": "0.3.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "G2P Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 4,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-mimic\n\nThe plugin needs the `mimic` binary. [Compile it from source](https://github.com/MycroftAI/mycroft-core/blob/dev/scripts/install-mimic.sh),\nor install a prebuilt package from [forslund's repo](https://forslund.github.io/mycroft-desktop-repo/)."
      },
      {
        "heading": "Configuration",
        "content": "If `mimic` is on the system path, set only a voice:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-mimic\",\n    \"ovos-tts-plugin-mimic\": {\n      \"voice\": \"ap\"\n    }\n  }\n\n### Advanced config\n\nA voice can be a URL, a file path, or one of the voices built into `mimic`. You can find\ncompatible festvox voices on the [festvox flite voice page](http://www.festvox.org/flite/packed/flite-2.0/voices/).\n\nSet the path to the `mimic` binary if it is not on the system path:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-mimic\",\n    \"ovos-tts-plugin-mimic\": {\n      \"voice\": \"http://www.festvox.org/flite/packed/flite-2.0/voices/cmu_us_fem.flitevox\",\n      \"binary\": \"~/mimic1/mimic\"\n    }\n  }\n\nMycroft premium subscribers get a female voice called `trinity`. This voice is a\nprecompiled `mimic` binary with the voice\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2021-06-07T19:04:43Z",
    "last_updated": "2024-09-11T02:43:20.197791Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-mimic2",
    "skill_id": null,
    "name": "ovos-tts-plugin-mimic2",
    "description": "OVOS TTS plugin for Mimic2",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic2",
    "package_name": "ovos-tts-plugin-mimic2",
    "pypi_version": "0.1.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-tts-plugin-mimic2`"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-mimic2\",\n    \"ovos-tts-plugin-mimic2\": {\n        \"voice\": \"kusal\"\n    }\n  }\n \n\nAvailable Voices:\n- `kusal` - Mycroft AI official voice, hosted at https://mimic-api.mycroft.ai\n- `nancy` - trained on [Nancy Corpus](http://www.cstr.ed.ac.uk/projects/blizzard/2011/lessac_blizzard2011/) by [@MXGray](https://github.com/MXGray), hosted at https://nancy.2022.us\n- `ljspeech` - trained on [LJ-Speech-Dataset](https://keithito.com/LJ-Speech-Dataset) by [keithito](https://github.com/keithito/tacotron), hosted at https://ljspeech.2022.us\n\n### Self Hosting\n\nThe Kusal voice model is not provided by MycroftAI and can not be self hosted\n\ndocker pull ghcr.io/openvoiceos/mimic2-nancy:dev\ndocker pull ghcr.io/openvoiceos/mimic2-ljspeech:dev\n\nYou can also build the contain\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-07T20:00:15Z",
    "last_updated": "2022-03-13T14:12:04.308977Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-mimic3",
    "skill_id": null,
    "name": "ovos-tts-plugin-mimic3",
    "description": "Text to speech plugin for OVOS using Mimic 3",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3",
    "package_name": "ovos-tts-plugin-mimic3",
    "pypi_version": "0.0.0",
    "license": "AGPL-3.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the necessary system packages:\n\n``` sh\nsudo apt-get install libespeak-ng1\n\nOn 32-bit ARM platforms (a.k.a. `armv7l` or `armhf`), you will also need some extra libraries:\n\n``` sh\nsudo apt-get install libatomic1 libgomp1 libatlas-base-dev\n\ninstall the TTS plugin in Mycroft:\n\n`pip install ovos-tts-plugin-mimic3[all]`\n\nRemoving `[all]` will install support for English only.\n\nAdditional language support can be selectively installed by replacing `all` with a two-character language code, such as `de` (German) or `fr` (French).\nSee [`setup.py`](https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3/blob/master/setup.py#L55) for an up-to-date list of language codes."
      },
      {
        "heading": "Configuration",
        "content": "``` json\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-mimic3\",\n    \"ovos-tts-plugin-mimic3\": {\n      \"voice\": \"en_UK/apope_low\"\n    }\n  }\n\n\n### Advanced config\n\n\n``` json\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-mimic3\",\n  \"ovos-tts-plugin-mimic3\": {\n      \"voice\": \"en_US/cmu-arctic_low\",  // default voice\n      \"speaker\": \"fem\",  // default speaker\n      \"length_scale\": 1.0,  // speaking rate\n      \"noise_scale\": 0.667,  // speaking variablility\n      \"noise_w\": 1.0  // phoneme duration variablility\n  }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-07-05T14:58:29Z",
    "last_updated": "2023-03-14T19:06:44.043280Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-mimic3-server",
    "skill_id": null,
    "name": "ovos-tts-plugin-mimic3-server",
    "description": "OVOS Server TTS plugin for Mimic3",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3-server",
    "package_name": "ovos-tts-plugin-mimic3-server",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-tts-plugin-mimic3-server`"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-mimic3-server\",\n    \"ovos-tts-plugin-mimic3-server\": {\n        \"voice\": \"en_UK/apope_low\"\n    }\n  }\n \n\n### Voices\n\nYou can find a list of valid voices [here](https://github.com/MycroftAI/mimic3-voices)\n\nyou can specify a speaker by adding `#speaker_name` at the end of the voice\n\nNOTE: mimic3 uses the terminology \"voice\" and \"speaker\". A more accurate nomenclature would be \"model\" and \"voice/speaker\""
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-10-21T05:50:52Z",
    "last_updated": "2023-03-14T00:28:36.969856Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-nos",
    "skill_id": null,
    "name": "ovos-tts-plugin-nos",
    "description": "Galician TTS",
    "examples": [],
    "tags": [
      "deprecated",
      "ilenia",
      "openvoiceos",
      "plugin",
      "portuguese",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-nos",
    "package_name": "ovos_tts_plugin_nos",
    "pypi_version": "0.7.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install phoonnx\n\nFor the cotovia-phonemized voices (`sabela`, `icia`, `iago`, `paulo`, `brais-cotovia`, `celtia-cotovia`), `cotovia` must be available in your base OS \u2014 same requirement as before. Follow the install steps in [ovos-tts-plugin-cotovia](https://github.com/OpenVoiceOS/ovos-tts-plugin-cotovia)."
      },
      {
        "heading": "Configuration mapping",
        "content": "**Before:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-nos\",\n  \"ovos-tts-plugin-nos\": {\n    \"voice\": \"celtia\"\n  }\n}\n\n**After:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"voice\": \"proxectonos/celtia\"\n  }\n}\n\nFor a cotovia voice:\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"voice\": \"proxectonos/sabela-cotovia\"\n  }\n}\n\n### Auto-select by language\n\nSet your OVOS language to `gl-ES` and leave `voice` unset \u2014 phoonnx will select a Galician voice automatically."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-12T20:12:04Z",
    "last_updated": "2025-11-22T22:38:45.604555Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-omnivoice",
    "skill_id": null,
    "name": "ovos-tts-plugin-omnivoice",
    "description": "OmniVoice massively-multilingual zero-shot TTS plugin for OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-omnivoice",
    "package_name": "ovos-tts-plugin-omnivoice",
    "pypi_version": "0.0.2a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "The OmniVoice runtime (PyTorch + the multi-GB `omnivoice` package) is a core\ndependency, so a plain install is enough to synthesize:\n\npip install ovos-tts-plugin-omnivoice\n\nIt runs on **CPU or GPU**. A GPU is optional and only makes synthesis faster; it is **not required**. The\ndefault install pulls PyPI's default torch build (CPU-capable). To target a\nspecific accelerator, reinstall torch from the matching index:"
      },
      {
        "heading": "Configuration",
        "content": "`mycroft.conf`:\n\n{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-omnivoice\",\n    \"ovos-tts-plugin-omnivoice\": {\n      \"lang\": \"en\",\n      \"voice\": \"auto\",\n      \"num_step\": 32\n    }\n  }\n}\n\nConfig keys:\n\n| Key | Default | Meaning |\n|-----|---------|---------|\n| `lang` | session lang | BCP-47 tag, mapped to an OmniVoice `language_id` (tables above) |\n| `voice` | `auto` | `auto`, `female`, `male`, or a preset name |\n| `instruct` | none | free-text voice-design string (overrides `voice`) |\n| `ref_audio` | none | path to a 3 to 10 s reference clip \u2192 voice cloning mode |\n| `ref_text` | none | transcript of `ref_audio` (auto-transcribed if omitted) |\n| `device` | auto | `cuda:0`, `cpu`, `mps`, or `xpu`, auto-detected (CUDA if available, else CPU) |\n| `dtype` | auto | torch dtype, `float16` on CUDA, `\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-15T00:44:41Z",
    "last_updated": "2026-08-02T16:54:28.130491Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-pico",
    "skill_id": null,
    "name": "ovos-tts-plugin-pico",
    "description": "pico-tts-plugin",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-pico",
    "package_name": "ovos-tts-plugin-pico",
    "pypi_version": "0.0.3.post1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-pico\n\n`pico2wave` must be available. On a Raspberry Pi, install it with:\n\napt-get install libttspico0\napt-get install libttspico-utils\n\nYou can also install it from [source](https://github.com/naggety/picotts)."
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-pico\"\n }\n\nThe voice corresponds to a language code. OVOS auto-detects it from the global config.\n\nYou can also set it explicitly to one of `\"de-DE\", \"es-ES\", \"fr-FR\", \"it-IT\", \"en-US\"`:\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-pico\",\n    \"ovos-tts-plugin-pico\": {\n      \"voice\": \"en-US\"\n    }\n }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-22T01:12:19Z",
    "last_updated": "2022-02-17T16:41:47.955656Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-piper",
    "skill_id": null,
    "name": "ovos-tts-plugin-piper",
    "description": "> **This repository is archived. No further updates will be made.**",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-piper",
    "package_name": "ovos_tts_plugin_piper",
    "pypi_version": "0.2.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 38,
    "forks": 13,
    "open_issues": 7,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install phoonnx\n\n`espeak-ng` must be available in your base OS (install via your distro package manager) \u2014 same requirement as before."
      },
      {
        "heading": "Configuration mapping",
        "content": "Replace the plugin module and key. Voice IDs use the `piper/<lang_code>-<name>` format:\n\n**Before:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-piper\",\n  \"ovos-tts-plugin-piper\": {\n    \"voice\": \"alan-low\"\n  }\n}\n\n**After:**\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"voice\": \"piper/en_GB-alan-low\"\n  }\n}\n\n### Local model path\n\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"model\": \"/path/to/model.onnx\",\n    \"model_config\": \"/path/to/model.onnx.json\"\n  }\n}\n\n### Remote URL\n\n\"tts\": {\n  \"module\": \"ovos-tts-plugin-phoonnx\",\n  \"ovos-tts-plugin-phoonnx\": {\n    \"model\": \"https://huggingface.co/poisson-fish/piper-vasco/resolve/main/onnx/vasco.onnx\",\n    \"model_config\": \"https://huggingface.co/poisson-fish/piper-vasco/resolve/main\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-28T03:56:29Z",
    "last_updated": "2025-11-05T00:37:54.808116Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-tts-plugin-pocket-tts",
    "skill_id": null,
    "name": "ovos-tts-plugin-pocket-tts",
    "description": "OVOS TTS plugin for Pocket TTS \u2014 lightweight CPU-only TTS by Kyutai",
    "examples": [],
    "tags": [
      "ovos",
      "pocket-tts",
      "status-poc",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-tts-plugin-pocket-tts",
    "package_name": "ovos-tts-plugin-pocket-tts",
    "pypi_version": "0.2.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-pocket-tts\n\nWith `uv`, torch automatically resolves to the CPU-only wheel (configured via `tool.uv.sources`).\n\n### Linux: CPU-only torch (saves ~2GB)\n\nOn Linux, pip defaults to the CUDA torch wheel (~2.5GB). If you don't need GPU support (pocket-tts is CPU-only anyway), install torch from the CPU index first:\n\npip install torch --index-url https://download.pytorch.org/whl/cpu\npip install ovos-tts-plugin-pocket-tts\n\nOn macOS, this is not needed \u2014 PyPI torch is already CPU-only (~60MB)."
      },
      {
        "heading": "Configuration",
        "content": "{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-pocket-tts\",\n    \"ovos-tts-plugin-pocket-tts\": {\n      \"voice\": \"alba\"\n    }\n  }\n}\n\n### Voice options\n\n**Built-in voices:** `alba`, `marius`, `javert`, `jean`, `fantine`, `cosette`, `eponine`, `azelma`\n\n**Voice cloning:** Set `voice` to a path to a `.wav` file, a pre-exported `.safetensors` file, or a HuggingFace URI (`hf://kyutai/tts-voices/...`)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-30T01:42:38Z",
    "last_updated": "2026-09-25T02:08:34.768551Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-polly",
    "skill_id": null,
    "name": "ovos-tts-plugin-polly",
    "description": "This plugin lets OpenVoiceOS use Amazon Polly as a text-to-speech engine. It needs an Amazon Web Services access key.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-polly",
    "package_name": "ovos-tts-plugin-polly",
    "pypi_version": "0.2.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-polly"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-22T18:48:38Z",
    "last_updated": "2024-09-10T22:27:43.932524Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-plugin-SAM",
    "skill_id": null,
    "name": "ovos-tts-plugin-SAM",
    "description": "S.A.M - Software Automatic Mouth",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-plugin-SAM",
    "package_name": "ovos-tts-plugin-SAM",
    "pypi_version": "0.0.1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 10,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-SAM"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-SAM\"\n }\n\nThe original manual lists these typical voice values:\n\n    DESCRIPTION          SPEED     PITCH     THROAT    MOUTH\n    Elf                   72        64        110       160\n    Little Robot          92        60        190       190\n    Stuffy Guy            82        72        110       105\n    Little Old Lady       82        32        145       145\n    Extra-Terrestrial    100        64        150       200\n    SAM                   72        64        128       128\n\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-SAM\",\n    \"ovos-tts-plugin-SAM\": {\n      \"voice\": \"stuffy guy\"\n    }\n }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-09-23T19:57:38Z",
    "last_updated": "2021-09-23T20:05:09.869867Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "timonvanhasselt-ovos-tts-plugin-supertonic",
    "skill_id": null,
    "name": "ovos-tts-plugin-supertonic",
    "description": "A lightweight, local TTS plugin for Open Voice OS (OVOS) using Supertonic V2 ONNX model.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/timonvanhasselt/ovos-tts-plugin-supertonic",
    "package_name": "ovos-tts-plugin-supertonic",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "timonvanhasselt",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "git clone\ncd ovos-tts-plugin-supertonic\npip install ."
      },
      {
        "heading": "Configuration",
        "content": "Update your mycroft.conf:\n  \"tts\": {\n    \"module\": \"supertonic_tts_plugin\",\n    \"supertonic_tts_plugin\": {\n      \"voice\": \"Sarah\",  // Choose: Sarah (F1), Lily (F2), Jessica (F3), Olivia (F4), Emily (F5), Alex (M1), James (M2), Robert (M3), Sam (M4), Daniel (M5)\n      \"lang\": \"en\", // Change the language to the preferred other language then OVOS interface language, if supported. Fallback is \"en\"\n      \"quality\": 5, #quality steps range 1 - 15\n      \"speed\": 1.05 #default suggested by Supertonic, speed up to 1.3x supported\n    }\n}"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-07T20:01:28Z",
    "last_updated": "2026-01-07T20:35:44Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "BigTree777-ovos-tts-plugin-voicevox-server",
    "skill_id": null,
    "name": "ovos-tts-plugin-voicevox-server",
    "description": "OpenVoiceOS TTS plugin for a VOICEVOX Engine server (Japanese speech synthesis)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/BigTree777/ovos-tts-plugin-voicevox-server",
    "package_name": "ovos-tts-plugin-voicevox-server",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "BigTree777",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-06T10:17:36Z",
    "last_updated": "2026-07-06T10:31:02Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-server",
    "skill_id": null,
    "name": "ovos-tts-server",
    "description": "simple flask server to host OpenVoiceOS tts plugins as a service",
    "examples": [],
    "tags": [
      "openvoiceos",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-server",
    "package_name": "ovos-tts-server",
    "pypi_version": "1.13.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 16,
    "forks": 5,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-tts-server"
      },
      {
        "heading": "Configuration",
        "content": "The plugin is configured exactly as it would be inside the assistant, through `mycroft.conf`:\n\n{\n  \"tts\": {\n    \"module\": \"ovos-tts-plugin-piper\",\n    \"ovos-tts-plugin-piper\": {\n      \"model\": \"alan-low\"\n    }\n  }\n}\n\nSee [docs/configuration.md](docs/configuration.md) for how voice and language flow from a request to the plugin.\n\n### Transformer pipelines\n\nThe server can run OVOS transformer plugins around synthesis, on every endpoint (native, vendor-compat, websocket, MCP/UTCP). **Dialog transformers** rewrite the text before synthesis, and **tts transformers** post-process the audio. Enable them with the standard mycroft.conf sections:\n\n{\n  \"dialog_transformers\": {\n    \"ovos-dialog-transformer-openai-plugin\": {\"rewrite_prompt\": \"reply in a cheerful tone\"}\n  },\n  \"tts_transformers\": {\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-02-17T14:24:04Z",
    "last_updated": "2026-07-14T17:36:51.306615Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-server-plugin",
    "skill_id": null,
    "name": "ovos-tts-server-plugin",
    "description": "This plugin connects OpenVoiceOS to an OpenVoiceOS TTS Server instance. It sends text to the server and returns the synthesized audio to OVOS.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-server-plugin",
    "package_name": "ovos_tts_plugin_server",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 6,
    "open_issues": 11,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-plugin-server"
      },
      {
        "heading": "Configuration",
        "content": "\"tts\": {\n    \"module\": \"ovos-tts-plugin-server\",\n    \"ovos-tts-plugin-server\": {\n        \"host\": \"https://tts.smartgic.io/piper\",\n        \"v2\": true,\n        \"verify_ssl\": true,\n        \"tts_timeout\": 5\n     }\n } \n\n- `host`: the URL of the TTS server. The plugin appends `/synthesize` to this URL.\n- `v2`: use the v2 API, if the server offers it.\n- `verify_ssl`: verify the server's SSL certificate. Set this to `false` for a self-signed certificate, but see the [security warning](#security-warning) before you do.\n- `tts_timeout`: timeout, in seconds, for a request to the server. The default is 5 seconds.\n\n### v2 API (ovos-tts-server 0.0.3a10 and later)\n\nIf the TTS server plugin supports v2, set `v2` to `true` to use the newer API. The `host` value stays the same either way. For example, it st\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-02-17T22:48:57Z",
    "last_updated": "2026-03-04T18:17:12.826175Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-transformer-audiosr",
    "skill_id": null,
    "name": "ovos-tts-transformer-audiosr",
    "description": "Engine-agnostic audio super-resolution for OpenVoiceOS speech synthesis. It",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-transformer-audiosr",
    "package_name": "ovos-tts-transformer-audiosr",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-transformer-audiosr"
      },
      {
        "heading": "Configuration",
        "content": "Enable the transformer in `mycroft.conf` under the `tts_transformers` section,\nkeyed by the plugin name:\n\n\"tts_transformers\": {\n  \"ovos-tts-transformer-audiosr\": {\"engine\": \"novasr\"}\n}\n\nMultiple TTS transformers can be chained. Execution order follows each plugin's\n`priority` (this plugin defaults to `50`).\n\n### Engines\n\nSelect the super-resolution engine with the `engine` config key:\n\n| engine        | notes                                                                 |\n|---------------|-----------------------------------------------------------------------|\n| `novasr`      | **Default.** Natural on TTS output and lightweight.                    |\n| `lavasr`      | Higher-detail bandwidth extension. Can add audible high-frequency noise on already-wideband voices. |\n| `hifiganbwe`  | Hi\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-15T03:07:12Z",
    "last_updated": "2026-10-10T22:01:53Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-tts-transformer-sox-plugin",
    "skill_id": null,
    "name": "ovos-tts-transformer-sox-plugin",
    "description": "This plugin changes TTS audio before playback. It runs after the TTS engine generates a wav file and applies SoX (Sound eXchange) effects to it. Use it to add effects such as reverb, echo, or pitch shifting to synthesized speech.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "text-to-speech",
      "transformers",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-tts-transformer-sox-plugin",
    "package_name": "ovos-tts-transformer-sox-plugin",
    "pypi_version": "0.0.0a4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tts-transformer-sox-plugin"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-10-06T23:12:15Z",
    "last_updated": "2026-09-26T14:28:13.996169Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-tui-client",
    "skill_id": null,
    "name": "ovos-tui-client",
    "description": "A split-pane terminal UI for testing OVOS without a mic/speaker: type utterances, see the conversation, watch toggleable live logs - built as a replacement for the unmaintained ovos-cli-client / broken neon-cli-client pyyaml build.",
    "examples": [],
    "tags": [
      "ovos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-tui-client",
    "package_name": "ovos-tui-client",
    "pypi_version": "0.2.1",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 0,
    "open_issues": 15,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-tui-client\novos-tui                                  # connects to 127.0.0.1:8181\novos-tui --host 192.168.1.50 --lang da-dk\n\nA container image is published on every release: `docker run -it --rm --network host ghcr.io/andlo/ovos-tui-client:latest`. `pip install ovos-tui-client[web]` and `ovos-tui --web` serve it in a browser. See [Web and Docker](https://andlo.github.io/ovos-tui-client/web-and-docker/)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-22T19:17:04Z",
    "last_updated": "2026-10-01T08:21:20.235976Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ui-enclosure-protocol",
    "skill_id": null,
    "name": "ovos-ui-enclosure-protocol",
    "description": "The consumer/listener home of the legacy **Mark-1 hardware enclosure protocol**",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ui-enclosure-protocol",
    "package_name": "ovos-ui-enclosure-protocol",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ui-enclosure-protocol"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-25T13:20:13Z",
    "last_updated": "2026-06-25T13:58:55.455950Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-utils",
    "skill_id": null,
    "name": "ovos-utils",
    "description": "`ovos-utils` is a shared utility library for the OpenVoiceOS ecosystem. It provides",
    "examples": [],
    "tags": [
      "core",
      "framework",
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-utils",
    "package_name": "ovos-utils",
    "pypi_version": "0.8.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 6,
    "forks": 12,
    "open_issues": 20,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-utils"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-24T11:11:55Z",
    "last_updated": "2026-03-11T04:28:57.691708Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-utterance-corrections-plugin",
    "skill_id": null,
    "name": "ovos-utterance-corrections-plugin",
    "description": "This plugin corrects speech-to-text (STT) output before intent matching. It is an OVOS text transformer plugin that applies user-defined replacements to each utterance.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-utterance-corrections-plugin",
    "package_name": "ovos_utterance_corrections_plugin",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-utterance-corrections-plugin\n\nThe plugin registers itself as an OVOS transformer plugin under the entry point group `opm.transformer.text`, so [ovos-core](https://github.com/OpenVoiceOS/ovos-core) picks it up automatically once installed.\n\n---"
      },
      {
        "heading": "Configuration Paths",
        "content": "| File                      | Purpose                               |\n|---------------------------|----------------------------------------|\n| `corrections.json`        | Full utterance replacements.          |\n| `word_corrections.json`   | Word-level replacements.              |\n| `regex_corrections.json`  | Regex-based pattern replacements.     |\n\nAll correction files live under `~/.local/share/mycroft/`.\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-06-22T00:12:25Z",
    "last_updated": "2025-11-05T01:00:44.594413Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-utterance-normalizer",
    "skill_id": null,
    "name": "ovos-utterance-normalizer",
    "description": "`ovos-utterance-normalizer` is an OVOS plugin that",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-utterance-normalizer",
    "package_name": "ovos-utterance-normalizer",
    "pypi_version": "0.2.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-utterance-normalizer"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-05T15:23:53Z",
    "last_updated": "2025-11-05T00:59:16.044516Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-utterance-plugin-cancel",
    "skill_id": null,
    "name": "ovos-utterance-plugin-cancel",
    "description": "This is an OpenVoiceOS utterance transformer plugin. It cancels an utterance when the user says a cancel or \"nevermind\" phrase at the end.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-utterance-plugin-cancel",
    "package_name": "ovos-utterance-plugin-cancel",
    "pypi_version": "0.2.8",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Transformer Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 7,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-utterance-plugin-cancel"
      },
      {
        "heading": "Configuration",
        "content": "This plugin is **enabled by default** in `ovos-config` alongside the other standard utterance transformers:\n\n\"utterance_transformers\": {\n    \"ovos-utterance-normalizer\": {},\n    \"ovos-utterance-plugin-cancel\": {},\n    \"ovos-utterance-corrections-plugin\": {}\n}\n\nTo disable it, add `\"enable\": false` to your config:\n\n\"utterance_transformers\": {\n    \"ovos-utterance-plugin-cancel\": {\"enable\": false}\n}"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2024-01-18T00:46:39Z",
    "last_updated": "2026-04-17T16:14:20.154307Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "suvanbanerjee-ovos-vad-plugin-energy",
    "skill_id": null,
    "name": "ovos-vad-plugin-energy",
    "description": "",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/suvanbanerjee/ovos-vad-plugin-energy",
    "package_name": "ovos-vad-plugin-energy",
    "pypi_version": "0.0.0",
    "license": "MIT",
    "archived": false,
    "author": "suvanbanerjee",
    "tier": 1,
    "component_type": "Vad Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-29T17:48:40Z",
    "last_updated": "2024-08-05T18:37:09.542119Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-vad-plugin-noise",
    "skill_id": null,
    "name": "ovos-vad-plugin-noise",
    "description": "simple noise ratio based VAD plugin",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "vad"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-vad-plugin-noise",
    "package_name": "ovos-vad-plugin-noise",
    "pypi_version": "0.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Vad Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-vad-plugin-noise"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-01-27T14:55:30Z",
    "last_updated": "2025-06-08T20:17:39.645925Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-vad-plugin-precise",
    "skill_id": null,
    "name": "ovos-vad-plugin-precise",
    "description": "tflite GRU VAD detector",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "vad"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-vad-plugin-precise",
    "package_name": "ovos-vad-plugin-precise",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Vad Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-04-17T17:54:44Z",
    "last_updated": "2023-04-18T05:20:10.694210Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-vad-plugin-silero",
    "skill_id": null,
    "name": "ovos-vad-plugin-silero",
    "description": "ovos plugin for voice activity detection using silero vad",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "vad"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-vad-plugin-silero",
    "package_name": "ovos-vad-plugin-silero",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-vad-plugin-silero"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-04T20:42:35Z",
    "last_updated": "2025-11-04T15:03:28.211903Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-vad-plugin-vadonnx",
    "skill_id": null,
    "name": "ovos-vad-plugin-vadonnx",
    "description": "OVOS VAD plugin exposing every vadonnx model",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-vad-plugin-vadonnx",
    "package_name": "ovos-vad-plugin-vadonnx",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Vad Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "uv pip install ovos-vad-plugin-vadonnx\n\nThe `fsmn` models also need the fbank frontend:\n\nuv pip install \"ovos-vad-plugin-vadonnx[fsmn]\""
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-09-17T04:10:47Z",
    "last_updated": "2026-09-17T23:59:28Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-vad-plugin-webrtcvad",
    "skill_id": null,
    "name": "ovos-vad-plugin-webrtcvad",
    "description": "ovos plugin for voice activity detection using webrtcvad",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "vad"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-vad-plugin-webrtcvad",
    "package_name": "ovos-vad-plugin-webrtcvad",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Vad Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-vad-plugin-webrtcvad"
      },
      {
        "heading": "Configuration",
        "content": "Set the plugin as the VAD engine in the OpenVoiceOS configuration:\n\n{\n  \"listener\": {\n    \"VAD\": {\n      \"module\": \"ovos-vad-plugin-webrtcvad\",\n      \"ovos-vad-plugin-webrtcvad\": {\n        \"vad_mode\": 3\n      }\n    }\n  }\n}\n\n`vad_mode` ranges from 0 (least aggressive) to 3 (most aggressive, default)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-03-05T11:34:52Z",
    "last_updated": "2023-04-09T18:34:31.514384Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-ovos-virtual-mark1",
    "skill_id": null,
    "name": "ovos-virtual-mark1",
    "description": "Virtual Mycroft Mark 1 faceplate for OVOS: a software Arduino plus a browser GUI",
    "examples": [],
    "tags": [
      "mark1",
      "mycroft",
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-virtual-mark1",
    "package_name": "ovos-virtual-mark1",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-09T14:09:55Z",
    "last_updated": "2026-11-04T03:05:41.615033Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OscillateLabsLLC-ovos-visage",
    "skill_id": null,
    "name": "ovos-visage",
    "description": "Browser GUI client for OpenVoiceOS in the style of the 2018 Mycroft Mark II Kickstarter concept",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos",
      "status-poc"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/ovos-visage",
    "package_name": "ovos-visage",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "uv tool install git+https://github.com/OscillateLabsLLC/ovos-visage"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-11T22:25:39Z",
    "last_updated": "2026-10-19T01:20:41Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "NeonJarbas-ovos-vlc-plugin",
    "skill_id": null,
    "name": "ovos-vlc-plugin",
    "description": "vlc plugin for ovos-media",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/NeonJarbas/ovos-vlc-plugin",
    "package_name": "ovos-media-plugin-vlc",
    "pypi_version": "0.2.1a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "NeonJarbas",
    "tier": 2,
    "component_type": "Video Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-media-plugin-vlc`"
      },
      {
        "heading": "Configuration",
        "content": "{\n \"media\": {\n\n    // keys are the strings defined in \"audio_players\"\n    \"preferred_audio_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // keys are the strings defined in \"video_players\"\n    \"preferred_video_services\": [\"qt5\", \"mplayer\", \"vlc\", \"cli\"],\n\n    // PlaybackType.AUDIO handlers\n    \"audio_players\": {\n        // vlc player uses a headless vlc instance to handle uris\n        \"vlc\": {\n            // the plugin name\n            \"module\": \"ovos-media-audio-plugin-vlc\",\n\n            // users may request specific handlers in the utterance\n            // using these aliases\n             \"aliases\": [\"VLC\"],\n\n            // deactivate a plugin by setting to false\n            \"active\": true\n        }\n    },\n\n    // PlaybackType.VIDEO handlers\n    \"video_players\": {\n        // vlc playe\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-08-05T12:02:19Z",
    "last_updated": "2026-09-02T18:39:11.210608Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-voice-embeddings-plugin",
    "skill_id": null,
    "name": "ovos-voice-embeddings-plugin",
    "description": "An OVOS voice embeddings plugin. It turns a speech clip into a speaker",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-voice-embeddings-plugin",
    "package_name": "ovos-voice-embeddings-plugin",
    "pypi_version": "0.0.1a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Voice Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-voice-embeddings-plugin"
      },
      {
        "heading": "Configuration",
        "content": "| key | default | description |\n|---|---|---|\n| `model` | `\"wespeaker-resnet34\"` | speakeronnx model alias or path to an ONNX file |\n| `sample_rate` | `16000` | sample rate of the audio passed to `get_embeddings` |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-19T22:59:25Z",
    "last_updated": "2026-09-12T00:49:38.420268Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-wikipedia-plugin",
    "skill_id": null,
    "name": "ovos-wikipedia-plugin",
    "description": "This plugin connects OpenVoiceOS to Wikipedia. It provides a retrieval engine for RAG",
    "examples": [],
    "tags": [
      "openvoiceos",
      "solver"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-wikipedia-plugin",
    "package_name": "ovos-wikipedia-plugin",
    "pypi_version": "1.1.2a4",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Retrieval Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-wikipedia-plugin\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-26T20:58:41Z",
    "last_updated": "2026-10-19T22:32:34.248509Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "mikejgray-ovos-windows",
    "skill_id": null,
    "name": "ovos-windows",
    "description": "OpenVoiceOS (OVOS) Running on Pure Windows",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/mikejgray/ovos-windows",
    "package_name": "ovos-windows",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "mikejgray",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "- Install Python\n- Install Poetry\n- `poetry install`\n- `poetry shell`\n- `.\\ovos.ps1`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-06-02T04:42:12Z",
    "last_updated": "2024-06-02T04:43:05Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-wolfram-alpha-plugin",
    "skill_id": null,
    "name": "ovos-wolfram-alpha-plugin",
    "description": "Wolfram Alpha integration for OpenVoiceOS. Provides a **retrieval engine** for RAG pipelines and an **agent toolbox** for tool-using agents, both as standard OPM plugins.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "solver"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-wolfram-alpha-plugin",
    "package_name": "ovos-wolfram-alpha-plugin",
    "pypi_version": "1.1.5a1",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Retrieval Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-wolfram-alpha-plugin\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-27T12:57:18Z",
    "last_updated": "2026-10-21T10:17:12.897519Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-wordnet-plugin",
    "skill_id": null,
    "name": "ovos-wordnet-plugin",
    "description": "This OVOS plugin exposes WordNet as a",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-wordnet-plugin",
    "package_name": "ovos-wordnet-plugin",
    "pypi_version": "0.1.0",
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Retrieval Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-wordnet-plugin\n\nThe first query downloads the required WordNet lexicon (about 30-60 MB for English).\nSubsequent calls are served from the local cache with no network access.\n\n---"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2026-04-20T17:16:55Z",
    "last_updated": "2026-04-20T17:20:09.894376Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-workshop",
    "skill_id": null,
    "name": "ovos-workshop",
    "description": "frameworks, templates and patches for the OpenVoiceOS universe",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-workshop",
    "package_name": "ovos-workshop",
    "pypi_version": "8.0.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 6,
    "forks": 18,
    "open_issues": 27,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-workshop\n\nRuntime dependencies include `ovos-yes-no-plugin` and `ovos-option-matcher-fuzzy-plugin`, which back the `ask_yesno` and `ask_selection` skill methods."
      },
      {
        "heading": "Configuration",
        "content": "Key settings a skill can accept in its `settings.json`:\n\n| Key | Default | Description |\n|-----|---------|-------------|\n| `ask_yesno_plugin` | `ovos-solver-yes-no-plugin` | YesNoEngine plugin used by `ask_yesno()` |\n| `ask_selection_plugin` | `ovos-option-matcher-fuzzy-plugin` | OptionMatcherEngine plugin used by `ask_selection()` |\n\nBoth keys can also be set system-wide under the `skills` block in `mycroft.conf`."
      }
    ],
    "languages": [
      "an-es",
      "ar-sa",
      "ast-es",
      "az-az",
      "bg-bg",
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-es",
      "et-ee",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-fr",
      "gl-es",
      "he-il",
      "hi-in",
      "hr-hr",
      "hu-hu",
      "id-id",
      "it-it",
      "ja-jp",
      "kab",
      "ko-kr",
      "lt-lt",
      "lv-lv",
      "ms-my",
      "nb-no",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ro-ro",
      "ru-ru",
      "sk-sk",
      "sl-si",
      "sv-se",
      "sw-ke",
      "th-th",
      "tr-tr",
      "uk-ua",
      "vi-vn",
      "zh-cn"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2021-04-02T15:15:29Z",
    "last_updated": "2025-11-09T17:11:25.044222Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-auto-synth-dataset",
    "skill_id": null,
    "name": "ovos-ww-auto-synth-dataset",
    "description": "submit a .json file to `ww_configs` -> get a dataset under `synth_data`",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-auto-synth-dataset",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-14T20:02:36Z",
    "last_updated": "2025-01-24T16:56:21Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-community-dataset",
    "skill_id": null,
    "name": "ovos-ww-community-dataset",
    "description": "Wake Word training data provided by the OpenVoiceOS/Mycroft Community",
    "examples": [],
    "tags": [
      "openvoiceos",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-community-dataset",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-09-26T18:24:55Z",
    "last_updated": "2023-08-18T00:55:52Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-efficientword-net",
    "skill_id": null,
    "name": "ovos-ww-plugin-efficientword-net",
    "description": "OVOS wake-word plugin for EfficientWord-Net, few-shot hotword detection",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-efficientword-net",
    "package_name": "ovos-ww-plugin-efficientword-net",
    "pypi_version": "0.0.1a2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-ww-plugin-efficientword-net\n\nThe plugin needs only `onnxruntime` and `numpy`. It carries the quantized EfficientWord-Net model (22 MB) and the upstream sample references, so it works offline and does not install PyAudio."
      },
      {
        "heading": "Configuration",
        "content": "Use one of the bundled wake words: `alexa`, `balloon`, `computer`, `lights_off`, `lights_on`, `mobile` or `mycroft`.\n\n\"hotwords\": {\n  \"computer\": {\n    \"module\": \"ovos-ww-plugin-efficientword-net\",\n    \"listen\": true\n  }\n},\n\"listener\": {\"wake_word\": \"computer\"}\n\nOr give your own recordings: a folder of 16-bit WAV files, one wake word per file, at least 4 files. Any sample rate works.\n\n\"hotwords\": {\n  \"hey_computer\": {\n    \"module\": \"ovos-ww-plugin-efficientword-net\",\n    \"samples\": \"~/wakewords/hey_computer\",\n    \"listen\": true\n  }\n}\n\n| Key | Default | Meaning |\n|---|---|---|\n| `wakeword` | key phrase, spaces as `_` | Name of a bundled reference |\n| `samples` | | Folder or list of WAV recordings; replaces the bundled reference |\n| `reference_file` | | A `*_ref.json` file made by EfficientW\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-22T15:58:49Z",
    "last_updated": "2026-10-22T16:07:37.380031Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-local-wake",
    "skill_id": null,
    "name": "ovos-ww-plugin-local-wake",
    "description": "OVOS wake-word plugin for local-wake, wake words from a few recordings",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-local-wake",
    "package_name": "ovos-ww-plugin-local-wake",
    "pypi_version": "0.0.1a2",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-ww-plugin-local-wake\n\nThe plugin needs only `onnxruntime` and `numpy`, and carries the 2.4 MB speech-embedding model. It does not install PyTorch, librosa or sounddevice."
      },
      {
        "heading": "Configuration",
        "content": "\"hotwords\": {\n  \"hey_computer\": {\n    \"module\": \"ovos-ww-plugin-local-wake\",\n    \"samples\": \"~/wakewords/hey_computer\",\n    \"listen\": true\n  }\n},\n\"listener\": {\"wake_word\": \"hey_computer\"}\n\n| Key | Default | Meaning |\n|---|---|---|\n| `samples` | required | Folder or list of WAV recordings of the wake word |\n| `threshold` | `0.16` | Largest DTW distance for a detection |\n| `buffer_seconds` | longest recording + 0.25 s | Audio compared with the recordings, at least 0.775 s |\n| `hop_seconds` | `0.25` | Audio between two comparisons |\n| `silence_db` | `20` | A buffer this many dB quieter than the recordings is not compared |\n\nThe best threshold depends on the recordings and the microphone. A lower value gives fewer false detections and more misses. The local-wake benchmark found optimal thresho\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-22T15:58:53Z",
    "last_updated": "2026-10-22T16:07:22.457577Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-microwakeword",
    "skill_id": null,
    "name": "ovos-ww-plugin-microwakeword",
    "description": "OVOS wake-word plugin wrapping microWakeWord tflite streaming models (ESPHome ecosystem)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-microwakeword",
    "package_name": "ovos-ww-plugin-microwakeword",
    "pypi_version": "0.0.3a1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-ww-plugin-microwakeword\n\nThe package installs `ai-edge-litert` (on Linux x86_64) or `tflite-runtime`\n(on other platforms) as a runtime dependency, along with `pymicro-features`\n(the TFLite Micro audio frontend wrapper)."
      },
      {
        "heading": "Configuration reference",
        "content": "| Key                  | Type    | Default      | Description |\n|----------------------|---------|--------------|-------------|\n| `model`              | `str`   | *(auto)*     | Absolute path to a `.tflite` file, or an `https://` URL. This setting takes precedence over `model_name`. |\n| `model_name`         | `str`   | `okay_nabu`  | Short name of an official ESPHome model. The plugin downloads it on first use. |\n| `model_version`      | `int`   | `1`          | `1` or `2`. Selects the model subdirectory in the ESPHome repository. |\n| `probability_cutoff` | `float` | `0.5`        | Dequantized probability threshold, in the range [0, 1]. A higher value gives fewer false positives. A lower value gives fewer missed detections. |\n| `sliding_window_size`| `int`   | `10`         | Number of cons\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-10T15:00:00Z",
    "last_updated": "2026-10-24T20:53:21.716504Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-nyumaya-legacy",
    "skill_id": null,
    "name": "ovos-ww-plugin-nyumaya-legacy",
    "description": "hotword plugin for mycroft-core",
    "examples": [],
    "tags": [
      "mycroft",
      "plugin",
      "wakeword"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-nyumaya-legacy",
    "package_name": "ovos_ww_plugin_nyumaya_legacy",
    "pypi_version": "0.0.1",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos_ww_plugin_nyumaya_legacy`"
      },
      {
        "heading": "Configuration",
        "content": "Add the following to your hotwords section in mycroft.conf \n\n  \"hotwords\": {\n    \"alexa\": {\n        \"module\": \"ovos_ww_plugin_nyumaya_legacy\",\n        \"model\": \"alexa\",\n        \"sensitivity\": 0.5,\n        \"extractor_gain\": 1.0\n    },\n    \"alexa_big\": {\n        \"module\": \"ovos_ww_plugin_nyumaya_legacy\",\n        \"model\": \"alexa_big\",\n        \"sensitivity\": 0.5,\n        \"extractor_gain\": 1.0\n    },\n    \"marvin\": {\n        \"module\": \"ovos_ww_plugin_nyumaya_legacy\",\n        \"model\": \"marvin\",\n        \"sensitivity\": 0.5,\n        \"extractor_gain\": 1.0\n    },\n    \"marvin_big\": {\n        \"module\": \"ovos_ww_plugin_nyumaya_legacy\",\n        \"model\": \"marvin_big\",\n        \"sensitivity\": 0.5,\n        \"extractor_gain\": 1.0\n    },\n    \"sheila\": {\n        \"module\": \"ovos_ww_plugin_nyumaya_legacy\",\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-11-27T08:25:47Z",
    "last_updated": "2021-08-02T18:14:39.207144Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-openWakeWord",
    "skill_id": null,
    "name": "ovos-ww-plugin-openWakeWord",
    "description": "This plugin adds openWakeWord support to OpenVoiceOS (OVOS). openWakeWord is an open-source wake word detection system. It trains on synthetic data and runs on a single core of a Raspberry Pi 3.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-openWakeWord",
    "package_name": "ovos-ww-plugin-openwakeword",
    "pypi_version": "0.4.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 2,
    "forks": 5,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "On Python 3.11 and older, run this command:\n\npip install ovos-ww-plugin-openwakeword\n\nOn Python 3.12 and newer, a plain install fails to resolve: openwakeword\nrequires tflite-runtime, and tflite-runtime has no wheels for these\ninterpreters. Install openwakeword without its declared dependencies, then\nlet this plugin provide the dependencies the onnx path needs:\n\npip install --no-deps \"openwakeword>=0.5.0,<1\"\npip install \"ovos-ww-plugin-openwakeword[onnx]\"\n\nSet your wake word in `mycroft.conf`. Do not set the `models` key if you want the default model (\"hey jarvis\").\n\n\"listener\": {\n    \"wake_word\": \"hey_jarvis\"\n},\n\"hotwords\": {\n  \"hey_jarvis\": {\n      \"module\": \"ovos-ww-plugin-openwakeword\"\n  }\n}"
      },
      {
        "heading": "Configuration",
        "content": "The plugin accepts these extra options:\n\n\"listener\": {\n    \"wake_word\": \"hey_jarvis\"\n},\n\"hotwords\": {\n  \"hey_jarvis\": {\n      \"module\": \"ovos-ww-plugin-openwakeword\",\n      \"models\": [\"path/to/openwakeword/model/hey_jarvis.tflite\"],\n      \"inference_framework\": \"tflite\",\n      \"custom_verifier_models\": {\"hey_jarvis\": \"path/to/openwakeword/custom/verifier/model.pkl\"},\n      \"threshold\": 0.3,\n      \"custom_verifier_threshold\": 0.1\n  }\n}\n\n- `models`: paths to one or more openWakeWord models, in `.onnx` or `.tflite` format. Any model in the list can activate OVOS.\n- `inference_framework`: the format of the models in `models`. Use `tflite` or `onnx`. The plugin picks `tflite` when tflite-runtime is installed and `onnx` when it is not \u2014 on Python 3.12+ tflite-runtime is usually not installable,\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-03-02T18:26:44Z",
    "last_updated": "2026-10-01T13:03:30.354807Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-pocketsphinx",
    "skill_id": null,
    "name": "ovos-ww-plugin-pocketsphinx",
    "description": "OpenVoiceOS plugin for detecting wakewords with pocketsphinx",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-pocketsphinx",
    "package_name": "ovos-ww-plugin-pocketsphinx",
    "pypi_version": "0.1.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-ww-plugin-pocketsphinx`\n\nConfigure your wake word in mycroft.conf\n\n \"listener\": {\n      \"wake_word\": \"andromeda\"\n },\n \"hotwords\": {\n    \"andromeda\": {\n        \"module\": \"ovos-ww-plugin-pocketsphinx\",\n        \"threshold\": 1e-45\n    }\n  }\n \n\nAdvanced configuration\n\nYou can get acoustic models from [sourceforge](https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/)\n\nNOTE: it might be useful to use an acoustic model from a language that is\nnot your own and set phonemes manually, eg, spanish model works just fine\nfor portuguese\n\n \"listener\": {\n      \"wake_word\": \"dinossauro\"\n },\n \"hotwords\": {\n    \"dinossauro\": {\n        \"module\": \"ovos-ww-plugin-pocketsphinx\",\n        \"threshold\": 1e-20,\n        \"phonemes\": \"d i n o s a u r o\",\n        \"hmm\": \"\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-07T19:28:06Z",
    "last_updated": "2024-09-11T02:34:18.621496Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-precise",
    "skill_id": null,
    "name": "ovos-ww-plugin-precise",
    "description": "mycroft plugin for detecting wake word with precise",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-precise",
    "package_name": "ovos-ww-plugin-precise",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-ww-plugin-precise`\n\nConfigure your wake word in mycroft.conf\n\n \"listener\": {\n      \"wake_word\": \"android\"\n },\n \"hotwords\": {\n    \"android\": {\n        \"module\": \"ovos-ww-plugin-precise\",\n        \"version\": \"0.3\",\n        \"model\": \"path/to/your/model\"\n    }\n  }\n \n\nAdvanced configuration\n\n \"listener\": {\n      \"wake_word\": \"android\"\n },\n \"hotwords\": {\n    \"android\": {\n        \"module\": \"ovos-ww-plugin-precise\",\n        \"trigger_level\": 3,\n        \"sensitivity\": 0.5,\n        \"version\": \"0.3\",\n        \"model\": \"path/or/url/to/your/model\",\n        \"binary_path\": \"path/to/your/binary/eg/using/tflite\",\n        \"expected_duration\": 3\n    }\n  }\n \n\n\n- `binary_path` if you want to use your own binary, eg for use with \n  [tflite branch](https://github.com/MycroftAI/mycroft-precise/pull\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-06-07T19:19:43Z",
    "last_updated": "2022-03-01T13:21:25.775371Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-precise-lite",
    "skill_id": null,
    "name": "ovos-ww-plugin-precise-lite",
    "description": "OpenVoiceOS wake word plugin for precise-lite",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-precise-lite",
    "package_name": "ovos-ww-plugin-precise-lite",
    "pypi_version": "0.1.6",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 3,
    "forks": 3,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "This package supports both tflite-runner and the full tensorflow.\n\nTo install with tflite, use `pip install ovos-ww-plugin-precise-lite[tflite]`.\nFor the full tensorflow use `pip install ovos-ww-plugin-precise-lite[full]`."
      },
      {
        "heading": "Configuration",
        "content": "Add the following to your hotwords section in mycroft.conf \n\n\"listener\": {\n  \"wake_word\": \"hey mycroft\"\n},\n\"hotwords\": {\n  \"hey mycroft\": {\n    \"module\": \"ovos-ww-plugin-precise-lite\",\n    \"model\": \"https://github.com/OpenVoiceOS/precise-lite-models/raw/master/wakewords/en/hey_mycroft.tflite\",\n    \"listen\": true,\n    \"sound\": \"snd/start_listening.wav\",\n    \"expected_duration\": 3,\n    \"trigger_level\": 3,\n    \"sensitivity\": 0.5\n   }\n}\n\nGet community models [here](https://github.com/OpenVoiceOS/precise-lite-models)"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-08-15T21:56:32Z",
    "last_updated": "2025-06-10T21:19:30.747583Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-precise-onnx",
    "skill_id": null,
    "name": "ovos-ww-plugin-precise-onnx",
    "description": "A wake word plugin for OpenVoiceOS. It runs Precise-style wake word models with `onnxruntime` instead of `tflite`.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-precise-onnx",
    "package_name": "ovos-ww-plugin-precise-onnx",
    "pypi_version": "0.1.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_ww_plugin_precise_onnx\n\n---"
      },
      {
        "heading": "Configuration",
        "content": "Add the plugin to the `hotwords` section of `mycroft.conf`.\n\n\"listener\": {\n  \"wake_word\": \"hey_mycroft\"\n},\n\"hotwords\": {\n  \"hey_mycroft\": {\n    \"module\": \"ovos-ww-plugin-precise-onnx\",\n    \"model\": \"https://github.com/OpenVoiceOS/precise-lite-models/raw/master/wakewords/en/hey_mycroft.onnx\",\n    \"trigger_level\": 3,\n    \"sensitivity\": 0.5\n   }\n}\n\nGet community models from [OpenVoiceOS/precise-lite-models](https://github.com/OpenVoiceOS/precise-lite-models).\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-10-31T06:33:40Z",
    "last_updated": "2025-11-04T19:09:22.604331Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-snowboy",
    "skill_id": null,
    "name": "ovos-ww-plugin-snowboy",
    "description": "snowboy plugin for mycroft",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-snowboy",
    "package_name": "ovos-ww-plugin-snowboy",
    "pypi_version": "0.1.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 4,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-ww-plugin-snowboy`"
      },
      {
        "heading": "Configuration",
        "content": "Each wake word can included several snowboy models, if any of them fires a detection is considered\n\nTIP: you can use this to train a model for each speaker in your house\n\nAdd the following to your hotwords section in mycroft.conf\n\n  \"hotwords\": {\n    \"my_word\": {\n        \"module\": \"ovos-ww-plugin-snowboy\",\n        \"models\": [\n            {\"sensitivity\": 0.5, \"model_path\": \"path/to/first.pmdl\"},\n            {\"sensitivity\": 0.5, \"model_path\": \"path/to/second.pmdl\"},\n            {\"sensitivity\": 0.5, \"model_path\": \"path/to/third.pmdl\"}\n         ]\n    }\n  }\n\nThen select what wakeword to use\n\n \"listener\": {\n      \"wake_word\": \"my_word\"\n }\n \n\n### Bundled wakeword models\n\nAll these are bundled with this plugin, they are universal models ```.umdl``` trained by snowboy and should have a good accurac\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-06T07:36:29Z",
    "last_updated": "2021-08-31T22:55:54.637554Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-vosk",
    "skill_id": null,
    "name": "ovos-ww-plugin-vosk",
    "description": "vosk wake word plugin for OpenVoiceOS",
    "examples": [],
    "tags": [
      "openvoiceos",
      "plugin",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-vosk",
    "package_name": "ovos-ww-plugin-vosk",
    "pypi_version": "0.1.10",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 13,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "`pip install ovos-ww-plugin-vosk`"
      },
      {
        "heading": "Configuration",
        "content": "### Quick start\n\nAdd the following to the `hotwords` section in `mycroft.conf`.\n\n  \"listener\": {\n    \"wake_word\": \"hey_computer\"\n  },\n  \"hotwords\": {\n    \"hey_computer\": {\n        \"module\": \"ovos-ww-plugin-vosk\",\n        \"listen\": true\n    }\n  }\n\nReplace `hey_computer` with your wake word. A model downloads automatically for the\nconfigured language.\n\n### Single keyword\n\nSome wake words are hard to trigger, usually because the language model does not\ninclude them. For example, `hey mycroft` is often transcribed as `hey microsoft`. By\ndefault, this plugin checks for the wake word name, but you can configure the keyword\nin a number of ways.\n\n- `model_folder` - full path to a Vosk model. Optional; the plugin downloads one automatically.\n- `lang` - language code for the model. Optional; uses th\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-03T12:55:05Z",
    "last_updated": "2026-01-09T07:10:47.264377Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-wakeforge",
    "skill_id": null,
    "name": "ovos-ww-plugin-wakeforge",
    "description": "OVOS wake word plugin for models trained with wakeforge",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-wakeforge",
    "package_name": "ovos-ww-plugin-wakeforge",
    "pypi_version": "0.3.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 1,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install --pre ovos-ww-plugin-wakeforge"
      },
      {
        "heading": "Config keys",
        "content": "| key | default | meaning |\n|-----|---------|---------|\n| `model` | required | classifier ONNX (path or URL), or a ready model name |\n| `featurizer` | none | feature-extractor ONNX (path or URL), or a pretrained name such as `wakehubert`; optional when the model names one |\n| `threshold` | `0.5` | detection threshold; a ready model or calibrated head uses its own default |\n| `debounce_sec` | `1.0` | minimum seconds between detections (`2.0` for a calibrated head) |\n| `agc` | `false` | level each audio window before scoring; helps when the microphone gain is far too high or low; not available with streamed features |\n| `streaming_features` | from the model | stream the featurizer instead of featurizing each window on its own; on for a model trained on streamed features |\n| `models_revision`\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-22T22:35:30Z",
    "last_updated": "2026-09-30T18:47:46.408845Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-ww-plugin-wakewordlab",
    "skill_id": null,
    "name": "ovos-ww-plugin-wakewordlab",
    "description": "OVOS wake word plugin using wakewordlab",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-ww-plugin-wakewordlab",
    "package_name": "ovos-ww-plugin-wakewordlab",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Wake Word Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-ww-plugin-wakewordlab"
      },
      {
        "heading": "Configuration",
        "content": "Add the plugin to `mycroft.conf`:\n\n{\n  \"hotwords\": {\n    \"hey jarvis\": {\n      \"module\": \"ovos-ww-plugin-wakewordlab\",\n      \"model\": \"hey_jarvis\",\n      \"threshold\": 0.5,\n      \"vad\": true,\n      \"vad_threshold\": 0.5\n    }\n  }\n}\n\n| Key | Default | Description |\n|-----|---------|-------------|\n| `model` | key phrase | Wake word slug or path to a `.wkw`/`.onnx` model file |\n| `threshold` | model default | Confidence threshold (0.0-1.0) |\n| `vad` | `true` | Enable the Silero VAD pre-filter |\n| `vad_threshold` | `0.5` | VAD sensitivity |\n| `license_key` | `null` | License key for commercial models |"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-12T21:42:27Z",
    "last_updated": "2026-09-28T22:59:18Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-wyoming-docker",
    "skill_id": null,
    "name": "ovos-wyoming-docker",
    "description": "A collection of Docker images for running OVOS services using the Wyoming Protocol.",
    "examples": [],
    "tags": [
      "docker",
      "library",
      "openvoiceos",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-wyoming-docker",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 4,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Getting started",
        "content": "### Build the images\n\nBuild all images manually:\n\n./build.sh\n\nOr build them with Docker Compose:\n\ndocker compose build\n\n### Add to Home Assistant\n\nAdd the services to Home Assistant with the Wyoming integration.\n\n![image](https://github.com/user-attachments/assets/ad44dbea-1cae-4dbd-9a9d-0bdb9688f98f)\n\n![image](https://github.com/user-attachments/assets/4c8ebdca-cc80-4747-ab3a-9a4b23d70343)\n\nAdd the OVOS agent with the Ollama integration.\n\n![image](https://github.com/user-attachments/assets/18e28f47-7acf-4f36-a121-4451cec66a38)\n\n![image](https://github.com/user-attachments/assets/9f6ed44a-8303-49ee-ae9b-29604bfb38f6)\n\nPoint your Wyoming satellites to OVOS.\n\n![image](https://github.com/user-attachments/assets/e71a9a4b-8a47-418c-9ab8-529264c8ad3b)\n\n---"
      },
      {
        "heading": "Compose setup",
        "content": "Edit `docker-compose.yml` to fit your setup. Below is an example with multiple TTS, STT, and wake word services.\n\nSet `${CONFIG_BASE_DIR}` to the path that holds your `mycroft.conf` file.\n\nservices:\n  ovos-assist-agent:\n    image: ovos-persona/ovos-core\n    restart: always\n    container_name: ovos_core_persona\n    # network_mode: host in order to be able to connect to the bus\n    network_mode: host\n    #ports:\n    #  - 8337:8337\n    \n  wyoming-ovos-tts-sam:\n    image: jarbasai/ovos-wyoming-tts-sam:latest\n    container_name: wyoming-ovos-tts-sam\n    restart: unless-stopped\n    volumes:\n      - ${CONFIG_BASE_DIR}/mycroft.conf:/etc/mycroft/mycroft.conf\n    ports:\n      - 10605:8080\n\n  wyoming-ovos-tts-nos:\n    image: jarbasai/ovos-wyoming-tts-nos:latest\n    container_name: wyoming-ovos-tts-no\u2026"
      },
      {
        "heading": "Configuration",
        "content": "All services use a shared `mycroft.conf` file. This file is usually at:\n\n/etc/mycroft/mycroft.conf\n\nSet `${CONFIG_BASE_DIR}` to the base directory that holds your config, for example:\n\nexport CONFIG_BASE_DIR=$HOME/.config/mycroft\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-09T18:29:45Z",
    "last_updated": "2026-11-07T03:55:17Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-yaml-editor",
    "skill_id": null,
    "name": "ovos-yaml-editor",
    "description": "The OpenVoiceOS Config Editor is a web application for OpenVoiceOS configuration files. It supports YAML and JSON formats. The editor gives you a simple interface to view, change, and save configuration data.",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-yaml-editor",
    "package_name": "ovos-yaml-editor",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 1,
    "open_issues": 11,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "OpenVoiceOS YAML Config Editor",
        "content": "The OpenVoiceOS Config Editor is a web application for OpenVoiceOS configuration files. It supports YAML and JSON formats. The editor gives you a simple interface to view, change, and save configuration data.\n\nYou can edit the configuration in two formats:\n- **YAML**: this is the default format when you open the editor.\n- **JSON**: switch to this format with the tabs in the editor.\n\n![](yaml.png)\n![](json.png)\n\n## Features\n\n- **Authentication**: the editor is protected with basic HTTP authentication.\n- **Editor interface**: an interactive editor with syntax highlighting for YAML and JSON, powered by CodeMirror.\n- **Save and reload**: save changes to the configuration files, or reload the current configuration into the editor.\n- **Issue reporting**: a direct link to report issues on GitHub.\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-12T17:01:06Z",
    "last_updated": "2025-06-17T15:12:49.273973Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos_assets",
    "skill_id": null,
    "name": "ovos_assets",
    "description": "Images, Icon, Artwork type assets used across OpenVoiceOS",
    "examples": [],
    "tags": [
      "openvoiceos"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos_assets",
    "package_name": null,
    "pypi_version": null,
    "license": "CC0-1.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-10-21T17:53:33Z",
    "last_updated": "2025-07-21T17:32:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos_skill_manager",
    "skill_id": null,
    "name": "ovos_skill_manager",
    "description": "skill installer for OVOS",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos_skill_manager",
    "package_name": "ovos-skills-manager",
    "pypi_version": "0.0.13",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 5,
    "forks": 5,
    "open_issues": 28,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skills-manager"
      },
      {
        "heading": "Install",
        "content": "Install a mycroft skill! Either pass a search query or a github url\n\n(.venv) user@hostname:~$ osm install --help\nUsage: osm install [OPTIONS]\n\nOptions:\n  --skill TEXT                    skill to install\n  --branch TEXT                   select skill github branch to use\n  --folder TEXT                   path where skill will be installed, default\n                                  /opt/mycroft/skills\n\n  --search                        search appstores, otherwise assume it's a\n                                  github url\n\n  --appstore [ovos|mycroft|pling|andlo|default|all]\n                                  search a specific appstore, default search\n                                  appstores enabled in config file\n\n  --method [all|name|url|category|author|tag|description]\u2026"
      },
      {
        "heading": "Print config",
        "content": "print current configuration of osm, config file can be found at `~/.config/OpenVoiceOS/OVOS-SkillsManager.json`\n(.venv) user@hostname:~$ osm print --help\nUsage: osm print [OPTIONS]\n\nOptions:\n  --appstore [ovos|mycroft|pling|andlo|all|default]\n                                  print config of a specific appstore\n  --help                          Show this message and exit."
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-21T16:12:26Z",
    "last_updated": "2023-10-11T20:14:41.147483Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "JoergZ2-ovos_skill_my_db_timetable",
    "skill_id": null,
    "name": "ovos_skill_my_db_timetable",
    "description": "Skill for getting timetable information of selected station in Germany.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JoergZ2/ovos_skill_my_db_timetable",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "JoergZ2",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-05T13:59:14Z",
    "last_updated": "2025-09-16T06:33:14Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "g-mecha-ovos_test_lunch",
    "skill_id": null,
    "name": "ovos_test_lunch",
    "description": "Git project to figure out how ovos works",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/g-mecha/ovos_test_lunch",
    "package_name": "ovos-skill-lunch",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "g-mecha",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-11-26T13:37:39Z",
    "last_updated": "2024-11-28T14:08:46Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos_tts_transformer_FlashSR",
    "skill_id": null,
    "name": "ovos_tts_transformer_FlashSR",
    "description": "Audio super-resolution for OpenVoiceOS speech synthesis. `FlashSR` upsamples the",
    "examples": [],
    "tags": [
      "text-to-speech",
      "tigregotico",
      "transformers",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos_tts_transformer_FlashSR",
    "package_name": "ovos_tts_transformer_FlashSR",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-transformer-FlashSR\n\nGPU acceleration also requires `onnxruntime-gpu` and a working CUDA runtime.\nOn CPU-only systems the default `onnxruntime` dependency is sufficient."
      },
      {
        "heading": "Configuration",
        "content": "Enable the transformer in `mycroft.conf` under the `tts_transformers` section,\nkeyed by the plugin name:\n\n\"tts_transformers\": {\n  \"ovos-tts-transformer-FlashSR\": {}\n}\n\nThe plugin takes no configuration of its own. Once enabled, it applies to the\noutput of whichever TTS plugin is active. You can chain multiple TTS\ntransformers. Execution order follows each plugin's `priority` (FlashSR\ndefaults to `50`)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-26T12:36:58Z",
    "last_updated": "2026-10-11T11:55:08Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos_tts_transformer_NovaSR",
    "skill_id": null,
    "name": "ovos_tts_transformer_NovaSR",
    "description": "Audio super-resolution for OpenVoiceOS speech synthesis. `NovaSR` upsamples the",
    "examples": [],
    "tags": [
      "text-to-speech",
      "tigregotico",
      "transformers",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos_tts_transformer_NovaSR",
    "package_name": "ovos_tts_transformer_NovaSR",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 0,
    "forks": 0,
    "open_issues": 5,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovos-tts-transformer-NovaSR"
      },
      {
        "heading": "Configuration",
        "content": "Enable the transformer in `mycroft.conf` under the `tts_transformers` section,\nkeyed by the plugin name:\n\n\"tts_transformers\": {\n  \"ovos-tts-transformer-NovaSR\": {}\n}\n\nThe plugin takes no configuration of its own; once enabled it applies to the\noutput of whichever TTS plugin is active. Multiple TTS transformers can be\nchained. Execution order follows each plugin's `priority` (NovaSR defaults to\n`50`)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-26T12:35:02Z",
    "last_updated": "2026-10-11T07:44:01Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "ksnishat-ovoscan-pipeline",
    "skill_id": null,
    "name": "ovoscan-pipeline",
    "description": "End-to-End Industrial MLOps Pipeline for Automated Quality Control. Features YOLOv8 for defect detection, ZenML orchestration, and a Generative AI Agent (Llama 3) for technical reporting.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/ksnishat/ovoscan-pipeline",
    "package_name": "ovoscan-pipeline",
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "ksnishat",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-01-14T23:03:35Z",
    "last_updated": "2026-11-09T19:28:03Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovoscope",
    "skill_id": null,
    "name": "ovoscope",
    "description": "an end-to-end testing framework for OpenVoiceOS.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "tigregotico",
      "tool"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovoscope",
    "package_name": "ovoscope",
    "pypi_version": "1.5.0",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 1,
    "open_issues": 10,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install ovoscope\nTo add typed message model support:\npip install ovoscope[pydantic]\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-09T01:05:27Z",
    "last_updated": "2026-07-02T19:04:40.495071Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "suzhiba-ovostock",
    "skill_id": null,
    "name": "ovostock",
    "description": "ovoStock is a Machine Learning toolkit for making stock market predictions.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/suzhiba/ovostock",
    "package_name": "ovostock",
    "pypi_version": "0.1.0",
    "license": "MIT",
    "archived": false,
    "author": "suzhiba",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2016-11-12T05:00:54Z",
    "last_updated": "2016-07-06T20:45:22Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-parrot",
    "skill_id": "ovos-skill-parrot.openvoiceos",
    "name": "Parrot",
    "description": "Turn OpenVoiceOS into a echoing parrot! Make OVOS repeat whatever you want.",
    "examples": [
      "say Goodnight, Gracie",
      "repeat Once upon a midnight dreary, while I pondered, weak and weary, Over many a quaint and curious volume of forgotten lore",
      "speak I can say anything you'd like!",
      "Repeat what you just said",
      "Repeat that",
      "Can you repeat that?",
      "What did I just say?",
      "Tell me what I just said.",
      "start parrot",
      "stop parrot"
    ],
    "tags": [
      "parrot",
      "echo",
      "repeater",
      "entertainment"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-parrot/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-parrot",
    "package_name": "ovos-skill-parrot",
    "pypi_version": "0.1.25",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 6,
    "forks": 9,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-parrot"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Lloro",
        "description": "Converteix OpenVoiceOS en un lloro! Feu que OVOS repeteixi tot el que vulgueu.",
        "examples": [
          "digues bona nit, Graciela",
          "repeteix Hi havia una nit trista, mentre jo reflexionava, d\u00e8bil i cansat, sobre molts volums pintorescs i curiosos de tradicions oblidades.",
          "Parla, puc dir el que vulguis!",
          "Repeteix el que acabo de dir",
          "Repeteix aix\u00f2",
          "Pots repetir aix\u00f2?",
          "Qu\u00e8 acabo de dir?",
          "Digues-me el que acabo de dir.",
          "comen\u00e7a el lloro",
          "para el lloro"
        ]
      },
      "da-dk": {
        "name": "Papeg\u00f8je",
        "description": "G\u00f8r OpenVoiceOS til en ekko papeg\u00f8je! F\u00e5 OVOS til at gentage, hvad du vil.",
        "examples": [
          "Sig godnat, Gracie",
          "gentag Engang en midnat trist, mens jeg grublede, svag og tr\u00e6t, over mange en s\u00e6regne og m\u00e6rkv\u00e6rdige m\u00e6ngde glemt historie",
          "tal jeg kan sige hvad du vil!",
          "Gentag, hvad du lige sagde",
          "Gentag det",
          "Kan du gentage det?",
          "Hvad sagde jeg lige?",
          "Fort\u00e6l mig, hvad jeg lige sagde.",
          "start papeg\u00f8je",
          "stop papeg\u00f8je"
        ]
      },
      "de-de": {
        "name": "Papagei",
        "description": "Mache OpenVoiceOS zu einem Echo-Papagei! Lasse OVOS alles wiederholen, was Du willst",
        "examples": [
          "sage gute Nacht, Gracie",
          "Wiederhole einmal eine trostlose Mitternacht, w\u00e4hrend ich, schwach und m\u00fcde, \u00fcber viele kuriose und merkw\u00fcrdige B\u00e4nde vergessener \u00dcberlieferungen nachdachte",
          "spreche Ich kann alles sagen, was Du m\u00f6chtest!",
          "Wiederhole, was Du gerade gesagt hast",
          "Wiederhole das",
          "Kannst Du das wiederholen?",
          "Was habe ich gerade gesagt?",
          "Sag mir, was ich gerade gesagt habe.",
          "Papagei starten\nstarte Papagei",
          "Papagei stoppen\nstoppe Papagei"
        ]
      },
      "es-co": {
        "name": "Loro",
        "description": "\u00a1Convierte OpenVoiceOS en un loro! Haz que OVOS repita lo que quieras.",
        "examples": [
          "Di buenas noches, Ana",
          "repite: Una vez, en una l\u00fagubre medianoche, mientras reflexionaba, d\u00e9bil y cansado, sobre muchos vol\u00famenes antiguos y curiosos de saberes olvidados",
          "Habla, \u00a1Puedo decir lo que quieras!",
          "Repite lo que acabas de decir",
          "Rep\u00edtelo",
          "\u00bfPuedes repetirlo?",
          "\u00bfQu\u00e9 acabo de decir?",
          "Dime lo que acabo de decir.",
          "Inicia el loro",
          "Para el loro"
        ]
      },
      "es-es": {
        "name": "Loro",
        "description": "\u00a1Convierte OpenVoiceOS en un loro! Haz que OVOS repita lo que quieras.",
        "examples": [
          "Di buenas noches, Ana",
          "repite: Una vez, en una l\u00fagubre medianoche, mientras reflexionaba, d\u00e9bil y cansado, sobre muchos vol\u00famenes antiguos y curiosos de saberes olvidados",
          "Habla, \u00a1Puedo decir lo que quieras!",
          "Repite lo que acabas de decir",
          "Rep\u00edtelo",
          "\u00bfPuedes repetirlo?",
          "\u00bfQu\u00e9 acabo de decir?",
          "Dime lo que acabo de decir.",
          "(Inicia|Empieza) el loro",
          "Para el loro"
        ]
      },
      "eu-es": {
        "name": "Loroa",
        "description": "Bihurtu OpenVoiceOS loro oihartzun bat! Egin OVOSek nahi duzuna errepika dezan.",
        "examples": [
          "esan Gau on, Gracie",
          "errepikatu Behin, gauerdi ilun batean, ahul eta nekaturik pentsatzen nengoen bitartean, ahaztutako jakinduriaren liburu bitxi eta arraroez",
          "hitz egin Zuk nahi duzuna esan dezaket!",
          "Errepikatu zuk esan berri duzuna",
          "Errepikatu hori",
          "Errepika dezakezu hori?",
          "Zer esan dut orain?",
          "Esadazu zer esan dudan.",
          "hasi loroa",
          "gelditu loroa"
        ]
      },
      "fa-ir": {
        "examples": [
          "\u0634\u0628 \u0628\u062e\u06cc\u0631 \u0628\u06af\u0648\u060c \u06af\u0631\u06cc\u0633\u06cc",
          null,
          "\u062d\u0631\u0641 \u0628\u0632\u0646\u060c \u0647\u0631\u0686\u06cc \u062f\u0644\u062a \u0628\u062e\u0648\u0627\u062f \u0645\u06cc\u200c\u062a\u0648\u0646\u0645 \u0628\u06af\u0645!",
          "\u0686\u06cc\u0632\u06cc \u06a9\u0647 \u06af\u0641\u062a\u06cc \u0631\u0648 \u062f\u0648\u0628\u0627\u0631\u0647 \u0628\u06af\u0648",
          "\u062a\u06a9\u0631\u0627\u0631\u0634 \u06a9\u0646",
          "\u0645\u06cc\u0634\u0647 \u062f\u0648\u0628\u0627\u0631\u0647 \u062a\u06a9\u0631\u0627\u0631\u0634 \u06a9\u0646\u06cc\u061f",
          "\u0645\u0646 \u0627\u0644\u0627\u0646 \u0686\u06cc \u06af\u0641\u062a\u0645\u061f",
          "\u0647\u0645\u06cc\u0646\u06cc \u06a9\u0647 \u0627\u0644\u0627\u0646 \u06af\u0641\u062a\u0645 \u0631\u0648 \u0628\u0647\u0645 \u0628\u06af\u0648.",
          "\u0634\u0631\u0648\u0639 \u0637\u0648\u0637\u06cc",
          "\u067e\u0627\u06cc\u0627\u0646 \u0637\u0648\u0637\u06cc"
        ]
      },
      "fr-fr": {
        "name": "Perroquet",
        "description": "Transforme OpenVoiceOS en perroquet qui r\u00e9p\u00e8te ce que vous dites.",
        "examples": [
          "Dis bonsoir, Gracie",
          "R\u00e9p\u00e8te il \u00e9tait une fois",
          "Qu'est-ce que tu viens de dire ?",
          "Qu'est-ce que je viens de dire ?",
          "D\u00e9marre le mode perroquet",
          "Arr\u00eate le mode perroquet"
        ]
      },
      "gl-es": {
        "name": "Papagaio",
        "description": "Converte OpenVoiceOS nun papagaio imitador! Fai que OVOS repita o que queiras.",
        "examples": [
          "di Boas noites, Ana",
          "repite Unha vez, nunha l\u00fagubre medianoite, en canto cavilaba, d\u00e9bil e canso, nun moi vello e raro libro de saber esquecido",
          "di podo dicir o que queiras!",
          "Repite o que acabas de dicir",
          "Repite iso",
          "Podes repetir iso?",
          "Que acabo de dicir?",
          "Dime o que acabo de dicir.",
          "comezar papagaio",
          "parar papagaio"
        ]
      },
      "it-it": {
        "name": "Parrot",
        "description": "Trasforma OpenVoiceOS in un pappagallo che ripete! Fai ripetere a OVOS qualsiasi cosa tu voglia.",
        "examples": [
          "di Buonanotte, Gracie",
          "ripeti C'era una volta in una tetra mezzanotte, mentre meditavo, stanco e affaticato, su un curioso volume dimenticato",
          "parla Posso dire qualsiasi cosa tu voglia!",
          "Ripeti quello che hai appena detto",
          "Ripeti quello",
          "Puoi ripetere quello?",
          "Cosa ho appena detto?",
          "Dimmi cosa ho appena detto.",
          "avvia parrot",
          "ferma parrot"
        ]
      },
      "kab": {
        "name": "Bebbuc",
        "description": "Err OpenVoiceOS d bebbuc ara ialsen! Sers \u0263ef OVOS ad d-yales ayen teb\u0263i\u1e0d.",
        "examples": [
          "ini i\u1e0delli n lxir, Gracie",
          "ales Yiwen n yi\u1e0d n tegrest yerkan, mi lli\u0263 xemmeme\u0263, \u025begg\u1e0de\u0263 akked wex\u1e63as, \u0263ef wa\u1e6das n yidlisen yettwattun",
          "mmeslay zemre\u0263 ad ini\u0263 ayen teb\u0263i\u1e0d!",
          "Ales ayen i [tura kan] tenni\u1e0d",
          "Ales-t",
          "Tzemre\u1e0d ad t-tealse\u1e0d?",
          "D acu i [tura kan] nni\u0263?",
          "Ini-yi d acu i [tura kan] nni\u0263.",
          "bdu bebbuc",
          "ssense\u0263 bebbuc"
        ]
      },
      "nl-nl": {
        "name": "Papegaai",
        "description": "Verander OpenVoiceOS in een pratende papegaai! Laat OVOS herhalen wat je maar wilt.",
        "examples": [
          "zeg Welterusten, Gracie",
          "herhaal Er was eens een middernacht somber, terwijl ik peinsde, zwak en moe",
          "spreek Ik kan alles zeggen wat je wilt!",
          "Herhaal wat je net zei",
          "Herhaal dat",
          "Kun je dat herhalen?",
          "Wat zei ik net?",
          "Vertel me wat ik net zei.",
          "start papegaai",
          "stop papegaai"
        ]
      },
      "oc-fr": {
        "name": "Papagai",
        "description": "Cambiatz OpenVoiceOS en papagai! Fas\u00e8tz que OVOS repetisca tot \u00e7\u00f2 que vol\u00e8tz.",
        "examples": [
          "digas bona nu\u00e8ch, Gracia",
          "repet\u00eds Una nu\u00e8ch tristassa, mentre que soscavi, feble e las, sus f\u00f2r\u00e7a volums curioses de sabers oblidats",
          "parla, p\u00f2di dire tot \u00e7\u00f2 que volgas!",
          "repet\u00eds \u00e7\u00f2 que venes de dire",
          "repet\u00eds aqu\u00f2",
          "o p\u00f2des repetir?",
          "qu\u00e9 veni de dire?",
          "digas-me \u00e7\u00f2 que veni de dire.",
          "comen\u00e7a lo m\u00f2de papagai",
          "arr\u00e8sta lo m\u00f2de papagai"
        ]
      },
      "pl-pl": {
        "name": "Parrot",
        "description": "Turn OpenVoiceOS into a echoing parrot! Make OVOS repeat whatever you want.",
        "examples": [
          "S\u0142ysza\u0142e\u015b?",
          "Co us\u0142ysza\u0142e\u015b?",
          "Powt\u00f3rz?",
          "tryb papugi",
          "papu\u017cka anuluj"
        ]
      },
      "pt-br": {
        "name": "Papagaio",
        "description": "Transforme o OpenVoiceOS em um papagaio! Fa\u00e7a o OVOS repetir o que voc\u00ea quiser.",
        "examples": [
          "diga boa noite, Gracie",
          "repetir Era uma vez uma meia-noite sombria, enquanto eu ponderava, fraco e cansado, sobre muitos volumes curiosos e pitorescos de conhecimento folcl\u00f3rico",
          "fale Eu posso dizer qualquer coisa que voc\u00ea quiser!",
          "Repita o que voc\u00ea acabou de dizer",
          "Repita isto",
          "Voc\u00ea pode repetir?",
          "O que eu acabei de dizer?",
          "Diga-me o que acabei de dizer.",
          "inicie papagaio",
          "pare papagaio"
        ]
      },
      "pt-pt": {
        "name": "Papagaio",
        "description": "Transforma o OpenVoiceOS num papagaio! Faz o OVOS repetir o que quiseres.",
        "examples": [
          "diz Boa noite",
          "repete Era uma vez uma noite sombria",
          "fala eu posso dizer o que quiseres",
          "repete o que disseste",
          "repete isso",
          "podes repetir isso",
          "o que \u00e9 que eu disse",
          "modo papagaio"
        ]
      },
      "ru-ru": {
        "name": "Parrot",
        "description": "Turn OpenVoiceOS into a echoing parrot! Make OVOS repeat whatever you want.",
        "examples": [
          "\u0421\u043b\u044b\u0448\u0430\u043b?",
          "\u0427\u0442\u043e \u044f \u0441\u043a\u0430\u0437\u0430\u043b?",
          "\u0415\u0449\u0435 \u0440\u0430\u0437?",
          "\u041f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0432\u0441\u0435",
          "\u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u043f\u043e\u043f\u0443\u0433\u0430\u044f"
        ]
      },
      "sv-se": {
        "name": "Papegoja",
        "description": "G\u00f6r OpenVoiceOS till en ekande papegoja! L\u00e5t OVOS upprepa vad du vill.",
        "examples": [
          "s\u00e4g Godnatt, Gracie",
          "upprepa Det var en g\u00e5ng vid midnatt dyster, medan jag funderade, svag och tr\u00f6tt",
          "tala Jag kan s\u00e4ga vad du vill!",
          "Upprepa vad du just sa",
          "Upprepa det",
          "Kan du upprepa det?",
          "Vad sa jag just?",
          "Ber\u00e4tta vad jag just sa.",
          "starta papegoja",
          "stoppa papegoja"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2017-03-04T22:33:40Z",
    "last_updated": "2025-06-10T02:18:07.477724Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-parrot.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.20",
          "tested_at": "2026-10-04T11:09:34+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.25",
          "tested_at": "2026-10-04T10:50:22+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.11.1a3",
          "tested_at": "2026-10-30T08:59:23+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "phmasc-pereira_ovos",
    "skill_id": null,
    "name": "pereira_ovos",
    "description": "Run as a desktop app:",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/phmasc/pereira_ovos/main/src/assets/icon.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/phmasc/pereira_ovos",
    "package_name": "pereira-v2",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "phmasc",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-12-23T13:22:39Z",
    "last_updated": "2026-01-05T16:32:01Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-phal-plugin-save-conversations",
    "skill_id": null,
    "name": "phal-plugin-save-conversations",
    "description": "An OVOS/Neon PHAL plugin that saves a transcript of your conversation messages in JSONL format.",
    "examples": [],
    "tags": [
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/phal-plugin-save-conversations",
    "package_name": "phal-plugin-save-conversations",
    "pypi_version": "0.2.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "PHAL Plugin",
    "type_group": "Plugin",
    "stars": 3,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "OVOS `~/.config/mycroft/mycroft.conf`\n\n{\n  \"PHAL\": {\n    \"phal-plugin-save-conversations\": {\n      \"save_path\": \"/home/ovos/.cache/transcripts\"\n    }\n  }\n}\n\nNeon `~/.config/neon/neon.yaml`\n\nPHAL:\n  phal-plugin-save-conversations:\n    save_path: \"/home/neon/.cache/transcripts\""
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-02-01T04:45:06Z",
    "last_updated": "2026-11-04T03:25:52.985833Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "JarbasHiveMind-poorman_handshake",
    "skill_id": null,
    "name": "poorman_handshake",
    "description": "hivemind key exchange library",
    "examples": [],
    "tags": [
      "aes",
      "crypto",
      "encryption",
      "handshake",
      "hivemind",
      "openvoiceos",
      "ovos",
      "pgp",
      "pgp-key",
      "python",
      "security"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JarbasHiveMind/poorman_handshake",
    "package_name": "poorman_handshake",
    "pypi_version": "1.0.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "JarbasHiveMind",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "pip install poorman_handshake\n\nRequires Python 3.10+, `pycryptodomex >= 3.19.1`, `noiseprotocol >= 0.3.1`, `argon2-cffi >= 21.3.0`, and `zxcvbn >= 4.4.28` (for password-strength checking)."
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-20T13:05:32Z",
    "last_updated": "2024-12-30T17:38:11.566671Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-precise-onnx-js",
    "skill_id": null,
    "name": "precise-onnx-js",
    "description": "Browser/Node.js port of ovos-ww-plugin-precise-onnx: MFCC feature extraction + ONNX-based wake word detection compatible with Precise .onnx models.",
    "examples": [],
    "tags": [
      "javascript",
      "keyword-spotting",
      "mycroft",
      "onnx",
      "openvoiceos",
      "precise",
      "wake-word",
      "wake-word-detection",
      "wakeword"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/precise-onnx-js",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "TigreGotico",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 2,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-03-06T23:42:04Z",
    "last_updated": "2026-09-17T03:58:49Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-pyAhoTTS",
    "skill_id": null,
    "name": "pyAhoTTS",
    "description": "AhoTTS is a Text-to-Speech system for Basque and Spanish.",
    "examples": [],
    "tags": [
      "ilenia",
      "library",
      "openvoiceos",
      "text-to-speech",
      "tigregotico",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/pyAhoTTS",
    "package_name": "pyahotts",
    "pypi_version": "0.0.1",
    "license": "GPL-3.0",
    "archived": false,
    "author": "TigreGotico",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-22T16:06:09Z",
    "last_updated": "2025-03-25T19:09:08.085159Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-pyradios",
    "skill_id": "ovos-skill-pyradios.openvoiceos",
    "name": "Pyradios",
    "description": "a client for the client for the Radio Browser API",
    "examples": [
      "play tsf jazz radio",
      "play tsf jazz on pyradios"
    ],
    "tags": [
      "media",
      "music",
      "entertainment",
      "OCP"
    ],
    "category": "Music",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-pyradios",
    "package_name": "ovos-skill-pyradios",
    "pypi_version": "0.1.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 4,
    "forks": 2,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "hu-hu",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "Pyradios",
        "description": "Permet d'\u00e9couter des radios du monde entier via Radio Browser.",
        "examples": [
          "Joue TSF Jazz Radio",
          "Joue TSF Jazz sur Pyradios"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-26T12:41:47Z",
    "last_updated": "2025-06-08T23:11:08.317168Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-raspOVOS",
    "skill_id": null,
    "name": "raspOVOS",
    "description": "raspOVOS is the flagship OpenVoiceOS experience for the Raspberry Pi. It provides ready-to-flash images that turn a Pi into a voice assistant.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "raspberry-pi",
      "tool"
    ],
    "category": "Other",
    "icon": "https://github.com/OpenVoiceOS/raspOVOS/blob/dev/logo.png?raw=true",
    "icon_source": "readme",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/raspOVOS",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 58,
    "forks": 7,
    "open_issues": 30,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Getting Started",
        "content": "Full documentation lives at [openvoiceos.github.io/raspOVOS](https://openvoiceos.github.io/raspOVOS/). It covers flashing tutorials, hardware guidance, troubleshooting, and developer docs (in-repo source: [`docs/`](docs/index.md)).\n\nFind the latest images on the [Releases](https://github.com/OpenVoiceOS/raspOVOS/releases) page.\n\nEvery image build passes automated static, functional, and boot smoke tests ([CI tiers](docs/dev/ci-tiers.md). Stable releases also pass a [hardware checklist](docs/dev/release-checklist.md).\n\n---"
      },
      {
        "heading": "System Configuration",
        "content": "**User Customization:**\n\n* Renames the default `pi` user to a custom user (default: `ovos`).\n* Updates all references in system files (`/etc/passwd`, `/etc/group`, `/etc/shadow`) and moves the home directory.\n* Sets a default password (`ovos`) and applies it across boot and login settings.\n* Adds the user to the groups `sudo`, `audio`, `pipewire`, `rtkit`, and a custom `ovos` group.\n\n**Hostname:**\n\n* Sets a custom hostname (`raspOVOS`).\n\n**Performance Tuning:**\n\n* Modifies `/etc/fstab` with `setup_fstab.sh` to optimize disk usage and performance (for example, zram swap).\n\n---"
      },
      {
        "heading": "Python Environment Setup",
        "content": "* Installs [uv](https://github.com/astral-sh/uv) and `sdnotify` globally.\n* Creates a Python virtual environment at `~/.venvs/ovos`.\n* Installs core OVOS components and their dependencies inside the venv:\n    * `ovos-core`, `ovos-gui`, `ovos-audio`, `ovos-phal`, `ovos-skill-config-tool`, and others.\n    * STT/TTS plugins like `ovos-stt-plugin-fasterwhisper`, `ovos-audio-transformer-plugin-ggwave`.\n\n---"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-11-25T12:08:27Z",
    "last_updated": "2026-10-13T17:21:07Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-raspovos-audio-setup",
    "skill_id": null,
    "name": "raspovos-audio-setup",
    "description": "Automatic audio configuration for Raspberry Pi devices running OpenVoiceOS.",
    "examples": [],
    "tags": [
      "audio",
      "ilenia",
      "library",
      "openvoiceos",
      "raspberry-pi"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/raspovos-audio-setup",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 9,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "raspOVOS-audio-setup",
        "content": "Automatic audio configuration for Raspberry Pi devices running OpenVoiceOS.\n\nThis repository has shell tools and systemd units that keep audio working when hardware changes. Plug in a USB soundcard, add a HAT, or move the SD card to different hardware, and the tools select the right output automatically. They also expose more complex setups, such as combined outputs and echo cancellation, through a simple menu.\n\n**Note:** The companion project [ovos-i2csound](https://github.com/OpenVoiceOS/ovos-i2csound) handles hardware detection and driver setup for I2C HATs (Mark 1, Respeaker, HiFiBerry, and others). This repository reads its detection hints from `/etc/OpenVoiceOS/i2c_platform`.\n\n---\n\n## The tools\n\n| Tool | Installed to | What it does |\n|------|--------------|--------------|\n| `ovos-aud\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-01-17T06:00:40Z",
    "last_updated": "2026-09-26T15:03:52Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-raspovos-manual",
    "skill_id": null,
    "name": "raspovos-manual",
    "description": "User manual for the raspOVOS image",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "raspberry-pi"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/raspovos-manual",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Advanced configuration",
        "content": "\\\nThe user configuration file is found at `~/.config/mycroft/mycroft.conf`  \nThis is a standard JSON file and can be checked with the command `cat ~/.config/mycroft/mycroft.conf | jq`\n\\"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-10-24T15:55:58Z",
    "last_updated": "2024-10-24T21:43:21Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-recipe-helper",
    "skill_id": "ovos-skill-recipe-helper.andlo",
    "name": "Recipe Helper",
    "description": "Offline recipes from the Wikibooks Cookbook. English, Danish and German are built in; other languages are answered through on-demand offline translation. No internet connection needed.",
    "examples": [
      "how do I make pancakes",
      "what do I need for carbonara",
      "give me a recipe for bobotie"
    ],
    "tags": [
      "recipes",
      "cooking",
      "food",
      "offline",
      "reference"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-recipe-helper/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-recipe-helper",
    "package_name": "ovos-skill-recipe-helper",
    "pypi_version": "0.1.1",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-recipe-helper"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Opskriftshj\u00e6lper",
        "description": "Offline opskrifter fra Wikibooks' kogeb\u00f8ger. Engelsk, dansk og tysk er indbygget; andre sprog besvares via offline-overs\u00e6ttelse. Ingen internetforbindelse n\u00f8dvendig.",
        "examples": [
          "hvordan laver jeg pandekager",
          "hvad skal jeg bruge til carbonara",
          "hvor mange gram er 2 dl mel"
        ]
      },
      "de-de": {
        "name": "Rezepthelfer",
        "description": "Offline-Rezepte aus dem Wikibooks-Kochbuch. Englisch, D\u00e4nisch und Deutsch sind eingebaut; andere Sprachen werden per Offline-\u00dcbersetzung beantwortet. Keine Internetverbindung n\u00f6tig.",
        "examples": [
          "wie mache ich Pfannkuchen",
          "was brauche ich f\u00fcr Carbonara",
          "wie viel Gramm sind 2 dl Mehl"
        ]
      },
      "es-es": {
        "name": "Ayudante de recetas",
        "description": "Recetas sin conexi\u00f3n de Artes culinarias en Wikibooks. Ingl\u00e9s, dan\u00e9s y alem\u00e1n vienen incluidos; los dem\u00e1s idiomas se responden mediante traducci\u00f3n sin conexi\u00f3n. No requiere internet.",
        "examples": [
          "c\u00f3mo hago panqueques",
          "qu\u00e9 necesito para una carbonara",
          "cu\u00e1ntos gramos son 2 dl de harina"
        ]
      },
      "fr-fr": {
        "name": "Assistant de recettes",
        "description": "Recettes hors ligne issues du Livre de cuisine Wikibooks. L'anglais, le danois et l'allemand sont int\u00e9gr\u00e9s ; les autres langues passent par une traduction hors ligne \u00e0 la demande. Aucune connexion internet requise.",
        "examples": [
          "comment faire des cr\u00eapes",
          "de quoi ai-je besoin pour une carbonara",
          "combien de grammes fait 2 dl de farine"
        ]
      },
      "it-it": {
        "name": "Assistente di ricette",
        "description": "Ricette offline dal Libro di cucina di Wikibooks. Inglese, danese e tedesco sono inclusi; le altre lingue vengono gestite tramite traduzione offline su richiesta. Non richiede connessione internet.",
        "examples": [
          "come si fanno i pancake",
          "cosa serve per una carbonara",
          "quanti grammi sono 2 dl di farina"
        ]
      },
      "nl-nl": {
        "name": "Receptenhulp",
        "description": "Offline recepten uit het Wikibooks Kookboek. Engels, Deens en Duits zijn ingebouwd; andere talen worden beantwoord via offline vertaling op aanvraag. Geen internetverbinding nodig.",
        "examples": [
          "hoe maak ik pannenkoeken",
          "wat heb ik nodig voor carbonara",
          "hoeveel gram is 2 dl bloem"
        ]
      },
      "pt-pt": {
        "name": "Assistente de receitas",
        "description": "Receitas offline do Livro de receitas da Wikibooks. Ingl\u00eas, dinamarqu\u00eas e alem\u00e3o v\u00eam inclu\u00eddos; os outros idiomas s\u00e3o respondidos por tradu\u00e7\u00e3o offline a pedido. N\u00e3o requer internet.",
        "examples": [
          "como fa\u00e7o panquecas",
          "o que preciso para uma carbonara",
          "quantos gramas s\u00e3o 2 dl de farinha"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-18T14:53:06Z",
    "last_updated": "2026-10-01T10:11:23.200389Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-recipe-helper.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.1",
          "tested_at": "2026-10-04T11:10:39+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 0/3 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.1.1",
          "tested_at": "2026-10-04T10:51:31+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 3
          }
        },
        "alpha": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.1.1",
          "tested_at": "2026-10-30T08:59:37+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-rhythm-box",
    "skill_id": "ovos-skill-rhythm-box.andlo",
    "name": "Rhythm Box",
    "description": "A simple drum-machine skill - loops a beat pattern (rock, four-on-the-floor) at a chosen tempo. Fully offline, generated drum sounds.",
    "examples": [
      "play a rock beat at 100 bpm",
      "start a drum loop",
      "stop the beat"
    ],
    "tags": [
      "music",
      "drums",
      "rhythm",
      "beat"
    ],
    "category": "Music",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-rhythm-box/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-rhythm-box",
    "package_name": "ovos-skill-rhythm-box",
    "pypi_version": "0.0.4",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-rhythm-box"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Rytmeboks",
        "description": "Et simpelt rytmeboks-skill - loop et beat-m\u00f8nster (rock, disco) i et valgt tempo. Fuldst\u00e6ndig offline, genererede trommelyde.",
        "examples": [
          "spil et rock beat p\u00e5 100 bpm",
          "start et trommeloop",
          "stop beatet"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:32Z",
    "last_updated": "2026-10-02T10:21:01.359152Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-rhythm-box.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 0/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T11:11:07+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 6
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 0/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:51:56+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 6
          }
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 0/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-30T08:59:48+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 0,
            "counted": 6
          }
        }
      }
    }
  },
  {
    "id": "Ramblurr-ovos-skill-roon",
    "skill_id": null,
    "name": "Roon Skill",
    "description": null,
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/music.svg",
    "icon_source": "readme",
    "icon_color": "#3E34FA",
    "source": "https://github.com/Ramblurr/ovos-skill-roon",
    "package_name": "skill-roon",
    "pypi_version": null,
    "license": "AGPL-3.0",
    "archived": false,
    "author": "Ramblurr",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "host",
        "type": "text",
        "label": "Host/IP Address"
      },
      {
        "name": "port",
        "type": "number",
        "label": "Port"
      }
    ],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "This skill must be installed as a container. See [docker/docker-compose.yml](./docker/docker-compose.yml). You can just copy the `ovos_skill_roon` service block into your existing compose."
      },
      {
        "heading": "Setup",
        "content": "\u26a0\ufe0f Your Roon Core must be on the same network as your OVOS device. If your OVOS device and Roon Core are on different vlans, you will need to configure the host and port manually. \u26a0\ufe0f\n\n### Discovery\n\nAfter installing the Roon Skill you must connect it to your Roon Core. You can\ndo this by asking Mycroft to setup Roon:\n\n1. \"Hey Mycroft, Setup Roon\"_ or \"Hey Mycroft, Configure Roon\"_\n\nThen it will attempt to discover your Roon Core.\n\nIf automatic discovery works it will tell you to proceed with activation (see\nbelow)\n\nIf it fails, it will tell you to configure the skill manually. You will need to vist https://home.mycroft.ai/#/skill,\nnavigate to the Roon Skill, and enter the IP Address/Host and Port for your Roon\nCore.\n\n### Activation\n\nAfter Mycroft discovers your Roon Core automatically, or\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-12-21T08:56:12Z",
    "last_updated": "2026-04-10T06:10:37Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-screenshot",
    "skill_id": "ovos-skill-screenshot.openvoiceos",
    "name": "Screenshot",
    "description": "Take a screenshot by voice. The skill saves the image as a PNG file and shows a notification with the file location.",
    "examples": [
      "take screenshot",
      "take a screenshot",
      "capture the screen",
      "screenshot the display",
      "save a screenshot",
      "grab the screen"
    ],
    "tags": [
      "system"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-screenshot",
    "package_name": "ovos-skill-screenshot",
    "pypi_version": "0.0.7",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-screenshot"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "fes una captura de pantalla",
          "fes una captura",
          "captura la pantalla",
          "captura la pantalla",
          "desa una captura",
          "grava la pantalla"
        ]
      },
      "da-dk": {
        "examples": [
          "tag sk\u00e6rmbillede",
          "tag et sk\u00e6rmbillede",
          "fang sk\u00e6rmen",
          "sk\u00e6rmbillede af sk\u00e6rmen",
          "gem et sk\u00e6rmbillede",
          "grib sk\u00e6rmen"
        ]
      },
      "de-de": {
        "examples": [
          "Screenshot machen",
          "Mach einen Screenshot",
          "Bildschirm aufnehmen",
          "Screenshot des Displays",
          "einen Screenshot speichern",
          "Bildschirm speichern"
        ]
      },
      "es-co": {
        "examples": [
          "haz captura de pantalla",
          "haz una captura de pantalla",
          "captura la pantalla",
          "captura la pantalla",
          "guarda una captura de pantalla",
          "captura la pantalla"
        ]
      },
      "es-es": {
        "examples": [
          "haz captura de pantalla",
          "haz una captura de pantalla",
          "captura la pantalla",
          "captura la pantalla",
          "guarda una captura de pantalla",
          "captura la pantalla"
        ]
      },
      "eu-es": {
        "examples": [
          "egin pantaila-argazkia",
          "egin pantaila-argazki bat",
          "kapturatu pantaila",
          "kapturatu pantaila",
          "gorde pantaila-argazki bat",
          "kapturatu pantaila"
        ]
      },
      "fa-ir": {
        "name": "Screenshot",
        "description": "Take a screenshot by voice. The skill saves the image as a PNG file and shows a notification with the file location.",
        "examples": [
          "\u0635\u0641\u062d\u0647 \u0646\u0645\u0627\u06cc\u0634 \u06a9\u062c\u0627 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc \u0634\u0648\u062f",
          "\u0635\u0641\u062d\u0647 \u0646\u0645\u0627\u06cc\u0634"
        ]
      },
      "fr-fr": {
        "examples": [
          "prendre une capture d'\u00e9cran",
          "faire une capture d'\u00e9cran",
          "capturer l'\u00e9cran",
          "capture l'\u00e9cran",
          "enregistrer une capture d'\u00e9cran",
          "capture d'\u00e9cran"
        ]
      },
      "gl-es": {
        "examples": [
          "facer (unha|) captura de pantalla",
          "facer unha captura de pantalla",
          "capturar a pantalla",
          "capturar a pantalla",
          "gardar unha captura de pantalla",
          "capturar a pantalla"
        ]
      },
      "it-it": {
        "examples": [
          "fai uno screenshot",
          "fai una schermata",
          "cattura lo schermo",
          "screenshot dello schermo",
          "salva uno screenshot",
          "cattura la schermata"
        ]
      },
      "kab": {
        "examples": [
          "\u1e6d\u1e6def tugna n ugdil",
          "\u1e6d\u1e6def tugna n ugdil",
          "\u1e6d\u1e6def agdil",
          "tugna n ugdil",
          "sekles tugna n ugdil",
          "\u1e6d\u1e6def agdil n uselkim"
        ]
      },
      "nl-nl": {
        "examples": [
          "maak een schermafbeelding",
          "maak een schermafbeelding",
          "leg het scherm vast",
          "maak een schermafbeelding van het scherm",
          "bewaar een schermafbeelding",
          "leg het scherm vast"
        ]
      },
      "oc-fr": {
        "examples": [
          "fai una captura d'ecran",
          "fai una captura",
          "captura l'ecran",
          "fai una captura de la pantalha",
          "garda una captura d'ecran",
          "enregistra l'ecran"
        ]
      },
      "pl-pl": {
        "name": "Screenshot",
        "description": "Take a screenshot by voice. The skill saves the image as a PNG file and shows a notification with the file location.",
        "examples": [
          "Gdzie id\u0105 zrzuty ekranu",
          "z\u0142apa\u0107 ekran"
        ]
      },
      "pt-br": {
        "examples": [
          "tirar captura de tela",
          "tirar uma captura de tela",
          "capturar a tela",
          "captura de tela do monitor",
          "salvar uma captura de tela",
          "capturar a tela do computador"
        ]
      },
      "pt-pt": {
        "examples": [
          "tirar captura de ecr\u00e3",
          "tirar uma captura de ecr\u00e3",
          "capturar a tela",
          null,
          "guardar uma captura de ecr\u00e3",
          null
        ]
      },
      "ru-ru": {
        "name": "Screenshot",
        "description": "Take a screenshot by voice. The skill saves the image as a PNG file and shows a notification with the file location.",
        "examples": [
          "\u043a\u0443\u0434\u0430 \u0438\u0434\u0443\u0442 \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u044b",
          "\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442"
        ]
      },
      "sv-se": {
        "examples": [
          "ta en sk\u00e4rmdump",
          "ta sk\u00e4rmdump",
          "f\u00e5nga sk\u00e4rmen",
          "sk\u00e4rmdump av sk\u00e4rmen",
          "spara en sk\u00e4rmdump",
          "f\u00e5nga sk\u00e4rmen nu"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-11-17T13:56:41Z",
    "last_updated": "2025-03-16T13:12:04.694661Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-screenshot.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 10/11 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T11:11:20+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads \u00b7 10/11 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:52:02+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 26/27 golden",
          "state": "warn",
          "level": 3,
          "version_tested": "1.7.1a1",
          "tested_at": "2026-10-30T08:59:58+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 26,
            "counted": 27
          }
        }
      }
    }
  },
  {
    "id": "JhonCleyton-SisOvos",
    "skill_id": null,
    "name": "SisOvos",
    "description": "Sistema de Gerenciamento de Vendas de Ovos",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/JhonCleyton/SisOvos",
    "package_name": "SisOvos",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "JhonCleyton",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-04T17:40:08Z",
    "last_updated": "2025-06-12T17:11:43Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-easter-eggs",
    "skill_id": "skill-easter-eggs.openvoiceos=skill_easter_eggs:EasterEggsSkill",
    "name": "skill-easter-eggs",
    "description": "Some funny things for OpenVoiceOS, mostly quotes from movies",
    "examples": [
      "Current stardate?",
      "Open the pod bay doors.",
      "First law of robotics?",
      "How to play rock paper scissors lizard spock?",
      "Do you like Portal?",
      "What would Duke Nukem say?",
      "What would HAL 9000 say?",
      "What would Arnold say?",
      "What would GLaDOS say?",
      "What would Bender say?",
      "What would Malibu Stacey say?",
      "You know the best band in the world? Wyld Stallions?",
      "Sing me a song"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-easter-eggs",
    "package_name": "skill-easter-eggs",
    "pypi_version": "1.2.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 5,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "grandma_mode_enabled",
        "type": "checkbox",
        "label": "Keep the content classy"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip.\n\npip install ovos-skill-easter-eggs"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pt-br",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": true,
    "repo_created_at": "2017-09-22T05:02:43Z",
    "last_updated": "2026-10-16T02:53:15.511853Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill-easter-eggs.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.2.5",
          "tested_at": "2026-10-16T08:04:28+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.2.5",
          "tested_at": "2026-10-16T07:59:15+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.2.5",
          "tested_at": "2026-10-30T09:00:10+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-skill-homeassistant",
    "skill_id": "skill_homeassistant.oscillatelabsllc",
    "name": "skill-homeassistant",
    "description": "skill-homeassistant",
    "examples": [
      "What is the status of the living room light?",
      "Turn on the kitchen light",
      "Change light bedside lamp to blue"
    ],
    "tags": [
      "ovos",
      "neon",
      "home",
      "assistant",
      "voice",
      "interface",
      "skill",
      "plugin"
    ],
    "category": "Home",
    "icon": "https://www.home-assistant.io/images/home-assistant-logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/skill-homeassistant",
    "package_name": "skill-homeassistant",
    "pypi_version": "1.4.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 22,
    "forks": 7,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation on Neon",
        "content": "You can `pip install neon-homeassistant-skill`, or handle the installation from the `~/.config/neon/neon.yaml` file if you prefer:\n\nskills:\n  default_skills:\n    - skill-homeassistant # Optionally with a version, such as skill-homeassistant==0.1.0"
      },
      {
        "heading": "Configuration",
        "content": "### Authentication Using a Long-lived Token\n\nWe recommend using a [long-lived token for Home Assistant](https://developers.home-assistant.io/docs/auth_api/#long-lived-access-token). This provides persistent access without requiring re-authentication. Configure it in your skill settings file:\n\n- OVOS: `~/.config/mycroft/skills/skill-homeassistant/settings.json`\n- Neon: `~/.config/neon/skills/neon_homeassistant_skill/settings.json`\n\n{\n  \"api_key\": \"<HA_LONG_LIVED_TOKEN>\",\n  \"host\": \"<HA_IP_OR_HOSTNAME>\"\n}\n\n### Configuration Options\n\nAll available settings with their defaults:\n\n{\n  \"host\": \"\", // Home Assistant instance URL - required, no default\n  \"api_key\": \"\", // Long-lived access token - required, no default\n  \"disable_intents\": false, // Disable all Home Assistant intents. In most cases,\u2026"
      }
    ],
    "languages": [
      "da-dk",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "kab-dz",
      "pl-pl",
      "sv-se"
    ],
    "locale_content": {
      "da-dk": {
        "name": "skill-homeassistant",
        "description": "skill-homeassistant",
        "examples": [
          "Hvad er status p\u00e5 stuelampen?",
          "T\u00e6nd k\u00f8kkenlyset",
          "Skift sengelampen til bl\u00e5"
        ]
      },
      "es-es": {
        "name": "skill-homeassistant",
        "description": "skill-homeassistant",
        "examples": [
          "\u00bfCu\u00e1l es el estado de la luz de la sala?",
          "Enciende la luz de la cocina",
          "Cambiar la luz de la l\u00e1mpara de noche a azul"
        ]
      },
      "fr-fr": {
        "name": "Home Assistant",
        "description": "Commandez vos appareils Home Assistant \u00e0 la voix.",
        "examples": [
          "Quel est l'\u00e9tat de la lumi\u00e8re du salon ?",
          "Allume la lumi\u00e8re de la cuisine",
          "Change la couleur de la lampe de chevet en bleu"
        ]
      },
      "it-it": {
        "name": "skill-homeassistant",
        "description": "Controlla i dispositivi Home\u202fAssistant con la voce \u2013 100\u202f% offline tramite OpenVoiceOS.",
        "examples": [
          "D\u00ec a Home Assistant di accendi le luci del soggiorno",
          "Chiedi a Home Assistant imposta la temperatura a 22 gradi",
          "Chiedi a Home Assistant qual \u00e8 lo stato della porta d\u2019ingresso?",
          "Ordina a Home Assistant Avvia lo script 'Buona notte'"
        ]
      },
      "pl-pl": {
        "name": "skill-homeassistant",
        "description": "skill-homeassistant",
        "examples": [
          "Jaki jest status lampy w salonie?",
          "W\u0142\u0105cz \u015bwiat\u0142o w kuchni",
          "Zmie\u0144 kolor lampy w salonie na niebieski"
        ]
      },
      "sv-se": {
        "name": "skill-homeassistant",
        "description": "skill-homeassistant",
        "examples": [
          "Vad \u00e4r statusen p\u00e5 vardagsrumslampan?",
          "Sl\u00e5 p\u00e5 k\u00f6kslampan",
          "\u00c4ndra s\u00e4nglampan till bl\u00e5"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2025-03-17T02:00:51Z",
    "last_updated": "2026-11-04T03:26:44.521179Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill-homeassistant.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.4.6",
          "tested_at": "2026-11-04T09:50:03+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.4.6",
          "tested_at": "2026-11-04T09:49:14+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "stop": "stuck",
          "version_tested": "1.4.6",
          "tested_at": "2026-11-04T09:49:24+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-skill-mac-application-launcher",
    "skill_id": null,
    "name": "skill-mac-application-launcher",
    "description": "launch applications by voice",
    "examples": [],
    "tags": [
      "ovos",
      "status-security-fixes-only"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/spinner.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OscillateLabsLLC/skill-mac-application-launcher",
    "package_name": "skill-mac-application-launcher",
    "pypi_version": "1.0.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration via `settings.json`",
        "content": "Customize the Application Launcher skill behavior by modifying these options in `settings.json`:\n\n| Option                   | Type                   | Default Value | Description                                                                                           |\n| ------------------------ | ---------------------- | ------------- | ----------------------------------------------------------------------------------------------------- |\n| `aliases`                | `Dict[str, List[str]]` | `{}`          | Application aliases. Map app names to speech-friendly alternatives (e.g., `{\"Calculator\": [\"calc\"]}`) |\n| `user_commands`          | `Dict[str, str]`       | `{}`          | Custom application paths. Map app names to specific `.app` bundle paths                               |\n| `thr\u2026"
      },
      {
        "heading": "Installation",
        "content": "Install from PyPI:\n\npip install skill-mac-application-launcher\n\nOr install from source:\n\ngit clone https://github.com/OscillateLabsLLC/skill-mac-application-launcher\ncd skill-mac-application-launcher\npip install ."
      }
    ],
    "languages": [
      "ca-es",
      "da",
      "de-de",
      "en-us",
      "eu",
      "gl-es",
      "it-it",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "ca-es": {
        "examples": [
          "Obre ____",
          "Inicia ____",
          "Tanca ____"
        ]
      },
      "da": {
        "examples": [
          "\u00c5ben ____",
          "Start ____",
          "Luk ____"
        ]
      },
      "de-de": {
        "examples": [
          "\u00d6ffne ____",
          "Starte ____",
          "Schlie\u00dfe ____"
        ]
      },
      "nl-nl": {
        "examples": [
          "Open ____",
          "Start ____",
          "Sluit ____"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2025-06-08T21:50:46Z",
    "last_updated": "2026-11-04T03:27:32.803742Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill-mac-application-launcher.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.6",
          "tested_at": "2026-11-04T09:54:10+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:51:33+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:49:55+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-skill-meal-plan",
    "skill_id": "skill_meal_plan.oscillatelabsllc",
    "name": "skill-meal-plan",
    "description": "An OVOS voice skill for meal suggestions",
    "examples": [
      "What should I make for dinner?",
      "What should I eat?",
      "What should I eat tonight?",
      "I'm hungry",
      "What's for dinner?"
    ],
    "tags": [
      "ovos",
      "neon",
      "skill",
      "voice",
      "meal",
      "planning"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/utensils.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/skill-meal-plan",
    "package_name": "skill-meal-plan",
    "pypi_version": "2.2.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "da-dk",
      "en-us",
      "fr-fr",
      "sv-se"
    ],
    "locale_content": {
      "da-dk": {
        "name": "skill-meal-plan",
        "description": "En OVOS stemmeskill til m\u00e5ltidsforslag",
        "examples": [
          "Hvad skal jeg lave til aftensmad?",
          "Hvad skal jeg spise?",
          "Hvad skal jeg spise i aften?",
          "Jeg er sulten",
          "Hvad skal vi have til aften?"
        ]
      },
      "fr-fr": {
        "name": "Plan de repas",
        "description": "Un skill OVOS qui sugg\u00e8re un repas et vous aide \u00e0 g\u00e9rer votre liste de repas.",
        "examples": [
          "Propose-moi une id\u00e9e de repas",
          "Quel repas me proposes-tu ?",
          "Ajoute un repas \u00e0 ma liste de repas",
          "Supprime un repas de ma liste",
          "Quels sont mes repas ?"
        ]
      },
      "sv-se": {
        "name": "skill-meal-plan",
        "description": "En OVOS r\u00f6stskill f\u00f6r m\u00e5ltidsf\u00f6rslag",
        "examples": [
          "Vad ska jag laga till middag?",
          "Vad ska jag \u00e4ta?",
          "Vad ska jag \u00e4ta ikv\u00e4ll?",
          "Jag \u00e4r hungrig",
          "Vad blir det till middag?"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2022-05-22T02:33:47Z",
    "last_updated": "2026-11-04T03:27:21.291511Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill_meal_plan.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:55:01+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:51:35+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:49:58+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-skill-monster-scanner",
    "skill_id": "skill_monster_scanner.oscillatelabsllc",
    "name": "skill-monster-scanner",
    "description": "An OVOS voice skill that scans for monsters under the bed",
    "examples": [
      "Are there monsters under my bed?",
      "Is the Boogeyman under the bed?"
    ],
    "tags": [
      "ovos",
      "neon",
      "skill",
      "voice",
      "kids",
      "fun"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/skill-monster-scanner",
    "package_name": "skill-monster-scanner",
    "pypi_version": "2.2.4",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "If you feel like being a monster yourself, you can set `scary` in the config to `true` and the skill will sometimes find a monster.\n\nUnder skill settings (`~/.config/mycroft/skills/skill-monster-scanner.oscillatelabsllc/settings.json`):\n\n| Option  | Value   | Description                                                  |\n| ------- | ------- | ------------------------------------------------------------ |\n| `scary` | `false` | Whether or not to occasionally find a monster under the bed. |\n\nNote: If you are running Neon, the skill settings file will be located at `~/.config/neon/skills/skill-monster-scanner.oscillatelabsllc/settings.json`."
      }
    ],
    "languages": [
      "da-dk",
      "en-us",
      "fr-fr",
      "sv-se"
    ],
    "locale_content": {
      "da-dk": {
        "name": "skill-monster-scanner",
        "description": "En OVOS stemmeskill der scanner efter monstre under sengen",
        "examples": [
          "Er der monstre under min seng?",
          "Er bussemanden under sengen?"
        ]
      },
      "fr-fr": {
        "name": "D\u00e9tecteur de monstres",
        "description": "Un skill OVOS qui v\u00e9rifie s'il y a des monstres sous le lit pour rassurer les enfants au moment du coucher.",
        "examples": [
          "Peux-tu v\u00e9rifier s'il y a des monstres sous mon lit ?",
          "Regarde s'il y a un croque-mitaine sous le lit"
        ]
      },
      "sv-se": {
        "name": "skill-monster-scanner",
        "description": "En OVOS r\u00f6stskill som skannar efter monster under s\u00e4ngen",
        "examples": [
          "Finns det monster under min s\u00e4ng?",
          "\u00c4r busen under s\u00e4ngen?"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2024-07-05T21:08:54Z",
    "last_updated": "2026-11-04T03:25:26.682433Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill-monster-scanner.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.2.4",
          "tested_at": "2026-11-04T09:55:03+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.2.4",
          "tested_at": "2026-11-04T09:51:37+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "2.2.4",
          "tested_at": "2026-11-04T09:50:01+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-skill-musicassistant",
    "skill_id": "skill-musicassistant",
    "name": "skill-musicassistant",
    "description": "skill-musicassistant",
    "examples": [],
    "tags": [
      "mycroft",
      "ovos",
      "neon",
      "plugin",
      "media",
      "home assistant",
      "music assistant",
      "open home foundation"
    ],
    "category": "Other",
    "icon": "https://www.music-assistant.io/assets/transparent-logo.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/skill-musicassistant",
    "package_name": "skill-musicassistant",
    "pypi_version": "1.0.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "The skill requires the following configuration:\n\n- `music_assistant_url`: The URL of the Music Assistant server.\n- `music_assistant_token`: The token for the Music Assistant server. _Required for version 2.7.2 and later._\n\nThe skill also accepts the following configuration:\n\n- `default_player`: The default player to use when a command doesn't name one. Can also be set by voice (\"make ... my default player\"), which updates this setting on the local device.\n\nThese can be set in the skill settings or in the skill configuration file."
      },
      {
        "heading": "Example Configuration",
        "content": "{\n  \"music_assistant_url\": \"http://localhost:8095\",\n  \"music_assistant_token\": \"MUSIC_ASSISTANT_TOKEN\",\n  \"default_player\": \"Living Room Speaker\"\n}"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "Music Assistant",
        "description": "Contr\u00f4le la lecture musicale sur vos lecteurs Music Assistant avec OpenVoiceOS.",
        "examples": [
          "Avec Music Assistant, joue l'album Random Access Memories dans le salon",
          "Avec Music Assistant, lance la playlist d\u00e9tente",
          "Avec Music Assistant, joue le morceau Get Lucky",
          "Avec Music Assistant, mets le volume \u00e0 trente pour cent"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2025-08-28T01:28:15Z",
    "last_updated": "2026-11-06T04:14:44.304742Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "skill-musicassistant.oscillatelabsllc",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.3",
          "tested_at": "2026-11-06T09:51:01+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.3",
          "tested_at": "2026-11-06T09:50:15+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.3",
          "tested_at": "2026-11-06T09:50:10+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-skill-ovos-alarm",
    "skill_id": null,
    "name": "skill-ovos-alarm",
    "description": "Mycroft AI Alarm Skill - Set single and recurring alarms, with a choice of alarm sounds",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/clock.svg",
    "icon_source": "readme",
    "icon_color": "#5B6984",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-alarm",
    "package_name": "ovos-skill-alarm",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 1,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "sound",
        "type": "select",
        "label": "Selection:"
      },
      {
        "name": "start_quiet",
        "type": "checkbox",
        "label": "Start Quietly, Grow Louder"
      }
    ],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "de-de",
      "en-us",
      "es-es",
      "eu-eu",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-06-02T03:29:06Z",
    "last_updated": "2023-02-04T02:31:23Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-common-play",
    "skill_id": null,
    "name": "skill-ovos-common-play",
    "description": "Mycroft AI official Playback Control Skill - providing Intents for other Skills to use common playback functionality (via Common Play)",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/play.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-common-play",
    "package_name": "ovos-skill-common-play",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-02-02T06:25:48Z",
    "last_updated": "2022-03-02T02:38:55Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-common-query",
    "skill_id": null,
    "name": "skill-ovos-common-query",
    "description": "Skill Negotiating for the best source for an answer via Common QA",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/question.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-common-query",
    "package_name": "ovos-skill-common-query",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 2,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "it-it",
      "nl-nl",
      "ro-ro"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-09-06T00:29:45Z",
    "last_updated": "2022-06-02T13:44:54Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-skill-ovos-fallback-gemini-chat",
    "skill_id": null,
    "name": "skill-ovos-fallback-gemini-chat",
    "description": "Question answering skill based on Gemini for OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/femelo/skill-ovos-fallback-gemini-chat",
    "package_name": "skill-ovos-fallback-gemini-chat",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "femelo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Under skill settings (`~/.config/mycroft/skills/skill-ovos-fallback-gemini-chat.femelo/settings.json`) you can tweak some parameters for Gemini Chat.\n\n| Option             | Value                                                                  | Description                             |\n| ------------------ | ---------------------------------------------------------------------- | --------------------------------------- |\n| `api_key`          | `your-gemini-api-key`                                                  | Your Gemini API key                     |\n| `persona`          | `You are a helpful assistant who gives very short but factual answers` | Give a personality to a Gemini model    |\n| `model`            | `gemini-2.5-flash`                                                     | L\u2026"
      },
      {
        "heading": "Configurations",
        "content": "The skill utilizes the `~/.config/mycroft/skills/skill-ovos-fallback-gemini-chat.femelo/settings.json` file which allows you to configure it.\n\n### Configuration for use with Gemini Chat\n\n{\n  \"api_key\": \"{your-gemini-api-key}\",\n  \"model\": \"gemini-2.5-flash\",\n  \"persona\": \"You are a helpful voice assistant with a friendly tone and fun sense of humor\",\n  \"enable_reasoning\": false,\n  \"__mycroft_skill_firstrun\": false\n}"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr",
      "nl-nl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-09-26T13:57:05Z",
    "last_updated": "2025-10-04T18:28:53Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "femelo-skill-ovos-fallback-hugchat",
    "skill_id": null,
    "name": "skill-ovos-fallback-hugchat",
    "description": "Ask HuggingChat with OpenVoiceOS",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/femelo/skill-ovos-fallback-hugchat",
    "package_name": "skill-ovos-fallback-hugchat",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "femelo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Under skill settings (`.config/mycroft/skills/skill-ovos-fallback-hugchat.femelo/settings.json`) you can tweak some parameters for HuggingChat.\n\n| Option          | Value                                                                  | Description                                                   |\n| --------------- | ---------------------------------------------------------------------- | ---------------------------------------                       |\n| `email`         | `your-hf-email`                                                        | Your `email` to access Hugging Face                           |\n| `password`      | `your-hf-password`                                                     | Your `password` to access Hugging Face                        |\n| `persona`       | `You ar\u2026"
      },
      {
        "heading": "Configurations",
        "content": "The skill utilizes the `~/.config/mycroft/skills/skill-ovos-fallback-hugchat.femelo/settings.json` file which allows you to configure it.\n\n### Configuration for use with HuggingChat\n\n{\n  \"email\": \"{your-hf-email}\",\n  \"password\": \"{your-hf-password}\",\n  \"model\": \"llama-3\",\n  \"persona\": \"You are a helpful voice assistant with a friendly tone and fun sense of humor\",\n  \"enable_memory\": true,\n  \"memory_size\": 15,\n  \"web_search\": false,\n  \"__mycroft_skill_firstrun\": false\n}"
      }
    ],
    "languages": [
      "en-us",
      "fr-fr",
      "nl-nl",
      "pt-br",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-05-22T22:59:41Z",
    "last_updated": "2025-08-01T00:20:49Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-skill-ovos-filebrowser",
    "skill_id": null,
    "name": "skill-ovos-filebrowser",
    "description": "File Browser for OpenVoice OS Platform",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/svgs/solid/folder-open.svg",
    "icon_source": "readme",
    "icon_color": "#55dffe",
    "source": "https://github.com/LibreVoiceAssistant/skill-ovos-filebrowser",
    "package_name": "ovos-skill-filebrowser",
    "pypi_version": "0.0.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 7,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-01-03T11:24:12Z",
    "last_updated": "2023-03-13T18:57:13.185147Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "LibreVoiceAssistant-skill-ovos-filebrowser",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T11:10:33+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-04T10:52:21+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-30T08:59:16+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "AIIX-skill-ovos-homeassistant-vui",
    "skill_id": null,
    "name": "skill-ovos-homeassistant-vui",
    "description": "A voice interface for the OVOS HomeAssistant PHAL Plugin",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant/dev/ovos_PHAL_plugin_homeassistant/ui/icons/ha_icon_dark.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/AIIX/skill-ovos-homeassistant-vui",
    "package_name": "ovos-skill-homeassistant-vui",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "AIIX",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-02T07:51:39Z",
    "last_updated": "2023-05-16T17:18:59Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "NeonJarbas-skill-ovos-just-watch",
    "skill_id": null,
    "name": "skill-ovos-just-watch",
    "description": "Find where a movie is streaming and play it",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/NeonJarbas/skill-ovos-just-watch",
    "package_name": "ovos-skill-just-watch",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "NeonJarbas",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-01-19T04:53:36Z",
    "last_updated": "2024-01-19T04:54:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "jumper047-skill-ovos-mqtt-adapter",
    "skill_id": null,
    "name": "skill-ovos-mqtt-adapter",
    "description": "Skill for OVOS to be controlled via MQTT protocol ",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/jumper047/skill-ovos-mqtt-adapter",
    "package_name": null,
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "jumper047",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Go to [[https://account.mycroft.ai/skills]], find Installer skill, paste url https://github.com/jumper047/mycroft-mqtt-adapter into \"Skill URL\" field and press \"Save\". As alternate way you can connect to your Mycroft instance via ssh and enter `mycroft-skill install https://github.com/jumper047/mycroft-mqtt-adapter`"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-12-09T10:47:34Z",
    "last_updated": "2024-03-08T00:49:38Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-mycroftgui",
    "skill_id": null,
    "name": "skill-ovos-mycroftgui",
    "description": "Mycroft skill to take control of the Mycroft GUI QT application.",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/cog.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-mycroftgui",
    "package_name": "ovos-skill-mycroft-gui",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "use_listening_beep",
        "type": "checkbox",
        "label": "Play beep when listening"
      }
    ],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-br",
      "sv-se"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-05-17T15:59:50Z",
    "last_updated": "2022-03-02T02:38:57Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "LibreVoiceAssistant-skill-ovos-notes",
    "skill_id": null,
    "name": "skill-ovos-notes",
    "description": "Notes Skill",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/sticky-note.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/LibreVoiceAssistant/skill-ovos-notes",
    "package_name": "ovos-skill-notes",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "LibreVoiceAssistant",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 1,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2022-01-26T10:01:44Z",
    "last_updated": "2023-05-16T17:16:33Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "branep-skill-ovos-ollama-chat",
    "skill_id": null,
    "name": "skill-ovos-ollama-chat",
    "description": "OVOS ollama skill",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/branep/skill-ovos-ollama-chat",
    "package_name": "skill-ovos-ollama-chat",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "branep",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "es-es",
      "fr-fr"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-09-19T19:11:59Z",
    "last_updated": "2024-12-19T17:12:31Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-skill-ovos-radio-spain",
    "skill_id": null,
    "name": "skill-ovos-radio-spain",
    "description": "Lista: https://www.radio-espana.es",
    "examples": [],
    "tags": [
      "skill",
      "spanish",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/skill-ovos-radio-spain",
    "package_name": "ovos-skill-radio-spain",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "TigreGotico",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 10,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-31T19:32:10Z",
    "last_updated": "2026-10-11T12:08:27Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "TigreGotico-skill-ovos-radio-tuga",
    "skill_id": null,
    "name": "skill-ovos-radio-tuga",
    "description": "Esta\u00e7\u00f5es de R\u00e1dio de Portugal",
    "examples": [],
    "tags": [
      "portuguese",
      "skill",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/skill-ovos-radio-tuga",
    "package_name": "ovos-skill-radio-tuga",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "TigreGotico",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 10,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-08-31T16:18:40Z",
    "last_updated": "2026-10-11T12:17:08Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "jumper047-skill-ovos-scripting",
    "skill_id": null,
    "name": "skill-ovos-scripting",
    "description": "Create aliases and simple scripts",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/code.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/jumper047/skill-ovos-scripting",
    "package_name": null,
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "jumper047",
    "tier": 3,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-12-10T12:21:49Z",
    "last_updated": "2023-12-10T13:43:48Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-settings",
    "skill_id": null,
    "name": "skill-ovos-settings",
    "description": "Mycroft skill to take control of OpenVoiceOS it's functions and tools.",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/skill-ovos-settings",
    "package_name": "ovos-skill-settings",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 2,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-01-02T14:22:32Z",
    "last_updated": "2023-02-09T20:28:31Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-setup",
    "skill_id": null,
    "name": "skill-ovos-setup",
    "description": "OpenVoiceOS Setup Skill - configure your device and optionally connect it to a backend server",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/handshake.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-setup",
    "package_name": "ovos-skill-setup",
    "pypi_version": "0.0.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 5,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "<img src='https://raw.githack.com/FortAwesome/Font-Awesome/master/svgs/solid/handshake.svg' card_color='#22a7f0' width='50' height='50' style='vertical-align:bottom'/> OVOS - Setup",
        "content": "Setup your device, choose a voice and optionally connect to a backend server\n\nWARNING: end users SHOULD NOT install this, if it is needed then it will ship with our images, if you installed ovos manually this will only cause you issues\n\nIf the skill wasnt pre-installed, don't do it yourself\n\n## About \n\nThis skill will offer you the option to select Personal, or no backend, an offline or online STT as well choose the voice your device will use\n\n\n![](./pairing.gif)\n\n## Examples \n* \"Pair my device\" (happens automatically on first run if not paired already)\n\n## Credits \nMycroft AI (@MycroftAI)\n\n## Category\n**Configuration**\n\n## Tags\n#pair\n#pairing\n#connectivity\n#system"
      }
    ],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "pt-pt"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-01-02T16:57:42Z",
    "last_updated": "2023-01-25T22:12:02.033591Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-stop",
    "skill_id": null,
    "name": "skill-ovos-stop",
    "description": "stop whatever the assistant is doing",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/skill-ovos-stop/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/skill-ovos-stop",
    "package_name": "ovos-skill-stop",
    "pypi_version": "0.2.1",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 4,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nl-be",
      "nl-nl",
      "pt-pt",
      "ru-ru",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-02-14T19:03:26Z",
    "last_updated": "2023-03-09T02:34:01.960145Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "ddurdin-skill-ovos-temperature",
    "skill_id": null,
    "name": "skill-ovos-temperature",
    "description": "Alternate to OVOS weather skill",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/smile.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/ddurdin/skill-ovos-temperature",
    "package_name": "ovos-skill-temperature",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "ddurdin",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-09-22T19:41:43Z",
    "last_updated": "2023-09-24T16:12:04Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-skill-ovos-timer",
    "skill_id": null,
    "name": "skill-ovos-timer",
    "description": "Timer Skill",
    "examples": [],
    "tags": [
      "deprecated",
      "openvoiceos",
      "skill"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/stopwatch.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/skill-ovos-timer",
    "package_name": "ovos-skill-timer",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-nl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-11-18T12:07:53Z",
    "last_updated": "2023-02-04T02:30:10Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-skill-plex",
    "skill_id": null,
    "name": "skill-plex",
    "description": "",
    "examples": [
      "Play Charles Mingus",
      "Play Jamie Cullum on Plex",
      "Play the movie Ghostbusters",
      "Play the movie Ghostbusters on Plex",
      "Play Star Trek the Next Generation on Plex",
      "Play the tv show Star Trek the Next Generation on Plex"
    ],
    "tags": [
      "music",
      "NeonAI",
      "NeonGecko Original",
      "OCP",
      "Common Play"
    ],
    "category": "Music",
    "icon": "https://www.plex.tv/wp-content/themes/plex/assets/img/plex-logo.svg",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/skill-plex",
    "package_name": "skill-plex",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Setup",
        "content": "### Neon Mark 2\n\n#### Installation\n\nUpdate `~/.config/neon/neon.yaml` to include the following:\n\nskills:\n  default_skills:\n    - git+https://github.com/OscillateLabsLLC/skill-plex\n\nRestart `neon-skills` with `sudo systemctl restart neon-skills` or restart Neon services from the GUI.\n\nFor pip installation instructions, see [the OVOS section](#OVOS).\n\n#### Pairing\n\nWhen it loads, you will see a screen asking you to visit https://plex.tv/link and enter a code. Note that you must be logged into the Plex instance you wish to use. Enter the code and you will authorize the Mark 2 to use your Plex server. You will only need to do this once.\n\nIf this is not working for some reason or you prefer to use a specific token, you can manually update the skill settings:\n\nmkdir -p config/neon/skills/skill-p\u2026"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-02-24T21:27:18Z",
    "last_updated": "2025-01-26T03:20:26Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "smartgic-skill-sonos-controller",
    "skill_id": null,
    "name": "skill-sonos-controller",
    "description": "Control SONOS\u00ae speakers with music services support such as Deezer, Spotify, Amazon Music, etc... from your Open Voice OS assistant.",
    "examples": [],
    "tags": [
      "amazon-music",
      "control-sonos-speakers",
      "deezer",
      "music",
      "music-library",
      "music-services",
      "mycroft",
      "openvoiceos",
      "ovos",
      "plex",
      "skill",
      "soco",
      "sonos",
      "sonos-devices",
      "speakers",
      "spotify",
      "tidal",
      "voice-assistant"
    ],
    "category": "Music",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/smartgic/skill-sonos-controller",
    "package_name": "skill-sonos-controller",
    "pypi_version": null,
    "license": "BSD-3-Clause",
    "archived": false,
    "author": "smartgic",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 19,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "default_source",
        "type": "text",
        "label": "Default Sonos music service (for example Music Library or Spotify)"
      },
      {
        "name": "link_code",
        "type": "text",
        "label": "Temporary authentication link code"
      },
      {
        "name": "duck",
        "type": "checkbox",
        "label": "Reduce active Sonos volume while listening"
      },
      {
        "name": "playing_confirmation",
        "type": "checkbox",
        "label": "Confirm media after starting playback"
      },
      {
        "name": "searching_confirmation",
        "type": "checkbox",
        "label": "Announce music-service searches"
      },
      {
        "name": "url_shortener",
        "type": "text",
        "label": "Authentication URL broker"
      }
    ],
    "setup_notes": [
      {
        "heading": "Installation",
        "content": "Install the skill in the same Python environment as OVOS:\n\npip install git+https://github.com/smartgic/skill-sonos-controller\n\nSonos discovery uses local multicast traffic. The OVOS host and Sonos players\nmust be reachable on the same LAN, and client isolation must be disabled. The\nprovided container uses host networking for this reason:\n\ncd docker\ndocker compose up -d"
      },
      {
        "heading": "Configuration",
        "content": "OVOS stores settings under the skill ID\n`skill-sonos-controller.smartgic`. Available options are:\n\n| Option | Default | Description |\n| --- | --- | --- |\n| `default_source` | `Music Library` | Service used when an utterance does not name one. The name is case-insensitive. |\n| `link_code` | empty | Temporary code used to finish DeviceLink or AppLink authentication. |\n| `duck` | `false` | Reduce active Sonos volume while OVOS listens. |\n| `playing_confirmation` | `false` | Speak a confirmation after playback starts. |\n| `searching_confirmation` | `true` | Announce before searching a service. |\n| `url_shortener` | `https://sonos.smartgic.io` | Broker used to make a long provider registration URL speakable. |\n\n### Authenticate a service\n\n1. Say \u201cAuthenticate Spotify with Sonos,\u201d replacing Spot\u2026"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "nl-be",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-12-08T01:27:16Z",
    "last_updated": "2026-08-11T04:36:40Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-somafm",
    "skill_id": null,
    "name": "SomaFM Skill",
    "description": null,
    "examples": [
      "play soma fm radio",
      "play secret agent",
      "play metal detector"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-somafm",
    "package_name": "ovos-skill-somafm",
    "pypi_version": "0.1.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "eu-es",
      "fr-fr",
      "gl-es"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "SomaFM",
        "examples": [
          "Joue SomaFM",
          "Joue Secret Agent",
          "Joue Metal Detector"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-07T13:39:47Z",
    "last_updated": "2024-12-02T18:33:50.088739Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-sound-like",
    "skill_id": "ovos-skill-sound-like.andlo",
    "name": "Sound Like",
    "description": "How does a cow sound? Bundled offline sounds (currently animals) for instant answers, with an optional freesound.org online fallback for anything else, filtered to CC0-licensed results.",
    "examples": [
      "how does a cow sound",
      "what does a dog sound like",
      "play a cat sound"
    ],
    "tags": [
      "sounds",
      "animals",
      "fun",
      "kids",
      "entertainment"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-sound-like/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-sound-like",
    "package_name": "ovos-skill-sound-like",
    "pypi_version": "0.0.3",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "hybrid",
    "requires_api_key": true,
    "settings_fields": [
      {
        "name": "freesound_api_key",
        "type": "text",
        "label": "freesound.org API key (optional)"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-sound-like"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Hvordan Lyder Det",
        "description": "Hvordan lyder en ko? Bundlede offline-lyde (i dag dyr) for \u00f8jeblikkelige svar, med et valgfrit freesound.org online-fallback for alt andet, filtreret til kun CC0-licenserede resultater.",
        "examples": [
          "hvordan lyder en ko",
          "hvilken lyd laver en hund",
          "spil en kat lyd"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:10:48Z",
    "last_updated": "2026-10-01T10:11:05.126376Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-sound-like.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:10:35+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "testing": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T10:52:23+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        },
        "alpha": {
          "label": "\u2713 3/3 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T08:59:18+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 3,
            "counted": 3
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-soundboard",
    "skill_id": "ovos-skill-soundboard.andlo",
    "name": "SoundBoard",
    "description": "A sound-effects board for OVOS - 'play a drum roll', 'play applause', 'play an air horn'. Same bundled-CC0-sample pattern as ovos-skill-sound-like, but for stock sound effects rather than animal/object sounds. Could plausibly share infrastructure with ovos-skill-sound-like rather than being fully separate - worth revisiting once both exist.",
    "examples": [
      "play a drum roll",
      "play applause",
      "play an air horn"
    ],
    "tags": [
      "sound effects",
      "fun",
      "soundboard",
      "entertainment"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-soundboard/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-soundboard",
    "package_name": "ovos-skill-soundboard",
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Not yet published to PyPI."
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "SoundBoard",
        "description": "Et lydeffekt-braet til OVOS - 'spil en trommehvirvel', 'spil klapsalve', 'spil et luft-horn'. Samme bundlede-CC0-sample-moenster som ovos-skill-sound-like, men for standard lydeffekter fremfor dyre-/objektlyde. Kunne plausibelt dele infrastruktur med ovos-skill-sound-like fremfor at vaere helt separat - vaerd at genbesoege naar begge findes.",
        "examples": [
          "spil en trommehvirvel",
          "spil klapsalve",
          "spil et luft-horn"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:29Z",
    "last_updated": "2026-10-01T16:20:36Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-soundcloud",
    "skill_id": null,
    "name": "Soundcloud Skill",
    "description": null,
    "examples": [
      "play piratech in soundcloud",
      "play piratech nuclear chill"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-soundcloud",
    "package_name": "skill-soundcloud",
    "pypi_version": "0.1.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 4,
    "open_issues": 6,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "eu-es",
      "fr-fr",
      "gl-es",
      "it-it",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Soundcloud Skill",
        "examples": [
          "afspil piratech i soundcloud",
          "afspil piratech nuclear chill"
        ]
      },
      "fr-fr": {
        "name": "SoundCloud",
        "examples": [
          "joue piratech sur soundcloud",
          "joue piratech nuclear chill sur soundcloud"
        ]
      },
      "sv-se": {
        "name": "Soundcloud Skill",
        "examples": [
          "spela piratech i soundcloud",
          "spela piratech nuclear chill"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2021-09-26T22:17:25Z",
    "last_updated": "2024-12-02T18:33:49.992329Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-speedtest",
    "skill_id": "ovos-skill-speedtest.openvoiceos",
    "name": "Speedtest",
    "description": "runs an internet bandwidth test using speedtest.net",
    "examples": [
      "run a speed test"
    ],
    "tags": [
      "diagnostics",
      "information",
      "information",
      "IoT",
      "speed",
      "internet"
    ],
    "category": "Information",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/signal.svg",
    "icon_source": "readme",
    "icon_color": "#40DBB0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-speedtest",
    "package_name": "ovos-skill-speedtest",
    "pypi_version": "0.3.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "el-gr",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Test de velocitat",
        "description": "Executa una prova d'amplada de banda d'internet usant speedtest.net",
        "examples": [
          "executa una prova de velocitat"
        ]
      },
      "da-dk": {
        "name": "Hastighedstest",
        "description": "k\u00f8rer en internetb\u00e5ndbreddetest ved hj\u00e6lp af speedtest.net",
        "examples": [
          "k\u00f8r en hastighedstest"
        ]
      },
      "de-de": {
        "name": "Speedtest",
        "description": "f\u00fchrt einen Internet-Bandbreitentest mit speedtest.net durch",
        "examples": [
          "Mache einen Geschwindigkeitstest"
        ]
      },
      "el-gr": {
        "name": "Speedtest",
        "description": "\u03b5\u03ba\u03c4\u03b5\u03bb\u03b5\u03af \u03b4\u03bf\u03ba\u03b9\u03bc\u03ae \u03b5\u03cd\u03c1\u03bf\u03c5\u03c2 \u03b6\u03ce\u03bd\u03b7\u03c2 \u03b4\u03b9\u03b1\u03b4\u03b9\u03ba\u03c4\u03cd\u03bf\u03c5 \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ce\u03bd\u03c4\u03b1\u03c2 speedtest.net",
        "examples": [
          "\u03c4\u03c1\u03ad\u03be\u03b5 \u03b4\u03bf\u03ba\u03b9\u03bc\u03ae \u03c4\u03b1\u03c7\u03cd\u03c4\u03b7\u03c4\u03b1\u03c2"
        ]
      },
      "es-co": {
        "name": "Prueba de velocidad",
        "description": "Realiza una prueba de velocidad de Internet utilizando speedtest.net",
        "examples": [
          "haz una prueba de velocidad"
        ]
      },
      "es-es": {
        "name": "Prueba de velocidad",
        "description": "Realiza una prueba de velocidad de Internet utilizando speedtest.net",
        "examples": [
          "haz una prueba de velocidad"
        ]
      },
      "eu-es": {
        "name": "Abiadura-proba",
        "description": "speedtest.net erabiliz interneteko banda-zabaleraren proba egiten du",
        "examples": [
          "exekutatu abiadura-froga"
        ]
      },
      "fa-ir": {
        "name": "\u062a\u0633\u062a \u0633\u0631\u0639\u062a",
        "description": "\u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0633\u0627\u06cc\u062a speedtest.net \u067e\u0647\u0646\u0627\u06cc \u0628\u0627\u0646\u062f \u0627\u06cc\u0646\u062a\u0631\u0646\u062a \u0631\u0627 \u0622\u0632\u0645\u0627\u06cc\u0634 \u0645\u06cc\u200c\u06a9\u0646\u062f",
        "examples": [
          "\u0622\u0632\u0645\u0627\u06cc\u0634 \u0633\u0631\u0639\u062a \u0627\u06cc\u0646\u062a\u0631\u0646\u062a"
        ]
      },
      "fr-fr": {
        "name": "Test de d\u00e9bit",
        "description": "Lance un test de bande passante Internet avec speedtest.net.",
        "examples": [
          "Lance un test de d\u00e9bit"
        ]
      },
      "gl-es": {
        "name": "Proba de velocidade",
        "description": "realiza unha proba de ancho de banda de Internet usando speedtest.net",
        "examples": [
          "realizar unha proba de velocidade"
        ]
      },
      "it-it": {
        "name": "Speedtest",
        "description": "esegue un test della banda internet usando speedtest.net",
        "examples": [
          "esegui un test di velocit\u00e0"
        ]
      },
      "kab": {
        "name": "Test n t\u0263awla",
        "description": "yesqadar t\u0263awla n internet s useqdec n speedtest.net",
        "examples": [
          "sekker test n t\u0263awla"
        ]
      },
      "nl-nl": {
        "name": "Snelheidstest",
        "description": "voert een bandbreedtetest uit op internet met behulp van speedtest.net",
        "examples": [
          "start een snelheidstest",
          "meet de internet snelheid"
        ]
      },
      "oc-fr": {
        "name": "Pr\u00f2va de velocitat",
        "description": "Executa una pr\u00f2va de la larguesa de banda d'internet amb speedtest.net",
        "examples": [
          "executa una pr\u00f2va de velocitat"
        ]
      },
      "pl-pl": {
        "name": "Speedtest",
        "description": "runs an internet bandwidth test using speedtest.net",
        "examples": [
          "wykona\u0107 test pr\u0119dko\u015bci"
        ]
      },
      "pt-br": {
        "name": "Speedtest",
        "description": "executa um teste de largura de banda de internet usando speedtest.net",
        "examples": [
          "fa\u00e7a um teste de velocidade da internet",
          "teste de velocidade"
        ]
      },
      "pt-pt": {
        "name": "Teste de velocidade",
        "description": "executa um teste de largura de banda da Internet utilizando o speedtest.net",
        "examples": [
          "realizar um teste de velocidade"
        ]
      },
      "ru-ru": {
        "name": "Speedtest",
        "description": "\u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0442\u0435\u0441\u0442 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0447\u0435\u0440\u0435\u0437 speedtest.net",
        "examples": [
          "\u0437\u0430\u043f\u0443\u0441\u0442\u0438 \u0442\u0435\u0441\u0442 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438"
        ]
      },
      "sv-se": {
        "name": "Speedtest",
        "description": "k\u00f6r ett internethastighetstest med speedtest.net",
        "examples": [
          "k\u00f6r ett hastighetstest"
        ]
      },
      "tr-tr": {
        "name": "Speedtest",
        "description": "speedtest.net kullanarak internet bant geni\u015fli\u011fi testi \u00e7al\u0131\u015ft\u0131r\u0131r",
        "examples": [
          "h\u0131z testi \u00e7al\u0131\u015ft\u0131r"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-05-28T09:02:41Z",
    "last_updated": "2025-06-08T22:03:28.960882Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-speedtest.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.6",
          "tested_at": "2026-10-04T11:10:46+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.6",
          "tested_at": "2026-10-04T10:52:28+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "stop": "stuck",
          "version_tested": "0.10.0a7",
          "tested_at": "2026-10-30T08:59:25+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-spelling",
    "skill_id": null,
    "name": "Spelling Skill",
    "description": null,
    "examples": [
      "How do you spell aardvark?",
      "Spell omnipotence",
      "How do you spell bureaucracy?",
      "What is the spelling of succotash?",
      "Give me the spelling of onomatopoeia"
    ],
    "tags": [],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/book-reader.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-spelling",
    "package_name": "ovos-skill-spelling",
    "pypi_version": "0.2.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 4,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install this skill through the OVOS skill store, or add it to an [OVOS](https://github.com/OpenVoiceOS/ovos-core) installation with pip:\n\npip install ovos-skill-spelling"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Habilitat de lletreig",
        "examples": [
          "Com s'escriu arquitectura?",
          "Lletreja omnipot\u00e8ncia",
          "Com s'escriu burocr\u00e0cia?",
          "Lletreja ornitorrinc"
        ]
      },
      "da-dk": {
        "name": "Stavef\u00e6rdighed",
        "examples": [
          "Hvordan staves jordsvin?",
          "Stav almagt",
          "Hvordan staver du bureaukrati?",
          "Stav succotash",
          "Giv mig stavningen af onomatopoietikon"
        ]
      },
      "de-de": {
        "name": "Buchstabier Skill",
        "examples": [
          "Wie buchstabiert man Erdferkel?",
          "Buchstabiere Allmacht",
          "Wie buchstabiert man B\u00fcrokratie?",
          "Buchstabiere Succotash "
        ]
      },
      "es-co": {
        "name": "Habilidad de deletreo",
        "examples": [
          "\u00bfC\u00f3mo se escribe oficinista?",
          "Deletrea la palabra omnipotencia",
          "\u00bfPuedes escribir la palabra burocracia?",
          "\u00bfCu\u00e1les son las letras de onomatopeya?",
          "Dame las letras de \u00e9xito"
        ]
      },
      "es-es": {
        "name": "Habilidad de deletreo",
        "examples": [
          "\u00bfC\u00f3mo se escribe oficinista?",
          "Deletrea la palabra omnipotencia",
          "\u00bfPuedes escribir la palabra burocracia?",
          "\u00bfCu\u00e1les son las letras de onomatopeya?",
          "Dame las letras de \u00e9xito"
        ]
      },
      "eu-es": {
        "name": "Hitzaren idazketa",
        "examples": [
          "Nola idazten da aardvark?",
          "Letreiatu botere absolutu",
          "Nola idazten da burokrazia?",
          "Zein da onomatopeia hitzaren idazketa?",
          "Eman iezadazu arrakasta hitzaren idazketa"
        ]
      },
      "fa-ir": {
        "name": "\u0645\u0647\u0627\u0631\u062a \u0647\u062c\u06cc \u06a9\u0631\u062f\u0646",
        "examples": [
          "\u0627\u0633\u067e\u06cc\u0644 \u06a9\u062a\u0627\u0628",
          "\u0634\u0645\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u0633\u067e\u06cc\u0644 \u06a9\u062a\u0627\u0628"
        ]
      },
      "fr-fr": {
        "name": "Orthographe",
        "examples": [
          "Comment s'\u00e9crit ornithorynque ?",
          "\u00c9pelle omnipotence",
          "Quelle est l'orthographe de bureaucratie ?",
          "\u00c9pelle anticonstitutionnellement"
        ]
      },
      "gl-es": {
        "name": "Soletreador",
        "examples": [
          "Como se escribe aardvark?",
          "Escribe omnipotencia",
          "Podes darme as letras de burocracia?",
          "Soletrear succotash"
        ]
      },
      "it-it": {
        "name": "Spelling Skill",
        "examples": [
          "Come si scrive formaggio?",
          "Scandisci onnipotenza",
          "Come si scrive burocrazia?",
          "Qual \u00e8 l'ortografia di onomatopea?",
          "Dammi l'ortografia di gnomo"
        ]
      },
      "nl-nl": {
        "name": "Spelling Skill",
        "examples": [
          "Hoe spel je aardvarken?",
          "Spel almacht",
          "Hoe spel je bureaucratie?",
          "Wat is de spelling van onomatopee?",
          "Hoe schrijf je gnoom?"
        ]
      },
      "oc-fr": {
        "name": "Abiletat d'espelacion",
        "examples": [
          "Coss\u00ed s'escriu arquitectura?",
          "Esp\u00e8la omnipot\u00e9ncia",
          "Coss\u00ed s'escriu burocracia?",
          "Esp\u00e8la ornitorrinc"
        ]
      },
      "pt-br": {
        "name": "Spelling Skill",
        "examples": [
          "Como voc\u00ea soletra tatu?",
          "Soletre onipot\u00eancia",
          "Como soletra burocracia?",
          "Qual \u00e9 a soletra\u00e7\u00e3o de sucotache?",
          "Pode voc\u00ea me dar a soletra\u00e7\u00e3o de onomatopeia?"
        ]
      },
      "pt-pt": {
        "name": "Soletra\u00e7\u00e3o",
        "examples": [
          "Como se escreve burocracia?",
          "Soletra a palavra onomatopeia",
          "Qual \u00e9 a soletra\u00e7\u00e3o de tatu?",
          "Podes soletrar burocracia para mim?"
        ]
      },
      "ru-ru": {
        "name": "\u041d\u0430\u0432\u044b\u043a \u043f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f",
        "examples": [
          "\u041a\u0430\u043a \u043f\u0438\u0448\u0435\u0442\u0441\u044f \u043a\u043d\u0438\u0433\u0430",
          "\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435 \u043a\u043d\u0438\u0433\u0430"
        ]
      },
      "sv-se": {
        "name": "Spelling Skill",
        "examples": [
          "Hur stavar man myrslok?",
          "Stava allsm\u00e4ktig",
          "Hur stavar man byr\u00e5krati?",
          "Vad \u00e4r stavningen av onomatopoesi?",
          "Ge mig stavningen av dv\u00e4rg"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2023-12-09T16:35:32Z",
    "last_updated": "2025-02-27T20:14:15.350702Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-ovos-spelling.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 19/20 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "0.2.6",
          "tested_at": "2026-10-04T11:11:31+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads \u00b7 19/20 langs",
          "state": "warn",
          "level": 2,
          "version_tested": "0.2.6",
          "tested_at": "2026-10-04T10:53:11+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 10/10 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.13.2a2",
          "tested_at": "2026-10-30T08:59:34+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 10,
            "counted": 10
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-status",
    "skill_id": null,
    "name": "status",
    "description": "Open Voice OS Server Status Page",
    "examples": [],
    "tags": [
      "alerting",
      "cuda",
      "fasterwhisper",
      "mimic3",
      "monitoring",
      "nvidia",
      "openvoiceos",
      "ovos",
      "piper",
      "sam",
      "speech-to-text",
      "stats",
      "status",
      "stt",
      "text-to-speech",
      "translator",
      "tts",
      "upptime",
      "uptime"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/status",
    "package_name": null,
    "pypi_version": null,
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": null,
    "component_type": "Infrastructure",
    "type_group": "Infrastructure",
    "stars": 12,
    "forks": 0,
    "open_issues": 18,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2023-05-29T22:30:36Z",
    "last_updated": "2026-11-14T05:55:47Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OscillateLabsLLC-switchboard",
    "skill_id": null,
    "name": "switchboard",
    "description": "Switchboard: an OVOS intent pipeline plugin. Deterministic exact matches first, a small classifier next, an LLM with manifest-derived tools last, and the judgment to stay silent when speech wasn't meant for the assistant.",
    "examples": [],
    "tags": [
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/switchboard",
    "package_name": "ovos-switchboard-pipeline-plugin",
    "pypi_version": "1.1.2",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "Pipeline Plugin",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-switchboard-pipeline-plugin ovos-skill-hangup\n\nThen put the steps in `mycroft.conf`. Switchboard starts in **shadow mode**: it logs what it would do and changes\nnothing, so you can compare it with your current setup first. Set `\"mode\": \"active\"` when you're ready.\n\n\"intents\": {\n  \"switchboard\": {\"mode\": \"shadow\"},\n  \"pipeline\": [\n    \"ovos-switchboard-echo-pipeline-plugin\",\n    \"ovos-stop-pipeline-plugin-high\",\n    \"ovos-converse-pipeline-plugin\",\n    \"ovos-switchboard-exact-pipeline-plugin\",\n    \"ovos-switchboard-classifier-pipeline-plugin\",\n    \"ovos-ocp-pipeline-plugin-high\",\n    \"ovos-switchboard-llm-pipeline-plugin\",\n    \"ovos-common-query-pipeline-plugin\",\n    \"ovos-fallback-pipeline-plugin-low\"\n  ],\n  \"ovos-switchboard-llm-pipeline-plugin\": {\n    \"url\": \"https://you\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-13T00:32:10Z",
    "last_updated": "2026-11-04T03:27:26.713585Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "ovos-switchboard-classifier-pipeline-plugin",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-11-04T09:55:27+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.2",
          "tested_at": "2026-11-04T09:51:54+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.1.2",
          "tested_at": "2026-11-04T09:50:19+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-switchboard-eval",
    "skill_id": null,
    "name": "switchboard-eval",
    "description": "Evaluation harness for Switchboard: the data, code and LLM answers behind its measured claims.",
    "examples": [],
    "tags": [
      "ovos",
      "status-active"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/switchboard-eval",
    "package_name": "switchboard-eval",
    "pypi_version": null,
    "license": "Apache-2.0",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 1,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-10-14T22:54:00Z",
    "last_updated": "2026-10-15T15:43:01Z",
    "is_new_repo": true,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-skill-diagnostics",
    "skill_id": "ovos-skill-diagnostics.openvoiceos",
    "name": "System Diagnostics",
    "description": "Report system information such as CPU usage, memory usage, and language settings.",
    "examples": [
      "what version of ovos is this",
      "what is your cpu usage",
      "how much disk space is left",
      "what other languages do you know",
      "do you have a gpu",
      "what is your kernel version",
      "what languages can you speak",
      "how much memory are you using",
      "where are you located",
      "what is your primary language",
      "tell me your uptime",
      "what language am i speaking",
      "where am i"
    ],
    "tags": [
      "system",
      "diagnostics",
      "information",
      "Configuration"
    ],
    "category": "Information",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/info-circle.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-diagnostics",
    "package_name": "ovos-skill-diagnostics",
    "pypi_version": "0.0.8",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 3,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "versi\u00f3 del core d'ovos",
          "est\u00e0s usant molta cpu ara mateix",
          "diagn\u00f2stic del disc",
          "parles m\u00e9s d'una llengua",
          "diagn\u00f2stic de la gpu",
          "diagn\u00f2stic del nucli",
          "quantes lleng\u00fces parles",
          "diagn\u00f2stic de mem\u00f2ria",
          "saps on ets",
          "quant fa que vas arrencar",
          "en quina llengua parlo",
          "on em trobo"
        ]
      },
      "da-dk": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "ovos core version",
          "cpu diagnostik",
          "disk diagnostik",
          "har du sekund\u00e6re sprog",
          "har du en gpu",
          "kerne diagnostik",
          "tilg\u00e6ngelige sprog",
          "hukommelsesdiagnostik",
          "hvor er du",
          "fort\u00e6l mig dit sprog",
          "fort\u00e6l mig din oppetid",
          "hvilket sprog taler jeg",
          "hvor er jeg"
        ]
      },
      "de-de": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "ovos Core-Version",
          "CPU Diagnose",
          "Festplatten Diagnose",
          "Hast Du zus\u00e4tzliche Sprachen",
          "Grafikkarten Diagnose",
          "Kernel Diagnose",
          "Verf\u00fcgbare Sprachen",
          "Speicherdiagnose",
          "Wo bist du",
          "sag mir deine Sprache",
          "nenne mir deine Laufzeit",
          "in welcher Sprache rede ich",
          "wo bin ich"
        ]
      },
      "es-co": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "qu\u00e9 versi\u00f3n de ovos usas",
          "dime tu uso de CPU",
          "diagn\u00f3stico del disco",
          "Tienes otros idiomas",
          "Tienes una GPU",
          "Qu\u00e9 kernel tienes",
          "Idiomas disponibles",
          "uso actual de memoria",
          "d\u00f3nde est\u00e1s",
          "dime tu idioma",
          "cu\u00e1nto hace que arrancaste",
          "en qu\u00e9 idioma hablo",
          "D\u00f3nde estoy"
        ]
      },
      "es-es": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "qu\u00e9 versi\u00f3n de ovos usas",
          "dime tu uso de CPU",
          "diagn\u00f3stico del disco",
          "Tienes otros idiomas",
          "Tienes una GPU",
          "Qu\u00e9 kernel tienes",
          "Idiomas disponibles",
          "uso actual de memoria",
          "d\u00f3nde est\u00e1s",
          "dime tu idioma",
          "cu\u00e1nto hace que arrancaste",
          "en qu\u00e9 idioma hablo",
          "D\u00f3nde estoy"
        ]
      },
      "eu-es": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "ovos core bertsioa",
          "zein da uneko cpu karga",
          "disko diagnostikoa",
          "badakizu beste hizkuntzarik",
          "gpu diagnostikoa",
          "kernel diagnostikoa",
          "hizkuntza diagnostikoa",
          "memoria gutxi duzu",
          "non zaude",
          "esan zure hizkuntza",
          "noiztik zaude martxan",
          "zein hizkuntzatan ari naiz",
          "non nago"
        ]
      },
      "fa-ir": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "\u06a9\u062f\u0627\u0645 \u0646\u0633\u062e\u0647 \u0627\u06cc\u0646 \u0627\u0633\u062a",
          "\u062a\u0634\u062e\u06cc\u0635 CPU",
          "\u062f\u06cc\u0633\u06a9 \u062a\u0634\u062e\u06cc\u0635",
          "\u0686\u0647 \u0632\u0628\u0627\u0646 \u0647\u0627\u06cc \u0627\u0636\u0627\u0641\u06cc \u062f\u0627\u0631\u06cc\u062f",
          "\u062a\u0634\u062e\u06cc\u0635 GPS",
          "\u062a\u0634\u062e\u06cc\u0635 \u0647\u0633\u062a\u0647 \u0627\u06cc",
          "\u0644\u06cc\u0633\u062a \u0632\u0628\u0627\u0646 \u0647\u0627",
          "\u062a\u0634\u062e\u06cc\u0635 RAM",
          "\u06a9\u062c\u0627 \u0647\u0633\u062a\u06cc",
          "\u0632\u0628\u0627\u0646 \u0627\u0635\u0644\u06cc \u0634\u0645\u0627 \u0686\u06cc\u0633\u062a",
          "\u0648\u0642\u062a\u06cc \u0634\u0631\u0648\u0639 \u06a9\u0631\u062f\u06cc\u062f",
          "\u0686\u0647 \u0632\u0628\u0627\u0646\u06cc \u0635\u062d\u0628\u062a \u0645\u06cc \u06a9\u0646\u0645",
          "\u0645\u0646 \u06a9\u062c\u0627 \u0647\u0633\u062a\u0645"
        ]
      },
      "fr-fr": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "version du core ovos",
          "diagnostic processeur",
          "diagnostic du disque",
          "parles-tu d'autres langues",
          "as-tu un GPU",
          "diagnostic du noyau",
          "liste tes langues",
          "diagnostic m\u00e9moire",
          "o\u00f9 es-tu",
          "quelle langue utilises-tu",
          "depuis quand tournes-tu",
          "quelle langue utilisons-nous",
          "o\u00f9 suis-je"
        ]
      },
      "gl-es": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "dime a versi\u00f3n do core",
          "diagn\u00f3stico da CPU",
          "diagn\u00f3stico do disco",
          "que outras linguas tes",
          "tes unha GPU",
          "que kernel tes",
          "idiomas dispo\u00f1ibles",
          "uso actual da memoria",
          "onde est\u00e1s",
          "que lingua est\u00e1s a usar",
          "canto hai que arrincaches",
          "en que lingua falo",
          "onde estou"
        ]
      },
      "it-it": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "che versione del core hai",
          "diagnostico C P U",
          "diagnostica del disco",
          "hai lingue secondarie",
          "hai una G P U?",
          "quale kernel hai",
          "lingue disponibili",
          "ti resta poca memoria",
          "dove sei",
          "lingua principale?",
          "da quando sei in funzione",
          "in che lingua parlo",
          "dove mi trovo"
        ]
      },
      "kab": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "lqem n core n ovos",
          "asegzawal n CPU",
          "asegzawal n disk",
          "tes\u025bi\u1e0d tutlayin nni\u1e0den",
          "asegzawal n GPU",
          "asegzawal n kernel",
          "tutlayin yellan",
          "asegzawal n tkatut",
          "anda tellid",
          "ini-yi tutlayt-ik",
          "segmi teddukule\u1e0d",
          "d acu-t tutlayt-iw",
          "anda lli\u0263"
        ]
      },
      "nl-nl": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "ovos core versie",
          "hoe druk is je processor",
          "schijf diagnose",
          "spreek je meer dan \u00e9\u00e9n taal",
          "gpu diagnose",
          "kernel diagnose",
          "beschikbare talen",
          "raakt je geheugen op",
          "waar ben je",
          "vertel me je taal",
          "wat is je uptime",
          "welke taal spreek ik",
          "waar ben ik"
        ]
      },
      "oc-fr": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "version del core d'ovos",
          "diagnostic del processor",
          "diagnostic del disc",
          "parlas mai d'una lenga",
          "as una G P U",
          "quin nucli as",
          "lengas disponiblas",
          "quanta ram utilizas",
          "ont si\u00e1s",
          "ditz-me ta lenga",
          "dempu\u00e8i quand foncionas",
          "quina lenga parli",
          "ont soi"
        ]
      },
      "pl-pl": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "wersja r\u0105czka ovs",
          "diagnostyka cpu",
          "ile zosta\u0142o dysku",
          "Czy masz j\u0119zyki drugie",
          "Masz gpu",
          "co j\u0105dro macie",
          "lista j\u0119zyk\u00f3w",
          "ham diagnostyka",
          "Gdzie jeste\u015b?",
          "kt\u00f3ry j\u0119zyk u\u017cywasz",
          "Kiedy zacz\u0119\u0142a\u015b",
          "Kt\u00f3ry j\u0119zyk m\u00f3wi\u0119",
          "Gdzie ja jestem?"
        ]
      },
      "pt-br": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "vers\u00e3o do core do ovos",
          "diagn\u00f3stico de cpu",
          "diagn\u00f3stico do disco",
          "me diga seus idiomas extras",
          "diagn\u00f3stico da gpu",
          "diagn\u00f3stico do kernel",
          "idiomas dispon\u00edveis",
          "diagn\u00f3stico de mem\u00f3ria",
          "onde voc\u00ea est\u00e1",
          "me diga o seu idioma",
          "desde quando voc\u00ea est\u00e1 rodando",
          "que l\u00edngua eu estou usando",
          "onde eu estou"
        ]
      },
      "pt-pt": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "vers\u00e3o do core do ovos",
          "carga atual do cpu",
          "diagn\u00f3stico do disco",
          "tem l\u00ednguas secund\u00e1rias",
          "diagn\u00f3stico da gpu",
          "qual o kernel que tem",
          "quantas l\u00ednguas fala",
          "diagn\u00f3stico de mem\u00f3ria",
          "onde est\u00e1s",
          "qual \u00e9 o seu idioma padr\u00e3o",
          "desde quando est\u00e1 a funcionar",
          "que idioma estou a usar",
          "onde estou"
        ]
      },
      "ru-ru": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "\u0447\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u0432\u0435\u0440\u0441\u0438\u044f?",
          "cpu \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430",
          "\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430 \u0434\u0438\u0441\u043a\u0430",
          "\u0421\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0441\u0432\u043e\u0438 \u044f\u0437\u044b\u043a\u0438.",
          "\u0415\u0441\u0442\u044c \u043b\u0438 \u0433\u043f\u0443",
          "\u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430 \u044f\u0434\u0435\u0440",
          "\u0412\u0430\u0448\u0438 \u044f\u0437\u044b\u043a\u0438",
          "\u0427\u0442\u043e \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c?",
          "\u0413\u0434\u0435 \u0442\u044b?",
          "\u0421\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0441\u0432\u043e\u0439 \u044f\u0437\u044b\u043a.",
          "\u041a\u043e\u0433\u0434\u0430 \u0442\u044b \u043d\u0430\u0447\u0430\u043b?",
          "\u043d\u0430 \u043a\u0430\u043a\u043e\u043c \u044f\u0437\u044b\u043a\u0435 \u044f \u0433\u043e\u0432\u043e\u0440\u044e",
          "\u0433\u0434\u0435 \u044f \u0441\u0435\u0439\u0447\u0430\u0441"
        ]
      },
      "sv-se": {
        "name": "System Diagnostics",
        "description": "Report system information such as CPU usage, memory usage, and language settings.",
        "examples": [
          "ovos core version",
          "anv\u00e4nder du mycket processor",
          "disk diagnostik",
          "kan du tala andra spr\u00e5k",
          "gpu diagnostik",
          "kernel diagnostik",
          "tillg\u00e4ngliga spr\u00e5k",
          "hur mycket minne \u00e4r ledigt",
          "var \u00e4r du",
          "ber\u00e4tta ditt spr\u00e5k",
          "vad \u00e4r din drifttid",
          "vilket spr\u00e5k talar jag",
          "var \u00e4r jag"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2025-03-06T11:55:30Z",
    "last_updated": "2025-03-27T07:25:42.554089Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-diagnostics.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.8",
          "tested_at": "2026-10-04T11:14:36+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.8",
          "tested_at": "2026-10-04T10:54:30+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 2/2 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.4.1a2",
          "tested_at": "2026-10-30T09:18:39+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 2,
            "counted": 2
          }
        }
      }
    }
  },
  {
    "id": "Ricardo-ChenTY-TF-OVOS",
    "skill_id": null,
    "name": "TF-OVOS",
    "description": "This repository is a lightweight harness for the TF-OVCOS proposal:",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/Ricardo-ChenTY/TF-OVOS",
    "package_name": "tf-ovos",
    "pypi_version": null,
    "license": null,
    "archived": false,
    "author": "Ricardo-ChenTY",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-12T01:46:46Z",
    "last_updated": "2026-10-16T17:07:19Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "thalovant-thalovant-skill-custos-fallback",
    "skill_id": null,
    "name": "thalovant-skill-custos-fallback",
    "description": "Give unanswered requests a helpful reply instead of leaving the room silent.",
    "examples": [],
    "tags": [
      "custos",
      "intent-recognition",
      "ovos",
      "speech-recognition",
      "thalovant",
      "voice-assistant",
      "voice-interface"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/thalovant/thalovant-skill-custos-fallback",
    "package_name": "thalovant-skill-custos-fallback",
    "pypi_version": "0.1.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "thalovant",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-at",
      "de-ch",
      "de-de",
      "en-au",
      "en-ca",
      "en-gb",
      "en-nz",
      "en-us",
      "es-ar",
      "es-co",
      "es-es",
      "es-mx",
      "es-us",
      "eu-es",
      "fa-ir",
      "fr-be",
      "fr-ca",
      "fr-ch",
      "fr-fr",
      "gl-es",
      "hi-in",
      "hu-hu",
      "it-it",
      "kab",
      "kab-dz",
      "nl-be",
      "nl-nl",
      "pl-pl",
      "pt-ao",
      "pt-br",
      "pt-mz",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se",
      "tr-tr",
      "uk-ua"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-09-01T14:12:17Z",
    "last_updated": "2026-10-11T21:07:05.577426Z",
    "is_new_repo": false,
    "is_recently_updated": true,
    "compat": {
      "badge_id": "thalovant-skill-custos-fallback.thalovant",
      "channels": {
        "stable": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-12T09:45:02+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2717 doesn't install",
          "state": "fail",
          "level": 0,
          "tested_at": "2026-10-12T09:44:05+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.6",
          "tested_at": "2026-10-30T09:18:57+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "thalovant-thalovant-skillkit",
    "skill_id": null,
    "name": "thalovant-skillkit",
    "description": "Build, test, and package Thalovant skills for OpenVoiceOS.",
    "examples": [],
    "tags": [
      "openvoiceos",
      "ovos-skill",
      "python",
      "skill-development",
      "thalovant",
      "voice-assistant"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/thalovant/.github/main/profile/assets/thalovant-logo-light.png",
    "icon_source": "readme",
    "icon_color": null,
    "source": "https://github.com/thalovant/thalovant-skillkit",
    "package_name": "thalovant-skillkit",
    "pypi_version": "0.36.1",
    "license": "Apache-2.0",
    "archived": false,
    "author": "thalovant",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "en-us",
      "fr-fr",
      "ja-jp",
      "ko-kr",
      "th-th",
      "zh-cn",
      "zh-tw"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-09-08T01:58:37Z",
    "last_updated": "2026-11-10T19:50:44.932146Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-days-in-history",
    "skill_id": "ovos-skill-days-in-history.openvoiceos",
    "name": "Today In History",
    "description": "Provides historical events for today or any other calendar day using information pulled from Wikipedia.",
    "examples": [
      "What happened today in history?",
      "who was born today in history?",
      "who died today in history?",
      "What historical events happened on June 16th?",
      "Tell me about historical events on December 12th"
    ],
    "tags": [
      "Information",
      "History",
      "Trivia"
    ],
    "category": "Information",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-days-in-history",
    "package_name": "ovos-skill-days-in-history",
    "pypi_version": "0.3.11",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Avui a la Hist\u00f2ria",
        "description": "Proporciona esdeveniments hist\u00f2rics d'avui o de qualsevol altre dia natural mitjan\u00e7ant la informaci\u00f3 extreta de la Viquip\u00e8dia.",
        "examples": [
          "Qu\u00e8 va passar avui a la hist\u00f2ria?",
          "Qui va n\u00e9ixer avui a la hist\u00f2ria?",
          "Qui va morir tal dia com avui a la hist\u00f2ria?",
          "Quins fets hist\u00f2rics van passar el 16 de juny?",
          "Explica'm els fets hist\u00f2rics del 12 de desembre"
        ]
      },
      "da-dk": {
        "name": "I dag i historien",
        "description": "Giver historiske begivenheder for i dag eller enhver anden kalenderdag ved hj\u00e6lp af oplysninger hentet fra Wikipedia.",
        "examples": [
          "Hvad skete der i dag i historien?",
          "hvem blev f\u00f8dt i dag i historien?",
          "hvem d\u00f8de i dag i historien?",
          "Hvilke historiske begivenheder skete den 16. juni?",
          "Fort\u00e6l mig om begivenheder i historien den 12. december"
        ]
      },
      "de-de": {
        "name": "Heute in der Geschichte",
        "description": "Bietet historische Ereignisse f\u00fcr heute oder jeden anderen Kalendertag unter Verwendung von Informationen aus Wikipedia.",
        "examples": [
          "Was ist heute in der Geschichte passiert?",
          "wer wurde heute in der Geschichte geboren?",
          "wer ist heute in der Geschichte gestorben?",
          "Welche historischen Ereignisse ereigneten sich am 16. Juni?",
          "Nenne mir historische Ereignisse am 12. Dezember"
        ]
      },
      "fr-fr": {
        "name": "Aujourd'hui dans l'histoire",
        "description": "Donne les \u00e9v\u00e9nements historiques d'aujourd'hui ou de n'importe quelle autre date du calendrier \u00e0 partir de Wikip\u00e9dia.",
        "examples": [
          "Que s'est-il pass\u00e9 aujourd'hui dans l'histoire ?",
          "Qui est n\u00e9 aujourd'hui dans l'histoire ?",
          "Qui est mort aujourd'hui dans l'histoire ?",
          "Quels \u00e9v\u00e9nements historiques ont eu lieu le 16 juin ?",
          "Raconte-moi les \u00e9v\u00e9nements historiques du 12 d\u00e9cembre"
        ]
      },
      "pt-pt": {
        "name": "Hoje na hist\u00f3ria",
        "description": "D\u00e1 os acontecimentos hist\u00f3ricos de hoje ou de qualquer outra data do calend\u00e1rio a partir da Wikip\u00e9dia.",
        "examples": [
          "hoje na hist\u00f3ria",
          "quem nasceu hoje na hist\u00f3ria",
          "quem morreu hoje na hist\u00f3ria",
          "conta-me o que aconteceu em 16 de junho",
          "conta-me sobre eventos hist\u00f3ricos nesta data"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-03-06T18:18:18Z",
    "last_updated": "2025-06-08T23:41:56.135664Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-days-in-history.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.11",
          "tested_at": "2026-10-26T08:07:02+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.3.11",
          "tested_at": "2026-10-26T08:06:42+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.10.2a2",
          "tested_at": "2026-10-30T09:19:05+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "OscillateLabsLLC-tts-plugin-mozilla_remote",
    "skill_id": null,
    "name": "tts-plugin-mozilla_remote",
    "description": "TTS Plugin for remote Mozilla/Coqui TTS",
    "examples": [],
    "tags": [
      "ovos",
      "status-security-fixes-only"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OscillateLabsLLC/tts-plugin-mozilla_remote",
    "package_name": "tts-plugin-mozilla_remote",
    "pypi_version": "3.1.2",
    "license": "NOASSERTION",
    "archived": false,
    "author": "OscillateLabsLLC",
    "tier": 1,
    "component_type": "TTS Plugin",
    "type_group": "Plugin",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "using mycroft.conf\n\n\"tts\": {\n    \"module\": \"mozilla_remote\",\n    \"mozilla_remote\": {\n      \"api_url\": \"http://0.0.0.0:5002/api/tts\"\n    }\n}\n\nUsing neon.yaml\n\ntts:\n  module: mozilla_remote\n  mozilla_remote: { \"api_url\": \"http://0.0.0.0:5002/api/tts\" }"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2024-12-13T04:58:29Z",
    "last_updated": "2026-11-04T03:25:01.869147Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-skill-tunein",
    "skill_id": null,
    "name": "TuneIn Skill",
    "description": null,
    "examples": [
      "play heavy metal heart radio",
      "play jazz on tune in"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-tunein",
    "package_name": "ovos-skill-tunein",
    "pypi_version": "0.0.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 5,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "hu-hu",
      "it-it",
      "nl-nl",
      "pl-pl",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se"
    ],
    "locale_content": {
      "fr-fr": {
        "name": "TuneIn",
        "description": "Lancez des stations de radio internet avec TuneIn.",
        "examples": [
          "Lance FIP sur TuneIn",
          "Mets du jazz sur TuneIn"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-12T19:24:04Z",
    "last_updated": "2024-11-17T14:36:25.158562Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-tuning-fork",
    "skill_id": "ovos-skill-tuning-fork.andlo",
    "name": "Tuning Fork",
    "description": "A reference-tone generator - give me an A plays 440Hz, play 300 hertz plays any frequency. Fully offline, generated tones, nothing recorded.",
    "examples": [
      "give me an A",
      "play a C sharp",
      "play 300 hertz"
    ],
    "tags": [
      "music",
      "tuning",
      "reference tone",
      "instrument"
    ],
    "category": "Music",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-tuning-fork/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-tuning-fork",
    "package_name": "ovos-skill-tuning-fork",
    "pypi_version": "0.0.4",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-tuning-fork"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Stemmegaffel",
        "description": "En referencetone-generator - giv mig et A spiller 440Hz, spil 300 hertz spiller enhver frekvens. Fuldst\u00e6ndig offline, genererede toner, ingen optagelser.",
        "examples": [
          "giv mig et A",
          "spil et C skarp",
          "spil 300 hertz"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:09Z",
    "last_updated": "2026-10-02T10:20:16.901415Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-tuning-fork.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 4/6 golden",
          "state": "warn",
          "level": 2,
          "stop": "stuck",
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T11:11:34+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 6
          }
        },
        "testing": {
          "label": "\u2713 loads \u00b7 4/6 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-04T10:55:38+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 4,
            "counted": 6
          }
        },
        "alpha": {
          "label": "\u2713 6/6 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.4",
          "tested_at": "2026-10-30T09:19:55+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 6,
            "counted": 6
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-convert",
    "skill_id": "ovos-skill-convert.andlo",
    "name": "Unit Converter",
    "description": "Local, offline unit conversion - no cloud dependency, no API key. Covers length, mass, temperature, time, speed, area, volume, angle, density, pressure, force, energy, power, torque, acceleration, concentration, computer, and flow.",
    "examples": [
      "convert 10 centimeters to inches",
      "how many feet is 2 meters",
      "convert 100 celsius to fahrenheit",
      "how many pounds is 5 kilograms"
    ],
    "tags": [
      "utility",
      "converter",
      "units",
      "measurement"
    ],
    "category": "Utility",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-convert/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-convert",
    "package_name": "ovos-skill-convert",
    "pypi_version": "0.0.10",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-convert"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "kab",
      "nl-nl",
      "pt-pt"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Enhedskonverter",
        "description": "Lokal, offline enhedskonvertering - ingen cloud-afh\u00e6ngighed, ingen API-n\u00f8gle. D\u00e6kker l\u00e6ngde, masse, temperatur, tid, hastighed, areal, volumen, vinkel, densitet, tryk, kraft, energi, effekt, moment, acceleration, koncentration, computer og flow.",
        "examples": [
          "konverter 10 centimeter til tommer",
          "hvor mange fod er 2 meter",
          "konverter 100 celsius til fahrenheit",
          "hvor mange kilogram er 2 ton"
        ]
      },
      "de-de": {
        "name": "Einheitenumrechner",
        "description": "Lokale, offline Einheitenumrechnung - keine Cloud-Abh\u00e4ngigkeit, kein API-Schl\u00fcssel. Erster maschinell \u00fcbersetzter Entwurf, noch nicht von Muttersprachlern gepr\u00fcft.",
        "examples": [
          "konvertiere 10 Zentimeter in Zoll",
          "wie viele Fu\u00df sind 2 Meter"
        ]
      },
      "es-es": {
        "name": "Conversor de unidades",
        "description": "Conversi\u00f3n de unidades local y offline - sin dependencia de la nube, sin clave de API. Primer borrador con traducci\u00f3n autom\u00e1tica, a\u00fan no verificado por un hablante nativo.",
        "examples": [
          "convierte 10 cent\u00edmetros a pulgadas",
          "cu\u00e1ntos pies son 2 metros"
        ]
      },
      "fr-fr": {
        "name": "Convertisseur d'unit\u00e9s",
        "description": "Conversion d'unit\u00e9s locale et hors ligne - aucune d\u00e9pendance au cloud, aucune cl\u00e9 API. Premi\u00e8re version traduite automatiquement, pas encore v\u00e9rifi\u00e9e par un locuteur natif.",
        "examples": [
          "convertis 10 centim\u00e8tres en pouces",
          "combien de pieds font 2 m\u00e8tres"
        ]
      },
      "it-it": {
        "name": "Convertitore di unit\u00e0",
        "description": "Conversione di unit\u00e0 locale e offline - nessuna dipendenza dal cloud, nessuna chiave API. Prima bozza tradotta automaticamente, non ancora verificata da un madrelingua.",
        "examples": [
          "converti 10 centimetri in pollici",
          "quanti piedi sono 2 metri"
        ]
      },
      "nl-nl": {
        "name": "Eenhedenomrekenaar",
        "description": "Lokale, offline eenhedenomrekening - geen cloud-afhankelijkheid, geen API-sleutel. Eerste machinaal vertaalde versie, nog niet geverifieerd door een moedertaalspreker.",
        "examples": [
          "converteer 10 centimeter naar inch",
          "hoeveel voet is 2 meter"
        ]
      },
      "pt-pt": {
        "name": "Conversor de unidades",
        "description": "Convers\u00e3o de unidades local e offline - sem depend\u00eancia da cloud, sem chave de API. Primeiro rascunho traduzido automaticamente, ainda n\u00e3o verificado por um falante nativo.",
        "examples": [
          "converte 10 cent\u00edmetros para polegadas",
          "quantos p\u00e9s s\u00e3o 2 metros"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T14:09:15Z",
    "last_updated": "2026-10-01T18:37:22.827834Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-convert.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 8/8 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.10",
          "tested_at": "2026-10-04T11:11:45+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 8,
            "counted": 8
          }
        },
        "testing": {
          "label": "\u2713 8/8 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.10",
          "tested_at": "2026-10-04T10:55:45+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 8,
            "counted": 8
          }
        },
        "alpha": {
          "label": "\u2713 8/8 golden",
          "state": "pass",
          "level": 3,
          "version_tested": "0.0.10",
          "tested_at": "2026-10-30T09:20:04+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 8,
            "counted": 8
          }
        }
      }
    }
  },
  {
    "id": "TigreGotico-vad2mqtt",
    "skill_id": null,
    "name": "vad2mqtt",
    "description": "Voice Activity Detection to MQTT bridge using ovos-plugin-manager",
    "examples": [],
    "tags": [
      "docker",
      "home-assistant",
      "iot",
      "mqtt",
      "occupancy-detection",
      "openvoiceos",
      "ovos",
      "voice-activity-detection"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/TigreGotico/vad2mqtt",
    "package_name": "vad2mqtt",
    "pypi_version": "0.1.0a1",
    "license": "NOASSERTION",
    "archived": false,
    "author": "TigreGotico",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 0,
    "open_issues": 8,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Configuration",
        "content": "Every runtime setting is an environment variable. The defaults work without\nchanges. Tune only what you need.\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| **MQTT** | | |\n| `MQTT_HOST` | `localhost` | Broker host |\n| `MQTT_PORT` | `1883` | Broker port |\n| `MQTT_USER` | - | Auth user |\n| `MQTT_PASSWORD` | - | Auth password |\n| `MQTT_TOPIC_PREFIX` | `vad2mqtt` | Topic root |\n| `MQTT_CLIENT_ID` | `vad2mqtt-client` | MQTT client identifier |\n| `MQTT_QOS` | `0` | MQTT QoS (0, 1, or 2) |\n| `MQTT_RETAIN` | `true` | Retain flag for state messages |\n| `MQTT_KEEPALIVE` | `60` | MQTT keepalive interval (seconds) |\n| `MQTT_RETRY_COUNT` | `5` | Connection retry attempts on startup |\n| `MQTT_RETRY_MAX_BACKOFF` | `30` | Max seconds between retries |\n| `MQTT_CONNECT_TIMEOUT`\u2026"
      },
      {
        "heading": "Community plugins - install the package and point VAD_PLUGIN_MODULE at it",
        "content": "A new VAD model or algorithm ships as a plain pip package. `vad2mqtt` uses it\nwith no code changes, once installed and referenced by\n`VAD_PLUGIN_MODULE`.\n\n## Architecture\n\nMic \u2500\u2500\u25ba sounddevice \u2500\u2500\u25ba 30 ms chunks \u2500\u2500\u25ba OPM VAD Plugin\n                                               \u2502\n                    \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                    \u25bc\n            MQTT \u2500\u2500\u25ba Home Assistant\n            \u2502\n            \u251c\u2500\u2500 vad_probability (continuous, 0-100%)\n            \u251c\u2500\u2500 noise_level (throttled, dB)\n            \u251c\u2500\u2500 model_name (startup)\n            \u2514\u2500\u2500 speech_detected (binary, derived)\n\n## Related\n\n- [ovos-plugin-manager](https://github.com/OpenVoiceOS/ovos-plugin-manager)\n- [ovos-vad-plugin-silero](https://github.com/OpenVoiceOS/ovos-vad-plugin-silero)\n- [shazam2mqtt](https://github.com/TigreGotico/\u2026"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-06-03T14:43:16Z",
    "last_updated": "2026-06-03T15:44:46.474757Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "mohitkale-voiceforge",
    "skill_id": null,
    "name": "voiceforge",
    "description": "Local-first multi-engine voice cloning studio and API. Clone voices, generate speech and switch between OpenVoice, F5-TTS, XTTS, Qwen3-TTS and more.",
    "examples": [],
    "tags": [
      "docker",
      "f5-tts",
      "fastapi",
      "local-ai",
      "openvoiceos",
      "python",
      "qwen3-tts",
      "reel-studio",
      "self-hosted",
      "speech-synthesis",
      "text-to-speech",
      "tts",
      "voice-ai",
      "voice-cloning",
      "xtts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/mohitkale/voiceforge",
    "package_name": "voiceforge",
    "pypi_version": null,
    "license": "NOASSERTION",
    "archived": false,
    "author": "mohitkale",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": false,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-10T09:28:38Z",
    "last_updated": "2026-07-24T15:33:49Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "andlo-ovos-skill-voices-of-tomorrow",
    "skill_id": "ovos-skill-voices-of-tomorrow.andlo",
    "name": "Voices of Tomorrow",
    "description": "Plays pre-recorded audio readings of 365tomorrows.com flash fiction stories, via OCP. Separate from ovos-skill-365tomorrows-stories, which reads the text aloud via TTS instead.",
    "examples": [
      "play voices of tomorrow",
      "play the 365tomorrows podcast"
    ],
    "tags": [
      "entertainment",
      "scifi",
      "podcast",
      "ocp"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-voices-of-tomorrow/main/ui/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-voices-of-tomorrow",
    "package_name": "ovos-skill-voices-of-tomorrow",
    "pypi_version": "0.1.2",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 0,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-voices-of-tomorrow"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr",
      "it-it",
      "nb-no",
      "nl-nl",
      "pt-pt",
      "sv-se"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Voices of Tomorrow",
        "description": "Afspiller forudindspillede opl\u00e6sninger fra 365tomorrows.com via OCP. Adskilt fra ovos-skill-365tomorrows-stories, som i stedet l\u00e6ser teksten h\u00f8jt via TTS.",
        "examples": [
          "afspil voices of tomorrow",
          "afspil 365tomorrows podcasten"
        ]
      },
      "de-de": {
        "name": "Voices of Tomorrow",
        "description": "Spielt vorab aufgenommene Lesungen von 365tomorrows.com \u00fcber OCP ab. Getrennt von ovos-skill-365tomorrows-stories, das den Text stattdessen per TTS vorliest.",
        "examples": [
          "spiele voices of tomorrow",
          "spiele den 365tomorrows podcast"
        ]
      },
      "es-es": {
        "name": "Voices of Tomorrow",
        "description": "Reproduce lecturas grabadas de 365tomorrows.com a trav\u00e9s de OCP. Independiente de ovos-skill-365tomorrows-stories, que en su lugar lee el texto en voz alta mediante TTS.",
        "examples": [
          "reproduce voices of tomorrow",
          "reproduce el podcast de 365tomorrows"
        ]
      },
      "fr-fr": {
        "name": "Voices of Tomorrow",
        "description": "Joue des lectures pr\u00e9enregistr\u00e9es de 365tomorrows.com via OCP. Distinct de ovos-skill-365tomorrows-stories, qui lit le texte \u00e0 voix haute via TTS \u00e0 la place.",
        "examples": [
          "joue voices of tomorrow",
          "joue le podcast 365tomorrows"
        ]
      },
      "it-it": {
        "name": "Voices of Tomorrow",
        "description": "Riproduce letture preregistrate da 365tomorrows.com tramite OCP. Separato da ovos-skill-365tomorrows-stories, che invece legge il testo ad alta voce tramite TTS.",
        "examples": [
          "riproduci voices of tomorrow",
          "riproduci il podcast 365tomorrows"
        ]
      },
      "nb-no": {
        "name": "Voices of Tomorrow",
        "description": "Spiller forh\u00e5ndsinnspilte opplesninger fra 365tomorrows.com via OCP. Adskilt fra ovos-skill-365tomorrows-stories, som i stedet leser teksten h\u00f8yt via TTS.",
        "examples": [
          "spill voices of tomorrow",
          "spill 365tomorrows-podkasten"
        ]
      },
      "nl-nl": {
        "name": "Voices of Tomorrow",
        "description": "Speelt vooraf opgenomen voorlezingen van 365tomorrows.com af via OCP. Los van ovos-skill-365tomorrows-stories, dat de tekst in plaats daarvan hardop voorleest via TTS.",
        "examples": [
          "speel voices of tomorrow af",
          "speel de 365tomorrows podcast af"
        ]
      },
      "pt-pt": {
        "name": "Voices of Tomorrow",
        "description": "Reproduz leituras pr\u00e9-gravadas de 365tomorrows.com atrav\u00e9s do OCP. Separado de ovos-skill-365tomorrows-stories, que em vez disso l\u00ea o texto em voz alta via TTS.",
        "examples": [
          "reproduz voices of tomorrow",
          "reproduz o podcast 365tomorrows"
        ]
      },
      "sv-se": {
        "name": "Voices of Tomorrow",
        "description": "Spelar f\u00f6rinspelade uppl\u00e4sningar fr\u00e5n 365tomorrows.com via OCP. Separat fr\u00e5n ovos-skill-365tomorrows-stories, som ist\u00e4llet l\u00e4ser texten h\u00f6gt via TTS.",
        "examples": [
          "spela voices of tomorrow",
          "spela 365tomorrows-podden"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-22T16:25:01Z",
    "last_updated": "2026-09-30T20:40:17.160423Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-voices-of-tomorrow.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.2",
          "tested_at": "2026-10-04T11:12:19+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.2",
          "tested_at": "2026-10-04T10:56:14+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.2",
          "tested_at": "2026-10-30T09:20:14+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "MohamadKanso-VoiceSafeKit",
    "skill_id": null,
    "name": "VoiceSafeKit",
    "description": "Catch spoken PII (card numbers, SSNs, emails said out loud) before voice transcripts reach an LLM. Zero deps. Pipecat, LiveKit, Open WebUI, LiteLLM drop-ins.",
    "examples": [],
    "tags": [
      "data-privacy",
      "generative-ai",
      "guardrails",
      "litellm",
      "livekit",
      "llm-safety",
      "local-ai",
      "open-webui",
      "openvoiceos",
      "pii",
      "pii-redaction",
      "pipecat",
      "privacy",
      "python",
      "speech-to-text",
      "voice-agents",
      "voice-assistant",
      "whisper",
      "wyoming"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/MohamadKanso/VoiceSafeKit",
    "package_name": "voicesafekit",
    "pypi_version": "0.6.0",
    "license": "MIT",
    "archived": false,
    "author": "MohamadKanso",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 2,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install voicesafekit"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-05-02T13:45:47Z",
    "last_updated": "2026-11-07T17:12:48.158909Z",
    "is_new_repo": false,
    "is_recently_updated": true
  },
  {
    "id": "OpenVoiceOS-ovos-skill-volume",
    "skill_id": null,
    "name": "Volume Control",
    "description": "Control the volume of OVOS with verbal commands",
    "examples": [
      "default volume",
      "toggle audio",
      "mute volume",
      "volume level to low",
      "volume to low",
      "volume level to high",
      "set volume to maximum",
      "set volume level to maximum",
      "toggle mute",
      "volume level low",
      "volume level high",
      "volume to high level",
      "maximum volume",
      "set volume to medium",
      "restore volume",
      "medium volume",
      "volume high",
      "mute audio",
      "unmute audio",
      "unmute",
      "volume to high",
      "max volume",
      "reset volume",
      "set volume to default",
      "set volume level to default",
      "low volume",
      "high volume",
      "volume low",
      "mute",
      "unmute volume",
      "top volume"
    ],
    "tags": [
      "system",
      "sound",
      "volume-control",
      "Configuration",
      "volume",
      "permissive-license"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/volume-down.svg",
    "icon_source": "readme",
    "icon_color": "#22a7f0",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-volume",
    "package_name": "ovos-skill-volume",
    "pypi_version": "0.1.16",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 5,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip:\n\npip install ovos-skill-volume"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Control de volum",
        "description": "Controleu el volum d'OVOS amb ordres verbals",
        "examples": [
          "volum predeterminat",
          "commuta l'\u00e0udio",
          "silencia el volum",
          "abaixa el nivell de volum",
          "volum avall",
          "apuja el volum",
          "posa el volum al m\u00e0xim",
          "posa el nivell de volum al m\u00e0xim",
          "commuta el silenci",
          "nivell de volum baix",
          "nivell de volum alt",
          "volum al nivell m\u00e9s alt",
          "volum m\u00e0xim",
          "posa el volum a la meitat",
          "restaura el volum",
          "volum mitj\u00e0",
          "volum alt",
          "silencia l'\u00e0udio",
          "no silenc\u00efis l'\u00e0udio",
          "deixa de silenciar",
          "volum alt",
          "m\u00e0xim volum",
          "restableix el volum",
          "posa el volum per defecte",
          "posa el nivell de volum per defecte",
          "volum baix",
          "volum alt",
          "volum baix",
          "silencia",
          "no silenci\u00efs el volum",
          "volum m\u00e0xim"
        ]
      },
      "da-dk": {
        "name": "Lydstyrkekontrol",
        "description": "Styr lydstyrken p\u00e5 OVOS med verbale kommandoer",
        "examples": [
          "standard lydstyrke",
          "skift lyd",
          "d\u00e6mp lydstyrken",
          "lydstyrke til lavt",
          "volumen til lav",
          "lydstyrken til h\u00f8j",
          "indstille lydstyrken til maksimum",
          "indstille lydstyrken til maksimum",
          "sl\u00e5 mute til",
          "lydstyrke lav",
          "h\u00f8j lydstyrke",
          "lydstyrke til h\u00f8jt niveau",
          "maksimal lydstyrke",
          "indstill volumen til medium",
          "genopret lydstyrken",
          "medium volumen",
          "volumen h\u00f8j",
          "sl\u00e5 lyden fra",
          "sl\u00e5 lyden til",
          "sl\u00e5 lyden til",
          "volumen til h\u00f8j",
          "max volumen",
          "nulstil lydstyrken",
          "indstill lydstyrken til standard",
          "indstill lydstyrken til standard",
          "lav lydstyrke",
          "h\u00f8j lydstyrke",
          "volumen lav",
          "stum",
          "sl\u00e5 lyden til",
          "topvolumen"
        ]
      },
      "de-de": {
        "name": "Lautst\u00e4rkeregelung",
        "description": "Steuere die Lautst\u00e4rke von OVOS mit verbalen Befehlen",
        "examples": [
          "Standardlautst\u00e4rke",
          "Audio umschalten",
          "Mute Lautst\u00e4rke\nSchalte Lautst\u00e4rke stumm",
          "Lautst\u00e4rke zu niedrig",
          "Lautst\u00e4rke zu niedrig",
          "Lautst\u00e4rke zu hoch",
          "Lautst\u00e4rke auf Maximum stellen\nStelle Lautst\u00e4rke auf Maximum",
          "Lautst\u00e4rke auf Maximum einstellen",
          "Mute umschalten",
          "Lautst\u00e4rke niedrig",
          "Lautst\u00e4rke hoch",
          "Lautst\u00e4rke auf hohen Pegel einstellen",
          "Maximale Lautst\u00e4rke",
          "Lautst\u00e4rke auf mittel stellen",
          "Volume wiederherstellen",
          "mittlere Lautst\u00e4rke",
          "Lautst\u00e4rke hoch",
          "Ton stummschalten",
          "Ton einschalten",
          "Stummschaltung aufheben",
          "Lautst\u00e4rke zu hoch",
          "Maximale Lautst\u00e4rke",
          "Lautst\u00e4rke zur\u00fccksetzen",
          "Lautst\u00e4rke auf Standard einstellen",
          "Lautst\u00e4rke auf Standardwert einstellen",
          "geringe Lautst\u00e4rke",
          "hohe Lautst\u00e4rke",
          "Lautst\u00e4rke niedrig",
          "stummschalten",
          "Stummschaltung aufheben",
          "h\u00f6chste Lautst\u00e4rke"
        ]
      },
      "es-co": {
        "name": "Control de volumen",
        "description": "Controla el volumen de OVOS con comandos verbales",
        "examples": [
          "volumen predeterminado",
          "alternar audio",
          "silenciar el volumen",
          "el nivel de volumen es demasiado bajo",
          "el volumen es demasiado bajo",
          "el nivel de volumen es demasiado alto",
          "ajusta el volumen al m\u00e1ximo",
          "ajusta el nivel de volumen al m\u00e1ximo",
          "alternar el silencio",
          "nivel de volumen bajo",
          "nivel de volumen alto",
          "volumen a nivel alto",
          "volumen m\u00e1ximo",
          "ajusta el volumen a medio",
          "restaurar volumen",
          "volumen medio",
          "volumen alto",
          "silenciar audio",
          "activar el audio",
          "silenciar",
          "volumen alto",
          "volumen m\u00e1ximo",
          "restablecer el volumen",
          "ajustar el volumen a los valores predeterminados",
          "ajustar el nivel de volumen al valor predeterminado",
          "volumen bajo",
          "volumen alto",
          "volumen bajo",
          "silenciar",
          "activar el volumen",
          "volumen m\u00e1ximo"
        ]
      },
      "es-es": {
        "name": "Control de volumen",
        "description": "Controla el volumen de OVOS con comandos verbales",
        "examples": [
          "volumen predeterminado",
          "(alternar|conmutar) audio",
          "silenciar el volumen",
          "(el|) nivel de volumen (es|est\u00e1|) demasiado bajo",
          "(el|) volumen (es|est\u00e1|) demasiado bajo",
          "(el|) nivel de volumen (es|est\u00e1|) demasiado alto",
          "(ajusta|sube) el volumen al m\u00e1ximo",
          "(ajusta|sube) el nivel de volumen al m\u00e1ximo",
          "(alternar|conmutar) el silencio",
          "nivel de volumen bajo",
          "nivel de volumen alto",
          "volumen a nivel alto",
          "volumen m\u00e1ximo",
          "ajusta el volumen a medio",
          "restaurar volumen",
          "volumen medio",
          "volumen alto",
          "silenciar audio",
          "(activar|desmutear) el audio",
          "(silenciar|desmutear)",
          "volumen alto",
          "volumen m\u00e1ximo",
          "restablecer el volumen",
          "ajustar el volumen a los valores predeterminados",
          "ajustar el nivel de volumen al valor predeterminado",
          "volumen bajo",
          "volumen alto",
          "volumen bajo",
          "silenciar",
          "(activar|desmutear) el volumen",
          "volumen m\u00e1ximo"
        ]
      },
      "eu-es": {
        "name": "Bolumen kontrola",
        "description": "Kontrolatu OVOSen bolumena ahozko aginduekin",
        "examples": [
          "bolumen lehenetsia",
          "aldatu audioa",
          "mututu bolumena",
          "bolumen maila baxura",
          "bolumena baxura",
          "bolumen maila altura",
          "jarri bolumena gehienezkoan",
          "jarri bolumen maila gehienezkoan",
          "aldatu mututzea",
          "bolumen maila baxua",
          "bolumen maila altua",
          "bolumena maila altura",
          "gehienezko bolumena",
          "jarri bolumena erdian",
          "berreskuratu bolumena",
          "erdiko bolumena",
          "bolumen altua",
          "mututu audioa",
          "kendu audioaren mututzea",
          "kendu mututzea",
          "bolumena altura",
          "gehienezko bolumena",
          "berrezarri bolumena",
          "jarri bolumena lehenetsian",
          "jarri bolumen maila lehenetsian",
          "bolumen baxua",
          "bolumen altua",
          "bolumena baxua",
          "mututu",
          "kendu bolumenaren mututzea",
          "gehieneko bolumena"
        ]
      },
      "fa-ir": {
        "name": "\u062a\u0646\u0638\u06cc\u0645 \u0628\u0644\u0646\u062f\u06cc",
        "description": "\u062a\u0646\u0638\u06cc\u0645 \u0628\u0644\u0646\u062f\u06cc \u0635\u062f\u0627\u06cc OVOS \u0628\u0627 \u062f\u0633\u062a\u0648\u0631\u200c\u0647\u0627\u06cc \u06a9\u0644\u0627\u0645\u06cc",
        "examples": [
          "\u0628\u0644\u0646\u062f\u06cc \u067e\u06cc\u0634\u200c\u0641\u0631\u0636",
          "\u0628\u0631\u0639\u06a9\u0633 \u06a9\u0631\u062f\u0646 \u0635\u062f\u0627",
          "\u0628\u06cc\u200c\u0635\u062f\u0627 \u06a9\u0631\u062f\u0646",
          "\u067e\u0627\u06cc\u06cc\u0646 \u0628\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u067e\u0627\u06cc\u06cc\u0646 \u0631\u0641\u062a\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0627\u0644\u0627 \u0628\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u06cc\u0634\u06cc\u0646\u0647 \u06a9\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u062d\u062f\u0627\u06a9\u062b\u0631 \u06a9\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0631\u0639\u06a9\u0633 \u06a9\u0631\u062f\u0646 \u062d\u0627\u0644\u062a \u0628\u06cc\u200c\u0635\u062f\u0627",
          "\u0628\u0644\u0646\u062f\u06cc \u06a9\u0645",
          "\u0628\u0644\u0646\u062f\u06cc \u0632\u06cc\u0627\u062f",
          "\u0628\u0644\u0646\u062f \u06a9\u0631\u062f\u0646 \u0635\u062f\u0627",
          "\u062d\u062f\u0627\u06a9\u062b\u0631 \u0628\u0644\u0646\u062f\u06cc",
          "\u0645\u06cc\u0627\u0646\u0647 \u06a9\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u06cc \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0644\u0646\u062f\u06cc \u0645\u06cc\u0627\u0646\u0647",
          "\u0628\u0644\u0646\u062f\u06cc \u0628\u0627\u0644\u0627",
          "\u0628\u06cc\u200c\u0635\u062f\u0627 \u06a9\u0631\u062f\u0646",
          "\u0635\u062f\u0627\u062f\u0627\u0631 \u06a9\u0631\u062f\u0646",
          "\u0635\u062f\u0627 \u062f\u0627\u0631 \u06a9\u0631\u062f\u0646",
          "\u0628\u06cc\u0634\u200c\u062a\u0631 \u06a9\u0631\u062f\u0646 \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0644\u0646\u062f\u06cc \u062a\u0627 \u062a\u0647",
          "\u0628\u0627\u0632\u0646\u0634\u0627\u0646\u06cc \u0628\u0644\u0646\u062f\u06cc",
          "\u0628\u0627\u0632\u0646\u0634\u0627\u0646\u06cc \u0628\u0644\u0646\u062f\u06cc \u0628\u0647 \u067e\u06cc\u0634\u0641\u0631\u0636",
          "\u0628\u0627\u0632\u0646\u0634\u0627\u0646\u06cc \u0633\u0637\u062d \u0628\u0644\u0646\u062f\u06cc \u0628\u0647 \u067e\u06cc\u0634\u0641\u0631\u0636",
          "\u0635\u062f\u0627\u06cc \u06a9\u0645",
          "\u0635\u062f\u0627\u06cc \u0632\u06cc\u0627\u062f",
          "\u0635\u062f\u0627\u06cc \u067e\u0627\u06cc\u06cc\u0646",
          "\u0628\u06cc\u200c\u0635\u062f\u0627 \u06a9\u0631\u062f\u0646",
          "\u0628\u0627 \u0635\u062f\u0627 \u06a9\u0631\u062f\u0646",
          "\u0628\u0644\u0646\u062f\u06cc \u0628\u0627\u0644\u0627"
        ]
      },
      "fr-fr": {
        "name": "Contr\u00f4le du volume",
        "description": "Contr\u00f4lez le volume d'OVOS avec des commandes vocales.",
        "examples": [
          "Volume par d\u00e9faut",
          "Bascule la sourdine",
          "Coupe le son",
          "Mets le volume sur faible",
          "Mets le volume sur \u00e9lev\u00e9",
          "Mets le volume au maximum",
          "Restaure le volume"
        ]
      },
      "gl-es": {
        "name": "Control de Volume",
        "description": "Controla o volume de OVOS con comandos verbais",
        "examples": [
          "volume predefinido",
          "alternar audio",
          "silenciar volume",
          "baixar o nivel de volume",
          "baixar o volume",
          "subir nivel de volume",
          "fixar o volume no m\u00e1ximo",
          "fixar o nivel de volume no m\u00e1ximo",
          "alternar silencio",
          "nivel de volume baixo",
          "nivel de volume alto",
          "volume no nivel alto",
          "m\u00e1ximo volume",
          "fixar un volume intermedio",
          "restaurar o volume",
          "volume medio",
          "volume alto",
          "silenciar o audio",
          "activar o audio",
          "activar o son",
          "subir o volume",
          "volume m\u00e1ximo",
          "restablecer o volume",
          "fixar o volume no predefinido",
          "fixar o nivel de volume no predefinido",
          "baixo volume",
          "alto volume",
          "volume baixo",
          "silenciar",
          "activar o volume",
          "o volume m\u00e1is alto"
        ]
      },
      "it-it": {
        "name": "Controllo Volume",
        "description": "Controlla il volume con la voce!",
        "examples": [
          "Imposta il volume di default",
          "Alza il volume",
          "Stai zitto",
          "Abbassa il volume",
          "Metti il volume basso",
          "Alza il volume",
          "Alza il volume al massimo",
          "Alza il volume al massimo",
          "Stai zitto",
          "Sussurra",
          "Grida",
          "[UNUSED]",
          "[UNUSED]",
          "Imposta il volume al valore predefinito",
          "Ripristina il volume",
          "[UNUSED]",
          "Alza il volume",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]",
          "[UNUSED]"
        ]
      },
      "kab": {
        "name": "A\u1e0debbe\u1e5b n Ta\u0263ect",
        "description": "S\u1e0debbe\u1e5b ta\u0263ect n OVOS s tebrat n imeslayen",
        "examples": [
          "ta\u0263ect tamezwarut",
          "beddel imesli",
          "sgens ta\u0263ect",
          "aswir n ta\u0263ect \u0263er adday",
          "ta\u0263ect \u0263er adday",
          "aswir n ta\u0263ect \u0263er afellay",
          "sbadu ta\u0263ect \u0263er akmal",
          "sbadu aswir n ta\u0263ect \u0263er akmal",
          "beddel asgens",
          "aswir n ta\u0263ect adday",
          "aswir n ta\u0263ect afellay",
          "ta\u0263ect \u0263er aswir afellay",
          "ta\u0263ect n akmal",
          "sbadu ta\u0263ect \u0263er alemmas",
          "err ta\u0263ect",
          "ta\u0263ect n alemmas",
          "ta\u0263ect afellay",
          "sgens imesli",
          "sers imesli",
          "sers asgens",
          "ta\u0263ect \u0263er afellay",
          "ta\u0263ect n akmal",
          "sbadu ta\u0263ect",
          "sbadu ta\u0263ect \u0263er amezwer",
          "sbadu aswir n ta\u0263ect \u0263er amezwer",
          "ta\u0263ect adday",
          "ta\u0263ect afellay",
          "ta\u0263ect adday",
          "asgens",
          "sers asgens n ta\u0263ect",
          "ta\u0263ect n unezwi"
        ]
      },
      "nl-nl": {
        "name": "Volume Control",
        "description": "Bedien het volume van OVOS met gesproken opdrachten",
        "examples": [
          "standaard volume",
          "schakel geluid",
          "volume dempen",
          "volumeniveau naar laag",
          "volume naar laag",
          "volumeniveau naar hoog",
          "zet volume op maximaal",
          "zet volumeniveau op maximaal",
          "schakel dempen",
          "volumeniveau laag",
          "volumeniveau hoog",
          "volume naar hoog niveau",
          "maximaal volume",
          "zet volume op gemiddeld",
          "herstel volume",
          "gemiddeld volume",
          "volume hoog",
          "geluid dempen",
          "geluid dempen opheffen",
          "dempen opheffen",
          "volume naar hoog",
          "maximaal volume",
          "volume resetten",
          "zet volume op standaard",
          "zet volumeniveau op standaard",
          "laag volume",
          "hoog volume",
          "volume laag",
          "dempen",
          "dempen opheffen volume",
          "hoogste volume"
        ]
      },
      "oc-fr": {
        "name": "Contrar\u00f2tle del volum",
        "description": "Contrarotlatz lo volum d'OVOS amb de comandas vocalas",
        "examples": [
          "volum per def\u00e8cte",
          "bascula l'\u00e0udio",
          "amud\u00eds lo volum",
          "niv\u00e8l de volum bas",
          "volum bas",
          "niv\u00e8l de volum naut",
          "met lo volum al maximum",
          "met lo niv\u00e8l de volum al maximum",
          "bascula lo silenci",
          "niv\u00e8l de volum bas",
          "niv\u00e8l de volum naut",
          "volum a niv\u00e8l naut",
          "volum maximal",
          "met lo volum a mejan",
          "restaura lo volum",
          "volum mejan",
          "volum naut",
          "amud\u00eds l'\u00e0udio",
          "l\u00e8va lo silenci de l'\u00e0udio",
          "l\u00e8va lo silenci",
          "volum naut",
          "volum maximal",
          "restabl\u00eds lo volum",
          "met lo volum per def\u00e8cte",
          "met lo niv\u00e8l de volum per def\u00e8cte",
          "volum bas",
          "volum naut",
          "volum bas",
          "amud\u00eds",
          "l\u00e8va lo silenci del volum",
          "volum maximal"
        ]
      },
      "pl-pl": {
        "name": "Volume Control",
        "description": "Control the volume of OVOS with verbal commands",
        "examples": [
          "zmiana obj\u0119to\u015bci",
          "obj\u0119to\u015b\u0107",
          "G\u0142o\u015bniej.",
          "Ciszej",
          "Obj\u0119to\u015b\u0107 a\u017c do g\u00f3ry",
          "wyci\u0105\u0107",
          "prze\u0142\u0105czanie audio",
          "zresetowa\u0107 obj\u0119to\u015b\u0107",
          "Unmutuj audio"
        ]
      },
      "pt-br": {
        "name": "Controle de volume",
        "description": "Controle o volume do OVOS com comandos verbais",
        "examples": [
          "volume padr\u00e3o",
          "alternar \u00e1udio",
          "volume em mudo",
          "abaixe o volume",
          "abaixe o volume",
          "aumente o volume",
          "ajuste o volume para o m\u00e1ximo",
          "ajuste o n\u00edvel de volume para o m\u00e1ximo",
          "acionar mudo",
          "n\u00edvel de volume baixo",
          "n\u00edvel de volume alto",
          "aumente o volume",
          "volume m\u00e1ximo",
          "ajuste o volume para m\u00e9dio",
          "restaurar volume",
          "volume m\u00e9dio",
          "volume alto",
          "silenciar \u00e1udio",
          "ativar \u00e1udio",
          "ativar som",
          "aumentar volume",
          "volume m\u00e1ximo",
          "redefinir volume",
          "definir volume para o padr\u00e3o",
          "definir o n\u00edvel de volume para o padr\u00e3o",
          "baixo volume",
          "alto volume",
          "volume baixo",
          "mudo",
          "ativar volume",
          "volume m\u00e1ximo"
        ]
      },
      "pt-pt": {
        "name": "Controlo de volume",
        "description": "Controle o volume do OVOS com comandos verbais",
        "examples": [
          "volume padr\u00e3o",
          "alternar \u00e1udio",
          "silenciar o volume",
          "n\u00edvel de volume para baixo",
          "volume para baixo",
          "n\u00edvel de volume para alto",
          "definir o volume para o m\u00e1ximo",
          "definir o n\u00edvel de volume para o m\u00e1ximo",
          "alternar mudo",
          "n\u00edvel de volume baixo",
          "n\u00edvel de volume elevado",
          "volume para alto n\u00edvel",
          "volume m\u00e1ximo",
          "definir volume para m\u00e9dio",
          "repor volume",
          "volume m\u00e9dio",
          "volume alto",
          "silenciar \u00e1udio",
          "ativar \u00e1udio",
          "ativar o som",
          "volume para alto",
          "volume m\u00e1ximo",
          "redefinir volume",
          "definir o volume para o padr\u00e3o",
          "definir o n\u00edvel de volume para o padr\u00e3o",
          "volume baixo",
          "alto volume",
          "volume baixo",
          "mudo",
          "ativar volume",
          "volume superior"
        ]
      },
      "ru-ru": {
        "name": "Volume Control",
        "description": "Control the volume of OVOS with verbal commands",
        "examples": [
          "\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043c\u0430",
          "\u043e\u0431\u044a\u0435\u043c",
          "\u0433\u0440\u043e\u043c\u0447\u0435",
          "\u041f\u043e\u0442\u0438\u0448\u0435.",
          "\u043f\u043e\u043b\u043d\u044b\u0439 \u0437\u0432\u0443\u043a",
          "\u043d\u0435\u043c\u043e\u0439",
          "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043d\u0435\u043c\u043e\u0439.",
          "\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043e\u0431\u044a\u0435\u043c",
          "\u041e\u0442\u0434\u0430\u0439 \u043c\u043d\u0435 \u0437\u0432\u0443\u043a."
        ]
      },
      "sv-se": {
        "name": "Volymkontroll",
        "description": "Styr volymen p\u00e5 OVOS med r\u00f6stkommandon",
        "examples": [
          "standardvolym",
          "v\u00e4xla ljud",
          "st\u00e4ng av volymen",
          "volymniv\u00e5 till l\u00e5g",
          "volym till l\u00e5g",
          "volymniv\u00e5 till h\u00f6g",
          "st\u00e4ll in volymen till maximum",
          "st\u00e4ll in volymniv\u00e5n till maximum",
          "v\u00e4xla tystnad",
          "volymniv\u00e5 l\u00e5g",
          "volymniv\u00e5 h\u00f6g",
          "volym till h\u00f6g niv\u00e5",
          "maximal volym",
          "st\u00e4ll in volymen till medel",
          "\u00e5terst\u00e4ll volymen",
          "medelvolym",
          "volym h\u00f6g",
          "st\u00e4ng av ljud",
          "s\u00e4tt p\u00e5 ljud",
          "s\u00e4tt p\u00e5",
          "volym till h\u00f6g",
          "max volym",
          "\u00e5terst\u00e4ll volym",
          "st\u00e4ll in volymen till standard",
          "st\u00e4ll in volymniv\u00e5n till standard",
          "l\u00e5g volym",
          "h\u00f6g volym",
          "volym l\u00e5g",
          "tyst",
          "s\u00e4tt p\u00e5 volym",
          "toppvolym"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-08-11T20:18:54Z",
    "last_updated": "2025-06-08T21:49:17.322939Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-volume.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.16",
          "tested_at": "2026-10-04T11:12:33+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.16",
          "tested_at": "2026-10-04T10:56:28+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.12.3a1",
          "tested_at": "2026-10-30T09:20:21+00:00",
          "channel_pinned": true
        }
      }
    },
    "reports": {
      "testing": {
        "maintainer": null,
        "maintainer_level": null,
        "works": 1,
        "partly": 0,
        "doesnt_work": 0
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-wallpapers",
    "skill_id": "skill-ovos-wallpapers.openvoiceos",
    "name": "Wallpaper Changer",
    "description": "Pictures from selected subreddits.",
    "examples": [
      "new wallpaper",
      "change wallpaper to nature",
      "show me a picture",
      "show me a picture with dogs",
      "make that my wallpaper"
    ],
    "tags": [
      "wallpapers",
      "images",
      "pictures"
    ],
    "category": "Other",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-wallpapers/dev/icon.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-wallpapers",
    "package_name": "ovos-skill-wallpapers",
    "pypi_version": "1.0.9",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 2,
    "forks": 4,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "auto_detect",
        "type": "checkbox",
        "label": "Autodetect Desktop Environment"
      },
      {
        "name": "desktop_env",
        "type": "text",
        "label": "Override Desktop Environment"
      },
      {
        "name": "rotate_wallpaper",
        "type": "checkbox",
        "label": "automatically change wallpaper"
      },
      {
        "name": "change_mins",
        "type": "number",
        "label": "rotate every X minutes"
      },
      {
        "name": "unsplash",
        "type": "checkbox",
        "label": "unsplash"
      },
      {
        "name": "wpcraft",
        "type": "checkbox",
        "label": "wpcraft"
      },
      {
        "name": "earth_porn",
        "type": "checkbox",
        "label": "Earth Porn"
      },
      {
        "name": "botanical_porn",
        "type": "checkbox",
        "label": "Botanical Porn"
      },
      {
        "name": "water_porn",
        "type": "checkbox",
        "label": "Water Porn"
      },
      {
        "name": "sea_porn",
        "type": "checkbox",
        "label": "Sea Porn"
      },
      {
        "name": "sky_porn",
        "type": "checkbox",
        "label": "Sky Porn"
      },
      {
        "name": "fire_porn",
        "type": "checkbox",
        "label": "Fire Porn"
      },
      {
        "name": "desert_porn",
        "type": "checkbox",
        "label": "Desert Porn"
      },
      {
        "name": "winter_porn",
        "type": "checkbox",
        "label": "Winter Porn"
      },
      {
        "name": "autumn_porn",
        "type": "checkbox",
        "label": "Autumn Porn"
      },
      {
        "name": "weather_porn",
        "type": "checkbox",
        "label": "Weather Porn"
      },
      {
        "name": "geology_porn",
        "type": "checkbox",
        "label": "Geology Porn"
      },
      {
        "name": "space_porn",
        "type": "checkbox",
        "label": "Space Porn"
      },
      {
        "name": "beach_porn",
        "type": "checkbox",
        "label": "Beach Porn"
      },
      {
        "name": "mushroom_porn",
        "type": "checkbox",
        "label": "Mushroom Porn"
      },
      {
        "name": "spring_porn",
        "type": "checkbox",
        "label": "Spring Porn"
      },
      {
        "name": "summer_porn",
        "type": "checkbox",
        "label": "Summer Porn"
      },
      {
        "name": "lava_porn",
        "type": "checkbox",
        "label": "Lava Porn"
      },
      {
        "name": "lake_porn",
        "type": "checkbox",
        "label": "Lake Porn"
      },
      {
        "name": "city_porn",
        "type": "checkbox",
        "label": "City Porn"
      },
      {
        "name": "village_porn",
        "type": "checkbox",
        "label": "Village Porn"
      },
      {
        "name": "rural_porn",
        "type": "checkbox",
        "label": "Rural Porn"
      },
      {
        "name": "architecture_porn",
        "type": "checkbox",
        "label": "Architecture Porn"
      },
      {
        "name": "house_porn",
        "type": "checkbox",
        "label": "House Porn"
      },
      {
        "name": "cabin_porn",
        "type": "checkbox",
        "label": "Cabin Porn"
      },
      {
        "name": "church_porn",
        "type": "checkbox",
        "label": "Church Porn"
      },
      {
        "name": "abandoned_porn",
        "type": "checkbox",
        "label": "Abandoned Porn"
      },
      {
        "name": "cemetery_porn",
        "type": "checkbox",
        "label": "Cemetery Porn"
      },
      {
        "name": "infrastructure_porn",
        "type": "checkbox",
        "label": "Infrastructure Porn"
      },
      {
        "name": "machine_porn",
        "type": "checkbox",
        "label": "Machine Porn"
      },
      {
        "name": "car_porn",
        "type": "checkbox",
        "label": "Car Porn"
      },
      {
        "name": "f1_porn",
        "type": "checkbox",
        "label": "f1_porn"
      },
      {
        "name": "motorcycle_porn",
        "type": "checkbox",
        "label": "Motorcycle Porn"
      },
      {
        "name": "military_porn",
        "type": "checkbox",
        "label": "Military Porn"
      },
      {
        "name": "gun_porn",
        "type": "checkbox",
        "label": "Gun Porn"
      },
      {
        "name": "knife_porn",
        "type": "checkbox",
        "label": "Knife Porn"
      },
      {
        "name": "boat_porn",
        "type": "checkbox",
        "label": "Boat Porn"
      },
      {
        "name": "rides_porn",
        "type": "checkbox",
        "label": "Rides Porn"
      },
      {
        "name": "destruction_porn",
        "type": "checkbox",
        "label": "Destruction Porn"
      },
      {
        "name": "things_cut_in_half_porn",
        "type": "checkbox",
        "label": "Things Cut In Half Porn"
      },
      {
        "name": "starship_porn",
        "type": "checkbox",
        "label": "Starship Porn"
      },
      {
        "name": "tool_porn",
        "type": "checkbox",
        "label": "Tool Porn"
      },
      {
        "name": "technology_porn",
        "type": "checkbox",
        "label": "Technology Porn"
      },
      {
        "name": "bridge_porn",
        "type": "checkbox",
        "label": "Bridge Porn"
      },
      {
        "name": "police_porn",
        "type": "checkbox",
        "label": "Police Porn"
      },
      {
        "name": "steam_porn",
        "type": "checkbox",
        "label": "Steam Porn"
      },
      {
        "name": "retail_porn",
        "type": "checkbox",
        "label": "Retail Porn"
      },
      {
        "name": "space_flight_porn",
        "type": "checkbox",
        "label": "Space Flight Porn"
      },
      {
        "name": "roadporn",
        "type": "checkbox",
        "label": "roadporn"
      },
      {
        "name": "drydockporn",
        "type": "checkbox",
        "label": "drydockporn"
      },
      {
        "name": "animal_porn",
        "type": "checkbox",
        "label": "Animal Porn"
      },
      {
        "name": "human_porn",
        "type": "checkbox",
        "label": "Human Porn"
      },
      {
        "name": "earthling_porn",
        "type": "checkbox",
        "label": "Earthling Porn"
      },
      {
        "name": "adrenaline_porn",
        "type": "checkbox",
        "label": "Adrenaline Porn"
      },
      {
        "name": "climbing_porn",
        "type": "checkbox",
        "label": "Climbing Porn"
      },
      {
        "name": "sports_porn",
        "type": "checkbox",
        "label": "Sports Porn"
      },
      {
        "name": "agriculture_porn",
        "type": "checkbox",
        "label": "Agriculture Porn"
      },
      {
        "name": "tea_porn",
        "type": "checkbox",
        "label": "Tea Porn"
      },
      {
        "name": "bonsai_porn",
        "type": "checkbox",
        "label": "Bonsai Porn"
      },
      {
        "name": "food_porn",
        "type": "checkbox",
        "label": "Food Porn"
      },
      {
        "name": "culinary_porn",
        "type": "checkbox",
        "label": "Culinary Porn"
      },
      {
        "name": "dessert_porn",
        "type": "checkbox",
        "label": "Dessert Porn"
      },
      {
        "name": "design_porn",
        "type": "checkbox",
        "label": "Design Porn"
      },
      {
        "name": "room_porn",
        "type": "checkbox",
        "label": "Room Porn"
      },
      {
        "name": "album_art_porn",
        "type": "checkbox",
        "label": "Album Art Porn"
      },
      {
        "name": "metal_porn",
        "type": "checkbox",
        "label": "Metal Porn"
      },
      {
        "name": "movie_poster_porn",
        "type": "checkbox",
        "label": "Movie Poster Porn"
      },
      {
        "name": "television_poster_porn",
        "type": "checkbox",
        "label": "Television Poster Porn"
      },
      {
        "name": "comic_book_porn",
        "type": "checkbox",
        "label": "Comic Book Porn"
      },
      {
        "name": "street_art_porn",
        "type": "checkbox",
        "label": "Street Art Porn"
      },
      {
        "name": "ad_porn",
        "type": "checkbox",
        "label": "Ad Porn"
      },
      {
        "name": "art_porn",
        "type": "checkbox",
        "label": "Art Porn"
      },
      {
        "name": "fractal_porn",
        "type": "checkbox",
        "label": "Fractal Porn"
      },
      {
        "name": "instrument_porn",
        "type": "checkbox",
        "label": "Instrument Porn"
      },
      {
        "name": "exposure_porn",
        "type": "checkbox",
        "label": "Exposure Porn"
      },
      {
        "name": "macro_porn",
        "type": "checkbox",
        "label": "Macro Porn"
      },
      {
        "name": "micro_porn",
        "type": "checkbox",
        "label": "Micro Porn"
      },
      {
        "name": "geek_porn",
        "type": "checkbox",
        "label": "Geek Porn"
      },
      {
        "name": "mtgporn",
        "type": "checkbox",
        "label": "MTG Porn"
      },
      {
        "name": "gamer_porn",
        "type": "checkbox",
        "label": "Gamer Porn"
      },
      {
        "name": "power_washing_porn",
        "type": "checkbox",
        "label": "Power Washing Porn"
      },
      {
        "name": "aerial_porn",
        "type": "checkbox",
        "label": "Aerial Porn"
      },
      {
        "name": "organization_porn",
        "type": "checkbox",
        "label": "Organization Porn"
      },
      {
        "name": "fashion_porn",
        "type": "checkbox",
        "label": "Fashion Porn"
      },
      {
        "name": "avporn",
        "type": "checkbox",
        "label": "AV Porn"
      },
      {
        "name": "apocalypse_porn",
        "type": "checkbox",
        "label": "Apocalypse Porn"
      },
      {
        "name": "infrared_porn",
        "type": "checkbox",
        "label": "Infrared Porn"
      },
      {
        "name": "view_porn",
        "type": "checkbox",
        "label": "View Porn"
      },
      {
        "name": "hellscape_porn",
        "type": "checkbox",
        "label": "Hellscape Porn"
      },
      {
        "name": "sculptureporn",
        "type": "checkbox",
        "label": "sculptureporn"
      },
      {
        "name": "history_porn",
        "type": "checkbox",
        "label": "History Porn"
      },
      {
        "name": "uniform_porn",
        "type": "checkbox",
        "label": "Uniform Porn"
      },
      {
        "name": "book_porn",
        "type": "checkbox",
        "label": "Book Porn"
      },
      {
        "name": "news_porn",
        "type": "checkbox",
        "label": "News Porn"
      },
      {
        "name": "quotes_porn",
        "type": "checkbox",
        "label": "Quotes Porn"
      },
      {
        "name": "future_porn",
        "type": "checkbox",
        "label": "Future Porn"
      },
      {
        "name": "fossil_porn",
        "type": "checkbox",
        "label": "Fossil Porn"
      },
      {
        "name": "megalith_porn",
        "type": "checkbox",
        "label": "Megalith Porn"
      },
      {
        "name": "artefact_porn",
        "type": "checkbox",
        "label": "Artefact Porn"
      },
      {
        "name": "amateur_earth_porn",
        "type": "checkbox",
        "label": "Amateur Earth Porn"
      },
      {
        "name": "amateur_photography",
        "type": "checkbox",
        "label": "Amateur Photography"
      },
      {
        "name": "artist_of_the_day",
        "type": "checkbox",
        "label": "Artist Of The Day"
      },
      {
        "name": "background_art",
        "type": "checkbox",
        "label": "Background Art"
      },
      {
        "name": "conservation",
        "type": "checkbox",
        "label": "conservation"
      },
      {
        "name": "earth_porn_vids",
        "type": "checkbox",
        "label": "Earth Porn Vids"
      },
      {
        "name": "eye_candy",
        "type": "checkbox",
        "label": "Eye Candy"
      },
      {
        "name": "fwepp",
        "type": "checkbox",
        "label": "fwepp"
      },
      {
        "name": "imaginary_landscapes",
        "type": "checkbox",
        "label": "Imaginary Landscapes"
      },
      {
        "name": "imaginary_wildlands",
        "type": "checkbox",
        "label": "Imaginary Wildlands"
      },
      {
        "name": "incredible_india",
        "type": "checkbox",
        "label": "Incredible India"
      },
      {
        "name": "itook_apicture",
        "type": "checkbox",
        "label": "I Took A Picture"
      },
      {
        "name": "joshua_tree",
        "type": "checkbox",
        "label": "Joshua Tree"
      },
      {
        "name": "national_geographic",
        "type": "checkbox",
        "label": "National Geographic"
      },
      {
        "name": "nature",
        "type": "checkbox",
        "label": "nature"
      },
      {
        "name": "nature_gifs",
        "type": "checkbox",
        "label": "Nature Gifs"
      },
      {
        "name": "nature_pics",
        "type": "checkbox",
        "label": "Nature Pics"
      },
      {
        "name": "not_safe_for_nature",
        "type": "checkbox",
        "label": "Not Safe For Nature"
      },
      {
        "name": "nzphotos",
        "type": "checkbox",
        "label": "NZ Photos"
      },
      {
        "name": "remoteplaces",
        "type": "checkbox",
        "label": "remoteplaces"
      },
      {
        "name": "schweiz",
        "type": "checkbox",
        "label": "schweiz"
      },
      {
        "name": "spec_art",
        "type": "checkbox",
        "label": "Spec Art"
      },
      {
        "name": "wallpapers",
        "type": "checkbox",
        "label": "wallpapers"
      },
      {
        "name": "interstellar_art",
        "type": "checkbox",
        "label": "Interstellar Art"
      }
    ],
    "setup_notes": [],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Canviador del fons de pantalla",
        "description": "Imatges de subreddits seleccionats",
        "examples": [
          "fons de pantalla nou",
          "canvia el fons de pantalla a natura",
          "mostra'm un dibuix",
          "mostra'm una imatge amb gossos",
          "fes que sigui el fons de pantalla"
        ]
      },
      "da-dk": {
        "name": "Tapetskifter",
        "description": "Billeder fra udvalgte subreddits.",
        "examples": [
          "nyt tapet",
          "skifte tapet til natur",
          "vis mig et billede",
          "vis mig et billede med hunde",
          "g\u00f8r det til mit tapet"
        ]
      },
      "de-de": {
        "name": "Wallpaper Changer",
        "description": "Bilder aus ausgew\u00e4hlten Subreddits.",
        "examples": [
          "neues Hintergrundbild",
          "\u00c4ndere das Hintergrundbild in Natur",
          "zeig mir ein Bild\nzeige mir ein Bild",
          "zeig mir ein Bild mit Hunden",
          "mache das zu meinem Hintergrundbild"
        ]
      },
      "es-co": {
        "name": "Wallpaper Changer",
        "description": "Im\u00e1genes de subreddits seleccionados.",
        "examples": [
          "nuevo fondo de pantalla",
          "Cambiar el fondo de pantalla a naturaleza",
          "Mu\u00e9strame una foto",
          "Mu\u00e9strame una foto con perros",
          "Haz que sea mi fondo de pantalla"
        ]
      },
      "es-es": {
        "name": "Wallpaper Changer",
        "description": "Im\u00e1genes de subreddits seleccionados.",
        "examples": [
          "nuevo fondo de pantalla",
          "Cambiar el fondo de pantalla a naturaleza",
          "Mu\u00e9strame una foto",
          "Mu\u00e9strame una foto con perros",
          "Haz que sea mi fondo de pantalla"
        ]
      },
      "eu-es": {
        "name": "Horma-paperen aldatzailea",
        "description": "Hautatutako subredditetako irudiak.",
        "examples": [
          "horma-paper berria",
          "aldatu horma-papera naturara",
          "erakutsi argazki bat",
          "erakutsi txakurrekin argazki bat",
          "jarri hori nire horma-paper gisa"
        ]
      },
      "fa-ir": {
        "name": "Wallpaper Changer",
        "description": "Pictures from selected subreddits.",
        "examples": [
          "\u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0627\u063a\u0630 \u062f\u06cc\u0648\u0627\u0631\u06cc",
          "\u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0627\u063a\u0630 \u062f\u06cc\u0648\u0627\u0631\u06cc \u062f\u0631 \u0645\u0648\u0631\u062f \u0637\u0628\u06cc\u0639\u062a",
          "\u06cc\u06a9 \u0639\u06a9\u0633 \u0628\u0647 \u0645\u0646 \u0646\u0634\u0627\u0646 \u062f\u0647\u06cc\u062f",
          "\u0628\u0647 \u0645\u0646 \u06cc\u06a9 \u0639\u06a9\u0633 \u0646\u0634\u0627\u0646 \u062f\u0647\u06cc\u062f \u0633\u06af",
          "\u0627\u06cc\u0646 \u06a9\u0627\u063a\u0630 \u062f\u06cc\u0648\u0627\u0631\u06cc \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f"
        ]
      },
      "fr-fr": {
        "name": "Fonds d'\u00e9cran",
        "description": "Des images issues de sources s\u00e9lectionn\u00e9es.",
        "examples": [
          "un nouveau fond d'\u00e9cran",
          "change le fond d'\u00e9cran pour la nature",
          "montre-moi une image",
          "montre-moi une image de chiens",
          "mets cette image en fond d'\u00e9cran"
        ]
      },
      "gl-es": {
        "name": "Cambiador de fondos de pantalla",
        "description": "Imaxes de subreddits seleccionados.",
        "examples": [
          "novo fondo de pantalla",
          "cambiar o fondo de pantalla \u00e1 natureza",
          "m\u00f3strame unha imaxe",
          "m\u00f3strame unha foto de cans",
          "converte esa imaxe no meu fondo de pantalla"
        ]
      },
      "it-it": {
        "name": "Cambia Sfondo",
        "description": "Immagini da subreddit selezionati.",
        "examples": [
          "nuovo sfondo",
          "cambia lo sfondo con la natura",
          "mostrami un'immagine",
          "mostrami un'immagine con i cani",
          "imposta quella come sfondo"
        ]
      },
      "kab": {
        "name": "Abeddel n Ugdil",
        "description": "Tugniwin seg subreddit yettwafernen.",
        "examples": [
          "agdil ajdid",
          "beddel agdil \u0263er tabi\u025bt",
          "sken-iyi-d tugna",
          "sken-iyi-d tugna n i\u1e0dan",
          "sers-t d agilal-iw"
        ]
      },
      "nl-nl": {
        "name": "Achtergrond Wisselaar",
        "description": "Afbeeldingen van geselecteerde subreddits.",
        "examples": [
          "nieuwe achtergrond",
          "verander achtergrond naar natuur",
          "laat me een afbeelding zien",
          "laat me een afbeelding met honden zien",
          "maak dat mijn achtergrond"
        ]
      },
      "pl-pl": {
        "name": "Wallpaper Changer",
        "description": "Pictures from selected subreddits.",
        "examples": [
          "Zmie\u0144 tapet\u0119",
          "zmie\u0144 tapet\u0119 o naturze",
          "poka\u017c mi zdj\u0119cie",
          "poka\u017c mi zdj\u0119cie o psach",
          "ustaw tapet\u0119"
        ]
      },
      "pt-br": {
        "name": "Trocar Papel de Parede",
        "description": "Imagens de subreddits selecionados.",
        "examples": [
          "novo papel de parede",
          "mude o papel de parede para natureza",
          "me mostre uma imagem",
          "me mostre uma imagem com cachorros",
          "defina isso como meu papel de parede"
        ]
      },
      "pt-pt": {
        "name": "Mudar Fundo de Ecr\u00e3",
        "description": "Imagens de subreddits selecionados.",
        "examples": [
          "novo fundo de ecr\u00e3",
          "muda o fundo de ecr\u00e3 para natureza",
          "mostra-me uma imagem",
          "mostra-me uma imagem com c\u00e3es",
          "define isso como o meu fundo de ecr\u00e3"
        ]
      },
      "ru-ru": {
        "name": "Wallpaper Changer",
        "description": "Pictures from selected subreddits.",
        "examples": [
          "\u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043e\u0431\u043e\u0438",
          "\u0441\u043c\u0435\u043d\u0438\u0442\u044c \u043e\u0431\u043e\u0438 \u043f\u0440\u0438\u0440\u043e\u0434\u0435",
          "\u041f\u043e\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e.",
          "\u041f\u043e\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e \u043e \u0441\u043e\u0431\u0430\u043a\u0430\u0445",
          "\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u0431\u043e\u0438"
        ]
      },
      "sv-se": {
        "name": "Bakgrundsbyte",
        "description": "Bilder fr\u00e5n utvalda subreddits.",
        "examples": [
          "ny bakgrundsbild",
          "byt bakgrundsbild till natur",
          "visa mig en bild",
          "visa mig en bild med hundar",
          "g\u00f6r den till min bakgrundsbild"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2020-07-07T03:54:03Z",
    "last_updated": "2024-12-04T22:37:11.430893Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "skill-ovos-wallpapers.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.9",
          "tested_at": "2026-10-04T11:12:50+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.9",
          "tested_at": "2026-10-04T10:56:47+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 11/23 golden",
          "state": "warn",
          "level": 2,
          "stop": "stops",
          "version_tested": "2.8.1a2",
          "tested_at": "2026-10-30T09:27:33+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 11,
            "counted": 23
          }
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-weather",
    "skill_id": "ovos-skill-weather.openvoiceos",
    "name": "Weather",
    "description": "Get weather conditions, forecasts, expected precipitation and more! You can also ask for other cities around the world. Current conditions and weather forecasts come from OpenMeteo",
    "examples": [
      "current humidity level right now in Chicago",
      "is it hot",
      "is it windy right now in Chicago",
      "when will it rain next in Chicago",
      "when is the sunrise today in Chicago",
      "when is the sunset today in Chicago",
      "what is the current temperature right now in celsius in Chicago",
      "what is the weather like in celsius",
      "is it foggy today",
      "humidity percentage right now",
      "is it chilly",
      "how strong are the winds",
      "when is the next rainfall",
      "what time does the sun rise today in Chicago",
      "when is the sun set tomorrow",
      "what's the highest temp",
      "hourly weather for this morning",
      "is the sky gray in Chicago"
    ],
    "tags": [
      "weather",
      "forecast",
      "rain",
      "humidity",
      "snow",
      "temperature"
    ],
    "category": "Other",
    "icon": "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/svgs/solid/sun.svg",
    "icon_source": "readme",
    "icon_color": "#FEE255",
    "source": "https://github.com/OpenVoiceOS/ovos-skill-weather",
    "package_name": "ovos-skill-weather",
    "pypi_version": "1.0.6",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 3,
    "forks": 10,
    "open_issues": 13,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": true,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [
      {
        "name": "units",
        "type": "select",
        "label": "Temperature units"
      }
    ],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip:\n\npip install ovos-skill-weather\n\nAn [OVOS](https://github.com/OpenVoiceOS) instance loads it automatically through the\n[`opm.skill`](https://github.com/OpenVoiceOS/OVOS-plugin-manager) entry point."
      }
    ],
    "languages": [
      "ca-es",
      "cs-cz",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fi-fi",
      "fr-fr",
      "gl-es",
      "hu-hu",
      "it-it",
      "kab",
      "nl-nl",
      "oc-fr",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-fi",
      "sv-se",
      "tr-tr"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Temps",
        "description": "Obteniu les condicions meteorol\u00f2giques, les previsions, les precipitacions esperades i molt m\u00e9s! Tamb\u00e9 podeu demanar per altres ciutats del m\u00f3n. Les condicions actuals i les previsions meteorol\u00f2giques provenen d'OpenMeteo",
        "examples": [
          "Em fa falta humidificador ?",
          "Far\u00e0 fred a Barcelona?",
          "A quanta velocitat bufa el vent ?",
          "A quina hora comen\u00e7ar\u00e0 a ploure ?",
          "A quina hora comen\u00e7a a haver-hi llum ?",
          "A quina hora es fa de nit ?",
          "Far\u00e0 calor aquesta nit?",
          "Com \u00e9s oratge a Barcelona?",
          "S'espera boira densa per aquesta nit ?",
          "Hi ha humitat a Barcelona?",
          "Estar\u00e0 g\u00e8lid a Barcelona?",
          "Fa vent hui ?",
          "Digues-me quan plour\u00e0.",
          "Horari de l'albada d'avui.",
          "Hora de la posta de sol d'hui.",
          "Quina temperatura hi haur\u00e0 a la 9 del mat\u00ed dilluns ?",
          "Previsi\u00f3 per dimarts a la 3 del vespre a Barcelona.",
          "hi ha n\u00favols a Barcelona"
        ]
      },
      "cs-cz": {
        "name": "Po\u010das\u00ed",
        "description": "Zjist\u011bte po\u010das\u00ed, p\u0159edpov\u011b\u010f, o\u010dek\u00e1van\u00e9 sr\u00e1\u017eky a dal\u0161\u00ed. M\u016f\u017eete se tak\u00e9 zeptat na jin\u00e1 m\u011bsta po cel\u00e9m sv\u011bt\u011b. Aktu\u00e1ln\u00ed po\u010das\u00ed a p\u0159edpov\u011bdi poch\u00e1zej\u00ed z OpenMeteo.",
        "examples": [
          "Jak\u00e1 je te\u010f vlhkost vzduchu v Praze",
          "Bude dnes zima v Praze",
          "Je dnes venku v\u011btrno v Praze",
          "Kdy bude p\u0159\u00ed\u0161t\u011b pr\u0161et v Praze",
          "V kolik hodin vych\u00e1z\u00ed slunce dnes v Praze",
          "V kolik hodin zapad\u00e1 slunce dnes v Praze",
          "Jak\u00e1 je aktu\u00e1ln\u00ed teplota v Praze",
          "Jak\u00e1 je p\u0159edpov\u011b\u010f po\u010das\u00ed na dva dn\u00ed v Praze",
          "je zamra\u010deno",
          "Jak\u00e1 je vlhkost vzduchu",
          "Bude chladno dnes v Praze",
          "Jak siln\u00fd je v\u00edtr v Praze",
          "Kdy za\u010dne pr\u0161et v Praze",
          "V kolik hodin vych\u00e1z\u00ed slunce dnes",
          "V kolik hodin zapad\u00e1 slunce dnes",
          "Kolik stup\u0148\u016f bude maxim\u00e1ln\u011b dnes",
          "Jak\u00e9 bude po\u010das\u00ed dnes v Praze",
          "jsou tam mraky z\u00edtra v Praze"
        ]
      },
      "da-dk": {
        "name": "Vejr",
        "description": "F\u00e5 vejrforhold, prognoser, forventet nedb\u00f8r og meget mere! Du kan ogs\u00e5 sp\u00f8rge efter andre byer rundt om i verden. Aktuelle forhold og vejrudsigter kommer fra OpenMeteo",
        "examples": [
          "Er luften t\u00f8r eller fugtig",
          "Bliver det koldt i K\u00f8benhavn?",
          "Skal jeg sikre udend\u00f8rs genstande p\u00e5 grund af vind",
          "fort\u00e6l mig, hvorn\u00e5r det vil regne",
          "hvad er daggrytid",
          "hvad er skumringstidspunktet",
          "hvor hedt er det",
          "eventuelle advarsler i weekenden",
          "Er det dystert udenfor",
          "Har jeg brug for en luftfugter i dag",
          "Skal jeg tage en jakke p\u00e5 i K\u00f8benhavn?",
          "er det bl\u00e6sende i dag",
          "hvorn\u00e5r er den n\u00e6ste nedb\u00f8r",
          "hvad tid st\u00e5r solen op",
          "hvad tid g\u00e5r solen ned",
          "Skal jeg forvente frost l\u00f8rdag",
          "hvad er vejret vejrudsigt kl. 11 eftermiddag i K\u00f8benhavn",
          "forventes tyk t\u00e5ge i nat i K\u00f8benhavn"
        ]
      },
      "de-de": {
        "name": "Wetter",
        "description": "Erhalte Wetterbedingungen, Prognosen, erwartete Niederschl\u00e4ge und mehr! Du kannst auch nach anderen St\u00e4dten auf der ganzen Welt fragen. Aktuelle Bedingungen und Wettervorhersagen stammen von OpenMeteo",
        "examples": [
          "Luftfeuchtigkeit in Prozent",
          "Wird es kalt in Berlin?",
          "gibt es starke Windb\u00f6en",
          "Sag mir, wann es regnen wird",
          "Sonnenaufgang f\u00fcr heute",
          "Sonnenuntergang f\u00fcr heute",
          "Wie ist die Temperatur",
          "aktuelle Wetter",
          "ist es bew\u00f6lkt heute",
          "ist die Luft trocken oder feucht",
          "Brauche ich eine Jacke in Berlin?",
          "ist es jetzt in Berlin windig",
          "um wie viel Uhr wird es anfangen zu regnen",
          "wann geht die Sonne auf in Berlin",
          "wann endet das Abendlicht in Berlin",
          "Wie ist die Temperatur in Berlin drau\u00dfen",
          "Vorhersage f\u00fcr Sonntag um 12 pm",
          "wird in Berlin ein Sturm erwartet"
        ]
      },
      "es-co": {
        "name": "El tiempo",
        "description": "Informaci\u00f3n sobre las condiciones meteorol\u00f3gicas, las previsiones, las precipitaciones y mucho m\u00e1s. Tambi\u00e9n puedes preguntar sobre otras ciudades del mundo. Las condiciones actuales y las previsiones provienen de OpenMeteo",
        "examples": [
          "Humedad actual",
          "Har\u00e1 fr\u00edo en Madrid",
          "Se esperan condiciones de viento en Madrid",
          "Dime cu\u00e1ndo llover\u00e1",
          "Hora de el amanecer de hoy",
          "Hora de el atardecer de hoy",
          "Har\u00e1 mucho calor esta noche",
          "Condici\u00f3n",
          "est\u00e1 nublado hoy en Madrid",
          "El aire est\u00e1 seco o h\u00famedo hoy",
          "Necesito abrigo en Madrid",
          "Deber\u00eda guardar los objetos que tengo al aire libre a causa del viento en Madrid",
          "A qu\u00e9 hora empezar\u00e1 a llover en Madrid",
          "A qu\u00e9 hora empieza el amanecer",
          "A qu\u00e9 hora es el atardecer",
          "Cu\u00e1l ser\u00e1 la temperatura m\u00ednima hoy por la ma\u00f1ana",
          "Dime la previsi\u00f3n de el tiempo a las 19",
          "Llover\u00e1 durante el fin de semana"
        ]
      },
      "es-es": {
        "name": "Temps",
        "description": "Informaci\u00f3n sobre las condiciones meteorol\u00f3gicas, las previsiones, las precipitaciones y mucho m\u00e1s. Tambi\u00e9n puedes preguntar sobre otras ciudades del mundo. Las condiciones actuales y las previsiones provienen de OpenMeteo",
        "examples": [
          "Humedad actual",
          "Har\u00e1 fr\u00edo en Madrid",
          "Se esperan condiciones de viento en Madrid",
          "Dime cu\u00e1ndo llover\u00e1",
          "Hora de el amanecer de hoy",
          "Hora de el atardecer de hoy",
          "Har\u00e1 mucho calor esta noche",
          "Condici\u00f3n",
          "est\u00e1 nublado hoy en Madrid",
          "El aire est\u00e1 seco o h\u00famedo hoy",
          "Necesito abrigo en Madrid",
          "Deber\u00eda guardar los objetos que tengo al aire libre a causa del viento en Madrid",
          "A qu\u00e9 hora empezar\u00e1 a llover en Madrid",
          "A qu\u00e9 hora empieza el amanecer",
          "A qu\u00e9 hora es el atardecer",
          "Cu\u00e1l ser\u00e1 la temperatura m\u00ednima hoy por la ma\u00f1ana",
          "Dime la previsi\u00f3n de el tiempo a las 19",
          "Llover\u00e1 durante el fin de semana"
        ]
      },
      "eu-es": {
        "name": "Eguraldia",
        "description": "Galdetu eguraldia, iragarpena, espero den euria eta gehiago. Munduko beste hiri batzuei buruz ere galde dezakezu. Datuak OpenMeteo zerbitzutik datoz.",
        "examples": [
          "Zein da orain hezetasun maila Bilbon",
          "Hotza egingo du gaur Bilbon",
          "Haizea dago orain Bilbon",
          "Noiz egingo du euria berriro Bilbon",
          "Zer ordutan atera da eguzkia gaur Bilbon",
          "Zer ordutan sartuko da eguzkia gaur Bilbon",
          "Zenbat gradu daude orain Bilbon",
          "Zein da eguraldiaren iragarpena hurrengo bi egunetarako Bilbon",
          "dago eguzkitsu gaur Bilbon",
          "Hezegailu bat behar dut gaur",
          "Beroa dago kanpoan orain Bilbon",
          "Haizea izango da",
          "Zenbat denbora falta da euria hasteko",
          "Zer ordutan argituko du bihar Bilbon",
          "Noiz da ilunabarra gaur",
          "Zenbateko beroa egingo du bihar",
          "Nolako eguraldia egingo du asteazkenean Bilbon",
          "izotza egongo da"
        ]
      },
      "fa-ir": {
        "name": "\u0622\u0628 \u0648 \u0647\u0648\u0627",
        "description": "\u0634\u0631\u0627\u06cc\u0637 \u0622\u0628 \u0648 \u0647\u0648\u0627\u060c \u067e\u06cc\u0634 \u0628\u06cc\u0646\u06cc\u060c \u0628\u0627\u0631\u0634 \u0645\u0648\u0631\u062f \u0627\u0646\u062a\u0638\u0627\u0631 \u0648 \u0628\u06cc\u0634\u062a\u0631. \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0622\u0628 \u0648 \u0647\u0648\u0627\u06cc \u0634\u0647\u0631\u0647\u0627\u06cc \u062f\u06cc\u06af\u0631 \u062c\u0647\u0627\u0646 \u0631\u0627 \u0647\u0645 \u0628\u067e\u0631\u0633\u06cc\u062f. \u0634\u0631\u0627\u06cc\u0637 \u0641\u0639\u0644\u06cc \u0648 \u067e\u06cc\u0634 \u0628\u06cc\u0646\u06cc \u0627\u0632 OpenMeteo \u0645\u06cc \u0622\u06cc\u062f.",
        "examples": [
          "\u0631\u0637\u0648\u0628\u062a \u0641\u0639\u0644\u06cc",
          "\u0622\u06cc\u0627 \u062f\u0627\u063a \u0627\u0633\u062a",
          "\u0622\u06cc\u0627 \u0628\u0627\u062f \u0627\u0633\u062a",
          "\u0686\u0647 \u0632\u0645\u0627\u0646\u06cc \u0628\u0627\u0631\u0627\u0646 \u0628\u0639\u062f\u06cc \u0645\u06cc \u0628\u0627\u0631\u062f\u061f",
          "\u0632\u0645\u0627\u0646 \u0637\u0644\u0648\u0639 \u062e\u0648\u0631\u0634\u06cc\u062f \u0686\u06cc\u0633\u062a",
          "\u0632\u0645\u0627\u0646 \u063a\u0631\u0648\u0628 \u0622\u0641\u062a\u0627\u0628",
          "\u062f\u0631\u062c\u0647 \u062d\u0631\u0627\u0631\u062a \u0686\u06cc\u0633\u062a",
          "\u067e\u06cc\u0634 \u0628\u06cc\u0646\u06cc \u0627\u0645\u0631\u0648\u0632 \u0686\u06cc\u0633\u062a",
          "\u0622\u06cc\u0627 \u0627\u0628\u0631 \u0627\u0633\u062a"
        ]
      },
      "fi-fi": {
        "name": "S\u00e4\u00e4",
        "description": "Kysy s\u00e4\u00e4t\u00e4, ennustetta, odotettua sadem\u00e4\u00e4r\u00e4\u00e4 ja paljon muuta. Voit kysy\u00e4 my\u00f6s muista kaupungeista ymp\u00e4ri maailmaa. Nykyinen s\u00e4\u00e4 ja ennusteet tulevat OpenMeteosta.",
        "examples": [
          "mik\u00e4 on ilmankosteus juuri nyt Helsingiss\u00e4",
          "onko t\u00e4n\u00e4\u00e4n kosteaa",
          "tuleeko t\u00e4n\u00e4\u00e4n kylm\u00e4 Helsingiss\u00e4",
          "tarvitsenko takin t\u00e4n\u00e4\u00e4n",
          "tuuleeko kovaa juuri nyt Helsingiss\u00e4",
          "kuinka kova tuuli on",
          "milloin alkaa taas sataa Helsingiss\u00e4",
          "milloin sade alkaa",
          "mihin aikaan aurinko nousee t\u00e4n\u00e4\u00e4n Helsingiss\u00e4",
          "milloin on auringonnousu t\u00e4n\u00e4\u00e4n Helsingiss\u00e4",
          "mihin aikaan aurinko laskee t\u00e4n\u00e4\u00e4n Helsingiss\u00e4",
          "milloin on auringonlasku t\u00e4n\u00e4\u00e4n Helsingiss\u00e4",
          "mik\u00e4 on l\u00e4mp\u00f6tila juuri nyt Helsingiss\u00e4",
          "mik\u00e4 on l\u00e4mp\u00f6tila t\u00e4n\u00e4 iltana Helsingiss\u00e4",
          "mik\u00e4 on s\u00e4\u00e4ennuste seuraaville kahdelle p\u00e4iv\u00e4lle Helsingiss\u00e4",
          "millainen s\u00e4\u00e4 on tiistaina Helsingiss\u00e4",
          "onko t\u00e4n\u00e4\u00e4n aurinkoista Helsingiss\u00e4",
          "onko pilvist\u00e4"
        ]
      },
      "fr-fr": {
        "name": "M\u00e9t\u00e9o",
        "description": "Consultez la m\u00e9t\u00e9o actuelle, les pr\u00e9visions, l'humidit\u00e9 et les prochaines pluies. Vous pouvez aussi demander la m\u00e9t\u00e9o d'une autre ville. Les donn\u00e9es proviennent d'Open-Meteo.",
        "examples": [
          "quel est le taux d'humidit\u00e9",
          "Va-t-il faire froid \u00e0 Lyon?",
          "y a-t-il du vent",
          "quand pleuvra-t-il",
          "\u00e0 quelle heure est le lever du soleil",
          "\u00e0 quelle heure est le coucher du soleil",
          "quelle est la temp\u00e9rature",
          "quel temps fait-il",
          "est-ce que le ciel est d\u00e9gag\u00e9",
          "l'air est-il humide",
          "fera-t-il chaud",
          "est-ce venteux dans Lyon",
          "\u00e0 quelle heure commencera la pluie",
          "quelle est l'heure du lever du soleil dans Lyon",
          "quelle est l'heure du coucher du soleil dans Lyon",
          "ai-je besoin d'une veste \u00e0 Lyon",
          "quel temps fera-t-il dimanche",
          "est-ce qu'il neige demain \u00e0 Lyon"
        ]
      },
      "gl-es": {
        "name": "O tempo",
        "description": "Obt\u00e9n as condici\u00f3ns meteorol\u00f3xicas, previsi\u00f3ns, precipitaci\u00f3ns esperadas e moito m\u00e1is! Tam\u00e9n podes consultar o tempo noutras cidades do mundo. As condici\u00f3ns actuais e as previsi\u00f3ns meteorol\u00f3xicas prove\u00f1en de OpenMeteo",
        "examples": [
          "cal \u00e9 o nivel de humidade",
          "Vai facer fr\u00edo en Vigo?",
          "cal \u00e9 a velocidade do vento",
          "a que hora comeza a chover",
          "a que hora sae o sol",
          "a que hora anoitece",
          "vai ir calor hoxe",
          "vai ir calor ma\u00f1\u00e1 en Vigo",
          "hai sol",
          "hai humidade en Vigo",
          "Necesito abrigo en Vigo?",
          "hai algunha alerta por vento",
          "cando vai chover novamente",
          "cal \u00e9 a hora do amencer en Vigo",
          "cal \u00e9 a hora do anoitecer hoxe",
          "cal \u00e9 a temperatura \u00e1s 8 da ma\u00f1\u00e1 martes",
          "previsi\u00f3n para m\u00e9rcores \u00e1 1 da tarde",
          "est\u00e1 a nevar en Vigo"
        ]
      },
      "hu-hu": {
        "name": "Id\u0151j\u00e1r\u00e1s",
        "description": "K\u00e9rdezd le az id\u0151j\u00e1r\u00e1st, az el\u0151rejelz\u00e9st, a v\u00e1rhat\u00f3 csapad\u00e9kot \u00e9s m\u00e9g t\u00f6bbet. A vil\u00e1g m\u00e1s v\u00e1rosair\u00f3l is k\u00e9rdezhetsz. Az aktu\u00e1lis id\u0151j\u00e1r\u00e1s \u00e9s az el\u0151rejelz\u00e9sek az OpenMeteo adatai.",
        "examples": [
          "Mennyi most a p\u00e1ratartalom Budapest v\u00e1rosban",
          "Hideg lesz ma Budapest v\u00e1rosban",
          "Szeles most az id\u0151 Budapest v\u00e1rosban",
          "Mikor fog legk\u00f6zelebb esni az es\u0151 Budapest v\u00e1rosban",
          "H\u00e1nykor kel fel a nap ma Budapest v\u00e1rosban",
          "H\u00e1nykor nyugszik le a nap ma Budapest v\u00e1rosban",
          "Mennyi most a h\u0151m\u00e9rs\u00e9klet Budapest v\u00e1rosban",
          "Milyen az id\u0151j\u00e1r\u00e1s-el\u0151rejelz\u00e9s k\u00e9t napra Budapest v\u00e1rosban",
          "felh\u0151s van",
          "Mennyi a p\u00e1ratartalom",
          "H\u0171v\u00f6s lesz ma Budapest v\u00e1rosban",
          "Milyen er\u0151s a sz\u00e9l Budapest v\u00e1rosban",
          "Mikor kezd el esni Budapest v\u00e1rosban",
          "H\u00e1nykor kel fel a nap ma",
          "H\u00e1nykor nyugszik le a nap ma",
          "H\u00e1ny fok lesz maximum holnap Budapest v\u00e1rosban",
          "Milyen lesz az id\u0151j\u00e1r\u00e1s holnaput\u00e1n Budapest v\u00e1rosban",
          "lesznek felh\u0151k ma"
        ]
      },
      "it-it": {
        "name": "Che tempo fa?",
        "description": "Condizioni metereologiche da tutto il mondo e previsioni",
        "examples": [
          "Qual \u00e8 adesso l'umidit\u00e0 a Roma",
          "Quanta umidit\u00e0 \u00e8 prevista a Roma",
          "Far\u00e0 freddo oggi a Roma",
          "Far\u00e0 caldo a Roma",
          "Tira vento adesso a Roma",
          "Ci sar\u00e0 vento domani",
          "Quando piover\u00e0 di nuovo a Roma",
          "Tra quanto comincia la pioggia oggi a Roma",
          "A che ora sorge il sole oggi a Roma",
          "A che ora sorge il sole",
          "A che ora tramonta il sole oggi a Roma",
          "A che ora tramonta il sole",
          "Qual \u00e8 la temperatura attuale a Roma",
          "Quanti gradi ci saranno stanotte",
          "Che previsioni ci sono per i prossimi due giorni a Roma",
          "Che previsioni ci sono per domani mattina a Roma",
          "\u00e8 nuvoloso",
          "\u00e8 soleggiato"
        ]
      },
      "kab": {
        "name": "Tignawt",
        "description": "Steqsi \u0263ef tignawt, \u0263ef usanay, \u0263ef ugeffur i d-iteddun d wugar. Tzemre\u1e0d ad testeqsi\u1e0d da\u0263en \u0263ef temdinin nni\u1e0den n uma\u1e0dal. Isefka-agi d ay d-yekkan seg OpenMeteo.",
        "examples": [
          "Ac\u1e25al i d lambubya n wa\u1e0du tura di Tizi Wezzu",
          "Ad yili usemmi\u1e0d ass-a di Tizi Wezzu",
          "Yella wa\u1e0du tura di Tizi Wezzu",
          "Melmi ara d-ye\u0263li ugeffur nnig-i di Tizi Wezzu",
          "D melmi ara d-yeffe\u0263 yi\u1e6dij ass-a di Tizi Wezzu",
          "D melmi ara ye\u0263li yi\u1e6dij ass-a di Tizi Wezzu",
          "Ac\u1e25al i d ddrejat tura di Tizi Wezzu",
          "D acu i d lexba\u1e5b n waman i sin wussan di Tizi Wezzu",
          "tella l\u1e25ala ifaz ass-a di Tizi Wezzu",
          "Ac\u1e25al i d lambubya s ubadu di Tizi Wezzu",
          "Ad yili \u1e5b\u1e5be\u1e0d ass n arim",
          "Ad yili wa\u1e0du ass-a",
          "Ac\u1e25al i d-yeqqimen i ugeffur",
          "D melmi ara d-yali wass azekka di Tizi Wezzu",
          "D melmi ara ye\u1e0dlem wass ass-a di Tizi Wezzu",
          "Ac\u1e25al ara yi\u0263 \u1e5b\u1e5be\u1e0d azekka",
          "Amek ara tili l\u1e25ala deg wass n lareb\u025ba di Tizi Wezzu",
          "ad d-ye\u0263li udfel"
        ]
      },
      "nl-nl": {
        "name": "Weer",
        "description": "Ontvang de weersvoorspellingen, verwachte neerslag en meer! Je kunt ook vragen naar het weerbeeld in andere steden over de hele wereld. Huidige weergegevens en voorspellingen komen van OpenMeteo",
        "examples": [
          "heb ik een luchtbevochtiger nodig",
          "Wordt het koud in Utrecht?",
          "hoe hard waait het",
          "gaat het regenen",
          "hoe laat gaat de zon op",
          "hoe laat gaat de zon onder",
          "wat is de temperatuur dinsdag avond",
          "gaat het onweren op dinsdag",
          "hoe bewolkt of helder is het",
          "hoe vochtig is het in Utrecht",
          "Moet ik een jas aan in Utrecht?",
          "moet ik oppassen voor harde wind",
          "komt er snel regen aan",
          "tijd van zonsopgang vandaag",
          "tijd van zonsondergang vandaag",
          "wat is de laagste temperatuur in Utrecht op morgen",
          "hoe is het weer in Utrecht donderdag",
          "zullen er wolken zijn vandaag"
        ]
      },
      "oc-fr": {
        "name": "Temps",
        "description": "Obten\u00e8tz las condicions meteorologicas, las previsions, las precipitacions esperadas e f\u00f2r\u00e7a mai! Pod\u00e8tz tanben demandar per autre vilas del mond. Las condicions actualas e las previsions meteorologicas provenon de OpenMeteo",
        "examples": [
          "Me fa fauta umidificador ?",
          "Far\u00e0 fred a Tolosa?",
          "A quant velocitat bufa lo vent ?",
          "A quin ora comen\u00e7ar\u00e0 a pl\u00f2ure ?",
          "A quin ora comen\u00e7a a i aver lum ?",
          "A quin ora se fa de nu\u00e8ch ?",
          "Far\u00e0 calor aquela nu\u00e8ch?",
          "Coss\u00ed es temps a Tolosa?",
          "S'esp\u00e8ra bruma densa per aquela nu\u00e8ch ?",
          "I a umiditat a Tolosa?",
          "Far\u00e0 calorassa a Tolosa?",
          "Fa vent u\u00e8i a Tolosa?",
          "Explica-me quand plour\u00e0.",
          "Orari del alba d'u\u00e8i.",
          "Ora de la ponduda de solelh d'u\u00e8i.",
          "Quin temperatura i aur\u00e0 a la 6 del ser deman ?",
          "Prevision per dimars a la 11 del mi\u00e8gjorn a Tolosa.",
          "La prevision an\u00f3ncia plu\u00e8ja ?"
        ]
      },
      "pl-pl": {
        "name": "Pogoda",
        "description": "Sprawd\u017a pogod\u0119, prognoz\u0119, spodziewane opady i wi\u0119cej. Mo\u017cesz te\u017c zapyta\u0107 o inne miasta na \u015bwiecie. Aktualna pogoda i prognozy pochodz\u0105 z OpenMeteo.",
        "examples": [
          "Jaka jest teraz wilgotno\u015b\u0107 powietrza w Krakowie",
          "B\u0119dzie dzi\u015b zimno w Krakowie",
          "Czy jest dzi\u015b wietrznie w Krakowie",
          "Kiedy znowu b\u0119dzie pada\u0107 w Krakowie",
          "O kt\u00f3rej wschodzi s\u0142o\u0144ce dzi\u015b w Krakowie",
          "O kt\u00f3rej zachodzi s\u0142o\u0144ce dzi\u015b w Krakowie",
          "Jaka jest teraz temperatura w Krakowie",
          "Jaka jest prognoza pogody na dwa dni w Krakowie",
          "jest pochmurno",
          "Jaka jest wilgotno\u015b\u0107 powietrza",
          "B\u0119dzie ch\u0142odno dzi\u015b w Krakowie",
          "Jak silny jest wiatr w Krakowie",
          "Kiedy zacznie pada\u0107 w Krakowie",
          "O kt\u00f3rej wschodzi s\u0142o\u0144ce dzi\u015b",
          "O kt\u00f3rej zachodzi s\u0142o\u0144ce dzi\u015b",
          "Ile stopni maksymalnie b\u0119dzie jutro w Krakowie",
          "Jaka b\u0119dzie pogoda pojutrze w Krakowie",
          "b\u0119d\u0105 chmury dzisiaj"
        ]
      },
      "pt-br": {
        "name": "Clima",
        "description": "Veja as condi\u00e7\u00f5es clim\u00e1ticas, previs\u00f5es, precipita\u00e7\u00e3o esperada e muito mais! Voc\u00ea tamb\u00e9m pode perguntar sobre outras cidades ao redor do mundo. As condi\u00e7\u00f5es atuais e as previs\u00f5es meteorol\u00f3gicas v\u00eam do OpenMeteo.",
        "examples": [
          "est\u00e1 abafado l\u00e1 fora",
          "Vai fazer frio em Recife?",
          "devo me preocupar com ventos fortes",
          "a chuva vai chegar em breve",
          "a que horas come\u00e7a a luz do dia",
          "a que horas escurece",
          "Qual \u00e9 a temperatura",
          "vai chover na quarta",
          "estar\u00e1 ensolarado hoje",
          "o ar est\u00e1 seco ou \u00famido em Recife",
          "Preciso de casaco em Recife?",
          "haver\u00e1 vento forte hoje em Recife",
          "quando ser\u00e1 a pr\u00f3xima chuva",
          "qual \u00e9 o hor\u00e1rio do nascer do sol em Recife",
          "qual \u00e9 o hor\u00e1rio do p\u00f4r do sol em Recife",
          "qu\u00e3o quente vai ficar hoje em Recife",
          "como est\u00e1 o tempo na pr\u00f3ximo domingo",
          "devo me preocupar com neblina"
        ]
      },
      "pt-pt": {
        "name": "Meteorologia",
        "description": "Consulte as condi\u00e7\u00f5es meteorol\u00f3gicas, as previs\u00f5es, a precipita\u00e7\u00e3o esperada e muito mais! Tamb\u00e9m pode perguntar por outras cidades do mundo. As condi\u00e7\u00f5es atuais e as previs\u00f5es v\u00eam do OpenMeteo.",
        "examples": [
          "Qual \u00e9 agora a humidade do ar em Porto",
          "Vai estar frio hoje em Porto",
          "Est\u00e1 a fazer vento agora em Porto",
          "Quando \u00e9 que volta a chover em Porto",
          "A que horas nasce o sol hoje em Porto",
          "A que horas se p\u00f5e o sol hoje em Porto",
          "Qual \u00e9 a temperatura atual em Porto",
          "Qual \u00e9 a previs\u00e3o do tempo para os pr\u00f3ximos dois dias em Porto",
          "est\u00e1 nublado",
          "Preciso de um desumidificador hoje",
          "Vai estar calor segunda",
          "Vai haver vento",
          "Daqui a quanto tempo come\u00e7a a chuva",
          "Quando \u00e9 o nascer do sol hoje",
          "Quando \u00e9 o p\u00f4r do sol hoje",
          "Quanto calor vai fazer amanh\u00e3",
          "Como vai estar o tempo na segunda em Porto",
          "vai cair neve amanh\u00e3 em Porto"
        ]
      },
      "ru-ru": {
        "name": "\u041f\u043e\u0433\u043e\u0434\u0430",
        "description": "\u0423\u0437\u043d\u0430\u0439\u0442\u0435 \u043f\u043e\u0433\u043e\u0434\u0443, \u043f\u0440\u043e\u0433\u043d\u043e\u0437, \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u044b\u0435 \u043e\u0441\u0430\u0434\u043a\u0438 \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435. \u041c\u043e\u0436\u043d\u043e \u0441\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0438 \u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445 \u043c\u0438\u0440\u0430. \u0422\u0435\u043a\u0443\u0449\u0430\u044f \u043f\u043e\u0433\u043e\u0434\u0430 \u0438 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u044b \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u0438\u0437 OpenMeteo.",
        "examples": [
          "\u041a\u0430\u043a\u0430\u044f \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043e\u0437\u0434\u0443\u0445\u0430 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0411\u0443\u0434\u0435\u0442 \u043b\u0438 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0445\u043e\u043b\u043e\u0434\u043d\u043e \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0421\u0438\u043b\u044c\u043d\u044b\u0439 \u043b\u0438 \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u0435\u0442\u0435\u0440 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041a\u043e\u0433\u0434\u0430 \u0441\u043d\u043e\u0432\u0430 \u043f\u043e\u0439\u0434\u0451\u0442 \u0434\u043e\u0436\u0434\u044c \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0412\u043e \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u043b\u043d\u0446\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0412\u043e \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u043b\u043d\u0446\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041a\u0430\u043a\u0430\u044f \u0441\u0435\u0439\u0447\u0430\u0441 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041a\u0430\u043a\u043e\u0439 \u043f\u0440\u043e\u0433\u043d\u043e\u0437 \u043f\u043e\u0433\u043e\u0434\u044b \u043d\u0430 \u0434\u0432\u0430 \u0434\u043d\u0435\u0439 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u043e\u0431\u043b\u0430\u0447\u043d\u043e",
          "\u041a\u0430\u043a\u0430\u044f \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043e\u0437\u0434\u0443\u0445\u0430",
          "\u0411\u0443\u0434\u0435\u0442 \u043b\u0438 \u043f\u0440\u043e\u0445\u043b\u0430\u0434\u043d\u043e \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0438\u043b\u044c\u043d\u044b\u0439 \u0432\u0435\u0442\u0435\u0440 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041a\u043e\u0433\u0434\u0430 \u043d\u0430\u0447\u043d\u0451\u0442\u0441\u044f \u0434\u043e\u0436\u0434\u044c \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0412\u043e \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u043b\u043d\u0446\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f",
          "\u0412\u043e \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u043b\u043d\u0446\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f",
          "\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0433\u0440\u0430\u0434\u0443\u0441\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0437\u0430\u0432\u0442\u0440\u0430 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u041a\u0430\u043a\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0433\u043e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435\u0437\u0430\u0432\u0442\u0440\u0430 \u0432 \u041a\u0430\u0437\u0430\u043d\u0438",
          "\u0435\u0441\u0442\u044c \u043e\u0431\u043b\u0430\u043a\u0430 \u0437\u0430\u0432\u0442\u0440\u0430"
        ]
      },
      "sv-fi": {
        "name": "V\u00e4der",
        "description": "F\u00e5 v\u00e4derl\u00e4get, prognoser, v\u00e4ntad nederb\u00f6rd och mycket mer. Du kan ocks\u00e5 fr\u00e5ga om andra st\u00e4der i v\u00e4rlden. Aktuellt v\u00e4der och prognoser kommer fr\u00e5n OpenMeteo.",
        "examples": [
          "Vad \u00e4r luftfuktigheten just nu i Helsingfors",
          "\u00c4r det fuktigt idag",
          "Blir det kallt idag i Helsingfors",
          "Beh\u00f6ver jag jacka idag",
          "Bl\u00e5ser det mycket just nu i Helsingfors",
          "Hur h\u00e5rd \u00e4r vinden",
          "N\u00e4r kommer det att regna igen i Helsingfors",
          "N\u00e4r b\u00f6rjar det regna",
          "Hur dags g\u00e5r solen upp idag i Helsingfors",
          "N\u00e4r \u00e4r soluppg\u00e5ngen idag i Helsingfors",
          "Hur dags g\u00e5r solen ner idag i Helsingfors",
          "N\u00e4r \u00e4r solnedg\u00e5ngen idag i Helsingfors",
          "Vad \u00e4r temperaturen just nu i Helsingfors",
          "Vad blir temperaturen i kv\u00e4ll i Helsingfors",
          "Vad \u00e4r v\u00e4derprognosen f\u00f6r de kommande tv\u00e5 dagarna i Helsingfors",
          "Hur blir v\u00e4dret p\u00e5 tisdag i Helsingfors",
          "\u00e4r det idag soligt i Helsingfors",
          "\u00e4r det molnigt"
        ]
      },
      "sv-se": {
        "name": "V\u00e4der",
        "description": "F\u00e5 v\u00e4derl\u00e4get, prognoser, v\u00e4ntad nederb\u00f6rd och mycket mer. Du kan ocks\u00e5 fr\u00e5ga om andra st\u00e4der i v\u00e4rlden. Aktuellt v\u00e4der och prognoser kommer fr\u00e5n OpenMeteo.",
        "examples": [
          "Vad \u00e4r luftfuktigheten just nu i G\u00f6teborg",
          "Vilken luftfuktighet v\u00e4ntas i G\u00f6teborg",
          "Blir det kallt idag i G\u00f6teborg",
          "Blir det varmt i G\u00f6teborg",
          "Bl\u00e5ser det mycket just nu i G\u00f6teborg",
          "Blir det bl\u00e5sigt idag i G\u00f6teborg",
          "N\u00e4r kommer det att regna igen i G\u00f6teborg",
          "Hur l\u00e5ng tid tills regnet b\u00f6rjar idag i G\u00f6teborg",
          "Hur dags g\u00e5r solen upp idag i G\u00f6teborg",
          "Hur dags g\u00e5r solen upp",
          "Hur dags g\u00e5r solen ner idag i G\u00f6teborg",
          "Hur dags g\u00e5r solen ner",
          "Vad \u00e4r temperaturen just nu i G\u00f6teborg",
          "Hur m\u00e5nga grader blir det i natt",
          "Vad \u00e4r v\u00e4derprognosen f\u00f6r de kommande tv\u00e5 dagarna i G\u00f6teborg",
          "Vad \u00e4r prognosen f\u00f6r i kv\u00e4ll i G\u00f6teborg",
          "\u00e4r det molnigt",
          "v\u00e4ntas sol i G\u00f6teborg"
        ]
      },
      "tr-tr": {
        "name": "Hava Durumu",
        "description": "Hava durumunu, tahminleri, beklenen ya\u011f\u0131\u015f\u0131 ve daha fazlas\u0131n\u0131 \u00f6\u011frenin. D\u00fcnyan\u0131n ba\u015fka \u015fehirlerini de sorabilirsiniz. G\u00fcncel hava durumu ve tahminler OpenMeteo kaynakl\u0131d\u0131r.",
        "examples": [
          "\u015eu anda nem oran\u0131 ne kadar \u0130zmir i\u00e7in",
          "Bug\u00fcn hava so\u011fuk olacak m\u0131 \u0130zmir i\u00e7in",
          "\u015eu anda r\u00fczgar var m\u0131 \u0130zmir i\u00e7in",
          "Bir dahaki ya\u011fmur ne zaman ya\u011facak \u0130zmir i\u00e7in",
          "Bug\u00fcn g\u00fcne\u015f saat ka\u00e7ta do\u011fuyor \u0130zmir i\u00e7in",
          "Bug\u00fcn g\u00fcne\u015f saat ka\u00e7ta bat\u0131yor \u0130zmir i\u00e7in",
          "\u015eu anki s\u0131cakl\u0131k ka\u00e7 derece \u0130zmir i\u00e7in",
          "\u00d6n\u00fcm\u00fczdeki iki g\u00fcn i\u00e7in hava durumu nas\u0131l \u0130zmir i\u00e7in",
          "Bug\u00fcn hava g\u00fcne\u015fli mi \u0130zmir i\u00e7in",
          "Bug\u00fcn hava \u00e7ok nemli mi \u0130zmir i\u00e7in",
          "Bug\u00fcn hava serin olacak m\u0131 \u0130zmir i\u00e7in",
          "R\u00fczgar ne kadar kuvvetli \u0130zmir i\u00e7in",
          "Ya\u011fmur ne zaman ba\u015flayacak \u0130zmir i\u00e7in",
          "Bug\u00fcn g\u00fcne\u015f saat ka\u00e7ta do\u011fuyor",
          "Bug\u00fcn g\u00fcne\u015f saat ka\u00e7ta bat\u0131yor",
          "Yar\u0131n en fazla ka\u00e7 derece olacak \u0130zmir i\u00e7in",
          "\u00d6b\u00fcr g\u00fcn hava nas\u0131l olacak \u0130zmir i\u00e7in",
          "Bug\u00fcn ya\u011fmur ihtimali var m\u0131"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2021-06-08T08:00:33Z",
    "last_updated": "2025-07-30T16:46:48.043142Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-weather.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.1.18",
          "tested_at": "2026-10-04T11:22:55+00:00",
          "channel_pinned": true
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.0.6",
          "tested_at": "2026-10-04T11:08:53+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "1.5.5a3",
          "tested_at": "2026-10-30T09:28:45+00:00",
          "channel_pinned": true
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-white-noise",
    "skill_id": "ovos-skill-white-noise.andlo",
    "name": "White Noise",
    "description": "An ambient noise machine - white, pink, and brown noise for sleep or focus. Fully offline, all generated, nothing recorded.",
    "examples": [
      "play white noise",
      "play pink noise",
      "stop the noise"
    ],
    "tags": [
      "ambient",
      "sleep",
      "focus",
      "white noise",
      "relaxation",
      "daily"
    ],
    "category": "Daily",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-white-noise/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-white-noise",
    "package_name": "ovos-skill-white-noise",
    "pypi_version": "0.0.3",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-white-noise"
      }
    ],
    "languages": [
      "da-dk",
      "en-us"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Hvid St\u00f8j",
        "description": "En ambient-lydmaskine - hvid, pink og brun st\u00f8j til s\u00f8vn eller fokus. Fuldst\u00e6ndig offline, alt genereret, ingen optagelser.",
        "examples": [
          "spil hvid st\u00f8j",
          "spil pink st\u00f8j",
          "stop st\u00f8jen"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-16T17:15:25Z",
    "last_updated": "2026-10-01T10:11:10.807588Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-white-noise.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads \u00b7 2/7 golden",
          "state": "warn",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:23:21+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 7
          }
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.3",
          "tested_at": "2026-10-04T11:12:44+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 2/7 golden",
          "state": "warn",
          "level": 2,
          "stop": "stops",
          "version_tested": "0.0.3",
          "tested_at": "2026-10-30T09:40:39+00:00",
          "channel_pinned": false,
          "golden": {
            "hit": 2,
            "counted": 7
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-wiki-offline",
    "skill_id": "ovos-skill-wiki-offline.andlo",
    "name": "Wiki Offline",
    "description": "Offline general-knowledge lookup covering Wikipedia's ~10,000 Level 4 Vital Articles. English, Spanish, and French are native; any other language is answered via on-demand offline translation. No internet connection needed.",
    "examples": [
      "what is photosynthesis",
      "who was Marie Curie",
      "tell me about the Eiffel Tower"
    ],
    "tags": [
      "wikipedia",
      "knowledge",
      "offline",
      "reference",
      "information"
    ],
    "category": "Information",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-wiki-offline/main/icon.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-wiki-offline",
    "package_name": "ovos-skill-wiki-offline",
    "pypi_version": "0.0.7",
    "license": "GPL-3.0",
    "archived": false,
    "author": "andlo",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 0,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "offline",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-wiki-offline\n\nThat's enough for English, Spanish, and French. **For any other\nlanguage** (German, Danish, or anything else), also install and\nconfigure a translation plugin - see [Language support](#language-support)\nabove for why this skill doesn't bundle one itself. Recommended,\nfully-local option:\n\npip install ovos-translate-plugin-nllb\n\nThen add this to `~/.config/mycroft/mycroft.conf` (or wherever your\nOVOS config lives):\n\n{\n  \"language\": {\n    \"translation_module\": \"ovos-translate-plugin-nllb\",\n    \"ovos-translate-plugin-nllb\": {\n      \"model\": \"nllb-200_600M_int8\"\n    }\n  }\n}\n\nRestart `ovos-core` after installing/configuring. The model\n(~600MB) downloads automatically on first use and takes roughly 40\nseconds to load the first time a translated answer is reque\u2026"
      }
    ],
    "languages": [
      "da-dk",
      "de-de",
      "en-us",
      "es-es",
      "fr-fr"
    ],
    "locale_content": {
      "da-dk": {
        "name": "Wiki Offline",
        "description": "Offline opslag i almen viden, der d\u00e6kker Wikipedias ~10.000 vitale artikler. Engelsk, spansk og fransk er indbygget; alle andre sprog besvares via offline-overs\u00e6ttelse. Ingen internetforbindelse n\u00f8dvendig.",
        "examples": [
          "hvad er fotosyntese",
          "hvem var Marie Curie",
          "fort\u00e6l mig om Eiffelt\u00e5rnet"
        ]
      },
      "de-de": {
        "name": "Wiki Offline",
        "description": "Offline-Nachschlagewerk fuer Allgemeinwissen, das Wikipedias rund 10.000 vitale Artikel abdeckt. Englisch, Spanisch und Franzoesisch sind nativ; jede andere Sprache wird per Offline-Uebersetzung beantwortet. Keine Internetverbindung noetig.",
        "examples": [
          "was ist photosynthese",
          "wer war Marie Curie",
          "erzaehl mir vom Eiffelturm"
        ]
      },
      "es-es": {
        "name": "Wiki Offline",
        "description": "Consulta de conocimiento general sin conexi\u00f3n, que cubre unos 10.000 art\u00edculos vitales de Wikipedia. Ingl\u00e9s, espa\u00f1ol y franc\u00e9s son nativos; cualquier otro idioma se responde mediante traducci\u00f3n offline. No requiere conexi\u00f3n a internet.",
        "examples": [
          "qu\u00e9 es la fotos\u00edntesis",
          "qui\u00e9n fue Marie Curie",
          "h\u00e1blame de la Torre Eiffel"
        ]
      },
      "fr-fr": {
        "name": "Wiki Offline",
        "description": "Consultation de connaissances g\u00e9n\u00e9rales hors ligne, couvrant environ 10 000 articles vitaux de Wikip\u00e9dia. L'anglais, l'espagnol et le fran\u00e7ais sont natifs ; toute autre langue est trait\u00e9e par traduction hors ligne. Aucune connexion internet requise.",
        "examples": [
          "qu'est-ce que la photosynth\u00e8se",
          "qui \u00e9tait Marie Curie",
          "parle-moi de la Tour Eiffel"
        ]
      }
    },
    "in_ovos_localize": false,
    "repo_created_at": "2026-08-17T20:39:40Z",
    "last_updated": "2026-08-18T13:53:56.170148Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-wiki-offline.andlo",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T11:14:31+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-04T10:54:30+00:00",
          "channel_pinned": false
        },
        "alpha": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.0.7",
          "tested_at": "2026-10-30T09:40:52+00:00",
          "channel_pinned": false
        }
      }
    }
  },
  {
    "id": "OpenVoiceOS-ovos-skill-wikihow",
    "skill_id": "ovos-skill-wikihow.openvoiceos",
    "name": "WikiHow",
    "description": "How to do nearly everything.",
    "examples": [
      "how to boil an egg",
      "how do i get my dog to stop barking"
    ],
    "tags": [
      "daily",
      "information"
    ],
    "category": "Daily",
    "icon": "https://raw.githubusercontent.com/OpenVoiceOS/ovos-skill-wikihow/dev/logo.png",
    "icon_source": "repo",
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-wikihow",
    "package_name": "ovos-skill-wikihow",
    "pypi_version": "0.3.3",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Persona",
    "type_group": "Plugin",
    "stars": 4,
    "forks": 8,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-wikihow"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "WikiHow",
        "description": "Com fer gaireb\u00e9 qualsevolcosa",
        "examples": [
          "com bullir un ou",
          "Com puc aconseguir que el meu gos deixi de bordar?"
        ]
      },
      "da-dk": {
        "name": "WikiHow",
        "description": "S\u00e5dan g\u00f8r du n\u00e6sten alt.",
        "examples": [
          "hvordan koger man et \u00e6g",
          "hvordan f\u00e5r jeg min hund til at stoppe med at g\u00f8"
        ]
      },
      "de-de": {
        "name": "WikiHow",
        "description": "Wie man fast alles macht.",
        "examples": [
          "Wie man ein Ei kocht",
          "wie bringe ich meinen Hund dazu, mit dem Bellen aufzuh\u00f6ren"
        ]
      },
      "es-co": {
        "name": "WikiHow",
        "description": "C\u00f3mo hacer casi todo.",
        "examples": [
          "c\u00f3mo hervir un huevo",
          "busca wikihow para pizza"
        ]
      },
      "es-es": {
        "name": "WikiHow",
        "description": "C\u00f3mo hacer casi todo.",
        "examples": [
          "C\u00f3mo hervir un huevo",
          "C\u00f3mo puedo hacer que mi perro deje de ladrar"
        ]
      },
      "eu-es": {
        "name": "WikiHow",
        "description": "Ia edozer nola egin jakiteko.",
        "examples": [
          "nola egosi arrautza bat",
          "nola egin nire zakurrak zaunkarik ez egiteko"
        ]
      },
      "fa-ir": {
        "name": "WikiHow",
        "description": "\u0686\u06af\u0648\u0646\u0647 \u062a\u0642\u0631\u06cc\u0628\u0627\u064b \u0647\u0631 \u06a9\u0627\u0631\u06cc \u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u062f\u0647\u06cc\u0645.",
        "examples": [
          "\u0686\u06af\u0648\u0646\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0645 \u06cc\u06a9 \u062a\u062e\u0645 \u0645\u0631\u063a \u0622\u0628 \u067e\u0632 \u06a9\u0646\u0645",
          "\u062c\u0633\u062a\u062c\u0648 \u067e\u06cc\u062a\u0632\u0627 \u062f\u0631 wikihow"
        ]
      },
      "fr-fr": {
        "name": "WikiHow",
        "description": "Des explications \u00e9tape par \u00e9tape pour les questions pratiques du quotidien.",
        "examples": [
          "Comment faire cuire un oeuf dur ?",
          "Comment faire pour que mon chien arr\u00eate d'aboyer ?"
        ]
      },
      "gl-es": {
        "name": "WikiHow",
        "description": "Como facer case calquera cousa.",
        "examples": [
          "como ferver un ovo",
          "como consigo que o meu can deixe de ladrar"
        ]
      },
      "it-it": {
        "name": "WikiHow",
        "description": "Come fare quasi qualsiasi cosa.",
        "examples": [
          "come si fa bollire un uovo",
          "come faccio a far smettere di abbaiare il mio cane"
        ]
      },
      "kab": {
        "name": "WikiHow",
        "description": "Amek ara nexdem qrib kullec.",
        "examples": [
          "amek ara nsellew tamellalt",
          "amek ara s\u1e25ebse\u0263 aqjun-inu ad yeqqar"
        ]
      },
      "nl-nl": {
        "name": "WikiHow",
        "description": "Hoe je bijna alles doet.",
        "examples": [
          "hoe kook je een ei",
          "hoe zorg ik dat mijn hond stopt met blaffen"
        ]
      },
      "pl-pl": {
        "name": "WikiHow",
        "description": "Jak zrobi\u0107 niemal wszystko.",
        "examples": [
          "w jaki spos\u00f3b ugotowa\u0107 jajko",
          "wyszukaj wiki-how pizza"
        ]
      },
      "pt-br": {
        "name": "WikiHow",
        "description": "Como fazer quase tudo.",
        "examples": [
          "como cozinhar um ovo",
          "como fa\u00e7o meu cachorro parar de latir"
        ]
      },
      "pt-pt": {
        "name": "WikiHow",
        "description": "Como fazer quase tudo.",
        "examples": [
          "como cozer um ovo",
          "como fa\u00e7o para o meu c\u00e3o parar de ladrar"
        ]
      },
      "ru-ru": {
        "name": "WikiHow",
        "description": "\u041a\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435.",
        "examples": [
          "\u041a\u0430\u043a \u0441\u0432\u0430\u0440\u0438\u0442\u044c \u044f\u0439\u0446\u043e",
          "\u043f\u043e\u0438\u0441\u043a \u043f\u0438\u0446\u0446\u044b \u043d\u0430 wikihow"
        ]
      },
      "sv-se": {
        "name": "WikiHow",
        "description": "Hur man g\u00f6r n\u00e4stan allt.",
        "examples": [
          "hur kokar man ett \u00e4gg",
          "hur f\u00e5r jag min hund att sluta sk\u00e4lla"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2018-01-23T09:41:23Z",
    "last_updated": "2025-06-08T22:04:04.795081Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-word-of-the-day",
    "skill_id": "ovos-skill-word-of-the-day.openvoiceos",
    "name": "Word Of The Day",
    "description": "Speak the word of the day and spell it on request.",
    "examples": [
      "what was yesterday's word",
      "how do you spell that",
      "what is the word of the day"
    ],
    "tags": [
      "word-of-the-day",
      "dictionary",
      "vocabulary",
      "daily"
    ],
    "category": "Daily",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-word-of-the-day",
    "package_name": "ovos-skill-word-of-the-day",
    "pypi_version": "0.2.5",
    "license": "Apache-2.0",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 3,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "Install the skill with pip:\n\npip install ovos-skill-word-of-the-day"
      }
    ],
    "languages": [
      "ca-es",
      "da-dk",
      "de-de",
      "en-us",
      "es-co",
      "es-es",
      "eu-es",
      "fa-ir",
      "fr-fr",
      "gl-es",
      "it-it",
      "kab",
      "nl-nl",
      "pl-pl",
      "pt-br",
      "pt-pt",
      "ru-ru",
      "sv-se"
    ],
    "locale_content": {
      "ca-es": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "lletreja-ho"
        ]
      },
      "da-dk": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "hvad var g\u00e5rsdagens ord",
          "stav det",
          "dagens ord"
        ]
      },
      "de-de": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "was war das wort des tages gestern",
          "buchstabiere das",
          "was ist das wort des tages"
        ]
      },
      "es-co": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "cu\u00e1l era la palabra de ayer",
          "deletr\u00e9ala",
          "palabra del d\u00eda"
        ]
      },
      "es-es": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "cu\u00e1l era la palabra de ayer",
          "deletr\u00e9ala",
          "palabra del d\u00eda"
        ]
      },
      "eu-es": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "esan atzoko hitza",
          "letreiatu ozen",
          "eman eguneko hitza"
        ]
      },
      "fa-ir": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "\u06a9\u0644\u0645\u0647 \u062f\u06cc\u0631\u0648\u0632 \u0631\u0627 \u0628\u0647 \u0645\u0646 \u0628\u06af\u0648",
          "\u0686\u0637\u0648\u0631 \u0647\u062c\u06cc \u0645\u06cc \u0634\u0648\u062f",
          "\u06a9\u0644\u0645\u0647 \u0631\u0648\u0632"
        ]
      },
      "fr-fr": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "quel \u00e9tait le mot d'hier",
          "\u00e9pelle-le",
          "mot du jour"
        ]
      },
      "gl-es": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "cal foi a palabra de onte",
          "deletr\u00e9ao",
          "palabra do d\u00eda"
        ]
      },
      "it-it": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "dimmi la parola di ieri",
          "scandiscila",
          "qual \u00e8 la parola di oggi"
        ]
      },
      "kab": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "dacu-t wawal n yi\u1e0delli",
          "sefru-t s wawalen",
          "awal n wass"
        ]
      },
      "nl-nl": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "vertel me het woord van gisteren",
          "spel het uit",
          "wat is het woord van de dag"
        ]
      },
      "pl-pl": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "powiedz mi wczorajsze s\u0142owo",
          "jak to si\u0119 pisze",
          "podaj mi s\u0142owo dnia"
        ]
      },
      "pt-br": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "me diga a palavra de ontem",
          "soletra pra mim",
          "me d\u00ea a palavra do dia"
        ]
      },
      "pt-pt": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "qual era a palavra de ontem",
          "soletra isso",
          "palavra di\u00e1ria"
        ]
      },
      "ru-ru": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "\u0441\u043a\u0430\u0436\u0438 \u043c\u043d\u0435 \u0432\u0447\u0435\u0440\u0430\u0448\u043d\u0435\u0435 \u0441\u043b\u043e\u0432\u043e",
          "\u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0438\u0448\u0435\u0442\u0441\u044f",
          "\u043a\u0430\u043a\u043e\u0435 \u0441\u043b\u043e\u0432\u043e \u0434\u043d\u044f"
        ]
      },
      "sv-se": {
        "name": "Word Of The Day",
        "description": "Speak the word of the day and spell it on request.",
        "examples": [
          "ber\u00e4tta g\u00e5rdagens ord",
          "stava det \u00e5t mig",
          "vad \u00e4r dagens ord"
        ]
      }
    },
    "in_ovos_localize": true,
    "repo_created_at": "2024-03-29T19:16:41Z",
    "last_updated": "2026-05-12T22:56:55.036266Z",
    "is_new_repo": false,
    "is_recently_updated": false,
    "compat": {
      "badge_id": "ovos-skill-word-of-the-day.openvoiceos",
      "channels": {
        "stable": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.5",
          "tested_at": "2026-10-04T11:15:06+00:00",
          "channel_pinned": false
        },
        "testing": {
          "label": "\u2713 loads",
          "state": "pass",
          "level": 2,
          "version_tested": "0.2.5",
          "tested_at": "2026-10-04T10:55:05+00:00",
          "channel_pinned": true
        },
        "alpha": {
          "label": "\u2713 loads \u00b7 7/10 golden",
          "state": "warn",
          "level": 2,
          "version_tested": "0.8.0a2",
          "tested_at": "2026-10-30T09:41:01+00:00",
          "channel_pinned": true,
          "golden": {
            "hit": 7,
            "counted": 10
          }
        }
      }
    }
  },
  {
    "id": "andlo-ovos-skill-worldtales",
    "skill_id": "ovos-skill-worldtales.andlo",
    "name": "World Tales",
    "description": "Classic fairy tales and folklore from around the world, starting with Andrew Lang's Fairy Books, sourced from Project Gutenberg.",
    "examples": [
      "tell me a story about the twelve dancing princesses",
      "read me a fairy tale",
      "continue the story"
    ],
    "tags": [
      "entertainment",
      "stories",
      "fairytales",
      "folklore",
      "andrewlang",
      "gutenberg"
    ],
    "category": "Entertainment",
    "icon": "https://raw.githubusercontent.com/andlo/ovos-skill-worldtales/main/world-tales-512.png",
    "icon_source": "skill.json",
    "icon_color": null,
    "source": "https://github.com/andlo/ovos-skill-worldtales",
    "package_name": "ovos-skill-worldtales",
    "pypi_version": null,
    "license": "GPL-3.0",
    "archived": true,
    "author": "andlo",
    "tier": 2,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 0,
    "forks": 0,
    "open_issues": 2,
    "on_pypi": false,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos-skill-worldtales"
      }
    ],
    "languages": [
      "en-us"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2026-07-21T00:17:24Z",
    "last_updated": "2026-07-21T12:56:15Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-wyoming-ovos-stt",
    "skill_id": null,
    "name": "wyoming-ovos-stt",
    "description": "expose OVOS STT plugins via wyoming for usage with the voice pee",
    "examples": [],
    "tags": [
      "speech-to-text",
      "stt",
      "tigregotico"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/wyoming-ovos-stt",
    "package_name": "wyoming_ovos_stt",
    "pypi_version": "0.2.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-09T12:29:41Z",
    "last_updated": "2026-06-23T04:29:35.516734Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-wyoming-ovos-tts",
    "skill_id": null,
    "name": "wyoming-ovos-tts",
    "description": "expose OVOS TTS plugins via wyoming for usage with the voice pee",
    "examples": [],
    "tags": [
      "text-to-speech",
      "tigregotico",
      "tts"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/wyoming-ovos-tts",
    "package_name": "wyoming_ovos_tts",
    "pypi_version": "0.2.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 2,
    "open_issues": 3,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-09T14:18:27Z",
    "last_updated": "2026-06-23T04:29:45.795504Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-wyoming-ovos-wakeword",
    "skill_id": null,
    "name": "wyoming-ovos-wakeword",
    "description": "expose OVOS wakeword plugins via wyoming for usage with the voice pee",
    "examples": [],
    "tags": [
      "tigregotico",
      "wake-word"
    ],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/wyoming-ovos-wakeword",
    "package_name": "wyoming_ovos_wakeword",
    "pypi_version": "0.2.0",
    "license": "MIT",
    "archived": false,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 1,
    "forks": 0,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2025-04-09T15:40:35Z",
    "last_updated": "2026-06-23T04:29:56.566972Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ovos-skill-youtube-music",
    "skill_id": null,
    "name": "Youtube Music Skill",
    "description": null,
    "examples": [
      "play Ant\u00f3nio Varia\u00e7\u00f5es"
    ],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ovos-skill-youtube-music",
    "package_name": "ovos-skill-youtube-music",
    "pypi_version": "0.1.7",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Skill",
    "type_group": "Skill",
    "stars": 1,
    "forks": 7,
    "open_issues": 9,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [
      "de-de",
      "en-us",
      "fr-fr",
      "it-it"
    ],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-10-13T21:30:39Z",
    "last_updated": "2025-06-08T22:02:57.329915Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-zzz-old-ovos-utils",
    "skill_id": null,
    "name": "zzz-old-ovos-utils",
    "description": "collection of simple utilities for use across the mycroft ecosystem",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/zzz-old-ovos-utils",
    "package_name": "ovos_utils",
    "pypi_version": "0.8.5",
    "license": "Apache-2.0",
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 1,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 4,
    "forks": 2,
    "open_issues": 4,
    "on_pypi": true,
    "has_release": true,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": "online",
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [
      {
        "heading": "Install",
        "content": "pip install ovos_utils"
      }
    ],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2020-10-08T21:36:53Z",
    "last_updated": "2026-03-11T04:28:57.691708Z",
    "is_new_repo": false,
    "is_recently_updated": false
  },
  {
    "id": "OpenVoiceOS-ZZZ-ovos_enclosure",
    "skill_id": null,
    "name": "ZZZ-ovos_enclosure",
    "description": "Enclosure module",
    "examples": [],
    "tags": [],
    "category": "Other",
    "icon": null,
    "icon_source": null,
    "icon_color": null,
    "source": "https://github.com/OpenVoiceOS/ZZZ-ovos_enclosure",
    "package_name": "neon-enclosure",
    "pypi_version": "1.8.0",
    "license": null,
    "archived": true,
    "author": "OpenVoiceOS",
    "tier": 2,
    "component_type": "Tool",
    "type_group": "Tool",
    "stars": 0,
    "forks": 4,
    "open_issues": 1,
    "on_pypi": true,
    "has_release": false,
    "in_ovos_store": false,
    "pipeline": null,
    "connectivity": null,
    "requires_api_key": false,
    "settings_fields": [],
    "setup_notes": [],
    "languages": [],
    "locale_content": {},
    "in_ovos_localize": false,
    "repo_created_at": "2021-04-06T17:02:43Z",
    "last_updated": "2025-03-18T16:36:28.053345Z",
    "is_new_repo": false,
    "is_recently_updated": false
  }
]
