Communitygithub.com

qwased/dsh-web-search-browser

Habilidad de búsqueda web con navegador para DeepSeek Harness (DSH) que utiliza Playwright MCP para controlar Edge y buscar en Bing, filtrando resultados según reglas de seguridad de tres niveles.

¿Qué es dsh-web-search-browser?

Esta habilidad permite a DeepSeek Harness (DSH) realizar búsquedas web reales utilizando un navegador Edge local controlado a través de Playwright MCP. A diferencia del método integrado `web_search` de DSH, esta herramienta abre directamente Bing en una instancia real del navegador, captura la instantánea de la página y filtra los resultados según un sistema de tres niveles de seguridad (confiable, sospechoso, bloqueado). Está diseñada para agentes de IA que necesitan información actualizada de la web con un control de calidad riguroso, evitando sitios maliciosos o poco fiables. La habilidad se configura en el archivo `cordis.yml` de DSH y requiere Node.js, Edge y el paquete `@playwright/mcp`. Todo el proceso es automático: el agente llama a las herramientas MCP para navegar, capturar y filtrar, y devuelve un resumen formateado con enlaces seguros. Es especialmente útil para entornos donde la precisión y la seguridad de la información son críticas, como en asistentes de desarrollo o investigación.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add qwased/dsh-web-search-browser

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

web-search — Búsqueda web con navegador Edge para DSH

En DSH, utiliza Edge local + Playwright MCP para realizar búsquedas web reales (similares a las de un sitio web oficial): el modelo invoca las herramientas MCP del navegador para abrir Bing en Edge real, captura la instantánea de la página, la devuelve al contexto de DSH y luego filtra cada resultado según reglas de seguridad para generar un resumen. No utiliza la interfaz web_search integrada de DSH, sino una búsqueda real con navegador.

Composición de capacidades (dos partes)

ComponenteUbicaciónDescripción
Configuración de Playwright MCPcordis.yml de DSH (plugin dsh-mcp-client)Permite que DSH controle Edge
Esta habilidad (skill).agents/skills/web-search/SKILL.mdRegistra los pasos de configuración, el flujo de búsqueda y las reglas de seguridad

Ambos son necesarios para que la capacidad de búsqueda sea completa.

1. Configuración en un equipo nuevo

Requisitos previos

  • Node.js instalado (incluye npm)
  • Microsoft Edge instalado (incluido en Windows 10/11)
  • DSH ya funcional

Paso 1: Instalar el paquete Playwright MCP

Si la política de ejecución de PowerShell bloquea .ps1, usa npm.cmd / npx.cmd.

npm install -g @playwright/mcp@latest --no-audit --no-fund

Verificar que se puede iniciar:

node "$env:APPDATA\npm\node_modules\@playwright\mcp\cli.js" --help

Si ves un montón de Opciones, está instalado.

Paso 2: Registrar el cliente MCP en el cordis.yml de DSH

Agrega una entrada del plugin @deepseek-ai/dsh-mcp-client en el cordis.yml del perfil/preset que ejecuta DSH (una entrada por servidor MCP):

- id: mcp-playwright
  name: '@deepseek-ai/dsh-mcp-client'
  config:
    serverName: playwright
    transport: stdio
    command: npx.cmd
    args: ['-y', '@playwright/mcp@latest', '--browser', 'msedge']
  • --browser msedge usa Edge local directamente, sin necesidad de descargar Chromium.
  • command usa npx.cmd para evitar la política de ejecución de PowerShell; si no hay restricciones, también puede ser npx.
  • DSH registra las herramientas MCP como mcp__<serverName>__<nombre de herramienta original>, por ejemplo: mcp__playwright__browser_navigate, mcp__playwright__browser_snapshot, etc.

Paso 3: Reiniciar para que surta efecto

El cordis.yml se carga al iniciar DSH; el plugin MCP ejecuta listTools() al conectarse y registra las herramientas. Después de modificar, reinicia DSH para que aparezcan las herramientas.

