Skip to main content

Bathys

Bathys

Единый локальный поисковый сервис глубокого ресёрча для ИИ-агентов. Это самостоятельный продукт, а не обёртка над чужими сервисами: Bathys реализует весь конвейер сам — метапоиск с дедупликацией и живучестью к блокировкам, двухъярусное извлечение (HTTP-движок по умолчанию, headless-браузер только для JS-страниц), пятистадийную дистилляцию под запрос с жёсткими бюджетами, TTL-кэш сырца, robots-этику, метрики и диагностику. Метапоиск и извлечение оформлены как сменные внутренние движки (SearXNG, Crawl4AI) — их можно заменить, продукт останется Bathys. Облачных квот нет; LLM внутри нет — синтез остаётся за вызывающим агентом, дистилляция детерминированная (BM25).

Сонар находит координаты, батискаф ныряет за полными текстами, дистиллятор поднимает на палубу только то, что отвечает на вопрос.

python version mcp license

⚡ Quick start

Одной командой (Python ≥ 3.10; приватный venv, без sudo, идемпотентно):

curl -fsSL https://raw.githubusercontent.com/Korrnals/bathys/main/install.sh | bash

Скрипт ставит пакет с PyPI в ~/.local/share/bathys/venv, прописывает PATH, запускает bathys setup (браузер для JS-страниц → все найденные харнессы → субагент) и финальный bathys-doctor. Повторный запуск — безопасное обновление.

Без скрипта (то же самое вручную, для тех кто предпочитает pip):

pip install bathys     # пакет: сервер + bathys setup/install/doctor
bathys setup          # браузер → харнессы → субагент
bathys doctor         # самодиагностика стека

SearXNG ставить руками не нужно: бэкенд поднимется сам при первом поиске (внешний инстанс → docker → нативный режим). Браузер нужен только для JS-страниц: обычные страницы Bathys читает собственным HTTP-движком, BATHYS_BROWSER=off отключает браузерный ярус полностью.

Альтернативные пути установки (npm, исходники, минимальные образы)

npm (Node-first окружения — обёртка ставит Python-пакет сама):

npm install -g bathys-mcp
bathys-mcp setup

Из исходников (разработка):

git clone https://github.com/Korrnals/bathys.git && cd bathys
python3.12 -m venv .venv && .venv/bin/pip install -e .
.venv/bin/bathys setup
.venv/bin/python -m unittest discover -s tests    # юнит-тесты без сети

В минимальном контейнерном образе без ensurepip venv собирается через get-pip.py — ветка в docs/getting-started/install.md.

🔌 Подключение к харнессу

Автоматически — весь стек: bathys setup (см. выше) прописывает сервер во все найденные харнессы.

Точечно — когда нужно именно здесь:

bathys install                  # автодетект всех установленных харнессов
bathys install hermes            # только Hermes (отсутствующий конфиг создастся)
bathys install --list            # все поддерживаемые таргеты
bathys install --print-config    # готовые блоки для ручной вставки

Детектируются zcode, Claude Code, Claude Desktop, Cursor, VS Code-семейство (Cline / Roo Code / Kilo Code), Gemini CLI, Windsurf, Zed, opencode, goose, Hermes; форматы каждого — свои (JSON-схемы и YAML-контуры goose/hermes), запись идемпотентна с бэкапом. Для Pi (badlogic pi-mono), у которого нет MCP-конфига, — дроп-ин в AGENTS.md. Кастомные интеграции — в каталоге integrations/.

Ручное подключение (когда правите конфиги сами)

Bathys — stdio MCP-сервер: блок mcpServers один и тот же везде, от харнесса зависит только файл, в который его кладут. command — абсолютный путь к бинарнику (~ внутри JSON не раскрывается); BATHYS_SEARXNG_HOME опциональна. Готовые блоки под каждый клиент: bathys install --print-config.

{
  "mcpServers": {
    "bathys": {
      "command": "/path/to/bathys",
      "env": { "BATHYS_SEARXNG_HOME": "/path/to/searxng-home" }
    }
  }
}
Харнесс Гайд
zcode docs/integrations/zcode.md
Claude Code / Claude Desktop docs/integrations/claude-code.md
Cursor docs/integrations/cursor.md
Любой другой MCP-клиент docs/integrations/generic-mcp.md

🧠 Научить агента работать эффективно

Конфиг — только половина дела. Из коробки харнесс получает instructions-playbook (матрицу выбора инструментов), annotations и три стратегии-промптаbathys_deep_research, bathys_source_audit, bathys_fresh_scan, — так что выбирает инструменты Bathys уже нативно. Сильнее — профиль: субагент agents/bathys-researcher.md с двумя скиллами, которому глубокий ресёрч делегируется целиком; для клиентов, не показывающих MCP instructions, — дроп-ин agents/HARNESS-DROPIN.md в AGENTS.md / CLAUDE.md / .cursor/rules.

Пошаговая инструкция «из коробки → субагент → дроп-ин» и таблица сигналов футеров — в «Живых кейсах», раздел C.

🧭 Ходовые кейсы

Сравнение технологий. «Сравни SQLite WAL и PostgreSQL под нагрузку — что выбрать в 2026?» → агент вызывает deep_research, доуточняет запрос терминами из найденного и верифицирует вывод по двум источникам. Итог: один вызов вместо цепочки «поиск + N чтений», в контекст попадает 7.5k символов вместо ~35k.

[bathys: 34 raw hits, top 8 considered · dove 3 pages · 35669 ch fetched → 7508 ch returned · 1.3s]

