DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Octen — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
O

@octen.ai/dsh-octen

Octen

Octen web search and fetch for DeepSeek Harness: web_search through Octen /search, web_fetch through Octen /extract.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:Octen-Team/dsh-octen#2b68131eef8767891284dcf97bce8fd556b91d2c
READMECompatibilityVersions

Compatibility and provenance

Octen is published as @octen.ai/dsh-octen and currently resolves to version 0.1.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/8/2026

Versions

0.1.0stable
10/8/2026

Related plugins

Loading related plugins…

Latest
0.1.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/8/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in search-research.

Ab Wechat Scrapedsh-ab-wechat-scrape--- description: "The out-of-tree wechat_scrape tool: retrieves WeChat official-account articles, filters promotional blocks, and saves each as a Markdown file, for maintainers of this machine's dsh profiles." kind: "package-reference" ---Ab Market Researchdsh-ab-market-researchAn out-of-tree DeepSeek Harness plugin: the trade_search tool (multi-round aspect-broadening query planning, publisher-tier ranking, source diversity, JSON snapshot) and its browser card in one package.Weknora@wxg-prc-cpg/dsh-weknoraWeKnora knowledge retrieval tools for DeepSeek Harness (dsh): semantic search, document reading and RAG/agent answers over your own knowledge bases.Free Searchdsh-free-searchFree web search for DeepSeek Harness: 24 engines (Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl/Parallel keyless; Zhihu global/site via MCP and Perplexity/SerpBase/DeepSeek/You.com/Baidu/Kimi/Aliyun/Doubao with key; OpenAI/Gemini/Claude

README

English | 简体中文

dsh-octen

Octen web search and page fetch for DeepSeek Harness.

The plugin registers Octen as a provider on the harness web seam (ctx.web), so the built-in web_search and web_fetch tools run through Octen. You do not get new tools to learn, and the model sees the same tool schema as before.

ToolOcten endpointWhat the model gets
web_searchPOST /searchTitle, URL, a query-relevant highlight, and the publication time for each result
web_fetchPOST /extractThe page's main content as clean Markdown, headed by its title

Install

You need DeepSeek Harness 0.2.0-rc.2 or later and an Octen API key from octen.ai.

From the web UI: open Plugins, click Add plugin, enter @octen.ai/dsh-octen, and click Install. Then open the plugin's page, paste your key into Octen API key, and click Save.

From a terminal: use the profile you run. The desktop app's profile is desktop; dsh web uses web.

dsh plugin --profile desktop add @octen.ai/dsh-octen

If your shell says command not found: dsh, open the desktop app and choose DeepSeek Harness → Manage dsh Command… → Install, then open a new terminal. Restart the desktop app afterwards if it was running.

Then save the key on the plugin's page in the web UI, or export it in the environment that launches DeepSeek Harness:

export OCTEN_API_KEY=your-key

Installing the plugin points both web_search and web_fetch at Octen. Ask the agent something current to try it.

Choose which tools use Octen

Search and fetch are selected separately. To keep Octen search but go back to the shipped HTTP fetch, add this to your profile's cordis.patch.yml (for example ~/.dsh/profiles/desktop/cordis.patch.yml):

- id: web
  config:
    searchProvider: octen
    fetchProvider: http

Use searchProvider: deepseek-official to go back to the shipped search. Your profile's patch layer applies after the plugin's own, so it wins.

Configuration

The plugin's row id is dsh-octen. All fields are optional and are read again for every call, so changes apply without a restart.

FieldDefaultMeaning
apiKeyEnvOCTEN_API_KEYCredential reference the key is read from: the credentials store (what the Plugins page writes), then the environment
apiKeynoneLiteral key. Prefer apiKeyEnv, so no secret goes into a config file
baseURL$OCTEN_API_URL, then https://api.octen.aiOcten API base. Must be HTTPS, or HTTP to localhost. OCTEN_API_URL is read from the process environment or ~/.dsh/.env, never from a project's .env
extractTimeoutSeconds25Per-URL extraction timeout for web_fetch, 1–60. Keep it below the web_fetch tool budget (30 s by default)

Example:

- id: dsh-octen
  config:
    apiKeyEnv: TEAM_OCTEN_KEY
    extractTimeoutSeconds: 20

Behavior

  • Search. The harness sets the result count (8 by default), and the plugin passes it to Octen as count. Results without a URL are dropped; a missing title, highlight, or date is left out instead of being made up.
  • Fetch. Octen extracts the page server-side, so the harness does not download or convert HTML itself. A successful extraction reports HTTP status 200, because Octen does not return the origin's status code. If Octen cannot extract the page, the tool call fails with Octen's reason, for example Failed to resolve domain.
  • Errors. A missing key fails with WEB_PROVIDER_CREDENTIAL_MISSING before any request is sent. A rejected key, an exhausted balance, a rate limit, or a server error fails with WEB_PROVIDER_ERROR and Octen's message. Cancellation reports WEB_ABORTED.
  • Security. Requests carry your key in the x-api-key header, refuse redirects, and go only to an HTTPS base (or HTTP on localhost). A project's .env cannot change the endpoint, so opening an untrusted repository cannot redirect your key.

Development

pnpm install
pnpm run typecheck
pnpm test                         # unit tests against a local stub server
OCTEN_API_KEY=... pnpm test:live  # real calls to api.octen.ai
pnpm run build                    # lib/index.js (host) and lib/client.js (settings page)

To try a local build, pack it and add the tarball to a profile:

npm pack
dsh plugin --profile desktop add "$PWD/octen.ai-dsh-octen-0.1.0.tgz"

The package has two halves. src/index.ts is the host plugin that registers the providers. src/client/ is the settings section on the plugin's Plugins page, bundled as a window.__ModuleLoader__ factory that the harness web shell loads.

License

MIT