Back to home@Lorodn4x

dsh-firecrawl

Firecrawl web search and markdown scrape providers for DeepSeek Harness ctx.web seam

Stars
0
Language
JavaScript
Created
Aug 25, 2026
Updated
Aug 25, 2026
GitHub repo

Introduction

dsh-firecrawl

Провайдеры веб-поиска и загрузки страниц Firecrawl для харнесса DeepSeek Harness. Плагин регистрирует два провайдера в шов ctx.web (@deepseek-ai/dsh-web), так что штатные инструменты web_search и web_fetch начинают работать через Firecrawl: поиск отдаёт свежие источники, а загрузка - чистый markdown любой страницы (документация читается отлично).

Как это устроено

Один серверный плагин (lib/index.js, inject: ["web"]):

ПровайдерidEndpointМаппинг
ПоискfirecrawlPOST /v2/searchdata.web (+data.news) → sources[]: url, title, snippet из description, publishedAt
Загрузкаfirecrawl-fetchPOST /v2/scrape c formats:["markdown"]data.markdownbody {kind:"text"} с обрезкой на 200 000 символов

Патч cordis.patch.yml вставляет строку плагина в ростер, переключает выбор шва на новые провайдеры (searchProvider/fetchProvider) и включает fetch у tool-web.

Конфигурация

КлючПо умолчаниюЗначение
apiKeyEnvFIRECRAWL_API_KEYИмя переменной окружения с ключом
apiKeyнетЛитеральный ключ (приоритетнее env); не оставляйте в публичных патчах
baseURLhttps://api.firecrawl.devБаза API; для self-hosted укажите свой адрес
searchLimit8Сколько источников запрашивает один поиск (1-20)
timeoutMs60000Бюджет одного вызова

Ключ не обязателен: Firecrawl обслуживает анонимный трафик с низкими лимитами. Для серьёзной работы получите бесплатный ключ на firecrawl.dev и положите в переменную окружения FIRECRAWL_API_KEY перед стартом профиля.

Подключение

dsh plugin --profile web add --save link:/путь/к/dsh-firecrawl

и добавить "dsh-firecrawl" последним в список dsh.profile.bundles (патч должен примениться после слоя @deepseek-ai/dsh-web-app). Затем перезапустить профиль.

Известные ограничения

  • Шов выбирает один провайдер на возможность: после включения поиск идёт через Firecrawl, провайдер DeepSeek остаётся зарегистрированным, но не выбирается.
  • PDF-страницы шов пока не поддерживает (закрытый union WebFetchBody без pdf).