Practical guides · Independent guide

DeepSeek Harness Model Discovery: Empty Lists and Manual IDs

An empty discovery result does not prove that a gateway cannot run a model. Discovery and inference are separate requests. Use the endpoint documentation to supply a model ID manually when listing is unavailable, then test inference independently.

Reviewed Oct 4, 2026Developer previewIndependent guide
Evidence status: Official documentation reviewed at dsh-v0.2.1-alpha.1 (5badb15). npm and PyPI release identities are separate; no newer local runtime result is claimed. Re-check the linked first-party source after a new release candidate.
Track setup progress →

Sharing includes the public link only, without local progress or private configuration.

Know which catalog you are seeing

Built-in providers use the installed catalog. A custom provider can query the gateway using the form’s current URL, protocol and key. Changing a built-in provider’s URL does not make its catalog a live gateway listing.

Save only the models you need

For a custom provider, use Fetch available models, select entries, and add them. The selection is not persisted until the provider is saved. If the endpoint cannot list models, use its documented IDs instead.

  1. A 401 listing response calls for an authentication check.
  2. An unexpected listing shape calls for manual model entry.
  3. Avoid importing an entire catalog before your first successful request.

Verify in a new session

Choose the saved model and begin a new session with a short repository-summary task. Existing sessions can retain their recorded model. An updated default is not proof that an older session switched.

  1. Confirm the displayed provider and model.
  2. Record the error category if the first request fails.
  3. Return to protocol selection when the model exists but requests are rejected.

Match the discovery endpoint to its protocol

Custom Chat Completions and Responses routes query GET {baseURL}/models with bearer authentication. Anthropic Messages discovery uses /v1/models?limit=1000 with native headers. Discovery reads metadata without saving it; the provider’s config decides which models are served. Listing support and a successful inference request remain distinct.

First-party sources

Open the pinned or retrieved source before acting on a changed release candidate.

Continue by layer