I think it’s not very clear how to install an exte...
# proj-agent-canvas
l
I think it’s not very clear how to install an extension from the dialog here. It’d be nice to have some instructions.
👀 1
e
@hundreds-twilight-32833 any chance we can link to the Docs directly from the Customer>Extensions page? docs.openhands.dev/openhands/usage/agent-canvas/canvas-extensions Also, it would be great to start building a public ecosytem of extensions. I think this is going to be critical for early traction, especially for users who want to install a few and see how it goes. I imagine most users will want to install existing extensions first, before building their own. One thing I noticed is the
Source
field is finnicky. For example,
GitHub:owner/repo
fails, while
github:owner/repo
succeeds. Ive also been unable to just 'drop in a Github URL and go' -- it's not clear what GitHub URL I should use
h
Yea I think we could directly link there. That would help. I also found the fields to be not quite right github.com/OpenHands/OpenHands/issues/17048. Can you add what you tried to that ticket so we can try to address it all together
l
The main issue I had was that I opened the modal and then it didn’t have any directions on how to proceed. I think we could link to the docs and then also the OpenHands/extensions repo
h
start building a public ecosytem of extensions.
I'd like to settle on a good long term name first before we add that to the extensions repo (or elsewhere). Canvas Extensions could work but it isn't as easy to describe. Working on that bit separately
l
Also, we need to figure out the naming before we launch, since “extensions” is already used as the umbrella term for all things, including skills, mcps, etc.
highfive 1
haha, great minds 🙂
h
• Add-ons, Packages, Apps?
◦ Install OpenHands Add-ons to extend the Agent Canvas platform without forking so you can introduce custom functionality inside canvas.
◦ Install OpenHands Packages to extend the Agent Canvas platform without forking so you can introduce custom functionality inside canvas
◦ Install OpenHands Apps to extend the Agent Canvas platform without forking so you can introduce custom functionality inside canvas
I've been trying to write about them to see what reads/sounds good
l
I like “App” if it’s something that installs lots of things. If it’s just an extra sidebar, maybe “Page”?
So an “App” could install “automations”, “skills”, and “pages”
“packages” is also equally good, I don’t have a preference between them
“add-ons” seems also a little bit like an umbrella term, it’s pretty close to a synonym of extension
e
OK yeah, once we figure out a name, we should still think of an ecosystem strategy here. I have a strong opinion that most users will want to install an existing extensions/add-on/app before creating their own, and there's opportunities to have the ecosystem solve use cases we can't/won't solve directly within Canvas
nod 1
There's also probably an 'update Extension' feature -- e.g., being able to update to a newer version of a given extension
l
Yep, sounds good. I think the solution to my complaint above is to add examples to the OpenHands/extensions repo. Personally I think “app” is a good name. Everything about this feels like an app to me (it’s somewhat self-contained on its own page, and it has a fixed set of functionality). But if for whatever reason we don’t like “app”, then “package” would also be OK with me.
If you two are OK with app I’d say we just go with it
Oh and BTW: for updating, we already have git sync support for automations, so we can use the same mechanism for apps
nod 1
OK, I’m going with apps unless somebody objects 🙂
h
😄 Let me run through it for like 10 mins. Testing some different GTM packaging
l
OK, sounds good. Nothing like a little decisiveness to move things forward 🙂
h
Joe was just nudging me in a DM as well. Appreciate it
👍 1
👍 for apps. I think it can easily be communicated as well: • OpenHands Apps -> Broad term for what you install into canvas to enable additional canvas-wide functionality. Quick and easy to digest • Apps for Agent Canvas -> Indicates Marketplace, differentiated in Extensions repo • Canvas Extensions API -> No direct requirement to rename things under the hood. Apps use the Canvas Extensions API and use the canvas-extension.json manifest
Sound good? nice little exercise created a bunch of general GTM prep as well. I like it
🙌 2
l
perfect, let’s do it! as a next step we can start uploading example apps to the OpenHands/extensions directory, and add a link to the UI so that people can explore existing apps. In the somewhat longer term, we could design an app browser like we have for automations
h
🎉
l
@fresh-machine-37269 open an issue on the OpenHands/extensions repo for the former, and OpenHands/OpenHands for the latter, with the latter being blocked by the former.
👀 1
f
🤖 On it! View progress here: oss-agent-canvas.ngrok.dev/conversations/…
✅ Done! Done! I opened two issues: 1. OpenHands/extensions#526 — Add example apps to the extensions repo github.com/OpenHands/extensions/issues/526 2. OpenHands/OpenHands#17057 — Add UI link to explore existing apps (optionally an app browser) — marked as blocked by the former. github.com/OpenHands/OpenHands/issues/17057
h