# Dec 1st, 2025: \[EN\] Dear Santa, Here’s a little --help for christmas

**URL:** <https://discuss.elastic.co/t/dec-1st-2025-en-dear-santa-here-s-a-little-help-for-christmas/383561>\
**Category:** Advent Calendar\
**Created:** [December 1, 2025, 8:00am UTC](https://discuss.elastic.co/t/dec-1st-2025-en-dear-santa-here-s-a-little-help-for-christmas/383561 "2025-12-01T08:00:44Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Laurent\_Saint-Felix](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/laurent_saint-felix/32/129563_2.png) [@Laurent\_Saint-Felix](https://discuss.elastic.co/u/Laurent_Saint-Felix)\
**Post date:** [December 1, 2025, 8:00am UTC](https://discuss.elastic.co/t/dec-1st-2025-en-dear-santa-here-s-a-little-help-for-christmas/383561/1 "2025-12-01T08:00:44Z")

</div>

Cet article est également disponible [en Français](https://discuss.elastic.co/t/383562).

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/b/c/bc76934f1ff1720838db445153e61ee497063f7b.jpeg)

Every year, Santa Claus faces the same scaling problem:  
**billions of children, one magical delivery window, zero margin for error.**

For centuries, he ran everything on parchment scrolls, a quill, and one extremely overworked elf. But this year, Santa modernized his entire Naughty-and-Nice operations stack.

Goodbye scrolls.  
Goodbye monolithic North Pole database built on hopes and candy canes.  
Hello **Elasticsearch.**

And with great clusters comes great need for… a command line.

Fortunately for him, the elves found a promising CLI on GitHub and built it straight into the sleigh’s onboard computer:  
👉 **[escli-rs](https://github.com/Anaethelion/escli-rs)**

## Why Santa needed a proper CLI

Kibana dashboards are great, unless you’re traveling at Mach 8 over Tokyo and really shouldn’t be clicking menu buttons with heavy mittens on.

Santa needed something:

- fast

- scriptable

- mittens-friendly

Enter **escli** , a proof-of-concept Elasticsearch CLI that supports multiple versions, secure authentication, real shell auto-completion, and enough convenience to save Christmas.

The elves set up Santa’s `.env` with:

```bash
ESCLI_URL=https://northpole.elasticsearch.cluster
ESCLI_API_KEY=ho-ho-ho-secret

```

## A Cluster full of children

With access to the cluster now established, the elves proceeded to add a number of children to it.

```json
{"index": {"_index": "children-of-the-world", "_id": "zoe-8yo-france"}}
{"name": "Zoe", "age": 8, "nice_score": 0.92, "gift_preference": "Lego Friends", "cookie_offerings": 5, "sibling_conflicts": 1}
{"index": {"_index": "children-of-the-world", "_id": "jai-10yo-india"}}
{"name": "Jai", "age": 10, "nice_score": 0.75, "gift_preference": "Cricket bat", "cookie_offerings": 2, "sibling_conflicts": 4}
{"index": {"_index": "children-of-the-world", "_id": "mia-6yo-canada"}}
{"name": "Mia", "age": 6, "nice_score": 0.98, "gift_preference": "Stuffed bear", "cookie_offerings": 10, "sibling_conflicts": 0}
{"index": {"_index": "children-of-the-world", "_id": "lucas-11yo-usa"}}
{"name": "Lucas", "age": 11, "nice_score": 0.33, "gift_preference": "RC car", "cookie_offerings": 1, "sibling_conflicts": 7}
{"index": {"_index": "children-of-the-world", "_id": "sofia-9yo-spain"}}
{"name": "Sofia", "age": 9, "nice_score": 0.87, "gift_preference": "Art supplies", "cookie_offerings": 4, "sibling_conflicts": 2}

```

```bash
escli bulk --refresh wait_for --input children_of_the_world.ndjson

```

Santa's Elasticsearch setup is **good to go** with the key essentials:

- Index: `children-of-the-world`

- Fields: `name`, `age`, `nice_score`, `gift_preference`, `cookie_offerings`, `sibling_conflicts`

And now, thanks to escli, Santa can query it from **anywhere on Earth**. Even mid-flight.

## Real commands Santa actually uses

### Get a single child document

```bash
escli get children-of-the-world "zoe-8yo-france"

```

### Search the really nice ones

```bash
echo '{
  "query": {
    "range": {
      "nice_score": {"gte": 0.9}
    }
  }
}' | escli search \
      --index children-of-the-world | jq

```

### Export the naughty list as a CSV file

```bash
echo '{
  "query": "FROM children-of-the-world | WHERE nice_score < 0.2"
}' | escli esql query --format csv

```

To prevent the manual export of the Naughty List from disrupting their December stand-up meetings, the elves finally automated the process.

Fortunately, the list was empty this year, as everyone has been nice.

## Auto-completion: Santa’s new favorite feature

One of the coolest features in escli is shell auto-completion.

To install completions:

```bash
eval "$(COMPLETE=bash ./escli)"

```

Now he can type:

```bash
escli esql q<TAB>

```

and his terminal helpfully expands it to:

```bash
escli esql query

```

Even the reindeer are impressed.

## Christmas saved by `--help`

Santa, having to remember a near-infinite number of API options across his vast logistics network, would sometimes forget a flag or two. He wasn't ashamed. He happily used the `--help` flag to quickly refresh his memory.

```bash
escli --help

```

- Documented commands.

- Consistent structure.

- No surprises.

The elves even resisted the urge to add ASCII art (after a small “terminal meltdown incident”).

Santa scrolled through the help output, smiled, and whispered "This is incredibly useful!" and delivered billions of gifts right on schedule.

## If It’s good enough for Santa…

…then maybe it’s good enough for your Elasticsearch cluster too.

Download the latest pre-release build today from the [escli-rs repository](https://github.com/Anaethelion/escli-rs) and try it.

We'd love to hear your feedback: Open an issue on GitHub to let us know what you think!
