npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

opencode-commandcode-provider

v0.1.0

Published

Command Code API provider for opencode — use Claude, GPT, Gemini, DeepSeek, Qwen, Kimi, GLM, MiniMax, and Step models via Command Code

Downloads

133

Readme

OpenCode Command Code Provider

Command Code API provider for opencode. Use Claude, GPT, Gemini, DeepSeek, Qwen, Kimi, GLM, MiniMax, Step, and other models through a single API key.

Use This Fork

Clone the repository and point OpenCode at the local checkout:

git clone https://github.com/nathnael-desta/opencode-commandcode-provider.git
{
  "plugin": ["file:///absolute/path/to/opencode-commandcode-provider/plugin.ts"],
  "provider": {
    "commandcode": {
      "npm": "file:///absolute/path/to/opencode-commandcode-provider",
      "name": "Command Code",
      "env": ["COMMANDCODE_API_KEY"]
    }
  }
}

Run /connect, select Command Code, and enter the API key. File URLs must be absolute. Restart OpenCode or T3 Code after changing configuration.

Published Package

1. Install

opencode plugin opencode-commandcode-provider

This installs the provider and registers all available models automatically. The bundled catalog provides an offline fallback, while the plugin refreshes model IDs, names, and context windows from Command Code's public model endpoint at startup.

2. Connect

Run /connect in opencode, search for Command Code, and enter your API key:

/connect

3. Select a model

Run /models to pick from available models:

/models

Manual Configuration

If you prefer to configure manually, add this to your opencode.json:

{
  "plugin": ["opencode-commandcode-provider/server"],
  "provider": {
    "commandcode": {
      "npm": "opencode-commandcode-provider",
      "name": "Command Code",
      "env": ["COMMANDCODE_API_KEY"]
    }
  },
  "model": "commandcode/deepseek-v4-flash"
}

The plugin auto-registers models from models.json at startup. You only need the provider.commandcode block — no need to list individual models.

Environment Variable

Set COMMANDCODE_API_KEY instead of using /connect:

COMMANDCODE_API_KEY=your-key opencode

For T3 Code and other GUI integrations, use /connect instead of a shell alias. GUI-launched opencode serve processes do not evaluate Bash aliases. See T3 Code Integration for setup and diagnostics.

Available Models

| Model ID | Name | Tier | Reasoning | Context | |---|---|---|---|---| | claude-fable-5 | Claude Fable 5 | premium | yes | 1M | | claude-haiku-4-5-20251001 | Claude Haiku 4.5 | premium | no | 200K | | claude-opus-4-7 | Claude Opus 4.7 | premium | yes | 1M | | claude-opus-4-8 | Claude Opus 4.8 | premium | yes | 1M | | claude-sonnet-4-6 | Claude Sonnet 4.6 | premium | yes | 1M | | claude-sonnet-5 | Claude Sonnet 5 | premium | yes | 1M | | sakana/fugu-ultra | Fugu Ultra | premium | yes | 1M | | google/gemini-3.1-flash-lite | Gemini 3.1 Flash Lite | premium | yes | 1M | | google/gemini-3.5-flash | Gemini 3.5 Flash | premium | yes | 1M | | gpt-5.3-codex | GPT-5.3 Codex | premium | yes | 400K | | gpt-5.4 | GPT-5.4 | premium | yes | 400K | | gpt-5.4-mini | GPT-5.4 Mini | premium | yes | 400K | | gpt-5.5 | GPT-5.5 | premium | yes | 200K | | gpt-5.6-luna | GPT-5.6 Luna | premium | yes | 1M | | gpt-5.6-sol | GPT-5.6 Sol | premium | yes | 1M | | gpt-5.6-terra | GPT-5.6 Terra | premium | yes | 1M | | xai/grok-4.5 | Grok 4.5 | premium | yes | 500K | | meta/muse-spark-1.1 | Muse Spark 1.1 | premium | yes | 1M | | deepseek/deepseek-v4-flash | DeepSeek V4 Flash | open-source | yes | 1M | | deepseek/deepseek-v4-pro | DeepSeek V4 Pro | open-source | yes | 1M | | zai-org/GLM-5 | GLM-5 | open-source | yes | 200K | | zai-org/GLM-5.1 | GLM-5.1 | open-source | yes | 200K | | zai-org/GLM-5.2 | GLM-5.2 | open-source | yes | 1M | | zai-org/GLM-5.2-Fast | GLM-5.2 Fast | open-source | yes | 1M | | moonshotai/Kimi-K2.5 | Kimi K2.5 | open-source | no | 256K | | moonshotai/Kimi-K2.6 | Kimi K2.6 | open-source | no | 256K | | moonshotai/Kimi-K2.7-Code | Kimi K2.7 Code | open-source | yes | 256K | | moonshotai/Kimi-K2.7-Code-Highspeed | Kimi K2.7 Code HighSpeed | open-source | yes | 262K | | xiaomi/mimo-v2.5 | MiMo V2.5 | open-source | yes | 1M | | xiaomi/mimo-v2.5-pro | MiMo V2.5 Pro | open-source | yes | 1M | | MiniMaxAI/MiniMax-M2.5 | MiniMax M2.5 | open-source | no | 200K | | MiniMaxAI/MiniMax-M2.7 | MiniMax M2.7 | open-source | no | 200K | | MiniMaxAI/MiniMax-M3 | MiniMax M3 | open-source | yes | 1M | | nvidia/nemotron-3-ultra-550b-a55b | Nemotron 3 Ultra | open-source | yes | 1M | | Qwen/Qwen3.6-Max-Preview | Qwen 3.6 Max Preview | open-source | yes | 200K | | Qwen/Qwen3.6-Plus | Qwen 3.6 Plus | open-source | yes | 200K | | Qwen/Qwen3.7-Max | Qwen 3.7 Max | open-source | yes | 1M | | Qwen/Qwen3.7-Plus | Qwen 3.7 Plus | open-source | yes | 1M | | stepfun/Step-3.5-Flash | Step 3.5 Flash | open-source | yes | 1M | | stepfun/Step-3.7-Flash | Step 3.7 Flash | open-source | yes | 256K | | tencent/Hy3 | Tencent Hy3 | open-source | yes | 262K |

The table above reflects the bundled offline catalog. At startup, the plugin adds models returned by Command Code's public /provider/v1/models endpoint, including newer GPT-5.6 models. Run bun run sync to refresh models.json from that endpoint.

Development

git clone https://github.com/nathnael-desta/opencode-commandcode-provider.git
cd opencode-commandcode-provider
bun install

For local testing, create opencode.local.json (gitignored) with file:// paths:

{
  "plugin": ["file:///path/to/opencode-commandcode-provider/plugin.ts"],
  "provider": {
    "commandcode": {
      "npm": "file:///path/to/opencode-commandcode-provider",
      "name": "Command Code (local)",
      "env": ["COMMANDCODE_API_KEY"]
    }
  }
}

Run opencode --config opencode.local.json to test with your local build.

Sync Models

bun run sync              # update models.json from Command Code
bun run sync:global       # update models.json + write to ~/.config/opencode/opencode.jsonc

License

MIT