-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: help command #56
feat: help command #56
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good but I worry how this will work in practice because partners won't set description and example.
I imagine in the future we would have to query each plugin - this can be part of the SDK which setups an endpoint to return name, description and usage
It could also be a simple |
@whilefoo Agreed. Plus, if plugins handled their own help output, we could get more in depth details about a specific command. Also as @0x4007 mentioned it's not so nice to have commands that are merged together (related issue: #58) @rndquu a file is a great idea, endpoints would work great only for Workers. Maybe we should add something to parse it and make sure it's required and valid, maybe an Action checking for its content on push or something similar to ensure its validity. |
https://www.perplexity.ai/search/github-actions-adding-eSszNo2lRG2n2SnPBvHeuw :
|
Added basic command / description with the same content as we currently display for these commands in the configuration in this commit. |
# - name: "Query user"
# description: "Returns the user's wallet, access, and multiplier information."
command: "/query"
# example: "/query @user"
uses: So will these eventually be relocated and hosted by the plugin itself? Why not just read some type of manifest.json, just like how Google Chrome extensions do it? @gentlementlegen |
@0x4007 That can be an option indeed. It could be a manifest, a yaml, or any format that we can read and parse easily. The main thing is to make it accessible easily to the kernel for both Actions and Workers. Because workers can easily provide an endpoint distributing that content, and Actions can directly point to the file. |
I think that it should be exposed at |
It seems to be an overkill for plugins that work only as github actions to maintain a separate endpoint for a single file. It's easier to put |
@0x4007 Absolutely, but Action plugins do not expose such endpoint. It's fine as long as Actions never implement any command, which most likely should not happen since commands need to be reactive and will most likely use a worker. @rndquu yes but for Workers the Kernel is not aware of what repo it is located in, only the endpoint itself. It's okay since the same file can be exposed through the endpoint, or available through the Action. In my mind it was:
Same file would be used in both cases. |
We should definitely not assume this. Besides I wrote specifications in the past that rely on commands and complex capabilities which require longer runtimes (i.e. LLM related.) |
Resolves ubiquity-os/plugins-wishlist#17
QA run: Meniole/ubiquity-os-kernel#1 (comment)