Back to home@Shyboy0499

dsh-web-search

Web search tool for DeepSeek Harness (dsh): query + ranked results.

Stars
1
Language
TypeScript
Created
Sep 5, 2026
Updated
Sep 6, 2026

Introduction

dsh-web-search

CI License

Web search tool for DeepSeek Harness (dsh).

dsh-web-search is a small, dependency-free DeepSeek Harness plugin that lets the coding agent search the web and get back ranked, readable results (title + URL

  • snippet) through the official tool API. It uses a keyless public endpoint, so there's nothing to configure.

Features

ToolWhat it does
web_searchQuery the web and return ranked results with title, URL and snippet
fetch_pageFetch a URL and return readable text (title + body)

Installation

dsh plugin --profile web add dsh-web-search

No API key or external credentials required.

Tool reference

web_search

Search the web and get readable results.

{
  "query": "deepseek harness",
  "limit": 5
}

Returns { query, results: [{ title, url, snippet }] }.

limit (optional) caps how many results are returned. It is clamped to the range 1–10 so the agent can't request an unbounded result list; defaults to returning everything the endpoint provides (usually a handful).

Network/abort failures surface as readable messages rather than raw TypeError/AbortError.

fetch_page

Fetch a URL and get readable text back (title + body), via a keyless reader endpoint. Best used on a result URL returned by web_search.

{ "url": "https://example.com/article", "maxChars": 8000 }

Returns { url, title, content }. maxChars caps the returned body (default 12000, clamped to a hard 80000 ceiling).

Development

pnpm install
pnpm typecheck
pnpm test
pnpm lint
pnpm build

Structure

The plugin is deliberately split so the fetch layer and the formatting layer can be developed and tested independently:

  • src/search.ts — fetches + parses results from the search endpoint
  • src/format.ts — renders results as readable text for the agent
  • src/tool.ts — the web_search tool definition (schemas, render, execute)
  • src/index.ts — plugin entry point registering the tool with the harness

License

MIT