{"id":323763,"date":"2026-06-14T19:14:58","date_gmt":"2026-06-14T19:14:58","guid":{"rendered":"https:\/\/me.wordpress.org\/plugins\/ai-provider-for-opencode\/"},"modified":"2026-08-04T22:44:08","modified_gmt":"2026-08-04T22:44:08","slug":"nominal-ai-provider-for-opencode","status":"publish","type":"plugin","link":"https:\/\/id.wordpress.org\/plugins\/nominal-ai-provider-for-opencode\/","author":13639324,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0.2","requires":"6.9","requires_php":"7.4","requires_plugins":null,"header_name":"AI Provider for OpenCode","header_author":"Kolja Nolte","header_description":"Nominal AI Provider for OpenCode for the WordPress AI Client.","assets_banners_color":"1f1f1f","last_updated":"2026-08-04 22:44:08","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/paypal.me\/thaikolja\/10","header_plugin_uri":"https:\/\/github.com\/thaikolja\/nominal-ai-provider-for-opencode","header_author_uri":"https:\/\/www.kolja-nolte.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":352,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"thaikolja","date":"2026-08-04 22:44:08"}},"upgrade_notice":{"1.0.0":"<p>Initial release: nothing to upgrade from.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3622596,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3622596,"resolution":"256x256","location":"assets","locale":"","width":512,"height":512},"icon.svg":{"filename":"icon.svg","revision":3622596,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3634607,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3634607,"resolution":"772x250","location":"assets","locale":"","width":1544,"height":500}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3634685,"resolution":"1","location":"assets","locale":"","width":1200,"height":900},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3634685,"resolution":"2","location":"assets","locale":"","width":1200,"height":900},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3634685,"resolution":"3","location":"assets","locale":"","width":1200,"height":900}},"screenshots":{"1":"Connecting OpenCode as an active AI provider using a masked API key.","2":"Selecting OpenCode and choosing from available models like DeepSeek-V4-Flash or Qwen3.7-Max.","3":"Generating post excerpts directly within the Block Editor via OpenCode."}},"plugin_section":[],"plugin_tags":[2353,5739,25308,261513,46622],"plugin_category":[],"plugin_contributors":[80747],"plugin_business_model":[],"class_list":["post-323763","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-artificial-intelligence","plugin_tags-connector","plugin_tags-opencode","plugin_tags-provider","plugin_contributors-thaikolja","plugin_committers-thaikolja"],"banners":{"banner":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/banner-772x250.png?rev=3634607","banner_2x":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/banner-1544x500.png?rev=3634607","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/icon.svg?rev=3622596","icon":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/icon.svg?rev=3622596","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/screenshot-1.png?rev=3634685","caption":"Connecting OpenCode as an active AI provider using a masked API key."},{"src":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/screenshot-2.png?rev=3634685","caption":"Selecting OpenCode and choosing from available models like DeepSeek-V4-Flash or Qwen3.7-Max."},{"src":"https:\/\/ps.w.org\/nominal-ai-provider-for-opencode\/assets\/screenshot-3.png?rev=3634685","caption":"Generating post excerpts directly within the Block Editor via OpenCode."}],"raw_content":"<!--section=description-->\n<p>WordPress can talk to AI services through a shared system called the PHP AI Client. That system still needs a small bridge for each service you want to use. This plugin is the bridge for <a href=\"https:\/\/opencode.ai\/go?ref=SMXJFA241V\">OpenCode<\/a>.<\/p>\n\n<p>Once the plugin is active, OpenCode becomes available as an AI option on your site. You can generate text, continue multi-step conversations, and see which models OpenCode currently offers. There is no separate settings page and nothing you need to wire up by hand.<\/p>\n\n<p>In short: install, activate, add your OpenCode key, and you are set.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>Text generation<\/strong>: Write, summarize, rewrite, or analyze content with OpenCode\u2019s language models.<\/li>\n<li><strong>Conversation memory<\/strong>: Follow-up messages can keep earlier context, so exchanges feel more natural.<\/li>\n<li><strong>Up-to-date model list<\/strong>: The plugin asks OpenCode which models are available, so new ones can show up without a plugin update.<\/li>\n<li><strong>Works out of the box<\/strong>: After activation, OpenCode is registered automatically with WordPress\u2019s AI system.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>PHP 7.4 or newer on your hosting plan.<\/li>\n<li><strong>WordPress 7.0 or newer<\/strong> is the simple path: AI support is already included.<\/li>\n<li><strong>WordPress 6.9 only<\/strong>: you also need the <a href=\"https:\/\/github.com\/WordPress\/php-ai-client?tab=readme-ov-file#installation\">PHP AI Client<\/a> installed separately.<\/li>\n<li>An <a href=\"https:\/\/opencode.ai\/go?ref=SMXJFA241V\">OpenCode API key<\/a> so OpenCode can authorize your site\u2019s requests.<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin sends data to OpenCode when you use AI features. Here is what that means in practice:<\/p>\n\n<p><strong>What is sent and when:<\/strong>\n* Your <strong>API key<\/strong>: sent with requests so OpenCode can verify your account.\n* Your <strong>prompts and messages<\/strong>: sent when you ask the AI to do something. Only share text you are comfortable sending to a third-party service.\n* A <strong>model list request<\/strong>: used so WordPress can show which OpenCode models are available.\n* Nothing is sent while you are not using AI features.<\/p>\n\n<p><strong>Service details:<\/strong>\n* <strong>Service<\/strong>: <a href=\"https:\/\/opencode.ai\/go?ref=SMXJFA241V\">OpenCode<\/a>\n* <strong>API endpoint<\/strong>: <code>https:\/\/opencode.ai\/zen\/go\/v1<\/code>\n* <strong>Terms of service<\/strong>: <a href=\"https:\/\/opencode.ai\/terms\">opencode.ai\/terms<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install the plugin from the WordPress admin (Plugins \u2192 Add New), or upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate it under <strong>Plugins<\/strong>.<\/li>\n<li><em>(Recommended)<\/em> Add your OpenCode API key to <code>wp-config.php<\/code>:\n   <code>define( 'OPENCODE_API_KEY', 'your-api-key-here' );<\/code>\nUse your real key in place of <code>your-api-key-here<\/code>. The sample text will not work as a live key.<\/li>\n<\/ol>\n\n<p>That is all: install, activate, and add the key.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20get%20an%20opencode%20api%20key%3F\"><h3>How do I get an OpenCode API key?<\/h3><\/dt>\n<dd><p>Go to <a href=\"https:\/\/opencode.ai\/go?ref=SMXJFA241V\">opencode.ai<\/a>, create an account (Go or Zen plan), and generate a key in your dashboard. The plugin uses that key so OpenCode knows the requests come from you.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20on%20its%20own%3F\"><h3>Does this plugin work on its own?<\/h3><\/dt>\n<dd><p>No. It connects OpenCode to WordPress\u2019s AI system (the PHP AI Client). On WordPress 7.0+, that system is already there. On WordPress 6.9, you need to <a href=\"https:\/\/github.com\/WordPress\/php-ai-client?tab=readme-ov-file#installation\">install it first<\/a>. This plugin is not a full chatbot product by itself; it is the OpenCode connection layer.<\/p><\/dd>\n<dt id=\"what%20models%20can%20i%20use%3F\"><h3>What models can I use?<\/h3><\/dt>\n<dd><p>The list comes from OpenCode and can change. Examples at the time of writing include:\n- <strong>DeepSeek-V4-Pro<\/strong>\n- <strong>DeepSeek-V4-Flash<\/strong>\n- <strong>GLM-5.1<\/strong>\n- <strong>GLM-5<\/strong>\n- <strong>Hy3 Preview<\/strong>\n- <strong>Kimi-K2.6<\/strong>\n- <strong>Kimi-K2.5<\/strong>\n- <strong>Mimo-V2-Pro<\/strong>\n- <strong>Mimo-V2-Omni<\/strong>\n- <strong>Mimo-V2.5-Pro<\/strong>\n- <strong>Mimo-V2.5<\/strong>\n- <strong>MiniMax-M3<\/strong>\n- <strong>MiniMax-M2.7<\/strong>\n- <strong>MiniMax-M2.5<\/strong>\n- <strong>Qwen3.7-Max<\/strong>\n- <strong>Qwen3.7-Plus<\/strong>\n- <strong>Qwen3.6-Plus<\/strong>\n- <strong>Qwen3.5-Plus<\/strong><\/p>\n\n<p>New models may appear automatically. OpenCode may also retire older ones.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li><p>Initial release.<\/p>\n\n<ul>\n<li>Text generation with OpenCode Go and Zen models.<\/li>\n<li>Conversation history for available models.<\/li>\n<li>Live model list from OpenCode, so new models can appear without a plugin update.<\/li>\n<li>Automatic connection to WordPress\u2019s AI system.<\/li>\n<li>Provider logo and description (needs PHP AI Client SDK 1.2.0 or newer).<\/li>\n<\/ul><\/li>\n<\/ul>","raw_excerpt":"Use OpenCode&#039;s AI models through the built-in AI system. Activate the plugin and OpenCode is ready to use.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/323763","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=323763"}],"author":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/thaikolja"}],"wp:attachment":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=323763"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=323763"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=323763"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=323763"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=323763"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=323763"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}