Скиллы Новичок Веб и поиск

SearXNG Search Skill

Скачать ZIP
11
Предупреждение о рисках!

Установка скиллов и плагинов OpenClaw осуществляется на ваш страх и риск. Все файлы были получены из открытых источников и предоставляются «как есть». Мы не гарантируем их корректную работу, безопасность или совместимость с вашей системой. Перед установкой настоятельно рекомендуется ознакомиться с содержимым кода и убедиться, что вы понимаете, какие изменения будут внесены в вашу систему.

Используйте поиск в интернете через собственный экземпляр SearXNG — приватный метапоисковик, который агрегирует результаты из множества источников без отслеживания и рекламы.

Описание

Этот навык позволяет выполнять веб-поиск через self-hosted SearXNG. Он объединяет результаты из Google, DuckDuckGo, Brave, Startpage и более чем 70 других поисковых систем, обеспечивая приватность и независимость от сторонних API. :

Предварительные требования

Перед началом убедитесь, что у вас есть:

  • Запущенный экземпляр SearXNG (локально или на сервере)
  • Docker и Docker Compose

Быстрая установка через Docker

mkdir -p ~/Projects/searxng/searxng
cd ~/Projects/searxng

# Создаём docker-compose.yml
cat > docker-compose.yml << 'EOF'
services:
 searxng:
 image: searxng/searxng:latest
 container_name: searxng
 ports:
 - "8080:8080"
 volumes:
 - ./searxng:/etc/searxng:rw
 environment:
 - SEARXNG_BASE_URL=http://localhost:8080/
 restart: unless-stopped
EOF

Затем создайте файл настроек с поддержкой JSON API:

cat > searxng/settings.yml << 'EOF'
use_default_settings: true
server:
 secret_key: "change-me-to-random-string"
 bind_address: "0.0.0.0"
 port: 8080
search:
 safe_search: 0
 autocomplete: "google"
 default_lang: "en"
 formats:
 - html
 - json
EOF

Запуск сервиса:

docker compose up -d

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

Укажите URL вашего экземпляра SearXNG (по умолчанию используется локальный адрес):

export SEARXNG_URL="http://localhost:8080"

Примеры использования

Базовый поиск

curl "http://localhost:8080/search?q=your+query&format=json" | jq '.results[:5]'

Поиск по категориям

# Общий поиск
curl "http://localhost:8080/search?q=query&categories=general&format=json"

# Картинки
curl "http://localhost:8080/search?q=query&categories=images&format=json"

# Новости
curl "http://localhost:8080/search?q=query&categories=news&format=json"

Поиск по языку

curl "http://localhost:8080/search?q=query&language=en-US&format=json"
curl "http://localhost:8080/search?q=query&language=de-DE&format=json"

Постраничные результаты

curl "http://localhost:8080/search?q=query&pageno=2&format=json"

Формат ответа

Каждый результат содержит:

  • title — заголовок
  • url — ссылка
  • content — краткое описание
  • engines — список поисковых систем
  • score — релевантность
  • category — категория результата

Интеграция в shell

Добавьте функцию в .zshrc или .bashrc:

searxng() {
 local query="$*"
 local url="${SEARXNG_URL:-http://localhost:8080}"
 curl -s "${url}/search?q=$(echo "$query" | sed 's/ /+/g')&format=json" | \
 jq -r '.results[:10][] | "[\(.score | floor)] \(.title)\n \(.url)\n \(.content // "No description")\n"'
}

Пример использования:

searxng как испечь хлеб

Управление Docker

# Запуск
docker compose up -d

# Остановка
docker compose down

# Логи
docker compose logs -f searxng

# Перезапуск
docker compose restart

Устранение неполадок

  • Контейнер не запускается — проверьте логи
  • Нет JSON — убедитесь, что включён формат json
  • Нет результатов — возможны ограничения со стороны поисковых систем

Почему SearXNG

  • Приватность — без отслеживания и сбора данных
  • Агрегация — более 70 источников
  • Self-hosted — полный контроль над данными
  • API — удобный JSON-вывод
  • Бесплатно — без ключей и лимитов

Файл из источника

11711_searxng-local-1.0.0.zip