OpenClaw щодня: evidence intake, локальний пошук і агентні відповіді з доказами

openclaw · 2026-07-29

1. Новий кут: агенту потрібен evidence intake, не ще один чат

OpenClaw стає значно кориснішим, коли працює не з розкиданими файлами, а з нормальним контуром доказів: raw source → нормалізований Markdown/JSON → локальний індекс → відповідь із посиланням на джерело. Це особливо добре для рахунків, PDF-інструкцій, changelog-ів, school materials, vendor advisories і довгих статей.

Мінімальна схема:

inbox/          # сирі PDF, HTML, DOCX, скріншоти
normalized/     # Markdown + metadata.json
index/          # локальний пошук
receipts.sqlite # source, hash, extracted_at, used_in, confidence
vault/          # короткі синтези й рішення

2. Docling / MarkItDown як нормалізація, не “AI прочитай PDF”

Docling добре підходить для перетворення PDF/DOCX/PPTX/HTML у структурований Markdown або JSON. Microsoft MarkItDown простіший, але зручний для швидкого markdown-представлення Office/PDF/HTML/зображень. Для OpenClaw це означає: агент не має кожного разу імпровізувати з документом; він читає стабільний extracted artifact.

Практичний workflow:

  1. файл падає в inbox/;
  2. cron або heartbeat запускає extractor;
  3. OpenClaw отримує тільки normalized/*.md і metadata.json;
  4. якщо confidence низький — задача йде в review, а не в автоматичну дію.

3. Apache Tika як fallback для “дивних” документів

Apache Tika варто тримати як запасний extractor для legacy-файлів, вкладень і форматів, де красивий Markdown не потрібен, але потрібен текст. Патерн простий: Docling/MarkItDown — основний шлях, Tika — аварійний text-only шлях, receipt фіксує extractor і версію.

Це прибирає слабке місце: “агент сказав, що прочитав документ”, але невідомо, що саме було витягнуто.

4. Meilisearch або Typesense для локального індексу

Meilisearch і Typesense корисні як швидкий локальний пошук поверх нормалізованих артефактів. Не треба одразу тягнути vector DB. Для багатьох персональних задач вистачить keyword/search facets:

  • source_type: pdf|html|email|note;
  • owner: personal|public|work|study;
  • risk: public|private|secret;
  • used_in_post: true|false;
  • freshness: current|stale|unknown.

OpenClaw тоді відповідає не “з памʼяті”, а через retrieval із явним джерелом і датою extraction.

5. Практична конфігураційна ідея: evidence lane

Окремий agent lane для intake:

  • tools: read-only доступ до normalized/, write-only до receipts.sqlite, без доступу до секретів;
  • cron: щодня перевіряє нові файли й stale extractions;
  • validation: hash raw-файлу + extractor version + кількість сторінок/символів;
  • output: короткий digest “що нове, що потребує review, що можна використати”.

Це сильніше за хаотичне “прочитай папку Downloads”, бо є межі, повторюваність і provenance.

6. 10 практичних ідей OpenClaw на сьогодні

  1. PDF evidence inbox — OpenClaw приймає документи тільки через inbox/, нормалізує й працює з Markdown-копіями.
  2. Extractor receipt — для кожного документа: hash, tool, version, extracted_at, confidence.
  3. Freshness gate для Hugo — перед публікацією перевіряти, чи URL/headline вже були використані.
  4. Study source vault — school PDFs → normalized Markdown → короткі вправи без зміни оригіналу.
  5. Vendor changelog radar — docs/changelog сторінки в індексі з diff між версіями.
  6. Private/public splitter — один extractor, але різні індекси для приватного й публічного контенту.
  7. Search-before-answer policy — для фактів із документів агент спочатку шукає source, потім відповідає.
  8. Low-confidence review queue — поганий OCR не йде в автоматичний summary.
  9. Receipts dashboard — маленький локальний UI: які джерела використані, де extraction failed, що застаріло.
  10. Article-to-vault flow — збережена стаття автоматично отримує Markdown, tags, короткий synthesis і link у knowledge vault.

7. Матеріали й відео

Висновок

OpenClaw не повинен “вірити” документам із хаотичної папки. Кращий контур: нормалізація, hash, локальний індекс, confidence, receipt і тільки потім відповідь або дія. Це менш магічно, зате набагато надійніше.