Inspiration

Slow Elasticsearch queries crash production clusters, costing SRE teams hours of manual debugging. Existing tools only monitor—we wanted an AI agent that autonomously fixes wildcards, mappings, and ILM issues before alerts even fire.

What it does

Continuously scans clusters for performance anti-patterns, diagnoses root causes with _profile APIs, generates optimized DSL fixes via Elastic Inference API (or offline rules), validates result equivalence, benchmarks improvements (60-98% faster), and deploys safely. Self-healing infrastructure.

How we built it

FastAPI backend orchestrates 5 modules: diagnostic, fix_generator, validator, benchmarker, agent_flow. Kibana React plugin provides scan/fix UI. Streamlit dashboard for local demos. Persistent .autofixer-history index stores learning. Async Python + Pydantic models throughout.

Challenges we ran into

Keeping ES client async-safe during FastAPI startup

Generic fix schema for both query + mapping changes

Kibana boilerplate complexity for simple TS plugin

CORS-free proxying between Kibana + Python API

Accomplishments that we're proud of

Offline LLM fallback = bulletproof hackathon demos

Elasticsearch-as-memory via history index = agentic smarts

98% latency drops proven with live before/after benchmarks

Production-ready stack: FastAPI + Kibana plugin deployed

What we learned

Elastic Agent Builder excels at tool-chaining (profile → analyze → rewrite). Kibana plugins need heavy simplification. Async ES clients demand careful startup sequencing. Validation loops > blind optimization.

What's next for ElasticSearch Auto-Fixer Agent

Fuzzy/regex query detection

Slack/PagerDuty auto-alerts

Real-time Kibana dashboard integration

Elastic marketplace plugin submission Vision: Every Elastic cluster gets an invisible performance copilot.

Built With

  • analyze-api-libraries:-pydantic-(models)
  • asyncio-(async-es-client)
  • cloud
  • elastic
  • elasticsearch-py-devops:-docker-(local-testing)
  • esql-tools
  • inference-api
  • kibana-plugin-(ui)
  • languages:-python
  • streamlit-(demo-dashboard)-database:-elasticsearch-cloud-(persistent-.autofixer-history-index)-apis:-elasticsearch-profile-api
  • typescript-(react)-frameworks:-fastapi-(backend)
Share this project:

Updates