MISSING_CREDENTIAL Error
Fix MISSING_CREDENTIAL by adding the missing provider credential, checking apiKeyEnv, selecting the model again, and retrying the session.
On this page
First, match MISSING_CREDENTIAL
This page targets MISSING_CREDENTIAL. The full message can contain a few extra words on different operating systems or Node.js versions, but the core error code or phrase should match.
MISSING_CREDENTIALmissing credentialDSH MISSING_CREDENTIALWhen searching or asking for help, copy the full error and remove API keys, private repository names, usernames and sensitive paths.
For normal setup, open Settings → Models and save the API key on the provider card. If the provider uses apiKeyEnv, set that exact environment-variable name before starting DSH; use the command for your operating system below.
What MISSING_CREDENTIAL means
DSH knows which provider or model the session wants to use, but it cannot find a usable credential for that provider.
Common causes of MISSING_CREDENTIAL
- No API key has been saved for the selected provider.
- The session still points to a provider whose credential was removed.
- apiKeyEnv names an environment variable that was not set before DSH started.
- You edited a different DSH profile from the one that is currently running.
Source trace for MISSING_CREDENTIAL
These links are pinned to the 0.1.2-alpha.5 / 49a606b snapshot used for this page. They help separate MISSING_CREDENTIAL from failures produced by Node.js, PowerShell, the operating-system network stack or filesystem permissions.
Fix MISSING_CREDENTIAL
- 01
Check which provider the session uses
Read the selected model and the error details. Confirm whether the session uses the built-in DeepSeek provider or a custom OpenAI-compatible provider.
- 02
Save the key in the Web UI
Open Settings → Models, edit the matching provider, enter the key in its credential field and save. For the normal provider-card flow, you do not need an environment variable.
- 03
Only use environment commands when apiKeyEnv is configured
The variable name must exactly match apiKeyEnv. GATEWAY_API_KEY below is an example; replace it with the name in your provider configuration.
- 04
Windows PowerShell
Set the variable in the same PowerShell window that will start DSH.
$env:GATEWAY_API_KEY="your_key_here" npx @deepseek-ai/dsh web - 05
Windows Command Prompt
Use set in Command Prompt, then start DSH in that same window.
set GATEWAY_API_KEY=your_key_here npx @deepseek-ai/dsh web - 06
macOS or Linux
Export the variable in the same shell that will start DSH.
export GATEWAY_API_KEY="your_key_here" npx @deepseek-ai/dsh web - 07
Select the model again
Return to the input area, select a model under the provider you just configured and retry. If the old session still holds the previous provider or model, create a new session.
Verify MISSING_CREDENTIAL is fixed
- Settings shows the provider as configured without revealing the full key.
- The input area shows a specific provider and model instead of Select model.
- A small text-only prompt completes without MISSING_CREDENTIAL.
- Do not paste the real API key into Model ID or apiKeyEnv.
- Do not publish the key in screenshots, logs or GitHub Discussions.
- Do not change port, workspace or plugin settings for a credential-only error.
MISSING_CREDENTIAL FAQ
How do I fix MISSING_CREDENTIAL?
For normal setup, open Settings → Models and save the API key on the provider card. If the provider uses apiKeyEnv, set that exact environment-variable name before starting DSH; use the command for your operating system below.
What does MISSING_CREDENTIAL mean?
DSH knows which provider or model the session wants to use, but it cannot find a usable credential for that provider.
How do I verify MISSING_CREDENTIAL is fixed?
Settings shows the provider as configured without revealing the full key. The input area shows a specific provider and model instead of Select model. A small text-only prompt completes without MISSING_CREDENTIAL.
Checked against the official repository on 2026-09-03. Published version baseline: 0.1.1-rc.2; source snapshot: 0.1.2-alpha.5 (49a606b).
Official README · Verified source commit · GitHub Discussions