dsh) is DeepSeek’s open-source agent harness, released under MIT and built so that everything is a plugin — the model adapter, the tool registry, the sandbox, and the agent loop itself. It runs as a local web UI or headless from the terminal, and accepts any OpenAI-compatible endpoint as a custom provider.
Setup
Web UI
http://127.0.0.1:3080 by default), go to Settings → Models → Add a custom provider, and fill in:
Under Model catalog, click Fetch available models —
dsh queries Opper’s OpenAI-compatible GET /models endpoint and lists the full catalog. Select the models you want, save, then pick one in the model picker to make it the default for new sessions.
Config file, and headless mode
The Models page writes to$DSH_HOME/settings.yaml (default ~/.dsh). To configure the same thing by hand — for example for one-shot headless jobs:
Models entered by hand are treated as text-only; for a vision model, add
input: [text, image] to its entry. The API key itself never lands in settings.yaml — the UI stores it in $DSH_HOME/.credentials.yaml, and apiKeyEnv reads it from the environment instead.Troubleshooting
Fetch available models returns nothing
Fetch available models returns nothing
Check the base URL has no trailing path —
dsh appends /models itself. It should be exactly https://api.opper.ai/v3/compat.A vision model won't accept images
A vision model won't accept images
Hand-written model entries default to text-only. Add
input: [text, image] under that model’s entry in settings.yaml.Provider ID is wrong
Provider ID is wrong
The provider ID is permanent once saved. Delete the provider and re-add it with the correct ID.
Related
Model catalog
Browse the catalog for model IDs and capabilities.
All integrations
Every app that runs on Opper.