mycroft-core icon indicating copy to clipboard operation
mycroft-core copied to clipboard

Basic explanation for code?

Open Akul2010 opened this issue 2 years ago • 7 comments

I want to help with this, but as a new developer, it's a little hard for me to do so, because the code seems very overwhelming. Is there anything on the Mycroft website that can help me, or anyone willing to help me? I'm especially interested in the plugin system Mycroft uses, as in the plugin loader.

Akul2010 avatar Aug 18 '23 19:08 Akul2010

This might seem a little strange, but I’m gonna start you with a link to the Mycroft forums explaining the current situation:

https://community.mycroft.ai/t/faq-ovos-neon-and-the-future-of-the-mycroft-voice-assistant/13496

That post is going to explain that MycroftAI has collapsed, and some descendant projects have taken over most of the ecosystem.

@OpenVoiceOS (OVOS) is home base (but read the FAQ first, it’s a lot more informative than this drive-by comment)

They are works in progress, but OVOS maintains comprehensive technical docs as well as our user-facing docs.

And we’re all about our plugin system!

The technical docs are here but don’t correspond to the version of Mycroft at this repository. The FAQ tells all.

If we can be of more direct assistance getting you going, feel free to hit me back here, or find us at the Mycroft forum, or in our chats linked via the FAQ, or via the OVOS GitHub org. Whatever’s comfortable.

ChanceNCounter avatar Aug 18 '23 23:08 ChanceNCounter

Here is my voice assistant: https://github.com/Akul-AI/akulai

I'm trying to make some kind of plugin loader similar to Mycroft, OVOS - you get the idea. But, I've also been able to implement a basic system where you can use Perl, NodeJS, or Python. I'm just trying to improve on that. But anyway, thank you for your reply!

Akul2010 avatar Aug 19 '23 02:08 Akul2010

https://openvoiceos.github.io/ovos-technical-manual/OPM/ (note additional pages providing detail on specific categories of plugin)

Implementation and invocation on the Assistant side is separated by concern, so it's probably easiest to search ovos-core for 'plugin' (I think you'll find definitions or calls in 4 files, including plugin.py, but that's without checking)

ChanceNCounter avatar Aug 19 '23 18:08 ChanceNCounter

It seems the skill_manager.py file is the front that connects to the plugins? Also, is there anywhere else I could talk to you about this? Since this is getting a little unrelated to Mycroft now, I just wanted to continue this somewhere else.

Akul2010 avatar Aug 20 '23 01:08 Akul2010

Ovos plugins can be used standalone you only need the opm package, ovos technical manual includes some examples for standalone usage of plugins. You can reach us on our matrix chat if you prefer live conversations with the team and the community. This is still related to mycroft as we are the continuation of the original project and our plugins are also backwards compatible.

JarbasAl avatar Aug 20 '23 02:08 JarbasAl

To save some clicks:

https://matrix.to/#/%23openvoiceos-development%3Amatrix.org

or #openvoiceos-development:matrix.org from a software client. We’ve got a bunch of rooms, but that’s the one with all the current architects active

ChanceNCounter avatar Aug 20 '23 17:08 ChanceNCounter

Where do the plugins get registered? Do they even get registered, or is it just dynamically loaded?

Akul2010 avatar Sep 18 '23 21:09 Akul2010