Introduction¶
The core design philosophy of DeepSeek Harness (DSH) is “everything is a plugin”. The official DeepSeek search provider connects directly to the DeepSeek platform and uses the Anthropic Messages API. When the LLM runs on the Volcengine Ark platform and there is no DeepSeek platform Key, authentication failures may occur.
The web search capability provided by Volcengine Ark (web search plugin) is natively exposed only through the Responses API, and the model side uses the {"type": "web_search"} tool. The dsh-web-search-ark plugin routes DSH’s built-in web_search capability to Ark’s Responses API, addressing the need for web access in Ark deployments.
Core Features¶
The plugin mainly performs the following tasks:
- Register a search provider: Registers a search provider named
ark-officialfor DSH to call. - Call the Ark API: Calls the Ark Responses API via
POST {baseURL}/responsesand passes the nativeweb_searchtool. - Result mapping: Maps the
url_citationannotations returned by the model into DSH’s search source format (deduplicated title, publication time, and site name). - Error handling: Throws a structured
WEB_PROVIDER_ERRORwhen the model does not trigger a search. - Settings card: Provides a settings interface in Settings → Plugins, supporting configuration of the model, endpoint, maximum keyword count, and API Key.
- Logging: Records the
web/ark-search-llm-requestevent to the session logs.
Installation and Enablement¶
Environment Requirements¶
- DSH version: 0.1.2-rc.1 or higher (supports 1.1.0+).
- Node environment: pnpm must be installed (
dsh pluginis a pnpm forwarder). - Ark account: An account with the web search plugin enabled and a valid API Key.
- Network: Access to
ark.cn-beijing.volces.comor a customARK_SEARCH_BASE_URL.
Installation Steps¶
- Install DSH (locked to a verified version):
npx @deepseek-ai/dsh@0.1.2-rc.1
- Ensure pnpm is available:
npm install -g pnpm # 或者: corepack enable
- Place the plugin files:
After extracting the plugin package, you must place it in DSH’s plugin directory.
mkdir -p ~/.dsh/profiles/web/packages
cp -R web-search-ark ~/.dsh/profiles/web/packages/
- Register the plugin:
dsh plugin --profile web add ~/.dsh/profiles/web/packages/web-search-ark
- Configure the search source:
Append the following content to~/.dsh/profiles/web/cordis.patch.ymlto switch the search source for the web profile toark-official:
- id: web
config:
searchProvider: ark-official
- Configure credentials:
Set theVOLCENGINE_API_KEYenvironment variable. This Key can also be configured on the Settings → Models page in the Web UI or in~/.dsh/.credentials.yaml.
Configuration Notes¶
The plugin overrides default values through environment variables or a configuration file:
| Configuration Item | Default Value | Description |
|---|---|---|
apiKeyEnv |
VOLCENGINE_API_KEY |
Credential reference, resolved from the credential service, startup environment, or the literal value in this section. |
baseURL |
https://ark.cn-beijing.volces.com/api/v3 |
Base address for the Responses API; /responses is appended automatically. It can be overridden by the ARK_SEARCH_BASE_URL environment variable. |
model |
deepseek-v4-flash-ga-260731 |
Model ID used for the search subtask. |
maxKeyword |
5 |
Maximum number of keyword searches allowed per search round (Ark allows 1–50). |
The plugin directory must be strictly located under ~/.dsh/profiles/<profile>/packages/; otherwise, dsh plugin add may fail due to Node module resolution path issues.
Cost and Considerations¶
- Billing model: Billed by the number of actual searches. Each
web_searchmay expand into up tomaxKeywordkeyword searches, and each call incurs a cost. There is no caching mechanism, and repeated calls are billed again. - Logs: Each request is recorded under the session context
web/ark-search-llm-requestand can be reconciled in the Ark console. - Plugin directory: You must follow the plugin directory location requirement; otherwise, dependency resolution may fail.
Summary¶
dsh-web-search-ark is the bridge between DeepSeek Harness and the Volcengine Ark web search capability, specifically designed for DSH deployments in the Ark environment. By mapping the native url_citation and providing a graphical settings card, it lowers the barrier to configuring search on the Ark platform.