Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
工具与能力 #dsh#dsh-plugin

dsh-web-search-toggle

按会话切换网页搜索,要求 Agent 回答前先搜索网页。

seerableofficial @seerableofficial ⬇ 2 ★ 1 main

安装

dsh plugin --profile web add github:seerableofficial/dsh-web-search-toggle
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

按会话切换网页搜索,要求 Agent 回答前先搜索网页。

该插件未提供要点说明,请参考仓库 README。

dshdsh-plugin
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/seerableofficial/dsh-web-search-toggle
许可证MIT
主要语言main
下载量2
GitHub 星标1
最近推送2026-08-22
收录日期2026-09-19
分类工具与能力

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# dsh-web-search-toggle

A [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH)
plugin that adds a **"Web Search"** toggle button to the chat composer tool row.
When it is turned on, the agent is instructed that it **must search the web
before answering** — mirroring the "Web Search" toggle in the DeepSeek Web Chat
UI. The toggle is **per-session** (per conversation), like DeepSeek's own
per-conversation toggle.

## Features

- Adds a compact, pill-shaped **"Web Search"** button in the composer tool row.
  Inactive = neutral outline; active = DeepSeek brand blue with a small green
  "on" dot.
- When ON, injects a mandatory **system-prompt directive** telling the agent to
  call `web_search` before answering, on every turn of that session.
- Per-session state, persisted across reloads and host restarts.
- Follows DSH's plugin conventions (`dsh.bundle.patch` + `dsh.client`), so it
  installs like any other DSH web-profile plugin.

## How it works

- **Client half** (`lib/client.js`): registers the toggle into the composer's
  tool row (`conversation.input.left`, the seat beside the resident access-mode
  / plan / attach chrome). On toggle it calls the host through the
  client↔host RPC channel.
- **Host half** (`index.js`):
  - Serves an RPC channel (`/dsh-web-search`) with `websearch.get-state` /
    `websearch.set-state`, storing the flag per session and persisting it to
    `~/.dsh/dsh-web-search-toggle.json`.
  - Registers a **system-prompt section** (`dsh-web-search:force`) whose text is
    evaluated on every prompt assembly. When the current session's flag is ON,
    it injects a mandatory "you MUST call `web_search` first" directive into the
    system prompt; when OFF it renders empty (empty sections disappear).

The `web_search` tool itself is registered by DSH's own `dsh-tool-web` package
(via the auto-selected DeepSeek search-provider seam); this plugin only forces
its use.

## Why "force" is a directive, not a hard block

DSH has no primitive for "the model MUST call tool X on every turn." So the
enforcement is a strong, always-present **system-prompt instruction** — the
authoritative, reliable way to steer the model in this harness. The model
follows it, but compliance is probabilistic rather than guaranteed (as in the
DeepSeek web chat UI itself).

## Requirements

- DeepSeek Harness with the **web** profile (`dsh --profile web`).
- A configured web search provider (the built-in DeepSeek search provider, or
  any `web_search`-providing provider). The plugin forces the tool; it does not
  install one.

## Installation

The plugin is published to npm. From the DSH **web** profile:

```bash
# via the dsh plugin command (recommended — reconciles the bundle list)
dsh plugin --profile web add dsh-web-search-toggle
```

or with pnpm directly (skips bundle-list reconcile):

```bash
cd
npx pnpm add dsh-web-search-toggle
# then add "dsh-web-search-toggle" to dsh.profile.bundles in package.json
```

Then **restart DSH** so the bundle patch composes at boot:

```bash
dsh --profile web restart          # or your normal restart path
```

## Usage

1. Open a conversation in the DSH web UI.
2. Click the **Web Search** pill in the composer tool row to toggle it on.
3. Ask a question — the agent calls `web_search` first and cites sources.
4. Toggle it off to restore normal behavior.

The on/off state is remembered per session.

## Files

| Path | Purpose |
|---|---|
| `package.json` | Package + `dsh.bundle.patch` + `dsh.client` declaration |
| `index.js` | Host plugin: RPC channel + system-prompt force section |
| `lib/client.js` | Client plugin: composer "Web Search" toggle |
| `cordis.patch.yml` | Bundle patch mounting the host half |
| `LICENSE` | MIT License |
| `README.md` | This file |

## License

[MIT](./LICENSE)

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。