bathys 0.9.0__tar.gz → 0.11.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {bathys-0.9.0 → bathys-0.11.0}/.remember/logs/memory-2026-09-09.log +6 -0
- bathys-0.11.0/.remember/logs/memory-2026-09-13.log +2 -0
- bathys-0.11.0/.remember/logs/memory-2026-09-14.log +76 -0
- bathys-0.11.0/.remember/tmp/no-transcript-notice +1 -0
- {bathys-0.9.0 → bathys-0.11.0}/CHANGELOG.md +24 -0
- {bathys-0.9.0 → bathys-0.11.0}/PKG-INFO +4 -3
- {bathys-0.9.0 → bathys-0.11.0}/README.md +3 -2
- {bathys-0.9.0 → bathys-0.11.0}/agents/HARNESS-DROPIN.md +5 -1
- {bathys-0.9.0 → bathys-0.11.0}/agents/bathys-researcher.md +24 -12
- bathys-0.11.0/agents/skills/bathys-find-docs/SKILL.md +68 -0
- bathys-0.11.0/docs/product/library-docs-initiative.md +46 -0
- {bathys-0.9.0 → bathys-0.11.0}/pyproject.toml +2 -1
- {bathys-0.9.0 → bathys-0.11.0}/scripts/stdio_check.py +2 -1
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/__init__.py +1 -1
- bathys-0.11.0/src/bathys/docs_index.json +33 -0
- bathys-0.11.0/src/bathys/library_docs.py +228 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/server.py +82 -6
- bathys-0.11.0/tests/test_library_docs.py +82 -0
- bathys-0.9.0/.remember/tmp/no-transcript-notice +0 -1
- {bathys-0.9.0 → bathys-0.11.0}/.github/workflows/ci.yml +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.gitignore +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/.gitignore +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/logs/hook-errors.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/logs/memory-2026-09-06.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/logs/memory-2026-09-07.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/logs/memory-2026-09-08.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/tmp/case-divergence +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/tmp/post-tool-ran +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/.remember/tmp/session-slug +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/Dockerfile +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/LICENSE +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/THIRD_PARTY_NOTICES.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/agents/skills/bathys-deep-dive/SKILL.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/agents/skills/bathys-source-audit/SKILL.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0001-python-crawl4ai.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0002-pin-mcp-sdk-v1.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0003-self-managed-searxng.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0004-bm25-distillation.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0005-cache-raw-before-distill.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/adr/0006-three-tool-string-surface.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/architecture/data-flow.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/architecture/overview.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/architecture/pipeline.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/assets/banner.svg +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/contracts/config.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/contracts/mcp-tools.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/contracts/module-contracts.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/contracts/output-format.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/getting-started/cases.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/getting-started/configure.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/getting-started/install.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/getting-started/integrate.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/index.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/integrations/claude-code.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/integrations/cursor.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/integrations/generic-mcp.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/integrations/overview.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/integrations/zcode.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/meta/glossary.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/meta/style-guide.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/operations/metrics.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/operations/runbook.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/api-engine-initiative.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/charter.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/competitive.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/features.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/ideas-borrowed.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/mind-initiative.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/ocr-initiative.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/docs/product/roadmap.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/gpu-llm-analysis-2026.html +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/gpu-llm-multiagent-2026.html +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/install.sh +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/README.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/hermes/README.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/hermes/install.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/pi/README.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/pi/assets/bathys-rules.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/integrations/zcode/README.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/.gitignore +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/logs/hook-errors.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/logs/memory-2026-09-08.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/logs/memory-2026-09-09.log +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/tmp/no-transcript-notice +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/.remember/tmp/post-tool-ran +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/README.md +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/bin/cli.js +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/bin/postinstall.js +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/npm/bathys-mcp/package.json +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/scripts/acceptance_v02.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/scripts/batch_check.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/scripts/metrics_report.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/scripts/smoke.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/batch.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/cache.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/compose.yaml +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/config.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/core.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/crawler.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/distill.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/doctor.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/installer.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/searx.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/searxng-settings.yml +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/src/bathys/services.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_batch.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_cache.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_config.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_core.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_distill.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_installer.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_searx.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/tests/test_v04.py +0 -0
- {bathys-0.9.0 → bathys-0.11.0}/uv.lock +0 -0
|
@@ -181,3 +181,9 @@
|
|
|
181
181
|
13:50:50 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
182
182
|
13:51:03 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
183
183
|
13:51:16 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
184
|
+
13:51:24 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
185
|
+
13:51:38 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
186
|
+
14:21:06 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
187
|
+
14:21:06 [hook] WARNING: no session dir for this project: /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/-var-home-abyss-LABs-MCP-deepreserch (slug of /var/home/abyss/LABs/MCP/deepreserch). Memory cannot save until it matches a directory under /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/
|
|
188
|
+
14:21:11 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
189
|
+
14:21:15 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
17:47:30 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
2
|
+
17:47:40 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
03:11:28 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
2
|
+
03:11:35 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
3
|
+
12:41:39 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
4
|
+
16:14:09 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
5
|
+
16:19:35 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
6
|
+
16:19:35 [hook] WARNING: no session dir for this project: /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/-var-home-abyss-LABs-MCP-deepreserch (slug of /var/home/abyss/LABs/MCP/deepreserch). Memory cannot save until it matches a directory under /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/
|
|
7
|
+
16:19:46 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
8
|
+
16:19:55 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
9
|
+
16:20:09 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
10
|
+
16:20:18 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
11
|
+
16:20:23 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
12
|
+
16:20:34 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
13
|
+
16:21:25 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
14
|
+
16:22:10 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
15
|
+
16:22:54 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
16
|
+
16:23:05 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
17
|
+
16:23:34 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
18
|
+
16:23:50 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
19
|
+
16:24:19 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
20
|
+
16:24:31 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
21
|
+
16:25:25 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
22
|
+
16:26:51 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
23
|
+
16:26:51 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
24
|
+
16:27:05 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
25
|
+
16:27:16 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
26
|
+
16:27:27 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
27
|
+
16:27:36 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
28
|
+
16:27:53 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
29
|
+
16:28:13 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
30
|
+
16:28:29 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
31
|
+
16:28:48 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
32
|
+
16:29:02 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
33
|
+
16:46:58 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
34
|
+
16:54:32 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
35
|
+
16:55:30 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
36
|
+
16:56:00 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
37
|
+
16:56:09 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
38
|
+
16:56:15 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
39
|
+
17:01:41 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
40
|
+
17:03:26 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
41
|
+
17:04:17 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
42
|
+
17:24:10 [hook] session-start: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
43
|
+
17:26:59 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
44
|
+
17:26:59 [hook] WARNING: no session dir for this project: /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/-var-home-abyss-LABs-MCP-deepreserch (slug of /var/home/abyss/LABs/MCP/deepreserch). Memory cannot save until it matches a directory under /var/home/abyss/.distrobox/ubuntu/home/.claude/projects/
|
|
45
|
+
17:27:28 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
46
|
+
17:29:06 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
47
|
+
17:29:17 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
48
|
+
17:29:30 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
49
|
+
17:29:49 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
50
|
+
17:30:07 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
51
|
+
17:30:18 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
52
|
+
17:30:34 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
53
|
+
17:30:44 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
54
|
+
17:30:57 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
55
|
+
17:30:57 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
56
|
+
17:31:13 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
57
|
+
17:31:22 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
58
|
+
17:31:31 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
59
|
+
17:31:47 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
60
|
+
17:32:07 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
61
|
+
17:32:19 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
62
|
+
17:32:33 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
63
|
+
17:32:45 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
64
|
+
17:33:10 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
65
|
+
17:33:35 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
66
|
+
17:35:27 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
67
|
+
17:35:28 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
68
|
+
17:35:39 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
69
|
+
17:35:51 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
70
|
+
17:36:26 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
71
|
+
17:36:36 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
72
|
+
17:36:47 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
73
|
+
17:36:58 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
74
|
+
17:37:17 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
75
|
+
17:38:44 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
76
|
+
17:38:59 [hook] post-tool: PROJECT_DIR=/var/home/abyss/LABs/MCP/deepreserch PIPELINE_DIR=/var/home/abyss/.distrobox/ubuntu/home/.zcode/cli/plugins/cache/claude-plugins-official/remember/0.20.0 PYTHON=python3 REMEMBER_DIR=/var/home/abyss/LABs/MCP/deepreserch/.remember
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1789396019
|
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
Формат: Keep a Changelog; версии — semver. Дата — дата выпуска версии.
|
|
4
4
|
|
|
5
|
+
## [0.11.0] — 2026-09-14
|
|
6
|
+
|
|
7
|
+
Тема: «Library Docs Phase 2» — подстраничная догрузка: качество уровня Context7 без их базы.
|
|
8
|
+
|
|
9
|
+
### Добавлено
|
|
10
|
+
|
|
11
|
+
- **Подстраничная догрузка `library_docs`** (`subpages=3`, 0 = off): после главной страницы извлекаются same-site ссылки, ранжируются по пересечению с запросом (y/ies-морфология: «dependency» матчит «dependencies»), топ догружается параллельно через семафор дайвов и мержится в один digest. Live: fastapi «dependency injection» — **4 383 ch контента против 1 951 навигации** в Фазе 1; site-search-фолбэк нашёл точные `tutorial/dependencies/`, `classes-as-dependencies/`, `advanced-dependencies/` на linkless-главной (HTTP-ярус выкинул nav-разметку).
|
|
12
|
+
- **Site-search discovery-фолбэк**: если в сырце главной нет ссылок (nav-разметка срезана HTTP-ярусом), подстраницы находятся одним целевым `web_search "{library} {query} site:{host}"` через наш же движок.
|
|
13
|
+
- Юнит-тесты: seed-индекс (фильтр служебных ключей), same-site, экстрактор (ранжирование/ассет-фильтр/лимит), морфология.
|
|
14
|
+
|
|
15
|
+
### Изменено
|
|
16
|
+
|
|
17
|
+
- Архитектурно: словарные «навигационные» эвристики (плотность ссылок/разнообразие слов) признаны хрупкими на границе TOC/проза и убраны — догрузка стала безусловной для профильного инструмента; решение зафиксировано в коде-комментарии.
|
|
18
|
+
|
|
19
|
+
## [0.10.0] — 2026-09-14
|
|
20
|
+
|
|
21
|
+
Тема: «Library Docs» — Context7-функциональность локально и без лимитов. Разведка Context7 (живьём через Bathys): parsing/crawling-движки у него приватные, free-tier урезан до ~1000 req/мес, офлайна нет. Наш ответ — инициатива library-docs: источники доков открыты сами по себе, наш конвейер уже содержит «parsing engine» (двухъярусное извлечение + BM25-дистилляция + кэш сырца).
|
|
22
|
+
|
|
23
|
+
### Добавлено
|
|
24
|
+
|
|
25
|
+
- **`library_docs(library, query)`** — 5-й MCP-инструмент: актуальная документация библиотеки из первоисточника, дистиллированная под вопрос. Резолв: seed-индекс (`docs_index.json`, 30+ библиотек: react, fastapi, pytorch, kubernetes, searxng, crawl4ai…) → живой `web_search` «official documentation» → GitHub-slug. Повторные вопросы по той же библиотеке — мгновенно, офлайн, бесплатно (кэш сырца — то, чего нет у Context7). Live: `trio` резолвлен поиском (triodocs.org), `fastapi` из индекса; 153k ch → дистиллят под query.
|
|
26
|
+
- Инициатива `docs/product/library-docs-initiative.md`: архитектура, честная таблица отличий от Context7 (без лимитов/офлайн/любой сайт доков), фазы 2–3 (версионность через GitHub-теги, догрузка подстраниц, авторастущий индекс).
|
|
27
|
+
- Фаза 2 (задел): ограничение Фазы 1 зафиксировано честно — главная страница доксайта часто навигационная; полнота придёт с догрузкой релевантных подстраниц.
|
|
28
|
+
|
|
5
29
|
## [0.9.0] — 2026-09-09
|
|
6
30
|
|
|
7
31
|
Тема: «Borrowed Ideas» — три фичи, заимствованные из pi-web-access (реализация наша; разведка самого источника проведена живьём через Bathys).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: bathys
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.11.0
|
|
4
4
|
Summary: Unified local deep-research search service for AI agents — one pipeline (search → extraction → query distillation → cache), zero cloud quotas. MCP stdio server with native harness integration (bathys install).
|
|
5
5
|
Project-URL: Homepage, https://github.com/Korrnals/bathys
|
|
6
6
|
Project-URL: Repository, https://github.com/Korrnals/bathys
|
|
@@ -33,7 +33,7 @@ Description-Content-Type: text/markdown
|
|
|
33
33
|
Сонар находит координаты, батискаф ныряет за полными текстами, дистиллятор поднимает на палубу только то, что отвечает на вопрос.
|
|
34
34
|
|
|
35
35
|

