Agent skill

Elasticsearch File Ingest

by aspectrr in aspectrr/deer

Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms.

MITAuto-check passedBackend & APIs

Install Elasticsearch File Ingest

skills CLI
$ npx skills add aspectrr/deer --skill elasticsearch-file-ingest -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install aspectrr/deer elasticsearch-file-ingest --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/aspectrr/deer.git skills-src && mkdir -p .claude/skills && cp -r skills-src/deer-cli/internal/skill/defaults/elasticsearch-file-ingest .claude/skills/elasticsearch-file-ingest && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
elasticsearch-file-ingest
GitHub stars
405
Token cost
~684 tokens
SKILL.md length
101 words
Files
1
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms.

  • Batch importing data
  • SKILL.md covers Setup, Usage, Command Reference and Transform Functions, plus 1 more section
  • Calls node and npm; needs ELASTICSEARCH_API_KEY
  • Tasks that involve Search implementation

What it does

Elasticsearch File Ingest is an agent skill from aspectrr/deer. Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms. Use when loading files or batch importing data.

Its SKILL.md is about 680 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Backend & APIs, covering Search implementation, DataFrames and CSV and tabular files. It works with Elasticsearch. The repository describes itself as: 🦌 The AI Elasticsearch Engineer. The licence is MIT.

When your agent uses it

  • Batch importing data
  • Tasks that involve Search implementation
  • Tasks that involve DataFrames

Example prompts

  • “/elasticsearch-file-ingest”

Requirements

  • Node.js
  • A credential in ELASTICSEARCH_API_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit e4f9845. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • node
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • ELASTICSEARCH_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Elasticsearch File Ingest loads about 684 tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 101 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~50
When it runs · the whole SKILL.md, loaded when a task matches
~684

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from aspectrr/deer at commit e4f9845, republished under its MIT licence (© aspectrr). 101 words, ~684 tokens.

