How dddmuc/dsh-free-search works
dsh-free-search is a DeepSeek Harness plugin that replaces the default web search provider with configurable multi-engine search. The main workflow routes web_search through engine selection, caching, and fallback; additional tools provide time-filtered search, multi-engine aggregation, engine diagnostics, and platform-specific search. A settings card and popup command configure the plugin, while a system prompt informs the agent about engine use and untrusted results. README documents web_fetch support, but its implementation is not present in the supplied tree. The graph reflects excerpts and README claims; unsampled internal call relationships are omitted.
Main entry points: index.js Web search provider · client.js Settings card
Components 16
Harness Integration
- Plugin registration
lib/index.js - Web search provider
lib/index.js - Search guidance
lib/index.js - Plugin configuration
lib/index.js
Search Runtime
- Engine adapters
lib/index.js - Routing and fallback
lib/index.js - Result cache
lib/index.js - Multi-engine merge
lib/index.js
Search Tools
- Advanced search
lib/index.js - Platform search
lib/index.js - Engine testing
lib/index.js - Web fetch provider
Configuration UI
- Settings card
lib/client.js - Engine popup
lib/client.js
Other components
- Harness agent
- Plugin user
Connections 18
- Plugin registration → Web search provider: registers
README.md - Harness agent → Web search provider: searches via
README.md - Web search provider → Routing and fallback: routes through
lib/index.js - Routing and fallback → Engine adapters: tries engines
README.md - Web search provider → Result cache: reads/writes
lib/index.js - Routing and fallback → Multi-engine merge: dispatches
lib/index.js - Multi-engine merge → Engine adapters: queries
README.md - Harness agent → Advanced search: invokes
lib/index.js - Advanced search → Web search provider: uses fallback
README.md - Harness agent → Platform search: invokes
lib/index.js - Harness agent → Engine testing: invokes
lib/index.js - Harness agent → Web fetch provider: fetches pages
README.md - Plugin registration → Search guidance: injects guidance
README.md - Plugin user → Settings card: configures
README.md - Settings card → Plugin configuration: updates
lib/client.js - Plugin user → Engine popup: selects engine
lib/client.js - Engine popup → Plugin configuration: updates
lib/client.js - Plugin configuration → Web search provider: configures
README.md