DSH Plugins Marketplace

DSH Plugins

Plugins

/

Models & Providers

/

tokenlab-deepseek-harness-provider

h

tokenlab-deepseek-harness-provider

Manifest valid

TokenLab native-protocol model provider, multimodal tools, and async tasks for DeepSeek Harness

hasBundlePatch

TokenLab for DeepSeek Harness

@tokenlabai/dsh-provider is an installable DeepSeek Harness profile bundle. It provides TokenLab model routes plus catalog, creation, and task tools.

The bundle keeps model traffic on the most native protocol DeepSeek Harness currently supports:

  • OpenAI-owned models that declare openai_responses use /v1/responses.
  • Anthropic-owned models that declare anthropic_messages use /v1/messages.
  • All remaining compatible chat models use /v1/chat/completions.
  • Gemini-native generateContent is not configurable in the current Harness custom-provider adapter, so Gemini models use their declared Chat Completions compatibility path.

Protocol eligibility comes from each model's public TokenLab detail contract at GET /v1/models/{id}. The generator never classifies a model by substring or provider-internal route data.

What is included

SurfaceImplementationCurrent bundled contract
Model pickerExisting DSH llm-pi-ai adapter136 public chat models on three exclusive protocol routes
ResponsesNative openai-responses route27 models
MessagesNative anthropic-messages route10 models
ChatOpenAI Chat Completions route99 models
Multimodal and developer toolsOfficial DSH MCP bridge + @tokenlabai/mcp-server@0.6.24 core profile32 MCP tools by default; catalog 6 / full 89 available
Async completionNative tokenlab_wait_task toolimage, video, music, and 3D task polling with cancellation and bounded retries

The full MCP profile covers public model discovery and pricing, Chat Completions, Responses, Anthropic Messages, Gemini generateContent, System One decisions, image generation/edit/variation, video, music, 3D, TTS, STT, files, tasks, embeddings, rerank, translation, response lifecycle, batches, Seedance assets/groups, worlds, workspace webhooks, and other allowlisted developer operations in the pinned TokenLab MCP contract.

Requirements

  • DeepSeek Harness 0.1.5-rc.3 (the verified current target for bundle 0.1.5)
  • Node.js 22.19+ or 24+
  • A TokenLab API key for inference, media, files, tasks, embeddings, rerank, and translation

Public catalog and pricing tools remain available without a key, but this bundle starts the core tool profile and is intended for authenticated use.

Install

Install 0.1.5 for the current bundle.

Put the key in the project .env or the Harness-home .env. DSH loads those files into the launch environment before resolving bundle configuration and before starting the MCP child process.

TOKENLAB_API_KEY=sk-your-tokenlab-key

Then install the bundle into the profile you use:

dsh plugin --profile web add --workspace-root @tokenlabai/dsh-provider@0.1.5

For a headless profile:

dsh plugin --profile headless add --workspace-root @tokenlabai/dsh-provider@0.1.5

Restart that profile after installation. In the model picker, TokenLab appears as three provider routes:

  • TokenLab · Responses
  • TokenLab · Messages
  • TokenLab · Chat

Each model ID appears on exactly one route.

Dependency release age

Harness forwards plugin commands to your installed pnpm. The normal pnpm 11 fresh-add flow records exact exceptions for selected releases that are less than a day old. A frozen install or an explicitly strict age policy can still reject them; this package's repository settings do not configure your Harness profile.

If an age check rejects this release, wait for your configured age window, or review the exact published versions and merge only these entries into the profile's existing pnpm-workspace.yaml (under $DSH_HOME/profiles/web for the web profile):

minimumReleaseAgeExclude:
  - '@tokenlabai/dsh-provider@0.1.5'
  - '@tokenlabai/mcp-server@0.6.24'

Replace older exclusions for these same two package names instead of adding duplicate selectors; preserve unrelated settings and exclusions, then repeat the same dsh plugin command. This does not disable age checks for other packages or versions.

Use multimedia and async tasks

The model sees TokenLab MCP tools under the mcp__tokenlab__... namespace. A typical async media flow is:

  1. Discover a currently enabled model with mcp__tokenlab__list_models or mcp__tokenlab__compare_models.
  2. Submit with mcp__tokenlab__create_video, create_music, create_3d_model, or an image tool.
  3. Read delivery.mode; do not assume every image result is synchronous.
  4. If delivery.mode is async, pass delivery.task_id to tokenlab_wait_task.
  5. Use the returned status, full response, and result_urls. A timed-out wait returns the latest state so another call can resume polling.