|
|
36
|
-

|
|
37
37
|

|
|
38
38
|

|
|
39
39
|
|
|
@@ -172,6 +172,7 @@ Bathys — stdio MCP-сервер: блок `mcpServers` один и тот же
|
|
|
172
172
|
| `deep_research(query, max_sources=3, …)` | ищет, параллельно читает топ-источники, возвращает слитый дистиллят под запрос. Первый вызов для любого ресёрч-вопроса. |
|
|
173
173
|
| `web_search(query, max_results=8, …)` | ранжированный список ссылок со сниппетами без содержимого страниц; `as_json=true` — чистый JSON для программ. |
|
|
174
174
|
| `read_url(url, query=None, find=None)` | читает страницу (включая текстовые PDF); с `query` — релевантные пассажи; с `find` — точный поиск по кэшу сырца без сети. |
|
|
175
|
+
| `library_docs(library, query)` | актуальная документация библиотеки из первоисточника, дистиллированная под вопрос; повторы бесплатны (кэш). |
|
|
175
176
|
| `read_urls(urls, query=None, total_chars=12000)` | пакетно читает до 10 известных страниц; бюджет делится между успешными, сбой страницы — одна строка, не сорванный вызов. |
|
|
176
177
|
|
|
177
178
|
Поиск сужается общими фильтрами `time_range`, `category`, `engines`, `language`. Живой футер ответа показывает сжатие и кэш: `[bathys: 41 raw hits, top 3 considered · dove 3 pages · 35669 ch fetched → 7508 ch returned · 3.2s]`.
|
|
@@ -210,7 +211,7 @@ Bathys — stdio MCP-сервер: блок `mcpServers` один и тот же
|
|
|
210
211
|
|
|
211
212
|
## 📍 Статус
|
|
212
213
|
|
|
213
|
-
**0.
|
|
214
|
+
**0.11.0.** Выпускная история: v0.2 «Качество выдачи» (ретраи, здоровье движков), v0.3 «Паритет с Tavily» (`read_urls`, JSON-режим), v0.4 «Эксплуатация» (robots-этика, метрики, `bathys-doctor`), v0.5 «Identity & Harness» (репозиционирование, промпты, субагент), v0.6 «Native Install» (`bathys install`), v0.7 «Ship & Setup» (двухъярусное извлечение, `bathys setup`, однострочник, uninstall) — итоги в [CHANGELOG.md](CHANGELOG.md).
|
|
214
215
|
|
|
215
216
|
Репозиторий: `github.com/Korrnals/bathys`. Пакет опубликован: [PyPI `bathys`](https://pypi.org/project/bathys/) (pip install), однострочник установки — выше. До 1.0: публикация npm-обёртки `bathys-mcp` и первый прогон Docker-образа; CI (matrix 3.10–3.12 + shellcheck) уже в репозитории.
|
|
216
217
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
Сонар находит координаты, батискаф ныряет за полными текстами, дистиллятор поднимает на палубу только то, что отвечает на вопрос.
|
|
8
8
|
|
|
9
9
|

|
|
10
|
-

|
|
11
11
|

|
|
12
12
|

|
|
13
13
|
|
|
@@ -146,6 +146,7 @@ Bathys — stdio MCP-сервер: блок `mcpServers` один и тот же
|
|
|
146
146
|
| `deep_research(query, max_sources=3, …)` | ищет, параллельно читает топ-источники, возвращает слитый дистиллят под запрос. Первый вызов для любого ресёрч-вопроса. |
|
|
147
147
|
| `web_search(query, max_results=8, …)` | ранжированный список ссылок со сниппетами без содержимого страниц; `as_json=true` — чистый JSON для программ. |
|
|
148
148
|
| `read_url(url, query=None, find=None)` | читает страницу (включая текстовые PDF); с `query` — релевантные пассажи; с `find` — точный поиск по кэшу сырца без сети. |
|
|
149
|
+
| `library_docs(library, query)` | актуальная документация библиотеки из первоисточника, дистиллированная под вопрос; повторы бесплатны (кэш). |
|
|
149
150
|
| `read_urls(urls, query=None, total_chars=12000)` | пакетно читает до 10 известных страниц; бюджет делится между успешными, сбой страницы — одна строка, не сорванный вызов. |
|
|
150
151
|
|
|
151
152
|
Поиск сужается общими фильтрами `time_range`, `category`, `engines`, `language`. Живой футер ответа показывает сжатие и кэш: `[bathys: 41 raw hits, top 3 considered · dove 3 pages · 35669 ch fetched → 7508 ch returned · 3.2s]`.
|
|
@@ -184,7 +185,7 @@ Bathys — stdio MCP-сервер: блок `mcpServers` один и тот же
|
|
|
184
185
|
|
|
185
186
|
## 📍 Статус
|
|
186
187
|
|
|
187
|
-
**0.
|
|
188
|
+
**0.11.0.** Выпускная история: v0.2 «Качество выдачи» (ретраи, здоровье движков), v0.3 «Паритет с Tavily» (`read_urls`, JSON-режим), v0.4 «Эксплуатация» (robots-этика, метрики, `bathys-doctor`), v0.5 «Identity & Harness» (репозиционирование, промпты, субагент), v0.6 «Native Install» (`bathys install`), v0.7 «Ship & Setup» (двухъярусное извлечение, `bathys setup`, однострочник, uninstall) — итоги в [CHANGELOG.md](CHANGELOG.md).
|
|
188
189
|
|
|
189
190
|
Репозиторий: `github.com/Korrnals/bathys`. Пакет опубликован: [PyPI `bathys`](https://pypi.org/project/bathys/) (pip install), однострочник установки — выше. До 1.0: публикация npm-обёртки `bathys-mcp` и первый прогон Docker-образа; CI (matrix 3.10–3.12 + shellcheck) уже в репозитории.
|
|
190
191
|
|
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
|
|
24
24
|
- исследовательский вопрос («что/как/почему/сравни») → `deep_research(query)`
|
|
25
25
|
— ищет, читает топ-источники, возвращает дистиллят под запрос;
|
|
26
|
+
- вопрос о библиотеке/фреймворке/API/CLI → `library_docs(library, query=…)`
|
|
27
|
+
— всегда, даже о известной либе и даже если уверен: тренировочные
|
|
28
|
+
данные устаревают, доки — первоисточник; уточняющий вопрос по той же
|
|
29
|
+
либе — снова `library_docs` (кэш сырца: повтор мгновенный и бесплатный);
|
|
26
30
|
- нужны только ссылки → `web_search(query)`; для программы/скрипта —
|
|
27
31
|
`web_search(query, as_json=true)`;
|
|
28
32
|
- один известный URL → `read_url(url, query=…)`; несколько (до 10) →
|
|
@@ -47,4 +51,4 @@
|
|
|
47
51
|
не цитируй его пользователю.
|
|
48
52
|
|
|
49
53
|
Готовые стратегии — MCP-промпты `bathys_deep_research`, `bathys_source_audit`,
|
|
50
|
-
`bathys_fresh_scan`: бери как стартовый шаблон плана.
|
|
54
|
+
`bathys_fresh_scan`, `bathys_find_docs`: бери как стартовый шаблон плана.
|
|
@@ -2,24 +2,27 @@
|
|
|
2
2
|
name: bathys-researcher
|
|
3
3
|
description: >-
|
|
4
4
|
Специалист по веб-ресёрчу: весь интернет-доступ — через локальный MCP-сервис
|
|
5
|
-
Bathys (`deep_research`, `web_search`, `read_url`, `read_urls
|
|
6
|
-
исследования «что/как/почему/сравни» с
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
Bathys (`deep_research`, `web_search`, `read_url`, `read_urls`,
|
|
6
|
+
`library_docs`). Вызывать для исследования «что/как/почему/сравни» с
|
|
7
|
+
выверенным ответом и URL-цитированием, проверки спорных утверждений по
|
|
8
|
+
источникам, свежего среза по теме, вопросов о документации
|
|
9
|
+
библиотек/API/CLI. Не вызывать для вопросов, отвечаемых из локального
|
|
10
|
+
кода и контекста без интернета.
|
|
9
11
|
---
|
|
10
12
|
|
|
11
13
|
# Bathys Researcher — агент глубокого ресёрча
|
|
12
14
|
|
|
13
15
|
Ты — специалист по веб-исследованиям. Весь твой доступ в интернет идёт
|
|
14
16
|
**только** через MCP-сервис Bathys (`deep_research`, `web_search`, `read_url`,
|
|
15
|
-
`read_urls`). Сторонние web-инструменты не использовать: у
|
|
16
|
-
дистилляция под запрос, бюджеты, кэш и метрики — обход ломает
|
|
17
|
-
и учёт.
|
|
17
|
+
`read_urls`, `library_docs`). Сторонние web-инструменты не использовать: у
|
|
18
|
+
Bathys свои дистилляция под запрос, бюджеты, кэш и метрики — обход ломает
|
|
19
|
+
экономику и учёт.
|
|
18
20
|
|
|
19
21
|
## Матрица выбора инструмента
|
|
20
22
|
|
|
21
23
|
| Ситуация | Инструмент |
|
|
22
24
|
|---|---|
|
|
25
|
+
| Вопрос о библиотеке/API/фреймворке/CLI — даже о известной и даже если уверен, что знаешь ответ | `library_docs(library, query=…)` — первым, не web_search/deep_research: резолвит док-сайт и дистиллирует доки точно под вопрос; тренировочные данные устаревают |
|
|
23
26
|
| Исследовательский вопрос («что/как/почему/сравни») | `deep_research(query)` — поиск + чтение топ-источников + дистиллят под запрос одним вызовом |
|
|
24
27
|
| Нужны только ссылки (пул источников, мониторинг) | `web_search(query)` |
|
|
25
28
|
| Результат нужен программе/скрипту | `web_search(query, as_json=true)` — чистый JSON без футера |
|
|
@@ -27,9 +30,10 @@ description: >-
|
|
|
27
30
|
| Несколько известных URL (до 10) | `read_urls(urls, query=…)` — общий бюджет; битая страница стоит строку, не вызов |
|
|
28
31
|
|
|
29
32
|
Правило края: в руках список из 3+ URL — значит `read_urls`, не цикл
|
|
30
|
-
`read_url`.
|
|
31
|
-
`
|
|
32
|
-
|
|
33
|
+
`read_url`. Вопрос о сигнатуре/конфигурации библиотеки — значит
|
|
34
|
+
`library_docs`, не `web_search`. Промпты Bathys (`bathys_deep_research`,
|
|
35
|
+
`bathys_source_audit`, `bathys_fresh_scan`, `bathys_find_docs`) — готовые
|
|
36
|
+
стратегии; бери как стартовый шаблон плана, а не изобретай с нуля.
|
|
33
37
|
|
|
34
38
|
## Метод (максимум 3 итерации на одну формулировку)
|
|
35
39
|
|
|
@@ -48,8 +52,12 @@ description: >-
|
|
|
48
52
|
4. **Верификация**: ключевое утверждение подтверждено при двух независимых
|
|
49
53
|
доменах; один источник — пиши «по данным одного источника»; конфликт —
|
|
50
54
|
покажи обе версии с URL, не выбирай молча сторону.
|
|
51
|
-
5.
|
|
52
|
-
|
|
55
|
+
5. **Не доверяй памяти для API-сигнатур, конфигурации и версионных
|
|
56
|
+
изменений**: даже известная либа могла изменить интерфейс — сначала
|
|
57
|
+
`library_docs`, ответ из памяти допустим только с оговоркой «может
|
|
58
|
+
быть устаревшим».
|
|
59
|
+
6. **Цитируй URL** из секций ответов Bathys — это твой след аудита.
|
|
60
|
+
7. **Стоп**: ответ получен; или 3 итерации без сдвига — скажи, чего не
|
|
53
61
|
хватило, и предложи сменить угол; или дистиллята достаточно для синтеза.
|
|
54
62
|
|
|
55
63
|
## Сигналы ответов
|
|
@@ -86,6 +94,10 @@ description: >-
|
|
|
86
94
|
|
|
87
95
|
- `web_search` там, где нужен `deep_research` — получишь ссылки без
|
|
88
96
|
содержания и потратишь лишние вызовы на дочтение.
|
|
97
|
+
- `web_search`/`deep_research` там, где нужен `library_docs` — вопрос о
|
|
98
|
+
библиотеке закрывается точнее, быстрее и дешевле прямым ударом в док-сайт.
|
|
99
|
+
- Отвечать о сигнатурах/конфигурации библиотек из памяти без
|
|
100
|
+
`library_docs` и без оговорки об устаревании.
|
|
89
101
|
- Читать список URL по одному через `read_url`, если их 3+ — это `read_urls`.
|
|
90
102
|
- `refresh=true` «на всякий случай» и на весь пакет.
|
|
91
103
|
- Выдавать источники за свои слова: каждый нетривиальный факт — с URL.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bathys-find-docs
|
|
3
|
+
description: >-
|
|
4
|
+
Актуальная документация библиотеки через `library_docs`: один вызов —
|
|
5
|
+
резолв док-сайта, чтение первоисточника, дистилляция под вопрос.
|
|
6
|
+
Применять ко ЛЮБОМУ вопросу о библиотеке, фреймворке, API или CLI —
|
|
7
|
+
даже о известной либе (React, FastAPI, PostgreSQL) и даже если уверен,
|
|
8
|
+
что знаешь ответ: тренировочные данные устаревают, доки — первоисточник.
|
|
9
|
+
Не для рефакторинга, бизнес-логики, код-ревью, общих концепций без
|
|
10
|
+
конкретной либы и вопросов, отвечаемых из локального кода.
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Bathys Find Docs — документация библиотеки под вопрос
|
|
14
|
+
|
|
15
|
+
## Когда применять
|
|
16
|
+
|
|
17
|
+
- Вопрос о библиотеке/фреймворке/API/CLI: сигнатура, конфигурация,
|
|
18
|
+
поведение опции, версия, поддержка («как в FastAPI сделать X», «какие
|
|
19
|
+
аргументы принимает react useEffect», «настраивается ли nginx
|
|
20
|
+
client_max_bodySize»).
|
|
21
|
+
- Даже если либа известная и ответ «кажется очевиден»: модель могла
|
|
22
|
+
выучить устаревшую сигнатуру — `library_docs` стоит дешевле, чем
|
|
23
|
+
неверный ответ.
|
|
24
|
+
- Не для: рефакторинг, бизнес-логика, код-ревью; общие концепции без
|
|
25
|
+
конкретной библиотеки («что такое SSR»); вопросы, отвечаемые из
|
|
26
|
+
локального кода и контекста.
|
|
27
|
+
|
|
28
|
+
## Процедура
|
|
29
|
+
|
|
30
|
+
1. **Один вызов.** `library_docs(library, query=…)` — без предварительного
|
|
31
|
+
поиска: резолв док-сайта (индекс → живой web_search → GitHub-slug)
|
|
32
|
+
и дистилляция уже внутри. `query` — конкретный вопрос («что искать в
|
|
33
|
+
доках»), не задача целиком.
|
|
34
|
+
2. **Дисциплина query.** Один концепт на запрос; конкретика вместо одного
|
|
35
|
+
слова. Хорошо: «how to configure rate limiting per user», «useEffect
|
|
36
|
+
dependency array cleanup function». Плохо: «auth», «hooks», «как
|
|
37
|
+
сделать приложение». Уточняющий вопрос по той же либе — снова
|
|
38
|
+
`library_docs` с новым `query`: сырец в кэше, повтор почти мгновенный
|
|
39
|
+
и бесплатный.
|
|
40
|
+
3. **Дистиллят навигационный или пустой** (меню доксайта вместо
|
|
41
|
+
содержания, пустые секции): переформулируй `query` терминами из
|
|
42
|
+
заголовков дистиллята — или уйди в `deep_research` по «{library}
|
|
43
|
+
{тема} documentation».
|
|
44
|
+
4. **Максимум 3 попытки** на один вопрос: переформулировка `query` →
|
|
45
|
+
`deep_research` → дальше смена угла, не шестой заход.
|
|
46
|
+
5. **Отказ-паттерн.** `library_docs` не смог (сеть, «не удалось найти
|
|
47
|
+
документацию», пустой дистиллят после 3 попыток): скажи об этом явно
|
|
48
|
+
и отвечай из памяти с оговоркой — «ответ из тренировочных данных,
|
|
49
|
+
может быть устаревшим; актуальность не проверена».
|
|
50
|
+
6. **Ответ с цитатами.** URL док-сайта — в шапке ответа `library_docs`;
|
|
51
|
+
цитируй его у нетривиальных фактов. Локальные квот нет: повторы
|
|
52
|
+
бесплатны — уточняй ответ запросом, а не догадкой.
|
|
53
|
+
|
|
54
|
+
## Выход
|
|
55
|
+
|
|
56
|
+
- Ответ на вопрос по документации с URL первоисточника; при отказе —
|
|
57
|
+
ответ из памяти, явно помеченный как потенциально устаревший.
|
|
58
|
+
|
|
59
|
+
## Анти-паттерны
|
|
60
|
+
|
|
61
|
+
- Ответ о сигнатуре/конфигурации из памяти без вызова `library_docs` —
|
|
62
|
+
самый частый источник устаревших API-ответов.
|
|
63
|
+
- `web_search`/`deep_research` первым для док-вопроса: медленнее и
|
|
64
|
+
размытее, чем `library_docs` в точку доксайта.
|
|
65
|
+
- `query` = одно слово («hooks», «auth») или вся задача пользователя
|
|
66
|
+
одним куском.
|
|
67
|
+
- Молчаливый ответ из памяти после фейла `library_docs` без оговорки
|
|
68
|
+
об устаревании.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Инициатива: library_docs — «Context7, но локально и без лимитов»
|
|
2
|
+
|
|
3
|
+
| Поле | Значение |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Статус | Утверждена владельцем 2026-09-14 («важная задача — добавить функциональность Context7: актуальная документация по коду, бесплатно, без лимитов запросов»); разведка проведена живьём через Bathys |
|
|
6
|
+
| Источник-референс | [Context7](https://github.com/upstash/context7) (62k★, Upstash): MCP-инструменты `resolve-library-id` + `query-docs`; **parsing/crawling-движки приватные** (в репо только обёртка); free-tier урезан до ~1000 запросов/мес (январь 2026); офлайн-режима нет |
|
|
7
|
+
| Принцип | Источники доков открыты сами по себе (официальные сайты, GitHub-репозитории). Пайплайн Bathys уже содержит «parsing engine» Context7: двухъярусное извлечение + BM25-дистилляция + кэш сырца. Недостаёт только резолв имени → источник. Никаких API-ключей, никаких лимитов, повторные запросы бесплатны (кэш). |
|
|
8
|
+
|
|
9
|
+
## Архитектура
|
|
10
|
+
|
|
11
|
+
```mermaid
|
|
12
|
+
flowchart LR
|
|
13
|
+
Q["library_docs(library, query)"] --> R{"Резолв: локальный индекс?"}
|
|
14
|
+
R -- hit --> F["Док-сайт (URL из индекса)"]
|
|
15
|
+
R -- miss --> S["web_search: '<library> official docs' (1 запрос)"]
|
|
16
|
+
S --> F
|
|
17
|
+
F --> E1["HTTP-ярус: главная + страница-оглавление"]
|
|
18
|
+
E1 -- JS-shell --> E2["Браузерный ярус"]
|
|
19
|
+
E1 --> D["Дистилляция под query (BM25, бюджет)"]
|
|
20
|
+
E2 --> D
|
|
21
|
+
D --> OUT["Компактный срез доков + URL-цитаты"]
|
|
22
|
+
E1 -. сырец .-> C[("Кэш сырца — повторы бесплатны")]
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
- **Резолв**: (1) seed-индекс популярных библиотек (JSON в пакете, `src/bathys/docs_index.json`); (2) fallback — один живой `web_search` через SearXNG («{library} official documentation»); (3) GitHub-паттерн `github.com/{library}` если похож на slug.
|
|
26
|
+
- **Извлечение**: существующие ярусы. Доксайты часто JS-ные (docusaurus/vitepress) — браузерный ярус их берёт; статические (mkdocs/sphinx/readthedocs) — HTTP-ярус за миллисекунды.
|
|
27
|
+
- **Дистилляция**: существующий `passages()` под query — то самое «компактный срез, который не раздувает счёт за токены».
|
|
28
|
+
- **Кэш сырца**: существующий; повторный вопрос по той же библиотеке = 0 сети, мгновенно, **без лимитов** — то, чего нет у Context7.
|
|
29
|
+
- Версионность (фаза 2): `{version}` → GitHub-тег репозитория (`raw.githubusercontent.com/{owner}/{repo}/v{N}/docs/…`).
|
|
30
|
+
|
|
31
|
+
## Отличия от Context7 (честная таблица)
|
|
32
|
+
|
|
33
|
+
| Ось | Context7 | Bathys library_docs |
|
|
34
|
+
|---|---|---|
|
|
35
|
+
| Цена | free ~1000 req/мес, Pro $7 | без лимитов (кэш + живой поиск бесплатны) |
|
|
36
|
+
| Офлайн | нет | да, после первого чтения (кэш сырца) |
|
|
37
|
+
| Индекс | их закрытая база | seed-индекс + живой поиск: любой сайт доков, даже не в базе |
|
|
38
|
+
| Parsing engine | приватный | наш открытый (двухъярусный) |
|
|
39
|
+
| Дистилляция | их 5-стадийный конвейер | наш BM25 + бюджеты |
|
|
40
|
+
| Свежесть | их цикл обновления | «из первых рук» при каждом cache-miss |
|
|
41
|
+
|
|
42
|
+
## Фазы
|
|
43
|
+
|
|
44
|
+
- **Фаза 1** (текущая): инструмент `library_docs(library, query)`; seed-индекс ~20 топ-библиотек; резолв через индекс→поиск; извлечение главной+подстраниц; дистилляция; кэш.
|
|
45
|
+
- **Фаза 2**: версионность (GitHub-теги); догрузка релевантных подстраниц (не только главная); `docs`-категория поиска SearXNG для резолва.
|
|
46
|
+
- **Фаза 3**: seed-индекс расширяется автоматически (успешные резолвы пишутся в пользовательский индекс).
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "bathys"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.11.0"
|
|
8
8
|
description = "Unified local deep-research search service for AI agents — one pipeline (search → extraction → query distillation → cache), zero cloud quotas. MCP stdio server with native harness integration (bathys install)."
|
|
9
9
|
keywords = ["mcp", "deep-research", "search", "web-search", "ai-agents", "llm", "local-first", "distillation", "searxng", "crawl4ai"]
|
|
10
10
|
classifiers = [
|
|
@@ -46,3 +46,4 @@ packages = ["src/bathys"]
|
|
|
46
46
|
# --with-agent` works from a PyPI install, not only from a repo clone.
|
|
47
47
|
[tool.hatch.build.targets.wheel.force-include]
|
|
48
48
|
"agents" = "bathys/agents"
|
|
49
|
+
"src/bathys/docs_index.json" = "bathys/docs_index.json"
|
|
@@ -40,7 +40,8 @@ async def main() -> None:
|
|
|
40
40
|
req = "required" if arg.required else "optional"
|
|
41
41
|
print(f" arg {arg.name} ({req}): {arg.description}")
|
|
42
42
|
assert {p.name for p in prompts.prompts} >= {
|
|
43
|
-
"bathys_deep_research", "bathys_source_audit", "bathys_fresh_scan"
|
|
43
|
+
"bathys_deep_research", "bathys_source_audit", "bathys_fresh_scan",
|
|
44
|
+
"bathys_find_docs",
|
|
44
45
|
}, "expected Bathys strategy prompts are missing"
|
|
45
46
|
|
|
46
47
|
rendered = await session.get_prompt(
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "Seed index: popular libraries -> official docs sites. Bathys library_docs resolver: exact/alias match first, then live web_search fallback.",
|
|
3
|
+
"react": "https://react.dev/learn",
|
|
4
|
+
"nextjs": "https://nextjs.org/docs",
|
|
5
|
+
"vue": "https://vuejs.org/guide/introduction.html",
|
|
6
|
+
"nuxt": "https://nuxt.com/docs",
|
|
7
|
+
"svelte": "https://svelte.dev/docs/svelte/getting-started",
|
|
8
|
+
"angular": "https://angular.dev/",
|
|
9
|
+
"typescript": "https://www.typescriptlang.org/docs/handbook/intro.html",
|
|
10
|
+
"nodejs": "https://nodejs.org/docs/latest/api/",
|
|
11
|
+
"python": "https://docs.python.org/3/",
|
|
12
|
+
"django": "https://docs.djangoproject.com/en/stable/",
|
|
13
|
+
"flask": "https://flask.palletsprojects.com/en/stable/quickstart/",
|
|
14
|
+
"fastapi": "https://fastapi.tiangolo.com/",
|
|
15
|
+
"sqlalchemy": "https://docs.sqlalchemy.org/en/stable/",
|
|
16
|
+
"numpy": "https://numpy.org/doc/stable/",
|
|
17
|
+
"pandas": "https://pandas.pydata.org/docs/",
|
|
18
|
+
"pytorch": "https://docs.pytorch.org/docs/stable/",
|
|
19
|
+
"tensorflow": "https://www.tensorflow.org/guide",
|
|
20
|
+
"scikit-learn": "https://scikit-learn.org/stable/user_guide.html",
|
|
21
|
+
"docker": "https://docs.docker.com/",
|
|
22
|
+
"kubernetes": "https://kubernetes.io/docs/home/",
|
|
23
|
+
"rust": "https://doc.rust-lang.org/book/",
|
|
24
|
+
"go": "https://go.dev/doc/",
|
|
25
|
+
"postgresql": "https://www.postgresql.org/docs/current/",
|
|
26
|
+
"redis": "https://redis.io/docs/latest/",
|
|
27
|
+
"searxng": "https://docs.searxng.org/",
|
|
28
|
+
"crawl4ai": "https://docs.crawl4ai.com/",
|
|
29
|
+
"httpx": "https://www.python-httpx.org/",
|
|
30
|
+
"mcp": "https://modelcontextprotocol.io/docs/getting-started/overview",
|
|
31
|
+
"playwright": "https://playwright.dev/python/docs/intro",
|
|
32
|
+
"pymupdf": "https://pymupdf.readthedocs.io/en/stable/"
|
|
33
|
+
}
|