Аудит спорного утверждения. «Правда ли, что в X упали замеры?» → стратегия bathys_source_audit: пакетное чтение ссылок из обсуждения + кросс-поиск опровержений → вердикт по каждому тезису с URL. Битая ссылка стоит одну строку, а не сорванный вызов.

Свежий срез. «Что нового в Y за две недели?» → bathys_fresh_scan: поиск с time_range=week → пакетное чтение → сводка с датами; протухший cache HIT лечится одним refresh=true.

Все кейсы — пользовательские, автономных агентов и эксплуатация — с живыми диалогами и профитом каждого: «Живые кейсы» → docs/getting-started/cases.md.

🛠 Инструменты

Инструмент Что делает
deep_research(query, max_sources=3, …) ищет, параллельно читает топ-источники, возвращает слитый дистиллят под запрос. Первый вызов для любого ресёрч-вопроса.
web_search(query, max_results=8, …) ранжированный список ссылок со сниппетами без содержимого страниц; as_json=true — чистый JSON для программ.
read_url(url, query=None, max_chars=8000) читает одну страницу; с query — только релевантные пассажи.
read_urls(urls, query=None, total_chars=12000) пакетно читает до 10 известных страниц; бюджет делится между успешными, сбой страницы — одна строка, не сорванный вызов.

Поиск сужается общими фильтрами time_range, category, engines, language. Живой футер ответа показывает сжатие и кэш: [bathys: 41 raw hits, top 3 considered · dove 3 pages · 35669 ch fetched → 7508 ch returned · 3.2s].

📊 Экономия токенов

Шкала честная и символьная, токены ≈ chars/4; каждая цифра взята из футера реального вызова.

Вызов Из сети Агенту Сжатие
web_search 37 549 симв. 1 986 симв. 18.9×
read_url 17 063 симв. 2 325 симв. 7.3×
deep_research (3 страницы) 35 669 симв. 7 508 симв. 4.7×
  • Дистилляция под запрос — пять стадий очистки (JS-рендер → вырезание бойлерплейта → PruningContentFilter → схлопывание markdown → BM25-отбор пассажей) с жёсткими бюджетами символов.
  • Кэш сырца до дистилляции — SQLite хранит сырой текст, поэтому перечитать страницу под другим углом можно бесплатно и без сети.
  • Ноль облачных квотdeep_research заменяет цепочку «поиск + N чтений», то есть N+1 списаний квоты, одним локальным вызовом.

Методика и пороги — в docs/operations/metrics.md.

📚 Документация

Хаб с маршрутами «с чего начать» — docs/index.md.

docs/
├── index.md          # хаб: дерево + три маршрута чтения
├── getting-started/  # установка · конфигурация · подключение · живые кейсы
├── integrations/     # zcode · claude-code · cursor · generic-mcp
├── architecture/     # компоненты · конвейер очистки · потоки данных
├── contracts/        # инструменты · футеры · модули · конфиг (19 env)
├── operations/       # runbook · метрики токен-экономии
├── product/          # хартия · реестр функций · роадмап · конкуренты
├── adr/              # шесть принятых архитектурных решений
└── meta/             # стайлгайд · глоссарий

Вне docs/: agents/ (субагент bathys-researcher, скиллы, дроп-ин для харнессов) · integrations/ (кастомные интеграции: hermes, pi, zcode) · tests/ (юнит-тесты без сети) · scripts/ (smoke, stdio_check, метрики) · npm/bathys-mcp/ (NPM-обёртка) · CHANGELOG.md.

📍 Статус

0.7.1. Выпускная история: v0.2 «Качество выдачи» (ретраи, здоровье движков), v0.3 «Паритет с Tavily» (read_urls, JSON-режим), v0.4 «Эксплуатация» (robots-этика, метрики, bathys-doctor), v0.5 «Identity & Harness» (репозиционирование, промпты, субагент), v0.6 «Native Install» (bathys install) — итоги в CHANGELOG.md.

Репозиторий: github.com/Korrnals/bathys. До 1.0 остаются публикация пакета bathys на PyPI (имя свободно, публикация планируется к 1.0) и первый прогон Docker-образа; CI с matrix 3.10–3.12 уже в репозитории.

⚖️ Лицензия

MIT — см. поле license в pyproject.toml.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bathys-0.7.1.tar.gz (167.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bathys-0.7.1-py3-none-any.whl (55.3 kB view details)

Uploaded Python 3

File details

Details for the file bathys-0.7.1.tar.gz.

File metadata

  • Download URL: bathys-0.7.1.tar.gz
  • Upload date:
  • Size: 167.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for bathys-0.7.1.tar.gz
Algorithm Hash digest
SHA256 50b70bbdd6e1fb19065b79aa082365be657941e8b784496328fc24f82086fda3
MD5 239c40ad27d3f46edc538198fbc1bcdf
BLAKE2b-256 95107d62df3a17a89107c3e48e0e06e0ffe34b7d499fb8852b119efc83afb599

See more details on using hashes here.

File details

Details for the file bathys-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: bathys-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 55.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for bathys-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 673b72181387f52367e197e6213fded9d78bc4db2be828def8487cbd43f12c7e
MD5 c26f6a862014428f4effc753cd437528
BLAKE2b-256 1309b35eb6cadf829c784674c9e297b2fc9b12571b1f24b9b9935beb95b9ce12

See more details on using hashes here.

Release history Release notifications | RSS feed

0.7.2

2 files

This release

0.7.1 This release

2 files

0.7.0

2 files

0.6.2

2 files

0.6.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page