OpenCode Desktop Plugins: Complete Guide (2026)

Julian Goldie — founder, AI Profit Boardroom
By Julian Goldie · 8 min read
Get The AI Profit Stack Join AIPB →
🎯 1,000+ done-for-you AI agent workflows 📅 4 live coaching calls every week 🛡️ 7-day refund + 30-day ROI guarantee 👥 3,400+ AI operators inside

OpenCode desktop plugins landed in OpenCode v2.2.0 on 27 October 2026: you can now create, install and share plugins that add panels, commands, settings pages and native integrations to the OpenCode Desktop app. It's marked experimental, but it works today, and installing one is the same as installing any other OpenCode plugin.

📺 Watch: OpenCode Desktop Just Got WAY More Useful

🔥 Get the Agent OS as a free bonus: AI Profit Boardroom members get the full Agent OS zip, prompt libraries, daily tutorials and weekly live coaching calls. → Get inside

Here's what they are, how to install them, how to build your own, and the new plugin APIs that came in the same release.

What OpenCode desktop plugins actually are

An OpenCode plugin is one npm package that can carry up to four parts. The docs list them like this:

So a "desktop plugin" is really any plugin that ships that GUI part. It can live alone or sit beside a server and TUI part in the same package. The name has "experimental" baked into the export on purpose: the docs say the GUI plugin API may change between releases.

The GUI part runs in two places. Its setup code runs in every desktop window and adds panels, commands, settings pages, slots, link handlers and styles. Its main code runs once in the Electron main process, for native menu items, embedded web views and Node or Electron integrations.

If you want to get properly good at agent coding tools like this, the AI Profit Boardroom ($69/mo) gives you the Agent OS, a 30-day AI agent roadmap, daily tutorials as new tools drop, 4 coaching calls a week and the prompt library, with 3,400+ members.

📺 Watch: NEW Hermes Desktop Browser Update Is INSANE!

How to install OpenCode desktop plugins

There's no separate GUI install step. You install the plugin, and if it has a GUI part, Desktop picks it up.

  1. Add it with the CLI. The docs give opencode plugin add with an npm name and optional version, for example opencode plugin add opencode-acme-plugin@1.2.0. Git sources work too, such as opencode plugin add github:acme/opencode-plugin.
  2. Or add it to your config. List the package in the plugins array of your global opencode.json or opencode.jsonc, which lives at ~/.config/opencode/.
  3. Check it in the app. Open Settings, Extensions, Plugins. Your plugins appear there when the app's own server is selected.

One thing trips people up. The desktop app reads plugins only from opencode.json(c). The TUI reads its own plugins from cli.json. So if a plugin used to be TUI-only and sits in cli.json, it also needs to go in opencode.json(c) once it adds a GUI part. And put it in the global config if you want it in every window.

Managing them afterwards, all from the docs:

In Settings, Extensions, Plugins, each plugin has a switch. That switch turns off only its desktop UI. To turn off the whole plugin, add a minus sign and its id to your plugins list. There's also a Reload button for when a GUI fails to load.

Planning which tools your team should standardise on? Book a free AI strategy session.

📺 Watch: Omniroute + OpenCode: 100% FREE AI Coding Setup!

How to create a desktop plugin

Here's the build path from the GUI plugin docs, in plain steps.

1. Add the export to your package

In package.json, add a ./gui-experimental export pointing at your built file. The default is dist/gui-experimental.cjs. Keep @opencode/plugin as a dependency. The GUI takes the plugin's id from the server part, or from the package name if there's no server part.

2. Write the entry file

The entry, src/gui.tsx by default, default-exports Plugin.define from @opencode/plugin/gui. Inside it you write setup for window code (Solid components, commands, panels) and main for Electron main-process code. Both processes load the whole file, and each gets inert placeholders for the other side's modules, so keep each side's code inside its own function.

3. Build one CommonJS file

The GUI must be a single prebuilt CommonJS file. OpenCode ships a Vite preset for it at @opencode/plugin/gui/vite. Add the dev tools with bun add -d vite vite-plugin-solid solid-js, then run vite build. The preset compiles Solid, inlines dynamic imports and fails the build if you bundle a module the app already provides.

4. Develop with live reload

Point your config at the local plugin folder and run vite build --watch. Per the docs, each rebuild reloads the plugin's GUI in every window and the main process, without restarting the server part.

5. Share it

To share, publish it to npm with npm publish. Build the GUI bundle first and include it in your package files. The docs also say to test the installed package, not just a linked copy.

Two rules to know. A plugin whose server part fails to load gets no GUI. And ids in the opencode namespace, or ones that clash with the app's own plugins, are reserved, so the GUI won't load.

New plugin APIs in OpenCode 2.2

Desktop plugins got the headline, but the release notes add two more things plugin builders should know.

FeatureWhat it doesStatus
Desktop GUI pluginsPanels, commands, settings pages and native integrations in OpenCode DesktopExperimental
Image and decision generationImage generation or decision-model workflows from plugins and the SDKExperimental
Keyed session instructionsAttach, list and remove named instruction entries for a sessionNew in 2.2
Settings, Extensions, PluginsManage desktop plugins inside the appNew in 2.2

Image and decision generation

The release notes say plugins and the SDK get experimental image and decision generation APIs, for image generation or decision-model workflows. In the AI package, Decision APIs replace the old experimental evaluations, including OpenAI Decisions, System One and Cloudflare Run models.

Keyed session instructions