tokenlab_wait_task forwards the Harness caller's AbortSignal through every fetch and cancellable delay. It treats completed, failed, succeeded, cancelled, and expired as terminal. Read-only polling retries a bounded number of transport failures, while HTTP failures are retried only when TokenLab explicitly returns retryable: true; Retry-After and retry_after are honored. Auth, ownership, and not-found responses are never retried. Result URLs are exposed only for successful terminal tasks. The tool never changes task state. Use the generated mcp__tokenlab__cancel_task tool when cancellation is supported and intended.

Configuration

Optional environment variables:

VariableDefaultPurpose
TOKENLAB_MCP_TOOL_PROFILEcorecatalog for discovery only (6 tools), core for common creation and task workflows (32), full for all pinned developer operations (89)
TOKENLAB_MCP_SCHEMA_MODEportableportable, exact, or strict; execution still validates the complete API contract
TOKENLAB_API_KEYnoneShared TokenLab credential for model routes, MCP tools, and async wait
TOKENLAB_MANAGEMENT_TOKENnoneSeparate mt-... workspace management credential for webhook tools in full; never substituted by the inference key
TOKENLAB_API_BASEhttps://api.tokenlab.shMCP and async-task API root
TOKENLAB_OPENAI_BASE_URLhttps://api.tokenlab.sh/v1Responses and Chat adapter base URL
TOKENLAB_ANTHROPIC_BASE_URLhttps://api.tokenlab.shMessages adapter base URL; the adapter appends /v1/messages

The default core profile includes catalog and pricing, native chat protocols, System One decisions, images, video, music, 3D, audio, files, task status/cancellation, embeddings, rerank, and translation. Use TOKENLAB_MCP_TOOL_PROFILE=full when you need the additional response lifecycle, batches, Seedance assets/groups, worlds, or workspace webhook tools. Use catalog for discovery without generation tools. The separate tokenlab_wait_task poller remains available in every profile.

Jev / System One decisions

Discover category=decision with mcp__tokenlab__list_models, then inspect jev-1.13 with mcp__tokenlab__get_model. Use mcp__tokenlab__evaluate_decisions with the native model, state, and questions payload. It calls /v1/systemone synchronously and preserves typed answers, probabilities, optional confidence, and usage. Decisions are not chat models and do not belong in the model picker or tokenlab_wait_task. A decision does not authorize an action; application code still owns permissions and side effects.

Workspace webhooks

Set TOKENLAB_MCP_TOOL_PROFILE=full and a separate TOKENLAB_MANAGEMENT_TOKEN=mt-... in the launch environment to use webhook management. The bundle explicitly passes this credential to the MCP child because Harness filters inherited credential-shaped variables. An inference sk-... key cannot replace it. Management tokens have workspace-level authority beyond webhooks; grant only where intended and keep destructive calls subject to client approval. See the webhook guide for receiver verification and delivery recovery. Registering a webhook does not make Harness a webhook receiver.

Existing llm-pi-ai settings

Harness 0.1.5-rc.3 merges saved llm-pi-ai.providers by provider key. Existing providers with different keys remain alongside the three bundled TokenLab routes. Saved entries using tokenlab-responses, tokenlab-messages, or tokenlab-chat take precedence for that route; review those entries when upgrading an older catalog. Do not replace your entire settings document with the bundle patch.

The npm next line of Harness is a separate preview compatibility target and is not declared by this release. Bundle 0.1.5 pins the current latest Harness peer graph so a clean profile does not silently install an older MCP bridge beside a newer preview runtime.

Reasoning levels

The current TokenLab public model-detail response identifies reasoning capability but does not enumerate supported effort values per model. The bundle therefore leaves reasoningEfforts undeclared instead of guessing levels from model names or enabling every level. With custom provider keys, Harness has no matching built-in catalog to inherit; its effort picker will not offer levels for those entries. This does not disable a model's server-side reasoning behavior.

If you have separately verified a model's effort contract, configure reasoningEfforts on that model entry in its provider's models list. Harness maps each displayed level to the wire value, for example high: high only when that model accepts high; off: null means omit an effort value, not proof that the server disables reasoning. Preserve the other models when overriding a saved route. Do not add modelOverrides to these routes: Harness reserves that field for catalog-backed routes without an explicit models list. xhigh or max must not be enabled merely because a model supports reasoning.

