API Key and Connection Issues
Where do I configure the API Key?
- Open "Settings" (gear icon at bottom left)
- Go to the "AI Services" page
- Find the corresponding Provider in the provider list (e.g., OpenAI, Anthropic, etc.)
- Click configure and enter your API Key
Or access the AI Services management page through the "AI Services" entry in the resource manager.
"API Key invalid" prompt?
- Check if the Key is complete — Ensure you haven't missed characters at the beginning or end when copying the API Key
- Check if the Key has expired — Some provider keys have expiration dates; confirm on the provider's website
- Check account balance — If the provider account balance is insufficient, the key may be suspended
- Confirm Key permissions — Ensure the key has permission to call the corresponding model
Connection timeout?
If requests to the model API frequently time out:
- Check network connection — Ensure you can normally access the corresponding provider's website
- Check proxy settings — If you use a proxy, ensure it's configured correctly and allows access to API endpoints
- Try changing endpoints — Some providers have multiple API endpoints (e.g., different regions for OpenAI), which can be modified in Provider configuration
- Reduce request frequency — If sending large numbers of requests in a short time, you may trigger the provider's rate limit
What do the network banners in chat mean?
Recent DesireCore versions evaluate the local Agent Service, device connectivity, and model-provider reachability separately instead of relying only on whether the operating system reports a Wi-Fi connection:
| Banner | Meaning | What to do |
|---|---|---|
| Network unreachable. Waiting for recovery | The public network, DNS, proxy, or route is currently unavailable | Check DNS, proxy, VPN, and system networking. The original run is suspended and resumes automatically; do not repeatedly resend it |
| Model provider temporarily unreachable. Retrying | Only the current Provider is degraded; other network access may still work | Wait for automatic retries or switch to another available Provider |
| Network issue. Confirming task status | Connectivity just changed and DesireCore is reconciling the original run with the backend | Wait for reconciliation to avoid creating a duplicate run |
| Connecting to local service | The desktop app is reconnecting to its local Agent Service; this is independent of public-network status | If it persists, restart DesireCore and check whether local security software is blocking it |
After connectivity returns, DesireCore reconciles the existing session before deciding whether to keep waiting or resume retries. Resend manually only after the UI explicitly marks the run as failed.
A model shows "unavailable"?
Common reasons for model unavailability:
| Reason | Solution |
|---|---|
| Provider not enabled | Enable the corresponding Provider on the AI Services page |
| Provider deleted | Re-add the Provider and configure the API Key |
| Model discontinued | The provider may have discontinued the model; select an alternative |
| API Key lacks permission | Confirm your key has access to this model |
How to add a custom Provider?
DesireCore supports custom Providers compatible with the OpenAI API format (such as locally deployed Ollama):
- Click add provider on the AI Services page
- Select "Custom (OpenAI compatible)"
- Fill in the API endpoint address (e.g.,
http://localhost:11434/v1) - Configure authentication information (if needed)
If you're running Ollama or other OpenAI API-compatible model services locally, you can add them directly as custom Providers without an API Key.
Will API calls incur charges?
DesireCore itself is free, but fees for calling AI model APIs are charged by the corresponding provider. Costs depend on:
- The model you choose (different models have different prices)
- Message length (billed by Token)
- Conversation context length
You can view reference prices for each model in the model selector. It's recommended to set usage budgets and alerts on the provider's website.
Multiple Providers configured with similar models, which one is used?
DesireCore uses the following priority:
- Manually selected model in conversation (highest priority)
- Model specified in global default mapping
- Default model in the first available Provider
How to verify if the API Key is configured correctly?
After configuring the API Key, the system will automatically perform connectivity verification. The verification result will be displayed on the Provider card:
- Green status — Connection successful
- Red/Orange status — Connection failed or key invalid