This one is clever. Plugins can now attach and update named instruction entries with ctx.session.instructions.entry.put, list and remove. Instead of editing the system prompt and busting the prompt cache, each change is added as a small update at the next step.

Per the notes, these entries survive compaction and reverts, and they don't start an extra model turn. The server docs show them rendering as context blocks with a key, like a deploy-target entry set to production. Great for plugins that track state the model needs to keep seeing.

The experimental caveats

Go in with eyes open:

Comparing OpenCode with other agents? My Hermes Agent vs OpenCode breakdown covers where each one wins. To pick the model behind it, see Goldie Bench, and the Agent OS guide shows how I run several agents side by side. Want help choosing? Get a free AI strategy session.

FAQ

Which OpenCode version has desktop plugins?

OpenCode v2.2.0, released on GitHub on 27 October 2026. The feature is labelled experimental.

Do desktop plugins need a separate install?

No. You install the plugin once with opencode plugin add or your config file. If it ships a GUI part, OpenCode Desktop loads it.

What are the best OpenCode desktop plugins?

The feature is days old and there's no official list yet. Watch the OpenCode docs and release notes, and check any package's source before installing.

Can I turn off a plugin's desktop UI but keep the rest?

Yes. The switch in Settings, Extensions, Plugins turns off only the desktop UI. Add a minus sign before the plugin id in your config to disable all of it.

Ready to build with OpenCode desktop plugins? Join the AI Profit Boardroom for daily AI agent tutorials, or book a free AI strategy session and we'll plan your stack.

What members say about the AI Profit Boardroom

Read all 114 reviews on Skool →

★ 4.9 out of 5 from 114 member reviews on Skool

Yosuke Sato, AI Profit Boardroom member review (5 stars, paying member for 17 months): The best Skool course you get for AI! I have attended a few Skool courses before, but AI Profit Boardroom is the most active community and has great support from the management team, including Julian! You can get the most up-to-date information and practical implementations in this community. I highly recommend this!Mazzie T, AI Profit Boardroom member review (5 stars, paying member for 10 months): My mind is blown everyday with all the content and the incredible information. So much support and I love the personalised attention and quick responses. The community is great and people are very responsive and helpful.Rene Clayton, AI Profit Boardroom member review (5 stars, paying member for 9 months): The AI Profit Boardroom is a GAME CHANGER people. I could not be more thrilled that I joined!! So much support, more information than you can even consume, a huge value for what the small fee was. I have grown my business, my knowledge and my FUN!. SUCH a fantastic leader and group of humans. I am incredibly honored to be a part of this fantastic group of intelligent humans :-) THANK YOU!Arpiet Malpani, AI Profit Boardroom member review (5 stars, paying member for 8 months): Incredible learning from Julian and team. I started out in march and was able to build end to end SAAS with the help and learning from this group. I am incredibly thankful to Julian for crazy support and prompt response.James Grimm, AI Profit Boardroom member review (5 stars, paying member for 7 months): I asked Julian for help finding local business websites with little to no traffic. Julian was gracious in providing me my personal "how-to" video instruction. Wow, this is the pinnacle of customer service! I am just one of 3,400 subscribers and Julian took the time to help me personally. Thank you Julian for your assistance and outstanding custoemr support and care. James (Jim) GrimmNick Good, AI Profit Boardroom member review (5 stars, paying member for 4 months): I’m part of many AI groups and hands down, what Julian Goldie, has built here…the classroom trainings are amazing, but the community he has created is second to none (the community is worth the cost of joining!). If you’re looking to become the AI expert and build/create something meaningful, then AI Profit Boardroom is for YOU!Steven Gray, AI Profit Boardroom member review (5 stars, paying member for 4 months): Been in awhile. I’m a dad on a factory shift, not a tech bloke. Julian’s lot showed me how to use AI without drowning in tools. Avatar, voice, the workflow thinking — that’s what I needed. If you’re stuck on “where do I start,” this group’s worth it. I always read them.Steve Erickson, AI Profit Boardroom member review (5 stars, paying member for 4 months): I asked Julian a simple question, and he ended up creating a 10-minute video and a guide breaking down in extreme detail what I had asked. Amazing response!Rod Martin, AI Profit Boardroom member review (5 stars, paying member for 3 months): Julian is brilliant, and more prolific than I can keep up with (which is a great thing). His AgentOS is remarkable, and he is THE go-to guy for what you can really do (and not do) with the ever-increasing deluge of new AI upgrades and tools. HIGHLY recommend.Daniel Shulman, AI Profit Boardroom member review (5 stars, paying member for 4 months): Julian is very helpful. He doesn't try sell stuff you dont need and will give you a straight answer to your questions.Rj Herzog, AI Profit Boardroom member review (5 stars, paying member for 5 months): Top notch. If you are searching & searching thinking there is always something better out there.... You just found it. No need to look any further. Goldie covers it all & is super helpful. Can't beat the group either. Really can't recommend this group enough.Jermey Matthews, AI Profit Boardroom member review (5 stars, paying member for 6 months): While he has the capacity to do it, Julian is definitely doing the unscalable things to support his community.

Ready To Join The #1 AI Community?

Join 3,400+ entrepreneurs inside the AI Profit Boardroom. Get the Agent OS, 1,000+ plug-and-play AI agent workflows, daily Q&A with Julian and 4 live coaching calls every week.

Join The AI Profit Boardroom →

7-Day No-Questions Refund • 30-Day ROI Guarantee

← Back to all posts