OpenCode already has a strong foundation: a plugin system, skills, custom subagents, 75+ provider support, and built-in webfetch/websearch tools. Comparing against two of the more feature-complete agent ecosystems out there, Hermes Agent (Nous Research) and ZCode (Z.ai/GLM), a few concrete gaps stand out that would take OpenCode a long way.
Voice mode is the biggest one. Hermes Agent now ships full real-time voice: a "Hey Hermes" wake word, streaming TTS/STT with barge-in (you can interrupt it mid-reply), full-duplex conversation, and even voice cloning through a TTS provider. OpenCode has no voice input or output today. Even a basic version — dictate a prompt, optionally hear the response read back — would make hands-free workflows possible and bring OpenCode to parity here.
Browser automation should be first-class, not a plugin. Right now OpenCode's browser support lives in a community CDP plugin. Hermes supports multiple backends out of the box (Browserbase cloud, Browser Use cloud, or local Chrome/Brave/Chromium/Edge via CDP), and ZCode goes further by keeping a live browser preview panel inside the main app so the agent's browsing state is always visible alongside the task. OpenCode would benefit from bundling a default browser tool natively, with the option to swap backends, rather than requiring a separate plugin install and Chrome flag setup.
A goal-driven task loop, like ZCode's Goal Mode, would help with longer tasks. Instead of a single-shot conversation, you set a verifiable objective ("make the test suite pass") and the agent plans, edits, runs commands, and verifies in a loop until the objective is met or it hits a blocker, updating its plan as it goes. This is different from just a longer context window; it's a structured execution loop with a defined success condition.
Plugin discovery needs a real in-app surface. ZCode has a Plugin Marketplace built into Settings, where plugins bundling skills, commands, subagents, and MCP servers can be browsed and installed with one click. OpenCode plugins today are added by hand-editing the config file and knowing the npm package name in advance. A searchable in-app plugin browser, even just wrapping the existing awesome-opencode list, would lower the barrier a lot.
Native scheduled automations would also help. Hermes has cron jobs and signed outbound webhooks; ZCode supports recurring scheduled tasks. OpenCode currently relies on external cron plus manual invocation, or a community roadmap-planning plugin, for anything recurring.
One more small but useful pattern from ZCode: editing an earlier message in a session and resuming the task from that point without restarting or losing context. Worth checking if OpenCode's existing session resume/fork already covers this, or if it needs message-level editing support.
Note: persistent cross-session memory is a real gap in Hermes/ZCode too, but it's already being tracked in issue #32658 and there's an in-progress PR (#20344) adding a native auto-memory module, so I'm not duplicating that request here, just flagging it as the fifth piece of this puzzle.
References: Hermes Agent feature overview at hermes-agent.nousresearch.com/docs/user-guide/features/overview, ZCode plugin marketplace coverage at flaviocopes.com/zcode, ZCode developer guide at developersdigest.tech/blog/zcode-developer-guide-2026.
OpenCode already has a strong foundation: a plugin system, skills, custom subagents, 75+ provider support, and built-in webfetch/websearch tools. Comparing against two of the more feature-complete agent ecosystems out there, Hermes Agent (Nous Research) and ZCode (Z.ai/GLM), a few concrete gaps stand out that would take OpenCode a long way.
Voice mode is the biggest one. Hermes Agent now ships full real-time voice: a "Hey Hermes" wake word, streaming TTS/STT with barge-in (you can interrupt it mid-reply), full-duplex conversation, and even voice cloning through a TTS provider. OpenCode has no voice input or output today. Even a basic version — dictate a prompt, optionally hear the response read back — would make hands-free workflows possible and bring OpenCode to parity here.
Browser automation should be first-class, not a plugin. Right now OpenCode's browser support lives in a community CDP plugin. Hermes supports multiple backends out of the box (Browserbase cloud, Browser Use cloud, or local Chrome/Brave/Chromium/Edge via CDP), and ZCode goes further by keeping a live browser preview panel inside the main app so the agent's browsing state is always visible alongside the task. OpenCode would benefit from bundling a default browser tool natively, with the option to swap backends, rather than requiring a separate plugin install and Chrome flag setup.
A goal-driven task loop, like ZCode's Goal Mode, would help with longer tasks. Instead of a single-shot conversation, you set a verifiable objective ("make the test suite pass") and the agent plans, edits, runs commands, and verifies in a loop until the objective is met or it hits a blocker, updating its plan as it goes. This is different from just a longer context window; it's a structured execution loop with a defined success condition.
Plugin discovery needs a real in-app surface. ZCode has a Plugin Marketplace built into Settings, where plugins bundling skills, commands, subagents, and MCP servers can be browsed and installed with one click. OpenCode plugins today are added by hand-editing the config file and knowing the npm package name in advance. A searchable in-app plugin browser, even just wrapping the existing awesome-opencode list, would lower the barrier a lot.
Native scheduled automations would also help. Hermes has cron jobs and signed outbound webhooks; ZCode supports recurring scheduled tasks. OpenCode currently relies on external cron plus manual invocation, or a community roadmap-planning plugin, for anything recurring.
One more small but useful pattern from ZCode: editing an earlier message in a session and resuming the task from that point without restarting or losing context. Worth checking if OpenCode's existing session resume/fork already covers this, or if it needs message-level editing support.
Note: persistent cross-session memory is a real gap in Hermes/ZCode too, but it's already being tracked in issue #32658 and there's an in-progress PR (#20344) adding a native auto-memory module, so I'm not duplicating that request here, just flagging it as the fifth piece of this puzzle.
References: Hermes Agent feature overview at hermes-agent.nousresearch.com/docs/user-guide/features/overview, ZCode plugin marketplace coverage at flaviocopes.com/zcode, ZCode developer guide at developersdigest.tech/blog/zcode-developer-guide-2026.