I don’t know if this is the expected behavior, or as it seems a kind of bug for the site https://account.mycroft.ai/skills
Most of the skills listed there -not all of them- are listed twice, one with a gear icon on it and without the gear icon.
It doesn’t seems to be important, because when I expand the skill, the same options are shown.
Here, an example of some skills not duplicated there.
Same issue on my account. Would like to clean up if I can.
Thanks for flagging this, we had a similar issue after the release of the backend that we thought we caught. Chris is looking into this now.
And I know this is not the place nor the time to ask, but what to you think about a search box on top of the skill page to filter them and show just those matching the input search? (an AJAX textbox would be even better, so no “search” button would be needed)
Besides, I miss a feature on skills page configuration showing where the skill is installed (plasma, mark 1, etc) and letting configure the skill globally or per device, and finally, let uninstall the skill globally or per device as well.
Yeah, I think a filter rather than search field would be good. Got a few bugs to squash before we get to the feature requests, but will definitely add that to the list. The uninstall button is definitely on the list already too.
In terms of which device the Skill is installed on, the device name should be displayed like so:
Is that not the case on your Skill settings?
It would be good to have the option of a single global setting to override all the individual devices when you want to make one consistent change across them all. I know we’ve discussed this internally, but I’ll make sure that it’s on the feature request list.
On my side, I had to remove all my devices when I received my Qbo Robot with Mycroft, so I just have one Mark 1 at the moment and skills web page says “installed in all devices”.
Let me find a moment to install mycroft on my job’s computer to see if then it works as you show.
Well, I’ve installed mycroft on my workplace’s computer. Now instead of “all devices” appears Mark I or the computer’s hosntame… a bit randomly, I would say.
For example, the Jokes skills appears as installed just on Mark I, when I’ve just ran it on my computer. (I think that is the duplicated bug reported before, but now, as I have more than one device, it takes the name of the first one, in my case, the Mark I)
There are other skills, but, that shows a bit better, because it shows a tab with a “Version” label (which IMO should be the device’s name).
Other skills shows just fine (i.e.: not duplicated and with the proper device separator to configure independently)
or just one card and saying “installed on all devices”
Well, in general, I think this frontend needs a bit of love
As you said, a filter rather than a search field is a feature request - presumably logged elsewhere. I would just like to clarify the difference between search and autocomplete (which is inadequate). The question is whether emby, playback control, and pandora would show up when the user types [music]. It turns out that I recently implemented a search+autocomplete realtime search functionality on a website I maintained, and I used the xapian library to do it. The server is an 12-year old machine running apache+python that is able to answer search requests in about 50ms, and has features that would allow you to type something like [play mu] and have it look for documents that contain the word play as well as terms that start with “mu”. This way it hits documents that contain the words “play” and “music” before the user even finishes typing “music”. A simplistic autocomplete would fail in this case.
Search ranking is much harder than people realize, and you cannot always guarantee that the top 10 results will contain what the user is looking for. It needs to fall back to search when the user hits the enter key.
I think we all agree that there is no need for a search box here, just a filter box, because we’re on our installed skills, so we don’t have the need to browse and discover new skills and we already know the name of the skill we want to configure… and sure, we can use Ctrl+F and use the browser’s builtin search, but a filter would be more user friendly.
So the idea was far more simplistic. Instead of scroll down aaaaall the skills, if I would like to configure “pandora”, just typing “pa” should redraw those cards
And by typing an extra “n” would show just the pandora skill
With the same logic, typing “nt” would show
That should be lightning fast.
But if we use a search box, instead of filter just by name one can search “podcasts” (a word shown in the description) to configure the Latest News Skill, or “Celsius” (a word shown in a dropdown as an option) to configure the Weather Skill. There are pros and cons, I guess we can sacrifice speed for usefulness and code reuse.
We should be able to filter across multiple fields near instantaneously given we are using Angular for the UI and are talking about a few hundred elements at most.
Actually prioritising results is another step that we probably don’t need for the Skill Settings, but will be needed in the Marketplace as it continues to grow.
Any Angular devs in the house?
The terms “filter box” or “search box” are somewhat imprecise. The real question is what kind of matching is done, and whether a roundtrip to the server is required or the data for every skill is fetched to the client and the matching is done there. I have implemented a roundtrip to the server using xapian on the server side, and the measured time was about 100ms. This is below the threshold of human-perceived delay, and has the advantage that you can perform search with spell correction, stemming, prefix matching, etc. Given the small number of skills that have been placed in the store, it’s probably overkill. A simplistic approach is probably appropriate given that mycroft has so many other needs.
Turning ontopic, the duplicated issues seems to be resolved on my side. Now I see just one card for each skill