Grimm Tales (provider)
A provider skill for ovos-common-reading-pipeline-plugin, delivering the Brothers Grimm's fairy tales.
"He who is too well off is always longing for something new." — from "The Mouse, the Bird, and the Sausage," Brothers Grimm
This skill has no standalone voice interface. It registers no intents and never speaks. It only answers ovos.common_reading.* bus messages, so you also need ovos-common-reading-pipeline-plugin installed and added to your pipeline config for it to be useful at all.
Install
pip install ovos-skill-grimm-tales ovos-common-reading-pipeline-plugin
Languages
Sourced live from grimmstories.com, which supports 8 languages here: EN, DA, DE, ES, FR, IT, NL, PT.
Grimmstories.com actually offers 20 languages total - the other 12 (FI, HU, VI, TR, PL, RO, RU, UK, EL, ZH, JA, KO) aren't included here yet since they fall outside OVOS's actively-tracked language set. Portuguese is Grimm-only among the 8 supported here - no equivalent Andersen source exists in Portuguese.
This provider does not translate. It loads only for the languages
the installation is configured for - the device's own lang plus
secondary_langs in mycroft.conf - that it supports. If none of them
is one of the 8, it never loads at all: initialize() builds no
index, registers no bus events, and logs a clear message rather than
silently serving English (or any other) content.
For each configured, supported language it builds its own story index,
and each search is answered from the index of the language it was made
in: the pipeline plugin's lang field, else the language of the session
the search came from, else the device's own. A single device builds one
index, as before. A HiveMind hub serving users in several languages lists
them in secondary_langs:
{
"lang": "en-US",
"secondary_langs": ["da-DK", "de-DE"]
}
A search in a language the installation doesn't serve gets no answer at all. A search with no title ("tell me a story") gets a random story at 0.9, and titles match regardless of case.
Author/collection name and collection_hint aliases are also
per-language, not hardcoded English - "the Brothers Grimm" only makes
sense to announce on an English device; a Danish device hears "Brødrene
Grimm" instead, and a Danish user saying "brødrene grimm" as a
collection_hint matches correctly (not just by luck, the way it would
have if we'd only shipped English aliases). See
locale/<lang>/collection.voc (aliases) and
locale/<lang>/collection_meta.json (author/collection name), loaded
via OVOS's own resource file resolution rather than Python constants -
see ovos-common-reading-pipeline-plugin#26
for the full reasoning. This also means every supported language has
its own locale/<lang>/skill.json, so the Skills Store can see this
provider genuinely supports 8 languages, not just English.
Collection hints
Responds to collection_hint values in the device's own language -
e.g. "grimm"/"the brothers grimm" on English, "grimm"/"brødrene grimm"
on Danish, "grimm"/"die gebrüder grimm" on German - matched fuzzily
against that language's own alias list (see locale/<lang>/collection.voc).
Content type
Identifies as content_type: "story" or "tale". A search with a
content_type hint for anything else (e.g. "article", "poem") gets no
response from this provider.
Credits
Content sourced from grimmstories.com. Scraping/caching logic ported from ovos-skill-fairytales and ovos-skill-andersen-tales.
Category
Entertainment
Tags
#stories #fairytales #grimm #provider
Metadata
Release files for ovos-skill-grimm-tales 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ovos_skill_grimm_tales-0.1.6.tar.gz | 31.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ovos_skill_grimm_tales-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 63.2 kB
Release files / ovos_skill_grimm_tales-0.1.6.tar.gz
| Download URL | ovos_skill_grimm_tales-0.1.6.tar.gz |
|---|---|
| Size | 31.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
667ac6219ab3e257edc2f2c4471da75fa0b8e12d7e55114306e3de0c3961f368
|
|
BLAKE2b-256 checksum How to use checksums |
0987b0bd441c63490a01a9bbafd96d5561dabfe185990d712d6d856d94ded7d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / ovos_skill_grimm_tales-0.1.6-py3-none-any.whl
| Download URL | ovos_skill_grimm_tales-0.1.6-py3-none-any.whl |
|---|---|
| Size | 31.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08c0416d0172f5ca4966003ea6f31969a4410e11934bace9ff2b335a4f96af11
|
|
BLAKE2b-256 checksum How to use checksums |
4ca8c4aa53532d0b35178559ec1acb2076c2ca93e7ccb257196abe0d3f685d14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency log