SkillKit is a small library for writing Thalovant skills without copying the plumbing every skill needs. OVOS still owns intent routing, speech, sessions, and scheduling; SkillKit gives your code the pieces around them. This page is the map. Pick what you want to do, and it names the helper and the page that shows it working.
| You want to | Use | Shown in |
|---|
| Read the words, the language, or the location | self.utterance, self.lang_of, self.location_of | What you can call |
| Match a keyword people inflect (“logs”, “logging”) | self.mentions, self.mentioned_term | What you can call |
| Check a whole phrase against an intent file | locale_resources.matches_literal_intent | Lesson 2 of the quiz |
| Check alternative transcripts | message.utterances | Read alternative transcripts |
| Write optional phrases and slots | .intent templates and thalovant-skillkit check | Write intent phrases |
| Compare text the way vocabulary files are compared | fold, fold_words, strip_accents | What you can call |
| You want to | Use | Shown in |
|---|
| Pick a translated line, with placeholders | self.dialog("name", lang, data) | Lesson 2 of the quiz |
| Add pauses or pronunciation hints | self.dialog, .ssml twins, ssml.say, ssml.digits | Add pauses and pronunciation |
| Vary replies without repeating | self.speak_varied_dialog | Find sounds once |
| Serve a regional variant without a second translation | locale/regional.json and thalovant-skillkit locales --write | Support regional variations |
| Say a date, time, or duration for ears and for a screen | moments.date_text, time_text, duration_text, speak_with_written | Say a date or time both ways |
| Read one skill setting safely | self.setting("key", default) | What you can call |
| You want to | Use | Shown in |
|---|
| Test without a running assistant | testing.message, testing.FakeBus, preview_reply | Test it |
| Test through the real OVOS bus | skill_harness, managed_minicroft, capture_turn | Exercise the real OVOS bus |
| Start a project | thalovant-skillkit new | Start from a working skill |
| Check resources, and that no other skill owns your phrases | thalovant-skillkit check | Ship it |
| Check that the built package carries its files | thalovant-skillkit check-artifacts | Check what you built |
Recognising which skill a sentence belongs to, turning text into speech, keeping a session alive, and running timers and alarms are OVOS’s jobs. self.speak, self.speak_dialog, self.play_audio, the intent decorators, and the scheduler all keep working exactly as they do in any OVOS skill.
The SkillKit reference has every signature and return value.