Inspiration: Writing ES queries by hand is hard, slow, and opaque. When search degrades, nobody knows why.

What we built: A multi-agent gateway on ES 8.17. Planner classifies intent → Search Agent writes ES DSL → Indexing Agent handles new data → Reviewer monitors quality. Every agent step is logged as an evidence trace to ES. Reviewer runs ES aggregations across all agents — if any drops below 80% success rate, it auto-generates a guardrail policy and indexes it back.

Challenges: Evidence traces needed refresh=wait_for to appear immediately. Building intent-aware DSL for heterogeneous schemas without an LLM required careful filter routing per data type.

Learned: Elasticsearch works as agent memory, self-monitor, and policy store — not just a search index.

Built With

  • aggregations
  • docker
  • elasticsearch-8.17
  • es
  • es-dsl
  • fastapi
  • python-3.12
  • traefik
Share this project:

Updates