Introduction¶
In the DeepSeek Harness (DSH) plugin ecosystem, generic web search plugins usually only perform keyword retrieval. When users are developing a specific project (for example, writing a Rust CLI), generic search results often contain a large amount of irrelevant information rather than the specific technical documentation or solutions they need. dsh-context-aware-search aims to solve this pain point by reading the session context to rewrite queries and improve the relevance of search results.
Plugin Overview¶
This is a DeepSeek Harness (DSH) plugin maintained by user helibeiqi. Its core role is to transform the web_search interface from simple “keyword bombing” into a “context-aware research assistant”. It reads the current session, rewrites queries, reranks search results and marks credibility, while supporting one-click source summarization.
Core Capabilities¶
The plugin provides the following main features:
- Context-Aware Query Rewriting: Reads the last N messages in the session, extracts the language, framework, or library currently being used, and expands the original query (for example, expanding
await errortoPython asyncio await common error solutions). - Result Reranking: Uses the TF-IDF algorithm to score results, reranks them based on the similarity between the query and the context, and ensures the most relevant results appear first.
- One-Click Source Summarization: Provides the
web_summarizetool, automatically fetches a specified URL or the top N links from search results, and generates a structured Markdown summary containing key points, key data, and source links. - Source Credibility Labels: Based on domain rules (such as
.edu,.gov, and official documentation), marks each result withhigh,medium, orlowcredibility. - Multi-Backend Automatic Failover: Supports DuckDuckGo, Bing, and SearXNG, with an automatic fallback mechanism.
- Zero Configuration: Uses DuckDuckGo by default and can start without an API key.
Installation and Activation¶
Before installation, confirm that the DeepSeek Harness version is 0.1.0-rc.6, because the plugin is bound to this runtime version.
The installation command is as follows:
dsh-context-aware-search@0.1.1
Note: It is strictly prohibited to install @latest. This plugin is built for DeepSeek Harness 0.1.0-rc.6; a version mismatch may cause search and fetch functionality to behave abnormally.
Usage¶
You can directly use search commands in the conversation; the plugin automatically handles context rewriting and result reranking.
Example 1: Search and Summarize¶
web_summarize query="Rust error handling best practices" topN=3
Example 2: Summarize a Specific Document¶
web_summarize url="https://doc.rust-lang.org/book/ch09-00-error-handling.html"
Workflow¶
- The plugin reads the last
contextWindowmessages (default: 8). - It analyzes the tech stack in the context and rewrites the original query.
- It calls multiple backends to search (DuckDuckGo -> Bing -> SearXNG).
- It uses TF-IDF to rerank results and mark credibility.
- It returns Markdown content containing the rewritten query explanation and a ranking table of results (with credibility labels).
Notes¶
- Dependency Environment: This plugin depends on the DeepSeek npm registry and requires the corresponding access permissions.
- Algorithm Limitations: The reranking feature does not depend on an embedding model; it only uses TF-IDF for keyword extraction and scoring.
- Tech Stack: It uses only TypeScript and the platform-native
fetch, with no external model dependencies, and runs lightweight.
Summary¶
By introducing session context, dsh-context-aware-search significantly improves the precision of web search in technical scenarios. It is suitable for developers who need to continuously obtain domain-specific information (such as programming documentation and technical blogs) within a conversation flow. For more details, see the Plugin Directory or the GitHub Repository.