Download SKILL.mdSave it as .claude/skills/elasticsearch-file-ingest/SKILL.md (or your agent's skills folder).
name
elasticsearch-file-ingest
description
Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms. Use when loading files or batch importing data.
metadata.author
elastic
metadata.version
0.2.0
metadata.source
elastic/agent-skills//skills/elasticsearch/elasticsearch-file-ingest

Elasticsearch File Ingest

Stream-based ingestion and transformation of large data files (NDJSON, CSV, Parquet, Arrow IPC) into Elasticsearch.

Setup

Install dependencies and configure environment:

bash
npm install
bash
export ELASTICSEARCH_URL="https://elasticsearch:9200"
export ELASTICSEARCH_API_KEY="<your-api-key>"

Test connection:

bash
node scripts/ingest.js test

Usage

Ingest a JSON file
bash
node scripts/ingest.js ingest --file /path/to/data.json --target my-index
Ingest CSV
bash
node scripts/ingest.js ingest --file /path/to/users.csv --source-format csv --target users
Ingest Parquet
bash
node scripts/ingest.js ingest --file /path/to/users.parquet --source-format parquet --target users
Ingest with transformation
bash
node scripts/ingest.js ingest --file /path/to/data.json --target my-index --transform transform.js
Infer mappings from CSV
bash
node scripts/ingest.js ingest --file /path/to/users.csv --infer-mappings --target users

Command Reference

Required Options
bash
--target <index>         # Target index name
Source Options (choose one)
bash
--file <path>            # Source file (supports wildcards)
--stdin                  # Read NDJSON/CSV from stdin
Index Configuration
bash
--mappings <file.json>          # Mappings file
--infer-mappings                # Infer mappings/pipeline from file
--delete-index                  # Delete target index if exists
--pipeline <name>               # Ingest pipeline name
Processing
bash
--transform <file.js>    # Transform function
--source-format <fmt>    # ndjson|csv|parquet|arrow (default: ndjson)
--csv-options <file>     # CSV parser options (JSON file)

Transform Functions

javascript
export default function transform(doc) {
  return {
    ...doc,
    full_name: `${doc.first_name} ${doc.last_name}`,
    timestamp: new Date().toISOString(),
  };
}

Return null to skip a document. Return an array to split into multiple documents.

Guidelines

  • Test first: Always run node scripts/ingest.js test before ingesting.
  • Never combine --infer-mappings with --source-format.
  • Use --source-format csv with --mappings for known field types.
  • Never echo, print, or log credential environment variables.

© aspectrr, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in deer-cli/internal/skill/defaults/elasticsearch-file-ingest of aspectrr/deer.

Open the folder on GitHubat commit e4f9845

Compare with similar skills

Elasticsearch File Ingest next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Elasticsearch File Ingest compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Elasticsearch File Ingest this skillaspectrr/deer405—~684Automated safety check: PassMIT
Elasticsearch File IngestKilo-Org/kilo-marketplace190—~2.8kAutomated safety check: PassApache-2.0
Elasticsearch Ingestelastic/agent-skills592—~2.7kAutomated safety check: PassApache-2.0
Product Full-Text Searchlobehub/lobehub83k—~4.1kAutomated safety check: PassCustom licence
Foundatio Repositoriesexceptionless/Exceptionless2.5k—~1.9kAutomated safety check: PassApache-2.0
Elasticsearcholasunkanmi-SE/codebuddy141—~425Automated safety check: PassMIT

Similar skills

  • Elasticsearch File Ingest

    Kilo-Org/kilo-marketplace

    Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms.

    190 GitHub stars~2.8k tokensUpdated 12 days ago
    Backend & APIsAuto-check passed
  • Elasticsearch Ingest

    elastic/agent-skills

    Official

    Load CSV and JSON files into Elasticsearch indices using the bulk API and explicit mappings when field types matter.

    592 GitHub stars~2.7k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • Guides work on LobeHub's own product search: the shared search repository, provider choice, Elasticsearch mappings, change syncing and reindexing.

    83k GitHub stars~4.1k tokensUpdated today
    Backend & APIsAuto-check passed
  • Foundatio Repositories

    exceptionless/Exceptionless

    Query, aggregate, patch, or paginate Exceptionless data through its Elasticsearch repository abstractions.

    2.5k GitHub stars~1.9k tokensUpdated 2 days ago
    Backend & APIsAuto-check passed
  • Elasticsearch

    olasunkanmi-SE/codebuddy

    Interact with Elasticsearch clusters via the API. An agent skill from olasunkanmi-SE/codebuddy.

    141 GitHub stars~425 tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Elasticsearch Index Design

    elastic/agent-skills

    Official

    Design and review Elasticsearch index mappings for stated access patterns: correct field types, text+keyword multi-fields, docvalues tuning, mapping-explosion avoidance, and explicit shard settings.

    592 GitHub stars~3.1k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed

More from aspectrr/deer

All 14 skills in this repo
  • Elasticsearch Audit

    aspectrr/deer

    Enable, configure, and query Elasticsearch security audit logs.

    405 GitHub stars~1.7k tokensUpdated 5 mo ago
    Auto-check passed
  • Elasticsearch Authn

    aspectrr/deer

    Authenticate to Elasticsearch using native, file-based, LDAP/AD, SAML, OIDC, Kerberos, JWT, or certificate realms.

    405 GitHub stars~1.2k tokensUpdated 5 mo ago
    Auto-check: notes
  • Elasticsearch Authz

    aspectrr/deer

    Manage Elasticsearch RBAC: native users, roles, role mappings, document- and field-level security.

    405 GitHub stars~1.8k tokensUpdated 5 mo ago
    Auto-check passed
  • Diagnose and resolve Elasticsearch security errors: 401/403 failures, TLS problems, expired API keys, role mapping mismatches, and Kibana login issues.

    405 GitHub stars~4.9k tokensUpdated 5 mo ago
    Auto-check passed
  • Kafka

    aspectrr/deer

    Kafka topic management, consumer group monitoring, message production/consumption, and cluster health diagnostics.

    405 GitHub stars~946 tokensUpdated 5 mo ago
    Auto-check passed
  • Create and manage Kibana alerting rules via REST API or Terraform.

    405 GitHub stars~1.8k tokensUpdated 5 mo ago
    Auto-check passed

Works with

Questions about Elasticsearch File Ingest

What does Elasticsearch File Ingest do?

Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms. Elasticsearch File Ingest is an agent skill from aspectrr/deer. Ingest and transform data files (CSV/JSON/Parquet/Arrow IPC) into Elasticsearch with stream processing and custom transforms.

When should I use Elasticsearch File Ingest?

Elasticsearch File Ingest fits situations like: batch importing data; tasks that involve Search implementation; tasks that involve DataFrames.

How do I install Elasticsearch File Ingest in Claude Code?

Run `npx skills add aspectrr/deer --skill elasticsearch-file-ingest -a claude-code`. Or copy the skill folder (deer-cli/internal/skill/defaults/elasticsearch-file-ingest in aspectrr/deer) into .claude/skills/elasticsearch-file-ingest in your project. Claude Code loads it when a task matches its description.

How do I install Elasticsearch File Ingest in Codex?

Run `npx skills add aspectrr/deer --skill elasticsearch-file-ingest -a codex`. Or copy the skill folder (deer-cli/internal/skill/defaults/elasticsearch-file-ingest in aspectrr/deer) into .agents/skills/elasticsearch-file-ingest in your project. Codex loads it when a task matches its description.

Can I use Elasticsearch File Ingest in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aspectrr/deer --skill elasticsearch-file-ingest -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/elasticsearch-file-ingest, .gemini/skills/elasticsearch-file-ingest, .github/skills/elasticsearch-file-ingest and .opencode/skills/elasticsearch-file-ingest in your project.

What does Elasticsearch File Ingest need to run?

Going by SKILL.md and its folder, Elasticsearch File Ingest needs the command-line tools its instructions call (node and npm) and credentials named ELASTICSEARCH_API_KEY. Our summary lists: Node.js; A credential in ELASTICSEARCH_API_KEY.

Does Elasticsearch File Ingest access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Elasticsearch File Ingest safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Elasticsearch File Ingest use?

Elasticsearch File Ingest is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Elasticsearch File Ingest use?

About 684 tokens (SKILL.md is roughly 2.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Elasticsearch File Ingest?

Skills that share tags, products or a category with Elasticsearch File Ingest: Elasticsearch File Ingest (Kilo-Org/kilo-marketplace, 190 stars), Elasticsearch Ingest (elastic/agent-skills, 592 stars), Product Full-Text Search (lobehub/lobehub, 83k stars) and Foundatio Repositories (exceptionless/Exceptionless, 2.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Elasticsearch File Ingest?

aspectrr (a GitHub user) maintains it in aspectrr/deer, which has 405 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on April 21, 2026.

Source: aspectrr/deer on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.