Security and side effects

  • Keep TOKENLAB_API_KEY in .env or another trusted launch environment. Never commit it.
  • The MCP server runs locally over stdio with the same Node executable as Harness. No credential is sent to a hosted MCP service, and startup does not use npx or a shell.
  • DSH treats MCP commands as trusted executables outside the agent sandbox. This bundle pins @tokenlabai/mcp-server@0.6.22; review an upgrade before changing the pin.
  • Core and full tools include billable generation and destructive operations such as file deletion or task cancellation. Keep Harness approval policy enabled for those calls.
  • Tool and model outputs are untrusted external content. Do not treat returned text or URLs as instructions.
  • The async waiter includes request IDs in diagnostics but never includes the API key in errors or tool results.

Model catalog maintenance

The checked-in generated/model-routes.json is the machine-readable route snapshot, and cordis.patch.yml is generated from it.

npm run routes:source-check  # read-only comparison with the live public model contract
npm run routes:sync          # refresh the snapshot and generated bundle patch
npm run routes:check         # offline generated-file consistency check

The routing policy is deterministic:

  1. Prefer the exact owned_by native format when both TokenLab and Harness declare it.
  2. Otherwise use a declared Harness-supported compatibility format.
  3. Never place one model on more than one provider route.
  4. Fail the source check when an active model has no Harness-supported format.

Development and verification

corepack pnpm install
pnpm peers check
pnpm run check
pnpm run smoke:dsh
pnpm run build
npm pack --dry-run

The test suite covers native-route selection, route exclusivity, generated patch consistency, core-default MCP configuration and explicit profile selection, structured retry permission and delays, task-id fencing, successful-result URL extraction, transient retry limits, caller cancellation, and UTF-8-safe rendering. The clean-install smoke packs the local bundle, installs it into a fresh Harness 0.1.5-rc.3 Web profile, checks all three native routes and the async tool, boots the Web app, verifies HTTP 200, and confirms the TokenLab MCP child process is running before cleaning up the process tree.

Uninstall

dsh plugin --profile web remove --workspace-root @tokenlabai/dsh-provider

Restart the profile. Removing the bundle removes its TokenLab routes, MCP tool namespace, and async waiter; it does not delete your TokenLab account or API key.

Links

License

MIT

Comments

Loading…

From the same category

dsh-web

by zhu1090093659

DeepSeek Harness (DSH) Web Plugin Aggregation Ecosystem · Everything is a plugin, distributed via the Creative Workshop

Tools & CapabilitiesTerminal & ClientsDevelopment & InfrastructureModels & ProvidersUI & ExperienceManifest valid

★ 8.2k

↓ 134/wk

Apache-2.0

TypeScript

Oct 1, 2026

dsh plugin --profile web add dsh-web

by yjh051108

dsh-routing-suite — injector + router-standard kit: install the runtime injector first, then the task-aware reasoning-mode router preset (measured P1-P23).

Models & ProvidersDevelopment & InfrastructureManifest valid

★ 7k

MIT

JavaScript

Sep 18, 2026

dsh plugin --profile web add @dsh-external/dsh-super-injector

by superdesigndev

OpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn

Tools & CapabilitiesModels & ProvidersManifest valid

★ 4k

NOASSERTION

Python

Oct 1, 2026

dsh plugin --profile web add treg-dsh

by zouyuxuan122

在 dsh 里装上这个插件即可,无需登录、注册或填 API Key,就能使用包括 Muse Spark 1.3、MiMo V2.6 在内的前沿模型——完全免费,不限量。 All you do is install this plugin in dsh: no login, no sign-up, no API key — the frontier models are just there, Mu

Models & ProvidersManifest valid

★ 529

MIT

JavaScript

Oct 1, 2026

dsh plugin --profile web add dsh-our-free-model

by V1ki

Use ChatGPT (Codex), Claude, and Grok (X Premium) subscriptions as DeepSeek Harness LLM providers — OAuth login in the web UI, no API keys

Models & ProvidersManifest valid

★ 410

↓ 2.8k/wk

MIT

TypeScript

Sep 28, 2026

dsh plugin --profile web add dsh-plugin-subscriptions

by Han-1413141

DeepSeek Harness session cost meter plugin: session/daily cost, budget, history, OpenCode Go quota, official & custom-provider balance, Codex-like token heatmap, peak/off-peak pricing with pre-switch

Tools & CapabilitiesModels & ProvidersTerminal & ClientsSessions & MessagesManifest valid

★ 361

↓ 24.2k/wk

MIT

JavaScript

Oct 1, 2026

dsh plugin --profile web add dsh-cost-meter