opencode-provider-tabnine
v0.1.1
Published
OpenCode plugin that exposes Tabnine Agentic as a provider
Maintainers
Readme
opencode-provider-tabnine
OpenCode plugin that exposes Tabnine Agentic models as provider tabnine.
Install
Install OpenCode, then install the provider plugin from npm:
curl -fsSL https://opencode.ai/install | bash
opencode plugin -g opencode-provider-tabnine
TABNINE_HOST=https://tabnine.example.com opencode auth login tabnineReplace https://tabnine.example.com with your Tabnine tenant URL. Other official OpenCode install options include npm i -g opencode-ai, bun add -g opencode-ai, brew install anomalyco/tap/opencode, and paru -S opencode.
Use From Source
Add the plugin to an OpenCode config:
{
"plugin": ["file:///absolute/path/to/opencode-tabnine"]
}Then authenticate:
opencode auth login tabnineSet TABNINE_HOST or make sure Tabnine CLI has ~/.tabnine/agent/settings.json with general.tabnineHost. Use your Tabnine tenant URL:
export TABNINE_HOST=https://tabnine.example.comBrowser login starts a local callback server and opens Tabnine's custom-token login page. The plugin also honors TABNINE_TOKEN, TABNINE_JWT, and TABNINE_REFRESH_TOKEN for non-interactive configuration.
After the first login, restart OpenCode so the config hook can load the persisted Tabnine host and refresh token, then choose provider tabnine.
Models
When credentials are available, the plugin calls GET /chat/v2/models, filters to models with the agent capability, and registers the live list. If discovery is unavailable, it falls back to the four Agentic model IDs documented for Tabnine CLI 0.16.3.
Development
bun install
bun run check
bun run clean && bun run build
npm pack --dry-runRelease
Releases are driven by semver tags named v*.*.*. The release workflow installs dependencies from bun.lock, runs checks, builds dist, verifies the package tarball, publishes to npm with provenance, and creates a GitHub release.
Configure the repository secret NPM_TOKEN before pushing the first release tag.