2. Flujo de búsqueda

  1. Llama a mcp__playwright__browser_navigate para abrir Bing: https://www.bing.com/search?q=<término codificado en URL>.
  2. Llama a mcp__playwright__browser_snapshot para capturar la instantánea de la página de resultados (título, dominio, URL, descripción). Si la instantánea no es suficiente, puede usar mcp__playwright__browser_take_screenshot para ver la imagen.
  3. Evalúa cada resultado según las reglas de «Clasificación de seguridad» a continuación.
  4. Solo los resultados de nivel «Confiable» pueden abrirse con mcp__playwright__browser_click para leer detalles; los sospechosos y bloqueados no se abren.
  5. Organiza los resultados según el «Formato de salida» y responde; las URLs referenciadas se escriben como enlaces markdown.

Cada búsqueda automática abrirá brevemente una ventana de Edge, es normal. Si se desea que funcione en segundo plano sin interfaz, se puede agregar --headless a los argumentos de MCP, pero se pierde la visualización; generalmente no se recomienda.

3. Clasificación de seguridad (filtrado medio)

Los resultados de los motores de búsqueda pueden ser engañosos (phishing, suplantación de identidad, granjas SEO, descargas empaquetadas, sitios de software malicioso). Es necesario clasificar cada resultado por niveles. No depende de bibliotecas externas, solo de reglas.

🔒 Confiable (se puede abrir para ver detalles)

  • Sitio oficial (el dominio coincide claramente con la marca, ej. brand.com / brand.com.cn)
  • Sitios de autoridad: Wikipedia, Zhihu, documentación oficial, .gov / .edu / dominios de grandes empresas
  • Sitios grandes y maduros conocidos (registro antiguo, reputación clara)

⚠️ Sospechoso (solo se muestra el título y la URL, no se abre ni se proporcionan enlaces de descarga)

  • Resultados marcados como anuncios (marcas ad de Bing, sp=ad, promocionado, etc.)
  • Sitios agregadores de descargas / sitios de recursos (Huajun, Pacific, Software Home, Green Software Alliance, xpgod, ZOL Downloads, etc.)
  • Dominios suplantados: imitan intencionadamente a los oficiales, ej. brand-oficial.com, brand-download.net, con guiones o variaciones numéricas
  • Dominios recién registrados, sin HTTPS, descripciones con muchas palabras clave repetidas

🚫 Bloqueado explícitamente (marcado en rojo, no se considera)

  • Sitios claramente de phishing, apuestas, contenido para adultos, que solicitan descargar exe sospechosos
  • Cualquier sitio de «versión crackeada / versión verde / sitio de descargas de software X»

4. Reglas estrictas

  • Nunca descargar ningún archivo automáticamente (exe / apk / zip / dmg, nada)
  • Nunca proporcionar enlaces de descarga de sitios sospechosos
  • Si se necesita software, solo recomendar el sitio oficial o la tienda de aplicaciones oficial del sistema
  • No abrir detalles de páginas sospechosas por defecto; solo las de nivel «Confiable» se abren para lectura profunda

5. Formato de salida

Devuelve en el siguiente formato (en español):

🔒 Resultados confiables
1. [Título](dominio) – Breve descripción
2. ...

⚠️ Solo como referencia (no verificado)
- Título (dominio) – Indicación: por qué es sospechoso
- ...

🚫 Bloqueado (no se recomienda visitar)
- Título (dominio) – Razón

6. Por qué usar reglas de filtrado en lugar de cambiar de motor

El problema no está en el motor de búsqueda, sino en la falta de una capa de filtrado: cambiar de motor solo cambia los anuncios/posiciones promocionadas. Mantén las reglas de filtrado, así cualquier resultado de cualquier motor se clasifica primero. Tampoco intentes integrar listas negras externas de URLs (como las de Huorong): estas bibliotecas son cerradas y no tienen una API de consulta pública, por lo que no se pueden consultar en el flujo.

Skills relacionados